[
  {
    "path": ".gitignore",
    "content": "m4\nmissing\naclocal.m4\nconfig.guess\nconfig.h.in\nconfig.sub\nconfigure\nltmain.sh\nltconfig\n.deps\n.libs\nMakefile\nMakefile.in\nautom4te.cache\nconfig.h\nconfig.h.in~\nconfig.log\nconfig.rpath\nconfig.status\nlibtool\nstamp-h1\nPOTFILES\n*.o\n*.a\n*.la\n*.lo\n*[0123456789].c\n*.m4\nmetadata/swh-plugins.rdf\n"
  },
  {
    "path": ".travis.yml",
    "content": "language: c\ncompiler: gcc\ndist: trusty\nsudo: required\nmatrix:\n    include:\n        - os: linux\ninstall:\n    - sudo apt-get install automake autopoint libxml2-utils perl libxml-perl liblist-moreutils-perl fftw3-dev\nscript:\n    - autoreconf -i\n    - ./configure\n    - make\n    - make install prefix=$HOME/dist\n    - cd $HOME/dist/lib/ladspa/ && echo -e \"Found $(ls *.so |wc -l) files\\n-------\" && ls *.so\n"
  },
  {
    "path": "AUTHORS",
    "content": "In no particular order:\n\nSteve Harris - general stuff\nFrank Neumann - documentation, proofreading, DSP code\nJuhana Sadeharju - DSP code\nJoern Nettingsmeier - DSP code, bug reports and inspiration\nMark Knecht - testesting, docuementation\nPascal Haakmat - bugfixes, testing\nMarcus Andersson - DSP code\nPaul Winkler - documentation\nMatthias Nagorni - testing, inspiration\nNathaniel Virgo - bugfixes\nPatrick Shirkey - testing, inspiration\n\nProject maintainted by Steve Harris, Southampton UK.\nsteve@plugin.org.uk or swh@ecs.soton.ac.uk\n\nPlugin website at http://plugin.org.uk/\n"
  },
  {
    "path": "COPYING",
    "content": "\t\t    GNU GENERAL PUBLIC LICENSE\n\t\t       Version 2, June 1991\n\n Copyright (C) 1989, 1991 Free Software Foundation, Inc.\n     51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA\n Everyone is permitted to copy and distribute verbatim copies\n of this license document, but changing it is not allowed.\n\n\t\t\t    Preamble\n\n  The licenses for most software are designed to take away your\nfreedom to share and change it.  By contrast, the GNU General Public\nLicense is intended to guarantee your freedom to share and change free\nsoftware--to make sure the software is free for all its users.  This\nGeneral Public License applies to most of the Free Software\nFoundation's software and to any other program whose authors commit to\nusing it.  (Some other Free Software Foundation software is covered by\nthe GNU Library General Public License instead.)  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthis service if you wish), that you receive source code or can get it\nif you want it, that you can change the software or use pieces of it\nin new free programs; and that you know you can do these things.\n\n  To protect your rights, we need to make restrictions that forbid\nanyone to deny you these rights or to ask you to surrender the rights.\nThese restrictions translate to certain responsibilities for you if you\ndistribute copies of the software, or if you modify it.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must give the recipients all the rights that\nyou have.  You must make sure that they, too, receive or can get the\nsource code.  And you must show them these terms so they know their\nrights.\n\n  We protect your rights with two steps: (1) copyright the software, and\n(2) offer you this license which gives you legal permission to copy,\ndistribute and/or modify the software.\n\n  Also, for each author's protection and ours, we want to make certain\nthat everyone understands that there is no warranty for this free\nsoftware.  If the software is modified by someone else and passed on, we\nwant its recipients to know that what they have is not the original, so\nthat any problems introduced by others will not reflect on the original\nauthors' reputations.\n\n  Finally, any free program is threatened constantly by software\npatents.  We wish to avoid the danger that redistributors of a free\nprogram will individually obtain patent licenses, in effect making the\nprogram proprietary.  To prevent this, we have made it clear that any\npatent must be licensed for everyone's free use or not licensed at all.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\f\n\t\t    GNU GENERAL PUBLIC LICENSE\n   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n\n  0. This License applies to any program or other work which contains\na notice placed by the copyright holder saying it may be distributed\nunder the terms of this General Public License.  The \"Program\", below,\nrefers to any such program or work, and a \"work based on the Program\"\nmeans either the Program or any derivative work under copyright law:\nthat is to say, a work containing the Program or a portion of it,\neither verbatim or with modifications and/or translated into another\nlanguage.  (Hereinafter, translation is included without limitation in\nthe term \"modification\".)  Each licensee is addressed as \"you\".\n\nActivities other than copying, distribution and modification are not\ncovered by this License; they are outside its scope.  The act of\nrunning the Program is not restricted, and the output from the Program\nis covered only if its contents constitute a work based on the\nProgram (independent of having been made by running the Program).\nWhether that is true depends on what the Program does.\n\n  1. You may copy and distribute verbatim copies of the Program's\nsource code as you receive it, in any medium, provided that you\nconspicuously and appropriately publish on each copy an appropriate\ncopyright notice and disclaimer of warranty; keep intact all the\nnotices that refer to this License and to the absence of any warranty;\nand give any other recipients of the Program a copy of this License\nalong with the Program.\n\nYou may charge a fee for the physical act of transferring a copy, and\nyou may at your option offer warranty protection in exchange for a fee.\n\n  2. You may modify your copy or copies of the Program or any portion\nof it, thus forming a work based on the Program, and copy and\ndistribute such modifications or work under the terms of Section 1\nabove, provided that you also meet all of these conditions:\n\n    a) You must cause the modified files to carry prominent notices\n    stating that you changed the files and the date of any change.\n\n    b) You must cause any work that you distribute or publish, that in\n    whole or in part contains or is derived from the Program or any\n    part thereof, to be licensed as a whole at no charge to all third\n    parties under the terms of this License.\n\n    c) If the modified program normally reads commands interactively\n    when run, you must cause it, when started running for such\n    interactive use in the most ordinary way, to print or display an\n    announcement including an appropriate copyright notice and a\n    notice that there is no warranty (or else, saying that you provide\n    a warranty) and that users may redistribute the program under\n    these conditions, and telling the user how to view a copy of this\n    License.  (Exception: if the Program itself is interactive but\n    does not normally print such an announcement, your work based on\n    the Program is not required to print an announcement.)\n\f\nThese requirements apply to the modified work as a whole.  If\nidentifiable sections of that work are not derived from the Program,\nand can be reasonably considered independent and separate works in\nthemselves, then this License, and its terms, do not apply to those\nsections when you distribute them as separate works.  But when you\ndistribute the same sections as part of a whole which is a work based\non the Program, the distribution of the whole must be on the terms of\nthis License, whose permissions for other licensees extend to the\nentire whole, and thus to each and every part regardless of who wrote it.\n\nThus, it is not the intent of this section to claim rights or contest\nyour rights to work written entirely by you; rather, the intent is to\nexercise the right to control the distribution of derivative or\ncollective works based on the Program.\n\nIn addition, mere aggregation of another work not based on the Program\nwith the Program (or with a work based on the Program) on a volume of\na storage or distribution medium does not bring the other work under\nthe scope of this License.\n\n  3. You may copy and distribute the Program (or a work based on it,\nunder Section 2) in object code or executable form under the terms of\nSections 1 and 2 above provided that you also do one of the following:\n\n    a) Accompany it with the complete corresponding machine-readable\n    source code, which must be distributed under the terms of Sections\n    1 and 2 above on a medium customarily used for software interchange; or,\n\n    b) Accompany it with a written offer, valid for at least three\n    years, to give any third party, for a charge no more than your\n    cost of physically performing source distribution, a complete\n    machine-readable copy of the corresponding source code, to be\n    distributed under the terms of Sections 1 and 2 above on a medium\n    customarily used for software interchange; or,\n\n    c) Accompany it with the information you received as to the offer\n    to distribute corresponding source code.  (This alternative is\n    allowed only for noncommercial distribution and only if you\n    received the program in object code or executable form with such\n    an offer, in accord with Subsection b above.)\n\nThe source code for a work means the preferred form of the work for\nmaking modifications to it.  For an executable work, complete source\ncode means all the source code for all modules it contains, plus any\nassociated interface definition files, plus the scripts used to\ncontrol compilation and installation of the executable.  However, as a\nspecial exception, the source code distributed need not include\nanything that is normally distributed (in either source or binary\nform) with the major components (compiler, kernel, and so on) of the\noperating system on which the executable runs, unless that component\nitself accompanies the executable.\n\nIf distribution of executable or object code is made by offering\naccess to copy from a designated place, then offering equivalent\naccess to copy the source code from the same place counts as\ndistribution of the source code, even though third parties are not\ncompelled to copy the source along with the object code.\n\f\n  4. You may not copy, modify, sublicense, or distribute the Program\nexcept as expressly provided under this License.  Any attempt\notherwise to copy, modify, sublicense or distribute the Program is\nvoid, and will automatically terminate your rights under this License.\nHowever, parties who have received copies, or rights, from you under\nthis License will not have their licenses terminated so long as such\nparties remain in full compliance.\n\n  5. You are not required to accept this License, since you have not\nsigned it.  However, nothing else grants you permission to modify or\ndistribute the Program or its derivative works.  These actions are\nprohibited by law if you do not accept this License.  Therefore, by\nmodifying or distributing the Program (or any work based on the\nProgram), you indicate your acceptance of this License to do so, and\nall its terms and conditions for copying, distributing or modifying\nthe Program or works based on it.\n\n  6. Each time you redistribute the Program (or any work based on the\nProgram), the recipient automatically receives a license from the\noriginal licensor to copy, distribute or modify the Program subject to\nthese terms and conditions.  You may not impose any further\nrestrictions on the recipients' exercise of the rights granted herein.\nYou are not responsible for enforcing compliance by third parties to\nthis License.\n\n  7. If, as a consequence of a court judgment or allegation of patent\ninfringement or for any other reason (not limited to patent issues),\nconditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot\ndistribute so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you\nmay not distribute the Program at all.  For example, if a patent\nlicense would not permit royalty-free redistribution of the Program by\nall those who receive copies directly or indirectly through you, then\nthe only way you could satisfy both it and this License would be to\nrefrain entirely from distribution of the Program.\n\nIf any portion of this section is held invalid or unenforceable under\nany particular circumstance, the balance of the section is intended to\napply and the section as a whole is intended to apply in other\ncircumstances.\n\nIt is not the purpose of this section to induce you to infringe any\npatents or other property right claims or to contest validity of any\nsuch claims; this section has the sole purpose of protecting the\nintegrity of the free software distribution system, which is\nimplemented by public license practices.  Many people have made\ngenerous contributions to the wide range of software distributed\nthrough that system in reliance on consistent application of that\nsystem; it is up to the author/donor to decide if he or she is willing\nto distribute software through any other system and a licensee cannot\nimpose that choice.\n\nThis section is intended to make thoroughly clear what is believed to\nbe a consequence of the rest of this License.\n\f\n  8. If the distribution and/or use of the Program is restricted in\ncertain countries either by patents or by copyrighted interfaces, the\noriginal copyright holder who places the Program under this License\nmay add an explicit geographical distribution limitation excluding\nthose countries, so that distribution is permitted only in or among\ncountries not thus excluded.  In such case, this License incorporates\nthe limitation as if written in the body of this License.\n\n  9. The Free Software Foundation may publish revised and/or new versions\nof the General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\nEach version is given a distinguishing version number.  If the Program\nspecifies a version number of this License which applies to it and \"any\nlater version\", you have the option of following the terms and conditions\neither of that version or of any later version published by the Free\nSoftware Foundation.  If the Program does not specify a version number of\nthis License, you may choose any version ever published by the Free Software\nFoundation.\n\n  10. If you wish to incorporate parts of the Program into other free\nprograms whose distribution conditions are different, write to the author\nto ask for permission.  For software which is copyrighted by the Free\nSoftware Foundation, write to the Free Software Foundation; we sometimes\nmake exceptions for this.  Our decision will be guided by the two goals\nof preserving the free status of all derivatives of our free software and\nof promoting the sharing and reuse of software generally.\n\n\t\t\t    NO WARRANTY\n\n  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\nFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN\nOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\nPROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\nOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS\nTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE\nPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\nREPAIR OR CORRECTION.\n\n  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\nREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\nINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\nOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\nTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\nYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\nPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\nPOSSIBILITY OF SUCH DAMAGES.\n\n\t\t     END OF TERMS AND CONDITIONS\n\f\n\t    How to Apply These Terms to Your New Programs\n\n  If you develop a new program, and you want it to be of the greatest\npossible use to the public, the best way to achieve this is to make it\nfree software which everyone can redistribute and change under these terms.\n\n  To do so, attach the following notices to the program.  It is safest\nto attach them to the start of each source file to most effectively\nconvey the exclusion of warranty; and each file should have at least\nthe \"copyright\" line and a pointer to where the full notice is found.\n\n    <one line to give the program's name and a brief idea of what it does.>\n    Copyright (C) <year>  <name of author>\n\n    This program is free software; you can redistribute it and/or modify\n    it under the terms of the GNU General Public License as published by\n    the Free Software Foundation; either version 2 of the License, or\n    (at your option) any later version.\n\n    This program is distributed in the hope that it will be useful,\n    but WITHOUT ANY WARRANTY; without even the implied warranty of\n    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n    GNU General Public License for more details.\n\n    You should have received a copy of the GNU General Public License\n    along with this program; if not, write to the Free Software\n    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA\n\n\nAlso add information on how to contact you by electronic and paper mail.\n\nIf the program is interactive, make it output a short notice like this\nwhen it starts in an interactive mode:\n\n    Gnomovision version 69, Copyright (C) year  name of author\n    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.\n    This is free software, and you are welcome to redistribute it\n    under certain conditions; type `show c' for details.\n\nThe hypothetical commands `show w' and `show c' should show the appropriate\nparts of the General Public License.  Of course, the commands you use may\nbe called something other than `show w' and `show c'; they could even be\nmouse-clicks or menu items--whatever suits your program.\n\nYou should also get your employer (if you work as a programmer) or your\nschool, if any, to sign a \"copyright disclaimer\" for the program, if\nnecessary.  Here is a sample; alter the names:\n\n  Yoyodyne, Inc., hereby disclaims all copyright interest in the program\n  `Gnomovision' (which makes passes at compilers) written by James Hacker.\n\n  <signature of Ty Coon>, 1 April 1989\n  Ty Coon, President of Vice\n\nThis General Public License does not permit incorporating your program into\nproprietary programs.  If your program is a subroutine library, you may\nconsider it more useful to permit linking proprietary applications with the\nlibrary.  If this is what you want to do, use the GNU Library General\nPublic License instead of this License.\n"
  },
  {
    "path": "ChangeLog",
    "content": "2006-08-08  Steve Harris  <steve@plugin.org.uk>\n\n\t* svf filter: possibly fixed denormal problems\n\n2006-08-08  Steve Harris  <steve@plugin.org.uk>\n\n\t* fast lookadead limiter: Patch from Sampo to fix pumping problem\n\t* iir.h: Tim Blechmann to fix denormal problems\n\n2005-09-23  Steve Harris  <steve@plugin.org.uk>\n\n\t* configure.in: Added patch from Anand Kumria to fix build options on\n\t  x86_64 and popwerpc64\n\n2005-04-29  Steve Harris  <steve@plugin.org.uk>\n\n\t* crossover_dist_1404.xml: Added patch from Tim Blechmann that fixes\n\t  NaN problems.\n\n2005-02-10  Steve Harris  <steve@plugin.org.uk>\n\n\t* fad_delay_1192.xml, tape_delay_1211.xml: Minor improvement to sound\n\t  quality\n\n2005-02-10  Steve Harris  <steve@plugin.org.uk>\n\n\t* fast_lookahead_limiter_1913.xml, sc4_1882.xmli, sc4m_1916.xml:\n\t  fixed denormal bugs that were causing problems in JAMin on P4's\n\n2004-12-22  Steve Harris  <steve@plugin.org.uk>\n\n\t* mbeq_1197.xml: fixed buffer overrun bug reported by Sergei Steshenko\n\n2004-12-17  Steve Harris  <steve@plugin.org.uk>\n\n\t* mbeq_1197.xml: removed some stale testing code\n\n2004-12-12  Steve Harris  <steve@plugin.org.uk>\n\n\t* util/rms.h: Fixed rouding error buildup in RMS code, as reported and\n\t  patched by Dan Mills and Joel White.\n\n2004-10-25  gettextize  <bug-gnu-gettext@gnu.org>\n\n\t* Makefile.am (SUBDIRS): Add m4.\n\t(SUBDIRS): Remove intl.\n\t(ACLOCAL_AMFLAGS): New variable.\n\t(EXTRA_DIST): Add config.rpath.\n\t* configure.in (AC_OUTPUT): Add m4/Makefile.\n\n2004-10-24  Steve Harris  <steve@plugin.org.uk>\n\n\t* Makefile.am: Changed build system to use libtool to build the\n\t  libraries.\n\n>>>>>>> 1.33\n2004-10-21  Steve Harris  <steve@plugin.org.uk>\n\n\t* mbeq_1197.xml: Fixed use a static variable with state between plugins.\n\t  Caused last mbeq plugin created to hold pointers to the in/out\n\t  buffers of the previous one, making them silent.\n\n2004-10-18  Steve Harris  <steve@plugin.org.uk>\n\n\t* flanger_1191.xml: Add clipper to improve stabililty as suggested by\n\t  Tim Blechmann. Add trap for the case where NaN's work thier way into\n\t  the delay buffer.\n\n2004-09-13  Steve Harris  <steve@plugin.org.uk>\n\n\t* revdelay_1605.xml: Fixed denormal problem, patch from Tim Blechmann\n\n2004-08-03  Steve Harris  <steve@plugin.org.uk>\n\n\t* latency_1914.xml: Added new plugin. Doesnt do anything, just reports\n\t  whatever latency you tell it do via. the standard control out port.\n          Requested by Jesse on IRC\n\n2004-07-17  Steve Harris  <steve@plugin.org.uk>\n\n\t* surround_encoder_1401.xml: Patch from Prakash K. Cheemplavam to\n\t  improve the effect.\n\n2004-07-17  Steve Harris  <steve@plugin.org.uk>\n\n\t* fast_lookahead_limiter_1913.xml: New lookahead limiter, this one\n\t  actually works.\n\t* lookahead_limiter*.xml: Removed, were broken beyond repair.\n\n2004-06-23  Steve Harris  <steve@plugin.org.uk>\n\n\t* flanger_1191.xml: fix for denormal problem (Tim Blechmann)\n\t* ladspa-util.h: make denomal test fuzzier (Tim Blechmann)\n\n2004-04-01  Steve Harris  <steve@plugin.org.uk>\n\n\t* ladspa-util.h: fixed pointer alising problems\n\n2004-02-24  Steve Harris  <steve@plugin.org.uk>\n\n\t* vynil: removed a C99 style declaration - should build on older gcc's\n\t\t now\n\n2001-02-19  Steve Harris  <steve@plugin.org.uk>\n\n* Fixed some typos (thanks to Frank Neumann)\n\n2001-02-12  Steve Harris  <steve@plugin.org.uk>\n\n* Added a tape multitap delay (not finished yet)\n\n2001-02-11  Steve Harris  <steve@plugin.org.uk>\n\n* Added a sifter (block sorter)\n\n2001-02-11  Steve Harris  <steve@plugin.org.uk>\n\n* Finished the retro flanger\n\n2001-04-14  Steve Harris  <steve@plugin.org.uk>\n\n* Added a multiplexer\n\n2001-06-10  Steve Harris  <steve@plugin.org.uk>\n\n* Added a foldover distorion, svf and gsm plugin.\n\n2001-06-13  Steve Harris  <steve@plugin.org.uk>\n\n* Speeling mistokes fixed (thanks to Frank Neumann)\n* fixed scale in GSM plugin\n\n2001-07-23  Steve Harris  <steve@plugin.org.uk>\n\n* Added gverb plugin and phasers\n* fixed some misc bugs\n* fixed autoconf cpu detection\n* added autoconf support for no FFT libs\n\n2001-10-18  Steve Harris  <steve@plugin.org.uk>\n\n* Fixed float exception in LFO Phaser\n* Fixed int pivot bug in sifter.\n\n2003-01-08  Steve Harris  <steve@plugin.org.uk>\n\n* Realised I haven't updated this for over a year\n\n2003-01-09  Steve Harris  <steve@plugin.org.uk>\n\n* Bugfixes to GSM sim (Pascal Haakmat)\n* Bugfixes to FM osc (Pascal Haakmat)\n* Bugfixes to audio divider (Nathaniel Virgo)\n* Added another compressor, SC4, stereo, but no sidechain\n* Added lookahead brickwall limiter\n* Added L/C/R delay (requested by Marek Peteraj)\n* Added Giant flanger (kind of requested by Patrick Shirkey)\n* Added DJ Flanger (actually requested by Patrick Shirkey)\n* Should now compile on FreeBSD\n* Fixed syntax error in RDF metadata\n\n2003-01-10  Steve Harris  <steve@plugin.org.uk>\n\n* SC4 had wrong label\n* Fixed UID clash\n* Made autoconf keep old CFLAGS\n\n2003-01-10  Steve Harris  <steve@plugin.org.uk>\n\n* Fixed UID clash\n\n2003-02-23  Steve Harris  <steve@plugin.org.uk>\n\n* Fixed memory leak in gate\n* Fixed filter implementation in gate\n* Fixed key defaults in gate\n* Made passes=0 work in GSM\n* Added bandlimiting filter to GSM (less cruchy sounds)\n\n2003-02-24  Steve Harris  <steve@plugin.org.uk>\n\n* Removed stale code from surround encoder\n* Fixed memory leak in surround encoder\n\n2003-02-24  Steve Harris  <steve@plugin.org.uk>\n\n* Fixed maths error in multiplexer\n* Fixed buffer overrun in sifter\n* Efficiency improvements to FAD delay\n* Fixed infinite loop in FAD delay.\n* Fixed (another) buffer overrun in FM oscillator\n* Performance improvement for FM oscillator\n* Fixed buffer overrun in multiband EQ\n* Fixed aliasing in Hermes\n\n* Fixed memory leaks in:\n\tAM pitchshift\n\tAnalogue osc\n\tBode sifters\n\tComb\n\tComb splitter\n\tDelayorama\n\tDyson compressor\n\tFM oscilator\n\tGiant flange\n\tGong\n\tGVerb\n\tHermes filter\n\tL/C/R delay\n\tMultiband EQ\n\tPlate reverb\n\tRate shifter\n\tRetro flanger\n\tSatan maximiser\n\tSC*\n\tSifter\n\tSingle band parametric\n\tMultiplexer\n\tTape delay\n\n\tThere are still known leaks in imp and the multiband EQ\n\n2003-03-04  Steve Harris  <steve@plugin.org.uk>\n\n* Made blo use SHM where available, to share table data\n\n2003-03-08  Steve Harris  <steve@plugin.org.uk>\n\n* Fixed scaling offset in multiband EQ\n\n2003-05-10  Steve Harris  <steve@plugin.org.uk>\n\n* Fixed error in peak calculation in peak limiter\n\n2003-05-18  Alexander Ehlert  <mag@glame.de>\n\n* Added highpass, lowpass, bandpass and notch IIR filters from Glame\n\n2003-06-01  Steve Harris  <steve@plugin.org.uk>\n\n* Fixed flanger (it was totaly b0rken)\n* Improved sound quality of retro flanger\n* Applied gcc 3.3 fixing patch from Anand Kumria\n* Tweaked LADSPA settings for Alexander Ehlert's IIRs \n\n2003-11-10  Jesse Chappell  <jesse@essej.net>\n\n* Added reverse delay plugin\n\n2003-12-01  Steve Harris  <steve@plugin.org.uk>\n\n* Added LP and HP filters to the biquads\n* Added vinyl simualtor\n\n2003-12-03  Steve Harris  <steve@plugin.org.uk>\n\n* Added fixed latency limiter\n"
  },
  {
    "path": "IDs",
    "content": "As of 2007-10-17 I own (approximatly):\n\n1181-1220\n1401-1440\n1881-1922\n2821-2900 (known)\n"
  },
  {
    "path": "INSTALL",
    "content": "Basic Installation\n==================\n\n   These are generic installation instructions.\n\n   The `configure' shell script attempts to guess correct values for\nvarious system-dependent variables used during compilation.  It uses\nthose values to create a `Makefile' in each directory of the package.\nIt may also create one or more `.h' files containing system-dependent\ndefinitions.  Finally, it creates a shell script `config.status' that\nyou can run in the future to recreate the current configuration, a file\n`config.cache' that saves the results of its tests to speed up\nreconfiguring, and a file `config.log' containing compiler output\n(useful mainly for debugging `configure').\n\n   If you need to do unusual things to compile the package, please try\nto figure out how `configure' could check whether to do them, and mail\ndiffs or instructions to the address given in the `README' so they can\nbe considered for the next release.  If at some point `config.cache'\ncontains results you don't want to keep, you may remove or edit it.\n\n   The file `configure.in' is used to create `configure' by a program\ncalled `autoconf'.  You only need `configure.in' if you want to change\nit or regenerate `configure' using a newer version of `autoconf'.\n\nThe simplest way to compile this package is:\n\n  1. `cd' to the directory containing the package's source code and type\n     `./configure' to configure the package for your system.  If you're\n     using `csh' on an old version of System V, you might need to type\n     `sh ./configure' instead to prevent `csh' from trying to execute\n     `configure' itself.\n\n     Running `configure' takes awhile.  While running, it prints some\n     messages telling which features it is checking for.\n\n  2. Type `make' to compile the package.\n\n  3. Optionally, type `make check' to run any self-tests that come with\n     the package.\n\n  4. Type `make install' to install the programs and any data files and\n     documentation.\n\n  5. You can remove the program binaries and object files from the\n     source code directory by typing `make clean'.  To also remove the\n     files that `configure' created (so you can compile the package for\n     a different kind of computer), type `make distclean'.  There is\n     also a `make maintainer-clean' target, but that is intended mainly\n     for the package's developers.  If you use it, you may have to get\n     all sorts of other programs in order to regenerate files that came\n     with the distribution.\n\nCompilers and Options\n=====================\n\n   Some systems require unusual options for compilation or linking that\nthe `configure' script does not know about.  You can give `configure'\ninitial values for variables by setting them in the environment.  Using\na Bourne-compatible shell, you can do that on the command line like\nthis:\n     CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure\n\nOr on systems that have the `env' program, you can do it like this:\n     env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure\n\nCompiling For Multiple Architectures\n====================================\n\n   You can compile the package for more than one kind of computer at the\nsame time, by placing the object files for each architecture in their\nown directory.  To do this, you must use a version of `make' that\nsupports the `VPATH' variable, such as GNU `make'.  `cd' to the\ndirectory where you want the object files and executables to go and run\nthe `configure' script.  `configure' automatically checks for the\nsource code in the directory that `configure' is in and in `..'.\n\n   If you have to use a `make' that does not supports the `VPATH'\nvariable, you have to compile the package for one architecture at a time\nin the source code directory.  After you have installed the package for\none architecture, use `make distclean' before reconfiguring for another\narchitecture.\n\nInstallation Names\n==================\n\n   By default, `make install' will install the package's files in\n`/usr/local/bin', `/usr/local/man', etc.  You can specify an\ninstallation prefix other than `/usr/local' by giving `configure' the\noption `--prefix=PATH'.\n\n   You can specify separate installation prefixes for\narchitecture-specific files and architecture-independent files.  If you\ngive `configure' the option `--exec-prefix=PATH', the package will use\nPATH as the prefix for installing programs and libraries.\nDocumentation and other data files will still use the regular prefix.\n\n   In addition, if you use an unusual directory layout you can give\noptions like `--bindir=PATH' to specify different values for particular\nkinds of files.  Run `configure --help' for a list of the directories\nyou can set and what kinds of files go in them.\n\n   If the package supports it, you can cause programs to be installed\nwith an extra prefix or suffix on their names by giving `configure' the\noption `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.\n\nOptional Features\n=================\n\n   Some packages pay attention to `--enable-FEATURE' options to\n`configure', where FEATURE indicates an optional part of the package.\nThey may also pay attention to `--with-PACKAGE' options, where PACKAGE\nis something like `gnu-as' or `x' (for the X Window System).  The\n`README' should mention any `--enable-' and `--with-' options that the\npackage recognizes.\n\n   For packages that use the X Window System, `configure' can usually\nfind the X include and library files automatically, but if it doesn't,\nyou can use the `configure' options `--x-includes=DIR' and\n`--x-libraries=DIR' to specify their locations.\n\nSpecifying the System Type\n==========================\n\n   There may be some features `configure' can not figure out\nautomatically, but needs to determine by the type of host the package\nwill run on.  Usually `configure' can figure that out, but if it prints\na message saying it can not guess the host type, give it the\n`--host=TYPE' option.  TYPE can either be a short name for the system\ntype, such as `sun4', or a canonical name with three fields:\n     CPU-COMPANY-SYSTEM\n\nSee the file `config.sub' for the possible values of each field.  If\n`config.sub' isn't included in this package, then this package doesn't\nneed to know the host type.\n\n   If you are building compiler tools for cross-compiling, you can also\nuse the `--target=TYPE' option to select the type of system they will\nproduce code for and the `--build=TYPE' option to select the type of\nsystem on which you are compiling the package.\n\nSharing Defaults\n================\n\n   If you want to set default values for `configure' scripts to share,\nyou can create a site shell script called `config.site' that gives\ndefault values for variables like `CC', `cache_file', and `prefix'.\n`configure' looks for `PREFIX/share/config.site' if it exists, then\n`PREFIX/etc/config.site' if it exists.  Or, you can set the\n`CONFIG_SITE' environment variable to the location of the site script.\nA warning: not all `configure' scripts look for a site script.\n\nOperation Controls\n==================\n\n   `configure' recognizes the following options to control how it\noperates.\n\n`--cache-file=FILE'\n     Use and save the results of the tests in FILE instead of\n     `./config.cache'.  Set FILE to `/dev/null' to disable caching, for\n     debugging `configure'.\n\n`--help'\n     Print a summary of the options to `configure', and exit.\n\n`--quiet'\n`--silent'\n`-q'\n     Do not print messages saying which checks are being made.  To\n     suppress all normal output, redirect it to `/dev/null' (any error\n     messages will still be shown).\n\n`--srcdir=DIR'\n     Look for the package's source code in directory DIR.  Usually\n     `configure' can determine that directory automatically.\n\n`--version'\n     Print the version of Autoconf used to generate the `configure'\n     script, and exit.\n\n`configure' also accepts some other, not widely useful, options.\n"
  },
  {
    "path": "Makefile.am",
    "content": "VERSION = @VERSION@\n\nplugin_LTLIBRARIES = \\\n\tamp_1181.la diode_1185.la \\\n\tdivider_1186.la shaper_1187.la ringmod_1188.la comb_1190.la \\\n\tdeclip_1195.la foverdrive_1196.la sinus_wavewrapper_1198.la \\\n\thermes_filter_1200.la multivoice_chorus_1201.la flanger_1191.la \\\n\tdecimator_1202.la single_para_1203.la triple_para_1204.la \\\n\ttransient_1206.la fad_delay_1192.la \\\n\tdc_remove_1207.la retro_flange_1208.la valve_1209.la \\\n\tsifter_1210.la tape_delay_1211.la step_muxer_1212.la \\\n\tfoldover_1213.la svf_1214.la gsm_1215.la gverb_1216.la \\\n\tphasers_1217.la harmonic_gen_1220.la vocoder_1337.la \\\n\tsurround_encoder_1401.la \\\n\tdelayorama_1402.la dyson_compress_1403.la crossover_dist_1404.la \\\n\tvalve_rect_1405.la split_1406.la alias_1407.la \\\n\tsatan_maximiser_1408.la karaoke_1409.la gate_1410.la \\\n\tcomb_splitter_1411.la wave_terrain_1412.la \\\n\thard_limiter_1413.la smooth_decimate_1414.la fm_osc_1415.la \\\n\tanalogue_osc_1416.la rate_shifter_1417.la freq_tracker_1418.la \\\n\tmod_delay_1419.la matrix_st_ms_1420.la matrix_ms_st_1421.la \\\n\tmatrix_spatialiser_1422.la plate_1423.la gong_1424.la \\\n\tsc1_1425.la sc2_1426.la sc3_1427.la zm1_1428.la inv_1429.la \\\n\tchebstortion_1430.la bode_shifter_1431.la bode_shifter_cv_1432.la \\\n\tam_pitchshift_1433.la sc4_1882.la \\\n\tlcr_delay_1436.la giant_flange_1437.la dj_flanger_1438.la \\\n\tgong_beater_1439.la hilbert_1440.la sin_cos_1881.la se4_1883.la \\\n\tbandpass_a_iir_1893.la bandpass_iir_1892.la highpass_iir_1890.la \\\n\tlowpass_iir_1891.la notch_iir_1894.la dj_eq_1901.la \\\n\tbutterworth_1902.la allpass_1895.la comb_1887.la decay_1886.la \\\n\tdelay_1898.la impulse_1885.la vynil_1905.la \\\n\trevdelay_1605.la ls_filter_1908.la \\\n\tconst_1909.la pointer_cast_1910.la fast_lookahead_limiter_1913.la \\\n\tlatency_1914.la xfade_1915.la sc4m_1916.la \\\n\tmbeq_1197.la pitch_scale_1193.la pitch_scale_1194.la imp_1199.la\n\nSUBDIRS = po util gsm gverb metadata\n\n# Wacky stuff to stop automake getting confused\nEXTRA_DIST = config.rpath  @top_srcdir@/*.xml @top_srcdir@/*.c @top_srcdir@/*.h \\\n\t@top_srcdir@/*.dtd @top_srcdir@/*.pl @top_srcdir@/*.css \\\n\t@top_srcdir@/impulses/*.h autogen.sh bozosoity-checker.pl\nplugindir = $(libdir)/ladspa\n\n# Uncomment below for Darwin support.  Or add a conditional for this.\n#AM_CFLAGS = -fno-common -flat_namespace -bundle -undefined suppress -lbundle1.o\nAM_LDFLAGS = -module -avoid-version\nDESTDIR = $(INSTALL_ROOT)\nDISTFN = $(distdir)\n\n# Files needed for FFT based plugins\npitch_scale_1193_la_LIBADD = -Lutil -lpitchscale $(FFTW_LIBS)\npitch_scale_1193_la_CFLAGS = $(FFTW_CFLAGS)\npitch_scale_1193_la_SOURCES = pitch_scale_1193.c\npitch_scale_1194_la_LIBADD = -Lutil -lpitchscale $(FFTW_LIBS)\npitch_scale_1194_la_CFLAGS = $(FFTW_CFLAGS)\npitch_scale_1194_la_SOURCES = pitch_scale_1194.c\nmbeq_1197_la_LIBADD = $(FFTW_LIBS)\nmbeq_1197_la_CFLAGS = $(FFTW_CFLAGS)\nmbeq_1197_la_SOURCES = mbeq_1197.c\nimp_1199_la_LIBADD = $(FFTW_LIBS)\nimp_1199_la_CFLAGS = $(FFTW_CFLAGS)\nimp_1199_la_DEPENDENCIES = @top_srcdir@/impulses/*\nhermes_filter_1200_la_DEPENDENCIES = util/libblo.a\nhermes_filter_1200_la_LIBADD = -Lutil -lblo\nfm_osc_1415_la_DEPENDENCIES = util/libblo.a\nfm_osc_1415_la_LIBADD = -Lutil -lblo\nanalogue_osc_1416_la_DEPENDENCIES = util/libblo.a\nanalogue_osc_1416_la_LIBADD = -Lutil -lblo\nsc1_1425_la_LIBADD = -Lutil -ldb -lrms\nsc2_1426_la_LIBADD = -Lutil -ldb -lrms\nsc3_1427_la_LIBADD = -Lutil -ldb -lrms\nsc4_1882_la_LIBADD = -Lutil -ldb -lrms\nsc4m_1916_la_LIBADD = -Lutil -ldb -lrms\nse4_1883_la_LIBADD = -Lutil -ldb -lrms\ngsm_1215_la_LIBADD = gsm/libgsm.a\ngverb_1216_la_LIBADD = -Lgverb -lgverb\nlcr_delay_1436_la_DEPENDENCIES = util/biquad.h\n\nhighpass_iir_1890_la_LIBADD = -Lutil -liir\nhighpass_iir_1890_la_SOURCES = highpass_iir_1890.c\nlowpass_iir_1891_la_LIBADD = -Lutil -liir\nlowpass_iir_1891_la_SOURCES = lowpass_iir_1891.c\nbandpass_iir_1892_la_LIBADD = -Lutil -liir\nbandpass_iir_1892_la_SOURCES = bandpass_iir_1892.c\nbandpass_a_iir_1893_la_LIBADD = -Lutil -liir\nbandpass_a_iir_1893_la_SOURCES = bandpass_a_iir_1893.c\nnotch_iir_1894_la_LIBADD = -Lutil -liir\nnotch_iir_1894_la_SOURCES = notch_iir_1894.c\nbutterworth_1902_la_LIBADD = -Lutil -liir\nbutterworth_1902_la_SOURCES = butterworth_1902.c\n\n# Rule to build .c files from XML source\n%.c:\t%.xml\n\t! test -f \"$^\" || @top_srcdir@/makestub.pl \"$^\" > \"$@\"\n\n#strip .libs/$$file;\n\ninstall-pluginLTLIBRARIES: $(plugin_LTLIBRARIES)\n\tmkdir -p $(DESTDIR)/$(plugindir)\n\tlist='$(plugin_LTLIBRARIES)'; \\\n\tfor file in $$list; do \\\n\t  sofile=`basename $$file .la`.so; \\\n\t  $(INSTALL_PROGRAM) .libs/$$sofile $(DESTDIR)/$(plugindir); \\\n\tdone\n\nuninstall-pluginLTLIBRARIES:\n\tlist='$(plugin_LTLIBRARIES)'; \\\n\tfor file in $$list; do \\\n\t  sofile=`basename $$file .la`.so; \\\n\t  rm -f $(DESTDIR)/$(plugindir)/$$sofile; \\\n\tdone\n\npotfiles: all\n\trm -f po/POTFILES.in\n\tlist='$(plugin_LTLIBRARIES)'; for file in $$list; do \\\n\t  echo `basename $$file .la`.c >> po/POTFILES.in; \\\n\tdone;\n\nstatic:\n\tmake 'FFTLIBS=-Bstatic $(FFTLIBS) -Bdynamic'\n\nspec: dist\n\t./mkspec.pl $(PACKAGE) $(VERSION) $(SOBS)\n\nrpm: dist spec\n\trpm -ba --target i686 $(DISTFN).spec\n\nsnapshot: dist bozo\n\tcp $(DISTFN).tar.gz ../snapshots/swh-plugins-`date -I`.tar.gz\n\nbozo: \n\t./bozosoity-checker.pl @top_srcdir@/*.xml\n\nrelease: dist bozo\n\tmkdir -p ../releases/$(VERSION)\n\tmv $(DISTFN).tar.gz ../releases/$(VERSION)/\n\n.PRECIOUS:\t%.c\n\nACLOCAL_AMFLAGS = -I m4\n"
  },
  {
    "path": "NEWS",
    "content": ""
  },
  {
    "path": "README",
    "content": "Compiling\n~~~~~~~~~\nYou will need libfftw version 2 or 3 installed with 32 bit float support (eg.\nfor FFTW3 use --enable-float), for FFTW recommend you specify the appropriate\nSIMD instruction set for your CPU with --enable-sse, --enable-sse2, --enable-k7\nor --enable-altivec. You can get FFTW from http://www.fftw.org/.\n\nInstall with\n   autoreconf -i\n   ./configure\n   make\n   su -c \"make install\".\n\nThis code is normally built from XML source, using Perl and XML::Parser. I\ndistribute the generated .c files, so you wont need perl, but if you want to\nedit the XML source then you will need a copy of Perl and XML::Parser\ninstalled.\n\nHomepage and docs\n~~~~~~~~~~~~~~~~~\nThe homepage for this project is http://plugin.org.uk/\n\nBug reports\n~~~~~~~~~~~\nPlease send bug reports or comments to steve@plugin.org.uk, except for bugs\nrelating to the gverb plugin, for that please send bug reports etc. to Juhana\nSadeharju, kouhia_at_nic.funet.fi.\n\nEnjoy,\n   Steve\n"
  },
  {
    "path": "TODO",
    "content": "Fix denormal issue in LFO phaser (Sampo Savolainen <v2@iki.fi>)\nSynced sine osc (requested by Esben Stien)\nGain in MBEQ is wrong (10dB down or so).\n"
  },
  {
    "path": "acconfig.h",
    "content": "#ifndef _CONFIG_H\n#define _CONFIG_H\n\n#undef EXPLICIT_S\n#undef ACCEL_3DNOW\n#undef HAVE_LRINTF\n#undef PACKAGE_LOCALE_DIR\n#undef PACKAGE_DATA_DIR\n\n#endif\n"
  },
  {
    "path": "alias_1407.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n  </global>\n\n  <plugin label=\"alias\" id=\"1407\" class=\"DistortionPlugin\">\n    <name>Aliasing</name>\n    <p>Simulates aliasing using nyquist frequency modulation. Produces wacky results if the blocks aren't even numbers of samples long.</p>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float coef = 1.0f - 2.0f * level;\n\n      if (output != input) {\n        for (pos = 0; pos < sample_count; pos+=2) {\n          buffer_write(output[pos], input[pos]);\n        }\n      }\n      for (pos = 1; pos < sample_count; pos+=2) {\n        buffer_write(output[pos], input[pos] * coef);\n      }\n    ]]></callback>\n\n    <port label=\"level\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Aliasing level</name>\n      <p>Controls the amount of simulated aliasing in the output.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "allpass_1895.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Andy Wingo &lt;wingo at pobox dot com&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"ladspa-util.h\"\n\n      #define MIN(a,b) ((a) < (b) ? (a) : (b))\n      #define CALC_DELAY(delaytime) \\\n        (f_clamp (delaytime * sample_rate, 1.f, (float)(buffer_mask + 1)))\n\n      #define LOG001 -6.9077552789f\n\n      static inline float\n      calc_feedback (float delaytime, float decaytime)\n      {\n        if (delaytime == 0.f)\n          return 0.f;\n        else if (decaytime > 0.f)\n          return exp(LOG001 * delaytime / decaytime);\n\telse if (decaytime < 0.f)\n          return -exp(LOG001 * delaytime / -decaytime);\n        else\n          return 0.f;\n      }\n\n      void ignore(LADSPA_Data some_var)\n      { }\n    ]]></code>\n  </global>\n\n  <!-- ******   ALLPASS-N   ****** -->\n\n  <plugin label=\"allpass_n\" id=\"1895\" class=\"DelayPlugin\">\n    <name>Allpass delay line, noninterpolating</name>\n    <p>Based on work by James McCartney in SuperCollider.</p>\n    \n    <callback event=\"instantiate\"><![CDATA[\n      sample_rate = s_rate;\n\n      // Uninitialized variables\n      buffer_mask = 0;\n      delay_samples = 0;\n      feedback = 0;\n      last_decay_time = 0;\n      last_delay_time = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"activate\"><![CDATA[\n      unsigned int minsize, size;\n    \n      if (plugin_data->max_delay && *plugin_data->max_delay > 0)\n        minsize = sample_rate * *plugin_data->max_delay;\n      else if (plugin_data->delay_time)\n        minsize = sample_rate * *plugin_data->delay_time;\n      else\n        minsize = sample_rate; /* 1 second default */\n    \n      size = 1;\n      while (size < minsize) size <<= 1;\n    \n      /* calloc sets the buffer to zero. */\n      buffer = calloc(size, sizeof(LADSPA_Data));\n      if (buffer)\n        buffer_mask = size - 1;\n      else\n        buffer_mask = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n    \n    <callback event=\"run\"><![CDATA[\n      int i;\n\n      ignore(max_delay);\n\n      if (write_phase == 0) {\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->last_decay_time = decay_time;\n        plugin_data->delay_samples = delay_samples = CALC_DELAY (delay_time);\n        plugin_data->feedback = feedback = calc_feedback (delay_time, decay_time);\n      }\n      \n      if (delay_time == last_delay_time) {\n        long read_phase = write_phase - (long)delay_samples;\n        LADSPA_Data *readptr = buffer + (read_phase & buffer_mask);\n        LADSPA_Data *writeptr = buffer + (write_phase & buffer_mask);\n        LADSPA_Data *lastptr = buffer + buffer_mask + 1;\n\n        if (decay_time == last_decay_time) {\n          long remain = sample_count;\n\n          while (remain) {\n            long read_space = lastptr - readptr;\n            long write_space = lastptr - writeptr;\n            long to_process = MIN (MIN (read_space, remain), write_space);\n\n            if (to_process == 0)\n              return; // buffer not allocated.\n\n            remain -= to_process;\n\n            for (i=0; i<to_process; i++) {\n              LADSPA_Data read = *(readptr++);\n              LADSPA_Data written = read * feedback + in[i];\n              *(writeptr++) = written;\n              buffer_write(out[i], read - feedback * written);\n            }\n\n            if (readptr == lastptr) readptr = buffer;\n            if (writeptr == lastptr) writeptr = buffer;\n          }\n        } else {\n          float next_feedback = calc_feedback (delay_time, decay_time);\n          float feedback_slope = (next_feedback - feedback) / sample_count;\n          long remain = sample_count;\n\n          while (remain) {\n            long read_space = lastptr - readptr;\n            long write_space = lastptr - writeptr;\n            long to_process = MIN (MIN (read_space, remain), write_space);\n\n            if (to_process == 0)\n              return; // buffer not allocated.\n\n            remain -= to_process;\n\n            for (i=0; i<to_process; i++) {\n              LADSPA_Data read = *(readptr++);\n              LADSPA_Data written = read * feedback + in[i];\n              *(writeptr++) = written;\n              buffer_write(out[i], read - feedback * written);\n              feedback += feedback_slope;\n            }\n\n            if (readptr == lastptr) readptr = buffer;\n            if (writeptr == lastptr) writeptr = buffer;\n          }\n\n          plugin_data->last_decay_time = decay_time;\n          plugin_data->feedback = feedback;\n        }\n\n        write_phase += sample_count;\n      } else {\n        float next_delay_samples = CALC_DELAY (delay_time);\n        float delay_samples_slope = (next_delay_samples - delay_samples) / sample_count;\n        float next_feedback = calc_feedback (delay_time, decay_time);\n        float feedback_slope = (next_feedback - feedback) / sample_count;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase;\n          LADSPA_Data read, written;\n\n          delay_samples += delay_samples_slope;\n          write_phase++;\n          read_phase = write_phase - (long)delay_samples;\n          read = buffer[read_phase & buffer_mask];\n\n          written = read * feedback + in[i];\n          buffer[write_phase & buffer_mask] = written;\n          buffer_write(out[i], read - feedback * written);\n\n          feedback += feedback_slope;\n        }\n\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->last_decay_time = decay_time;\n        plugin_data->feedback = feedback;\n        plugin_data->delay_samples = delay_samples;\n      }\n      \n      plugin_data->write_phase = write_phase;\n    ]]></callback>\n\n    <port label=\"in\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"out\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"max_delay\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Max Delay (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Maximum delay. Used to set the delay buffer size upon activation. Cannot\n       be modulated. Note that if you do not connect to this port before\n       activation, it will default to 1 second. \n      </p>\n    </port>\n\n    <port label=\"delay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Delay Time (s)</name>\n      <range min=\"0\"/>\n    </port>\n\n    <port label=\"decay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Decay Time (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Time for the echoes to decay by 60 decibels. If this time is negative\n       then the feedback coefficient will be negative, thus emphasizing only odd\n       harmonics at an octave lower.\n      </p>\n    </port>\n\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_mask\" type=\"unsigned int\" />\n    <instance-data label=\"sample_rate\" type=\"unsigned int\" />\n    <instance-data label=\"delay_samples\" type=\"LADSPA_Data\" />\n    <instance-data label=\"write_phase\" type=\"long\" />\n    <instance-data label=\"feedback\" type=\"LADSPA_Data\" />\n    <instance-data label=\"last_delay_time\" type=\"LADSPA_Data\" />\n    <instance-data label=\"last_decay_time\" type=\"LADSPA_Data\" />\n  </plugin>\n\n  <!-- ******   ALLPASS-L   ****** -->\n\n  <plugin label=\"allpass_l\" id=\"1896\" class=\"DelayPlugin\">\n    <name>Allpass delay line, linear interpolation</name>\n    <p>Based on work by James McCartney in SuperCollider.</p>\n    \n    <callback event=\"instantiate\"><![CDATA[\n      sample_rate = s_rate;\n\n      // Uninitialized variables\n      buffer_mask = 0;\n      delay_samples = 0;\n      feedback = 0;\n      last_decay_time = 0;\n      last_delay_time = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"activate\"><![CDATA[\n      unsigned int minsize, size;\n    \n      if (plugin_data->max_delay && *plugin_data->max_delay > 0)\n        minsize = sample_rate * *plugin_data->max_delay;\n      else if (plugin_data->delay_time)\n        minsize = sample_rate * *plugin_data->delay_time;\n      else\n        minsize = sample_rate; /* 1 second default */\n    \n      size = 1;\n      while (size < minsize) size <<= 1;\n    \n      /* calloc sets the buffer to zero. */\n      buffer = calloc(size, sizeof(LADSPA_Data));\n      if (buffer)\n        buffer_mask = size - 1;\n      else\n        buffer_mask = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n    \n    <callback event=\"run\"><![CDATA[\n      int i;\n\n      ignore(max_delay);\n\n      if (write_phase == 0) {\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->last_decay_time = decay_time;\n        plugin_data->delay_samples = delay_samples = CALC_DELAY (delay_time);\n        plugin_data->feedback = feedback = calc_feedback (delay_time, decay_time);\n      }\n      \n      if (delay_time == last_delay_time && decay_time == last_decay_time) {\n        long idelay_samples = (long)delay_samples;\n        LADSPA_Data frac = delay_samples - idelay_samples;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase = write_phase - (long)delay_samples;\n          LADSPA_Data r1 = buffer[read_phase & buffer_mask];\n          LADSPA_Data r2 = buffer[(read_phase-1) & buffer_mask];\n          LADSPA_Data read = LIN_INTERP (frac, r1, r2);\n          LADSPA_Data written = read * feedback + in[i];\n\n          buffer[write_phase++ & buffer_mask] = written;\n          buffer_write(out[i], read - feedback * written);\n          write_phase++;\n        }\n      } else {\n        float next_delay_samples = CALC_DELAY (delay_time);\n        float delay_samples_slope = (next_delay_samples - delay_samples) / sample_count;\n        float next_feedback = calc_feedback (delay_time, decay_time);\n        float feedback_slope = (next_feedback - feedback) / sample_count;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase, idelay_samples;\n          LADSPA_Data read, written, frac;\n\n          delay_samples += delay_samples_slope;\n          write_phase++;\n          read_phase = write_phase - (long)delay_samples;\n          idelay_samples = (long)delay_samples;\n          frac = delay_samples - idelay_samples;\n          read = LIN_INTERP (frac,\n                             buffer[read_phase & buffer_mask], \n                             buffer[(read_phase-1) & buffer_mask]);\n          written = read * feedback + in[i];\n          buffer[write_phase & buffer_mask] = written;\n          buffer_write(out[i], read - feedback * written);\n\n          feedback += feedback_slope;\n        }\n\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->last_decay_time = decay_time;\n        plugin_data->feedback = feedback;\n        plugin_data->delay_samples = delay_samples;\n      }\n      \n      plugin_data->write_phase = write_phase;\n    ]]></callback>\n\n    <port label=\"in\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"out\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"max_delay\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Max Delay (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Maximum delay. Used to set the delay buffer size upon activation. Cannot\n       be modulated. Note that if you do not connect to this port before\n       activation, it will default to 1 second. \n      </p>\n    </port>\n\n    <port label=\"delay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Delay Time (s)</name>\n      <range min=\"0\"/>\n    </port>\n\n    <port label=\"decay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Decay Time (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Time for the echoes to decay by 60 decibels. If this time is negative\n       then the feedback coefficient will be negative, thus emphasizing only odd\n       harmonics at an octave lower.\n      </p>\n    </port>\n\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_mask\" type=\"unsigned int\" />\n    <instance-data label=\"sample_rate\" type=\"unsigned int\" />\n    <instance-data label=\"delay_samples\" type=\"LADSPA_Data\" />\n    <instance-data label=\"write_phase\" type=\"long\" />\n    <instance-data label=\"feedback\" type=\"LADSPA_Data\" />\n    <instance-data label=\"last_delay_time\" type=\"LADSPA_Data\" />\n    <instance-data label=\"last_decay_time\" type=\"LADSPA_Data\" />\n  </plugin>\n\n  <!-- ******   ALLPASS-C   ****** -->\n\n  <plugin label=\"allpass_c\" id=\"1897\" class=\"DelayPlugin\">\n    <name>Allpass delay line, cubic spline interpolation</name>\n    <p>Based on work by James McCartney in SuperCollider.</p>\n    \n    <callback event=\"instantiate\"><![CDATA[\n      sample_rate = s_rate;\n\n      // Uninitialized variables\n      buffer_mask = 0;\n      delay_samples = 0;\n      feedback = 0;\n      last_decay_time = 0;\n      last_delay_time = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"activate\"><![CDATA[\n      unsigned int minsize, size;\n    \n      if (plugin_data->max_delay && *plugin_data->max_delay > 0)\n        minsize = sample_rate * *plugin_data->max_delay;\n      else if (plugin_data->delay_time)\n        minsize = sample_rate * *plugin_data->delay_time;\n      else\n        minsize = sample_rate; /* 1 second default */\n    \n      size = 1;\n      while (size < minsize) size <<= 1;\n    \n      /* calloc sets the buffer to zero. */\n      buffer = calloc(size, sizeof(LADSPA_Data));\n      if (buffer)\n        buffer_mask = size - 1;\n      else\n        buffer_mask = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n    \n    <callback event=\"run\"><![CDATA[\n      int i;\n\n      ignore(max_delay);\n\n      if (write_phase == 0) {\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->last_decay_time = decay_time;\n        plugin_data->delay_samples = delay_samples = CALC_DELAY (delay_time);\n        plugin_data->feedback = feedback = calc_feedback (delay_time, decay_time);\n      }\n      \n      if (delay_time == last_delay_time && decay_time == last_decay_time) {\n        long idelay_samples = (long)delay_samples;\n        LADSPA_Data frac = delay_samples - idelay_samples;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase = write_phase - (long)delay_samples;\n          LADSPA_Data read = cube_interp (frac,\n                                          buffer[(read_phase-1) & buffer_mask], \n                                          buffer[read_phase & buffer_mask], \n                                          buffer[(read_phase+1) & buffer_mask], \n                                          buffer[(read_phase+2) & buffer_mask]);\n          LADSPA_Data written = read * feedback + in[i];\n\n          buffer[write_phase++ & buffer_mask] = written;\n          buffer_write(out[i], read - feedback * written);\n        }\n      } else {\n        float next_delay_samples = CALC_DELAY (delay_time);\n        float delay_samples_slope = (next_delay_samples - delay_samples) / sample_count;\n        float next_feedback = calc_feedback (delay_time, decay_time);\n        float feedback_slope = (next_feedback - feedback) / sample_count;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase, idelay_samples;\n          LADSPA_Data read, written, frac;\n\n          delay_samples += delay_samples_slope;\n          write_phase++;\n          read_phase = write_phase - (long)delay_samples;\n          idelay_samples = (long)delay_samples;\n          frac = delay_samples - idelay_samples;\n          read = cube_interp (frac,\n                              buffer[(read_phase-1) & buffer_mask], \n                              buffer[read_phase & buffer_mask], \n                              buffer[(read_phase+1) & buffer_mask], \n                              buffer[(read_phase+2) & buffer_mask]);\n          written = read * feedback + in[i];\n          buffer[write_phase & buffer_mask] = written;\n          buffer_write(out[i], read - feedback * written);\n\n          feedback += feedback_slope;\n        }\n\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->last_decay_time = decay_time;\n        plugin_data->feedback = feedback;\n        plugin_data->delay_samples = delay_samples;\n      }\n      \n      plugin_data->write_phase = write_phase;\n    ]]></callback>\n\n    <port label=\"in\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"out\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"max_delay\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Max Delay (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Maximum delay. Used to set the delay buffer size upon activation. Cannot\n       be modulated. Note that if you do not connect to this port before\n       activation, it will default to 1 second. \n      </p>\n    </port>\n\n    <port label=\"delay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Delay Time (s)</name>\n      <range min=\"0\"/>\n    </port>\n\n    <port label=\"decay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Decay Time (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Time for the echoes to decay by 60 decibels. If this time is negative\n       then the feedback coefficient will be negative, thus emphasizing only odd\n       harmonics at an octave lower.\n      </p>\n    </port>\n\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_mask\" type=\"unsigned int\" />\n    <instance-data label=\"sample_rate\" type=\"unsigned int\" />\n    <instance-data label=\"delay_samples\" type=\"LADSPA_Data\" />\n    <instance-data label=\"write_phase\" type=\"long\" />\n    <instance-data label=\"feedback\" type=\"LADSPA_Data\" />\n    <instance-data label=\"last_delay_time\" type=\"LADSPA_Data\" />\n    <instance-data label=\"last_decay_time\" type=\"LADSPA_Data\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "am_pitchshift_1433.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include <stdlib.h>\n      #ifndef _USE_MATH_DEFINES\n      #define _USE_MATH_DEFINES /* required for M_PI on some systems */\n      #endif\n      #include <math.h>\n\n      #include \"ladspa-util.h\"\n\n      /* Beware of dependcies if you change this */\n      #define DELAY_SIZE 8192      \n    ]]></code>\n  </global>\n\n  <plugin label=\"amPitchshift\" id=\"1433\" class=\"PitchPlugin\">\n    <name>AM pitchshifter</name>\n    <p>This plugin works by running a single write pointer (monotonic) and two read pointers (pitchscaled) over a ringbuffer.</p>\n    <p>The output is faded between the two readpointers according to the sine of the distance from the write pointer. The design is based on the mechanism of a mechanical pitchshifter I saw in the Gemeentemuseum in Den Haag, though I'm sure it is a common enough algorithm.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      delay = calloc(DELAY_SIZE, sizeof(LADSPA_Data));\n      rptr.all = 0;\n      wptr = 0;\n      last_size = -1;\n      delay_mask = 0xFF;\n      delay_ofs = 0x80;\n      last_gain = 0.5f;\n      count = 0;\n      last_inc = 0.0f;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->delay);\n    ]]></callback>\n\n\t<callback event=\"run\"><![CDATA[\n    \n    \tunsigned long pos;\n    \t\n\t\tif (enabled == 0)\n\t\t{\n\t\t\t//Send input direct to output (no processing)\n            for (pos = 0; pos < sample_count; pos++)\n            \tbuffer_write(output[pos], input[pos]); \n\t\t}\n\t\telse\n\t\t{\n    \t    fixp16 om;\n\t        float gain = last_gain, gain_inc = last_inc;\n          \tunsigned int i;\n\n\t\t\tfloat p = pitch;\n\n\t\t\tif (cents != 0)\n\t\t\t\tp = pow(2, cents/1200); /* Convert cents to frequency multiplyer */\n\n          \tom.all = f_round(p * 65536.0f);\n\n\t\t\tif (size != last_size) {\n    \t\t\tint size_tmp = f_round(size);\n\n        \t\tif (size_tmp > 7) {\n        \t  \t\tsize_tmp = 5;\n        \t\t} else if (size_tmp < 1) {\n        \t  \t\tsize_tmp = 1;\n        \t\t}\n        \t\tplugin_data->last_size = size;\n\n        \t\t/* Calculate the ringbuf parameters, the magick constants will need\n        \t \t* to be changed if you change DELAY_SIZE */\n        \t\tdelay_mask = (1 << (size_tmp + 6)) - 1;\n        \t\tdelay_ofs = 1 << (size_tmp + 5);\n          \t}\n\n\t\t  for (pos = 0; pos < sample_count; pos++) {\n\t\t\t  float out = 0.0f;\n\n\t\t\t  if (count++ > 14) {\n\t\t\t\t  float tmp;\n\t\t\t\t  count = 0;\n\t\t\t\t  tmp = 0.5f * (float)((rptr.part.in - wptr + delay_ofs/2) &\n\t\t\t\t\t  delay_mask) / (float)delay_ofs;\n\t\t\t\t  tmp = sinf(M_PI * 2.0f * tmp) * 0.5f + 0.5f;\n\t\t\t\t  gain_inc = (tmp - gain) / 15.0f;\n\t\t\t  }\n\t\t\t  gain += gain_inc;\n\n\t\t\t  delay[wptr] = input[pos];\n\n\t\t\t  /* Add contributions from the two readpointers, scaled by thier\n\t\t\t\t  * distance from the write pointer */\n\t\t\t  i = rptr.part.in;\n\t\t\t  out += cube_interp((float)rptr.part.fr * 0.0000152587f,\n                             delay[(i - 1) & delay_mask], delay[i],\n                             delay[(i + 1) & delay_mask],\n                             delay[(i + 2) & delay_mask]) * (1.0f - gain);\n\t\t\t  i += delay_ofs;\n\t\t\t  out += cube_interp((float)rptr.part.fr * 0.0000152587f,\n                             delay[(i - 1) & delay_mask], delay[i & delay_mask],\n                             delay[(i + 1) & delay_mask],\n                             delay[(i + 2) & delay_mask]) * gain;\n\t\n\t\t\t  buffer_write(output[pos], out);\n\n\t\t\t  /* Increment ringbuffer pointers */\n\t\t\t  wptr = (wptr + 1) & delay_mask;\n\t\t\t  rptr.all += om.all;\n\t\t\t  rptr.part.in &= delay_mask;\n          }\n\n          plugin_data->rptr.all = rptr.all;\n          plugin_data->wptr = wptr;\n          plugin_data->delay_mask = delay_mask;\n          plugin_data->delay_ofs = delay_ofs;\n          plugin_data->last_gain = gain;\n          plugin_data->count = count;\n          plugin_data->last_inc = gain_inc;\n\n          *(plugin_data->latency) = delay_ofs/2;\n\t\t}\n    \n    ]]></callback>\n\n    <port label=\"enabled\" dir=\"input\" type=\"control\" hint=\"toggled,default_1\">\n      <name>Enabled</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"pitch\" dir=\"input\" type=\"control\" hint=\"logarithmic,default_1\">\n      <name>Pitch shift (Frequency)</name>\n      <p>The multiple of the output pitch, eg. 2.0 will increase the pitch by one octave.</p>\n      <range min=\"0.25\" max=\"4.0\"/>\n    </port>\n\n    <port label=\"cents\" dir=\"input\" type=\"control\" hint=\"integer,default_0\">\n      <name>Pitch shift (Cents)</name>\n      <p>Pitch shift in cents. Overrides frequency control.</p>\n      <range min=\"-100\" max=\"100\"/>\n    </port>\n\n    <port label=\"size\" dir=\"input\" type=\"control\" hint=\"integer,default_middle\">\n      <name>Buffer size</name>\n      <p>The order of magnitude of the buffer size. Small buffers will sound fluttery, large buffers will have flangy sounding echos.</p>\n      <p>I recommend a buffer size of 3 for a reasonable compromise, with wideband material at around 48KHz. For drums you might have to lower it, and for voiced background noises it can go higher.</p>\n      <range min=\"1\" max=\"7\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"latency\" dir=\"output\" type=\"control\">\n      <name>latency</name>\n    </port>\n\n    <instance-data label=\"delay\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"rptr\" type=\"fixp16\" />\n    <instance-data label=\"wptr\" type=\"unsigned int\" />\n    <instance-data label=\"last_size\" type=\"int\" />\n    <instance-data label=\"delay_mask\" type=\"unsigned int\" />\n    <instance-data label=\"delay_ofs\" type=\"unsigned int\" />\n    <instance-data label=\"last_gain\" type=\"float\" />\n    <instance-data label=\"last_inc\" type=\"float\" />\n    <instance-data label=\"count\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "amp_1181.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"ladspa-util.h\"\n    </code>\n  </global>\n\n  <plugin label=\"amp\" id=\"1181\" class=\"AmplifierPlugin\">\n    <name>Simple amplifier</name>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float coef = DB_CO(gain);\n\n      for (pos = 0; pos < sample_count; pos++) {\n        buffer_write(output[pos], input[pos] * coef);\n      }\n    ]]></callback>\n\n    <port label=\"gain\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Amps gain (dB)</name>\n      <p>Controls the gain of the input signal in dB's.</p>\n      <range min=\"-70\" max=\"+70\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "analogue_osc_1416.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include <math.h>\n\n      #include \"ladspa-util.h\"\n      #include \"util/blo.h\"\n    ]]></code>\n  </global>\n\n  <plugin label=\"analogueOsc\" id=\"1416\" class=\"OscillatorPlugin\">\n    <name>Analogue Oscillator</name>\n    <p>This plugin simulates the output you get from an analogue synth's oscillators.</p>\n    <p>You can get a reasonable emulation of a 303's square (for example) if you set the warmth to about 0.4 and the instability to about 0.05.</p>\n    <p>The frequency is currently a control input, and there is no interpolation, so if your host is using large block size it will sound steppy.</p>\n    <p>I'm unsure whether to convert this to an audio input or interpolate the control in.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      tables = blo_h_tables_new(512);\n      osc = blo_h_new(tables, BLO_SINE, (float)s_rate);\n      fs = (float)s_rate;\n      itm1 = 0.0f;\n      otm1 = 0.0f;\n      otm2 = 0.0f;\n      rnda = 43437;\n      rndb = 111145;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      blo_h_tables_free(plugin_data->tables);\n      blo_h_free(plugin_data->osc);\n    ]]></callback>\n\n    <callback event=\"run\" unused-vars=\"tables\"><![CDATA[\n      unsigned long pos;\n      LADSPA_Data x, y;\n      const float q = warm - 0.999f;\n      const float leak = 1.0f - warm * 0.02f;\n      const unsigned int max_jump = (unsigned int)f_round(instab * 30000.0f) + 1;\n\n      osc->wave = LIMIT(f_round(wave) - 1, 0, BLO_N_WAVES-1);\n      osc->nyquist = fs * (0.47f - f_clamp(warm, 0.0f, 1.0f) * 0.41f);\n      blo_hd_set_freq(osc, freq);\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tx = blo_hd_run_cub(osc);\n        rnda += 432577;\n        rnda *= 47;\n\trndb += 7643113;\n        rnda *= 59;\n        osc->ph.all += (((rnda + rndb)/2) % max_jump) - max_jump/2;\n        osc->ph.all &= osc->ph_mask;\n\ty = (x - q) / (1.0f - f_exp(-1.2f * (x - q))) +\n              q / (1.0f - f_exp(1.2f * q));\n\t/* Catch the case where x ~= q */\n\tif (isnan(y) || fabs(y) > 1.0f) {\n\t\ty = 0.83333f + q / (1.0f - f_exp(1.2f * q));\n\t}\n\totm2 = otm1;\n        otm1 = leak * otm1 + y - itm1;\n        itm1 = y;\n\n        buffer_write(output[pos], (otm1 + otm2) * 0.5f);\n      }\n\n      plugin_data->itm1 = itm1;\n      plugin_data->otm1 = otm1;\n      plugin_data->otm2 = otm2;\n      plugin_data->rnda = rnda;\n      plugin_data->rndb = rndb;\n    ]]></callback>\n\n    <port label=\"wave\" dir=\"input\" type=\"control\" hint=\"integer,default_1\">\n      <name>Waveform (1=sin, 2=tri, 3=squ, 4=saw)</name>\n      <p><![CDATA[\n\tThe basic shape of the waveform is selected using this control:\n\n\t\\begin{tabular}{|r|l|}\n\t\\hline\n\tValue & Waveform \\\\\n\t\\hline \\hline\n\t1 & Sine \\\\\n\t2 & Triangle \\\\\n\t3 & Square \\\\\n\t4 & Saw \\\\\n        \\hline\n\t\\end{tabular}\n      ]]></p>\n      <range min=\"1\" max=\"BLO_N_WAVES\"/>\n    </port>\n\n    <port label=\"freq\" dir=\"input\" type=\"control\" hint=\"sample_rate,default_440,logarithmic\">\n      <name>Frequency (Hz)</name>\n      <p>The frequency of the output (Hz).</p>\n      <range min=\"0.000001\" max=\"0.499\"/>\n    </port>\n\n    <port label=\"warm\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Warmth</name>\n      <p>The degree of softening that is applied to the generated waveform, reduces the number of harmonics in the output.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"instab\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Instability</name>\n      <p>The degree of pitch instability of the output. Turning this too high with square and saw waves will produce an annoying jittery sound, I want to fix this but it is tricky.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"tables\" type=\"blo_h_tables *\" />\n    <instance-data label=\"osc\" type=\"blo_h_osc *\" />\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"itm1\" type=\"float\" />\n    <instance-data label=\"otm1\" type=\"float\" />\n    <instance-data label=\"otm2\" type=\"float\" />\n    <instance-data label=\"rnda\" type=\"unsigned int\" />\n    <instance-data label=\"rndb\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "autogen.sh",
    "content": "#! /bin/sh\nautoreconf -i -I m4 || exit 1\n\ntest -n \"$NOCONFIGURE\" || ./configure \"$@\"\n\nexit 0\n"
  },
  {
    "path": "bandpass_a_iir_1893.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Alexander Ehlert &lt;mag@glame.de&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code>\n\t\t\t#include \"config.h\"\n\t\t\t#include \"util/iir.h\"\n                        \n\t\t</code>\n\t</global>\n\n\t<plugin label=\"bandpass_a_iir\" id=\"1893\" class=\"BandpassPlugin\">\n\t\t<name>Glame Bandpass Analog Filter</name>\n                <p> IIR bandpass filter modeled after an analog circuit. This filter was ported from the glame multitrack editor to ladspa.\n                </p>\n\n                <callback event=\"instantiate\">\n                  sample_rate = s_rate;\n                </callback>\n\t\t<callback event=\"run\">\n                  calc_2polebandpass(iirf, gt, center, width, sample_rate);\n                  iir_process_buffer_1s_5(iirf, gt, input, output, sample_count,0);\n\n                  // Unused variable\n                  (void)(run_adding_gain);\n                </callback>\n\n                <callback event=\"activate\">                  \n                  gt = init_iir_stage(IIR_STAGE_LOWPASS,1,3,2);\n                  iirf = init_iirf_t(gt);\n                  calc_2polebandpass(iirf, gt, *(plugin_data->center), *(plugin_data->width), sample_rate);\n                </callback>\n\n                <callback event=\"cleanup\">\n                  free_iirf_t(plugin_data->iirf, plugin_data->gt);\n                  free_iir_stage(plugin_data->gt);\n                </callback>\n\n                <port label=\"center\" dir=\"input\" type=\"control\" hint=\"default_low, sample_rate, logarithmic\">\n\t\t\t<name>Center Frequency (Hz)</name>\n \t\t\t<range min=\"0.0001\" max=\"0.45\"/>\n\t\t</port>\n\n                <port label=\"width\" dir=\"input\" type=\"control\" hint=\"default_middle, sample_rate, logarithmic\">\n\t\t\t<name>Bandwidth (Hz)</name>\n \t\t\t<range min=\"0.0001\" max=\"0.45\"/>\n\t\t</port>\n                \n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n            \n                <instance-data label=\"iirf\" type=\"iirf_t*\"/>\n                <instance-data label=\"gt\" type=\"iir_stage_t*\"/>  \n                <instance-data label=\"sample_rate\" type=\"long\"/>           \n\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "bandpass_iir_1892.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Alexander Ehlert &lt;mag@glame.de&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code>\n\t\t\t#include \"config.h\"\n\t\t\t#include \"util/iir.h\"\n                        \n\t\t</code>\n\t</global>\n\n\t<plugin label=\"bandpass_iir\" id=\"1892\" class=\"BandpassPlugin\">\n\t\t<name>Glame Bandpass Filter</name>\n                <p> IIR bandpass filter based using chebishev coefficients. The filter allows you to tweak the number of stages used for\n                filtering. Every stage adds two more poles, which leads to a steeper dropoff. More stages need more CPU power. This\n                filter was ported from the glame multitrack editor to ladspa.\n                </p>\n\n                <callback event=\"instantiate\">\n                  sample_rate = s_rate;\n\n                  // Uninitialized variables\n                  lfc = 0;\n                  ufc = 0;\n                </callback>\n\t\t<callback event=\"run\">\n                  ufc = (center + width*0.5f)/(float)sample_rate;\n                  lfc = (center - width*0.5f)/(float)sample_rate;\n                  combine_iir_stages(IIR_STAGE_BANDPASS, gt, first, second,\n                                     chebyshev(iirf, first,  2*CLAMP((int)stages,1,10), IIR_STAGE_LOWPASS,  ufc, 0.5f),\n                                     chebyshev(iirf, second, 2*CLAMP((int)stages,1,10), IIR_STAGE_HIGHPASS, lfc, 0.5f));\n                  iir_process_buffer_ns_5(iirf, gt, input, output, sample_count,RUN_ADDING);\n\n                  // Unused variable\n                  (void)(run_adding_gain);\n                </callback>\n\n                <callback event=\"activate\">                  \n                  ufc = (*(plugin_data->center) + *(plugin_data->width)*0.5f)/(float)sample_rate;\n                  lfc = (*(plugin_data->center) - *(plugin_data->width)*0.5f)/(float)sample_rate;\n                  first = init_iir_stage(IIR_STAGE_LOWPASS,10,3,2);\n                  second = init_iir_stage(IIR_STAGE_HIGHPASS,10,3,2);                  \n                  gt = init_iir_stage(IIR_STAGE_BANDPASS,20,3,2); \n                  iirf = init_iirf_t(gt);\n                  chebyshev(iirf, first, 2*CLAMP((int)(*(plugin_data->stages)),1,10), IIR_STAGE_LOWPASS, ufc, 0.5f);\n                  chebyshev(iirf, second, 2*CLAMP((int)(*(plugin_data->stages)),1,10), IIR_STAGE_HIGHPASS, lfc, 0.5f);\n                  combine_iir_stages(IIR_STAGE_BANDPASS, gt, first, second,0,0);\n                </callback>\n\n                <callback event=\"cleanup\">\n                  free_iirf_t(plugin_data->iirf, plugin_data->gt);                  \n                  free_iir_stage(plugin_data->first);\n                  free_iir_stage(plugin_data->second);\n                  free_iir_stage(plugin_data->gt);\n                </callback>\n\n                <port label=\"center\" dir=\"input\" type=\"control\" hint=\"default_middle, sample_rate, logarithmic\">\n\t\t\t<name>Center Frequency (Hz)</name>\n \t\t\t<range min=\"0.0001\" max=\"0.45\"/>\n\t\t</port>\n\n                <port label=\"width\" dir=\"input\" type=\"control\" hint=\"default_middle, sample_rate, logarithmic\">\n\t\t\t<name>Bandwidth (Hz)</name>\n \t\t\t<range min=\"0.0001\" max=\"0.45\"/>\n\t\t</port>\n\n                <port label=\"stages\" dir=\"input\" type=\"control\" hint=\"default_1, integer\">\n\t\t\t<name>Stages(2 poles per stage)</name>\n\t\t\t<range min=\"1.0\" max=\"10.0\"/>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n            \n                <instance-data label=\"iirf\" type=\"iirf_t*\"/>\n                <instance-data label=\"gt\" type=\"iir_stage_t*\"/>\n                <instance-data label=\"first\" type=\"iir_stage_t*\"/>\n                <instance-data label=\"second\" type=\"iir_stage_t*\"/>\n                <instance-data label=\"sample_rate\" type=\"long\"/>\n                <instance-data label=\"ufc\" type=\"float\"/>\n                <instance-data label=\"lfc\" type=\"float\"/>        \n\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "bode_shifter_1431.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n\n#include <math.h>\n\n#include \"ladspa-util.h\"\n\n#define SIN_T_SIZE 1024\n#define D_SIZE 256\n#define NZEROS 200\n\n/* The non-zero taps of the Hilbert transformer */\nstatic float xcoeffs[] = {\n     +0.0008103736f, +0.0008457886f, +0.0009017196f, +0.0009793364f,\n     +0.0010798341f, +0.0012044365f, +0.0013544008f, +0.0015310235f,\n     +0.0017356466f, +0.0019696659f, +0.0022345404f, +0.0025318040f,\n     +0.0028630784f, +0.0032300896f, +0.0036346867f, +0.0040788644f,\n     +0.0045647903f, +0.0050948365f, +0.0056716186f, +0.0062980419f,\n     +0.0069773575f, +0.0077132300f, +0.0085098208f, +0.0093718901f,\n     +0.0103049226f, +0.0113152847f, +0.0124104218f, +0.0135991079f,\n     +0.0148917649f, +0.0163008758f, +0.0178415242f, +0.0195321089f,\n     +0.0213953037f, +0.0234593652f, +0.0257599469f, +0.0283426636f,\n     +0.0312667947f, +0.0346107648f, +0.0384804823f, +0.0430224431f,\n     +0.0484451086f, +0.0550553725f, +0.0633242001f, +0.0740128560f,\n     +0.0884368322f, +0.1090816773f, +0.1412745301f, +0.1988673273f,\n     +0.3326528346f, +0.9997730178f, -0.9997730178f, -0.3326528346f,\n     -0.1988673273f, -0.1412745301f, -0.1090816773f, -0.0884368322f,\n     -0.0740128560f, -0.0633242001f, -0.0550553725f, -0.0484451086f,\n     -0.0430224431f, -0.0384804823f, -0.0346107648f, -0.0312667947f,\n     -0.0283426636f, -0.0257599469f, -0.0234593652f, -0.0213953037f,\n     -0.0195321089f, -0.0178415242f, -0.0163008758f, -0.0148917649f,\n     -0.0135991079f, -0.0124104218f, -0.0113152847f, -0.0103049226f,\n     -0.0093718901f, -0.0085098208f, -0.0077132300f, -0.0069773575f,\n     -0.0062980419f, -0.0056716186f, -0.0050948365f, -0.0045647903f,\n     -0.0040788644f, -0.0036346867f, -0.0032300896f, -0.0028630784f,\n     -0.0025318040f, -0.0022345404f, -0.0019696659f, -0.0017356466f,\n     -0.0015310235f, -0.0013544008f, -0.0012044365f, -0.0010798341f,\n     -0.0009793364f, -0.0009017196f, -0.0008457886f, -0.0008103736f,\n};\n    ]]></code>\n  </global>\n\n  <plugin label=\"bodeShifter\" id=\"1431\" class=\"SpectralPlugin\">\n    <name>Bode frequency shifter</name>\n    <p>A Bode/Moog Frequency Shifter is a popular analogue synth module, it works by shifting all the frequencies of an input signal up or down by a specified frequency. This version shifts in both directions at the same time as its almost no extra work and its often useful to have both directions.</p>\n    <p>It doesn't actually work in the same way as an analogue Bode/Moog, which use Dome filters as the core, it uses a Hilbert Transformer, which is much simpler to implement in digital systems. The output is very similar though, and people are familiar with the name Bode.</p>\n    <p>The theory of operation is pretty simple, and uses some clever maths to cancel out the upper or lower sidebands of a ringmodulator applied to the input signal. Read the source if you want more information. The Hilbert Transformet coefficents came from mkfilter, the excellent filter calculator, available at \\url{http://www-users.cs.york.ac.uk/~fisher/mkfilter/}.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      unsigned int i;\n\n      fs = (float)s_rate;\n\n      delay = calloc(D_SIZE, sizeof(LADSPA_Data));\n      sint  = calloc(SIN_T_SIZE + 4, sizeof(float));\n\n      dptr = 0;\n      phi = 0.0f;\n      last_shift = 0.0f;\n\n      for (i = 0; i < SIN_T_SIZE + 4; i++) {\n\tsint[i] = sinf(2.0f * M_PI * (float)i / (float)SIN_T_SIZE);\n      }\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->delay);\n      free(plugin_data->sint);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      unsigned int i;\n      float hilb, rm1, rm2;\n      float shift_i = last_shift;\n      int int_p;\n      float frac_p;\n      const float shift_c = f_clamp(shift, 0.0f, 10000.0f);\n      const float shift_inc = (shift_c - last_shift) / (float)sample_count;\n      const float freq_fix = (float)SIN_T_SIZE / fs;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tdelay[dptr] = input[pos];\n\n\t/* Perform the Hilbert FIR convolution\n         * (probably FFT would be faster) */\n        hilb = 0.0f;\n        for (i = 0; i < NZEROS/2; i++) {\n            hilb += (xcoeffs[i] * delay[(dptr - i*2) & (D_SIZE - 1)]);\n        }\n\n\t/* Calcuate the table positions for the sine modulator */\n\tint_p = f_round(floor(phi));\n\n\t/* Calculate ringmod1, the transformed input modulated with a shift Hz\n\t * sinewave. This creates a +180 degree sideband at source-shift Hz and\n\t * a 0 degree sindeband at source+shift Hz */\n\tfrac_p = phi - int_p;\n\n\t/* the Hilbert has a gain of pi/2, which we have to correct for, thanks\n         * Fons! */\n\trm1 = hilb * 0.63661978f * cube_interp(frac_p, sint[int_p],\n\t\t\tsint[int_p+1], sint[int_p+2], sint[int_p+3]);\n\n\t/* Calcuate the table positions for the cosine modulator */\n\tint_p = (int_p + SIN_T_SIZE / 4) & (SIN_T_SIZE - 1);\n\n\t/* Calculate ringmod2, the delayed input modulated with a shift Hz\n\t * cosinewave. This creates a 0 degree sideband at source+shift Hz\n\t * and a -180 degree sindeband at source-shift Hz */\n\trm2 = delay[(dptr - 99) & (D_SIZE - 1)] * cube_interp(frac_p,\n\t      sint[int_p], sint[int_p+1], sint[int_p+2], sint[int_p+3]);\n\n\t/* Output the sum and differences of the ringmods. The +/-180 degree\n\t * sidebands cancel (more of less) and just leave the shifted\n         * components */\n        buffer_write(dout[pos], (rm2 - rm1) * 0.5f);\n        buffer_write(uout[pos], (rm2 + rm1) * 0.5f);\n\n\tdptr = (dptr + 1) & (D_SIZE - 1);\n\tphi += shift_i * freq_fix;\n\twhile (phi > SIN_T_SIZE) {\n\t\tphi -= SIN_T_SIZE;\n\t}\n\tshift_i += shift_inc;\n      }\n\n      plugin_data->dptr = dptr;\n      plugin_data->phi = phi;\n      plugin_data->last_shift = shift_c;\n\n      *(plugin_data->latency) = 99;\n    ]]></callback>\n\n    <port label=\"shift\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Frequency shift</name>\n      <p>Controls the frequency shift applied to the input signal, in Hz. Note, this is not a pitch shift, so you not get natural sounding results out, it is an audio effect popular with modular synthesists.</p>\n      <range min=\"0\" max=\"5000\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"dout\" dir=\"output\" type=\"audio\">\n      <name>Down out</name>\n    </port>\n\n    <port label=\"uout\" dir=\"output\" type=\"audio\">\n      <name>Up out</name>\n    </port>\n\n    <port label=\"latency\" dir=\"output\" type=\"control\">\n      <name>latency</name>\n    </port>\n\n    <instance-data label=\"delay\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"dptr\" type=\"unsigned int\" />\n    <instance-data label=\"phi\" type=\"float\" />\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"last_shift\" type=\"float\" />\n    <instance-data label=\"sint\" type=\"float *\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "bode_shifter_cv_1432.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n\n#include <math.h>\n\n#include \"ladspa-util.h\"\n\n#define SIN_T_SIZE 1024\n#define D_SIZE 256\n#define NZEROS 200\n\n/* The non-zero taps of the Hilbert transformer */\nstatic float xcoeffs[] = {\n     +0.0008103736f, +0.0008457886f, +0.0009017196f, +0.0009793364f,\n     +0.0010798341f, +0.0012044365f, +0.0013544008f, +0.0015310235f,\n     +0.0017356466f, +0.0019696659f, +0.0022345404f, +0.0025318040f,\n     +0.0028630784f, +0.0032300896f, +0.0036346867f, +0.0040788644f,\n     +0.0045647903f, +0.0050948365f, +0.0056716186f, +0.0062980419f,\n     +0.0069773575f, +0.0077132300f, +0.0085098208f, +0.0093718901f,\n     +0.0103049226f, +0.0113152847f, +0.0124104218f, +0.0135991079f,\n     +0.0148917649f, +0.0163008758f, +0.0178415242f, +0.0195321089f,\n     +0.0213953037f, +0.0234593652f, +0.0257599469f, +0.0283426636f,\n     +0.0312667947f, +0.0346107648f, +0.0384804823f, +0.0430224431f,\n     +0.0484451086f, +0.0550553725f, +0.0633242001f, +0.0740128560f,\n     +0.0884368322f, +0.1090816773f, +0.1412745301f, +0.1988673273f,\n     +0.3326528346f, +0.9997730178f, -0.9997730178f, -0.3326528346f,\n     -0.1988673273f, -0.1412745301f, -0.1090816773f, -0.0884368322f,\n     -0.0740128560f, -0.0633242001f, -0.0550553725f, -0.0484451086f,\n     -0.0430224431f, -0.0384804823f, -0.0346107648f, -0.0312667947f,\n     -0.0283426636f, -0.0257599469f, -0.0234593652f, -0.0213953037f,\n     -0.0195321089f, -0.0178415242f, -0.0163008758f, -0.0148917649f,\n     -0.0135991079f, -0.0124104218f, -0.0113152847f, -0.0103049226f,\n     -0.0093718901f, -0.0085098208f, -0.0077132300f, -0.0069773575f,\n     -0.0062980419f, -0.0056716186f, -0.0050948365f, -0.0045647903f,\n     -0.0040788644f, -0.0036346867f, -0.0032300896f, -0.0028630784f,\n     -0.0025318040f, -0.0022345404f, -0.0019696659f, -0.0017356466f,\n     -0.0015310235f, -0.0013544008f, -0.0012044365f, -0.0010798341f,\n     -0.0009793364f, -0.0009017196f, -0.0008457886f, -0.0008103736f,\n};\n    ]]></code>\n  </global>\n\n  <plugin label=\"bodeShifterCV\" id=\"1432\" class=\"SpectralPlugin\">\n    <name>Bode frequency shifter (CV)</name>\n    <p>See the non CV version for information.</p>\n    <p>This is more or less a copy of the Doepfer A126, \\url{http://www.doepfer.de/a126.htm}.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      unsigned int i;\n\n      fs = (float)s_rate;\n\n      delay = calloc(D_SIZE, sizeof(LADSPA_Data));\n      sint  = calloc(SIN_T_SIZE + 4, sizeof(float));\n\n      dptr = 0;\n      phi = 0.0f;\n\n      for (i = 0; i < SIN_T_SIZE + 4; i++) {\n\tsint[i] = sinf(2.0f * M_PI * (float)i / (float)SIN_T_SIZE);\n      }\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      unsigned int i;\n      float hilb, rm1, rm2;\n      int int_p;\n      float frac_p;\n      const float freq_fix = (float)SIN_T_SIZE * 1000.0f * f_clamp(atten, 0.0f, 10.0f) / fs;\n      const float base_ofs = (float)SIN_T_SIZE * f_clamp(shift_b, 0.0f, 10000.0f) / fs;\n      const float mixc = mix * 0.5f + 0.5f;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tdelay[dptr] = input[pos];\n\n\t/* Perform the Hilbert FIR convolution\n         * (probably FFT would be faster) */\n        hilb = 0.0f;\n        for (i = 0; i < NZEROS/2; i++) {\n          hilb += (xcoeffs[i] * delay[(dptr - i*2) & (D_SIZE - 1)]);\n        }\n\n\t/* Calcuate the table positions for the sine modulator */\n\tint_p = f_round(floor(phi));\n\n\t/* Calculate ringmod1, the transformed input modulated with a shift Hz\n\t * sinewave. This creates a +180 degree sideband at source-shift Hz and\n\t * a 0 degree sindeband at source+shift Hz */\n\tfrac_p = phi - int_p;\n\trm1 = hilb * 0.63661978f * cube_interp(frac_p, sint[int_p],\n\t\t\tsint[int_p+1], sint[int_p+2], sint[int_p+3]);\n\n\t/* Calcuate the table positions for the cosine modulator */\n\tint_p = (int_p + SIN_T_SIZE / 4) & (SIN_T_SIZE - 1);\n\n\t/* Calculate ringmod2, the delayed input modulated with a shift Hz\n\t * cosinewave. This creates a 0 degree sideband at source+shift Hz\n\t * and a -180 degree sindeband at source-shift Hz */\n\trm2 = delay[(dptr - 99) & (D_SIZE - 1)] * cube_interp(frac_p,\n\t      sint[int_p], sint[int_p+1], sint[int_p+2], sint[int_p+3]);\n\n\t/* Output the sum and differences of the ringmods. The +/-180 degree\n\t * sidebands cancel (more of less) and just leave the shifted\n         * components */\n        buffer_write(dout[pos], (rm2 - rm1) * 0.5f);\n        buffer_write(uout[pos], (rm2 + rm1) * 0.5f);\n        buffer_write(mixout[pos], (dout[pos] - uout[pos]) * mixc + uout[pos]);\n\n\tdptr = (dptr + 1) & (D_SIZE - 1);\n\tphi += f_clamp(shift[pos], 0.0f, 10.0f) * freq_fix + base_ofs;\n\twhile (phi > SIN_T_SIZE) {\n\t  phi -= SIN_T_SIZE;\n\t}\n      }\n\n      plugin_data->dptr = dptr;\n      plugin_data->phi = phi;\n\n      *(plugin_data->latency) = 99;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->delay);\n      free(plugin_data->sint);\n    ]]></callback>\n\n    <port label=\"shift_b\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Base shift</name>\n      <range min=\"0\" max=\"5000\"/>\n    </port>\n\n    <port label=\"mix\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Mix (-1=down, +1=up)</name>\n      <range min=\"-1\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"atten\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>CV Attenuation</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"shift\" dir=\"input\" type=\"audio\" hint=\"default_0\">\n      <name>Shift CV</name>\n      <p>Controls the frequency shift applied to the input signal, in KHz.</p>\n      <range min=\"0\" max=\"5\"/>\n    </port>\n\n    <port label=\"dout\" dir=\"output\" type=\"audio\">\n      <name>Down out</name>\n    </port>\n\n    <port label=\"uout\" dir=\"output\" type=\"audio\">\n      <name>Up out</name>\n    </port>\n\n    <port label=\"mixout\" dir=\"output\" type=\"audio\">\n      <name>Mix out</name>\n    </port>\n\n    <port label=\"latency\" dir=\"output\" type=\"control\">\n      <name>latency</name>\n    </port>\n\n    <instance-data label=\"delay\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"dptr\" type=\"unsigned int\" />\n    <instance-data label=\"phi\" type=\"float\" />\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"sint\" type=\"float *\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "bozosoity-checker.pl",
    "content": "#!/usr/bin/perl -w\n\n%used = ();\n\nwhile ($file = shift) {\n\topen(FH, $file);\n\tif (!($file =~ /_(\\d+)\\.xml/)) {\n\t\tdie \"'$file' doesn't look like it contains a LADSPA ID\";\n\t}\n\t$fnid = $1;\n\t#print \"looking for $fnid\\n\";\n\n\t$found = 0;\n\twhile (<FH>) {\n\t\tif (/id=\"(\\d+)\"/) {\n\t\t\t$id = $1;\n\t\t\tif ($used{$id}) {\n\t\t\t\tprint \"*** Warning: duplicate ID ($id) found in $file and \".$used{$id}.\"\\n\";\n\t\t\t} else {\n\t\t\t\t$used{$id} = $file;\n\t\t\t}\n\t\t\tif ($id < 1000) {\n\t\t\t\tprint \"*** Warning: non distributable ID ($id) found in $file\\n\";\n\t\t\t} elsif ($id < $fnid) {\n\t\t\t\tprint \"*** Warning: ID $id in XML less than hinted in filename ($fnid)\\n\";\n\t\t\t}\n\t\t}\n\t\tif (/id=\"$fnid\"/) {\n\t\t\t$found = 1;\n\t\t}\n\t}\n\tif (!$found) {\n\t\tprint \"*** Warning: no matching ID found in $file\\n\";\n\t}\n}\n"
  },
  {
    "path": "butterworth_1902.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Alexander Ehlert &lt;mag@glame.de&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code>\n\t\t\t#include \"config.h\"\n\t\t\t#include \"util/iir.h\"\n                        #include \"util/buffer.h\"\n\t\t</code>\n\t</global>\n\n\t<plugin label=\"bwxover_iir\" id=\"1902\" class=\"BandpassPlugin\">\n\t\t<name>Glame Butterworth X-over Filter</name>\n                <p> Butterworth X-over filter\n                </p>\n\n                <callback event=\"instantiate\">\n                  sample_rate = s_rate;\n                </callback>\n\t\t<callback event=\"run\">\n                  butterworth_stage(gt, 0, cutoff, resonance, sample_rate);\n                  iir_process_buffer_1s_5(iirf, gt, input, lpoutput, sample_count,0);\n\t\t  buffer_sub(input, lpoutput, hpoutput, sample_count);\n\n                  // Unused variable\n                  (void)(run_adding_gain);\n                </callback>\n\n                <callback event=\"activate\">                  \n                  gt = init_iir_stage(IIR_STAGE_LOWPASS,1,3,2);\n                  iirf = init_iirf_t(gt);\n                  butterworth_stage(gt, 0, *(plugin_data->cutoff), \n\t\t  \t\t\t   *(plugin_data->resonance), \n\t\t\t\t\t   sample_rate);\n                </callback>\n\n                <callback event=\"cleanup\">\n                  free_iirf_t(plugin_data->iirf, plugin_data->gt);\n                  free_iir_stage(plugin_data->gt);\n                </callback>\n\n                <port label=\"cutoff\" dir=\"input\" type=\"control\" hint=\"default_low, sample_rate, logarithmic\">\n\t\t\t<name>Cutoff Frequency (Hz)</name>\n \t\t\t<range min=\"0.0001\" max=\"0.45\"/>\n\t\t</port>\n\n                <port label=\"resonance\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n\t\t\t<name>Resonance</name>\n \t\t\t<range min=\"0.1\" max=\"1.41\"/>\n\t\t</port>\n                \n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"lpoutput\" dir=\"output\" type=\"audio\">\n\t\t\t<name>LP-Output</name>\n\t\t</port>\n\t\t\n\t\t<port label=\"hpoutput\" dir=\"output\" type=\"audio\">\n\t\t\t<name>HP-Output</name>\n\t\t</port>\n            \n                <instance-data label=\"iirf\" type=\"iirf_t*\"/>\n                <instance-data label=\"gt\" type=\"iir_stage_t*\"/>  \n                <instance-data label=\"sample_rate\" type=\"long\"/>           \n\n\t</plugin>\n\n        <plugin label=\"buttlow_iir\" id=\"1903\" class=\"LowpassPlugin\">\n\t\t<name>GLAME Butterworth Lowpass</name>\n                <p> Butterworth lowpass filter\n                </p>\n\n                <callback event=\"instantiate\">\n                  sample_rate = s_rate;\n                </callback>\n\t\t<callback event=\"run\">\n                  butterworth_stage(gt, 0, cutoff, resonance, sample_rate);\n                  iir_process_buffer_1s_5(iirf, gt, input, output, sample_count,0);\n\n                  // Unused variable\n                  (void)(run_adding_gain);\n                </callback>\n\n                <callback event=\"activate\">                  \n                  gt = init_iir_stage(IIR_STAGE_LOWPASS,1,3,2);\n                  iirf = init_iirf_t(gt);\n                  butterworth_stage(gt, 0, *(plugin_data->cutoff), \n\t\t  \t\t\t   *(plugin_data->resonance), \n\t\t\t\t\t   sample_rate);\n                </callback>\n\n                <callback event=\"cleanup\">\n                  free_iirf_t(plugin_data->iirf, plugin_data->gt);\n                  free_iir_stage(plugin_data->gt);\n                </callback>\n\n                <port label=\"cutoff\" dir=\"input\" type=\"control\" hint=\"default_low, sample_rate, logarithmic\">\n\t\t\t<name>Cutoff Frequency (Hz)</name>\n \t\t\t<range min=\"0.0001\" max=\"0.45\"/>\n\t\t</port>\n\n                <port label=\"resonance\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n\t\t\t<name>Resonance</name>\n \t\t\t<range min=\"0.1\" max=\"1.41\"/>\n\t\t</port>\n                \n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n\t\t\n                <instance-data label=\"iirf\" type=\"iirf_t*\"/>\n                <instance-data label=\"gt\" type=\"iir_stage_t*\"/>  \n                <instance-data label=\"sample_rate\" type=\"long\"/>           \n\n\t</plugin>\n\n        <plugin label=\"butthigh_iir\" id=\"1904\" class=\"HighpassPlugin\">\n\t\t<name>GLAME Butterworth Highpass</name>\n                <p> Butterworth highpass filter\n                </p>\n\n                <callback event=\"instantiate\">\n                  sample_rate = s_rate;\n                </callback>\n\t\t<callback event=\"run\">\n                  butterworth_stage(gt, 1, cutoff, resonance, sample_rate);\n                  iir_process_buffer_1s_5(iirf, gt, input, output, sample_count,0);\n\n                  // Unused variable\n                  (void)(run_adding_gain);\n                </callback>\n\n                <callback event=\"activate\">                  \n                  gt = init_iir_stage(IIR_STAGE_LOWPASS,1,3,2);\n                  iirf = init_iirf_t(gt);\n                  butterworth_stage(gt, 1, *(plugin_data->cutoff), \n\t\t  \t\t\t   *(plugin_data->resonance), \n\t\t\t\t\t   sample_rate);\n                </callback>\n\n                <callback event=\"cleanup\">\n                  free_iirf_t(plugin_data->iirf, plugin_data->gt);\n                  free_iir_stage(plugin_data->gt);\n                </callback>\n\n                <port label=\"cutoff\" dir=\"input\" type=\"control\" hint=\"default_low, sample_rate, logarithmic\">\n\t\t\t<name>Cutoff Frequency (Hz)</name>\n \t\t\t<range min=\"0.0001\" max=\"0.45\"/>\n\t\t</port>\n\n                <port label=\"resonance\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n\t\t\t<name>Resonance</name>\n \t\t\t<range min=\"0.1\" max=\"1.41\"/>\n\t\t</port>\n                \n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n\t\t\n                <instance-data label=\"iirf\" type=\"iirf_t*\"/>\n                <instance-data label=\"gt\" type=\"iir_stage_t*\"/>  \n                <instance-data label=\"sample_rate\" type=\"long\"/>           \n\n\t</plugin>\n  \n</ladspa>\n"
  },
  {
    "path": "chebstortion_1430.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include <ladspa-util.h>\n\n      #define HARMONICS 11\n      #define STAGES 2\n\n      static float cd_lut[STAGES][HARMONICS];\n\n      /* Calculate Chebychev coefficents from partial magnitudes, adapted from\n       * example in Num. Rec. */\n      void chebpc(float c[], float d[])\n      {\n          int k, j;\n          float sv, dd[HARMONICS];\n      \n          for (j = 0; j < HARMONICS; j++) {\n              d[j] = dd[j] = 0.0;\n          }\n      \n          d[0] = c[HARMONICS - 1];\n      \n          for (j = HARMONICS - 2; j >= 1; j--) {\n              for (k = HARMONICS - j; k >= 1; k--) {\n                  sv = d[k];\n                  d[k] = 2.0 * d[k - 1] - dd[k];\n                  dd[k] = sv;\n              }\n              sv = d[0];\n              d[0] = -dd[0] + c[j];\n              dd[0] = sv;\n          }\n      \n          for (j = HARMONICS - 1; j >= 1; j--) {\n              d[j] = d[j - 1] - dd[j];\n          }\n          d[0] = -dd[0] + 0.5 * c[0];\n      }\n\n    ]]></code>\n  </global>\n\n  <plugin label=\"chebstortion\" id=\"1430\" class=\"DistortionPlugin\">\n    <name>Chebyshev distortion</name>\n    <p>This is an interesting distortion effect that is seeded from incoming\nsignal envelope. As the level of the signal rises more and more harmonics will\nfor added to the output signal.</p>\n    <p>The distortion control sets the sensitivity of the input.</p>\n    <p>The effect evolved from some experiments between Tim Goetze and myself,\nattempting to emulate valve based guitar amp distortion. This was one of the\nfailures, but it still makes an interesting noise.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      unsigned int i;\n\n      cd_lut[0][0] = 0.0f;\n      cd_lut[0][1] = 1.0f;\n      for (i=2; i<HARMONICS; i++) {\n        cd_lut[0][i] = 0.0f;\n      }\n      cd_lut[1][0] = 0.0f;\n      cd_lut[1][1] = 1.0f;\n      for (i=2; i<HARMONICS; i++) {\n        cd_lut[1][i] = 1.0f/(float)i;\n      }\n\n      itm1 = 0.0f;\n      otm1 = 0.0f;\n      env = 0.0f;\n      count = 0;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      itm1 = 0.0f;\n      otm1 = 0.0f;\n      env = 0.0f;\n      count = 0;\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos, i;\n      float p[HARMONICS], interp[HARMONICS];\n\n      for (pos = 0; pos < sample_count; pos++) {\n        const float x = input[pos];\n        const float a = fabs(input[pos]);\n\tfloat y;\n\n\tif (a > env) {\n\t\tenv = env * 0.9f + a * 0.1f;\n\t} else {\n\t\tenv = env * 0.97f + a * 0.03f;\n\t}\n\n\tif (count-- == 0) {\n\t  for (i=0; i<HARMONICS; i++) {\n\t    interp[i] = cd_lut[0][i] * (1.0f - env * dist) +\n                        cd_lut[1][i] * env * dist;\n\t  }\n\t  chebpc(interp, p);\n\n\t  count = 4;\n\t}\n\n        // Evaluate the polynomial using Horner's Rule\n\ty = p[0] + (p[1] + (p[2] + (p[3] + (p[4] + (p[5] + (p[6] + (p[7] +\n            (p[8] + (p[9] + p[10] * x) * x) * x) * x) * x) * x) * x) * x) *\n            x) * x;\n\n\t// DC offset remove (odd harmonics cause DC offset)\n        otm1 = 0.999f * otm1 + y - itm1;\n        itm1 = y;\n\n        buffer_write(output[pos], otm1);\n      }\n\n      plugin_data->itm1 = itm1;\n      plugin_data->otm1 = otm1;\n      plugin_data->env = env;\n      plugin_data->count = count;\n    ]]></callback>\n\n    <port label=\"dist\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Distortion</name>\n      <range min=\"0\" max=\"3\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n      <range min=\"-1\" max=\"+1\"/>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n      <range min=\"-1\" max=\"+1\"/>\n    </port>\n\n    <instance-data label=\"itm1\" type=\"float\" />\n    <instance-data label=\"otm1\" type=\"float\" />\n    <instance-data label=\"env\" type=\"float\" />\n    <instance-data label=\"count\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "comb_1190.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code>\n\t\t\t#include \"ladspa-util.h\"\n\t\t\t#define COMB_SIZE 0x4000\n\t\t\t#define COMB_MASK 0x3FFF\n\t\t</code>\n\t</global>\n\n\t<plugin label=\"comb\" id=\"1190\" class=\"CombPlugin\">\n\t\t<name>Comb Filter</name>\n\n\t\t<callback event=\"instantiate\">\n\t\t\tsample_rate = s_rate;\n\t\t\tcomb_tbl = malloc(sizeof(LADSPA_Data) * COMB_SIZE);\n\t\t\tcomb_pos = 0;\n\t\t\tlast_offset = 1000;\n\t\t</callback>\n\n\t\t<callback event=\"activate\">\n\t\t\tint i;\n\n\t\t\tfor (i = 0; i &lt; COMB_SIZE; i++) {\n\t\t\t\tcomb_tbl[i] = 0;\n\t\t\t}\n\t\t\tcomb_pos = 0;\n\t\t\tlast_offset = 1000;\n\t\t</callback>\n\n\t\t<callback event=\"cleanup\">\n\t\t\tfree(plugin_data->comb_tbl);\n\t\t</callback>\n\n\t\t<callback event=\"run\"><![CDATA[\n\t\t\tfloat offset;\n\t\t\tint data_pos;\n\t\t\tunsigned long pos;\n\t\t\tfloat xf, xf_step, d_pos, fr, interp;\n\n\t\t\toffset = sample_rate / freq;\n\t\t\toffset = f_clamp(offset, 0, COMB_SIZE - 1);\n\t\t\txf_step = 1.0f / (float)sample_count;\n\t\t\txf = 0.0f;\n\n\t\t\tfor (pos = 0; pos < sample_count; pos++) {\n\t\t\t\txf += xf_step;\n\t\t\t\td_pos = comb_pos - LIN_INTERP(xf, last_offset, offset);\n\t\t\t\tdata_pos = f_trunc(d_pos);\n\t\t\t\tfr = d_pos - data_pos;\n\t\t\t\tinterp =  cube_interp(fr, comb_tbl[(data_pos - 1) & COMB_MASK], comb_tbl[data_pos & COMB_MASK], comb_tbl[(data_pos + 1) & COMB_MASK], comb_tbl[(data_pos + 2) & COMB_MASK]);\n\t\t\t\tcomb_tbl[comb_pos] = input[pos] + fb * interp;\n\t\t\t\tbuffer_write(output[pos], (input[pos] + interp) * 0.5f);\n\t\t\t\tcomb_pos = (comb_pos + 1) & COMB_MASK;\n\t\t\t}\n\n\t\t\tplugin_data->comb_pos = comb_pos;\n\t\t\tplugin_data->last_offset = offset;\n\t\t]]></callback>\n\n\t\t<port label=\"freq\" dir=\"input\" type=\"control\" hint=\"default_low\">\n\t\t\t<name>Band separation (Hz)</name>\n\t\t\t<range min=\"16\" max=\"640\"/>\n\t\t\t<p>Controls the distance between the filters peaks.</p>\n\t\t</port>\n\n\t\t<port label=\"fb\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Feedback</name>\n\t\t\t<range min=\"-0.99\" max=\"0.99\"/>\n\t\t\t<p>Feedback level, increases the distinctive wooshy phaser sound.</p>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n\n\t\t<instance-data label=\"comb_tbl\" type=\"LADSPA_Data *\"/>\n\t\t<instance-data label=\"comb_pos\" type=\"long\"/>\n\t\t<instance-data label=\"sample_rate\" type=\"long\"/>\n\t\t<instance-data label=\"last_offset\" type=\"float\"/>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "comb_1887.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Andy Wingo &lt;wingo at pobox dot com&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"ladspa-util.h\"\n\n      #define MIN(a,b) ((a) < (b) ? (a) : (b))\n      #define CALC_DELAY(delaytime) \\\n        (f_clamp (delaytime * sample_rate, 1.f, (float)(buffer_mask + 1)))\n\n      #define LOG001 -6.9077552789f\n\n      static inline float\n      calc_feedback (float delaytime, float decaytime)\n      {\n        if (delaytime == 0.f)\n          return 0.f;\n        else if (decaytime > 0.f)\n          return exp(LOG001 * delaytime / decaytime);\n\telse if (decaytime < 0.f)\n          return -exp(LOG001 * delaytime / -decaytime);\n        else\n          return 0.f;\n      }\n    ]]></code>\n  </global>\n\n  <!-- ******   COMB-N   ****** -->\n\n  <plugin label=\"comb_n\" id=\"1889\" class=\"DelayPlugin\">\n    <name>Comb delay line, noninterpolating</name>\n    <p>Based on work by James McCartney in SuperCollider.</p>\n    \n    <callback event=\"instantiate\"><![CDATA[\n      sample_rate = s_rate;\n\n      // Uninitialized variables\n      buffer_mask = 0;\n      delay_samples = 0;\n      feedback = 0;\n      last_decay_time = 0;\n      last_delay_time = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"activate\"><![CDATA[\n      unsigned int minsize, size;\n   \n      if (plugin_data->max_delay && *plugin_data->max_delay > 0)\n        minsize = sample_rate * *plugin_data->max_delay;\n      else if (plugin_data->delay_time)\n        minsize = sample_rate * *plugin_data->delay_time;\n      else\n        minsize = sample_rate; /* 1 second default */\n    \n      size = 1;\n      while (size < minsize) size <<= 1;\n    \n      /* calloc sets the buffer to zero. */\n      buffer = calloc(size, sizeof(LADSPA_Data));\n      if (buffer)\n        buffer_mask = size - 1;\n      else\n        buffer_mask = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n    \n    <callback event=\"run\"><![CDATA[\n      int i;\n\n      i = max_delay; /* stop gcc complaining */\n\n      if (write_phase == 0) {\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->last_decay_time = decay_time;\n        plugin_data->delay_samples = delay_samples = CALC_DELAY (delay_time);\n        plugin_data->feedback = feedback = calc_feedback (delay_time, decay_time);\n      }\n      \n      if (delay_time == last_delay_time) {\n        long read_phase = write_phase - (long)delay_samples;\n        LADSPA_Data *readptr = buffer + (read_phase & buffer_mask);\n        LADSPA_Data *writeptr = buffer + (write_phase & buffer_mask);\n        LADSPA_Data *lastptr = buffer + buffer_mask + 1;\n\n        if (decay_time == last_decay_time) {\n          long remain = sample_count;\n\n          while (remain) {\n            long read_space = lastptr - readptr;\n            long write_space = lastptr - writeptr;\n            long to_process = MIN (MIN (read_space, remain), write_space);\n\n            if (to_process == 0)\n              return; // buffer not allocated.\n\n            remain -= to_process;\n\n            for (i=0; i<to_process; i++) {\n              LADSPA_Data read = *(readptr++);\n              *(writeptr++) = read * feedback + in[i];\n\t      buffer_write(out[i], read);\n            }\n\n            if (readptr == lastptr) readptr = buffer;\n            if (writeptr == lastptr) writeptr = buffer;\n          }\n        } else {\n          float next_feedback = calc_feedback (delay_time, decay_time);\n          float feedback_slope = (next_feedback - feedback) / sample_count;\n          long remain = sample_count;\n\n          while (remain) {\n            long read_space = lastptr - readptr;\n            long write_space = lastptr - writeptr;\n            long to_process = MIN (MIN (read_space, remain), write_space);\n\n            if (to_process == 0)\n              return; // buffer not allocated.\n\n            remain -= to_process;\n\n            for (i=0; i<to_process; i++) {\n              LADSPA_Data read = *(readptr++);\n              *(writeptr++) = read * feedback + in[i];\n\t      buffer_write(out[i], read);\n              feedback += feedback_slope;\n            }\n\n            if (readptr == lastptr) readptr = buffer;\n            if (writeptr == lastptr) writeptr = buffer;\n          }\n\n          plugin_data->last_decay_time = decay_time;\n          plugin_data->feedback = feedback;\n        }\n\n        write_phase += sample_count;\n      } else {\n        float next_delay_samples = CALC_DELAY (delay_time);\n        float delay_samples_slope = (next_delay_samples - delay_samples) / sample_count;\n        float next_feedback = calc_feedback (delay_time, decay_time);\n        float feedback_slope = (next_feedback - feedback) / sample_count;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase;\n          LADSPA_Data read;\n\n          delay_samples += delay_samples_slope;\n          write_phase++;\n          read_phase = write_phase - (long)delay_samples;\n          read = buffer[read_phase & buffer_mask];\n\n          buffer[write_phase & buffer_mask] = read * feedback + in[i];\n\t  buffer_write(out[i], read);\n\n          feedback += feedback_slope;\n        }\n\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->last_decay_time = decay_time;\n        plugin_data->feedback = feedback;\n        plugin_data->delay_samples = delay_samples;\n      }\n      \n      plugin_data->write_phase = write_phase;\n    ]]></callback>\n\n    <port label=\"in\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"out\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"max_delay\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Max Delay (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Maximum delay. Used to set the delay buffer size upon activation. Cannot\n       be modulated. Note that if you do not connect to this port before\n       activation, it will default to 1 second. \n      </p>\n    </port>\n\n    <port label=\"delay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Delay Time (s)</name>\n      <range min=\"0\"/>\n    </port>\n\n    <port label=\"decay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Decay Time (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Time for the echoes to decay by 60 decibels. If this time is negative\n       then the feedback coefficient will be negative, thus emphasizing only odd\n       harmonics at an octave lower.\n      </p>\n    </port>\n\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_mask\" type=\"unsigned int\" />\n    <instance-data label=\"sample_rate\" type=\"unsigned int\" />\n    <instance-data label=\"delay_samples\" type=\"LADSPA_Data\" />\n    <instance-data label=\"write_phase\" type=\"long\" />\n    <instance-data label=\"feedback\" type=\"LADSPA_Data\" />\n    <instance-data label=\"last_delay_time\" type=\"LADSPA_Data\" />\n    <instance-data label=\"last_decay_time\" type=\"LADSPA_Data\" />\n  </plugin>\n\n  <!-- ******   COMB-L   ****** -->\n\n  <plugin label=\"comb_l\" id=\"1887\" class=\"DelayPlugin\">\n    <name>Comb delay line, linear interpolation</name>\n    <p>Based on work by James McCartney in SuperCollider.</p>\n    \n    <callback event=\"instantiate\"><![CDATA[\n      sample_rate = s_rate;\n\n      // Uninitialized variables\n      buffer_mask = 0;\n      delay_samples = 0;\n      feedback = 0;\n      last_decay_time = 0;\n      last_delay_time = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"activate\"><![CDATA[\n      unsigned int minsize, size;\n    \n      if (plugin_data->max_delay && *plugin_data->max_delay > 0)\n        minsize = sample_rate * *plugin_data->max_delay;\n      else if (plugin_data->delay_time)\n        minsize = sample_rate * *plugin_data->delay_time;\n      else\n        minsize = sample_rate; /* 1 second default */\n    \n      size = 1;\n      while (size < minsize) size <<= 1;\n    \n      /* calloc sets the buffer to zero. */\n      buffer = calloc(size, sizeof(LADSPA_Data));\n      if (buffer)\n        buffer_mask = size - 1;\n      else\n        buffer_mask = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n    \n    <callback event=\"run\"><![CDATA[\n      int i;\n\n      i = max_delay;\n\n      if (write_phase == 0) {\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->last_decay_time = decay_time;\n        plugin_data->delay_samples = delay_samples = CALC_DELAY (delay_time);\n        plugin_data->feedback = feedback = calc_feedback (delay_time, decay_time);\n      }\n      \n      if (delay_time == last_delay_time && decay_time == last_decay_time) {\n        long idelay_samples = (long)delay_samples;\n        LADSPA_Data frac = delay_samples - idelay_samples;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase = write_phase - (long)delay_samples;\n          LADSPA_Data r1 = buffer[read_phase & buffer_mask];\n          LADSPA_Data r2 = buffer[(read_phase-1) & buffer_mask];\n          LADSPA_Data read = LIN_INTERP (frac, r1, r2);\n\n          buffer[write_phase & buffer_mask] = read * feedback + in[i];\n\t  buffer_write(out[i], read);\n          write_phase++;\n        }\n      } else {\n        float next_delay_samples = CALC_DELAY (delay_time);\n        float delay_samples_slope = (next_delay_samples - delay_samples) / sample_count;\n        float next_feedback = calc_feedback (delay_time, decay_time);\n        float feedback_slope = (next_feedback - feedback) / sample_count;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase, idelay_samples;\n          LADSPA_Data read, frac;\n\n          delay_samples += delay_samples_slope;\n          write_phase++;\n          read_phase = write_phase - (long)delay_samples;\n          idelay_samples = (long)delay_samples;\n          frac = delay_samples - idelay_samples;\n          read = LIN_INTERP (frac,\n                             buffer[read_phase & buffer_mask], \n                             buffer[(read_phase-1) & buffer_mask]);\n          buffer[write_phase & buffer_mask] = read * feedback + in[i];\n\t  buffer_write(out[i], read);\n\n          feedback += feedback_slope;\n        }\n\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->last_decay_time = decay_time;\n        plugin_data->feedback = feedback;\n        plugin_data->delay_samples = delay_samples;\n      }\n      \n      plugin_data->write_phase = write_phase;\n    ]]></callback>\n\n    <port label=\"in\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"out\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"max_delay\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Max Delay (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Maximum delay. Used to set the delay buffer size upon activation. Cannot\n       be modulated. Note that if you do not connect to this port before\n       activation, it will default to 1 second. \n      </p>\n    </port>\n\n    <port label=\"delay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Delay Time (s)</name>\n      <range min=\"0\"/>\n    </port>\n\n    <port label=\"decay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Decay Time (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Time for the echoes to decay by 60 decibels. If this time is negative\n       then the feedback coefficient will be negative, thus emphasizing only odd\n       harmonics at an octave lower.\n      </p>\n    </port>\n\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_mask\" type=\"unsigned int\" />\n    <instance-data label=\"sample_rate\" type=\"unsigned int\" />\n    <instance-data label=\"delay_samples\" type=\"LADSPA_Data\" />\n    <instance-data label=\"write_phase\" type=\"long\" />\n    <instance-data label=\"feedback\" type=\"LADSPA_Data\" />\n    <instance-data label=\"last_delay_time\" type=\"LADSPA_Data\" />\n    <instance-data label=\"last_decay_time\" type=\"LADSPA_Data\" />\n  </plugin>\n\n  <!-- ******   COMB-C   ****** -->\n\n  <plugin label=\"comb_c\" id=\"1888\" class=\"DelayPlugin\">\n    <name>Comb delay line, cubic spline interpolation</name>\n    <p>Based on work by James McCartney in SuperCollider.</p>\n    \n    <callback event=\"instantiate\"><![CDATA[\n      sample_rate = s_rate;\n\n      // Uninitialized variables\n      buffer_mask = 0;\n      delay_samples = 0;\n      feedback = 0;\n      last_decay_time = 0;\n      last_delay_time = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"activate\"><![CDATA[\n      unsigned int minsize, size;\n    \n      if (plugin_data->max_delay && *plugin_data->max_delay > 0)\n        minsize = sample_rate * *plugin_data->max_delay;\n      else if (plugin_data->delay_time)\n        minsize = sample_rate * *plugin_data->delay_time;\n      else\n        minsize = sample_rate; /* 1 second default */\n    \n      size = 1;\n      while (size < minsize) size <<= 1;\n    \n      /* calloc sets the buffer to zero. */\n      buffer = calloc(size, sizeof(LADSPA_Data));\n      if (buffer)\n        buffer_mask = size - 1;\n      else\n        buffer_mask = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n    \n    <callback event=\"run\"><![CDATA[\n      int i;\n\n      i = max_delay;\n\n      if (write_phase == 0) {\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->last_decay_time = decay_time;\n        plugin_data->delay_samples = delay_samples = CALC_DELAY (delay_time);\n        plugin_data->feedback = feedback = calc_feedback (delay_time, decay_time);\n      }\n      \n      if (delay_time == last_delay_time && decay_time == last_decay_time) {\n        long idelay_samples = (long)delay_samples;\n        LADSPA_Data frac = delay_samples - idelay_samples;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase = write_phase - (long)delay_samples;\n          LADSPA_Data read = cube_interp (frac,\n                                          buffer[(read_phase-1) & buffer_mask], \n                                          buffer[read_phase & buffer_mask], \n                                          buffer[(read_phase+1) & buffer_mask], \n                                          buffer[(read_phase+2) & buffer_mask]);\n\n          buffer[write_phase++ & buffer_mask] = read * feedback + in[i];\n\t  buffer_write(out[i], read);\n        }\n      } else {\n        float next_delay_samples = CALC_DELAY (delay_time);\n        float delay_samples_slope = (next_delay_samples - delay_samples) / sample_count;\n        float next_feedback = calc_feedback (delay_time, decay_time);\n        float feedback_slope = (next_feedback - feedback) / sample_count;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase, idelay_samples;\n          LADSPA_Data read, frac;\n\n          delay_samples += delay_samples_slope;\n          write_phase++;\n          read_phase = write_phase - (long)delay_samples;\n          idelay_samples = (long)delay_samples;\n          frac = delay_samples - idelay_samples;\n          read = cube_interp (frac,\n                              buffer[(read_phase-1) & buffer_mask], \n                              buffer[read_phase & buffer_mask], \n                              buffer[(read_phase+1) & buffer_mask], \n                              buffer[(read_phase+2) & buffer_mask]);\n\n          buffer[write_phase & buffer_mask] = read * feedback + in[i];\n\t  buffer_write(out[i], read);\n\n          feedback += feedback_slope;\n        }\n\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->last_decay_time = decay_time;\n        plugin_data->feedback = feedback;\n        plugin_data->delay_samples = delay_samples;\n      }\n      \n      plugin_data->write_phase = write_phase;\n    ]]></callback>\n\n    <port label=\"in\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"out\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"max_delay\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Max Delay (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Maximum delay. Used to set the delay buffer size upon activation. Cannot\n       be modulated. Note that if you do not connect to this port before\n       activation, it will default to 1 second. \n      </p>\n    </port>\n\n    <port label=\"delay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Delay Time (s)</name>\n      <range min=\"0\"/>\n    </port>\n\n    <port label=\"decay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Decay Time (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Time for the echoes to decay by 60 decibels. If this time is negative\n       then the feedback coefficient will be negative, thus emphasizing only odd\n       harmonics at an octave lower.\n      </p>\n    </port>\n\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_mask\" type=\"unsigned int\" />\n    <instance-data label=\"sample_rate\" type=\"unsigned int\" />\n    <instance-data label=\"delay_samples\" type=\"LADSPA_Data\" />\n    <instance-data label=\"write_phase\" type=\"long\" />\n    <instance-data label=\"feedback\" type=\"LADSPA_Data\" />\n    <instance-data label=\"last_delay_time\" type=\"LADSPA_Data\" />\n    <instance-data label=\"last_decay_time\" type=\"LADSPA_Data\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "comb_splitter_1411.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code>\n\t\t\t#include \"ladspa-util.h\"\n\t\t\t#define COMB_SIZE 0x4000\n\t\t\t#define COMB_MASK 0x3FFF\n\t\t</code>\n\t</global>\n\n\t<plugin label=\"combSplitter\" id=\"1411\" class=\"CombPlugin\">\n\t\t<name>Comb Splitter</name>\n\t\t<p>Divides the input up into two parts with frequency peaks at f Hz intervals, skewed by f/2 Hz between the two outputs. Mixing the two outputs will get you exactly the input signal.</p>\n\t\t<p>I generally use this trick to divide up an input signal, process the two halves differently, then mix them again. It sounds pretty funky.</p>\n\n\t\t<callback event=\"instantiate\">\n\t\t\tsample_rate = s_rate;\n\t\t\tcomb_tbl = malloc(sizeof(LADSPA_Data) * COMB_SIZE);\n\t\t\tcomb_pos = 0;\n\t\t\tlast_offset = 1000;\n\t\t</callback>\n\n\t\t<callback event=\"activate\">\n\t\t\tint i;\n\n\t\t\tfor (i = 0; i &lt; COMB_SIZE; i++) {\n\t\t\t\tcomb_tbl[i] = 0;\n\t\t\t}\n\t\t\tcomb_pos = 0;\n\t\t\tlast_offset = 1000;\n\t\t</callback>\n\n                <callback event=\"cleanup\">\n                        free(plugin_data->comb_tbl);\n                </callback>\n\n\t\t<callback event=\"run\"><![CDATA[\n\t\t\tfloat offset;\n\t\t\tint data_pos;\n\t\t\tunsigned long pos;\n\t\t\tfloat xf, xf_step, d_pos, fr, interp, in;\n\n\t\t\toffset = sample_rate / freq;\n\t\t\toffset = f_clamp(offset, 0, COMB_SIZE - 1);\n\t\t\txf_step = 1.0f / (float)sample_count;\n\t\t\txf = 0.0f;\n\n\t\t\tfor (pos = 0; pos < sample_count; pos++) {\n\t\t\t\txf += xf_step;\n\t\t\t\td_pos = comb_pos - LIN_INTERP(xf, last_offset, offset);\n\t\t\t\tdata_pos = f_trunc(d_pos);\n\t\t\t\tfr = d_pos - data_pos;\n\t\t\t\tinterp =  cube_interp(fr, comb_tbl[(data_pos - 1) & COMB_MASK], comb_tbl[data_pos & COMB_MASK], comb_tbl[(data_pos + 1) & COMB_MASK], comb_tbl[(data_pos + 2) & COMB_MASK]);\n\t\t\t\tin = input[pos];\n\t\t\t\tcomb_tbl[comb_pos] = in;\n\t\t\t\tbuffer_write(out1[pos], (in + interp) * 0.5f);\n\t\t\t\tbuffer_write(out2[pos], (in - interp) * 0.5f);\n\t\t\t\tcomb_pos = (comb_pos + 1) & COMB_MASK;\n\t\t\t}\n\n\t\t\tplugin_data->comb_pos = comb_pos;\n\t\t\tplugin_data->last_offset = offset;\n\t\t]]></callback>\n\n\t\t<port label=\"freq\" dir=\"input\" type=\"control\" hint=\"default_low\">\n\t\t\t<name>Band separation (Hz)</name>\n\t\t\t<range min=\"16\" max=\"640\"/>\n\t\t\t<p>The distance between the frequency peaks.</p>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"out1\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output 1</name>\n\t\t\t<p>The sum output.</p>\n\t\t</port>\n\n\t\t<port label=\"out2\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output 2</name>\n\t\t\t<p>The difference output.</p>\n\t\t</port>\n\n\t\t<instance-data label=\"comb_tbl\" type=\"LADSPA_Data *\"/>\n\t\t<instance-data label=\"comb_pos\" type=\"long\"/>\n\t\t<instance-data label=\"sample_rate\" type=\"long\"/>\n\t\t<instance-data label=\"last_offset\" type=\"float\"/>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "compile",
    "content": "#! /bin/sh\n# Wrapper for compilers which do not understand '-c -o'.\n\nscriptversion=2012-10-14.11; # UTC\n\n# Copyright (C) 1999-2014 Free Software Foundation, Inc.\n# Written by Tom Tromey <tromey@cygnus.com>.\n#\n# This program is free software; you can redistribute it and/or modify\n# it under the terms of the GNU General Public License as published by\n# the Free Software Foundation; either version 2, or (at your option)\n# any later version.\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n# GNU General Public License for more details.\n#\n# You should have received a copy of the GNU General Public License\n# along with this program.  If not, see <http://www.gnu.org/licenses/>.\n\n# As a special exception to the GNU General Public License, if you\n# distribute this file as part of a program that contains a\n# configuration script generated by Autoconf, you may include it under\n# the same distribution terms that you use for the rest of that program.\n\n# This file is maintained in Automake, please report\n# bugs to <bug-automake@gnu.org> or send patches to\n# <automake-patches@gnu.org>.\n\nnl='\n'\n\n# We need space, tab and new line, in precisely that order.  Quoting is\n# there to prevent tools from complaining about whitespace usage.\nIFS=\" \"\"\t$nl\"\n\nfile_conv=\n\n# func_file_conv build_file lazy\n# Convert a $build file to $host form and store it in $file\n# Currently only supports Windows hosts. If the determined conversion\n# type is listed in (the comma separated) LAZY, no conversion will\n# take place.\nfunc_file_conv ()\n{\n  file=$1\n  case $file in\n    / | /[!/]*) # absolute file, and not a UNC file\n      if test -z \"$file_conv\"; then\n\t# lazily determine how to convert abs files\n\tcase `uname -s` in\n\t  MINGW*)\n\t    file_conv=mingw\n\t    ;;\n\t  CYGWIN*)\n\t    file_conv=cygwin\n\t    ;;\n\t  *)\n\t    file_conv=wine\n\t    ;;\n\tesac\n      fi\n      case $file_conv/,$2, in\n\t*,$file_conv,*)\n\t  ;;\n\tmingw/*)\n\t  file=`cmd //C echo \"$file \" | sed -e 's/\"\\(.*\\) \" *$/\\1/'`\n\t  ;;\n\tcygwin/*)\n\t  file=`cygpath -m \"$file\" || echo \"$file\"`\n\t  ;;\n\twine/*)\n\t  file=`winepath -w \"$file\" || echo \"$file\"`\n\t  ;;\n      esac\n      ;;\n  esac\n}\n\n# func_cl_dashL linkdir\n# Make cl look for libraries in LINKDIR\nfunc_cl_dashL ()\n{\n  func_file_conv \"$1\"\n  if test -z \"$lib_path\"; then\n    lib_path=$file\n  else\n    lib_path=\"$lib_path;$file\"\n  fi\n  linker_opts=\"$linker_opts -LIBPATH:$file\"\n}\n\n# func_cl_dashl library\n# Do a library search-path lookup for cl\nfunc_cl_dashl ()\n{\n  lib=$1\n  found=no\n  save_IFS=$IFS\n  IFS=';'\n  for dir in $lib_path $LIB\n  do\n    IFS=$save_IFS\n    if $shared && test -f \"$dir/$lib.dll.lib\"; then\n      found=yes\n      lib=$dir/$lib.dll.lib\n      break\n    fi\n    if test -f \"$dir/$lib.lib\"; then\n      found=yes\n      lib=$dir/$lib.lib\n      break\n    fi\n    if test -f \"$dir/lib$lib.a\"; then\n      found=yes\n      lib=$dir/lib$lib.a\n      break\n    fi\n  done\n  IFS=$save_IFS\n\n  if test \"$found\" != yes; then\n    lib=$lib.lib\n  fi\n}\n\n# func_cl_wrapper cl arg...\n# Adjust compile command to suit cl\nfunc_cl_wrapper ()\n{\n  # Assume a capable shell\n  lib_path=\n  shared=:\n  linker_opts=\n  for arg\n  do\n    if test -n \"$eat\"; then\n      eat=\n    else\n      case $1 in\n\t-o)\n\t  # configure might choose to run compile as 'compile cc -o foo foo.c'.\n\t  eat=1\n\t  case $2 in\n\t    *.o | *.[oO][bB][jJ])\n\t      func_file_conv \"$2\"\n\t      set x \"$@\" -Fo\"$file\"\n\t      shift\n\t      ;;\n\t    *)\n\t      func_file_conv \"$2\"\n\t      set x \"$@\" -Fe\"$file\"\n\t      shift\n\t      ;;\n\t  esac\n\t  ;;\n\t-I)\n\t  eat=1\n\t  func_file_conv \"$2\" mingw\n\t  set x \"$@\" -I\"$file\"\n\t  shift\n\t  ;;\n\t-I*)\n\t  func_file_conv \"${1#-I}\" mingw\n\t  set x \"$@\" -I\"$file\"\n\t  shift\n\t  ;;\n\t-l)\n\t  eat=1\n\t  func_cl_dashl \"$2\"\n\t  set x \"$@\" \"$lib\"\n\t  shift\n\t  ;;\n\t-l*)\n\t  func_cl_dashl \"${1#-l}\"\n\t  set x \"$@\" \"$lib\"\n\t  shift\n\t  ;;\n\t-L)\n\t  eat=1\n\t  func_cl_dashL \"$2\"\n\t  ;;\n\t-L*)\n\t  func_cl_dashL \"${1#-L}\"\n\t  ;;\n\t-static)\n\t  shared=false\n\t  ;;\n\t-Wl,*)\n\t  arg=${1#-Wl,}\n\t  save_ifs=\"$IFS\"; IFS=','\n\t  for flag in $arg; do\n\t    IFS=\"$save_ifs\"\n\t    linker_opts=\"$linker_opts $flag\"\n\t  done\n\t  IFS=\"$save_ifs\"\n\t  ;;\n\t-Xlinker)\n\t  eat=1\n\t  linker_opts=\"$linker_opts $2\"\n\t  ;;\n\t-*)\n\t  set x \"$@\" \"$1\"\n\t  shift\n\t  ;;\n\t*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)\n\t  func_file_conv \"$1\"\n\t  set x \"$@\" -Tp\"$file\"\n\t  shift\n\t  ;;\n\t*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])\n\t  func_file_conv \"$1\" mingw\n\t  set x \"$@\" \"$file\"\n\t  shift\n\t  ;;\n\t*)\n\t  set x \"$@\" \"$1\"\n\t  shift\n\t  ;;\n      esac\n    fi\n    shift\n  done\n  if test -n \"$linker_opts\"; then\n    linker_opts=\"-link$linker_opts\"\n  fi\n  exec \"$@\" $linker_opts\n  exit 1\n}\n\neat=\n\ncase $1 in\n  '')\n     echo \"$0: No command.  Try '$0 --help' for more information.\" 1>&2\n     exit 1;\n     ;;\n  -h | --h*)\n    cat <<\\EOF\nUsage: compile [--help] [--version] PROGRAM [ARGS]\n\nWrapper for compilers which do not understand '-c -o'.\nRemove '-o dest.o' from ARGS, run PROGRAM with the remaining\narguments, and rename the output as expected.\n\nIf you are trying to build a whole package this is not the\nright script to run: please start by reading the file 'INSTALL'.\n\nReport bugs to <bug-automake@gnu.org>.\nEOF\n    exit $?\n    ;;\n  -v | --v*)\n    echo \"compile $scriptversion\"\n    exit $?\n    ;;\n  cl | *[/\\\\]cl | cl.exe | *[/\\\\]cl.exe )\n    func_cl_wrapper \"$@\"      # Doesn't return...\n    ;;\nesac\n\nofile=\ncfile=\n\nfor arg\ndo\n  if test -n \"$eat\"; then\n    eat=\n  else\n    case $1 in\n      -o)\n\t# configure might choose to run compile as 'compile cc -o foo foo.c'.\n\t# So we strip '-o arg' only if arg is an object.\n\teat=1\n\tcase $2 in\n\t  *.o | *.obj)\n\t    ofile=$2\n\t    ;;\n\t  *)\n\t    set x \"$@\" -o \"$2\"\n\t    shift\n\t    ;;\n\tesac\n\t;;\n      *.c)\n\tcfile=$1\n\tset x \"$@\" \"$1\"\n\tshift\n\t;;\n      *)\n\tset x \"$@\" \"$1\"\n\tshift\n\t;;\n    esac\n  fi\n  shift\ndone\n\nif test -z \"$ofile\" || test -z \"$cfile\"; then\n  # If no '-o' option was seen then we might have been invoked from a\n  # pattern rule where we don't need one.  That is ok -- this is a\n  # normal compilation that the losing compiler can handle.  If no\n  # '.c' file was seen then we are probably linking.  That is also\n  # ok.\n  exec \"$@\"\nfi\n\n# Name of file we expect compiler to create.\ncofile=`echo \"$cfile\" | sed 's|^.*[\\\\/]||; s|^[a-zA-Z]:||; s/\\.c$/.o/'`\n\n# Create the lock directory.\n# Note: use '[/\\\\:.-]' here to ensure that we don't use the same name\n# that we are using for the .o file.  Also, base the name on the expected\n# object file name, since that is what matters with a parallel build.\nlockdir=`echo \"$cofile\" | sed -e 's|[/\\\\:.-]|_|g'`.d\nwhile true; do\n  if mkdir \"$lockdir\" >/dev/null 2>&1; then\n    break\n  fi\n  sleep 1\ndone\n# FIXME: race condition here if user kills between mkdir and trap.\ntrap \"rmdir '$lockdir'; exit 1\" 1 2 15\n\n# Run the compile.\n\"$@\"\nret=$?\n\nif test -f \"$cofile\"; then\n  test \"$cofile\" = \"$ofile\" || mv \"$cofile\" \"$ofile\"\nelif test -f \"${cofile}bj\"; then\n  test \"${cofile}bj\" = \"$ofile\" || mv \"${cofile}bj\" \"$ofile\"\nfi\n\nrmdir \"$lockdir\"\nexit $ret\n\n# Local Variables:\n# mode: shell-script\n# sh-indentation: 2\n# eval: (add-hook 'write-file-hooks 'time-stamp)\n# time-stamp-start: \"scriptversion=\"\n# time-stamp-format: \"%:y-%02m-%02d.%02H\"\n# time-stamp-time-zone: \"UTC\"\n# time-stamp-end: \"; # UTC\"\n# End:\n"
  },
  {
    "path": "configure.ac",
    "content": "AC_INIT([swh-plugins], [0.4.17])\nAC_CONFIG_SRCDIR([amp_1181.xml])\nAC_CANONICAL_SYSTEM\nAC_CONFIG_MACRO_DIRS([m4])\nAC_CONFIG_HEADERS(config.h)\nAM_INIT_AUTOMAKE\n\nAM_DISABLE_STATIC\n\ndnl @synopsis AC_C99_FUNC_LRINTF\ndnl\ndnl Check whether C99's lrintf function is available.\ndnl @version 1.3\tFeb 12 2002\ndnl @author Erik de Castro Lopo <erikd AT mega-nerd DOT com>\ndnl\ndnl Permission to use, copy, modify, distribute, and sell this file for any \ndnl purpose is hereby granted without fee, provided that the above copyright \ndnl and this permission notice appear in all copies.  No representations are\ndnl made about the suitability of this software for any purpose.  It is \ndnl provided \"as is\" without express or implied warranty.\ndnl\nAC_DEFUN([AC_C99_FUNC_LRINTF],\n[AC_CACHE_CHECK(for lrintf,\n  ac_cv_c99_lrintf,\n[\nlrintf_save_CFLAGS=$CFLAGS\nCFLAGS=\"-O3 -lm\"\nAC_TRY_LINK([\n#define\t\t_ISOC9X_SOURCE\t1\n#define \t_ISOC99_SOURCE\t1\n#define\t\t__USE_ISOC99\t1\n#define \t__USE_ISOC9X\t1\n\n#include <math.h>\n], if (!lrintf(3.14159)) lrintf(2.7183);, ac_cv_c99_lrintf=yes, ac_cv_c99_lrintf=no)\n\nCFLAGS=$lrintf_save_CFLAGS\n\n])\n\nif test \"$ac_cv_c99_lrintf\" = yes; then\n  AC_DEFINE(HAVE_LRINTF, 1,\n            [Define if you have C99's lrintf function.])\nfi\n])# AC_C99_FUNC_LRINTF\n\nAC_ENABLE_STATIC(no)\nAC_ENABLE_SHARED(yes)\nAC_LIBTOOL_DLOPEN\nAC_PROG_LIBTOOL\n\nAC_LANG_C\nAC_PROG_CC\nAM_PROG_CC_C_O\nAC_REQUIRE_CPP\nALL_LINGUAS=\"en_GB\"\nAM_GNU_GETTEXT([external])\nAM_GNU_GETTEXT_VERSION([0.18.3])\nAC_C_BIGENDIAN\n\nLIBS=\"$LIBS -lm\"\nPKG_CHECK_MODULES(FFTW, fftw3f >= 3.0,\n    [\n\techo \"Using FFTW 3\";\n\tAC_DEFINE([FFTW3], [], [Wether were using FFTW version 3])\n    ],\n    [ AC_CHECK_LIB(sfftw,fftw_one,\n        [\n            FFTW_LIBS=\"-lsrfftw -lsfftw\"\n\t    STATIC_FFTW_LIBS=\"$LIBS /usr/lib/libsfftw.a /usr/lib/libsrfftw.a /sw/lib/libsfftw.a\"\n\t    AC_DEFINE_UNQUOTED(EXPLICIT_S, \"\")\n        ],\n        [ AC_CHECK_LIB(fftw,fftw_one,\n            [\n                FFTW_LIBS=\"-lrfftw -lfftw\"\n\t        STATIC_FFTW_LIBS=\"$LIBS /usr/lib/libfftw.a /usr/lib/librfftw.a\"\n\t    ],\n\t    [\n\t        AC_MSG_ERROR([Could not find working FFTW library (http://www.fftw.org/). If you have\ninstalled FFTW3 check that you used the right build options, see the README.]);\n\t    ])\n        ])\n    ])\n\n# On Mac OS X the float functions for <math.h> are in -lmx\nAC_CHECK_LIB([m], [sqrt],, [AC_MSG_ERROR(Can't find libm)])\nAC_CHECK_LIB(m, log10f,, [\n        AC_CHECK_LIB(mx, log10f,,\n                [AC_MSG_ERROR([Can't find float libm])])])\n\nAC_CHECK_FUNC(shm_open,,[AC_CHECK_LIB(rt,shm_open)])\nAC_C99_FUNC_LRINTF()\n\nAC_ARG_ENABLE(3dnow, [  --enable-3dnow Enables 3DNow! acceleration], AS_IF([test \"x$enableval\" = \"xyes\"], [AC_DEFINE_UNQUOTED(ACCEL_3DNOW, \"\")]))\nAC_ARG_ENABLE(sse, [  --enable-sse Uses SSE instructions where possible, requires gcc3 and a processor with SSE support], AS_IF([test \"x$enableval\" = \"xyes\"], [USE_SSE=\"-msse -mfpmath=sse -malign-double\"]))\nAC_ARG_ENABLE(darwin, [  --enable-darwin Builds plugins that will be shared object in the Darwin OS], AS_IF([test \"x$enableval\" = \"xyes\"], [DARWIN_CFLAGS=\"-fno-common -flat_namespace -bundle -undefined suppress -lbundle1.o\"]))\n\nCFLAGS=\"$lrintf_save_CFLAGS -I@top_srcdir@/intl -I@top_srcdir@\"\n\ncheck_cc_flag() {\n  echo \"int main(void){return 0;}\" | $CC $CFLAGS $1 -o /dev/null -x c - 2> /dev/null\n}\n\nif [ echo ${CFLAGS} | grep \"\\-march=\" ]; then\n  AC_MSG_WARN([CFLAGS appears to allready contain architecture specifaction, using exiting one])\nelse\n  AC_MSG_WARN([Can't find architecture specifaction in CFLAGS])\n\n  CFLAGS=\"$CFLAGS -Wall -O3 -fomit-frame-pointer -funroll-loops -ffast-math -fPIC -DPIC ${USE_SSE} ${DARWIN_CFLAGS}\"\n\n  printf %s \"checking if $CC supports -fstrength-reduce... \"\n  if check_cc_flag -fstrength-reduce; then\n    echo yes\n    CFLAGS=\"$CFLAGS -fstrength-reduce\"\n  else\n    echo no\n  fi\n\n  dnl For Intel's C compiler use:\n  dnl CC=\"icc\"\n  dnl CFLAGS=\"$CFLAGS -O2 -rcd -tpp6 -xiMK -KPIC -DPIC\"\n  \n  dnl For debugging use:\n  dnl CFLAGS=\"$CFLAGS -Wall -g -ffast-math -fPIC -DPIC\"\nfi\n\nAC_PROG_LD\nAM_PROG_LIBTOOL\n\ndnl Set PACKAGE_LOCALE_DIR in config.h.\nif test \"x${prefix}\" = xNONE; then\n  AC_DEFINE_UNQUOTED(PACKAGE_LOCALE_DIR, \"${ac_default_prefix}/${DATADIRNAME}/locale\")\nelse\n  AC_DEFINE_UNQUOTED(PACKAGE_LOCALE_DIR, \"${prefix}/${DATADIRNAME}/locale\")\nfi\n\ndnl Set PACKAGE_DATA_DIR in config.h.\nif test \"x${datadir}\" = 'x${prefix}/share'; then\n  if test \"x${prefix}\" = xNONE; then\n    AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, \"${ac_default_prefix}/share/${PACKAGE}\")\n  else\n    AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, \"${prefix}/share/${PACKAGE}\")\n  fi\nelse\n  AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, \"${datadir}/${PACKAGE}\")\nfi\n\nsubdirs=\"util gsm gverb metadata\"\n\nAC_SUBST(subdirs)\nAC_SUBST(FFTW_LIBS)\nAC_SUBST(STATIC_FFTW_LIBS)\nAC_SUBST(FFTW_CFLAGS)\nAC_SUBST(LIBTOOL)\nAC_OUTPUT([\nMakefile\nutil/Makefile\ngsm/Makefile\ngverb/Makefile\nmetadata/Makefile\npo/Makefile.in\n])\n"
  },
  {
    "path": "const_1909.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n  </global>\n\n  <plugin label=\"const\" id=\"1909\" class=\"UtilityPlugin\">\n    <name>Constant Signal Generator</name>\n    <p>This plugin add an output DC offset at the given amplitude to the input\nsignal. It has no real use other than for debugging and in modular synths.</p>\n\n    <callback event=\"activate\"><![CDATA[\n      last_amp = 0.0f;\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      const float delta = (amplitude - last_amp) / (sample_count - 1);\n      float amp = last_amp;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tamp += delta;\n        buffer_write(output[pos], input[pos] + amp);\n      }\n\n      plugin_data->last_amp = amp;\n    ]]></callback>\n\n    <port label=\"amplitude\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Signal amplitude</name>\n      <p>Controls the amplitude of the output signal.</p>\n      <range min=\"-1\" max=\"1.1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"last_amp\" type=\"float\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "crossover_dist_1404.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"ladspa-util.h\"\n    ]]></code>\n  </global>\n\n  <plugin label=\"crossoverDist\" id=\"1404\" class=\"DistortionPlugin\">\n    <name>Crossover distortion</name>\n    <p>This is a simulation of the distortion that happens in class B and AB power amps when the signal crosses 0.</p>\n    <p>For class B simulations the smooth value should be set to about 0.3 +/- 0.2 and for AB it should be set to near 1.0.</p>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float sig;\n      const float fade = fabs(amp * smooth) + 0.0001;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tsig = fabs(input[pos]) - amp;\n\n        if (sig < 0.0f) {\n          sig *= (1.0f + sig/fade) * smooth;\n        }\n\n\tif (input[pos] < 0.0f) {\n\t  buffer_write(output[pos], -sig);\n        } else {\n\t  buffer_write(output[pos], sig);\n        }\n      }\n    ]]></callback>\n\n    <port label=\"amp\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n      <name>Crossover amplitude</name>\n      <p>Controls the point at which the output signal becomes linear.</p>\n      <range min=\"0\" max=\"0.1\"/>\n    </port>\n\n    <port label=\"smooth\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>Smoothing</name>\n      <p>Controls degree of smoothing of the crossover point.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "dc_remove_1207.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n  </global>\n\n  <plugin label=\"dcRemove\" id=\"1207\" class=\"HighpassPlugin,UtilityPlugin\">\n    <name>DC Offset Remover</name>\n    <p>Simply removes the DC (0 Hz) component from an audio signal, uses a high pass filter, so has some side effects, but they should be minimal.</p>\n\n    <callback event=\"activate\"><![CDATA[\n      itm1 = 0.0f;\n      otm1 = 0.0f;\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n\n      for (pos = 0; pos < sample_count; pos++) {\n        otm1 = 0.999f * otm1 + input[pos] - itm1;\n\titm1 = input[pos];\n        buffer_write(output[pos], otm1);\n      }\n\n      plugin_data->itm1 = itm1;\n      plugin_data->otm1 = otm1;\n    ]]></callback>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"itm1\" type=\"LADSPA_Data\"/>\n    <instance-data label=\"otm1\" type=\"LADSPA_Data\"/>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "debug_1184.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code>\n\t\t\t#include \"stdio.h\"\n\t\t</code>\n\t</global>\n\n\t<plugin label=\"debug\" id=\"1184\" class=\"UtilityPlugin\">\n\t\t<name>Debug Plugin</name>\n\t\t<p>Prints some stats about the input stream to stdout. Not intended for general use.</p>\n\n\t\t<callback event=\"instantiate\">\n\t\t\tprintf(\"sample rate %ld\\n\", s_rate);\n\t\t</callback>\n\n\t\t<callback event=\"run\">\n\t\t\tstatic LADSPA_Data max, min, maxl, minl;\n\t\t\tunsigned long pos;\n\n\t\t\tif (reset) {\n\t\t\t\tmax = 0;\n\t\t\t\tmin = 0;\n\t\t\t\tmaxl = 0;\n\t\t\t\tminl = 1;\n\t\t\t}\n\n\t\t\tfor (pos = 0; pos &lt; sample_count; pos++) {\n\t\t\t\tif (allvals) {\n\t\t\t\t\tprintf(\"%f\\n\", input[pos]);\n\t\t\t\t}\n\t\t\t\tmax = fabs(input[pos]) &gt; max?fabs(input[pos]):max;\n\t\t\t\tmin = fabs(input[pos]) &lt; min?fabs(input[pos]):min;\n\t\t\t\tmaxl = input[pos] &gt; maxl?input[pos]:maxl;\n\t\t\t\tminl = input[pos] &lt; minl?input[pos]:minl;\n\t\t\t\tbuffer_write(output[pos], input[pos]);\n\t\t\t}\n\t\t\tprintf(\"amplitude (%f, %f)\\t\", min, max);\n\t\t\tprintf(\"level (%f, %f)\\n\", minl, maxl);\n\t\t</callback>\n\n\t\t<port label=\"allvals\" dir=\"input\" type=\"control\">\n\t\t\t<name>Diplay all values?</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t</port>\n\n\t\t<port label=\"reset\" dir=\"input\" type=\"control\">\n\t\t\t<name>Reset counters?</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "decay_1886.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Andy Wingo &lt;wingo at pobox dot com&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"ladspa-util.h\"\n\n      #define LOG001 -6.9077552789f\n    ]]></code>\n  </global>\n\n  <!-- ******   DECAY   ****** -->\n\n  <plugin label=\"decay\" id=\"1886\" class=\"UtilityPlugin\">\n    <name>Exponential signal decay</name>\n    <p>Based on work by James McCartney in SuperCollider.</p>\n    \n    <callback event=\"instantiate\"><![CDATA[\n      sample_rate = s_rate;\n\n      // Uninitialized variables\n      b = 0;\n      first_time = 0;\n      last_decay_time = 0;\n      y = 0;\n    ]]></callback>\n    \n    <callback event=\"activate\"><![CDATA[\n      b = 0.f;\n      y = 0.f;\n      last_decay_time = 0.f;\n      first_time = 0;\n    ]]></callback>\n    \n    <callback event=\"run\"><![CDATA[\n      int i;\n\n      if (first_time) {\n        plugin_data->last_decay_time = decay_time;\n        plugin_data->b = decay_time == 0.f ? 0.f : exp (LOG001 / (decay_time * sample_rate));\n        plugin_data->first_time = 0;\n      }\n\n      if (decay_time == last_decay_time) {\n        if (b == 0.f)\n          for (i=0; i<sample_count; i++)\n            out[i] = y = in[i];\n        else\n          for (i=0; i<sample_count; i++)\n            out[i] = y = in[i] + b * y;\n      } else {\n        LADSPA_Data b_slope;\n\n        plugin_data->b = decay_time == 0.f ? 0.f : exp (LOG001 / (decay_time * sample_rate));\n        b_slope = (plugin_data->b - b) / sample_count;\n\n        for (i=0; i<sample_count; i++) {\n          buffer_write(out[i], y = in[i] + b * y);\n          b += b_slope;\n        }\n\n        plugin_data->last_decay_time = decay_time;\n      }\n      \n      plugin_data->y = y;\n    ]]></callback>\n\n    <port label=\"in\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"out\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"decay_time\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Decay Time (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Time for the echoes to decay by 60 decibels.\n      </p>\n    </port>\n\n    <instance-data label=\"y\" type=\"LADSPA_Data\" />\n    <instance-data label=\"b\" type=\"LADSPA_Data\" />\n    <instance-data label=\"last_decay_time\" type=\"LADSPA_Data\" />\n    <instance-data label=\"sample_rate\" type=\"LADSPA_Data\" />\n    <instance-data label=\"first_time\" type=\"char\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "decimator_1202.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <code><![CDATA[\n      #include <math.h>\n      #include \"ladspa-util.h\"\n    ]]></code>\n  </global>\n\n  <plugin label=\"decimator\" id=\"1202\" class=\"DistortionPlugin\">\n    <name>Decimator</name>\n    <p>Decimates (reduces the effective sample rate), and reduces the bit depth of the input signal, allows non integer values for smooth transitions between clean and lofi signals.</p>\n\n    <callback event=\"instantiate\">\nsample_rate = s_rate;\ncount = 0.0f;\nlast_out = 0.0f;\n    </callback>\n\n    <callback event=\"run\"><![CDATA[\nunsigned long pos;\nfloat step, stepr, delta, ratio;\ndouble dummy;\n\nif (bits >= 31.0f || bits < 1.0f) {\n\tstep = 0.0f;\n\tstepr = 1.0f;\n} else {\n\tstep = pow(0.5f, bits - 0.999f);\n\tstepr = 1/step;\n}\n\nif (fs >= sample_rate) {\n\tratio = 1.0f;\n} else {\n\tratio = fs/sample_rate;\n}\n\nfor (pos = 0; pos < sample_count; pos++) {\n\tcount += ratio;\n\n\tif (count >= 1.0f) {\n\t\tcount -= 1.0f;\n\t\tdelta = modf((input[pos] + (input[pos]<0?-1.0:1.0)*step*0.5) * stepr, &dummy) * step;\n\t\tlast_out = input[pos] - delta;\n\t\tbuffer_write(output[pos], last_out);\n\t} else {\n\t\tbuffer_write(output[pos], last_out);\n\t}\n}\n\nplugin_data->last_out = last_out;\nplugin_data->count = count;\n    ]]></callback>\n\n    <port label=\"bits\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>Bit depth</name>\n      <range min=\"1\" max=\"24\"/>\n      <p>The bit depth that the signal will be reduced to.</p>\n    </port>\n\n    <port label=\"fs\" dir=\"input\" type=\"control\" hint=\"sample_rate,default_maximum\">\n      <name>Sample rate (Hz)</name>\n      <range min=\"0.001\" max=\"1\"/>\n      <p>The sample rate that the signal will be resampled at.</p>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n      <range min=\"-1.0\" max=\"+1.0\"/>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n      <range min=\"-1.0\" max=\"+1.0\"/>\n    </port>\n\n    <instance-data label=\"sample_rate\" type=\"long\"/>\n    <instance-data label=\"count\" type=\"float\"/>\n    <instance-data label=\"last_out\" type=\"LADSPA_Data\"/>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "declip_1195.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code>\n\t\t\t#define MAX_AMP 1.0f\n\t\t\t#define CLIP 0.8f\n\t\t\t#define CLIP_A ((MAX_AMP - CLIP) * (MAX_AMP - CLIP))\n\t\t\t#define CLIP_B (MAX_AMP - 2.0f * CLIP)\n\t\t</code>\n\t</global>\n\n\t<plugin label=\"declip\" id=\"1195\" class=\"WaveshaperPlugin\">\n\t\t<name>Declipper</name>\n\t\t<p>Removes nasty clicks from input signals, not very kind to them though.</p>\n\t\t<p>This code came from the music-dsp mailing list, but it was unattributed, if it's yours, please drop me a line and I'll credit you.</p>\n\n\t\t<callback event=\"run\"><![CDATA[\n\t\t\tunsigned long pos;\n\n\t\t\tfor (pos = 0; pos < sample_count; pos++) {\n\t\t\t\tconst LADSPA_Data in = input[pos];\n\n\t\t\t\tif((in < CLIP) && (in > -CLIP)) {\n\t\t\t\t\tbuffer_write(output[pos], in);\n\t\t\t\t} else if (in > 0.0f) {\n\t\t\t\t\tbuffer_write(output[pos], MAX_AMP - (CLIP_A / (CLIP_B + in)));\n\t\t\t\t} else {\n\t\t\t\t\tbuffer_write(output[pos], -(MAX_AMP - (CLIP_A / (CLIP_B - in))));\n\t\t\t\t}\n\t\t\t}\n\t\t]]></callback>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "delay_1898.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Andy Wingo &lt;wingo at pobox dot com&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"ladspa-util.h\"\n\n      #define MIN(a,b) ((a) < (b) ? (a) : (b))\n      #define CALC_DELAY(delaytime) \\\n        (f_clamp (delaytime * sample_rate, 1.f, (float)(buffer_mask + 1)))\n\n    ]]></code>\n  </global>\n\n  <!-- ******   DELAY-N   ****** -->\n\n  <plugin label=\"delay_n\" id=\"1898\" class=\"DelayPlugin\">\n    <name>Simple delay line, noninterpolating</name>\n    <p>Based on work by James McCartney in SuperCollider.</p>\n    \n    <callback event=\"instantiate\"><![CDATA[\n      sample_rate = s_rate;\n\n      // Uninitialized variables\n      buffer_mask = 0;\n      delay_samples = 0;\n      last_delay_time = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"activate\"><![CDATA[\n      unsigned int minsize, size;\n    \n      if (plugin_data->max_delay && *plugin_data->max_delay > 0)\n        minsize = sample_rate * *plugin_data->max_delay;\n      else if (plugin_data->delay_time)\n        minsize = sample_rate * *plugin_data->delay_time;\n      else\n        minsize = sample_rate; /* 1 second default */\n    \n      size = 1;\n      while (size < minsize) size <<= 1;\n    \n      /* calloc sets the buffer to zero. */\n      buffer = calloc(size, sizeof(LADSPA_Data));\n      if (buffer)\n        buffer_mask = size - 1;\n      else\n        buffer_mask = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n    \n    <callback event=\"run\"><![CDATA[\n      int i;\n\n      if (write_phase == 0) {\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->delay_samples = delay_samples = CALC_DELAY (delay_time);\n      }\n      \n      if (delay_time == last_delay_time) {\n        long read_phase = write_phase - (long)delay_samples;\n        LADSPA_Data *readptr = buffer + (read_phase & buffer_mask);\n        LADSPA_Data *writeptr = buffer + (write_phase & buffer_mask);\n        LADSPA_Data *lastptr = buffer + buffer_mask + 1;\n\n        long remain = sample_count;\n\n        while (remain) {\n          long read_space = lastptr - readptr;\n          long write_space = lastptr - writeptr;\n          long to_process = MIN (MIN (read_space, remain), write_space);\n\n          if (to_process == 0)\n            return; // buffer not allocated.\n\n          remain -= to_process;\n\n          for (i=0; i<to_process; i++) {\n            float read = *(readptr++);\n            *(writeptr++) = in[i];\n\t    buffer_write(out[i], read);\n          }\n\n          if (readptr == lastptr) readptr = buffer;\n          if (writeptr == lastptr) writeptr = buffer;\n        }\n\n        write_phase += sample_count;\n      } else {\n        float next_delay_samples = CALC_DELAY (delay_time);\n        float delay_samples_slope = (next_delay_samples - delay_samples) / sample_count;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase;\n          LADSPA_Data read;\n\n          delay_samples += delay_samples_slope;\n          write_phase++;\n          read_phase = write_phase - (long)delay_samples;\n\n          read = buffer[read_phase & buffer_mask];\n          buffer[write_phase & buffer_mask] = in[i];\n\t  buffer_write(out[i], read);\n        }\n\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->delay_samples = delay_samples;\n      }\n      \n      plugin_data->write_phase = write_phase;\n\n      // Unused variable\n      (void)(max_delay);\n    ]]></callback>\n\n    <port label=\"in\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"out\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"max_delay\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Max Delay (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Maximum delay. Used to set the delay buffer size upon activation. Cannot\n       be modulated. Note that if you do not connect to this port before\n       activation, it will default to 1 second. \n      </p>\n    </port>\n\n    <port label=\"delay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Delay Time (s)</name>\n      <range min=\"0\"/>\n    </port>\n\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_mask\" type=\"unsigned int\" />\n    <instance-data label=\"sample_rate\" type=\"unsigned int\" />\n    <instance-data label=\"delay_samples\" type=\"LADSPA_Data\" />\n    <instance-data label=\"write_phase\" type=\"long\" />\n    <instance-data label=\"last_delay_time\" type=\"LADSPA_Data\" />\n  </plugin>\n\n  <!-- ******   DELAY-L   ****** -->\n\n  <plugin label=\"delay_l\" id=\"1899\" class=\"DelayPlugin\">\n    <name>Simple delay line, linear interpolation</name>\n    <p>Based on work by James McCartney in SuperCollider.</p>\n    \n    <callback event=\"instantiate\"><![CDATA[\n      sample_rate = s_rate;\n\n      // Uninitialized variables\n      buffer_mask = 0;\n      delay_samples = 0;\n      last_delay_time = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"activate\"><![CDATA[\n      unsigned int minsize, size;\n    \n      if (plugin_data->max_delay && *plugin_data->max_delay > 0)\n        minsize = sample_rate * *plugin_data->max_delay;\n      else if (plugin_data->delay_time)\n        minsize = sample_rate * *plugin_data->delay_time;\n      else\n        minsize = sample_rate; /* 1 second default */\n    \n      size = 1;\n      while (size < minsize) size <<= 1;\n    \n      /* calloc sets the buffer to zero. */\n      buffer = calloc(size, sizeof(LADSPA_Data));\n      if (buffer)\n        buffer_mask = size - 1;\n      else\n        buffer_mask = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n    \n    <callback event=\"run\"><![CDATA[\n      int i;\n\n      if (write_phase == 0) {\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->delay_samples = delay_samples = CALC_DELAY (delay_time);\n      }\n      \n      if (delay_time == last_delay_time) {\n        long idelay_samples = (long)delay_samples;\n        LADSPA_Data frac = delay_samples - idelay_samples;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase = write_phase - (long)delay_samples;\n          LADSPA_Data read;\n          read = LIN_INTERP (frac,\n                                 buffer[(read_phase-1) & buffer_mask],\n                                 buffer[read_phase & buffer_mask]);\n          buffer[write_phase & buffer_mask] = in[i];\n\t  buffer_write(out[i], read);\n          write_phase++;\n        }\n      } else {\n        float next_delay_samples = CALC_DELAY (delay_time);\n        float delay_samples_slope = (next_delay_samples - delay_samples) / sample_count;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase, idelay_samples;\n          LADSPA_Data frac, read;\n\n          delay_samples += delay_samples_slope;\n          write_phase++;\n          read_phase = write_phase - (long)delay_samples;\n          idelay_samples = (long)delay_samples;\n          frac = delay_samples - idelay_samples;\n          read = LIN_INTERP (frac,\n                             buffer[(read_phase-1) & buffer_mask],\n                             buffer[read_phase & buffer_mask]); \n          buffer[write_phase & buffer_mask] = in[i];\n\t  buffer_write(out[i], read);\n        }\n\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->delay_samples = delay_samples;\n      }\n      \n      plugin_data->write_phase = write_phase;\n\n      // Unused variable\n      (void)(max_delay);\n    ]]></callback>\n\n    <port label=\"in\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"out\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"max_delay\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Max Delay (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Maximum delay. Used to set the delay buffer size upon activation. Cannot\n       be modulated. Note that if you do not connect to this port before\n       activation, it will default to 1 second. \n      </p>\n    </port>\n\n    <port label=\"delay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Delay Time (s)</name>\n      <range min=\"0\"/>\n    </port>\n\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_mask\" type=\"unsigned int\" />\n    <instance-data label=\"sample_rate\" type=\"unsigned int\" />\n    <instance-data label=\"delay_samples\" type=\"LADSPA_Data\" />\n    <instance-data label=\"write_phase\" type=\"long\" />\n    <instance-data label=\"last_delay_time\" type=\"LADSPA_Data\" />\n  </plugin>\n\n  <!-- ******   DELAY-C   ****** -->\n\n  <plugin label=\"delay_c\" id=\"1900\" class=\"DelayPlugin\">\n    <name>Simple delay line, cubic spline interpolation</name>\n    <p>Based on work by James McCartney in SuperCollider.</p>\n    \n    <callback event=\"instantiate\"><![CDATA[\n      sample_rate = s_rate;\n\n      // Uninitialized variables\n      buffer_mask = 0;\n      delay_samples = 0;\n      last_delay_time = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"activate\"><![CDATA[\n      unsigned int minsize, size;\n    \n      if (plugin_data->max_delay && *plugin_data->max_delay > 0)\n        minsize = sample_rate * *plugin_data->max_delay;\n      else if (plugin_data->delay_time)\n        minsize = sample_rate * *plugin_data->delay_time;\n      else\n        minsize = sample_rate; /* 1 second default */\n    \n      size = 1;\n      while (size < minsize) size <<= 1;\n    \n      /* calloc sets the buffer to zero. */\n      buffer = calloc(size, sizeof(LADSPA_Data));\n      if (buffer)\n        buffer_mask = size - 1;\n      else\n        buffer_mask = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n    \n    <callback event=\"run\"><![CDATA[\n      int i;\n\n      if (write_phase == 0) {\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->delay_samples = delay_samples = CALC_DELAY (delay_time);\n      }\n      \n      if (delay_time == last_delay_time) {\n        long idelay_samples = (long)delay_samples;\n        LADSPA_Data frac = delay_samples - idelay_samples;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase = write_phase - (long)delay_samples;\n          LADSPA_Data read = cube_interp (frac,\n                                          buffer[(read_phase-1) & buffer_mask], \n                                          buffer[read_phase & buffer_mask], \n                                          buffer[(read_phase+1) & buffer_mask], \n                                          buffer[(read_phase+2) & buffer_mask]);\n          buffer[write_phase++ & buffer_mask] = in[i];\n\t  buffer_write(out[i], read);\n        }\n      } else {\n        float next_delay_samples = CALC_DELAY (delay_time);\n        float delay_samples_slope = (next_delay_samples - delay_samples) / sample_count;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase, idelay_samples;\n          LADSPA_Data frac, read;\n\n          delay_samples += delay_samples_slope;\n          write_phase++;\n          read_phase = write_phase - (long)delay_samples;\n          idelay_samples = (long)delay_samples;\n          frac = delay_samples - idelay_samples;\n          read = cube_interp (frac,\n                              buffer[(read_phase-1) & buffer_mask], \n                              buffer[read_phase & buffer_mask], \n                              buffer[(read_phase+1) & buffer_mask], \n                              buffer[(read_phase+2) & buffer_mask]);\n          buffer[write_phase & buffer_mask] = in[i];\n\t  buffer_write(out[i], read);\n        }\n\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->delay_samples = delay_samples;\n      }\n      \n      plugin_data->write_phase = write_phase;\n\n      // Unused variable\n      (void)(max_delay);\n    ]]></callback>\n\n    <port label=\"in\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"out\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"max_delay\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Max Delay (s)</name>\n      <range min=\"0\"/>\n      <p>\n       Maximum delay. Used to set the delay buffer size upon activation. Cannot\n       be modulated. Note that if you do not connect to this port before\n       activation, it will default to 1 second. \n      </p>\n    </port>\n\n    <port label=\"delay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Delay Time (s)</name>\n      <range min=\"0\"/>\n    </port>\n\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_mask\" type=\"unsigned int\" />\n    <instance-data label=\"sample_rate\" type=\"unsigned int\" />\n    <instance-data label=\"delay_samples\" type=\"LADSPA_Data\" />\n    <instance-data label=\"write_phase\" type=\"long\" />\n    <instance-data label=\"last_delay_time\" type=\"LADSPA_Data\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "delayorama_1402.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <code><![CDATA[\n      #include <ladspa-util.h>\n\n      #define MIN(a,b) ((a) < (b) ? (a) : (b))\n      #define N_TAPS 128\n\n      typedef struct {\n        unsigned int delay;\n        float gain;\n      } tap;\n    ]]></code>\n  </global>\n\n  <plugin label=\"delayorama\" id=\"1402\" class=\"DelayPlugin\">\n    <name>Delayorama</name>\n\n    <callback event=\"instantiate\"><![CDATA[\n      sample_rate = s_rate;\n\n      buffer_pos = 0;\n\n      buffer_size = 6.0f * sample_rate;\n\n      taps = malloc(2 * sizeof(tap *));\n      taps[0] = calloc(N_TAPS, sizeof(tap));\n      taps[1] = calloc(N_TAPS, sizeof(tap));\n      active_set = 0;\n      next_set = 1;\n\n      buffer = calloc(buffer_size, sizeof(LADSPA_Data));\n\n      last_out = 0.0f;\n\n      last_ampsc = 0.0f;\n      last_delaysc = 0.0f;\n      last_start = 0;\n      last_range = 0;\n      last_ntaps = 0;\n      last_seed = 0;\n      last_a_rand = 0;\n      last_d_rand = 0;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      memset(buffer, 0, buffer_size * sizeof(LADSPA_Data));\n\n      last_out = 0.0f;\n      last_ampsc = 0.0f;\n      last_delaysc = 0.0f;\n      last_start = 0;\n      last_range = 0;\n      last_ntaps = 0;\n      last_seed = 0;\n      last_a_rand = 0;\n      last_d_rand = 0;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->taps[0]);\n      free(plugin_data->taps[1]);\n      free(plugin_data->taps);\n      free(plugin_data->buffer);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float coef = DB_CO(gain);\n      unsigned int i;\n      unsigned int recalc = 0;\n      unsigned int ntaps = LIMIT(f_round(tap_count), 2, N_TAPS);\n      float range = f_clamp(delay_range * sample_rate, 0.0f,\n\t\t\t\t(float)(buffer_size-1));\n      LADSPA_Data out;\n      float xfade = 0.0f;\n\n      const float feedback = feedback_pc * 0.01f;\n      const float gain_rand = gain_rand_pc * 0.01f;\n      const float delay_rand = delay_rand_pc * 0.01f;\n\n\n      if (ntaps != last_ntaps) {\n        recalc = 1;\n        plugin_data->last_ntaps = ntaps;\n      }\n      if (first_delay != last_start) {\n        recalc = 1;\n        plugin_data->last_start = first_delay;\n      }\n      if (range != last_range) {\n        recalc = 1;\n        plugin_data->last_range = range;\n      }\n      if (delay_scale != last_delaysc) {\n        recalc = 1;\n        plugin_data->last_delaysc = delay_scale;\n      }\n      if (gain_scale != last_ampsc) {\n        recalc = 1;\n        plugin_data->last_ampsc = gain_scale;\n      }\n      if (seed != last_seed) {\n        recalc = 1;\n        plugin_data->last_seed = seed;\n      }\n      if (gain_rand != last_a_rand) {\n        recalc = 1;\n        plugin_data->last_a_rand = gain_rand;\n      }\n      if (delay_rand != last_d_rand) {\n        recalc = 1;\n        plugin_data->last_d_rand = delay_rand;\n      }\n\n      if (recalc) {\n        float delay_base = first_delay * sample_rate;\n        float delay_fix;\n        float gain, delay, delay_sum;\n\tfloat d_rand, g_rand;\n\n\tsrand(f_round(seed));\n        if (delay_base + range > buffer_size-1) {\n          delay_base = buffer_size - 1 - range;\n        }\n\n\tif (gain_scale <= 1.0f) {\n          gain = 1.0f;\n\t} else {\n          gain = 1.0f / pow(gain_scale, ntaps-1);\n        }\n\n\tif (delay_scale == 1.0f) {\n\t\tdelay_fix = range / (ntaps - 1);\n\t} else {\n\t\tdelay_fix = range * (delay_scale - 1.0f) / (pow(delay_scale, ntaps - 1) - 1.0f);\n\t}\n        delay = 1.0f;\n\tdelay_sum = 0.0f;\n\n        for (i=0; i<ntaps; i++) {\n\t  g_rand = (1.0f-gain_rand) + (float)rand() / (float)RAND_MAX * 2.0f * gain_rand;\n\t  d_rand = (1.0f-delay_rand) + (float)rand() / (float)RAND_MAX * 2.0f * delay_rand;\n          taps[next_set][i].delay = MIN((unsigned int)(delay_base + delay_sum * delay_fix * d_rand), buffer_size-1);\n          taps[next_set][i].gain = gain * g_rand;\n\n          delay_sum += delay;\n          delay *= delay_scale;\n\t  gain *= gain_scale;\n        }\n        for (; i<N_TAPS; i++) {\n\t  taps[next_set][i].delay = 0.0f;\n\t  taps[next_set][i].gain = 0.0f;\n        }\n      }\n\n      out = last_out;\n      for (pos = 0; pos < sample_count; pos++) {\n        buffer[buffer_pos] = input[pos] * coef + (out * feedback);\n\n        out = 0.0f;\n        for (i=0; i<ntaps; i++) {\n          int p = buffer_pos - taps[active_set][i].delay;\n          if (p<0) p += buffer_size;\n          out += buffer[p] * taps[active_set][i].gain;\n        }\n\n        if (recalc) {\n\t  xfade += 1.0f / (float)sample_count;\n          out *= (1-xfade);\n          for (i=0; i<ntaps; i++) {\n            int p = buffer_pos - taps[next_set][i].delay;\n            if (p<0) p += buffer_size;\n            out += buffer[p] * taps[next_set][i].gain * xfade;\n          }\n        }\n\n        buffer_write(output[pos], LIN_INTERP(wet, input[pos], out));\n\n\tif (++buffer_pos >= buffer_size) {\n          buffer_pos = 0;\n        }\n      }\n\n      if (recalc) {\n\tplugin_data->active_set = next_set;\n\tplugin_data->next_set = active_set;\n      }\n\n      plugin_data->buffer_pos = buffer_pos;\n      plugin_data->last_out = out;\n    ]]></callback>\n\n    <port label=\"seed\" dir=\"input\" type=\"control\" hint=\"integer,default_0\">\n      <name>Random seed</name>\n      <p>Controls the random numbers that will be used to stagger the delays and amplitudes if random is turned up on them. Changing this forces the random values to be recalulated.</p>\n      <range min=\"0\" max=\"1000\"/>\n    </port>\n\n    <port label=\"gain\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Input gain (dB)</name>\n      <p>Controls the gain of the input signal in dB's.</p>\n      <range min=\"-96\" max=\"+24\"/>\n    </port>\n\n    <port label=\"feedback_pc\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Feedback (%)</name>\n      <p>Controls the amount of output signal fed back into the input.</p>\n      <range min=\"0\" max=\"100\"/>\n    </port>\n\n    <port label=\"tap_count\" dir=\"input\" type=\"control\" hint=\"integer,default_minimum\">\n      <name>Number of taps</name>\n      <p>Controls the number of taps in the delay.</p>\n      <range min=\"2\" max=\"N_TAPS\"/>\n    </port>\n\n    <port label=\"first_delay\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>First delay (s)</name>\n      <p>The time of the first delay.</p>\n      <range min=\"0\" max=\"5\"/>\n    </port>\n\n    <port label=\"delay_range\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>Delay range (s)</name>\n      <p>The time difference between the first and last delay.</p>\n      <range min=\"0.0001\" max=\"6\"/>\n    </port>\n\n    <port label=\"delay_scale\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Delay change</name>\n      <p>The scaling factor between one delay and the next.</p>\n      <range min=\"0.2\" max=\"5\"/>\n    </port>\n\n    <port label=\"delay_rand_pc\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Delay random (%)</name>\n      <p>The random factor applied to the delay.</p>\n      <range min=\"0\" max=\"100\"/>\n    </port>\n\n    <port label=\"gain_scale\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Amplitude change</name>\n      <p>The scaling factor between one amplitude and the next.</p>\n      <range min=\"0.2\" max=\"5\"/>\n    </port>\n\n    <port label=\"gain_rand_pc\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Amplitude random (%)</name>\n      <p>The random factor applied to the amplitude.</p>\n      <range min=\"0\" max=\"100\"/>\n    </port>\n\n    <port label=\"wet\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Dry/wet mix</name>\n      <p>The level of delayed sound mixed into the output.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"buffer_pos\" type=\"unsigned long\"/>\n    <instance-data label=\"buffer_size\" type=\"unsigned int\"/>\n    <instance-data label=\"sample_rate\" type=\"unsigned int\"/>\n    <instance-data label=\"last_start\" type=\"float\"/>\n    <instance-data label=\"last_range\" type=\"float\"/>\n    <instance-data label=\"last_delaysc\" type=\"float\"/>\n    <instance-data label=\"last_ampsc\" type=\"float\"/>\n    <instance-data label=\"last_ntaps\" type=\"unsigned int\"/>\n    <instance-data label=\"last_seed\" type=\"float\"/>\n    <instance-data label=\"last_a_rand\" type=\"float\"/>\n    <instance-data label=\"last_d_rand\" type=\"float\"/>\n    <instance-data label=\"last_out\" type=\"LADSPA_Data\"/>\n    <instance-data label=\"active_set\" type=\"unsigned int\"/>\n    <instance-data label=\"next_set\" type=\"unsigned int\"/>\n    <instance-data label=\"taps\" type=\"tap **\"/>\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\"/>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "depcomp",
    "content": "#! /bin/sh\n# depcomp - compile a program generating dependencies as side-effects\n\nscriptversion=2013-05-30.07; # UTC\n\n# Copyright (C) 1999-2014 Free Software Foundation, Inc.\n\n# This program is free software; you can redistribute it and/or modify\n# it under the terms of the GNU General Public License as published by\n# the Free Software Foundation; either version 2, or (at your option)\n# any later version.\n\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n# GNU General Public License for more details.\n\n# You should have received a copy of the GNU General Public License\n# along with this program.  If not, see <http://www.gnu.org/licenses/>.\n\n# As a special exception to the GNU General Public License, if you\n# distribute this file as part of a program that contains a\n# configuration script generated by Autoconf, you may include it under\n# the same distribution terms that you use for the rest of that program.\n\n# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.\n\ncase $1 in\n  '')\n    echo \"$0: No command.  Try '$0 --help' for more information.\" 1>&2\n    exit 1;\n    ;;\n  -h | --h*)\n    cat <<\\EOF\nUsage: depcomp [--help] [--version] PROGRAM [ARGS]\n\nRun PROGRAMS ARGS to compile a file, generating dependencies\nas side-effects.\n\nEnvironment variables:\n  depmode     Dependency tracking mode.\n  source      Source file read by 'PROGRAMS ARGS'.\n  object      Object file output by 'PROGRAMS ARGS'.\n  DEPDIR      directory where to store dependencies.\n  depfile     Dependency file to output.\n  tmpdepfile  Temporary file to use when outputting dependencies.\n  libtool     Whether libtool is used (yes/no).\n\nReport bugs to <bug-automake@gnu.org>.\nEOF\n    exit $?\n    ;;\n  -v | --v*)\n    echo \"depcomp $scriptversion\"\n    exit $?\n    ;;\nesac\n\n# Get the directory component of the given path, and save it in the\n# global variables '$dir'.  Note that this directory component will\n# be either empty or ending with a '/' character.  This is deliberate.\nset_dir_from ()\n{\n  case $1 in\n    */*) dir=`echo \"$1\" | sed -e 's|/[^/]*$|/|'`;;\n      *) dir=;;\n  esac\n}\n\n# Get the suffix-stripped basename of the given path, and save it the\n# global variable '$base'.\nset_base_from ()\n{\n  base=`echo \"$1\" | sed -e 's|^.*/||' -e 's/\\.[^.]*$//'`\n}\n\n# If no dependency file was actually created by the compiler invocation,\n# we still have to create a dummy depfile, to avoid errors with the\n# Makefile \"include basename.Plo\" scheme.\nmake_dummy_depfile ()\n{\n  echo \"#dummy\" > \"$depfile\"\n}\n\n# Factor out some common post-processing of the generated depfile.\n# Requires the auxiliary global variable '$tmpdepfile' to be set.\naix_post_process_depfile ()\n{\n  # If the compiler actually managed to produce a dependency file,\n  # post-process it.\n  if test -f \"$tmpdepfile\"; then\n    # Each line is of the form 'foo.o: dependency.h'.\n    # Do two passes, one to just change these to\n    #   $object: dependency.h\n    # and one to simply output\n    #   dependency.h:\n    # which is needed to avoid the deleted-header problem.\n    { sed -e \"s,^.*\\.[$lower]*:,$object:,\" < \"$tmpdepfile\"\n      sed -e \"s,^.*\\.[$lower]*:[$tab ]*,,\" -e 's,$,:,' < \"$tmpdepfile\"\n    } > \"$depfile\"\n    rm -f \"$tmpdepfile\"\n  else\n    make_dummy_depfile\n  fi\n}\n\n# A tabulation character.\ntab='\t'\n# A newline character.\nnl='\n'\n# Character ranges might be problematic outside the C locale.\n# These definitions help.\nupper=ABCDEFGHIJKLMNOPQRSTUVWXYZ\nlower=abcdefghijklmnopqrstuvwxyz\ndigits=0123456789\nalpha=${upper}${lower}\n\nif test -z \"$depmode\" || test -z \"$source\" || test -z \"$object\"; then\n  echo \"depcomp: Variables source, object and depmode must be set\" 1>&2\n  exit 1\nfi\n\n# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.\ndepfile=${depfile-`echo \"$object\" |\n  sed 's|[^\\\\/]*$|'${DEPDIR-.deps}'/&|;s|\\.\\([^.]*\\)$|.P\\1|;s|Pobj$|Po|'`}\ntmpdepfile=${tmpdepfile-`echo \"$depfile\" | sed 's/\\.\\([^.]*\\)$/.T\\1/'`}\n\nrm -f \"$tmpdepfile\"\n\n# Avoid interferences from the environment.\ngccflag= dashmflag=\n\n# Some modes work just like other modes, but use different flags.  We\n# parameterize here, but still list the modes in the big case below,\n# to make depend.m4 easier to write.  Note that we *cannot* use a case\n# here, because this file can only contain one case statement.\nif test \"$depmode\" = hp; then\n  # HP compiler uses -M and no extra arg.\n  gccflag=-M\n  depmode=gcc\nfi\n\nif test \"$depmode\" = dashXmstdout; then\n  # This is just like dashmstdout with a different argument.\n  dashmflag=-xM\n  depmode=dashmstdout\nfi\n\ncygpath_u=\"cygpath -u -f -\"\nif test \"$depmode\" = msvcmsys; then\n  # This is just like msvisualcpp but w/o cygpath translation.\n  # Just convert the backslash-escaped backslashes to single forward\n  # slashes to satisfy depend.m4\n  cygpath_u='sed s,\\\\\\\\,/,g'\n  depmode=msvisualcpp\nfi\n\nif test \"$depmode\" = msvc7msys; then\n  # This is just like msvc7 but w/o cygpath translation.\n  # Just convert the backslash-escaped backslashes to single forward\n  # slashes to satisfy depend.m4\n  cygpath_u='sed s,\\\\\\\\,/,g'\n  depmode=msvc7\nfi\n\nif test \"$depmode\" = xlc; then\n  # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.\n  gccflag=-qmakedep=gcc,-MF\n  depmode=gcc\nfi\n\ncase \"$depmode\" in\ngcc3)\n## gcc 3 implements dependency tracking that does exactly what\n## we want.  Yay!  Note: for some reason libtool 1.4 doesn't like\n## it if -MD -MP comes after the -MF stuff.  Hmm.\n## Unfortunately, FreeBSD c89 acceptance of flags depends upon\n## the command line argument order; so add the flags where they\n## appear in depend2.am.  Note that the slowdown incurred here\n## affects only configure: in makefiles, %FASTDEP% shortcuts this.\n  for arg\n  do\n    case $arg in\n    -c) set fnord \"$@\" -MT \"$object\" -MD -MP -MF \"$tmpdepfile\" \"$arg\" ;;\n    *)  set fnord \"$@\" \"$arg\" ;;\n    esac\n    shift # fnord\n    shift # $arg\n  done\n  \"$@\"\n  stat=$?\n  if test $stat -ne 0; then\n    rm -f \"$tmpdepfile\"\n    exit $stat\n  fi\n  mv \"$tmpdepfile\" \"$depfile\"\n  ;;\n\ngcc)\n## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.\n## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.\n## (see the conditional assignment to $gccflag above).\n## There are various ways to get dependency output from gcc.  Here's\n## why we pick this rather obscure method:\n## - Don't want to use -MD because we'd like the dependencies to end\n##   up in a subdir.  Having to rename by hand is ugly.\n##   (We might end up doing this anyway to support other compilers.)\n## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like\n##   -MM, not -M (despite what the docs say).  Also, it might not be\n##   supported by the other compilers which use the 'gcc' depmode.\n## - Using -M directly means running the compiler twice (even worse\n##   than renaming).\n  if test -z \"$gccflag\"; then\n    gccflag=-MD,\n  fi\n  \"$@\" -Wp,\"$gccflag$tmpdepfile\"\n  stat=$?\n  if test $stat -ne 0; then\n    rm -f \"$tmpdepfile\"\n    exit $stat\n  fi\n  rm -f \"$depfile\"\n  echo \"$object : \\\\\" > \"$depfile\"\n  # The second -e expression handles DOS-style file names with drive\n  # letters.\n  sed -e 's/^[^:]*: / /' \\\n      -e 's/^['$alpha']:\\/[^:]*: / /' < \"$tmpdepfile\" >> \"$depfile\"\n## This next piece of magic avoids the \"deleted header file\" problem.\n## The problem is that when a header file which appears in a .P file\n## is deleted, the dependency causes make to die (because there is\n## typically no way to rebuild the header).  We avoid this by adding\n## dummy dependencies for each header file.  Too bad gcc doesn't do\n## this for us directly.\n## Some versions of gcc put a space before the ':'.  On the theory\n## that the space means something, we add a space to the output as\n## well.  hp depmode also adds that space, but also prefixes the VPATH\n## to the object.  Take care to not repeat it in the output.\n## Some versions of the HPUX 10.20 sed can't process this invocation\n## correctly.  Breaking it into two sed invocations is a workaround.\n  tr ' ' \"$nl\" < \"$tmpdepfile\" \\\n    | sed -e 's/^\\\\$//' -e '/^$/d' -e \"s|.*$object$||\" -e '/:$/d' \\\n    | sed -e 's/$/ :/' >> \"$depfile\"\n  rm -f \"$tmpdepfile\"\n  ;;\n\nhp)\n  # This case exists only to let depend.m4 do its work.  It works by\n  # looking at the text of this script.  This case will never be run,\n  # since it is checked for above.\n  exit 1\n  ;;\n\nsgi)\n  if test \"$libtool\" = yes; then\n    \"$@\" \"-Wp,-MDupdate,$tmpdepfile\"\n  else\n    \"$@\" -MDupdate \"$tmpdepfile\"\n  fi\n  stat=$?\n  if test $stat -ne 0; then\n    rm -f \"$tmpdepfile\"\n    exit $stat\n  fi\n  rm -f \"$depfile\"\n\n  if test -f \"$tmpdepfile\"; then  # yes, the sourcefile depend on other files\n    echo \"$object : \\\\\" > \"$depfile\"\n    # Clip off the initial element (the dependent).  Don't try to be\n    # clever and replace this with sed code, as IRIX sed won't handle\n    # lines with more than a fixed number of characters (4096 in\n    # IRIX 6.2 sed, 8192 in IRIX 6.5).  We also remove comment lines;\n    # the IRIX cc adds comments like '#:fec' to the end of the\n    # dependency line.\n    tr ' ' \"$nl\" < \"$tmpdepfile\" \\\n      | sed -e 's/^.*\\.o://' -e 's/#.*$//' -e '/^$/ d' \\\n      | tr \"$nl\" ' ' >> \"$depfile\"\n    echo >> \"$depfile\"\n    # The second pass generates a dummy entry for each header file.\n    tr ' ' \"$nl\" < \"$tmpdepfile\" \\\n      | sed -e 's/^.*\\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \\\n      >> \"$depfile\"\n  else\n    make_dummy_depfile\n  fi\n  rm -f \"$tmpdepfile\"\n  ;;\n\nxlc)\n  # This case exists only to let depend.m4 do its work.  It works by\n  # looking at the text of this script.  This case will never be run,\n  # since it is checked for above.\n  exit 1\n  ;;\n\naix)\n  # The C for AIX Compiler uses -M and outputs the dependencies\n  # in a .u file.  In older versions, this file always lives in the\n  # current directory.  Also, the AIX compiler puts '$object:' at the\n  # start of each line; $object doesn't have directory information.\n  # Version 6 uses the directory in both cases.\n  set_dir_from \"$object\"\n  set_base_from \"$object\"\n  if test \"$libtool\" = yes; then\n    tmpdepfile1=$dir$base.u\n    tmpdepfile2=$base.u\n    tmpdepfile3=$dir.libs/$base.u\n    \"$@\" -Wc,-M\n  else\n    tmpdepfile1=$dir$base.u\n    tmpdepfile2=$dir$base.u\n    tmpdepfile3=$dir$base.u\n    \"$@\" -M\n  fi\n  stat=$?\n  if test $stat -ne 0; then\n    rm -f \"$tmpdepfile1\" \"$tmpdepfile2\" \"$tmpdepfile3\"\n    exit $stat\n  fi\n\n  for tmpdepfile in \"$tmpdepfile1\" \"$tmpdepfile2\" \"$tmpdepfile3\"\n  do\n    test -f \"$tmpdepfile\" && break\n  done\n  aix_post_process_depfile\n  ;;\n\ntcc)\n  # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26\n  # FIXME: That version still under development at the moment of writing.\n  #        Make that this statement remains true also for stable, released\n  #        versions.\n  # It will wrap lines (doesn't matter whether long or short) with a\n  # trailing '\\', as in:\n  #\n  #   foo.o : \\\n  #    foo.c \\\n  #    foo.h \\\n  #\n  # It will put a trailing '\\' even on the last line, and will use leading\n  # spaces rather than leading tabs (at least since its commit 0394caf7\n  # \"Emit spaces for -MD\").\n  \"$@\" -MD -MF \"$tmpdepfile\"\n  stat=$?\n  if test $stat -ne 0; then\n    rm -f \"$tmpdepfile\"\n    exit $stat\n  fi\n  rm -f \"$depfile\"\n  # Each non-empty line is of the form 'foo.o : \\' or ' dep.h \\'.\n  # We have to change lines of the first kind to '$object: \\'.\n  sed -e \"s|.*:|$object :|\" < \"$tmpdepfile\" > \"$depfile\"\n  # And for each line of the second kind, we have to emit a 'dep.h:'\n  # dummy dependency, to avoid the deleted-header problem.\n  sed -n -e 's|^  *\\(.*\\) *\\\\$|\\1:|p' < \"$tmpdepfile\" >> \"$depfile\"\n  rm -f \"$tmpdepfile\"\n  ;;\n\n## The order of this option in the case statement is important, since the\n## shell code in configure will try each of these formats in the order\n## listed in this file.  A plain '-MD' option would be understood by many\n## compilers, so we must ensure this comes after the gcc and icc options.\npgcc)\n  # Portland's C compiler understands '-MD'.\n  # Will always output deps to 'file.d' where file is the root name of the\n  # source file under compilation, even if file resides in a subdirectory.\n  # The object file name does not affect the name of the '.d' file.\n  # pgcc 10.2 will output\n  #    foo.o: sub/foo.c sub/foo.h\n  # and will wrap long lines using '\\' :\n  #    foo.o: sub/foo.c ... \\\n  #     sub/foo.h ... \\\n  #     ...\n  set_dir_from \"$object\"\n  # Use the source, not the object, to determine the base name, since\n  # that's sadly what pgcc will do too.\n  set_base_from \"$source\"\n  tmpdepfile=$base.d\n\n  # For projects that build the same source file twice into different object\n  # files, the pgcc approach of using the *source* file root name can cause\n  # problems in parallel builds.  Use a locking strategy to avoid stomping on\n  # the same $tmpdepfile.\n  lockdir=$base.d-lock\n  trap \"\n    echo '$0: caught signal, cleaning up...' >&2\n    rmdir '$lockdir'\n    exit 1\n  \" 1 2 13 15\n  numtries=100\n  i=$numtries\n  while test $i -gt 0; do\n    # mkdir is a portable test-and-set.\n    if mkdir \"$lockdir\" 2>/dev/null; then\n      # This process acquired the lock.\n      \"$@\" -MD\n      stat=$?\n      # Release the lock.\n      rmdir \"$lockdir\"\n      break\n    else\n      # If the lock is being held by a different process, wait\n      # until the winning process is done or we timeout.\n      while test -d \"$lockdir\" && test $i -gt 0; do\n        sleep 1\n        i=`expr $i - 1`\n      done\n    fi\n    i=`expr $i - 1`\n  done\n  trap - 1 2 13 15\n  if test $i -le 0; then\n    echo \"$0: failed to acquire lock after $numtries attempts\" >&2\n    echo \"$0: check lockdir '$lockdir'\" >&2\n    exit 1\n  fi\n\n  if test $stat -ne 0; then\n    rm -f \"$tmpdepfile\"\n    exit $stat\n  fi\n  rm -f \"$depfile\"\n  # Each line is of the form `foo.o: dependent.h',\n  # or `foo.o: dep1.h dep2.h \\', or ` dep3.h dep4.h \\'.\n  # Do two passes, one to just change these to\n  # `$object: dependent.h' and one to simply `dependent.h:'.\n  sed \"s,^[^:]*:,$object :,\" < \"$tmpdepfile\" > \"$depfile\"\n  # Some versions of the HPUX 10.20 sed can't process this invocation\n  # correctly.  Breaking it into two sed invocations is a workaround.\n  sed 's,^[^:]*: \\(.*\\)$,\\1,;s/^\\\\$//;/^$/d;/:$/d' < \"$tmpdepfile\" \\\n    | sed -e 's/$/ :/' >> \"$depfile\"\n  rm -f \"$tmpdepfile\"\n  ;;\n\nhp2)\n  # The \"hp\" stanza above does not work with aCC (C++) and HP's ia64\n  # compilers, which have integrated preprocessors.  The correct option\n  # to use with these is +Maked; it writes dependencies to a file named\n  # 'foo.d', which lands next to the object file, wherever that\n  # happens to be.\n  # Much of this is similar to the tru64 case; see comments there.\n  set_dir_from  \"$object\"\n  set_base_from \"$object\"\n  if test \"$libtool\" = yes; then\n    tmpdepfile1=$dir$base.d\n    tmpdepfile2=$dir.libs/$base.d\n    \"$@\" -Wc,+Maked\n  else\n    tmpdepfile1=$dir$base.d\n    tmpdepfile2=$dir$base.d\n    \"$@\" +Maked\n  fi\n  stat=$?\n  if test $stat -ne 0; then\n     rm -f \"$tmpdepfile1\" \"$tmpdepfile2\"\n     exit $stat\n  fi\n\n  for tmpdepfile in \"$tmpdepfile1\" \"$tmpdepfile2\"\n  do\n    test -f \"$tmpdepfile\" && break\n  done\n  if test -f \"$tmpdepfile\"; then\n    sed -e \"s,^.*\\.[$lower]*:,$object:,\" \"$tmpdepfile\" > \"$depfile\"\n    # Add 'dependent.h:' lines.\n    sed -ne '2,${\n               s/^ *//\n               s/ \\\\*$//\n               s/$/:/\n               p\n             }' \"$tmpdepfile\" >> \"$depfile\"\n  else\n    make_dummy_depfile\n  fi\n  rm -f \"$tmpdepfile\" \"$tmpdepfile2\"\n  ;;\n\ntru64)\n  # The Tru64 compiler uses -MD to generate dependencies as a side\n  # effect.  'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.\n  # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put\n  # dependencies in 'foo.d' instead, so we check for that too.\n  # Subdirectories are respected.\n  set_dir_from  \"$object\"\n  set_base_from \"$object\"\n\n  if test \"$libtool\" = yes; then\n    # Libtool generates 2 separate objects for the 2 libraries.  These\n    # two compilations output dependencies in $dir.libs/$base.o.d and\n    # in $dir$base.o.d.  We have to check for both files, because\n    # one of the two compilations can be disabled.  We should prefer\n    # $dir$base.o.d over $dir.libs/$base.o.d because the latter is\n    # automatically cleaned when .libs/ is deleted, while ignoring\n    # the former would cause a distcleancheck panic.\n    tmpdepfile1=$dir$base.o.d          # libtool 1.5\n    tmpdepfile2=$dir.libs/$base.o.d    # Likewise.\n    tmpdepfile3=$dir.libs/$base.d      # Compaq CCC V6.2-504\n    \"$@\" -Wc,-MD\n  else\n    tmpdepfile1=$dir$base.d\n    tmpdepfile2=$dir$base.d\n    tmpdepfile3=$dir$base.d\n    \"$@\" -MD\n  fi\n\n  stat=$?\n  if test $stat -ne 0; then\n    rm -f \"$tmpdepfile1\" \"$tmpdepfile2\" \"$tmpdepfile3\"\n    exit $stat\n  fi\n\n  for tmpdepfile in \"$tmpdepfile1\" \"$tmpdepfile2\" \"$tmpdepfile3\"\n  do\n    test -f \"$tmpdepfile\" && break\n  done\n  # Same post-processing that is required for AIX mode.\n  aix_post_process_depfile\n  ;;\n\nmsvc7)\n  if test \"$libtool\" = yes; then\n    showIncludes=-Wc,-showIncludes\n  else\n    showIncludes=-showIncludes\n  fi\n  \"$@\" $showIncludes > \"$tmpdepfile\"\n  stat=$?\n  grep -v '^Note: including file: ' \"$tmpdepfile\"\n  if test $stat -ne 0; then\n    rm -f \"$tmpdepfile\"\n    exit $stat\n  fi\n  rm -f \"$depfile\"\n  echo \"$object : \\\\\" > \"$depfile\"\n  # The first sed program below extracts the file names and escapes\n  # backslashes for cygpath.  The second sed program outputs the file\n  # name when reading, but also accumulates all include files in the\n  # hold buffer in order to output them again at the end.  This only\n  # works with sed implementations that can handle large buffers.\n  sed < \"$tmpdepfile\" -n '\n/^Note: including file:  *\\(.*\\)/ {\n  s//\\1/\n  s/\\\\/\\\\\\\\/g\n  p\n}' | $cygpath_u | sort -u | sed -n '\ns/ /\\\\ /g\ns/\\(.*\\)/'\"$tab\"'\\1 \\\\/p\ns/.\\(.*\\) \\\\/\\1:/\nH\n$ {\n  s/.*/'\"$tab\"'/\n  G\n  p\n}' >> \"$depfile\"\n  echo >> \"$depfile\" # make sure the fragment doesn't end with a backslash\n  rm -f \"$tmpdepfile\"\n  ;;\n\nmsvc7msys)\n  # This case exists only to let depend.m4 do its work.  It works by\n  # looking at the text of this script.  This case will never be run,\n  # since it is checked for above.\n  exit 1\n  ;;\n\n#nosideeffect)\n  # This comment above is used by automake to tell side-effect\n  # dependency tracking mechanisms from slower ones.\n\ndashmstdout)\n  # Important note: in order to support this mode, a compiler *must*\n  # always write the preprocessed file to stdout, regardless of -o.\n  \"$@\" || exit $?\n\n  # Remove the call to Libtool.\n  if test \"$libtool\" = yes; then\n    while test \"X$1\" != 'X--mode=compile'; do\n      shift\n    done\n    shift\n  fi\n\n  # Remove '-o $object'.\n  IFS=\" \"\n  for arg\n  do\n    case $arg in\n    -o)\n      shift\n      ;;\n    $object)\n      shift\n      ;;\n    *)\n      set fnord \"$@\" \"$arg\"\n      shift # fnord\n      shift # $arg\n      ;;\n    esac\n  done\n\n  test -z \"$dashmflag\" && dashmflag=-M\n  # Require at least two characters before searching for ':'\n  # in the target name.  This is to cope with DOS-style filenames:\n  # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.\n  \"$@\" $dashmflag |\n    sed \"s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |\" > \"$tmpdepfile\"\n  rm -f \"$depfile\"\n  cat < \"$tmpdepfile\" > \"$depfile\"\n  # Some versions of the HPUX 10.20 sed can't process this sed invocation\n  # correctly.  Breaking it into two sed invocations is a workaround.\n  tr ' ' \"$nl\" < \"$tmpdepfile\" \\\n    | sed -e 's/^\\\\$//' -e '/^$/d' -e '/:$/d' \\\n    | sed -e 's/$/ :/' >> \"$depfile\"\n  rm -f \"$tmpdepfile\"\n  ;;\n\ndashXmstdout)\n  # This case only exists to satisfy depend.m4.  It is never actually\n  # run, as this mode is specially recognized in the preamble.\n  exit 1\n  ;;\n\nmakedepend)\n  \"$@\" || exit $?\n  # Remove any Libtool call\n  if test \"$libtool\" = yes; then\n    while test \"X$1\" != 'X--mode=compile'; do\n      shift\n    done\n    shift\n  fi\n  # X makedepend\n  shift\n  cleared=no eat=no\n  for arg\n  do\n    case $cleared in\n    no)\n      set \"\"; shift\n      cleared=yes ;;\n    esac\n    if test $eat = yes; then\n      eat=no\n      continue\n    fi\n    case \"$arg\" in\n    -D*|-I*)\n      set fnord \"$@\" \"$arg\"; shift ;;\n    # Strip any option that makedepend may not understand.  Remove\n    # the object too, otherwise makedepend will parse it as a source file.\n    -arch)\n      eat=yes ;;\n    -*|$object)\n      ;;\n    *)\n      set fnord \"$@\" \"$arg\"; shift ;;\n    esac\n  done\n  obj_suffix=`echo \"$object\" | sed 's/^.*\\././'`\n  touch \"$tmpdepfile\"\n  ${MAKEDEPEND-makedepend} -o\"$obj_suffix\" -f\"$tmpdepfile\" \"$@\"\n  rm -f \"$depfile\"\n  # makedepend may prepend the VPATH from the source file name to the object.\n  # No need to regex-escape $object, excess matching of '.' is harmless.\n  sed \"s|^.*\\($object *:\\)|\\1|\" \"$tmpdepfile\" > \"$depfile\"\n  # Some versions of the HPUX 10.20 sed can't process the last invocation\n  # correctly.  Breaking it into two sed invocations is a workaround.\n  sed '1,2d' \"$tmpdepfile\" \\\n    | tr ' ' \"$nl\" \\\n    | sed -e 's/^\\\\$//' -e '/^$/d' -e '/:$/d' \\\n    | sed -e 's/$/ :/' >> \"$depfile\"\n  rm -f \"$tmpdepfile\" \"$tmpdepfile\".bak\n  ;;\n\ncpp)\n  # Important note: in order to support this mode, a compiler *must*\n  # always write the preprocessed file to stdout.\n  \"$@\" || exit $?\n\n  # Remove the call to Libtool.\n  if test \"$libtool\" = yes; then\n    while test \"X$1\" != 'X--mode=compile'; do\n      shift\n    done\n    shift\n  fi\n\n  # Remove '-o $object'.\n  IFS=\" \"\n  for arg\n  do\n    case $arg in\n    -o)\n      shift\n      ;;\n    $object)\n      shift\n      ;;\n    *)\n      set fnord \"$@\" \"$arg\"\n      shift # fnord\n      shift # $arg\n      ;;\n    esac\n  done\n\n  \"$@\" -E \\\n    | sed -n -e '/^# [0-9][0-9]* \"\\([^\"]*\\)\".*/ s:: \\1 \\\\:p' \\\n             -e '/^#line [0-9][0-9]* \"\\([^\"]*\\)\".*/ s:: \\1 \\\\:p' \\\n    | sed '$ s: \\\\$::' > \"$tmpdepfile\"\n  rm -f \"$depfile\"\n  echo \"$object : \\\\\" > \"$depfile\"\n  cat < \"$tmpdepfile\" >> \"$depfile\"\n  sed < \"$tmpdepfile\" '/^$/d;s/^ //;s/ \\\\$//;s/$/ :/' >> \"$depfile\"\n  rm -f \"$tmpdepfile\"\n  ;;\n\nmsvisualcpp)\n  # Important note: in order to support this mode, a compiler *must*\n  # always write the preprocessed file to stdout.\n  \"$@\" || exit $?\n\n  # Remove the call to Libtool.\n  if test \"$libtool\" = yes; then\n    while test \"X$1\" != 'X--mode=compile'; do\n      shift\n    done\n    shift\n  fi\n\n  IFS=\" \"\n  for arg\n  do\n    case \"$arg\" in\n    -o)\n      shift\n      ;;\n    $object)\n      shift\n      ;;\n    \"-Gm\"|\"/Gm\"|\"-Gi\"|\"/Gi\"|\"-ZI\"|\"/ZI\")\n        set fnord \"$@\"\n        shift\n        shift\n        ;;\n    *)\n        set fnord \"$@\" \"$arg\"\n        shift\n        shift\n        ;;\n    esac\n  done\n  \"$@\" -E 2>/dev/null |\n  sed -n '/^#line [0-9][0-9]* \"\\([^\"]*\\)\"/ s::\\1:p' | $cygpath_u | sort -u > \"$tmpdepfile\"\n  rm -f \"$depfile\"\n  echo \"$object : \\\\\" > \"$depfile\"\n  sed < \"$tmpdepfile\" -n -e 's% %\\\\ %g' -e '/^\\(.*\\)$/ s::'\"$tab\"'\\1 \\\\:p' >> \"$depfile\"\n  echo \"$tab\" >> \"$depfile\"\n  sed < \"$tmpdepfile\" -n -e 's% %\\\\ %g' -e '/^\\(.*\\)$/ s::\\1\\::p' >> \"$depfile\"\n  rm -f \"$tmpdepfile\"\n  ;;\n\nmsvcmsys)\n  # This case exists only to let depend.m4 do its work.  It works by\n  # looking at the text of this script.  This case will never be run,\n  # since it is checked for above.\n  exit 1\n  ;;\n\nnone)\n  exec \"$@\"\n  ;;\n\n*)\n  echo \"Unknown depmode $depmode\" 1>&2\n  exit 1\n  ;;\nesac\n\nexit 0\n\n# Local Variables:\n# mode: shell-script\n# sh-indentation: 2\n# eval: (add-hook 'write-file-hooks 'time-stamp)\n# time-stamp-start: \"scriptversion=\"\n# time-stamp-format: \"%:y-%02m-%02d.%02H\"\n# time-stamp-time-zone: \"UTC\"\n# time-stamp-end: \"; # UTC\"\n# End:\n"
  },
  {
    "path": "diode_1185.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t</global>\n\n\t<plugin label=\"diode\" id=\"1185\" class=\"DistortionPlugin\">\n\t\t<name>Diode Processor</name>\n\t\t<p>Mangles the signal as if it had been passed through a diode rectifier network.</p>\n\t\t<p>You should probably follow this with a DC offset remover, unless you want the offset.</p>\n\n\t\t<callback event=\"run\"><![CDATA[\nunsigned long pos;\n\nif (mode >= 0.0f && mode < 1.0f) {\n\tfor (pos = 0; pos < sample_count; pos++) {\n\t\tbuffer_write(output[pos], ((1.0f-mode) * input[pos]) +\n\t\t (mode * (input[pos] > 0.0f ? input[pos] : 0.0f)));\n\t}\n} else if (mode >= 1.0f && mode < 2.0f) {\n\tfloat fac = mode - 1.0f;\n\tfor (pos = 0; pos < sample_count; pos++) {\n\t\tbuffer_write(output[pos], ((1.0f-fac) * (input[pos] > 0 ?\n\t\t input[pos] : 0.0)) + (fac * fabs(input[pos])));\n\t}\n} else if (mode >= 2) {\n\tfloat fac = mode < 3 ? mode - 2 : 1.0;\n\tfor (pos = 0; pos < sample_count; pos++) {\n\t\tbuffer_write(output[pos], (1.0-fac) * fabs(input[pos]));\n\t}\n} else {\n\tfor (pos = 0; pos < sample_count; pos++) {\n\t\tbuffer_write(output[pos], input[pos]);\n\t}\n}\n\t\t]]></callback>\n\n\t\t<port label=\"mode\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Mode (0 for none, 1 for half wave, 2 for full wave)</name>\n\t\t\t<p>The mode parameter is continuously variable from thru to half-wave rectification to full-wave to silence.</p>\n\t\t\t<range min=\"0\" max=\"3\"/>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "divider_1186.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t</global>\n\n\t<plugin label=\"divider\" id=\"1186\" class=\"GeneratorPlugin\">\n\t\t<name>Audio Divider (Suboctave Generator)</name>\n\t\t<p>Reduces the period of the signal by the factor given, and makes it a square wave in the process. Has some amplitude tracking capability, but not really useful on complex signals.</p>\n\n\t\t<callback event=\"instantiate\"><![CDATA[\nout = 1.0f;\namp = 0.0f;\ncount = 0.0f;\nlamp = 0.0f;\nlast = 0.0f;\nzeroxs = 0;\n\t\t]]></callback>\n\n\t\t<callback event=\"run\"><![CDATA[\n/* Integer version of denominator */\nint den = (int)denominator;\n\nunsigned long pos;\n\nfor (pos = 0; pos < sample_count; pos++) {\n\tcount += 1.0f;\n\tif ((input[pos] > 0.0f && last <= 0.0f) ||\n\t (input[pos] < 0.0f && last >= 0.0)) {\n\t\tzeroxs++;\n\t\tif (den == 1) {\n\t\t\tout = out > 0.0f ? -1.0f : 1.0f;\n\t\t\tlamp = amp / count;\n\t\t\tzeroxs = 0;\n\t\t\tcount = 0;\n\t\t\tamp = 0;\n\t\t}\n\t}\n\tamp += fabs(input[pos]);\n\tif (den > 1 && (zeroxs % den) == den-1) {\n\t\tout = out > 0.0f ? -1.0f : 1.0f;\n\t\tlamp = amp / count;\n\t\tzeroxs = 0;\n\t\tcount = 0;\n\t\tamp = 0;\n\t}\n\tlast = input[pos];\n\tbuffer_write(output[pos], out * lamp);\n}\n\nplugin_data->last = last;\nplugin_data->amp = amp;\nplugin_data->lamp = lamp;\nplugin_data->zeroxs = zeroxs;\nplugin_data->count = count;\nplugin_data->out = out;\n\t\t]]></callback>\n\n\t\t<port label=\"denominator\" dir=\"input\" type=\"control\" hint=\"integer,default_1\">\n\t\t\t<name>Denominator</name>\n\t\t\t<range min=\"1\" max=\"8\"/>\n\t\t\t<p>The factor the incoming frequency will be divided by.</p>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\n\t\t<!-- Last input value, to find 0 crossings -->\n\t\t<instance-data label=\"last\" type=\"LADSPA_Data\"/>\n\n\t\t<!-- Current amplitude sum (well, amp of last half cycle) -->\n\t\t<instance-data label=\"amp\" type=\"LADSPA_Data\"/>\n\n\t\t<!-- Average last amplitude (well, amp of last half cycle) -->\n\t\t<instance-data label=\"lamp\" type=\"LADSPA_Data\"/>\n\n\t\t<!-- Count of zero xings to make divider -->\n\t\t<instance-data label=\"zeroxs\" type=\"int\"/>\n\n\t\t<!-- Count of number of samples since x -->\n\t\t<instance-data label=\"count\" type=\"float\"/>\n\n\t\t<!-- Current output value -->\n\t\t<instance-data label=\"out\" type=\"LADSPA_Data\"/>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "dj_eq_1901.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"ladspa-util.h\"\n      #include \"util/biquad.h\"\n\n      #define BANDS 3\n\n      #define PEAK_BW\t  0.3f /* Peak EQ bandwidth (octaves) */\n      #define SHELF_SLOPE 1.5f /* Shelf EQ slope (arb. units) */\n    </code>\n  </global>\n\n  <plugin label=\"dj_eq_mono\" id=\"1907\" class=\"EQPlugin\">\n    <name>DJ EQ (mono)</name>\n    <p>The design for this plugin is taken from the Allen \\&amp; Heath Xone 32\nDJ mixer. It was suggested by Patrick Shirkey. Mono version requested by Adam King</p>\n\n    <callback event=\"instantiate\"><![CDATA[\nfs = s_rate;\n\nfilters = calloc(BANDS, sizeof(biquad));\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n\tbiquad_init(&filters[0]);\n\teq_set_params(&filters[0], 100.0f, 0.0f, PEAK_BW, fs);\n\tbiquad_init(&filters[1]);\n\teq_set_params(&filters[1], 1000.0f, 0.0f, PEAK_BW, fs);\n\tbiquad_init(&filters[2]);\n\ths_set_params(&filters[2], 10000.0f, 0.0f, SHELF_SLOPE, fs);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float samp;\n\n      eq_set_params(&filters[0], 100.0f, lo, PEAK_BW, fs);\n      eq_set_params(&filters[1], 1000.0f, mid, PEAK_BW, fs);\n      hs_set_params(&filters[2], 10000.0f, hi, SHELF_SLOPE, fs);\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tsamp = biquad_run(&filters[0], input[pos]);\n        samp = biquad_run(&filters[1], samp);\n        samp = biquad_run(&filters[2], samp);\n        buffer_write(output[pos], samp);\n      }\n\n      *(plugin_data->latency) = 3; //XXX is this right?\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n       free(plugin_data->filters);\n    ]]></callback>\n\n    <port label=\"lo\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Lo gain (dB)</name>\n      <p>Controls the gain of the low (100Hz) peak/dip band</p>\n      <range min=\"-70\" max=\"+6\"/>\n    </port>\n\n    <port label=\"mid\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Mid gain (dB)</name>\n      <p>Controls the gain of the mid (1000Hz) peak/dip band</p>\n      <range min=\"-70\" max=\"+6\"/>\n    </port>\n\n    <port label=\"hi\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Hi gain (dB)</name>\n      <p>Controls the gain of the high (10000Hz) shelf band</p>\n      <range min=\"-70\" max=\"+6\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"latency\" dir=\"output\" type=\"control\">\n      <name>latency</name>\n    </port>\n\n    <instance-data label=\"fs\" type=\"float\"/>\n    <instance-data label=\"filters\" type=\"biquad *\"/>\n  </plugin>\n\n  <plugin label=\"dj_eq\" id=\"1901\" class=\"EQPlugin\">\n    <name>DJ EQ</name>\n    <p>The design for this plugin is taken from the Allen \\&amp; Heath Xone 32\nDJ mixer. It was suggested by Patrick Shirkey.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\nfs = s_rate;\n\nfilters = calloc(BANDS * 2, sizeof(biquad));\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      int i;\n\n      for (i=0; i<2; i++) {\n\tbiquad_init(&filters[i*BANDS + 0]);\n\teq_set_params(&filters[i*BANDS + 0], 100.0f, 0.0f, PEAK_BW, fs);\n\tbiquad_init(&filters[i*BANDS + 1]);\n\teq_set_params(&filters[i*BANDS + 1], 1000.0f, 0.0f, PEAK_BW, fs);\n\tbiquad_init(&filters[i*BANDS + 2]);\n\ths_set_params(&filters[i*BANDS + 2], 10000.0f, 0.0f, SHELF_SLOPE, fs);\n      }\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      unsigned int i;\n      float samp;\n\n      for (i=0; i<2; i++) {\n        eq_set_params(&filters[i*BANDS + 0], 100.0f, lo, PEAK_BW, fs);\n        eq_set_params(&filters[i*BANDS + 1], 1000.0f, mid, PEAK_BW, fs);\n        hs_set_params(&filters[i*BANDS + 2], 10000.0f, hi, SHELF_SLOPE, fs);\n      }\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tsamp = biquad_run(&filters[0], left_input[pos]);\n        samp = biquad_run(&filters[1], samp);\n        samp = biquad_run(&filters[2], samp);\n        buffer_write(left_output[pos], samp);\n\n\tsamp = biquad_run(&filters[3], right_input[pos]);\n        samp = biquad_run(&filters[4], samp);\n        samp = biquad_run(&filters[5], samp);\n        buffer_write(right_output[pos], samp);\n      }\n\n      *(plugin_data->latency) = 3; //XXX is this right?\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n       free(plugin_data->filters);\n    ]]></callback>\n\n    <port label=\"lo\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Lo gain (dB)</name>\n      <p>Controls the gain of the low (100Hz) peak/dip band</p>\n      <range min=\"-70\" max=\"+6\"/>\n    </port>\n\n    <port label=\"mid\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Mid gain (dB)</name>\n      <p>Controls the gain of the mid (1000Hz) peak/dip band</p>\n      <range min=\"-70\" max=\"+6\"/>\n    </port>\n\n    <port label=\"hi\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Hi gain (dB)</name>\n      <p>Controls the gain of the high (10000Hz) shelf band</p>\n      <range min=\"-70\" max=\"+6\"/>\n    </port>\n\n    <port label=\"left_input\" dir=\"input\" type=\"audio\">\n      <name>Input L</name>\n    </port>\n    <port label=\"right_input\" dir=\"input\" type=\"audio\">\n      <name>Input R</name>\n    </port>\n\n    <port label=\"left_output\" dir=\"output\" type=\"audio\">\n      <name>Output L</name>\n    </port>\n\n    <port label=\"right_output\" dir=\"output\" type=\"audio\">\n      <name>Output R</name>\n    </port>\n\n    <port label=\"latency\" dir=\"output\" type=\"control\">\n      <name>latency</name>\n    </port>\n\n    <instance-data label=\"fs\" type=\"float\"/>\n    <instance-data label=\"filters\" type=\"biquad *\"/>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "dj_flanger_1438.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include <sys/types.h>\n      #include \"ladspa-util.h\"\n\n      #define DELAY_TIME 0.005f\n    ]]></code>\n  </global>\n\n  <plugin label=\"djFlanger\" id=\"1438\" class=\"FlangerPlugin\">\n    <name>DJ flanger</name>\n    <p>This is a flanger which is more or less typical of DJ mixing desks. Requested by Patrick Shirkey.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      int buffer_size = 2048;\n\n      fs = s_rate;\n      while (buffer_size < fs * DELAY_TIME + 3.0f) {\n\tbuffer_size *= 2;\n      }\n      buffer = calloc(buffer_size, sizeof(LADSPA_Data));\n      buffer_mask = buffer_size - 1;\n      buffer_pos = 0;\n      x = 0.5f;\n      y = 0.0f;\n      last_sync = 0;\n    ]]></callback>\n      \n    <callback event=\"activate\"><![CDATA[\n      memset(buffer, 0, (buffer_mask + 1) * sizeof(LADSPA_Data));\n      last_sync = 0;\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      const float omega = 6.2831852f / (period * fs);\n      const float dr = 0.001f * fs * depth;\n      float fb;\n      float d;\n      float dout, out;\n      unsigned int dof;\n\n      if (feedback > 99.0f) {\n\tfb = 0.99f;\n      } else if (feedback < -99.0f) {\n\tfb = -0.99f;\n      } else {\n\tfb = feedback * 0.01f;\n      }\n\n      if (sync > 0) {\n\tif (!last_sync) {\n          x = 0.5f;\n          y = 0.0f;\n        }\n\tplugin_data->last_sync = 1;\n      } else {\n\tplugin_data->last_sync = 0;\n      }\n\n      for (pos = 0; pos < sample_count; pos++) {\n\t/* Write input into delay line */\n\tbuffer[buffer_pos] = input[pos];\n\n\t/* Calcuate delay */\n\td = (x + 0.5f) * dr;\n\n\tdof = f_round(d);\n\t//dout = buffer[(buffer_pos - f_round(d)) & buffer_mask];\n\tdout = cube_interp(d - floor(d),\n\t\t\t   buffer[(buffer_pos - dof - 3) & buffer_mask],\n                           buffer[(buffer_pos - dof - 2) & buffer_mask],\n                           buffer[(buffer_pos - dof - 1) & buffer_mask],\n                           buffer[(buffer_pos - dof) & buffer_mask]);\n\n\t/* Write output */\n\tout = (buffer[buffer_pos] + dout) * 0.5f;\n\tbuffer[buffer_pos] = input[pos] + out * fb;\n\tbuffer_write(output[pos], out);\n\n\t/* Roll ringbuffer */\n\tbuffer_pos = (buffer_pos + 1) & buffer_mask;\n\n\t/* Run LFO */\n\tx -= omega * y;\n\ty += omega * x;\n      }\n\n      plugin_data->x = x;\n      plugin_data->y = y;\n      plugin_data->buffer_pos = buffer_pos;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n\n    <port label=\"sync\" dir=\"input\" type=\"control\" hint=\"default_0,toggled\">\n      <name>LFO sync</name>\n      <p>When turned from off to on it resets the phase of the LFO back to the start of the cycle. Used to sync the LFO to the track.</p>\n    </port>\n\n    <port label=\"period\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>LFO period (s)</name>\n      <p>The cycle period of the LFO in seconds.</p>\n      <range min=\"0.1\" max=\"32.0\"/>\n    </port>\n\n    <port label=\"depth\" dir=\"input\" type=\"control\" hint=\"default_high\">\n      <name>LFO depth (ms)</name>\n      <p>The maximum delay the LFO will use to flange, in milliseconds.</p>\n      <range min=\"1\" max=\"5\"/>\n    </port>\n\n    <port label=\"feedback\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Feedback (%)</name>\n      <p>The amount of the delays output that is mixed back into the delay.</p>\n      <range min=\"-100\" max=\"100\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_pos\" type=\"unsigned int\" />\n    <instance-data label=\"buffer_mask\" type=\"unsigned int\" />\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"x\" type=\"float\" />\n    <instance-data label=\"y\" type=\"float\" />\n    <instance-data label=\"last_sync\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "docs/addstyle.pl",
    "content": "#!/usr/bin/perl -w\n\n$style = <<EOB;\n<style>\n  BODY {\n    font-family: sans-serif;\n    font-size: 10pt;\n    color: black;\n    background: white;\n  }\n\n  H1 {\n    font-size: 16pt;\n  }\n\n  H2 {\n    padding-top: 10pt;\n    font-size: 14pt;\n  }\n\n  H3 {\n    padding-top: 10pt;\n    font-size: 12pt;\n  }\n\n  P {\n    font-size: 10pt;\n  }\n\n  TD {\n    font-size: 10pt;\n  }\n\n  A {\n    text-decoration: none;\n  }\n</style>\nEOB\n\nwhile(<>) {\n\ts/<\\/title>/$&\\n$style/i;\n\tprint;\n}\n"
  },
  {
    "path": "docs/makedocs.pl",
    "content": "#!/usr/bin/perl -w\n\nuse XML::Parser;\n\nmy $parser = new XML::Parser(ErrorContext => 2);\n\n$parser->setHandlers(Start => \\&start,\n\t\t     End   => \\&end,\n\t\t     Char  => \\&char);\n\n&loadstats;\n&preamble;\nwhile ($file = shift) {\n\t$parser->parsefile($file);\n}\n&postamble;\n\nsub start {\n\tmy ($p, $el, %attr) = @_;\n\n\tunshift(@elements, $el);\n\tif ($el eq \"plugin\") {\n\t\t$pluginLabel = $attr{label};\n\t\t$pluginLabelLabel = $attr{label};\n\t\t$pluginLabel =~ s/%/\\\\%/g;\n\t\t$pluginLabel =~ s/_/\\\\_/g;\n\t\t$pluginID = $attr{id};\n\t\t$title = \"\";\n\t}\n}\n\nsub char {\n\tmy ($p, $str) = @_;\n\n\t$str =~ s/%/\\\\%/g;\n\t$str =~ s/_/\\\\_/g;\n\tif ($elements[0] eq \"name\" && $elements[1] eq \"plugin\") {\n\tprint '\\subsection{'.$str.' ('.$pluginLabel.', '.$pluginID.\")\\\\label{${pluginLabelLabel}}\\\\label{id${pluginID}}}\\n\";\n\t\tif ($cycles{$pluginID}) {\n\t\t\tprint \"CPU usage: \".$cycles{$pluginID}.\" cycles/sample\\n\\n\";\n\t\t}\n\t}\n\t$title = '\\subsubsection*{'.$str.\"}\\n\" if $elements[0] eq \"name\" && $elements[1] eq \"port\";\n\tif ($elements[0] eq \"p\") {\n\t\tprint $title.$str;\n\t\t$title = \"\";\n\t}\n}\n\nsub end {\n\tmy ($p, $el) = @_;\n\n\tshift(@elements);\n}\n\nsub loadstats {\n\topen(DATA, \"../timetest/timetest.results\");\n\twhile(<DATA>) {\n\t\t@line = split(\" \");\n\t\t$cycles{$line[0]} = $line[2];\n\t}\n}\n\nsub preamble {\n\t$date = `date -I`;\n\tchomp $date;\n\tprint <<EOB;\n\\\\documentclass[11pt]{article}\n\\\\usepackage{times}\n\\\\usepackage[T1]{fontenc}\n\\\\usepackage[latin1]{inputenc}\n\\\\usepackage{a4}\n\\\\usepackage{url}\n\\\\pagestyle{plain}\n\\\\parindent=0pt\n\n\\\\setcounter{secnumdepth}{2}\n\\\\setcounter{tocdepth}{2}\n\\\\makeatletter\n\n\\\\begin{document}\n\n\\\\title{Steve Harris' LADSPA Plugin Docs}\n\\\\date{$date}\n\\\\author{steve\\@plugin.org.uk}\n\n\\\\maketitle\n\n\\\\tableofcontents{}\n\n\\\\parskip=\\\\medskipamount\n\n\\\\section{Preamble}\n\n\\\\subsection{What plugins?}\nThis is the documentation for some plugins that I have written for the \\\\emph{Linux Audio Developers Simple Plugin Architecture}. It is a nice audio plugin architecture with a very easy learning curve.\n\n\\\\subsection{Where can I get them}\nFrom the website at \\\\url{http://plugin.org.uk/}.\n\n\\\\section{The plugins}\nEOB\n}\n\nsub postamble {\n\tprint <<EOB\n\\\\section{Licensing}\nAll this code is available under the GNU Public Licence, see the file {}''COPYING{}'' included with the source for more detials.\n\n\\\\end{document}\nEOB\n}\n\n"
  },
  {
    "path": "dont_use_1917",
    "content": "Its in the xfade plugin\n"
  },
  {
    "path": "dyson_compress_1403.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n/*\n * Copyright (c) 1996, John S. Dyson\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions\n * are met:\n * 1. Redistributions of source code must retain the above copyright\n *    notice, this list of conditions and the following disclaimer.\n * 2. Redistributions in binary form must reproduce the above copyright\n *    notice, this list of conditions and the following disclaimer in the\n *    documentation and/or other materials provided with the distribution.\n *\n * This code (easily) runs realtime on a P5-166 w/EDO, Triton-II on FreeBSD.\n *\n * More info/comments: dyson@freebsd.org\n *\n * This program provides compression of a stereo 16bit audio stream,\n * such as that contained by a 16Bit wav file.  Extreme measures have\n * been taken to make the compression as subtile as possible.  One\n * possible purpose for this code would be to master cassette tapes from\n * CD's for playback in automobiles where dynamic range needs to be\n * restricted.\n *\n * Suitably recoded for an embedded DSP, this would make a killer audio\n * compressor for broadcast or recording.  When writing this code, I\n * ignored the issues of roundoff error or trucation -- Pentiums have\n * really nice FP processors :-).\n */\n\n      #include <ladspa-util.h>\n\n      #define MAXLEVEL 0.9f\n      #define NFILT 12\n      #define NEFILT 17\n\n      /* These filters should filter at least the lowest audio freq */\n      #define RLEVELSQ0FILTER .001\n      #define RLEVELSQ1FILTER .010\n      /* These are the attack time for the rms measurement */\n      #define RLEVELSQ0FFILTER .001\n      #define RLEVELSQEFILTER .001\n    \n      #define RMASTERGAIN0FILTER .000003\n    \n      #define RPEAKGAINFILTER .001\n\n      #define MAXFASTGAIN 3\n      #define MAXSLOWGAIN 9\n\n      #define FLOORLEVEL 0.06\n\n      float hardlimit(float value, float knee, float limit) {\n        float ab = fabs(value);\n        if (ab >= limit) {\n          value = value > 0 ? limit : -limit;\n        }\n\n        return value;\n      }\n    ]]></code>\n  </global>\n\n  <plugin label=\"dysonCompress\" id=\"1403\" class=\"CompressorPlugin\">\n    <name>Dyson compressor</name>\n\n    <callback event=\"instantiate\"><![CDATA[\n      sample_rate = (float)s_rate;\n\n      mingain = 10000;\n      maxgain = 0;\n\n      rpeaklimitdelay = 2500;\n    \n      rgain = rmastergain0 = 1.0;\n      rlevelsq0 = 0;\n      rlevelsq1 = 0;\n      ndelay = (int)(1.0 / RLEVELSQ0FFILTER);\n\n      delay = calloc(ndelay, sizeof(LADSPA_Data));\n      rlevelsqn = calloc(NFILT + 1, sizeof(float));\n      rlevelsqe = calloc(NEFILT + 1, sizeof(float));\n    \n      rpeakgain0 = 1.0;\n      rpeakgain1 = 1.0;\n      rpeaklimitdelay = 0;\n      ndelayptr = 0;\n      lastrgain = 1.0;\n\n      extra_maxlevel = 0.0f;\n      peaklimitdelay = 0;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      unsigned int i;\n\n      for (i=0; i<ndelay; i++) {\n        delay[i] = 0;\n      }\n      for (i=0; i<NFILT + 1; i++) {\n        rlevelsqn[i] = 0;\n      }\n      for (i=0; i<NEFILT + 1; i++) {\n        rlevelsqe[i] = 0;\n      }\n\n      mingain = 10000;\n      maxgain = 0;\n\n      rpeaklimitdelay = 2500;\n    \n      rgain = rmastergain0 = 1.0;\n      rlevelsq0 = 0;\n      rlevelsq1 = 0;\n    \n      rpeakgain0 = 1.0;\n      rpeakgain1 = 1.0;\n      rpeaklimitdelay = 0;\n      ndelayptr = 0;\n      lastrgain = 1.0;\n\n      extra_maxlevel = 0.0f;\n      peaklimitdelay = 0;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->delay);\n      free(plugin_data->rlevelsqn);\n      free(plugin_data->rlevelsqe);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float targetlevel = MAXLEVEL * DB_CO(peak_limit);\n      float rgainfilter = 1.0f / (fmaxf(release_time, 0.0000001f) * sample_rate);\n      float fastgaincompressionratio = cfrate;\n      float compressionratio = crate;\n      float efilt;\n      float levelsqe;\n      float gain;\n      float tgain;\n      float d;\n      float fastgain;\n      float qgain;\n      float tslowgain;\n      float slowgain;\n      float npeakgain;\n      float new;\n      float nrgain;\n      float ngain;\n      float ngsq;\n      float tnrgain;\n      float sqrtrpeakgain;\n      float totalgain;\n      unsigned int i;\n\n      for (pos = 0; pos < sample_count; pos++) {\n        // Ergh! this was originally meant to track a stereo signal\n        float levelsq0 = 2.0f * (input[pos] * input[pos]);\n\n        delay[ndelayptr] = input[pos];\n        ndelayptr++;\n\n        if (ndelayptr >= ndelay) {\n          ndelayptr = 0;\n        }\n\n        if (levelsq0 > rlevelsq0) {\n          rlevelsq0 = (levelsq0 * RLEVELSQ0FFILTER) +\n           rlevelsq0 * (1 - RLEVELSQ0FFILTER);\n        } else {\n          rlevelsq0 = (levelsq0 * RLEVELSQ0FILTER) +\n           rlevelsq0 * (1 - RLEVELSQ0FILTER);\n        }\n\n        if (rlevelsq0 <= FLOORLEVEL * FLOORLEVEL) {\n          goto skipagc;\n        }\n\n        if (rlevelsq0 > rlevelsq1) {\n          rlevelsq1 = rlevelsq0;\n        } else {\n          rlevelsq1 = rlevelsq0 * RLEVELSQ1FILTER +\n            rlevelsq1 * (1 - RLEVELSQ1FILTER);\n        }\n\n        rlevelsqn[0] = rlevelsq1;\n        for(i = 0; i < NFILT-1; i++) {\n          if (rlevelsqn[i] > rlevelsqn[i+1])\n            rlevelsqn[i+1] = rlevelsqn[i];\n          else\n            rlevelsqn[i+1] = rlevelsqn[i] * RLEVELSQ1FILTER +\n              rlevelsqn[i+1] * (1 - RLEVELSQ1FILTER);\n        }\n\n        efilt = RLEVELSQEFILTER;\n        levelsqe = rlevelsqe[0] = rlevelsqn[NFILT-1];\n        for(i = 0; i < NEFILT-1; i++) {\n          rlevelsqe[i+1] = rlevelsqe[i] * efilt +\n            rlevelsqe[i+1] * (1.0 - efilt);\n          if (rlevelsqe[i+1] > levelsqe)\n            levelsqe = rlevelsqe[i+1];\n          efilt *= 1.0f / 1.5f;\n        }\n\n        gain = targetlevel / sqrt(levelsqe);\n        if (compressionratio < 0.99f) {\n          if (compressionratio == 0.50f)\n            gain = sqrt(gain);\n          else\n            gain = f_exp(log(gain) * compressionratio);\n        }\n\n        if (gain < rgain)\n          rgain = gain * RLEVELSQEFILTER/2 +\n            rgain * (1 - RLEVELSQEFILTER/2);\n        else\n          rgain = gain * rgainfilter +\n            rgain * (1 - rgainfilter);\n\n        lastrgain = rgain;\n        if ( gain < lastrgain)\n          lastrgain = gain;\n\n      skipagc:;\n\n        tgain = lastrgain;\n    \n        d = delay[ndelayptr];\n    \n        fastgain = tgain;\n        if (fastgain > MAXFASTGAIN)\n          fastgain = MAXFASTGAIN;\n    \n        if (fastgain < 0.0001)\n          fastgain = 0.0001;\n\n        qgain = f_exp(log(fastgain) * fastgaincompressionratio);\n\n        tslowgain = tgain / qgain;\n        if (tslowgain > MAXSLOWGAIN)\n          tslowgain = MAXSLOWGAIN;\n        if (tslowgain < rmastergain0)\n          rmastergain0 = tslowgain;\n        else\n          rmastergain0 = tslowgain * RMASTERGAIN0FILTER +\n            (1 - RMASTERGAIN0FILTER) * rmastergain0;\n    \n        slowgain = rmastergain0;\n        npeakgain = slowgain * qgain;\n    \n        new = d * npeakgain;\n        if (fabs(new) >= MAXLEVEL)\n          nrgain = MAXLEVEL / fabs(new);\n        else\n          nrgain = 1.0;\n    \n        ngain = nrgain;\n    \n        ngsq = ngain * ngain;\n        if (ngsq <= rpeakgain0) {\n          rpeakgain0 = ngsq /* * 0.50 + rpeakgain0 * 0.50 */;\n          rpeaklimitdelay = peaklimitdelay;\n        } else if (rpeaklimitdelay == 0) {\n          if (nrgain > 1.0)\n            tnrgain = 1.0;\n          else\n            tnrgain = nrgain;\n          rpeakgain0 = tnrgain * RPEAKGAINFILTER +\n            (1.0 - RPEAKGAINFILTER) * rpeakgain0;\n        }\n\n        if (rpeakgain0 <= rpeakgain1) {\n          rpeakgain1 = rpeakgain0;\n          rpeaklimitdelay = peaklimitdelay;\n        } else if (rpeaklimitdelay == 0) {\n          rpeakgain1 = RPEAKGAINFILTER * rpeakgain0 +\n            (1.0 - RPEAKGAINFILTER) * rpeakgain1;\n        } else {\n          --rpeaklimitdelay;\n        }\n\n        sqrtrpeakgain = sqrt(rpeakgain1);\n        totalgain = npeakgain * sqrtrpeakgain;\n    \n        buffer_write(output[pos], new * sqrtrpeakgain);\n    \n        if (totalgain > maxgain)\n          maxgain = totalgain;\n        if (totalgain < mingain)\n          mingain = totalgain;\n        if (output[pos] > extra_maxlevel)\n          extra_maxlevel = output[pos];\n      }\n\n      plugin_data->ndelayptr = ndelayptr;\n      plugin_data->rlevelsq0 = rlevelsq0;\n      plugin_data->rlevelsq1 = rlevelsq1;\n      plugin_data->mingain = mingain;\n      plugin_data->maxgain = maxgain;\n      plugin_data->rpeaklimitdelay = rpeaklimitdelay;\n      plugin_data->rgain = rgain;\n      plugin_data->rmastergain0 = rmastergain0;\n      plugin_data->rpeakgain0 = rpeakgain0;\n      plugin_data->rpeakgain1 = rpeakgain1;\n      plugin_data->lastrgain = lastrgain;\n      plugin_data->extra_maxlevel = extra_maxlevel;\n    ]]></callback>\n\n    <port label=\"peak_limit\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Peak limit (dB)</name>\n      <p>Controls the desired limit of the output signal in dB's.</p>\n      <range min=\"-30\" max=\"0\"/>\n    </port>\n\n    <port label=\"release_time\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Release time (s)</name>\n      <p>Controls the time taken for the compressor to relax its gain control over the input signal.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"cfrate\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Fast compression ratio</name>\n      <p>I have no clear idea what this controls.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"crate\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Compression ratio</name>\n      <p>I have no clear idea what this controls.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"sample_rate\" type=\"float\"/>\n    <instance-data label=\"mingain\" type=\"float\"/>\n    <instance-data label=\"maxgain\" type=\"float\"/>\n    <instance-data label=\"rpeaklimitdelay\" type=\"float\"/>\n    <instance-data label=\"rgain\" type=\"float\"/>\n    <instance-data label=\"rlevelsq0\" type=\"float\"/>\n    <instance-data label=\"rlevelsq1\" type=\"float\"/>\n    <instance-data label=\"ndelay\" type=\"float\"/>\n    <instance-data label=\"delay\" type=\"LADSPA_Data *\"/>\n    <instance-data label=\"rlevelsqn\" type=\"LADSPA_Data *\"/>\n    <instance-data label=\"rlevelsqe\" type=\"LADSPA_Data *\"/>\n    <instance-data label=\"rmastergain0\" type=\"float\"/>\n    <instance-data label=\"rpeakgain0\" type=\"float\"/>\n    <instance-data label=\"rpeakgain1\" type=\"float\"/>\n    <instance-data label=\"peaklimitdelay\" type=\"int\"/>\n    <instance-data label=\"ndelayptr\" type=\"unsigned int\"/>\n    <instance-data label=\"lastrgain\" type=\"float\"/>\n    <instance-data label=\"extra_maxlevel\" type=\"float\"/>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "fad_delay_1192.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<code>\n#include \"ladspa-util.h\"\n\n#define BASE_BUFFER 8 // Base buffer length (s)\n\t\t</code>\n\t</global>\n\n\t<plugin label=\"fadDelay\" id=\"1192\" class=\"DelayPlugin\">\n\t\t<name>Fractionally Addressed Delay Line</name>\n\t\t<p>A fixed ring buffer delay implementation. Has different dynamics to a normal delay, more suitable for certain things.</p>\n\t\t<p>Changes in delay length are generally more pleasing, but delays >2s long have reduced sound quality.</p>\n\n\t\t<callback event=\"instantiate\"><![CDATA[\n\t\t\tunsigned int min_bs;\n\n\t\t\tsample_rate = s_rate;\n\t\t\tmin_bs = BASE_BUFFER * s_rate;\n\t\t\tfor (buffer_size = 4096; buffer_size < min_bs;\n\t\t\t     buffer_size *= 2);\n\t\t\tbuffer = calloc(buffer_size, sizeof(LADSPA_Data));\n\t\t\tbuffer_mask = buffer_size - 1;\n\t\t\tphase = 0;\n\t\t\tlast_phase = 0;\n\t\t\tlast_in = 0.0f;\n\t\t]]></callback>\n\n\t\t<callback event=\"activate\">\n\t\t\tint i;\n\n\t\t\tfor (i = 0; i &lt; buffer_size; i++) {\n\t\t\t\tbuffer[i] = 0;\n\t\t\t}\n\t\t\tphase = 0;\n\t\t\tlast_phase = 0;\n\t\t\tlast_in = 0.0f;\n\t\t</callback>\n\n\t\t<callback event=\"cleanup\">\n\t\t\tfree(plugin_data->buffer);\n\t\t</callback>\n\n\t\t<callback event=\"run\"><![CDATA[\nlong int pos;\nfloat increment = (float)buffer_size / ((float)sample_rate *\n\t\t\t\t\tf_max(fabs(delay), 0.01));\nfloat lin_int, lin_inc;\nint track;\nint fph;\nLADSPA_Data out;\nconst float fb = DB_CO(fb_db);\n\nfor (pos = 0; pos < sample_count; pos++) {\n\tfph = f_round(floor(phase));\n\tlast_phase = fph;\n\tlin_int = phase - (float)fph;\n\tout = LIN_INTERP(lin_int, buffer[(fph+1) & buffer_mask],\n\t buffer[(fph+2) & buffer_mask]);\n\tphase += increment;\n\tlin_inc = 1.0f / (floor(phase) - last_phase + 1);\n\tlin_inc = lin_inc > 1.0f ? 1.0f : lin_inc;\n\tlin_int = 0.0f;\n\tfor (track = last_phase; track < phase; track++) {\n\t\tlin_int += lin_inc;\n\t\tbuffer[track % buffer_size] = out * fb +\n\t\t LIN_INTERP(lin_int, last_in, input[pos]);\n\t}\n\tlast_in = input[pos];\n\tbuffer_write(output[pos], out);\n\tif (phase >= buffer_size) {\n\t\tphase -= buffer_size;\n\t}\n}\n\n// Store current phase in instance\nplugin_data->phase = phase;\nplugin_data->last_phase = last_phase;\nplugin_data->last_in = last_in;\n\t\t]]></callback>\n\n\t\t<port label=\"delay\" dir=\"input\" type=\"control\" hint=\"default_1\">\n\t\t\t<name>Delay (seconds)</name>\n\t\t\t<p>The neutral delay time is 2 seconds. Times above 2 seconds will have reduced quality and times below will have increased CPU usage.</p>\n\t\t\t<range min=\"0.1\" max=\"10\"/>\n\t\t</port>\n\n\t\t<port label=\"fb_db\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Feedback (dB)</name>\n\t\t\t<range min=\"-70\" max=\"0\"/>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n\n\t\t<instance-data label=\"buffer\" type=\"LADSPA_Data *\"/>\n\t\t<instance-data label=\"phase\" type=\"float\"/>\n\t\t<instance-data label=\"last_phase\" type=\"int\"/>\n\t\t<instance-data label=\"last_in\" type=\"LADSPA_Data\"/>\n\t\t<instance-data label=\"buffer_size\" type=\"unsigned long\"/>\n\t\t<instance-data label=\"buffer_mask\" type=\"unsigned long\"/>\n\t\t<instance-data label=\"sample_rate\" type=\"long\"/>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "fast_lookahead_limiter_1913.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"ladspa-util.h\"\n\n      //#define DEBUG\n\n      #define NUM_CHUNKS 16\n      #define BUFFER_TIME 0.0053\n\n      #ifdef DEBUG\n\t#include \"stdio.h\"\n      #endif\n    </code>\n  </global>\n\n  <plugin label=\"fastLookaheadLimiter\" id=\"1913\" class=\"LimiterPlugin\">\n    <name>Fast Lookahead limiter</name>\n    <p>This is a limiter with an attack time of 5ms. It adds just over 5ms of\nlatency to the input signal, but it guarantees that there will be no signals\nover the limit, and tries to get the minimum amount of distortion.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      fs = s_rate;\n      buffer_len = 128;\n      buffer_pos = 0;\n\n      /* Find size for power-of-two interleaved delay buffer */\n      while(buffer_len < fs * BUFFER_TIME * 2) {\n        buffer_len *= 2;\n      }\n      buffer = calloc(buffer_len, sizeof(float));\n      delay = (int)(0.005 * fs);\n\n      chunk_pos = 0;\n      chunk_num = 0;\n\n      /* find a chunk size (in smaples) thats roughly 0.5ms */\n      chunk_size = s_rate / 2000; \n      chunks = calloc(NUM_CHUNKS, sizeof(float));\n\n      peak = 0.0f;\n      atten = 1.0f;\n      atten_lp = 1.0f;\n      delta = 0.0f;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      memset(buffer, 0, NUM_CHUNKS * sizeof(float));\n\n      chunk_pos = 0;\n      chunk_num = 0;\n      peak = 0.0f;\n      atten = 1.0f;\n      atten_lp = 1.0f;\n      delta = 0.0f;\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      const float max = DB_CO(limit);\n      const float trim = DB_CO(ingain);\n      float sig;\n      unsigned int i;\n\n      #ifdef DEBUG\n      float clip = 0.0, clipp = 0.0;\n      int clipc = 0;\n      #endif\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tif (chunk_pos++ == chunk_size) {\n\t  /* we've got a full chunk */\n         \n\t  delta = (1.0f - atten) / (fs * release);\n\t  round_to_zero(&delta);\n\t  for (i=0; i<10; i++) {\n\t    const int p = (chunk_num - 9 + i) & (NUM_CHUNKS - 1);\n            const float this_delta = (max / chunks[p] - atten) /\n\t\t\t\t      ((float)(i+1) * fs * 0.0005f + 1.0f);\n\n\t    if (this_delta < delta) {\n\t      delta = this_delta;\n\t    }\n          }\n\n          chunks[chunk_num++ & (NUM_CHUNKS - 1)] = peak;\n\t  peak = 0.0f;\n\t  chunk_pos = 0;\n        }\n\n\tbuffer[(buffer_pos * 2) & (buffer_len - 1)] =     in_1[pos] * trim\n\t\t\t\t\t\t\t+ 1.0e-30;\n\tbuffer[(buffer_pos * 2 + 1) & (buffer_len - 1)] = in_2[pos] * trim\n\t\t\t\t\t\t\t+ 1.0e-30;\n\n\tsig = fabs(in_1[pos]) > fabs(in_2[pos]) ? fabs(in_1[pos]) :\n\t\tfabs(in_2[pos]);\n\tsig += 1.0e-30;\n\tif (sig * trim > peak) {\n\t  peak = sig * trim;\n\t}\n\t//round_to_zero(&peak);\n\t//round_to_zero(&sig);\n\n\tatten += delta;\n\tatten_lp = atten * 0.1f + atten_lp * 0.9f;\n\t//round_to_zero(&atten_lp);\n\tif (delta > 0.0f && atten > 1.0f) {\n\t  atten = 1.0f;\n\t  delta = 0.0f;\n\t}\n\n\tbuffer_write(out_1[pos], buffer[(buffer_pos * 2 - delay * 2) &\n\t\t\t\t\t(buffer_len - 1)] * atten_lp);\n\tbuffer_write(out_2[pos], buffer[(buffer_pos * 2 - delay * 2 + 1) &\n\t\t\t\t\t(buffer_len - 1)] * atten_lp);\n\tround_to_zero(&out_1[pos]);\n\tround_to_zero(&out_2[pos]);\n\n\tif (out_1[pos] < -max) {\n          #ifdef DEBUG\n\t  clip += 20.0*log10(out_1[pos] / -max);\n\t  clipc++;\n          if (fabs(out_1[pos] - max) > clipp) {\n            clipp = fabs(out_1[pos] / -max);\n          }\n          #endif\n\t  buffer_write(out_1[pos], -max);\n\t} else if (out_1[pos] > max) {\n          #ifdef DEBUG\n\t  clip += 20.0*log10(out_1[pos] / max);\n\t  clipc++;\n          if (fabs(out_1[pos] - max) > clipp) {\n            clipp = fabs(out_1[pos] / max);\n          }\n          #endif\n\t  buffer_write(out_1[pos], max);\n\t}\n\tif (out_2[pos] < -max) {\n          #ifdef DEBUG\n\t  clip += 20.0*log10(out_2[pos] / -max);\n\t  clipc++;\n          if (fabs(out_2[pos] - max) > clipp) {\n            clipp = fabs(out_2[pos] / -max);\n          }\n          #endif\n\t  buffer_write(out_2[pos], -max);\n\t} else if (out_2[pos] > max) {\n          #ifdef DEBUG\n\t  clip += 20.0*log10(out_2[pos] / max);\n\t  clipc++;\n          if (fabs(out_2[pos] - max) > clipp) {\n            clipp = fabs(out_2[pos] / max);\n          }\n          #endif\n\t  buffer_write(out_2[pos], max);\n\t}\n\n\tbuffer_pos++;\n      }\n\n      #ifdef DEBUG\n      if (clipc > 0) {\n        printf(\"%d overs: %fdB avg, %fdB peak\\n\", clipc, clip/(float)clipc, 20.0*log10(clipp));\n      }\n      #endif\n\n      plugin_data->buffer_pos = buffer_pos;\n      plugin_data->peak = peak;\n      plugin_data->atten = atten;\n      plugin_data->atten_lp = atten_lp;\n      plugin_data->chunk_pos = chunk_pos;\n      plugin_data->chunk_num = chunk_num;\n\n      *(plugin_data->attenuation) = -CO_DB(atten);\n      *(plugin_data->latency) = delay;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n       free(plugin_data->buffer);\n       free(plugin_data->chunks);\n    ]]></callback>\n\n    <port label=\"ingain\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Input gain (dB)</name>\n      <p>Gain that is applied to the input stage. Can be used to trim gain to\nbring it roughly under the limit or to push the signal against the limit.</p>\n      <range min=\"-20\" max=\"20\"/>\n    </port>\n\n    <port label=\"limit\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Limit (dB)</name>\n      <p>The maximum output amplitude. Peaks over this level will be attenuated\nas smoothly as possible to bring them as close as possible to this level.</p>\n      <range min=\"-20\" max=\"0\"/>\n    </port>\n\n    <port label=\"release\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Release time (s)</name>\n      <p>The time taken for the limiters attenuation to return to 0 dB's</p>\n      <range min=\"0.01\" max=\"2.0\"/>\n    </port>\n\n    <port label=\"attenuation\" dir=\"output\" type=\"control\">\n      <name>Attenuation (dB)</name>\n      <p>The current attenuation of the signal coming out of the delay buffer.</p>\n      <range min=\"0\" max=\"70\"/>\n    </port>\n\n    <port label=\"in_1\" dir=\"input\" type=\"audio\">\n      <name>Input 1</name>\n    </port>\n\n    <port label=\"in_2\" dir=\"input\" type=\"audio\">\n      <name>Input 2</name>\n    </port>\n\n    <port label=\"out_1\" dir=\"output\" type=\"audio\">\n      <name>Output 1</name>\n    </port>\n\n    <port label=\"out_2\" dir=\"output\" type=\"audio\">\n      <name>Output 2</name>\n    </port>\n\n    <port label=\"latency\" dir=\"output\" type=\"control\">\n      <name>latency</name>\n    </port>\n\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_len\" type=\"unsigned int\" />\n    <instance-data label=\"buffer_pos\" type=\"unsigned int\" />\n    <instance-data label=\"fs\" type=\"unsigned int\" />\n    <instance-data label=\"atten\" type=\"float\" />\n    <instance-data label=\"atten_lp\" type=\"float\" />\n    <instance-data label=\"peak\" type=\"float\" />\n    <instance-data label=\"delta\" type=\"float\" />\n    <instance-data label=\"delay\" type=\"unsigned int\" />\n    <instance-data label=\"chunk_num\" type=\"unsigned int\" />\n    <instance-data label=\"chunk_pos\" type=\"unsigned int\" />\n    <instance-data label=\"chunk_size\" type=\"unsigned int\" />\n    <instance-data label=\"chunks\" type=\"float *\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "flanger_1191.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n#include \"ladspa-util.h\"\n    ]]></code>\n  </global>\n\n  <plugin label=\"flanger\" id=\"1191\" class=\"FlangerPlugin\">\n    <name>Flanger</name>\n    <p>A digital flanger implementation. Uses a novel zero excursion, controlled bandwidth modulation function, which should make the modulation less repetitive and noticeable.</p>\n    <p>This effect is similar in character to a phaser (see section \\ref{lfoPhaser}). The main difference is that a phaser sounds more regular and stable.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\nint min_size;\n\nsample_rate = s_rate;\n\nprev_law_peak = 0.0f;\nnext_law_peak = 1.0f;\nprev_law_pos = 0;\nnext_law_pos = 10;\n\nmin_size = sample_rate * 0.04f;\nfor (delay_size = 1024; delay_size < min_size; delay_size *= 2);\ndelay_tbl = malloc(sizeof(LADSPA_Data) * delay_size);\ndelay_pos = 0;\ncount = 0;\nold_d_base = 0;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\nmemset(delay_tbl, 0, sizeof(LADSPA_Data) * delay_size);\ndelay_pos = 0;\ncount = 0;\nold_d_base = 0;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\nfree(plugin_data->delay_tbl);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\nunsigned long pos;\nlong d_base, new_d_base;\nLADSPA_Data out;\nfloat delay_depth;\nfloat dp; // float delay position\nfloat dp_frac; // fractional part\nlong dp_idx; // integer delay index\nlong law_p; // period of law\nfloat frac = 0.0f, step; // Portion the way through the block\nfloat law; /* law amplitude */\nfloat n_ph, p_ph;\nconst float fb = f_clamp(feedback, -0.999f, 0.999f);\n\n// Set law params\nlaw_p = (float)sample_rate / law_freq;\nif (law_p < 1) {\n\tlaw_p = 1;\n}\n\n// Calculate base delay size in samples\nnew_d_base = (LIMIT(f_round(delay_base), 0, 25) * sample_rate) / 1000;\n\n// Calculate delay depth in samples\ndelay_depth = f_clamp(detune * (float)sample_rate * 0.001f, 0.0f, delay_size - new_d_base - 1.0f);\n\nstep = 1.0f/sample_count;\nfor (pos = 0; pos < sample_count; pos++) {\n\tif (count % law_p == 0) {\n\t\t// Value for amplitude of law peak\n\t\tnext_law_peak = (float)rand() / (float)RAND_MAX;\n\t\tnext_law_pos = count + law_p;\n\t} else if (count % law_p == law_p / 2) {\n\t\t// Value for amplitude of law peak\n\t\tprev_law_peak = (float)rand() / (float)RAND_MAX;\n\t\tprev_law_pos = count + law_p;\n\t}\n\n\t// Calculate position in delay table\n\td_base = LIN_INTERP(frac, old_d_base, new_d_base);\n\tn_ph = (float)(law_p - labs(next_law_pos - count))/(float)law_p;\n\tp_ph = n_ph + 0.5f;\n\twhile (p_ph > 1.0f) {\n\t\tp_ph -= 1.0f;\n\t}\n\tlaw = f_sin_sq(3.1415926f*p_ph)*prev_law_peak +\n\t\tf_sin_sq(3.1415926f*n_ph)*next_law_peak;\n\n\tdp = (float)(delay_pos - d_base) - (delay_depth * law);\n\t// Get the integer part\n\tdp_idx = f_round(dp - 0.5f);\n\t// Get the fractional part\n\tdp_frac = dp - dp_idx;\n\n\t// Accumulate into output buffer\n\tout = cube_interp(dp_frac, delay_tbl[(dp_idx-1) & (delay_size-1)], delay_tbl[dp_idx & (delay_size-1)], delay_tbl[(dp_idx+1) & (delay_size-1)], delay_tbl[(dp_idx+2) & (delay_size-1)]);\n\n\t// Store new delayed value\n\tdelay_tbl[delay_pos] = flush_to_zero(input[pos] + (fb * out));\n\t// Sometimes the delay can pick up NaN values, I'm not sure why\n\t// and this is easier than fixing it\n\tif (isnan(delay_tbl[delay_pos])) {\n\t\tdelay_tbl[delay_pos] = 0.0f;\n\t}\n\n\tout = f_clamp(delay_tbl[delay_pos] * 0.707f, -1.0, 1.0);\n\tbuffer_write(output[pos], out);\n\n\tfrac += step;\n\tdelay_pos = (delay_pos + 1) & (delay_size-1);\n\n\tcount++;\n}\n\nplugin_data->count = count;\nplugin_data->prev_law_peak = prev_law_peak;\nplugin_data->next_law_peak = next_law_peak;\nplugin_data->prev_law_pos = prev_law_pos;\nplugin_data->next_law_pos = next_law_pos;\nplugin_data->delay_pos = delay_pos;\nplugin_data->old_d_base = new_d_base;\n    ]]></callback>\n\n    <port label=\"delay_base\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Delay base (ms)</name>\n      <range min=\"0.1\" max=\"25\"/>\n      <p>This is the offset from the input time that the detune delay moves around.</p>\n      <p>10 is probably a good starting value.</p>\n    </port>\n\n    <port label=\"detune\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Max slowdown (ms)</name>\n      <range min=\"0\" max=\"10\"/>\n      <p>This is the maximum delay that will be applied to the delayed signal, relative to the dry signal.</p>\n    </port>\n\n    <port label=\"law_freq\" dir=\"input\" type=\"control\" hint=\"default_low,logarithmic\">\n      <name>LFO frequency (Hz)</name>\n      <range min=\"0.05\" max=\"100\"/>\n      <p>This is the core frequency that the 'LFO' will move at. The LFO isn't actually an oscillator, but it does vary periodically.</p>\n    </port>\n\n    <port label=\"feedback\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Feedback</name>\n      <range min=\"-1\" max=\"1\"/>\n      <p>Feedback applied from the output to the input, increases the depth of the effect, but makes it sound less like a real flanger.</p>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"sample_rate\" type=\"long\"/>\n    <instance-data label=\"count\" type=\"long\"/>\n    <instance-data label=\"prev_law_peak\" type=\"float\"/>\n    <instance-data label=\"next_law_peak\" type=\"float\"/>\n    <instance-data label=\"prev_law_pos\" type=\"int\"/>\n    <instance-data label=\"next_law_pos\" type=\"int\"/>\n    <instance-data label=\"delay_tbl\" type=\"LADSPA_Data *\"/>\n    <instance-data label=\"delay_pos\" type=\"long\"/>\n    <instance-data label=\"delay_size\" type=\"long\"/>\n    <instance-data label=\"old_d_base\" type=\"long\"/>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "fm_osc_1415.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"ladspa-util.h\"\n      #include \"util/blo.h\"\n    </code>\n  </global>\n\n  <plugin label=\"fmOsc\" id=\"1415\" class=\"OscillatorPlugin\">\n    <name>FM Oscillator</name>\n\n    <callback event=\"instantiate\"><![CDATA[\n      tables = blo_h_tables_new(1024);\n      osc = blo_h_new(tables, BLO_SINE, (float)s_rate);\n    ]]></callback>\n\n    <callback event=\"run\" unused-vars=\"tables\"><![CDATA[\n      unsigned long pos;\n      osc->wave = LIMIT(f_round(wave) - 1, 0, BLO_N_WAVES-1);\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tblo_hd_set_freq(osc, fm[pos]);\n        buffer_write(output[pos], blo_hd_run_cub(osc));\n      }\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      blo_h_tables_free(plugin_data->tables);\n      blo_h_free(plugin_data->osc);\n    ]]></callback>\n\n    <port label=\"wave\" dir=\"input\" type=\"control\" hint=\"integer,default_1\">\n      <name>Waveform (1=sin, 2=tri, 3=squ, 4=saw)</name>\n      <p>The shape of the waveform.</p>\n      <p><![CDATA[\n\t\\begin{tabular}{|r|l|}\n\t\\hline\n\tValue & Waveform \\\\\n\t\\hline \\hline\n\t1 & Sine \\\\\n\t2 & Triangle \\\\\n\t3 & Square \\\\\n\t4 & Saw \\\\\n        \\hline\n\t\\end{tabular}\n      ]]></p>\n      <range min=\"1\" max=\"BLO_N_WAVES\"/>\n    </port>\n\n    <port label=\"fm\" dir=\"input\" type=\"audio\" hint=\"sample_rate,default_440\">\n      <name>Frequency (Hz)</name>\n      <p>The frequency of the output (in Hertz).</p>\n      <range min=\"-0.25\" max=\"0.25\"/>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"tables\" type=\"blo_h_tables *\" />\n    <instance-data label=\"osc\" type=\"blo_h_osc *\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "foldover_1213.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n  </global>\n\n  <plugin label=\"foldover\" id=\"1213\" class=\"DistortionPlugin\">\n    <name>Foldover distortion</name>\n    <p>Uses a sinwave approximation to simulate valve style foldover distortion.</p>\n    <p>Probably should have a DC offset remover on the output, but it's not always necessary.</p>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float x;\n      const float drive = drive_p + 1.0f;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tx = input[pos] * drive + push;\n        buffer_write(output[pos], 1.5f * x - 0.5f * x * x * x);\n      }\n    ]]></callback>\n\n    <port label=\"drive_p\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Drive</name>\n      <range min=\"0\" max=\"1\"/>\n      <p>Controls the degree of distortion.</p>\n    </port>\n\n    <port label=\"push\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Skew</name>\n      <range min=\"0\" max=\"1\"/>\n      <p>Controls the asymmetry of the waveform.</p>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "foverdrive_1196.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t</global>\n\n\t<plugin label=\"foverdrive\" id=\"1196\" class=\"DistortionPlugin\">\n\t\t<name>Fast overdrive</name>\n\t\t<p>A simple overdrive. Compresses the extreme peaks to make a sound similar to an overdriven amplifier.</p>\n\n\t\t<callback event=\"run\">\n\t\t\tunsigned long pos;\n\t\t\tconst float drivem1 = drive - 1.0f;\n\n\t\t\tfor (pos = 0; pos &lt; sample_count; pos++) {\n\t\t\t\tLADSPA_Data x = input[pos];\n\t\t\t\tconst float fx = fabs(x);\n\t\t\t\tbuffer_write(output[pos], x*(fx + drive)/(x*x + drivem1*fx + 1.0f));\n\t\t\t}\n\t\t</callback>\n\n\t\t<port label=\"drive\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n\t\t\t<name>Drive level</name>\n\t\t\t<range min=\"1\" max=\"3\"/>\n\t\t\t<p>Controls the point at which the signal starts to distort, and the degree of distortion.</p>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "freq_tracker_1418.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"ladspa-util.h\"\n    ]]></code>\n  </global>\n\n  <plugin label=\"freqTracker\" id=\"1418\" class=\"FrequencyMeterPlugin\">\n    <name>Frequency tracker</name>\n\n    <callback event=\"instantiate\"><![CDATA[\n      fs = s_rate;\n      f = 0.0f;\n      fo = 0.0f;\n      cross_time = 0;\n      last_amp = 0.0f;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      cross_time = 0;\n      f = 0.0f;\n      fo = 0.0f;\n      last_amp = 0.0f;\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float xm1 = last_amp;\n      const float damp_lp = (1.0f - speed) * 0.9f;\n      const float damp_lpi = 1.0f - damp_lp;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tif (input[pos] < 0.0f && xm1 > 0.0f) {\n\t  if (cross_time > 3.0f) {\n\t    f = fs / ((float)cross_time * 2.0f);\n\t  }\n\t  cross_time = 0;\n\t}\n\txm1 = input[pos];\n\tcross_time++;\n\tfo = fo * damp_lp + f * damp_lpi;\n\tfo = flush_to_zero(fo);\n\tbuffer_write(freq[pos], fo);\n      }\n\n      plugin_data->last_amp = xm1;\n      plugin_data->fo = fo;\n      plugin_data->f = f;\n      plugin_data->cross_time = cross_time;\n    ]]></callback>\n\n    <port label=\"speed\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Tracking speed</name>\n      <p>This controls the level of damping applied to the output.</p>\n      <p>High values will make the frequency output jump around, low values will make it a bit slow to respond.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"freq\" dir=\"output\" type=\"audio\">\n      <name>Frequency (Hz)</name>\n    </port>\n\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"cross_time\" type=\"int\" />\n    <instance-data label=\"last_amp\" type=\"LADSPA_Data\" />\n    <instance-data label=\"f\" type=\"LADSPA_Data\" />\n    <instance-data label=\"fo\" type=\"LADSPA_Data\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "gate_1410.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"ladspa-util.h\"\n      #include \"util/biquad.h\"\n\n      #define ENV_TR 0.0001f\n\n      #define CLOSED  1\n      #define OPENING 2\n      #define OPEN    3\n      #define CLOSING 4\n    ]]></code>\n  </global>\n\n  <plugin label=\"gate\" id=\"1410\" class=\"GatePlugin\">\n    <name>Gate</name>\n    <p>The parameters are copied from the Drawmer DS-201, but I've never used one, so if someone out there has one, please tell me if it behaves differently.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      fs = s_rate;\n      env = 0.0f;\n      gate = 0.0f;\n      state = CLOSED;\n      hold_count = 0;\n\n      lf = malloc(sizeof(biquad));\n      hf = malloc(sizeof(biquad));\n      biquad_init(lf);\n      biquad_init(hf);\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      env = 0.0f;\n      gate = 0.0f;\n      state = CLOSED;\n      biquad_init(lf);\n      biquad_init(hf);\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->lf);\n      free(plugin_data->hf);\n    ]]></callback>\n\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float cut = DB_CO(range);\n      float t_level = DB_CO(threshold);\n      float a_rate = 1000.0f / (attack * fs);\n      float d_rate = 1000.0f / (decay * fs);\n      float post_filter, apost_filter;\n      int op = f_round(select);\n\n      ls_set_params(lf, lf_fc, -40.0f, 0.6f, fs);\n      hs_set_params(hf, hf_fc, -50.0f, 0.6f, fs);\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tpost_filter = biquad_run(lf, input[pos]);\n\tpost_filter = biquad_run(hf, post_filter);\n\tapost_filter = fabs(post_filter);\n\n        if (apost_filter > env) {\n          env = apost_filter;\n        } else {\n          env = apost_filter * ENV_TR + env * (1.0f - ENV_TR);\n        }\n\n\tif (state == CLOSED) {\n\t  if (env >= t_level) {\n\t    state = OPENING;\n\t  }\n        } else if (state == OPENING) {\n\t  gate += a_rate;\n\t  if (gate >= 1.0f) {\n\t    gate = 1.0f;\n\t    state = OPEN;\n\t    hold_count = f_round(hold * fs * 0.001f);\n\t    plugin_data->hold_count = hold_count;\n\t  }\n        } else if (state == OPEN) {\n\t  if (hold_count <= 0) {\n\t    if (env < t_level) {\n\t      state = CLOSING;\n            }\n\t  } else {\n\t    hold_count--;\n\t  }\n\t} else if (state == CLOSING) {\n\t  gate -= d_rate;\n\t  if (env >= t_level) {\n\t    state = OPENING;\n\t  } else if (gate <= 0.0f) {\n\t    gate = 0.0f;\n\t    state = CLOSED;\n\t  }\n\t}\n\n\tif (op == 0) {\n          buffer_write(output[pos], input[pos] * (cut * (1.0f - gate) + gate));\n\t} else if (op == -1) {\n          buffer_write(output[pos], post_filter);\n\t} else {\n\t  buffer_write(output[pos], input[pos]);\n\t}\n      }\n\n      plugin_data->env = env;\n      plugin_data->gate = gate;\n      plugin_data->state = state;\n      plugin_data->hold_count = hold_count;\n    ]]></callback>\n\n    <port label=\"lf_fc\" dir=\"input\" type=\"control\" hint=\"sample_rate,default_minimum\">\n      <name>LF key filter (Hz)</name>\n      <p>Controls the cutoff of the low frequency filter (highpass).</p>\n      <range min=\"0.0007f\" max=\"0.1\"/>\n    </port>\n\n    <port label=\"hf_fc\" dir=\"input\" type=\"control\" hint=\"sample_rate,default_maximum\">\n      <name>HF key filter (Hz)</name>\n      <p>Controls the cutoff of the high frequency filter (lowpass).</p>\n      <range min=\"0.005f\" max=\"0.49\"/>\n    </port>\n\n    <port label=\"threshold\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n      <name>Threshold (dB)</name>\n      <p>Controls the level at which the gate will open.</p>\n      <range min=\"-70\" max=\"+20\"/>\n    </port>\n\n    <port label=\"attack\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Attack (ms)</name>\n      <p>Controls the time the gate will take to open fully.</p>\n      <range min=\"0.01\" max=\"1000\"/>\n    </port>\n\n    <port label=\"hold\" dir=\"input\" type=\"control\" hint=\"default_high\">\n      <name>Hold (ms)</name>\n      <p>Controls the minimum time the gate will stay open for.</p>\n      <range min=\"2\" max=\"2000\"/>\n    </port>\n\n    <port label=\"decay\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Decay (ms)</name>\n      <p>Controls the time the gate will take to close fully.</p>\n      <range min=\"2\" max=\"4000\"/>\n    </port>\n\n    <port label=\"range\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n      <name>Range (dB)</name>\n      <p>Controls the difference between the gate's open and closed state.</p>\n      <range min=\"-90\" max=\"0\"/>\n    </port>\n\n    <port label=\"select\" dir=\"input\" type=\"control\" hint=\"integer,default_0\">\n      <name>Output select (-1 = key listen, 0 = gate, 1 = bypass)</name>\n      <p>Controls output monitor. -1 is the output of the key filters (so you can check what is being gated on). 0 is the normal, gated output. 1 is bypass mode.</p>\n      <range min=\"-1\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"env\" type=\"float\" />\n    <instance-data label=\"gate\" type=\"float\" />\n    <instance-data label=\"state\" type=\"int\" />\n    <instance-data label=\"hold_count\" type=\"int\" />\n    <instance-data label=\"lf\" type=\"biquad *\" />\n    <instance-data label=\"hf\" type=\"biquad *\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "gate_1921.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"ladspa-util.h\"\n      #include \"util/biquad.h\"\n\n      #define ENV_TR 0.0001f\n\n      #define CLOSED  1\n      #define OPENING 2\n      #define OPEN    3\n      #define CLOSING 4\n    ]]></code>\n  </global>\n\n  <plugin label=\"gate\" id=\"1921\" class=\"GatePlugin\">\n    <name>Gate</name>\n    <p>The parameters are copied from the Drawmer DS-201, but I've never used one, so if someone out there has one, please tell me if it behaves differently.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      fs = s_rate;\n      env = 0.0f;\n      gate = 0.0f;\n      state = CLOSED;\n      hold_count = 0;\n\n      lf = malloc(sizeof(biquad));\n      hf = malloc(sizeof(biquad));\n      biquad_init(lf);\n      biquad_init(hf);\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      env = 0.0f;\n      gate = 0.0f;\n      state = CLOSED;\n      biquad_init(lf);\n      biquad_init(hf);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float cut = DB_CO(range);\n      float t_level = DB_CO(threshold);\n      float a_rate = 1000.0f / (attack * fs);\n      float d_rate = 1000.0f / (decay * fs);\n      float post_filter, apost_filter;\n      int op = f_round(select);\n\n      ls_set_params(lf, lf_fc, -40.0f, 0.6f, fs);\n      hs_set_params(hf, hf_fc, -50.0f, 0.6f, fs);\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tpost_filter = biquad_run(lf, input[pos]);\n\tpost_filter = biquad_run(hf, post_filter);\n\tapost_filter = fabs(post_filter);\n\n        if (apost_filter > env) {\n          env = apost_filter;\n        } else {\n          env = apost_filter * ENV_TR + env * (1.0f - ENV_TR);\n        }\n\n\tif (state == CLOSED) {\n\t  if (env >= t_level) {\n\t    state = OPENING;\n\t  }\n        } else if (state == OPENING) {\n\t  gate += a_rate;\n\t  if (gate >= 1.0f) {\n\t    gate = 1.0f;\n\t    state = OPEN;\n\t    hold_count = f_round(hold * fs * 0.001f);\n\t    plugin_data->hold_count = hold_count;\n\t  }\n        } else if (state == OPEN) {\n\t  if (hold_count <= 0) {\n\t    if (env < t_level) {\n\t      state = CLOSING;\n            }\n\t  } else {\n\t    hold_count--;\n\t  }\n\t} else if (state == CLOSING) {\n\t  gate -= d_rate;\n\t  if (env >= t_level) {\n\t    state = OPENING;\n\t  } else if (gate <= 0.0f) {\n\t    gate = 0.0f;\n\t    state = CLOSED;\n\t  }\n\t}\n\n\tif (op == 0) {\n          buffer_write(output[pos], input[pos] * (cut * (1.0f - gate) + gate));\n\t} else if (op == -1) {\n          buffer_write(output[pos], post_filter);\n\t} else {\n\t  buffer_write(output[pos], input[pos]);\n\t}\n      }\n      *(plugin_data->level) = CO_DB(env);\n\n      plugin_data->env = env;\n      plugin_data->gate = gate;\n      plugin_data->state = state;\n      plugin_data->hold_count = hold_count;\n    ]]></callback>\n\n    <port label=\"lf_fc\" dir=\"input\" type=\"control\" hint=\"sample_rate,default_minimum\">\n      <name>LF key filter (Hz)</name>\n      <p>Controls the cutoff of the low frequency filter (highpass).</p>\n      <range min=\"0.0007f\" max=\"0.1\"/>\n    </port>\n\n    <port label=\"hf_fc\" dir=\"input\" type=\"control\" hint=\"sample_rate,default_maximum\">\n      <name>HF key filter (Hz)</name>\n      <p>Controls the cutoff of the high frequency filter (lowpass).</p>\n      <range min=\"0.005f\" max=\"0.49\"/>\n    </port>\n\n    <port label=\"level\" dir=\"output\" type=\"control\">\n      <name>Key level (dB)</name>\n      <p>Shows the current level of the key.</p>\n      <range min=\"-70\" max=\"+20\"/>\n    </port>\n\n    <port label=\"threshold\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n      <name>Threshold (dB)</name>\n      <p>Controls the level at which the gate will open.</p>\n      <range min=\"-70\" max=\"+20\"/>\n    </port>\n\n    <port label=\"attack\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Attack (ms)</name>\n      <p>Controls the time the gate will take to open fully.</p>\n      <range min=\"0.01\" max=\"1000\"/>\n    </port>\n\n    <port label=\"hold\" dir=\"input\" type=\"control\" hint=\"default_high\">\n      <name>Hold (ms)</name>\n      <p>Controls the minimum time the gate will stay open for.</p>\n      <range min=\"2\" max=\"2000\"/>\n    </port>\n\n    <port label=\"decay\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Decay (ms)</name>\n      <p>Controls the time the gate will take to close fully.</p>\n      <range min=\"2\" max=\"4000\"/>\n    </port>\n\n    <port label=\"range\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n      <name>Range (dB)</name>\n      <p>Controls the difference between the gate's open and closed state.</p>\n      <range min=\"-90\" max=\"0\"/>\n    </port>\n\n    <port label=\"select\" dir=\"input\" type=\"control\" hint=\"integer,default_0\">\n      <name>Output select (-1 = key listen, 0 = gate, 1 = bypass)</name>\n      <p>Controls output monitor. -1 is the output of the key filters (so you can check what is being gated on). 0 is the normal, gated output. 1 is bypass mode.</p>\n      <range min=\"-1\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"env\" type=\"float\" />\n    <instance-data label=\"gate\" type=\"float\" />\n    <instance-data label=\"state\" type=\"int\" />\n    <instance-data label=\"hold_count\" type=\"int\" />\n    <instance-data label=\"lf\" type=\"biquad *\" />\n    <instance-data label=\"hf\" type=\"biquad *\" />\n  </plugin>\n\n  <plugin label=\"stereo_gate\" id=\"1922\" class=\"GatePlugin\">\n    <name>Stereo Gate</name>\n    <p>Derived from Steve Harris' gate plugin</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      fs = s_rate;\n      env = 0.0f;\n      gate = 0.0f;\n      state = CLOSED;\n      hold_count = 0;\n\n      lf = malloc(sizeof(biquad));\n      hf = malloc(sizeof(biquad));\n      biquad_init(lf);\n      biquad_init(hf);\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      env = 0.0f;\n      gate = 0.0f;\n      state = CLOSED;\n      biquad_init(lf);\n      biquad_init(hf);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float cut = DB_CO(range);\n      float t_level = DB_CO(threshold);\n      float a_rate = 1000.0f / (attack * fs);\n      float d_rate = 1000.0f / (decay * fs);\n      float post_filter, apost_filter;\n      float sample;\n      int op = f_round(select);\n\n      ls_set_params(lf, lf_fc, -40.0f, 0.6f, fs);\n      hs_set_params(hf, hf_fc, -50.0f, 0.6f, fs);\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tsample = (in1[pos] + in2[pos]) / 2.0f;\n\tpost_filter = biquad_run(lf, sample);\n\tpost_filter = biquad_run(hf, post_filter);\n\tapost_filter = fabs(post_filter);\n\n        if (apost_filter > env) {\n          env = apost_filter;\n        } else {\n          env = apost_filter * ENV_TR + env * (1.0f - ENV_TR);\n        }\n\n\tif (state == CLOSED) {\n\t  if (env >= t_level) {\n\t    state = OPENING;\n\t  }\n        } else if (state == OPENING) {\n\t  gate += a_rate;\n\t  if (gate >= 1.0f) {\n\t    gate = 1.0f;\n\t    state = OPEN;\n\t    hold_count = f_round(hold * fs * 0.001f);\n\t    plugin_data->hold_count = hold_count;\n\t  }\n        } else if (state == OPEN) {\n\t  if (hold_count <= 0) {\n\t    if (env < t_level) {\n\t      state = CLOSING;\n            }\n\t  } else {\n\t    hold_count--;\n\t  }\n\t} else if (state == CLOSING) {\n\t  gate -= d_rate;\n\t  if (env >= t_level) {\n\t    state = OPENING;\n\t  } else if (gate <= 0.0f) {\n\t    gate = 0.0f;\n\t    state = CLOSED;\n\t  }\n\t}\n\n\tif (op == 0) {\n          buffer_write(out1[pos], in1[pos] * (cut * (1.0f - gate) + gate));\n          buffer_write(out2[pos], in2[pos] * (cut * (1.0f - gate) + gate));\n\t} else if (op == -1) {\n          buffer_write(out1[pos], post_filter);\n          buffer_write(out2[pos], post_filter);\n\t} else {\n\t  buffer_write(out1[pos], in1[pos]);\n\t  buffer_write(out2[pos], in2[pos]);\n\t}\n      }\n      *(plugin_data->level) = CO_DB(env);\n\n      plugin_data->env = env;\n      plugin_data->gate = gate;\n      plugin_data->state = state;\n      plugin_data->hold_count = hold_count;\n    ]]></callback>\n\n    <port label=\"lf_fc\" dir=\"input\" type=\"control\" hint=\"sample_rate,default_minimum\">\n      <name>LF key filter (Hz)</name>\n      <p>Controls the cutoff of the low frequency filter (highpass).</p>\n      <range min=\"0.0007f\" max=\"0.1\"/>\n    </port>\n\n    <port label=\"hf_fc\" dir=\"input\" type=\"control\" hint=\"sample_rate,default_maximum\">\n      <name>HF key filter (Hz)</name>\n      <p>Controls the cutoff of the high frequency filter (lowpass).</p>\n      <range min=\"0.005f\" max=\"0.49\"/>\n    </port>\n\n    <port label=\"level\" dir=\"output\" type=\"control\">\n      <name>Key level (dB)</name>\n      <p>Shows the current level of the key.</p>\n      <range min=\"-70\" max=\"+20\"/>\n    </port>\n\n    <port label=\"threshold\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n      <name>Threshold (dB)</name>\n      <p>Controls the level at which the gate will open.</p>\n      <range min=\"-70\" max=\"+20\"/>\n    </port>\n\n    <port label=\"attack\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Attack (ms)</name>\n      <p>Controls the time the gate will take to open fully.</p>\n      <range min=\"0.01\" max=\"1000\"/>\n    </port>\n\n    <port label=\"hold\" dir=\"input\" type=\"control\" hint=\"default_high\">\n      <name>Hold (ms)</name>\n      <p>Controls the minimum time the gate will stay open for.</p>\n      <range min=\"2\" max=\"2000\"/>\n    </port>\n\n    <port label=\"decay\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Decay (ms)</name>\n      <p>Controls the time the gate will take to close fully.</p>\n      <range min=\"2\" max=\"4000\"/>\n    </port>\n\n    <port label=\"range\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n      <name>Range (dB)</name>\n      <p>Controls the difference between the gate's open and closed state.</p>\n      <range min=\"-90\" max=\"0\"/>\n    </port>\n\n    <port label=\"select\" dir=\"input\" type=\"control\" hint=\"integer,default_0\">\n      <name>Output select (-1 = key listen, 0 = gate, 1 = bypass)</name>\n      <p>Controls output monitor. -1 is the output of the key filters (so you can check what is being gated on). 0 is the normal, gated output. 1 is bypass mode.</p>\n      <range min=\"-1\" max=\"1\"/>\n    </port>\n\n    <port label=\"in1\" dir=\"input\" type=\"audio\">\n      <name>Input 1</name>\n    </port>\n\n    <port label=\"in2\" dir=\"input\" type=\"audio\">\n      <name>Input 2</name>\n    </port>\n\n    <port label=\"out1\" dir=\"output\" type=\"audio\">\n      <name>Output 1</name>\n    </port>\n\n    <port label=\"out2\" dir=\"output\" type=\"audio\">\n      <name>Output 2</name>\n    </port>\n\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"env\" type=\"float\" />\n    <instance-data label=\"gate\" type=\"float\" />\n    <instance-data label=\"state\" type=\"int\" />\n    <instance-data label=\"hold_count\" type=\"int\" />\n    <instance-data label=\"lf\" type=\"biquad *\" />\n    <instance-data label=\"hf\" type=\"biquad *\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "giant_flange_1437.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include <sys/types.h>\n      #include \"ladspa-util.h\"\n\n      #define INT_SCALE   16384.0f\n      /* INT_SCALE reciprocal includes factor of two scaling */\n      #define INT_SCALE_R 0.000030517578125f\n\n      #define MAX_AMP 1.0f\n      #define CLIP 0.8f\n      #define CLIP_A ((MAX_AMP - CLIP) * (MAX_AMP - CLIP))\n      #define CLIP_B (MAX_AMP - 2.0f * CLIP)\n    ]]></code>\n  </global>\n\n  <plugin label=\"giantFlange\" id=\"1437\" class=\"FlangerPlugin\">\n    <name>Giant flange</name>\n    <p>This is a fairly normal flanger but with excessively long delay times.\nRequested by Patrick Shirkey.</p>\n    <p>To cut down the memory requirements the internal delay buffer only has\n15bits of resolution, so there is no headroom, if you feed in signals over 0dB\nit will clip the output. There is code to soften the effect of the clipping,\nbut beware of it.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      int buffer_size = 32768;\n\n      fs = s_rate;\n      while (buffer_size < fs * 10.5f) {\n\tbuffer_size *= 2;\n      }\n      buffer = calloc(buffer_size, sizeof(int16_t));\n      buffer_mask = buffer_size - 1;\n      buffer_pos = 0;\n      x1 = 0.5f;\n      y1 = 0.0f;\n      x2 = 0.5f;\n      y2 = 0.0f;\n    ]]></callback>\n      \n    <callback event=\"activate\"><![CDATA[\n      memset(buffer, 0, (buffer_mask + 1) * sizeof(int16_t));\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      const float omega1 = 6.2831852f * (freq1 / fs);\n      const float omega2 = 6.2831852f * (freq2 / fs);\n      float fb;\n      float d1, d2;\n      float d1out, d2out;\n      float fbs;\n\n      if (feedback > 99.0f) {\n\tfb = 0.99f;\n      } else if (feedback < -99.0f) {\n\tfb = -0.99f;\n      } else {\n\tfb = feedback * 0.01f;\n      }\n\n      if (f_round(deldouble)) {\n        const float dr1 = delay1 * fs * 0.25f;\n        const float dr2 = delay2 * fs * 0.25f;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\t/* Write input into delay line */\n\tbuffer[buffer_pos] = f_round(input[pos] * INT_SCALE);\n\n\t/* Calcuate delays */\n\td1 = (x1 + 1.0f) * dr1;\n\td2 = (y2 + 1.0f) * dr2;\n\n\td1out = buffer[(buffer_pos - f_round(d1)) & buffer_mask] * INT_SCALE_R;\n\td2out = buffer[(buffer_pos - f_round(d2)) & buffer_mask] * INT_SCALE_R;\n\n\t/* Add feedback, must be done afterwards for case where delay = 0 */\n\tfbs = input[pos] + (d1out + d2out) * fb;\n\tif(fbs < CLIP && fbs > -CLIP) {\n\t  buffer[buffer_pos] = fbs * INT_SCALE;\n\t} else if (fbs > 0.0f) {\n\t  buffer[buffer_pos] = (MAX_AMP - (CLIP_A / (CLIP_B + fbs))) *\n\t\t\t\t\tINT_SCALE;\n\t} else {\n\t  buffer[buffer_pos] =  (MAX_AMP - (CLIP_A / (CLIP_B - fbs))) *\n\t\t\t\t\t-INT_SCALE;\n\t}\n\n\t/* Write output */\n\tbuffer_write(output[pos], LIN_INTERP(wet, input[pos], d1out + d2out));\n\n\tif (pos % 2) {\n\t  buffer_pos = (buffer_pos + 1) & buffer_mask;\n\t}\n\n\t/* Run LFOs */\n\tx1 -= omega1 * y1;\n\ty1 += omega1 * x1;\n\tx2 -= omega2 * y2;\n\ty2 += omega2 * x2;\n      }\n      } else {\n        const float dr1 = delay1 * fs * 0.5f;\n        const float dr2 = delay2 * fs * 0.5f;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\t/* Write input into delay line */\n\tbuffer[buffer_pos] = f_round(input[pos] * INT_SCALE);\n\n\t/* Calcuate delays */\n\td1 = (x1 + 1.0f) * dr1;\n\td2 = (y2 + 1.0f) * dr2;\n\n\td1out = buffer[(buffer_pos - f_round(d1)) & buffer_mask] * INT_SCALE_R;\n\td2out = buffer[(buffer_pos - f_round(d2)) & buffer_mask] * INT_SCALE_R;\n\n\t/* Add feedback, must be done afterwards for case where delay = 0 */\n\tfbs = input[pos] + (d1out + d2out) * fb;\n\tif(fbs < CLIP && fbs > -CLIP) {\n\t\tbuffer[buffer_pos] = fbs * INT_SCALE;\n\t} else if (fbs > 0.0f) {\n\t\tbuffer[buffer_pos] = (MAX_AMP - (CLIP_A / (CLIP_B + fbs))) *\n\t\t\t\t\tINT_SCALE;\n\t} else {\n\t\tbuffer[buffer_pos] =  (MAX_AMP - (CLIP_A / (CLIP_B - fbs))) *\n\t\t\t\t\t-INT_SCALE;\n\t}\n\n\t/* Write output */\n\tbuffer_write(output[pos], LIN_INTERP(wet, input[pos], d1out + d2out));\n\n\tbuffer_pos = (buffer_pos + 1) & buffer_mask;\n\n\t/* Run LFOs */\n\tx1 -= omega1 * y1;\n\ty1 += omega1 * x1;\n\tx2 -= omega2 * y2;\n\ty2 += omega2 * x2;\n      }\n      }\n\n      plugin_data->x1 = x1;\n      plugin_data->y1 = y1;\n      plugin_data->x2 = x2;\n      plugin_data->y2 = y2;\n      plugin_data->buffer_pos = buffer_pos;\n    ]]></callback>\n\n    <port label=\"deldouble\" dir=\"input\" type=\"control\" hint=\"default_0,toggled\">\n      <name>Double delay</name>\n      <p>doubles the length of the delays, this will reduce the sound quality.</p>\n    </port>\n\n    <port label=\"freq1\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>LFO frequency 1 (Hz)</name>\n      <p>The delay of the first LFO in seconds.</p>\n      <range min=\"0\" max=\"30.0\"/>\n    </port>\n\n    <port label=\"delay1\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Delay 1 range (s)</name>\n      <p>The delay range of the first LFO in seconds.</p>\n      <range min=\"0\" max=\"10.5\"/>\n    </port>\n\n    <port label=\"freq2\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>LFO frequency 2 (Hz)</name>\n      <p>The delay of the second LFO in seconds.</p>\n      <range min=\"0\" max=\"30.0\"/>\n    </port>\n\n    <port label=\"delay2\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Delay 2 range (s)</name>\n      <p>The delay range of the second LFO in seconds.</p>\n      <range min=\"0\" max=\"10.5\"/>\n    </port>\n\n    <port label=\"feedback\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Feedback</name>\n      <p>The amount of the delays output that is mixed back into the delay.</p>\n      <range min=\"-100\" max=\"100\"/>\n    </port>\n\n    <port label=\"wet\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Dry/Wet level</name>\n      <p>The amounts of the input and effect mixed to produce the output.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"buffer\" type=\"int16_t *\" />\n    <instance-data label=\"buffer_pos\" type=\"unsigned int\" />\n    <instance-data label=\"buffer_mask\" type=\"unsigned int\" />\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"x1\" type=\"float\" />\n    <instance-data label=\"y1\" type=\"float\" />\n    <instance-data label=\"x2\" type=\"float\" />\n    <instance-data label=\"y2\" type=\"float\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "gong_1424.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"util/waveguide_nl.h\"\n\n      #define RUN_WG(n, junct_a, junct_b) waveguide_nl_process(w[n], junct_a - out[n*2+1], junct_b - out[n*2], out+n*2, out+n*2+1)\n    </code>\n  </global>\n\n  <plugin label=\"gong\" id=\"1424\" class=\"SimulatorPlugin,GeneratorPlugin\">\n    <name>Gong model</name>\n    <p>A physical model of a metal gong.</p>\n    <p>Based on Josep Comajuncosas' gong explorer, which was built in Sync Modular, it uses 8 linear waveguides with nonlinear filters to model the gong surface.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      /* Max delay length for inner waveguides */\n      maxsize_i = (float)s_rate * 0.03643242f;\n      /* Max delay length for outer waveguides */\n      maxsize_o = (float)s_rate * 0.05722782f;\n\n      /* The waveguide structures */\n      w = malloc(8 * sizeof(waveguide_nl *));\n      w[0] = waveguide_nl_new(maxsize_i, 0.5, 0.0f, 0.0f);\n      w[1] = waveguide_nl_new(maxsize_i, 0.5, 0.0f, 0.0f);\n      w[2] = waveguide_nl_new(maxsize_i, 0.5, 0.0f, 0.0f);\n      w[3] = waveguide_nl_new(maxsize_i, 0.5, 0.0f, 0.0f);\n      w[4] = waveguide_nl_new(maxsize_o, 0.5, 0.0f, 0.0f);\n      w[5] = waveguide_nl_new(maxsize_o, 0.5, 0.0f, 0.0f);\n      w[6] = waveguide_nl_new(maxsize_o, 0.5, 0.0f, 0.0f);\n      w[7] = waveguide_nl_new(maxsize_o, 0.5, 0.0f, 0.0f);\n\n      /* Buffers to hold the currect deflections */\n      out = calloc(32, sizeof(float));\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      unsigned int i;\n\n      for (i = 0; i < 8; i++) {\n        waveguide_nl_reset(w[i]);\n      }\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      /* The a coef of the inner lowpass */\n      const float lpi = 1.0f - damp_i * 0.1423f;\n      /* The a coef of the outer lowpass */\n      const float lpo = 1.0f - damp_o * 0.19543f;\n\n      /* Set the parameters of the waveguides */\n      waveguide_nl_set_delay(w[0], maxsize_i * scale0);\n      waveguide_nl_set_ap(w[0], apa0, apb0);\n      waveguide_nl_set_delay(w[1], maxsize_i * scale1);\n      waveguide_nl_set_ap(w[1], apa1, apb1);\n      waveguide_nl_set_delay(w[2], maxsize_i * scale2);\n      waveguide_nl_set_ap(w[2], apa2, apb2);\n      waveguide_nl_set_delay(w[3], maxsize_i * scale3);\n      waveguide_nl_set_ap(w[3], apa3, apb3);\n      waveguide_nl_set_delay(w[4], maxsize_o * scale4);\n      waveguide_nl_set_ap(w[4], apa4, apb4);\n      waveguide_nl_set_delay(w[5], maxsize_o * scale5);\n      waveguide_nl_set_ap(w[5], apa5, apb5);\n      waveguide_nl_set_delay(w[6], maxsize_o * scale6);\n      waveguide_nl_set_ap(w[6], apa6, apb6);\n      waveguide_nl_set_delay(w[7], maxsize_o * scale7);\n      waveguide_nl_set_ap(w[7], apa7, apb7);\n\n      for (pos=0; pos<4; pos++) {\n\twaveguide_nl_set_fc(w[pos], lpi);\n      }\n      for (; pos<8; pos++) {\n\twaveguide_nl_set_fc(w[pos], lpo);\n      }\n\n      for (pos = 0; pos < sample_count; pos++) {\n        /* Calcualte the deflections at the wavejunctions\n           alpha is the centre, beta is north, gamma is east,\n           delta is south and epsilon is west */\n\tconst float alpha = (out[0] + out[2] + out[4] + out[6]) * 0.5f\n\t\t\t    + input[pos];\n\tconst float beta = (out[1] + out[9] + out[14]) * 0.666666666666f;\n\tconst float gamma = (out[3] + out[8] + out[11]) * 0.666666666666f;\n\tconst float delta = (out[5] + out[10] + out[13]) * 0.666666666666f;\n\tconst float epsilon = (out[7] + out[12] + out[15]) * 0.666666666666f;\n\n        /* Inject the energy at the junctions + reflections into the\n           waveguides (the macro gives the reflection calcs) */\n\tRUN_WG(0, beta, alpha);\n\tRUN_WG(1, gamma, alpha);\n\tRUN_WG(2, delta, alpha);\n\tRUN_WG(3, epsilon, alpha);\n\tRUN_WG(4, beta, gamma);\n\tRUN_WG(5, gamma, delta);\n\tRUN_WG(6, delta, epsilon);\n\tRUN_WG(7, epsilon, beta);\n\n        buffer_write(output[pos], (1.0f - micpos) * alpha + micpos * delta);\n      }\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      unsigned int i;\n\n      for (i = 0; i < 8; i++) {\n        waveguide_nl_free(plugin_data->w[i]);\n      }\n      free(plugin_data->w);\n      free(plugin_data->out);\n    ]]></callback>\n\n    <port label=\"damp_i\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Inner damping</name>\n      <p>Controls the degree of damping in the centre of the gong.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"damp_o\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Outer damping</name>\n      <p>Controls the degree of damping on the edge of the gong.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"micpos\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Mic position</name>\n      <p>Controls the vertical position of the \"microphone\", 0 is the centre and 1 is the edge.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"scale0\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Inner size 1</name>\n      <p>The size of the upper, inner waveguide.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apa0\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Inner stiffness 1 +</name>\n      <p>The stiffness of the gong against deflections in the positive direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apb0\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Inner stiffness 1 -</name>\n      <p>The stiffness of the gong against deflections in the negative direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"scale1\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Inner size 2</name>\n      <p>The size of the right, inner waveguide.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apa1\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Inner stiffness 2 +</name>\n      <p>The stiffness of the gong against deflections in the positive direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apb1\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Inner stiffness 2 -</name>\n      <p>The stiffness of the gong against deflections in the negative direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"scale2\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Inner size 3</name>\n      <p>The size of the lower, inner waveguide.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apa2\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Inner stiffness 3 +</name>\n      <p>The stiffness of the gong against deflections in the positive direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apb2\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Inner stiffness 3 -</name>\n      <p>The stiffness of the gong against deflections in the negative direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"scale3\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Inner size 4</name>\n      <p>The size of the left, inner waveguide.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apa3\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Inner stiffness 4 +</name>\n      <p>The stiffness of the gong against deflections in the positive direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apb3\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Inner stiffness 4 -</name>\n      <p>The stiffness of the gong against deflections in the negative direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"scale4\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Outer size 1</name>\n      <p>The size of the upper right, outer waveguide.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apa4\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Outer stiffness 1 +</name>\n      <p>The stiffness of the gong against deflections in the positive direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apb4\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Outer stiffness 1 -</name>\n      <p>The stiffness of the gong against deflections in the negative direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"scale5\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Outer size 2</name>\n      <p>The size of the lower right, outer waveguide.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apa5\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Outer stiffness 2 +</name>\n      <p>The stiffness of the gong against deflections in the positive direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apb5\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Outer stiffness 2 -</name>\n      <p>The stiffness of the gong against deflections in the negative direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"scale6\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Outer size 3</name>\n      <p>The size of the lower left, outer waveguide.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apa6\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Outer stiffness 3 +</name>\n      <p>The stiffness of the gong against deflections in the positive direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apb6\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Outer stiffness 3 -</name>\n      <p>The stiffness of the gong against deflections in the negative direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"scale7\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Outer size 4</name>\n      <p>The size of the upper left, outer waveguide.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apa7\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Outer stiffness 4 +</name>\n      <p>The stiffness of the gong against deflections in the positive direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"apb7\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Outer stiffness 4 -</name>\n      <p>The stiffness of the gong against deflections in the negative direction.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"w\" type=\"waveguide_nl **\" />\n    <instance-data label=\"out\" type=\"float *\" />\n    <instance-data label=\"maxsize_i\" type=\"int\" />\n    <instance-data label=\"maxsize_o\" type=\"int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "gong_beater_1439.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"ladspa-util.h\"\n    </code>\n  </global>\n\n  <plugin label=\"gongBeater\" id=\"1439\" class=\"GeneratorPlugin\">\n    <name>Gong beater</name>\n    <p>A plugin to simulator the action of a beater on a gong surface, used to trigger the gong physical model.</p>\n    <p>It is triggered by an impulse on the input, eg. from a mic or piezo placed near a solid surface, for an event sequencer.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      running = 0;\n      x = 0.5f;\n      y = 0.0f;\n      xm = 0.5f;\n      ym = 0.0f;\n      fs = (float)s_rate;\n      imp_level = 0.0f;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      running = 0;\n      x = 0.5f;\n      y = 0.0f;\n      xm = 0.5f;\n      ym = 0.0f;\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      const float imp_amp = DB_CO(imp_gain);\n      const float strike_amp = DB_CO(strike_gain);\n      const float omega = 6.2831852f / (strike_duration * fs);\n\n      pos = 0;\n      while (pos < sample_count) {\n        for (; !running && pos < sample_count; pos++) {\n\t  if (fabs(input[pos]) > 0.05f) {\n\t    running = strike_duration * fs;\n\t    imp_level = fabs(input[pos]);\n\t  }\n          buffer_write(output[pos], input[pos] * imp_amp);\n        }\n        for (; running && pos < sample_count; pos++, running--) {\n\t  if (fabs(input[pos]) > imp_level) {\n\t    imp_level = fabs(input[pos]);\n\t  }\n\t  x -= omega * y;\n\t  y += omega * x;\n\t  xm -= omega * 0.5f * ym;\n\t  ym += omega * 0.5f * xm;\n\n\t  buffer_write(output[pos], input[pos] * imp_amp + y * strike_amp *\n\t\t\t    imp_level * 4.0f * ym);\n\t}\n      }\n\n      plugin_data->x = x;\n      plugin_data->y = y;\n      plugin_data->xm = xm;\n      plugin_data->ym = ym;\n      plugin_data->running = running;\n      plugin_data->imp_level = imp_level;\n    ]]></callback>\n\n    <port label=\"imp_gain\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n      <name>Impulse gain (dB)</name>\n      <p>The gain of the input impulse mixed into the output, bringing this up allows you to make the outputted strike more impulsive, but may reduce the gongyness of the resulting output sound.</p>\n      <range min=\"-70\" max=\"0\"/>\n    </port>\n\n    <port label=\"strike_gain\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>Strike gain (dB)</name>\n      <p>The gain of the simulated pressure wave mixed into the output, bringing this up allows you to make the outputted strike more pure. The final output level is also proportional to the amplitude of the trigger.</p>\n      <range min=\"-70\" max=\"0\"/>\n    </port>\n\n    <port label=\"strike_duration\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Strike duration (s)</name>\n      <p>The duration of the pressure wave used to simulate the action of the beater on the gong surface. The longer the duration the more sonorous the resulting gong sound.</p>\n      <range min=\"0.001\" max=\"0.2\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"x\" type=\"float\" />\n    <instance-data label=\"y\" type=\"float\" />\n    <instance-data label=\"xm\" type=\"float\" />\n    <instance-data label=\"ym\" type=\"float\" />\n    <instance-data label=\"running\" type=\"unsigned int\" />\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"imp_level\" type=\"float\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "gsm/COPYRIGHT",
    "content": "Copyright 1992, 1993, 1994 by Jutta Degener and Carsten Bormann,\nTechnische Universitaet Berlin\n\nAny use of this software is permitted provided that this notice is not\nremoved and that neither the authors nor the Technische Universitaet Berlin\nare deemed to have made any representations as to the suitability of this\nsoftware for any purpose nor are held responsible for any defects of\nthis software.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n\nAs a matter of courtesy, the authors request to be informed about uses\nthis software has found, about bugs in this software, and about any\nimprovements that may be of general interest.\n\nBerlin, 28.11.1994\nJutta Degener\nCarsten Bormann\n"
  },
  {
    "path": "gsm/Makefile.am",
    "content": "LIBTOOL=libtool\nRANLIB=ranlib\n\nnoinst_HEADERS = gsm.h config.h private.h proto.h unproto.h\nnoinst_LIBRARIES = libgsm.a\n\nCFILES = add.c decode.c gsm_decode.c gsm_encode.c long_term.c preprocess.c \\\n\tshort_term.c code.c gsm_create.c gsm_destroy.c gsm_option.c lpc.c rpe.c table.c\n\nlibgsm_a_SOURCES = $(CFILES) $(noinst_HEADERS)\n\n# Disable autoheader. \nAUTOHEADER=echo\n\n"
  },
  {
    "path": "gsm/README",
    "content": "GSM 06.10 13 kbit/s RPE/LTP speech codec\n----------------------------------------\n\nAll the file in this directory were written by Jutta Degener\nand Carsten Borman for The Communications and Operating Systems \nResearch Group (KBS) at the Technische Universitaet Berlin.\n\nTheir work was released under the following license which is \nassumed to be compatible with The GNU Lesser General Public License.\n\n----------------------------------------------------------------------------\n\nCopyright 1992, 1993, 1994 by Jutta Degener and Carsten Bormann,\nTechnische Universitaet Berlin\n\nAny use of this software is permitted provided that this notice is not\nremoved and that neither the authors nor the Technische Universitaet Berlin\nare deemed to have made any representations as to the suitability of this\nsoftware for any purpose nor are held responsible for any defects of\nthis software.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n\nAs a matter of courtesy, the authors request to be informed about uses\nthis software has found, about bugs in this software, and about any\nimprovements that may be of general interest.\n\nBerlin, 28.11.1994\nJutta Degener (jutta@cs.tu-berlin.de)\nCarsten Bormann (cabo@cs.tu-berlin.de)\n\n----------------------------------------------------------------------------\n\nJutta Degener and Carsten Bormann's work can be found on their homepage\nat:\n\n    http://kbs.cs.tu-berlin.de/~jutta/toast.html\n\t\n"
  },
  {
    "path": "gsm/add.c",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/* $Header: /home/cvs/giga/ladspa-swh/gsm/add.c,v 1.1 2001/06/10 21:36:51 swh Exp $ */\n\n/*\n *  See private.h for the more commonly used macro versions.\n */\n\n#include\t<stdio.h>\n#include\t<assert.h>\n\n#include\t\"private.h\"\n#include\t\"gsm.h\"\n#include\t\"proto.h\"\n\n#define\tsaturate(x) \t\\\n\t((x) < MIN_WORD ? MIN_WORD : (x) > MAX_WORD ? MAX_WORD: (x))\n\nword gsm_add P2((a,b), word a, word b)\n{\n\tlongword sum = (longword)a + (longword)b;\n\treturn saturate(sum);\n}\n\nword gsm_sub P2((a,b), word a, word b)\n{\n\tlongword diff = (longword)a - (longword)b;\n\treturn saturate(diff);\n}\n\nword gsm_mult P2((a,b), word a, word b)\n{\n\tif (a == MIN_WORD && b == MIN_WORD) return MAX_WORD;\n\telse return SASR( (longword)a * (longword)b, 15 );\n}\n\nword gsm_mult_r P2((a,b), word a, word b)\n{\n\tif (b == MIN_WORD && a == MIN_WORD) return MAX_WORD;\n\telse {\n\t\tlongword prod = (longword)a * (longword)b + 16384;\n\t\tprod >>= 15;\n\t\treturn prod & 0xFFFF;\n\t}\n}\n\nword gsm_abs P1((a), word a)\n{\n\treturn a < 0 ? (a == MIN_WORD ? MAX_WORD : -a) : a;\n}\n\nlongword gsm_L_mult P2((a,b),word a, word b)\n{\n\tassert( a != MIN_WORD || b != MIN_WORD );\n\treturn ((longword)a * (longword)b) << 1;\n}\n\nlongword gsm_L_add P2((a,b), longword a, longword b)\n{\n\tif (a < 0) {\n\t\tif (b >= 0) return a + b;\n\t\telse {\n\t\t\tulongword A = (ulongword)-(a + 1) + (ulongword)-(b + 1);\n\t\t\treturn A >= MAX_LONGWORD ? MIN_LONGWORD :-(longword)A-2;\n\t\t}\n\t}\n\telse if (b <= 0) return a + b;\n\telse {\n\t\tulongword A = (ulongword)a + (ulongword)b;\n\t\treturn A > MAX_LONGWORD ? MAX_LONGWORD : A;\n\t}\n}\n\nlongword gsm_L_sub P2((a,b), longword a, longword b)\n{\n\tif (a >= 0) {\n\t\tif (b >= 0) return a - b;\n\t\telse {\n\t\t\t/* a>=0, b<0 */\n\n\t\t\tulongword A = (ulongword)a + -(b + 1);\n\t\t\treturn A >= MAX_LONGWORD ? MAX_LONGWORD : (A + 1);\n\t\t}\n\t}\n\telse if (b <= 0) return a - b;\n\telse {\n\t\t/* a<0, b>0 */  \n\n\t\tulongword A = (ulongword)-(a + 1) + b;\n\t\treturn A >= MAX_LONGWORD ? MIN_LONGWORD : -(longword)A - 1;\n\t}\n}\n\nstatic unsigned char const bitoff[ 256 ] = {\n\t 8, 7, 6, 6, 5, 5, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4,\n\t 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,\n\t 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,\n\t 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,\n\t 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n\t 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n\t 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n\t 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n\t 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n\t 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n\t 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n\t 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n\t 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n\t 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n\t 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n\t 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0\n};\n\nword gsm_norm P1((a), longword a )\n/*\n * the number of left shifts needed to normalize the 32 bit\n * variable L_var1 for positive values on the interval\n *\n * with minimum of\n * minimum of 1073741824  (01000000000000000000000000000000) and \n * maximum of 2147483647  (01111111111111111111111111111111)\n *\n *\n * and for negative values on the interval with\n * minimum of -2147483648 (-10000000000000000000000000000000) and\n * maximum of -1073741824 ( -1000000000000000000000000000000).\n *\n * in order to normalize the result, the following\n * operation must be done: L_norm_var1 = L_var1 << norm( L_var1 );\n *\n * (That's 'ffs', only from the left, not the right..)\n */\n{\n\tassert(a != 0);\n\n\tif (a < 0) {\n\t\tif (a <= -1073741824) return 0;\n\t\ta = ~a;\n\t}\n\n\treturn    a & 0xffff0000 \n\t\t? ( a & 0xff000000\n\t\t  ?  -1 + bitoff[ 0xFF & (a >> 24) ]\n\t\t  :   7 + bitoff[ 0xFF & (a >> 16) ] )\n\t\t: ( a & 0xff00\n\t\t  ?  15 + bitoff[ 0xFF & (a >> 8) ]\n\t\t  :  23 + bitoff[ 0xFF & a ] );\n}\n\nlongword gsm_L_asl (longword a, int n)\n{\n\tif (n >= 32) return 0;\n\tif (n <= -32) return -(a < 0);\n\tif (n < 0) return gsm_L_asr(a, -n);\n\treturn a << n;\n}\n\nword gsm_asr (word a, int n)\n{\n\tif (n >= 16) return -(a < 0);\n\tif (n <= -16) return 0;\n\tif (n < 0) return a << -n;\n\n#\tifdef\tSASR\n\t\treturn a >> n;\n#\telse\n\t\tif (a >= 0) return a >> n;\n\t\telse return -(word)( -(uword)a >> n );\n#\tendif\n}\n\nword gsm_asl (word a, int n)\n{\n\tif (n >= 16) return 0;\n\tif (n <= -16) return -(a < 0);\n\tif (n < 0) return gsm_asr(a, -n);\n\treturn a << n;\n}\n\nlongword gsm_L_asr (longword a, int n)\n{\n\tif (n >= 32) return -(a < 0);\n\tif (n <= -32) return 0;\n\tif (n < 0) return a << -n;\n\n#\tifdef\tSASR\n\t\treturn a >> n;\n#\telse\n\t\tif (a >= 0) return a >> n;\n\t\telse return -(longword)( -(ulongword)a >> n );\n#\tendif\n}\n\n/*\n**\tword gsm_asr (word a, int n)\n**\t{\n**\t\tif (n >= 16) return -(a < 0);\n**\t\tif (n <= -16) return 0;\n**\t\tif (n < 0) return a << -n;\n**\t\n**\t#\tifdef\tSASR\n**\t\t\treturn a >> n;\n**\t#\telse\n**\t\t\tif (a >= 0) return a >> n;\n**\t\t\telse return -(word)( -(uword)a >> n );\n**\t#\tendif\n**\t}\n**\t\n*/\n/* \n *  (From p. 46, end of section 4.2.5)\n *\n *  NOTE: The following lines gives [sic] one correct implementation\n *  \t  of the div(num, denum) arithmetic operation.  Compute div\n *        which is the integer division of num by denum: with denum\n *\t  >= num > 0\n */\n\nword gsm_div P2((num,denum), word num, word denum)\n{\n\tlongword\tL_num   = num;\n\tlongword\tL_denum = denum;\n\tword\t\tdiv \t= 0;\n\tint\t\tk \t= 15;\n\n\t/* The parameter num sometimes becomes zero.\n\t * Although this is explicitly guarded against in 4.2.5,\n\t * we assume that the result should then be zero as well.\n\t */\n\n\t/* assert(num != 0); */\n\n\tassert(num >= 0 && denum >= num);\n\tif (num == 0)\n\t    return 0;\n\n\twhile (k--) {\n\t\tdiv   <<= 1;\n\t\tL_num <<= 1;\n\n\t\tif (L_num >= L_denum) {\n\t\t\tL_num -= L_denum;\n\t\t\tdiv++;\n\t\t}\n\t}\n\n\treturn div;\n}\n"
  },
  {
    "path": "gsm/code.c",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/* $Header: /home/cvs/giga/ladspa-swh/gsm/code.c,v 1.2 2003/03/07 23:26:13 swh Exp $ */\n\n#include\t\"config.h\"\n#include <string.h>\n\n\n#ifdef\tHAS_STDLIB_H\n#include\t<stdlib.h>\n#else\n#\tinclude \"proto.h\"\n\textern char\t* memcpy P((char *, char *, int));\n#endif\n\n#include\t\"private.h\"\n#include\t\"gsm.h\"\n#include\t\"proto.h\"\n\n/* \n *  4.2 FIXED POINT IMPLEMENTATION OF THE RPE-LTP CODER \n */\n\nvoid Gsm_Coder P8((S,s,LARc,Nc,bc,Mc,xmaxc,xMc),\n\n\tstruct gsm_state\t* S,\n\n\tword\t* s,\t/* [0..159] samples\t\t  \tIN\t*/\n\n/*\n * The RPE-LTD coder works on a frame by frame basis.  The length of\n * the frame is equal to 160 samples.  Some computations are done\n * once per frame to produce at the output of the coder the\n * LARc[1..8] parameters which are the coded LAR coefficients and \n * also to realize the inverse filtering operation for the entire\n * frame (160 samples of signal d[0..159]).  These parts produce at\n * the output of the coder:\n */\n\n\tword\t* LARc,\t/* [0..7] LAR coefficients\t\tOUT\t*/\n\n/*\n * Procedure 4.2.11 to 4.2.18 are to be executed four times per\n * frame.  That means once for each sub-segment RPE-LTP analysis of\n * 40 samples.  These parts produce at the output of the coder:\n */\n\n\tword\t* Nc,\t/* [0..3] LTP lag\t\t\tOUT \t*/\n\tword\t* bc,\t/* [0..3] coded LTP gain\t\tOUT \t*/\n\tword\t* Mc,\t/* [0..3] RPE grid selection\t\tOUT     */\n\tword\t* xmaxc,/* [0..3] Coded maximum amplitude\tOUT\t*/\n\tword\t* xMc\t/* [13*4] normalized RPE samples\tOUT\t*/\n)\n{\n\tint\tk;\n\tword\t* dp  = S->dp0 + 120;\t/* [ -120...-1 ] */\n\tword\t* dpp = dp;\t\t/* [ 0...39 ]\t */\n\n\tstatic word e[50];\n\n\tword\tso[160];\n\n\tGsm_Preprocess\t\t\t(S, s, so);\n\tGsm_LPC_Analysis\t\t(S, so, LARc);\n\tGsm_Short_Term_Analysis_Filter\t(S, LARc, so);\n\n\tfor (k = 0; k <= 3; k++, xMc += 13) {\n\n\t\tGsm_Long_Term_Predictor\t( S,\n\t\t\t\t\t so+k*40, /* d      [0..39] IN\t*/\n\t\t\t\t\t dp,\t  /* dp  [-120..-1] IN\t*/\n\t\t\t\t\te + 5,\t  /* e      [0..39] OUT\t*/\n\t\t\t\t\tdpp,\t  /* dpp    [0..39] OUT */\n\t\t\t\t\t Nc++,\n\t\t\t\t\t bc++);\n\n\t\tGsm_RPE_Encoding\t( S,\n\t\t\t\t\te + 5,\t/* e\t  ][0..39][ IN/OUT */\n\t\t\t\t\t  xmaxc++, Mc++, xMc );\n\t\t/*\n\t\t * Gsm_Update_of_reconstructed_short_time_residual_signal\n\t\t *\t\t\t( dpp, e + 5, dp );\n\t\t */\n\n\t\t{ register int i;\n\t\t  register longword ltmp;\n\t\t  for (i = 0; i <= 39; i++)\n\t\t\tdp[ i ] = GSM_ADD( e[5 + i], dpp[i] );\n\t\t}\n\t\tdp  += 40;\n\t\tdpp += 40;\n\n\t}\n\t(void)memcpy( (char *)S->dp0, (char *)(S->dp0 + 160),\n\t\t120 * sizeof(*S->dp0) );\n}\n"
  },
  {
    "path": "gsm/decode.c",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/* $Header: /home/cvs/giga/ladspa-swh/gsm/decode.c,v 1.1 2001/06/10 21:36:51 swh Exp $ */\n\n#include <stdio.h>\n\n#include\t\"private.h\"\n#include\t\"gsm.h\"\n#include\t\"proto.h\"\n\n/*\n *  4.3 FIXED POINT IMPLEMENTATION OF THE RPE-LTP DECODER\n */\n\nstatic void Postprocessing P2((S,s),\n\tstruct gsm_state\t* S,\n\tregister word \t\t* s)\n{\n\tregister int\t\tk;\n\tregister word\t\tmsr = S->msr;\n\tregister longword\tltmp;\t/* for GSM_ADD */\n\tregister word\t\ttmp;\n\n\tfor (k = 160; k--; s++) {\n\t\ttmp = GSM_MULT_R( msr, 28180 );\n\t\tmsr = GSM_ADD(*s, tmp);  \t   /* Deemphasis \t     */\n\t\t*s  = GSM_ADD(msr, msr) & 0xFFF8;  /* Truncation & Upscaling */\n\t}\n\tS->msr = msr;\n}\n\nvoid Gsm_Decoder P8((S,LARcr, Ncr,bcr,Mcr,xmaxcr,xMcr,s),\n\tstruct gsm_state\t* S,\n\n\tword\t\t* LARcr,\t/* [0..7]\t\tIN\t*/\n\n\tword\t\t* Ncr,\t\t/* [0..3] \t\tIN \t*/\n\tword\t\t* bcr,\t\t/* [0..3]\t\tIN\t*/\n\tword\t\t* Mcr,\t\t/* [0..3] \t\tIN \t*/\n\tword\t\t* xmaxcr,\t/* [0..3]\t\tIN \t*/\n\tword\t\t* xMcr,\t\t/* [0..13*4]\t\tIN\t*/\n\n\tword\t\t* s)\t\t/* [0..159]\t\tOUT \t*/\n{\n\tint\t\tj, k;\n\tword\t\terp[40], wt[160];\n\tword\t\t* drp = S->dp0 + 120;\n\n\tfor (j=0; j <= 3; j++, xmaxcr++, bcr++, Ncr++, Mcr++, xMcr += 13) {\n\n\t\tGsm_RPE_Decoding( S, *xmaxcr, *Mcr, xMcr, erp );\n\t\tGsm_Long_Term_Synthesis_Filtering( S, *Ncr, *bcr, erp, drp );\n\n\t\tfor (k = 0; k <= 39; k++) wt[ j * 40 + k ] =  drp[ k ];\n\t}\n\n\tGsm_Short_Term_Synthesis_Filter( S, LARcr, wt, s );\n\tPostprocessing(S, s);\n}\n"
  },
  {
    "path": "gsm/gsm.h",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/*$Header: /home/cvs/giga/ladspa-swh/gsm/gsm.h,v 1.1 2001/06/10 21:36:51 swh Exp $*/\n\n#ifndef\tGSM_H\n#define\tGSM_H\n\n#ifdef __cplusplus\n#\tdefine\tNeedFunctionPrototypes\t1\n#endif\n\n#if __STDC__\n#\tdefine\tNeedFunctionPrototypes\t1\n#endif\n\n#ifdef _NO_PROTO\n#\tundef\tNeedFunctionPrototypes\n#endif\n\n#ifdef NeedFunctionPrototypes\n#   include\t<stdio.h>\t\t/* for FILE * \t*/\n#endif\n\n#undef GSM_P\n#if NeedFunctionPrototypes\n#\tdefine\tGSM_P( protos )\tprotos\n#else\n#\tdefine  GSM_P( protos )\t( /* protos */ )\n#endif\n\n/*\n *\tInterface\n */\n\ntypedef struct gsm_state * \tgsm;\ntypedef short\t\t   \tgsm_signal;\t\t/* signed 16 bit */\ntypedef unsigned char\t\tgsm_byte;\ntypedef gsm_byte \t\tgsm_frame[33];\t\t/* 33 * 8 bits\t */\n\n#define\tGSM_MAGIC\t\t0xD\t\t  \t/* 13 kbit/s RPE-LTP */\n\n#define\tGSM_PATCHLEVEL\t\t10\n#define\tGSM_MINOR\t\t0\n#define\tGSM_MAJOR\t\t1\n\n#define\tGSM_OPT_VERBOSE\t\t1\n#define\tGSM_OPT_FAST\t\t2\n#define\tGSM_OPT_LTP_CUT\t\t3\n#define\tGSM_OPT_WAV49\t\t4\n#define\tGSM_OPT_FRAME_INDEX\t5\n#define\tGSM_OPT_FRAME_CHAIN\t6\n\nextern gsm  gsm_create \tGSM_P((void));\nextern void gsm_destroy GSM_P((gsm));\t\n\nextern int  gsm_print   GSM_P((FILE *, gsm, gsm_byte  *));\nextern int  gsm_option  GSM_P((gsm, int, int *));\n\nextern void gsm_encode  GSM_P((gsm, gsm_signal *, gsm_byte  *));\nextern int  gsm_decode  GSM_P((gsm, gsm_byte   *, gsm_signal *));\n\nextern int  gsm_explode GSM_P((gsm, gsm_byte   *, gsm_signal *));\nextern void gsm_implode GSM_P((gsm, gsm_signal *, gsm_byte   *));\n\n#undef\tGSM_P\n\n#endif\t/* GSM_H */\n"
  },
  {
    "path": "gsm/gsm_create.c",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n#include\t\"config.h\"\n\n#ifdef\tHAS_STRING_H\n#include\t<string.h>\n#else\n#\tinclude \"proto.h\"\n\textern char\t* memset P((char *, int, int));\n#endif\n\n#ifdef\tHAS_STDLIB_H\n#\tinclude\t<stdlib.h>\n#else\n#\tifdef\tHAS_MALLOC_H\n#\t\tinclude \t<malloc.h>\n#\telse\n\t\textern char * malloc();\n#\tendif\n#endif\n\n#include <stdio.h>\n\n#include \"gsm.h\"\n#include \"private.h\"\n#include \"proto.h\"\n\ngsm gsm_create P0()\n{\n\tgsm  r;\n\n\tr = (gsm)malloc(sizeof(struct gsm_state));\n\tif (!r) return r;\n\n\tmemset((char *)r, 0, sizeof(*r));\n\tr->nrp = 40;\n\n\treturn r;\n}\n"
  },
  {
    "path": "gsm/gsm_decode.c",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/* $Header: /home/cvs/giga/ladspa-swh/gsm/gsm_decode.c,v 1.1 2001/06/10 21:36:51 swh Exp $ */\n\n#include \"private.h\"\n\n#include \"gsm.h\"\n#include \"proto.h\"\n\nint gsm_decode P3((s, c, target), gsm s, gsm_byte * c, gsm_signal * target)\n{\n\tword  \tLARc[8], Nc[4], Mc[4], bc[4], xmaxc[4], xmc[13*4];\n\n#ifdef WAV49\n\tif (s->wav_fmt) {\n\n\t\tuword sr = 0;\n\n\t\ts->frame_index = !s->frame_index;\n\t\tif (s->frame_index) {\n\n\t\t\tsr = *c++;\n\t\t\tLARc[0] = sr & 0x3f;  sr >>= 6;\n\t\t\tsr |= (uword)*c++ << 2;\n\t\t\tLARc[1] = sr & 0x3f;  sr >>= 6;\n\t\t\tsr |= (uword)*c++ << 4;\n\t\t\tLARc[2] = sr & 0x1f;  sr >>= 5;\n\t\t\tLARc[3] = sr & 0x1f;  sr >>= 5;\n\t\t\tsr |= (uword)*c++ << 2;\n\t\t\tLARc[4] = sr & 0xf;  sr >>= 4;\n\t\t\tLARc[5] = sr & 0xf;  sr >>= 4;\n\t\t\tsr |= (uword)*c++ << 2;\t\t\t/* 5 */\n\t\t\tLARc[6] = sr & 0x7;  sr >>= 3;\n\t\t\tLARc[7] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 4;\n\t\t\tNc[0] = sr & 0x7f;  sr >>= 7;\n\t\t\tbc[0] = sr & 0x3;  sr >>= 2;\n\t\t\tMc[0] = sr & 0x3;  sr >>= 2;\n\t\t\tsr |= (uword)*c++ << 1;\n\t\t\txmaxc[0] = sr & 0x3f;  sr >>= 6;\n\t\t\txmc[0] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\n\t\t\txmc[1] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[2] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 2;\n\t\t\txmc[3] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[4] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[5] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 1;\t\t\t/* 10 */\n\t\t\txmc[6] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[7] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[8] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\n\t\t\txmc[9] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[10] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 2;\n\t\t\txmc[11] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[12] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 4;\n\t\t\tNc[1] = sr & 0x7f;  sr >>= 7;\n\t\t\tbc[1] = sr & 0x3;  sr >>= 2;\n\t\t\tMc[1] = sr & 0x3;  sr >>= 2;\n\t\t\tsr |= (uword)*c++ << 1;\n\t\t\txmaxc[1] = sr & 0x3f;  sr >>= 6;\n\t\t\txmc[13] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\t\t\t\t/* 15 */\n\t\t\txmc[14] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[15] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 2;\n\t\t\txmc[16] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[17] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[18] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 1;\n\t\t\txmc[19] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[20] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[21] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\n\t\t\txmc[22] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[23] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 2;\n\t\t\txmc[24] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[25] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 4;\t\t\t/* 20 */\n\t\t\tNc[2] = sr & 0x7f;  sr >>= 7;\n\t\t\tbc[2] = sr & 0x3;  sr >>= 2;\n\t\t\tMc[2] = sr & 0x3;  sr >>= 2;\n\t\t\tsr |= (uword)*c++ << 1;\n\t\t\txmaxc[2] = sr & 0x3f;  sr >>= 6;\n\t\t\txmc[26] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\n\t\t\txmc[27] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[28] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 2;\n\t\t\txmc[29] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[30] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[31] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 1;\n\t\t\txmc[32] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[33] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[34] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\t\t\t\t/* 25 */\n\t\t\txmc[35] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[36] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 2;\n\t\t\txmc[37] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[38] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 4;\n\t\t\tNc[3] = sr & 0x7f;  sr >>= 7;\n\t\t\tbc[3] = sr & 0x3;  sr >>= 2;\n\t\t\tMc[3] = sr & 0x3;  sr >>= 2;\n\t\t\tsr |= (uword)*c++ << 1;\n\t\t\txmaxc[3] = sr & 0x3f;  sr >>= 6;\n\t\t\txmc[39] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\n\t\t\txmc[40] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[41] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 2;\t\t\t/* 30 */\n\t\t\txmc[42] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[43] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[44] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 1;\n\t\t\txmc[45] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[46] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[47] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\n\t\t\txmc[48] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[49] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 2;\n\t\t\txmc[50] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[51] = sr & 0x7;  sr >>= 3;\n\n\t\t\ts->frame_chain = sr & 0xf;\n\t\t}\n\t\telse {\n\t\t\tsr = s->frame_chain;\n\t\t\tsr |= (uword)*c++ << 4;\t\t\t/* 1 */\n\t\t\tLARc[0] = sr & 0x3f;  sr >>= 6;\n\t\t\tLARc[1] = sr & 0x3f;  sr >>= 6;\n\t\t\tsr = *c++;\n\t\t\tLARc[2] = sr & 0x1f;  sr >>= 5;\n\t\t\tsr |= (uword)*c++ << 3;\n\t\t\tLARc[3] = sr & 0x1f;  sr >>= 5;\n\t\t\tLARc[4] = sr & 0xf;  sr >>= 4;\n\t\t\tsr |= (uword)*c++ << 2;\n\t\t\tLARc[5] = sr & 0xf;  sr >>= 4;\n\t\t\tLARc[6] = sr & 0x7;  sr >>= 3;\n\t\t\tLARc[7] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\t\t\t\t/* 5 */\n\t\t\tNc[0] = sr & 0x7f;  sr >>= 7;\n\t\t\tsr |= (uword)*c++ << 1;\n\t\t\tbc[0] = sr & 0x3;  sr >>= 2;\n\t\t\tMc[0] = sr & 0x3;  sr >>= 2;\n\t\t\tsr |= (uword)*c++ << 5;\n\t\t\txmaxc[0] = sr & 0x3f;  sr >>= 6;\n\t\t\txmc[0] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[1] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 1;\n\t\t\txmc[2] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[3] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[4] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\n\t\t\txmc[5] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[6] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 2;\t\t\t/* 10 */\n\t\t\txmc[7] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[8] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[9] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 1;\n\t\t\txmc[10] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[11] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[12] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\n\t\t\tNc[1] = sr & 0x7f;  sr >>= 7;\n\t\t\tsr |= (uword)*c++ << 1;\n\t\t\tbc[1] = sr & 0x3;  sr >>= 2;\n\t\t\tMc[1] = sr & 0x3;  sr >>= 2;\n\t\t\tsr |= (uword)*c++ << 5;\n\t\t\txmaxc[1] = sr & 0x3f;  sr >>= 6;\n\t\t\txmc[13] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[14] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 1;\t\t\t/* 15 */\n\t\t\txmc[15] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[16] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[17] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\n\t\t\txmc[18] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[19] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 2;\n\t\t\txmc[20] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[21] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[22] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 1;\n\t\t\txmc[23] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[24] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[25] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\n\t\t\tNc[2] = sr & 0x7f;  sr >>= 7;\n\t\t\tsr |= (uword)*c++ << 1;\t\t\t/* 20 */\n\t\t\tbc[2] = sr & 0x3;  sr >>= 2;\n\t\t\tMc[2] = sr & 0x3;  sr >>= 2;\n\t\t\tsr |= (uword)*c++ << 5;\n\t\t\txmaxc[2] = sr & 0x3f;  sr >>= 6;\n\t\t\txmc[26] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[27] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 1;\t\n\t\t\txmc[28] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[29] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[30] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\n\t\t\txmc[31] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[32] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 2;\n\t\t\txmc[33] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[34] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[35] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 1;\t\t\t/* 25 */\n\t\t\txmc[36] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[37] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[38] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\n\t\t\tNc[3] = sr & 0x7f;  sr >>= 7;\n\t\t\tsr |= (uword)*c++ << 1;\t\t\n\t\t\tbc[3] = sr & 0x3;  sr >>= 2;\n\t\t\tMc[3] = sr & 0x3;  sr >>= 2;\n\t\t\tsr |= (uword)*c++ << 5;\n\t\t\txmaxc[3] = sr & 0x3f;  sr >>= 6;\n\t\t\txmc[39] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[40] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 1;\n\t\t\txmc[41] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[42] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[43] = sr & 0x7;  sr >>= 3;\n\t\t\tsr = *c++;\t\t\t\t/* 30 */\n\t\t\txmc[44] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[45] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 2;\n\t\t\txmc[46] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[47] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[48] = sr & 0x7;  sr >>= 3;\n\t\t\tsr |= (uword)*c++ << 1;\n\t\t\txmc[49] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[50] = sr & 0x7;  sr >>= 3;\n\t\t\txmc[51] = sr & 0x7;  sr >>= 3;\n\t\t}\n\t}\n\telse\n#endif\n\t{\n\t\t/* GSM_MAGIC  = (*c >> 4) & 0xF; */\n\n\t\tif (((*c >> 4) & 0x0F) != GSM_MAGIC) return -1;\n\n\t\tLARc[0]  = (*c++ & 0xF) << 2;\t\t/* 1 */\n\t\tLARc[0] |= (*c >> 6) & 0x3;\n\t\tLARc[1]  = *c++ & 0x3F;\n\t\tLARc[2]  = (*c >> 3) & 0x1F;\n\t\tLARc[3]  = (*c++ & 0x7) << 2;\n\t\tLARc[3] |= (*c >> 6) & 0x3;\n\t\tLARc[4]  = (*c >> 2) & 0xF;\n\t\tLARc[5]  = (*c++ & 0x3) << 2;\n\t\tLARc[5] |= (*c >> 6) & 0x3;\n\t\tLARc[6]  = (*c >> 3) & 0x7;\n\t\tLARc[7]  = *c++ & 0x7;\n\t\tNc[0]  = (*c >> 1) & 0x7F;\n\t\tbc[0]  = (*c++ & 0x1) << 1;\n\t\tbc[0] |= (*c >> 7) & 0x1;\n\t\tMc[0]  = (*c >> 5) & 0x3;\n\t\txmaxc[0]  = (*c++ & 0x1F) << 1;\n\t\txmaxc[0] |= (*c >> 7) & 0x1;\n\t\txmc[0]  = (*c >> 4) & 0x7;\n\t\txmc[1]  = (*c >> 1) & 0x7;\n\t\txmc[2]  = (*c++ & 0x1) << 2;\n\t\txmc[2] |= (*c >> 6) & 0x3;\n\t\txmc[3]  = (*c >> 3) & 0x7;\n\t\txmc[4]  = *c++ & 0x7;\n\t\txmc[5]  = (*c >> 5) & 0x7;\n\t\txmc[6]  = (*c >> 2) & 0x7;\n\t\txmc[7]  = (*c++ & 0x3) << 1;\t\t/* 10 */\n\t\txmc[7] |= (*c >> 7) & 0x1;\n\t\txmc[8]  = (*c >> 4) & 0x7;\n\t\txmc[9]  = (*c >> 1) & 0x7;\n\t\txmc[10]  = (*c++ & 0x1) << 2;\n\t\txmc[10] |= (*c >> 6) & 0x3;\n\t\txmc[11]  = (*c >> 3) & 0x7;\n\t\txmc[12]  = *c++ & 0x7;\n\t\tNc[1]  = (*c >> 1) & 0x7F;\n\t\tbc[1]  = (*c++ & 0x1) << 1;\n\t\tbc[1] |= (*c >> 7) & 0x1;\n\t\tMc[1]  = (*c >> 5) & 0x3;\n\t\txmaxc[1]  = (*c++ & 0x1F) << 1;\n\t\txmaxc[1] |= (*c >> 7) & 0x1;\n\t\txmc[13]  = (*c >> 4) & 0x7;\n\t\txmc[14]  = (*c >> 1) & 0x7;\n\t\txmc[15]  = (*c++ & 0x1) << 2;\n\t\txmc[15] |= (*c >> 6) & 0x3;\n\t\txmc[16]  = (*c >> 3) & 0x7;\n\t\txmc[17]  = *c++ & 0x7;\n\t\txmc[18]  = (*c >> 5) & 0x7;\n\t\txmc[19]  = (*c >> 2) & 0x7;\n\t\txmc[20]  = (*c++ & 0x3) << 1;\n\t\txmc[20] |= (*c >> 7) & 0x1;\n\t\txmc[21]  = (*c >> 4) & 0x7;\n\t\txmc[22]  = (*c >> 1) & 0x7;\n\t\txmc[23]  = (*c++ & 0x1) << 2;\n\t\txmc[23] |= (*c >> 6) & 0x3;\n\t\txmc[24]  = (*c >> 3) & 0x7;\n\t\txmc[25]  = *c++ & 0x7;\n\t\tNc[2]  = (*c >> 1) & 0x7F;\n\t\tbc[2]  = (*c++ & 0x1) << 1;\t\t/* 20 */\n\t\tbc[2] |= (*c >> 7) & 0x1;\n\t\tMc[2]  = (*c >> 5) & 0x3;\n\t\txmaxc[2]  = (*c++ & 0x1F) << 1;\n\t\txmaxc[2] |= (*c >> 7) & 0x1;\n\t\txmc[26]  = (*c >> 4) & 0x7;\n\t\txmc[27]  = (*c >> 1) & 0x7;\n\t\txmc[28]  = (*c++ & 0x1) << 2;\n\t\txmc[28] |= (*c >> 6) & 0x3;\n\t\txmc[29]  = (*c >> 3) & 0x7;\n\t\txmc[30]  = *c++ & 0x7;\n\t\txmc[31]  = (*c >> 5) & 0x7;\n\t\txmc[32]  = (*c >> 2) & 0x7;\n\t\txmc[33]  = (*c++ & 0x3) << 1;\n\t\txmc[33] |= (*c >> 7) & 0x1;\n\t\txmc[34]  = (*c >> 4) & 0x7;\n\t\txmc[35]  = (*c >> 1) & 0x7;\n\t\txmc[36]  = (*c++ & 0x1) << 2;\n\t\txmc[36] |= (*c >> 6) & 0x3;\n\t\txmc[37]  = (*c >> 3) & 0x7;\n\t\txmc[38]  = *c++ & 0x7;\n\t\tNc[3]  = (*c >> 1) & 0x7F;\n\t\tbc[3]  = (*c++ & 0x1) << 1;\n\t\tbc[3] |= (*c >> 7) & 0x1;\n\t\tMc[3]  = (*c >> 5) & 0x3;\n\t\txmaxc[3]  = (*c++ & 0x1F) << 1;\n\t\txmaxc[3] |= (*c >> 7) & 0x1;\n\t\txmc[39]  = (*c >> 4) & 0x7;\n\t\txmc[40]  = (*c >> 1) & 0x7;\n\t\txmc[41]  = (*c++ & 0x1) << 2;\n\t\txmc[41] |= (*c >> 6) & 0x3;\n\t\txmc[42]  = (*c >> 3) & 0x7;\n\t\txmc[43]  = *c++ & 0x7;\t\t\t/* 30  */\n\t\txmc[44]  = (*c >> 5) & 0x7;\n\t\txmc[45]  = (*c >> 2) & 0x7;\n\t\txmc[46]  = (*c++ & 0x3) << 1;\n\t\txmc[46] |= (*c >> 7) & 0x1;\n\t\txmc[47]  = (*c >> 4) & 0x7;\n\t\txmc[48]  = (*c >> 1) & 0x7;\n\t\txmc[49]  = (*c++ & 0x1) << 2;\n\t\txmc[49] |= (*c >> 6) & 0x3;\n\t\txmc[50]  = (*c >> 3) & 0x7;\n\t\txmc[51]  = *c & 0x7;\t\t\t/* 33 */\n\t}\n\n\tGsm_Decoder(s, LARc, Nc, bc, Mc, xmaxc, xmc, target);\n\n\treturn 0;\n}\n"
  },
  {
    "path": "gsm/gsm_destroy.c",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/* $Header: /home/cvs/giga/ladspa-swh/gsm/gsm_destroy.c,v 1.1 2001/06/10 21:36:51 swh Exp $ */\n\n#include \"gsm.h\"\n#include \"config.h\"\n#include \"proto.h\"\n\n#ifdef\tHAS_STDLIB_H\n#\tinclude\t<stdlib.h>\n#else\n#\tifdef\tHAS_MALLOC_H\n#\t\tinclude \t<malloc.h>\n#\telse\n\t\textern void free();\n#\tendif\n#endif\n\nvoid gsm_destroy P1((S), gsm S)\n{\n\tif (S) free((char *)S);\n}\n"
  },
  {
    "path": "gsm/gsm_encode.c",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/* $Header: /home/cvs/giga/ladspa-swh/gsm/gsm_encode.c,v 1.1 2001/06/10 21:36:51 swh Exp $ */\n\n#include \"private.h\"\n#include \"gsm.h\"\n#include \"proto.h\"\n\nvoid gsm_encode P3((s, source, c), gsm s, gsm_signal * source, gsm_byte * c)\n{\n\tword\t \tLARc[8], Nc[4], Mc[4], bc[4], xmaxc[4], xmc[13*4];\n\n\tGsm_Coder(s, source, LARc, Nc, bc, Mc, xmaxc, xmc);\n\n\n\t/*\tvariable\tsize\n\n\t\tGSM_MAGIC\t4\n\n\t\tLARc[0]\t\t6\n\t\tLARc[1]\t\t6\n\t\tLARc[2]\t\t5\n\t\tLARc[3]\t\t5\n\t\tLARc[4]\t\t4\n\t\tLARc[5]\t\t4\n\t\tLARc[6]\t\t3\n\t\tLARc[7]\t\t3\n\n\t\tNc[0]\t\t7\n\t\tbc[0]\t\t2\n\t\tMc[0]\t\t2\n\t\txmaxc[0]\t6\n\t\txmc[0]\t\t3\n\t\txmc[1]\t\t3\n\t\txmc[2]\t\t3\n\t\txmc[3]\t\t3\n\t\txmc[4]\t\t3\n\t\txmc[5]\t\t3\n\t\txmc[6]\t\t3\n\t\txmc[7]\t\t3\n\t\txmc[8]\t\t3\n\t\txmc[9]\t\t3\n\t\txmc[10]\t\t3\n\t\txmc[11]\t\t3\n\t\txmc[12]\t\t3\n\n\t\tNc[1]\t\t7\n\t\tbc[1]\t\t2\n\t\tMc[1]\t\t2\n\t\txmaxc[1]\t6\n\t\txmc[13]\t\t3\n\t\txmc[14]\t\t3\n\t\txmc[15]\t\t3\n\t\txmc[16]\t\t3\n\t\txmc[17]\t\t3\n\t\txmc[18]\t\t3\n\t\txmc[19]\t\t3\n\t\txmc[20]\t\t3\n\t\txmc[21]\t\t3\n\t\txmc[22]\t\t3\n\t\txmc[23]\t\t3\n\t\txmc[24]\t\t3\n\t\txmc[25]\t\t3\n\n\t\tNc[2]\t\t7\n\t\tbc[2]\t\t2\n\t\tMc[2]\t\t2\n\t\txmaxc[2]\t6\n\t\txmc[26]\t\t3\n\t\txmc[27]\t\t3\n\t\txmc[28]\t\t3\n\t\txmc[29]\t\t3\n\t\txmc[30]\t\t3\n\t\txmc[31]\t\t3\n\t\txmc[32]\t\t3\n\t\txmc[33]\t\t3\n\t\txmc[34]\t\t3\n\t\txmc[35]\t\t3\n\t\txmc[36]\t\t3\n\t\txmc[37]\t\t3\n\t\txmc[38]\t\t3\n\n\t\tNc[3]\t\t7\n\t\tbc[3]\t\t2\n\t\tMc[3]\t\t2\n\t\txmaxc[3]\t6\n\t\txmc[39]\t\t3\n\t\txmc[40]\t\t3\n\t\txmc[41]\t\t3\n\t\txmc[42]\t\t3\n\t\txmc[43]\t\t3\n\t\txmc[44]\t\t3\n\t\txmc[45]\t\t3\n\t\txmc[46]\t\t3\n\t\txmc[47]\t\t3\n\t\txmc[48]\t\t3\n\t\txmc[49]\t\t3\n\t\txmc[50]\t\t3\n\t\txmc[51]\t\t3\n\t*/\n\n#ifdef WAV49\n\n\tif (s->wav_fmt) {\n\t\ts->frame_index = !s->frame_index;\n\t\tif (s->frame_index) {\n\n\t\t\tuword sr;\n\n\t\t\tsr = 0;\n\t\t\tsr = sr >> 6 | LARc[0] << 10;\n\t\t\tsr = sr >> 6 | LARc[1] << 10;\n\t\t\t*c++ = sr >> 4;\n\t\t\tsr = sr >> 5 | LARc[2] << 11;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 5 | LARc[3] << 11;\n\t\t\tsr = sr >> 4 | LARc[4] << 12;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 4 | LARc[5] << 12;\n\t\t\tsr = sr >> 3 | LARc[6] << 13;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | LARc[7] << 13;\n\t\t\tsr = sr >> 7 | Nc[0] << 9;\n\t\t\t*c++ = sr >> 5;\n\t\t\tsr = sr >> 2 | bc[0] << 14;\n\t\t\tsr = sr >> 2 | Mc[0] << 14;\n\t\t\tsr = sr >> 6 | xmaxc[0] << 10;\n\t\t\t*c++ = sr >> 3;\n\t\t\tsr = sr >> 3 | xmc[0] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 3 | xmc[1] << 13;\n\t\t\tsr = sr >> 3 | xmc[2] << 13;\n\t\t\tsr = sr >> 3 | xmc[3] << 13;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[4] << 13;\n\t\t\tsr = sr >> 3 | xmc[5] << 13;\n\t\t\tsr = sr >> 3 | xmc[6] << 13;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 3 | xmc[7] << 13;\n\t\t\tsr = sr >> 3 | xmc[8] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 3 | xmc[9] << 13;\n\t\t\tsr = sr >> 3 | xmc[10] << 13;\n\t\t\tsr = sr >> 3 | xmc[11] << 13;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[12] << 13;\n\t\t\tsr = sr >> 7 | Nc[1] << 9;\n\t\t\t*c++ = sr >> 5;\n\t\t\tsr = sr >> 2 | bc[1] << 14;\n\t\t\tsr = sr >> 2 | Mc[1] << 14;\n\t\t\tsr = sr >> 6 | xmaxc[1] << 10;\n\t\t\t*c++ = sr >> 3;\n\t\t\tsr = sr >> 3 | xmc[13] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 3 | xmc[14] << 13;\n\t\t\tsr = sr >> 3 | xmc[15] << 13;\n\t\t\tsr = sr >> 3 | xmc[16] << 13;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[17] << 13;\n\t\t\tsr = sr >> 3 | xmc[18] << 13;\n\t\t\tsr = sr >> 3 | xmc[19] << 13;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 3 | xmc[20] << 13;\n\t\t\tsr = sr >> 3 | xmc[21] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 3 | xmc[22] << 13;\n\t\t\tsr = sr >> 3 | xmc[23] << 13;\n\t\t\tsr = sr >> 3 | xmc[24] << 13;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[25] << 13;\n\t\t\tsr = sr >> 7 | Nc[2] << 9;\n\t\t\t*c++ = sr >> 5;\n\t\t\tsr = sr >> 2 | bc[2] << 14;\n\t\t\tsr = sr >> 2 | Mc[2] << 14;\n\t\t\tsr = sr >> 6 | xmaxc[2] << 10;\n\t\t\t*c++ = sr >> 3;\n\t\t\tsr = sr >> 3 | xmc[26] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 3 | xmc[27] << 13;\n\t\t\tsr = sr >> 3 | xmc[28] << 13;\n\t\t\tsr = sr >> 3 | xmc[29] << 13;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[30] << 13;\n\t\t\tsr = sr >> 3 | xmc[31] << 13;\n\t\t\tsr = sr >> 3 | xmc[32] << 13;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 3 | xmc[33] << 13;\n\t\t\tsr = sr >> 3 | xmc[34] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 3 | xmc[35] << 13;\n\t\t\tsr = sr >> 3 | xmc[36] << 13;\n\t\t\tsr = sr >> 3 | xmc[37] << 13;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[38] << 13;\n\t\t\tsr = sr >> 7 | Nc[3] << 9;\n\t\t\t*c++ = sr >> 5;\n\t\t\tsr = sr >> 2 | bc[3] << 14;\n\t\t\tsr = sr >> 2 | Mc[3] << 14;\n\t\t\tsr = sr >> 6 | xmaxc[3] << 10;\n\t\t\t*c++ = sr >> 3;\n\t\t\tsr = sr >> 3 | xmc[39] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 3 | xmc[40] << 13;\n\t\t\tsr = sr >> 3 | xmc[41] << 13;\n\t\t\tsr = sr >> 3 | xmc[42] << 13;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[43] << 13;\n\t\t\tsr = sr >> 3 | xmc[44] << 13;\n\t\t\tsr = sr >> 3 | xmc[45] << 13;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 3 | xmc[46] << 13;\n\t\t\tsr = sr >> 3 | xmc[47] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 3 | xmc[48] << 13;\n\t\t\tsr = sr >> 3 | xmc[49] << 13;\n\t\t\tsr = sr >> 3 | xmc[50] << 13;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[51] << 13;\n\t\t\tsr = sr >> 4;\n\t\t\t*c = sr >> 8;\n\t\t\ts->frame_chain = *c;\n\t\t}\n\t\telse {\n\t\t\tuword sr;\n\n\t\t\tsr = 0;\n\t\t\tsr = sr >> 4 | s->frame_chain << 12;\n\t\t\tsr = sr >> 6 | LARc[0] << 10;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 6 | LARc[1] << 10;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 5 | LARc[2] << 11;\n\t\t\tsr = sr >> 5 | LARc[3] << 11;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 4 | LARc[4] << 12;\n\t\t\tsr = sr >> 4 | LARc[5] << 12;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 3 | LARc[6] << 13;\n\t\t\tsr = sr >> 3 | LARc[7] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 7 | Nc[0] << 9;\n\t\t\tsr = sr >> 2 | bc[0] << 14;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 2 | Mc[0] << 14;\n\t\t\tsr = sr >> 6 | xmaxc[0] << 10;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[0] << 13;\n\t\t\tsr = sr >> 3 | xmc[1] << 13;\n\t\t\tsr = sr >> 3 | xmc[2] << 13;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 3 | xmc[3] << 13;\n\t\t\tsr = sr >> 3 | xmc[4] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 3 | xmc[5] << 13;\n\t\t\tsr = sr >> 3 | xmc[6] << 13;\n\t\t\tsr = sr >> 3 | xmc[7] << 13;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[8] << 13;\n\t\t\tsr = sr >> 3 | xmc[9] << 13;\n\t\t\tsr = sr >> 3 | xmc[10] << 13;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 3 | xmc[11] << 13;\n\t\t\tsr = sr >> 3 | xmc[12] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 7 | Nc[1] << 9;\n\t\t\tsr = sr >> 2 | bc[1] << 14;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 2 | Mc[1] << 14;\n\t\t\tsr = sr >> 6 | xmaxc[1] << 10;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[13] << 13;\n\t\t\tsr = sr >> 3 | xmc[14] << 13;\n\t\t\tsr = sr >> 3 | xmc[15] << 13;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 3 | xmc[16] << 13;\n\t\t\tsr = sr >> 3 | xmc[17] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 3 | xmc[18] << 13;\n\t\t\tsr = sr >> 3 | xmc[19] << 13;\n\t\t\tsr = sr >> 3 | xmc[20] << 13;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[21] << 13;\n\t\t\tsr = sr >> 3 | xmc[22] << 13;\n\t\t\tsr = sr >> 3 | xmc[23] << 13;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 3 | xmc[24] << 13;\n\t\t\tsr = sr >> 3 | xmc[25] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 7 | Nc[2] << 9;\n\t\t\tsr = sr >> 2 | bc[2] << 14;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 2 | Mc[2] << 14;\n\t\t\tsr = sr >> 6 | xmaxc[2] << 10;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[26] << 13;\n\t\t\tsr = sr >> 3 | xmc[27] << 13;\n\t\t\tsr = sr >> 3 | xmc[28] << 13;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 3 | xmc[29] << 13;\n\t\t\tsr = sr >> 3 | xmc[30] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 3 | xmc[31] << 13;\n\t\t\tsr = sr >> 3 | xmc[32] << 13;\n\t\t\tsr = sr >> 3 | xmc[33] << 13;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[34] << 13;\n\t\t\tsr = sr >> 3 | xmc[35] << 13;\n\t\t\tsr = sr >> 3 | xmc[36] << 13;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 3 | xmc[37] << 13;\n\t\t\tsr = sr >> 3 | xmc[38] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 7 | Nc[3] << 9;\n\t\t\tsr = sr >> 2 | bc[3] << 14;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 2 | Mc[3] << 14;\n\t\t\tsr = sr >> 6 | xmaxc[3] << 10;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[39] << 13;\n\t\t\tsr = sr >> 3 | xmc[40] << 13;\n\t\t\tsr = sr >> 3 | xmc[41] << 13;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 3 | xmc[42] << 13;\n\t\t\tsr = sr >> 3 | xmc[43] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t\tsr = sr >> 3 | xmc[44] << 13;\n\t\t\tsr = sr >> 3 | xmc[45] << 13;\n\t\t\tsr = sr >> 3 | xmc[46] << 13;\n\t\t\t*c++ = sr >> 7;\n\t\t\tsr = sr >> 3 | xmc[47] << 13;\n\t\t\tsr = sr >> 3 | xmc[48] << 13;\n\t\t\tsr = sr >> 3 | xmc[49] << 13;\n\t\t\t*c++ = sr >> 6;\n\t\t\tsr = sr >> 3 | xmc[50] << 13;\n\t\t\tsr = sr >> 3 | xmc[51] << 13;\n\t\t\t*c++ = sr >> 8;\n\t\t}\n\t}\n\n\telse\n\n#endif\t/* WAV49 */\n\t{\n\n\t\t*c++ =   ((GSM_MAGIC & 0xF) << 4)\t\t/* 1 */\n\t\t       | ((LARc[0] >> 2) & 0xF);\n\t\t*c++ =   ((LARc[0] & 0x3) << 6)\n\t\t       | (LARc[1] & 0x3F);\n\t\t*c++ =   ((LARc[2] & 0x1F) << 3)\n\t\t       | ((LARc[3] >> 2) & 0x7);\n\t\t*c++ =   ((LARc[3] & 0x3) << 6)\n\t\t       | ((LARc[4] & 0xF) << 2)\n\t\t       | ((LARc[5] >> 2) & 0x3);\n\t\t*c++ =   ((LARc[5] & 0x3) << 6)\n\t\t       | ((LARc[6] & 0x7) << 3)\n\t\t       | (LARc[7] & 0x7);\n\t\t*c++ =   ((Nc[0] & 0x7F) << 1)\n\t\t       | ((bc[0] >> 1) & 0x1);\n\t\t*c++ =   ((bc[0] & 0x1) << 7)\n\t\t       | ((Mc[0] & 0x3) << 5)\n\t\t       | ((xmaxc[0] >> 1) & 0x1F);\n\t\t*c++ =   ((xmaxc[0] & 0x1) << 7)\n\t\t       | ((xmc[0] & 0x7) << 4)\n\t\t       | ((xmc[1] & 0x7) << 1)\n\t\t       | ((xmc[2] >> 2) & 0x1);\n\t\t*c++ =   ((xmc[2] & 0x3) << 6)\n\t\t       | ((xmc[3] & 0x7) << 3)\n\t\t       | (xmc[4] & 0x7);\n\t\t*c++ =   ((xmc[5] & 0x7) << 5)\t\t\t/* 10 */\n\t\t       | ((xmc[6] & 0x7) << 2)\n\t\t       | ((xmc[7] >> 1) & 0x3);\n\t\t*c++ =   ((xmc[7] & 0x1) << 7)\n\t\t       | ((xmc[8] & 0x7) << 4)\n\t\t       | ((xmc[9] & 0x7) << 1)\n\t\t       | ((xmc[10] >> 2) & 0x1);\n\t\t*c++ =   ((xmc[10] & 0x3) << 6)\n\t\t       | ((xmc[11] & 0x7) << 3)\n\t\t       | (xmc[12] & 0x7);\n\t\t*c++ =   ((Nc[1] & 0x7F) << 1)\n\t\t       | ((bc[1] >> 1) & 0x1);\n\t\t*c++ =   ((bc[1] & 0x1) << 7)\n\t\t       | ((Mc[1] & 0x3) << 5)\n\t\t       | ((xmaxc[1] >> 1) & 0x1F);\n\t\t*c++ =   ((xmaxc[1] & 0x1) << 7)\n\t\t       | ((xmc[13] & 0x7) << 4)\n\t\t       | ((xmc[14] & 0x7) << 1)\n\t\t       | ((xmc[15] >> 2) & 0x1);\n\t\t*c++ =   ((xmc[15] & 0x3) << 6)\n\t\t       | ((xmc[16] & 0x7) << 3)\n\t\t       | (xmc[17] & 0x7);\n\t\t*c++ =   ((xmc[18] & 0x7) << 5)\n\t\t       | ((xmc[19] & 0x7) << 2)\n\t\t       | ((xmc[20] >> 1) & 0x3);\n\t\t*c++ =   ((xmc[20] & 0x1) << 7)\n\t\t       | ((xmc[21] & 0x7) << 4)\n\t\t       | ((xmc[22] & 0x7) << 1)\n\t\t       | ((xmc[23] >> 2) & 0x1);\n\t\t*c++ =   ((xmc[23] & 0x3) << 6)\n\t\t       | ((xmc[24] & 0x7) << 3)\n\t\t       | (xmc[25] & 0x7);\n\t\t*c++ =   ((Nc[2] & 0x7F) << 1)\t\t\t/* 20 */\n\t\t       | ((bc[2] >> 1) & 0x1);\n\t\t*c++ =   ((bc[2] & 0x1) << 7)\n\t\t       | ((Mc[2] & 0x3) << 5)\n\t\t       | ((xmaxc[2] >> 1) & 0x1F);\n\t\t*c++ =   ((xmaxc[2] & 0x1) << 7)\n\t\t       | ((xmc[26] & 0x7) << 4)\n\t\t       | ((xmc[27] & 0x7) << 1)\n\t\t       | ((xmc[28] >> 2) & 0x1);\n\t\t*c++ =   ((xmc[28] & 0x3) << 6)\n\t\t       | ((xmc[29] & 0x7) << 3)\n\t\t       | (xmc[30] & 0x7);\n\t\t*c++ =   ((xmc[31] & 0x7) << 5)\n\t\t       | ((xmc[32] & 0x7) << 2)\n\t\t       | ((xmc[33] >> 1) & 0x3);\n\t\t*c++ =   ((xmc[33] & 0x1) << 7)\n\t\t       | ((xmc[34] & 0x7) << 4)\n\t\t       | ((xmc[35] & 0x7) << 1)\n\t\t       | ((xmc[36] >> 2) & 0x1);\n\t\t*c++ =   ((xmc[36] & 0x3) << 6)\n\t\t       | ((xmc[37] & 0x7) << 3)\n\t\t       | (xmc[38] & 0x7);\n\t\t*c++ =   ((Nc[3] & 0x7F) << 1)\n\t\t       | ((bc[3] >> 1) & 0x1);\n\t\t*c++ =   ((bc[3] & 0x1) << 7)\n\t\t       | ((Mc[3] & 0x3) << 5)\n\t\t       | ((xmaxc[3] >> 1) & 0x1F);\n\t\t*c++ =   ((xmaxc[3] & 0x1) << 7)\n\t\t       | ((xmc[39] & 0x7) << 4)\n\t\t       | ((xmc[40] & 0x7) << 1)\n\t\t       | ((xmc[41] >> 2) & 0x1);\n\t\t*c++ =   ((xmc[41] & 0x3) << 6)\t\t\t/* 30 */\n\t\t       | ((xmc[42] & 0x7) << 3)\n\t\t       | (xmc[43] & 0x7);\n\t\t*c++ =   ((xmc[44] & 0x7) << 5)\n\t\t       | ((xmc[45] & 0x7) << 2)\n\t\t       | ((xmc[46] >> 1) & 0x3);\n\t\t*c++ =   ((xmc[46] & 0x1) << 7)\n\t\t       | ((xmc[47] & 0x7) << 4)\n\t\t       | ((xmc[48] & 0x7) << 1)\n\t\t       | ((xmc[49] >> 2) & 0x1);\n\t\t*c++ =   ((xmc[49] & 0x3) << 6)\n\t\t       | ((xmc[50] & 0x7) << 3)\n\t\t       | (xmc[51] & 0x7);\n\n\t}\n}\n"
  },
  {
    "path": "gsm/gsm_option.c",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/* $Header: /home/cvs/giga/ladspa-swh/gsm/gsm_option.c,v 1.1 2001/06/10 21:36:51 swh Exp $ */\n\n#include \"private.h\"\n\n#include \"gsm.h\"\n#include \"proto.h\"\n\nint gsm_option P3((r, opt, val), gsm r, int opt, int * val)\n{\n\tint \tresult = -1;\n\n\tswitch (opt) {\n\tcase GSM_OPT_LTP_CUT:\n#ifdef \tLTP_CUT\n\t\tresult = r->ltp_cut;\n\t\tif (val) r->ltp_cut = *val;\n#endif\n\t\tbreak;\n\n\tcase GSM_OPT_VERBOSE:\n#ifndef\tNDEBUG\n\t\tresult = r->verbose;\n\t\tif (val) r->verbose = *val;\n#endif\n\t\tbreak;\n\n\tcase GSM_OPT_FAST:\n\n#if\tdefined(FAST) && defined(USE_FLOAT_MUL)\n\t\tresult = r->fast;\n\t\tif (val) r->fast = !!*val;\n#endif\n\t\tbreak;\n\n\tcase GSM_OPT_FRAME_CHAIN:\n\n#ifdef WAV49\n\t\tresult = r->frame_chain;\n\t\tif (val) r->frame_chain = *val;\n#endif\n\t\tbreak;\n\n\tcase GSM_OPT_FRAME_INDEX:\n\n#ifdef WAV49\n\t\tresult = r->frame_index;\n\t\tif (val) r->frame_index = *val;\n#endif\n\t\tbreak;\n\n\tcase GSM_OPT_WAV49:\n\n#ifdef WAV49 \n\t\tresult = r->wav_fmt;\n\t\tif (val) r->wav_fmt = !!*val;\n#endif\n\t\tbreak;\n\n\tdefault:\n\t\tbreak;\n\t}\n\treturn result;\n}\n"
  },
  {
    "path": "gsm/long_term.c",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/* $Header: /home/cvs/giga/ladspa-swh/gsm/long_term.c,v 1.1 2001/06/10 21:36:51 swh Exp $ */\n\n#include <stdio.h>\n#include <assert.h>\n\n#include \"private.h\"\n\n#include \"gsm.h\"\n#include \"proto.h\"\n\n/*\n *  4.2.11 .. 4.2.12 LONG TERM PREDICTOR (LTP) SECTION\n */\n\n\n/*\n * This module computes the LTP gain (bc) and the LTP lag (Nc)\n * for the long term analysis filter.   This is done by calculating a\n * maximum of the cross-correlation function between the current\n * sub-segment short term residual signal d[0..39] (output of\n * the short term analysis filter; for simplification the index\n * of this array begins at 0 and ends at 39 for each sub-segment of the\n * RPE-LTP analysis) and the previous reconstructed short term\n * residual signal dp[ -120 .. -1 ].  A dynamic scaling must be\n * performed to avoid overflow.\n */\n\n /* The next procedure exists in six versions.  First two integer\n  * version (if USE_FLOAT_MUL is not defined); then four floating\n  * point versions, twice with proper scaling (USE_FLOAT_MUL defined),\n  * once without (USE_FLOAT_MUL and FAST defined, and fast run-time\n  * option used).  Every pair has first a Cut version (see the -C\n  * option to toast or the LTP_CUT option to gsm_option()), then the\n  * uncut one.  (For a detailed explanation of why this is altogether\n  * a bad idea, see Henry Spencer and Geoff Collyer, ``#ifdef Considered\n  * Harmful''.)\n  */\n\n#ifndef  USE_FLOAT_MUL\n\n#ifdef\tLTP_CUT\n\nstatic void Cut_Calculation_of_the_LTP_parameters P5((st, d,dp,bc_out,Nc_out),\n\n\tstruct gsm_state * st,\n\n\tregister word\t* d,\t\t/* [0..39]\tIN\t*/\n\tregister word\t* dp,\t\t/* [-120..-1]\tIN\t*/\n\tword\t\t* bc_out,\t/* \t\tOUT\t*/\n\tword\t\t* Nc_out\t/* \t\tOUT\t*/\n)\n{\n\tregister int  \tk, lambda;\n\tword\t\tNc, bc;\n\tword\t\twt[40];\n\n\tlongword\tL_result;\n\tlongword\tL_max, L_power;\n\tword\t\tR, S, dmax, scal, best_k;\n\tword\t\tltp_cut;\n\n\tregister word\ttemp, wt_k;\n\n\t/*  Search of the optimum scaling of d[0..39].\n\t */\n\tdmax = 0;\n\tfor (k = 0; k <= 39; k++) {\n\t\ttemp = d[k];\n\t\ttemp = GSM_ABS( temp );\n\t\tif (temp > dmax) {\n\t\t\tdmax = temp;\n\t\t\tbest_k = k;\n\t\t}\n\t}\n\ttemp = 0;\n\tif (dmax == 0) scal = 0;\n\telse {\n\t\tassert(dmax > 0);\n\t\ttemp = gsm_norm( (longword)dmax << 16 );\n\t}\n\tif (temp > 6) scal = 0;\n\telse scal = 6 - temp;\n\tassert(scal >= 0);\n\n\t/* Search for the maximum cross-correlation and coding of the LTP lag\n\t */\n\tL_max = 0;\n\tNc    = 40;\t/* index for the maximum cross-correlation */\n\twt_k  = SASR(d[best_k], scal);\n\n\tfor (lambda = 40; lambda <= 120; lambda++) {\n\t\tL_result = (longword)wt_k * dp[best_k - lambda];\n\t\tif (L_result > L_max) {\n\t\t\tNc    = lambda;\n\t\t\tL_max = L_result;\n\t\t}\n\t}\n\t*Nc_out = Nc;\n\tL_max <<= 1;\n\n\t/*  Rescaling of L_max\n\t */\n\tassert(scal <= 100 && scal >= -100);\n\tL_max = L_max >> (6 - scal);\t/* sub(6, scal) */\n\n\tassert( Nc <= 120 && Nc >= 40);\n\n\t/*   Compute the power of the reconstructed short term residual\n\t *   signal dp[..]\n\t */\n\tL_power = 0;\n\tfor (k = 0; k <= 39; k++) {\n\n\t\tregister longword L_temp;\n\n\t\tL_temp   = SASR( dp[k - Nc], 3 );\n\t\tL_power += L_temp * L_temp;\n\t}\n\tL_power <<= 1;\t/* from L_MULT */\n\n\t/*  Normalization of L_max and L_power\n\t */\n\n\tif (L_max <= 0)  {\n\t\t*bc_out = 0;\n\t\treturn;\n\t}\n\tif (L_max >= L_power) {\n\t\t*bc_out = 3;\n\t\treturn;\n\t}\n\n\ttemp = gsm_norm( L_power );\n\n\tR = SASR( L_max   << temp, 16 );\n\tS = SASR( L_power << temp, 16 );\n\n\t/*  Coding of the LTP gain\n\t */\n\n\t/*  Table 4.3a must be used to obtain the level DLB[i] for the\n\t *  quantization of the LTP gain b to get the coded version bc.\n\t */\n\tfor (bc = 0; bc <= 2; bc++) if (R <= gsm_mult(S, gsm_DLB[bc])) break;\n\t*bc_out = bc;\n}\n\n#endif \t/* LTP_CUT */\n\nstatic void Calculation_of_the_LTP_parameters P4((d,dp,bc_out,Nc_out),\n\tregister word\t* d,\t\t/* [0..39]\tIN\t*/\n\tregister word\t* dp,\t\t/* [-120..-1]\tIN\t*/\n\tword\t\t* bc_out,\t/* \t\tOUT\t*/\n\tword\t\t* Nc_out\t/* \t\tOUT\t*/\n)\n{\n\tregister int  \tk, lambda;\n\tword\t\tNc, bc;\n\tword\t\twt[40];\n\n\tlongword\tL_max, L_power;\n\tword\t\tR, S, dmax, scal;\n\tregister word\ttemp;\n\n\t/*  Search of the optimum scaling of d[0..39].\n\t */\n\tdmax = 0;\n\n\tfor (k = 0; k <= 39; k++) {\n\t\ttemp = d[k];\n\t\ttemp = GSM_ABS( temp );\n\t\tif (temp > dmax) dmax = temp;\n\t}\n\n\ttemp = 0;\n\tif (dmax == 0) scal = 0;\n\telse {\n\t\tassert(dmax > 0);\n\t\ttemp = gsm_norm( (longword)dmax << 16 );\n\t}\n\n\tif (temp > 6) scal = 0;\n\telse scal = 6 - temp;\n\n\tassert(scal >= 0);\n\n\t/*  Initialization of a working array wt\n\t */\n\n\tfor (k = 0; k <= 39; k++) wt[k] = SASR( d[k], scal );\n\n\t/* Search for the maximum cross-correlation and coding of the LTP lag\n\t */\n\tL_max = 0;\n\tNc    = 40;\t/* index for the maximum cross-correlation */\n\n\tfor (lambda = 40; lambda <= 120; lambda++) {\n\n# undef STEP\n#\t\tdefine STEP(k) \t(longword)wt[k] * dp[k - lambda]\n\n\t\tregister longword L_result;\n\n\t\tL_result  = STEP(0)  ; L_result += STEP(1) ;\n\t\tL_result += STEP(2)  ; L_result += STEP(3) ;\n\t\tL_result += STEP(4)  ; L_result += STEP(5)  ;\n\t\tL_result += STEP(6)  ; L_result += STEP(7)  ;\n\t\tL_result += STEP(8)  ; L_result += STEP(9)  ;\n\t\tL_result += STEP(10) ; L_result += STEP(11) ;\n\t\tL_result += STEP(12) ; L_result += STEP(13) ;\n\t\tL_result += STEP(14) ; L_result += STEP(15) ;\n\t\tL_result += STEP(16) ; L_result += STEP(17) ;\n\t\tL_result += STEP(18) ; L_result += STEP(19) ;\n\t\tL_result += STEP(20) ; L_result += STEP(21) ;\n\t\tL_result += STEP(22) ; L_result += STEP(23) ;\n\t\tL_result += STEP(24) ; L_result += STEP(25) ;\n\t\tL_result += STEP(26) ; L_result += STEP(27) ;\n\t\tL_result += STEP(28) ; L_result += STEP(29) ;\n\t\tL_result += STEP(30) ; L_result += STEP(31) ;\n\t\tL_result += STEP(32) ; L_result += STEP(33) ;\n\t\tL_result += STEP(34) ; L_result += STEP(35) ;\n\t\tL_result += STEP(36) ; L_result += STEP(37) ;\n\t\tL_result += STEP(38) ; L_result += STEP(39) ;\n\n\t\tif (L_result > L_max) {\n\n\t\t\tNc    = lambda;\n\t\t\tL_max = L_result;\n\t\t}\n\t}\n\n\t*Nc_out = Nc;\n\n\tL_max <<= 1;\n\n\t/*  Rescaling of L_max\n\t */\n\tassert(scal <= 100 && scal >=  -100);\n\tL_max = L_max >> (6 - scal);\t/* sub(6, scal) */\n\n\tassert( Nc <= 120 && Nc >= 40);\n\n\t/*   Compute the power of the reconstructed short term residual\n\t *   signal dp[..]\n\t */\n\tL_power = 0;\n\tfor (k = 0; k <= 39; k++) {\n\n\t\tregister longword L_temp;\n\n\t\tL_temp   = SASR( dp[k - Nc], 3 );\n\t\tL_power += L_temp * L_temp;\n\t}\n\tL_power <<= 1;\t/* from L_MULT */\n\n\t/*  Normalization of L_max and L_power\n\t */\n\n\tif (L_max <= 0)  {\n\t\t*bc_out = 0;\n\t\treturn;\n\t}\n\tif (L_max >= L_power) {\n\t\t*bc_out = 3;\n\t\treturn;\n\t}\n\n\ttemp = gsm_norm( L_power );\n\n\tR = SASR( L_max   << temp, 16 );\n\tS = SASR( L_power << temp, 16 );\n\n\t/*  Coding of the LTP gain\n\t */\n\n\t/*  Table 4.3a must be used to obtain the level DLB[i] for the\n\t *  quantization of the LTP gain b to get the coded version bc.\n\t */\n\tfor (bc = 0; bc <= 2; bc++) if (R <= gsm_mult(S, gsm_DLB[bc])) break;\n\t*bc_out = bc;\n}\n\n#else\t/* USE_FLOAT_MUL */\n\n#ifdef\tLTP_CUT\n\nstatic void Cut_Calculation_of_the_LTP_parameters P5((st, d,dp,bc_out,Nc_out),\n\tstruct gsm_state * st,\t\t/*              IN \t*/\n\tregister word\t* d,\t\t/* [0..39]\tIN\t*/\n\tregister word\t* dp,\t\t/* [-120..-1]\tIN\t*/\n\tword\t\t* bc_out,\t/* \t\tOUT\t*/\n\tword\t\t* Nc_out\t/* \t\tOUT\t*/\n)\n{\n\tregister int  \tk, lambda;\n\tword\t\tNc, bc;\n\tword\t\tltp_cut;\n\n\tfloat\t\twt_float[40];\n\tfloat\t\tdp_float_base[120], * dp_float = dp_float_base + 120;\n\n\tlongword\tL_max, L_power;\n\tword\t\tR, S, dmax, scal;\n\tregister word\ttemp;\n\n\t/*  Search of the optimum scaling of d[0..39].\n\t */\n\tdmax = 0;\n\n\tfor (k = 0; k <= 39; k++) {\n\t\ttemp = d[k];\n\t\ttemp = GSM_ABS( temp );\n\t\tif (temp > dmax) dmax = temp;\n\t}\n\n\ttemp = 0;\n\tif (dmax == 0) scal = 0;\n\telse {\n\t\tassert(dmax > 0);\n\t\ttemp = gsm_norm( (longword)dmax << 16 );\n\t}\n\n\tif (temp > 6) scal = 0;\n\telse scal = 6 - temp;\n\n\tassert(scal >= 0);\n\tltp_cut = (longword)SASR(dmax, scal) * st->ltp_cut / 100; \n\n\n\t/*  Initialization of a working array wt\n\t */\n\n\tfor (k = 0; k < 40; k++) {\n\t\tregister word w = SASR( d[k], scal );\n\t\tif (w < 0 ? w > -ltp_cut : w < ltp_cut) {\n\t\t\twt_float[k] = 0.0;\n\t\t}\n\t\telse {\n\t\t\twt_float[k] =  w;\n\t\t}\n\t}\n\tfor (k = -120; k <  0; k++) dp_float[k] =  dp[k];\n\n\t/* Search for the maximum cross-correlation and coding of the LTP lag\n\t */\n\tL_max = 0;\n\tNc    = 40;\t/* index for the maximum cross-correlation */\n\n\tfor (lambda = 40; lambda <= 120; lambda += 9) {\n\n\t\t/*  Calculate L_result for l = lambda .. lambda + 9.\n\t\t */\n\t\tregister float *lp = dp_float - lambda;\n\n\t\tregister float\tW;\n\t\tregister float\ta = lp[-8], b = lp[-7], c = lp[-6],\n\t\t\t\td = lp[-5], e = lp[-4], f = lp[-3],\n\t\t\t\tg = lp[-2], h = lp[-1];\n\t\tregister float  E; \n\t\tregister float  S0 = 0, S1 = 0, S2 = 0, S3 = 0, S4 = 0,\n\t\t\t\tS5 = 0, S6 = 0, S7 = 0, S8 = 0;\n\n#\t\tundef STEP\n#\t\tdefine\tSTEP(K, a, b, c, d, e, f, g, h) \\\n\t\t\tif ((W = wt_float[K]) != 0.0) {\t\\\n\t\t\tE = W * a; S8 += E;\t\t\\\n\t\t\tE = W * b; S7 += E;\t\t\\\n\t\t\tE = W * c; S6 += E;\t\t\\\n\t\t\tE = W * d; S5 += E;\t\t\\\n\t\t\tE = W * e; S4 += E;\t\t\\\n\t\t\tE = W * f; S3 += E;\t\t\\\n\t\t\tE = W * g; S2 += E;\t\t\\\n\t\t\tE = W * h; S1 += E;\t\t\\\n\t\t\ta  = lp[K];\t\t\t\\\n\t\t\tE = W * a; S0 += E; } else (a = lp[K])\n\n#\t\tdefine\tSTEP_A(K)\tSTEP(K, a, b, c, d, e, f, g, h)\n#\t\tdefine\tSTEP_B(K)\tSTEP(K, b, c, d, e, f, g, h, a)\n#\t\tdefine\tSTEP_C(K)\tSTEP(K, c, d, e, f, g, h, a, b)\n#\t\tdefine\tSTEP_D(K)\tSTEP(K, d, e, f, g, h, a, b, c)\n#\t\tdefine\tSTEP_E(K)\tSTEP(K, e, f, g, h, a, b, c, d)\n#\t\tdefine\tSTEP_F(K)\tSTEP(K, f, g, h, a, b, c, d, e)\n#\t\tdefine\tSTEP_G(K)\tSTEP(K, g, h, a, b, c, d, e, f)\n#\t\tdefine\tSTEP_H(K)\tSTEP(K, h, a, b, c, d, e, f, g)\n\n\t\tSTEP_A( 0); STEP_B( 1); STEP_C( 2); STEP_D( 3);\n\t\tSTEP_E( 4); STEP_F( 5); STEP_G( 6); STEP_H( 7);\n\n\t\tSTEP_A( 8); STEP_B( 9); STEP_C(10); STEP_D(11);\n\t\tSTEP_E(12); STEP_F(13); STEP_G(14); STEP_H(15);\n\n\t\tSTEP_A(16); STEP_B(17); STEP_C(18); STEP_D(19);\n\t\tSTEP_E(20); STEP_F(21); STEP_G(22); STEP_H(23);\n\n\t\tSTEP_A(24); STEP_B(25); STEP_C(26); STEP_D(27);\n\t\tSTEP_E(28); STEP_F(29); STEP_G(30); STEP_H(31);\n\n\t\tSTEP_A(32); STEP_B(33); STEP_C(34); STEP_D(35);\n\t\tSTEP_E(36); STEP_F(37); STEP_G(38); STEP_H(39);\n\n\t\tif (S0 > L_max) { L_max = S0; Nc = lambda;     }\n\t\tif (S1 > L_max) { L_max = S1; Nc = lambda + 1; }\n\t\tif (S2 > L_max) { L_max = S2; Nc = lambda + 2; }\n\t\tif (S3 > L_max) { L_max = S3; Nc = lambda + 3; }\n\t\tif (S4 > L_max) { L_max = S4; Nc = lambda + 4; }\n\t\tif (S5 > L_max) { L_max = S5; Nc = lambda + 5; }\n\t\tif (S6 > L_max) { L_max = S6; Nc = lambda + 6; }\n\t\tif (S7 > L_max) { L_max = S7; Nc = lambda + 7; }\n\t\tif (S8 > L_max) { L_max = S8; Nc = lambda + 8; }\n\n\t}\n\t*Nc_out = Nc;\n\n\tL_max <<= 1;\n\n\t/*  Rescaling of L_max\n\t */\n\tassert(scal <= 100 && scal >=  -100);\n\tL_max = L_max >> (6 - scal);\t/* sub(6, scal) */\n\n\tassert( Nc <= 120 && Nc >= 40);\n\n\t/*   Compute the power of the reconstructed short term residual\n\t *   signal dp[..]\n\t */\n\tL_power = 0;\n\tfor (k = 0; k <= 39; k++) {\n\n\t\tregister longword L_temp;\n\n\t\tL_temp   = SASR( dp[k - Nc], 3 );\n\t\tL_power += L_temp * L_temp;\n\t}\n\tL_power <<= 1;\t/* from L_MULT */\n\n\t/*  Normalization of L_max and L_power\n\t */\n\n\tif (L_max <= 0)  {\n\t\t*bc_out = 0;\n\t\treturn;\n\t}\n\tif (L_max >= L_power) {\n\t\t*bc_out = 3;\n\t\treturn;\n\t}\n\n\ttemp = gsm_norm( L_power );\n\n\tR = SASR( L_max   << temp, 16 );\n\tS = SASR( L_power << temp, 16 );\n\n\t/*  Coding of the LTP gain\n\t */\n\n\t/*  Table 4.3a must be used to obtain the level DLB[i] for the\n\t *  quantization of the LTP gain b to get the coded version bc.\n\t */\n\tfor (bc = 0; bc <= 2; bc++) if (R <= gsm_mult(S, gsm_DLB[bc])) break;\n\t*bc_out = bc;\n}\n\n#endif /* LTP_CUT */\n\nstatic void Calculation_of_the_LTP_parameters P4((d,dp,bc_out,Nc_out),\n\tregister word\t* d,\t\t/* [0..39]\tIN\t*/\n\tregister word\t* dp,\t\t/* [-120..-1]\tIN\t*/\n\tword\t\t* bc_out,\t/* \t\tOUT\t*/\n\tword\t\t* Nc_out\t/* \t\tOUT\t*/\n)\n{\n\tregister int  \tk, lambda;\n\tword\t\tNc, bc;\n\n\tfloat\t\twt_float[40];\n\tfloat\t\tdp_float_base[120], * dp_float = dp_float_base + 120;\n\n\tlongword\tL_max, L_power;\n\tword\t\tR, S, dmax, scal;\n\tregister word\ttemp;\n\n\t/*  Search of the optimum scaling of d[0..39].\n\t */\n\tdmax = 0;\n\n\tfor (k = 0; k <= 39; k++) {\n\t\ttemp = d[k];\n\t\ttemp = GSM_ABS( temp );\n\t\tif (temp > dmax) dmax = temp;\n\t}\n\n\ttemp = 0;\n\tif (dmax == 0) scal = 0;\n\telse {\n\t\tassert(dmax > 0);\n\t\ttemp = gsm_norm( (longword)dmax << 16 );\n\t}\n\n\tif (temp > 6) scal = 0;\n\telse scal = 6 - temp;\n\n\tassert(scal >= 0);\n\n\t/*  Initialization of a working array wt\n\t */\n\n\tfor (k =    0; k < 40; k++) wt_float[k] =  SASR( d[k], scal );\n\tfor (k = -120; k <  0; k++) dp_float[k] =  dp[k];\n\n\t/* Search for the maximum cross-correlation and coding of the LTP lag\n\t */\n\tL_max = 0;\n\tNc    = 40;\t/* index for the maximum cross-correlation */\n\n\tfor (lambda = 40; lambda <= 120; lambda += 9) {\n\n\t\t/*  Calculate L_result for l = lambda .. lambda + 9.\n\t\t */\n\t\tregister float *lp = dp_float - lambda;\n\n\t\tregister float\tW;\n\t\tregister float\ta = lp[-8], b = lp[-7], c = lp[-6],\n\t\t\t\td = lp[-5], e = lp[-4], f = lp[-3],\n\t\t\t\tg = lp[-2], h = lp[-1];\n\t\tregister float  E; \n\t\tregister float  S0 = 0, S1 = 0, S2 = 0, S3 = 0, S4 = 0,\n\t\t\t\tS5 = 0, S6 = 0, S7 = 0, S8 = 0;\n\n#\t\tundef STEP\n#\t\tdefine\tSTEP(K, a, b, c, d, e, f, g, h) \\\n\t\t\tW = wt_float[K];\t\t\\\n\t\t\tE = W * a; S8 += E;\t\t\\\n\t\t\tE = W * b; S7 += E;\t\t\\\n\t\t\tE = W * c; S6 += E;\t\t\\\n\t\t\tE = W * d; S5 += E;\t\t\\\n\t\t\tE = W * e; S4 += E;\t\t\\\n\t\t\tE = W * f; S3 += E;\t\t\\\n\t\t\tE = W * g; S2 += E;\t\t\\\n\t\t\tE = W * h; S1 += E;\t\t\\\n\t\t\ta  = lp[K];\t\t\t\\\n\t\t\tE = W * a; S0 += E\n\n#\t\tdefine\tSTEP_A(K)\tSTEP(K, a, b, c, d, e, f, g, h)\n#\t\tdefine\tSTEP_B(K)\tSTEP(K, b, c, d, e, f, g, h, a)\n#\t\tdefine\tSTEP_C(K)\tSTEP(K, c, d, e, f, g, h, a, b)\n#\t\tdefine\tSTEP_D(K)\tSTEP(K, d, e, f, g, h, a, b, c)\n#\t\tdefine\tSTEP_E(K)\tSTEP(K, e, f, g, h, a, b, c, d)\n#\t\tdefine\tSTEP_F(K)\tSTEP(K, f, g, h, a, b, c, d, e)\n#\t\tdefine\tSTEP_G(K)\tSTEP(K, g, h, a, b, c, d, e, f)\n#\t\tdefine\tSTEP_H(K)\tSTEP(K, h, a, b, c, d, e, f, g)\n\n\t\tSTEP_A( 0); STEP_B( 1); STEP_C( 2); STEP_D( 3);\n\t\tSTEP_E( 4); STEP_F( 5); STEP_G( 6); STEP_H( 7);\n\n\t\tSTEP_A( 8); STEP_B( 9); STEP_C(10); STEP_D(11);\n\t\tSTEP_E(12); STEP_F(13); STEP_G(14); STEP_H(15);\n\n\t\tSTEP_A(16); STEP_B(17); STEP_C(18); STEP_D(19);\n\t\tSTEP_E(20); STEP_F(21); STEP_G(22); STEP_H(23);\n\n\t\tSTEP_A(24); STEP_B(25); STEP_C(26); STEP_D(27);\n\t\tSTEP_E(28); STEP_F(29); STEP_G(30); STEP_H(31);\n\n\t\tSTEP_A(32); STEP_B(33); STEP_C(34); STEP_D(35);\n\t\tSTEP_E(36); STEP_F(37); STEP_G(38); STEP_H(39);\n\n\t\tif (S0 > L_max) { L_max = S0; Nc = lambda;     }\n\t\tif (S1 > L_max) { L_max = S1; Nc = lambda + 1; }\n\t\tif (S2 > L_max) { L_max = S2; Nc = lambda + 2; }\n\t\tif (S3 > L_max) { L_max = S3; Nc = lambda + 3; }\n\t\tif (S4 > L_max) { L_max = S4; Nc = lambda + 4; }\n\t\tif (S5 > L_max) { L_max = S5; Nc = lambda + 5; }\n\t\tif (S6 > L_max) { L_max = S6; Nc = lambda + 6; }\n\t\tif (S7 > L_max) { L_max = S7; Nc = lambda + 7; }\n\t\tif (S8 > L_max) { L_max = S8; Nc = lambda + 8; }\n\t}\n\t*Nc_out = Nc;\n\n\tL_max <<= 1;\n\n\t/*  Rescaling of L_max\n\t */\n\tassert(scal <= 100 && scal >=  -100);\n\tL_max = L_max >> (6 - scal);\t/* sub(6, scal) */\n\n\tassert( Nc <= 120 && Nc >= 40);\n\n\t/*   Compute the power of the reconstructed short term residual\n\t *   signal dp[..]\n\t */\n\tL_power = 0;\n\tfor (k = 0; k <= 39; k++) {\n\n\t\tregister longword L_temp;\n\n\t\tL_temp   = SASR( dp[k - Nc], 3 );\n\t\tL_power += L_temp * L_temp;\n\t}\n\tL_power <<= 1;\t/* from L_MULT */\n\n\t/*  Normalization of L_max and L_power\n\t */\n\n\tif (L_max <= 0)  {\n\t\t*bc_out = 0;\n\t\treturn;\n\t}\n\tif (L_max >= L_power) {\n\t\t*bc_out = 3;\n\t\treturn;\n\t}\n\n\ttemp = gsm_norm( L_power );\n\n\tR = SASR( L_max   << temp, 16 );\n\tS = SASR( L_power << temp, 16 );\n\n\t/*  Coding of the LTP gain\n\t */\n\n\t/*  Table 4.3a must be used to obtain the level DLB[i] for the\n\t *  quantization of the LTP gain b to get the coded version bc.\n\t */\n\tfor (bc = 0; bc <= 2; bc++) if (R <= gsm_mult(S, gsm_DLB[bc])) break;\n\t*bc_out = bc;\n}\n\n#ifdef\tFAST\n#ifdef\tLTP_CUT\n\nstatic void Cut_Fast_Calculation_of_the_LTP_parameters P5((st,\n\t\t\t\t\t\t\td,dp,bc_out,Nc_out),\n\tstruct gsm_state * st,\t\t/*              IN\t*/\n\tregister word\t* d,\t\t/* [0..39]\tIN\t*/\n\tregister word\t* dp,\t\t/* [-120..-1]\tIN\t*/\n\tword\t\t* bc_out,\t/* \t\tOUT\t*/\n\tword\t\t* Nc_out\t/* \t\tOUT\t*/\n)\n{\n\tregister int  \tk, lambda;\n\tregister float\twt_float;\n\tword\t\tNc, bc;\n\tword\t\twt_max, best_k, ltp_cut;\n\n\tfloat\t\tdp_float_base[120], * dp_float = dp_float_base + 120;\n\n\tregister float\tL_result, L_max, L_power;\n\n\twt_max = 0;\n\n\tfor (k = 0; k < 40; ++k) {\n\t\tif      ( d[k] > wt_max) wt_max =  d[best_k = k];\n\t\telse if (-d[k] > wt_max) wt_max = -d[best_k = k];\n\t}\n\n\tassert(wt_max >= 0);\n\twt_float = (float)wt_max;\n\n\tfor (k = -120; k < 0; ++k) dp_float[k] = (float)dp[k];\n\n\t/* Search for the maximum cross-correlation and coding of the LTP lag\n\t */\n\tL_max = 0;\n\tNc    = 40;\t/* index for the maximum cross-correlation */\n\n\tfor (lambda = 40; lambda <= 120; lambda++) {\n\t\tL_result = wt_float * dp_float[best_k - lambda];\n\t\tif (L_result > L_max) {\n\t\t\tNc    = lambda;\n\t\t\tL_max = L_result;\n\t\t}\n\t}\n\n\t*Nc_out = Nc;\n\tif (L_max <= 0.)  {\n\t\t*bc_out = 0;\n\t\treturn;\n\t}\n\n\t/*  Compute the power of the reconstructed short term residual\n\t *  signal dp[..]\n\t */\n\tdp_float -= Nc;\n\tL_power = 0;\n\tfor (k = 0; k < 40; ++k) {\n\t\tregister float f = dp_float[k];\n\t\tL_power += f * f;\n\t}\n\n\tif (L_max >= L_power) {\n\t\t*bc_out = 3;\n\t\treturn;\n\t}\n\n\t/*  Coding of the LTP gain\n\t *  Table 4.3a must be used to obtain the level DLB[i] for the\n\t *  quantization of the LTP gain b to get the coded version bc.\n\t */\n\tlambda = L_max / L_power * 32768.;\n\tfor (bc = 0; bc <= 2; ++bc) if (lambda <= gsm_DLB[bc]) break;\n\t*bc_out = bc;\n}\n\n#endif /* LTP_CUT */\n\nstatic void Fast_Calculation_of_the_LTP_parameters P4((d,dp,bc_out,Nc_out),\n\tregister word\t* d,\t\t/* [0..39]\tIN\t*/\n\tregister word\t* dp,\t\t/* [-120..-1]\tIN\t*/\n\tword\t\t* bc_out,\t/* \t\tOUT\t*/\n\tword\t\t* Nc_out\t/* \t\tOUT\t*/\n)\n{\n\tregister int  \tk, lambda;\n\tword\t\tNc, bc;\n\n\tfloat\t\twt_float[40];\n\tfloat\t\tdp_float_base[120], * dp_float = dp_float_base + 120;\n\n\tregister float\tL_max, L_power;\n\n\tfor (k = 0; k < 40; ++k) wt_float[k] = (float)d[k];\n\tfor (k = -120; k < 0; ++k) dp_float[k] = (float)dp[k];\n\n\t/* Search for the maximum cross-correlation and coding of the LTP lag\n\t */\n\tL_max = 0;\n\tNc    = 40;\t/* index for the maximum cross-correlation */\n\n\tfor (lambda = 40; lambda <= 120; lambda += 9) {\n\n\t\t/*  Calculate L_result for l = lambda .. lambda + 9.\n\t\t */\n\t\tregister float *lp = dp_float - lambda;\n\n\t\tregister float\tW;\n\t\tregister float\ta = lp[-8], b = lp[-7], c = lp[-6],\n\t\t\t\td = lp[-5], e = lp[-4], f = lp[-3],\n\t\t\t\tg = lp[-2], h = lp[-1];\n\t\tregister float  E; \n\t\tregister float  S0 = 0, S1 = 0, S2 = 0, S3 = 0, S4 = 0,\n\t\t\t\tS5 = 0, S6 = 0, S7 = 0, S8 = 0;\n\n#\t\tundef STEP\n#\t\tdefine\tSTEP(K, a, b, c, d, e, f, g, h) \\\n\t\t\tW = wt_float[K];\t\t\\\n\t\t\tE = W * a; S8 += E;\t\t\\\n\t\t\tE = W * b; S7 += E;\t\t\\\n\t\t\tE = W * c; S6 += E;\t\t\\\n\t\t\tE = W * d; S5 += E;\t\t\\\n\t\t\tE = W * e; S4 += E;\t\t\\\n\t\t\tE = W * f; S3 += E;\t\t\\\n\t\t\tE = W * g; S2 += E;\t\t\\\n\t\t\tE = W * h; S1 += E;\t\t\\\n\t\t\ta  = lp[K];\t\t\t\\\n\t\t\tE = W * a; S0 += E\n\n#\t\tdefine\tSTEP_A(K)\tSTEP(K, a, b, c, d, e, f, g, h)\n#\t\tdefine\tSTEP_B(K)\tSTEP(K, b, c, d, e, f, g, h, a)\n#\t\tdefine\tSTEP_C(K)\tSTEP(K, c, d, e, f, g, h, a, b)\n#\t\tdefine\tSTEP_D(K)\tSTEP(K, d, e, f, g, h, a, b, c)\n#\t\tdefine\tSTEP_E(K)\tSTEP(K, e, f, g, h, a, b, c, d)\n#\t\tdefine\tSTEP_F(K)\tSTEP(K, f, g, h, a, b, c, d, e)\n#\t\tdefine\tSTEP_G(K)\tSTEP(K, g, h, a, b, c, d, e, f)\n#\t\tdefine\tSTEP_H(K)\tSTEP(K, h, a, b, c, d, e, f, g)\n\n\t\tSTEP_A( 0); STEP_B( 1); STEP_C( 2); STEP_D( 3);\n\t\tSTEP_E( 4); STEP_F( 5); STEP_G( 6); STEP_H( 7);\n\n\t\tSTEP_A( 8); STEP_B( 9); STEP_C(10); STEP_D(11);\n\t\tSTEP_E(12); STEP_F(13); STEP_G(14); STEP_H(15);\n\n\t\tSTEP_A(16); STEP_B(17); STEP_C(18); STEP_D(19);\n\t\tSTEP_E(20); STEP_F(21); STEP_G(22); STEP_H(23);\n\n\t\tSTEP_A(24); STEP_B(25); STEP_C(26); STEP_D(27);\n\t\tSTEP_E(28); STEP_F(29); STEP_G(30); STEP_H(31);\n\n\t\tSTEP_A(32); STEP_B(33); STEP_C(34); STEP_D(35);\n\t\tSTEP_E(36); STEP_F(37); STEP_G(38); STEP_H(39);\n\n\t\tif (S0 > L_max) { L_max = S0; Nc = lambda;     }\n\t\tif (S1 > L_max) { L_max = S1; Nc = lambda + 1; }\n\t\tif (S2 > L_max) { L_max = S2; Nc = lambda + 2; }\n\t\tif (S3 > L_max) { L_max = S3; Nc = lambda + 3; }\n\t\tif (S4 > L_max) { L_max = S4; Nc = lambda + 4; }\n\t\tif (S5 > L_max) { L_max = S5; Nc = lambda + 5; }\n\t\tif (S6 > L_max) { L_max = S6; Nc = lambda + 6; }\n\t\tif (S7 > L_max) { L_max = S7; Nc = lambda + 7; }\n\t\tif (S8 > L_max) { L_max = S8; Nc = lambda + 8; }\n\t}\n\t*Nc_out = Nc;\n\n\tif (L_max <= 0.)  {\n\t\t*bc_out = 0;\n\t\treturn;\n\t}\n\n\t/*  Compute the power of the reconstructed short term residual\n\t *  signal dp[..]\n\t */\n\tdp_float -= Nc;\n\tL_power = 0;\n\tfor (k = 0; k < 40; ++k) {\n\t\tregister float f = dp_float[k];\n\t\tL_power += f * f;\n\t}\n\n\tif (L_max >= L_power) {\n\t\t*bc_out = 3;\n\t\treturn;\n\t}\n\n\t/*  Coding of the LTP gain\n\t *  Table 4.3a must be used to obtain the level DLB[i] for the\n\t *  quantization of the LTP gain b to get the coded version bc.\n\t */\n\tlambda = L_max / L_power * 32768.;\n\tfor (bc = 0; bc <= 2; ++bc) if (lambda <= gsm_DLB[bc]) break;\n\t*bc_out = bc;\n}\n\n#endif\t/* FAST \t */\n#endif\t/* USE_FLOAT_MUL */\n\n\n/* 4.2.12 */\n\nstatic void Long_term_analysis_filtering P6((bc,Nc,dp,d,dpp,e),\n\tword\t\tbc,\t/* \t\t\t\t\tIN  */\n\tword\t\tNc,\t/* \t\t\t\t\tIN  */\n\tregister word\t* dp,\t/* previous d\t[-120..-1]\t\tIN  */\n\tregister word\t* d,\t/* d\t\t[0..39]\t\t\tIN  */\n\tregister word\t* dpp,\t/* estimate\t[0..39]\t\t\tOUT */\n\tregister word\t* e\t/* long term res. signal [0..39]\tOUT */\n)\n/*\n *  In this part, we have to decode the bc parameter to compute\n *  the samples of the estimate dpp[0..39].  The decoding of bc needs the\n *  use of table 4.3b.  The long term residual signal e[0..39]\n *  is then calculated to be fed to the RPE encoding section.\n */\n{\n\tregister int      k;\n\tregister longword ltmp;\n\n#\tundef STEP\n#\tdefine STEP(BP)\t\t\t\t\t\\\n\tfor (k = 0; k <= 39; k++) {\t\t\t\\\n\t\tdpp[k]  = GSM_MULT_R( BP, dp[k - Nc]);\t\\\n\t\te[k]\t= GSM_SUB( d[k], dpp[k] );\t\\\n\t}\n\n\tswitch (bc) {\n\tcase 0:\tSTEP(  3277 ); break;\n\tcase 1:\tSTEP( 11469 ); break;\n\tcase 2: STEP( 21299 ); break;\n\tcase 3: STEP( 32767 ); break; \n\t}\n}\n\nvoid Gsm_Long_Term_Predictor P7((S,d,dp,e,dpp,Nc,bc), \t/* 4x for 160 samples */\n\n\tstruct gsm_state\t* S,\n\n\tword\t* d,\t/* [0..39]   residual signal\tIN\t*/\n\tword\t* dp,\t/* [-120..-1] d'\t\tIN\t*/\n\n\tword\t* e,\t/* [0..39] \t\t\tOUT\t*/\n\tword\t* dpp,\t/* [0..39] \t\t\tOUT\t*/\n\tword\t* Nc,\t/* correlation lag\t\tOUT\t*/\n\tword\t* bc\t/* gain factor\t\t\tOUT\t*/\n)\n{\n\tassert( d  ); assert( dp ); assert( e  );\n\tassert( dpp); assert( Nc ); assert( bc );\n\n#if defined(FAST) && defined(USE_FLOAT_MUL)\n\tif (S->fast) \n#if   defined (LTP_CUT)\n\t\tif (S->ltp_cut)\n\t\t\tCut_Fast_Calculation_of_the_LTP_parameters(S,\n\t\t\t\td, dp, bc, Nc);\n\t\telse\n#endif /* LTP_CUT */\n\t\t\tFast_Calculation_of_the_LTP_parameters(d, dp, bc, Nc );\n\telse \n#endif /* FAST & USE_FLOAT_MUL */\n#ifdef LTP_CUT\n\t\tif (S->ltp_cut)\n\t\t\tCut_Calculation_of_the_LTP_parameters(S, d, dp, bc, Nc);\n\t\telse\n#endif\n\t\t\tCalculation_of_the_LTP_parameters(d, dp, bc, Nc);\n\n\tLong_term_analysis_filtering( *bc, *Nc, dp, d, dpp, e );\n}\n\n/* 4.3.2 */\nvoid Gsm_Long_Term_Synthesis_Filtering P5((S,Ncr,bcr,erp,drp),\n\tstruct gsm_state\t* S,\n\n\tword\t\t\tNcr,\n\tword\t\t\tbcr,\n\tregister word\t\t* erp,\t   /* [0..39]\t\t  \t IN */\n\tregister word\t\t* drp\t   /* [-120..-1] IN, [-120..40] OUT */\n)\n/*\n *  This procedure uses the bcr and Ncr parameter to realize the\n *  long term synthesis filtering.  The decoding of bcr needs\n *  table 4.3b.\n */\n{\n\tregister longword\tltmp;\t/* for ADD */\n\tregister int \t\tk;\n\tword\t\t\tbrp, drpp, Nr;\n\n\t/*  Check the limits of Nr.\n\t */\n\tNr = Ncr < 40 || Ncr > 120 ? S->nrp : Ncr;\n\tS->nrp = Nr;\n\tassert(Nr >= 40 && Nr <= 120);\n\n\t/*  Decoding of the LTP gain bcr\n\t */\n\tbrp = gsm_QLB[ bcr ];\n\n\t/*  Computation of the reconstructed short term residual \n\t *  signal drp[0..39]\n\t */\n\tassert(brp != MIN_WORD);\n\n\tfor (k = 0; k <= 39; k++) {\n\t\tdrpp   = GSM_MULT_R( brp, drp[ k - Nr ] );\n\t\tdrp[k] = GSM_ADD( erp[k], drpp );\n\t}\n\n\t/*\n\t *  Update of the reconstructed short term residual signal\n\t *  drp[ -1..-120 ]\n\t */\n\n\tfor (k = 0; k <= 119; k++) drp[ -120 + k ] = drp[ -80 + k ];\n}\n"
  },
  {
    "path": "gsm/lpc.c",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/* $Header: /home/cvs/giga/ladspa-swh/gsm/lpc.c,v 1.1 2001/06/10 21:36:51 swh Exp $ */\n\n#include <stdio.h>\n#include <assert.h>\n\n#include \"private.h\"\n\n#include \"gsm.h\"\n#include \"proto.h\"\n\n#undef\tP\n\n/*\n *  4.2.4 .. 4.2.7 LPC ANALYSIS SECTION\n */\n\n/* 4.2.4 */\n\n\nstatic void Autocorrelation P2((s, L_ACF),\n\tword     * s,\t\t/* [0..159]\tIN/OUT  */\n \tlongword * L_ACF)\t/* [0..8]\tOUT     */\n/*\n *  The goal is to compute the array L_ACF[k].  The signal s[i] must\n *  be scaled in order to avoid an overflow situation.\n */\n{\n\tregister int\tk, i;\n\n\tword\t\ttemp, smax, scalauto;\n\n#ifdef\tUSE_FLOAT_MUL\n\tfloat\t\tfloat_s[160];\n#endif\n\n\t/*  Dynamic scaling of the array  s[0..159]\n\t */\n\n\t/*  Search for the maximum.\n\t */\n\tsmax = 0;\n\tfor (k = 0; k <= 159; k++) {\n\t\ttemp = GSM_ABS( s[k] );\n\t\tif (temp > smax) smax = temp;\n\t}\n\n\t/*  Computation of the scaling factor.\n\t */\n\tif (smax == 0) scalauto = 0;\n\telse {\n\t\tassert(smax > 0);\n\t\tscalauto = 4 - gsm_norm( (longword)smax << 16 );/* sub(4,..) */\n\t}\n\n\t/*  Scaling of the array s[0...159]\n\t */\n\n\tif (scalauto > 0) {\n\n# ifdef USE_FLOAT_MUL\n#   define SCALE(n)\t\\\n\tcase n: for (k = 0; k <= 159; k++) \\\n\t\t\tfloat_s[k] = (float)\t\\\n\t\t\t\t(s[k] = GSM_MULT_R(s[k], 16384 >> (n-1)));\\\n\t\tbreak;\n# else \n#   define SCALE(n)\t\\\n\tcase n: for (k = 0; k <= 159; k++) \\\n\t\t\ts[k] = GSM_MULT_R( s[k], 16384 >> (n-1) );\\\n\t\tbreak;\n# endif /* USE_FLOAT_MUL */\n\n\t\tswitch (scalauto) {\n\t\tSCALE(1)\n\t\tSCALE(2)\n\t\tSCALE(3)\n\t\tSCALE(4)\n\t\t}\n# undef\tSCALE\n\t}\n# ifdef\tUSE_FLOAT_MUL\n\telse for (k = 0; k <= 159; k++) float_s[k] = (float) s[k];\n# endif\n\n\t/*  Compute the L_ACF[..].\n\t */\n\t{\n# ifdef\tUSE_FLOAT_MUL\n\t\tregister float * sp = float_s;\n\t\tregister float   sl = *sp;\n\n#\t\tdefine STEP(k)\t L_ACF[k] += (longword)(sl * sp[ -(k) ]);\n# else\n\t\tword  * sp = s;\n\t\tword    sl = *sp;\n\n#\t\tdefine STEP(k)\t L_ACF[k] += ((longword)sl * sp[ -(k) ]);\n# endif\n\n#\tdefine NEXTI\t sl = *++sp\n\n\n\tfor (k = 9; k--; L_ACF[k] = 0) ;\n\n\tSTEP (0);\n\tNEXTI;\n\tSTEP(0); STEP(1);\n\tNEXTI;\n\tSTEP(0); STEP(1); STEP(2);\n\tNEXTI;\n\tSTEP(0); STEP(1); STEP(2); STEP(3);\n\tNEXTI;\n\tSTEP(0); STEP(1); STEP(2); STEP(3); STEP(4);\n\tNEXTI;\n\tSTEP(0); STEP(1); STEP(2); STEP(3); STEP(4); STEP(5);\n\tNEXTI;\n\tSTEP(0); STEP(1); STEP(2); STEP(3); STEP(4); STEP(5); STEP(6);\n\tNEXTI;\n\tSTEP(0); STEP(1); STEP(2); STEP(3); STEP(4); STEP(5); STEP(6); STEP(7);\n\n\tfor (i = 8; i <= 159; i++) {\n\n\t\tNEXTI;\n\n\t\tSTEP(0);\n\t\tSTEP(1); STEP(2); STEP(3); STEP(4);\n\t\tSTEP(5); STEP(6); STEP(7); STEP(8);\n\t}\n\n\tfor (k = 9; k--; L_ACF[k] <<= 1) ; \n\n\t}\n\t/*   Rescaling of the array s[0..159]\n\t */\n\tif (scalauto > 0) {\n\t\tassert(scalauto <= 4); \n\t\tfor (k = 160; k--; *s++ <<= scalauto) ;\n\t}\n}\n\n#if defined(USE_FLOAT_MUL) && defined(FAST)\n\nstatic void Fast_Autocorrelation P2((s, L_ACF),\n\tword * s,\t\t/* [0..159]\tIN/OUT  */\n \tlongword * L_ACF)\t/* [0..8]\tOUT     */\n{\n\tregister int\tk, i;\n\tfloat f_L_ACF[9];\n\tfloat scale;\n\n\tfloat          s_f[160];\n\tregister float *sf = s_f;\n\n\tfor (i = 0; i < 160; ++i) sf[i] = s[i];\n\tfor (k = 0; k <= 8; k++) {\n\t\tregister float L_temp2 = 0;\n\t\tregister float *sfl = sf - k;\n\t\tfor (i = k; i < 160; ++i) L_temp2 += sf[i] * sfl[i];\n\t\tf_L_ACF[k] = L_temp2;\n\t}\n\tscale = MAX_LONGWORD / f_L_ACF[0];\n\n\tfor (k = 0; k <= 8; k++) {\n\t\tL_ACF[k] = f_L_ACF[k] * scale;\n\t}\n}\n#endif\t/* defined (USE_FLOAT_MUL) && defined (FAST) */\n\n/* 4.2.5 */\n\nstatic void Reflection_coefficients P2( (L_ACF, r),\n\tlongword\t* L_ACF,\t\t/* 0...8\tIN\t*/\n\tregister word\t* r\t\t\t/* 0...7\tOUT \t*/\n)\n{\n\tregister int\ti, m, n;\n\tregister word\ttemp;\n\tregister longword ltmp;\n\tword\t\tACF[9];\t/* 0..8 */\n\tword\t\tP[  9];\t/* 0..8 */\n\tword\t\tK[  9]; /* 2..8 */\n\n\t/*  Schur recursion with 16 bits arithmetic.\n\t */\n\n\tif (L_ACF[0] == 0) {\n\t\tfor (i = 8; i--; *r++ = 0) ;\n\t\treturn;\n\t}\n\n\tassert( L_ACF[0] != 0 );\n\ttemp = gsm_norm( L_ACF[0] );\n\n\tassert(temp >= 0 && temp < 32);\n\n\t/* ? overflow ? */\n\tfor (i = 0; i <= 8; i++) ACF[i] = SASR( L_ACF[i] << temp, 16 );\n\n\t/*   Initialize array P[..] and K[..] for the recursion.\n\t */\n\n\tfor (i = 1; i <= 7; i++) K[ i ] = ACF[ i ];\n\tfor (i = 0; i <= 8; i++) P[ i ] = ACF[ i ];\n\n\t/*   Compute reflection coefficients\n\t */\n\tfor (n = 1; n <= 8; n++, r++) {\n\n\t\ttemp = P[1];\n\t\ttemp = GSM_ABS(temp);\n\t\tif (P[0] < temp) {\n\t\t\tfor (i = n; i <= 8; i++) *r++ = 0;\n\t\t\treturn;\n\t\t}\n\n\t\t*r = gsm_div( temp, P[0] );\n\n\t\tassert(*r >= 0);\n\t\tif (P[1] > 0) *r = -*r;\t\t/* r[n] = sub(0, r[n]) */\n\t\tassert (*r != MIN_WORD);\n\t\tif (n == 8) return; \n\n\t\t/*  Schur recursion\n\t\t */\n\t\ttemp = GSM_MULT_R( P[1], *r );\n\t\tP[0] = GSM_ADD( P[0], temp );\n\n\t\tfor (m = 1; m <= 8 - n; m++) {\n\t\t\ttemp     = GSM_MULT_R( K[ m   ],    *r );\n\t\t\tP[m]     = GSM_ADD(    P[ m+1 ],  temp );\n\n\t\t\ttemp     = GSM_MULT_R( P[ m+1 ],    *r );\n\t\t\tK[m]     = GSM_ADD(    K[ m   ],  temp );\n\t\t}\n\t}\n}\n\n/* 4.2.6 */\n\nstatic void Transformation_to_Log_Area_Ratios P1((r),\n\tregister word\t* r \t\t\t/* 0..7\t   IN/OUT */\n)\n/*\n *  The following scaling for r[..] and LAR[..] has been used:\n *\n *  r[..]   = integer( real_r[..]*32768. ); -1 <= real_r < 1.\n *  LAR[..] = integer( real_LAR[..] * 16384 );\n *  with -1.625 <= real_LAR <= 1.625\n */\n{\n\tregister word\ttemp;\n\tregister int\ti;\n\n\n\t/* Computation of the LAR[0..7] from the r[0..7]\n\t */\n\tfor (i = 1; i <= 8; i++, r++) {\n\n\t\ttemp = *r;\n\t\ttemp = GSM_ABS(temp);\n\t\tassert(temp >= 0);\n\n\t\tif (temp < 22118) {\n\t\t\ttemp >>= 1;\n\t\t} else if (temp < 31130) {\n\t\t\tassert( temp >= 11059 );\n\t\t\ttemp -= 11059;\n\t\t} else {\n\t\t\tassert( temp >= 26112 );\n\t\t\ttemp -= 26112;\n\t\t\ttemp <<= 2;\n\t\t}\n\n\t\t*r = *r < 0 ? -temp : temp;\n\t\tassert( *r != MIN_WORD );\n\t}\n}\n\n/* 4.2.7 */\n\nstatic void Quantization_and_coding P1((LAR),\n\tregister word * LAR    \t/* [0..7]\tIN/OUT\t*/\n)\n{\n\tregister word\ttemp;\n\tlongword\tltmp;\n\n\n\t/*  This procedure needs four tables; the following equations\n\t *  give the optimum scaling for the constants:\n\t *  \n\t *  A[0..7] = integer( real_A[0..7] * 1024 )\n\t *  B[0..7] = integer( real_B[0..7] *  512 )\n\t *  MAC[0..7] = maximum of the LARc[0..7]\n\t *  MIC[0..7] = minimum of the LARc[0..7]\n\t */\n\n#\tundef STEP\n#\tdefine\tSTEP( A, B, MAC, MIC )\t\t\\\n\t\ttemp = GSM_MULT( A,   *LAR );\t\\\n\t\ttemp = GSM_ADD(  temp,   B );\t\\\n\t\ttemp = GSM_ADD(  temp, 256 );\t\\\n\t\ttemp = SASR(     temp,   9 );\t\\\n\t\t*LAR  =  temp>MAC ? MAC - MIC : (temp<MIC ? 0 : temp - MIC); \\\n\t\tLAR++;\n\n\tSTEP(  20480,     0,  31, -32 );\n\tSTEP(  20480,     0,  31, -32 );\n\tSTEP(  20480,  2048,  15, -16 );\n\tSTEP(  20480, -2560,  15, -16 );\n\n\tSTEP(  13964,    94,   7,  -8 );\n\tSTEP(  15360, -1792,   7,  -8 );\n\tSTEP(   8534,  -341,   3,  -4 );\n\tSTEP(   9036, -1144,   3,  -4 );\n\n#\tundef\tSTEP\n}\n\nvoid Gsm_LPC_Analysis P3((S, s,LARc),\n\tstruct gsm_state *S,\n\tword \t\t * s,\t\t/* 0..159 signals\tIN/OUT\t*/\n        word \t\t * LARc)\t/* 0..7   LARc's\tOUT\t*/\n{\n\tlongword\tL_ACF[9];\n\n#if defined(USE_FLOAT_MUL) && defined(FAST)\n\tif (S->fast) Fast_Autocorrelation (s,\t  L_ACF );\n\telse\n#endif\n\tAutocorrelation\t\t\t  (s,\t  L_ACF\t);\n\tReflection_coefficients\t\t  (L_ACF, LARc\t);\n\tTransformation_to_Log_Area_Ratios (LARc);\n\tQuantization_and_coding\t\t  (LARc);\n}\n"
  },
  {
    "path": "gsm/preprocess.c",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/* $Header: /home/cvs/giga/ladspa-swh/gsm/preprocess.c,v 1.1 2001/06/10 21:36:51 swh Exp $ */\n\n#include\t<stdio.h>\n#include\t<assert.h>\n\n#include \"private.h\"\n\n#include\t\"gsm.h\"\n#include \t\"proto.h\"\n\n/*\t4.2.0 .. 4.2.3\tPREPROCESSING SECTION\n *  \n *  \tAfter A-law to linear conversion (or directly from the\n *   \tAto D converter) the following scaling is assumed for\n * \tinput to the RPE-LTP algorithm:\n *\n *      in:  0.1.....................12\n *\t     S.v.v.v.v.v.v.v.v.v.v.v.v.*.*.*\n *\n *\tWhere S is the sign bit, v a valid bit, and * a \"don't care\" bit.\n * \tThe original signal is called sop[..]\n *\n *      out:   0.1................... 12 \n *\t     S.S.v.v.v.v.v.v.v.v.v.v.v.v.0.0\n */\n\n\nvoid Gsm_Preprocess P3((S, s, so),\n\tstruct gsm_state * S,\n\tword\t\t * s,\n\tword \t\t * so )\t\t/* [0..159] \tIN/OUT\t*/\n{\n\n\tword       z1 = S->z1;\n\tlongword L_z2 = S->L_z2;\n\tword \t   mp = S->mp;\n\n\tword \t   \ts1;\n\tlongword      L_s2;\n\n\tlongword      L_temp;\n\n\tword\t\tmsp, lsp;\n\tword\t\tSO;\n\n\tlongword\tltmp;\t\t/* for   ADD */\n\tulongword\tutmp;\t\t/* for L_ADD */\n\n\tregister int\t\tk = 160;\n\n\twhile (k--) {\n\n\t/*  4.2.1   Downscaling of the input signal\n\t */\n\t\tSO = SASR( *s, 3 ) << 2;\n\t\ts++;\n\n\t\tassert (SO >= -0x4000);\t/* downscaled by     */\n\t\tassert (SO <=  0x3FFC);\t/* previous routine. */\n\n\n\t/*  4.2.2   Offset compensation\n\t * \n\t *  This part implements a high-pass filter and requires extended\n\t *  arithmetic precision for the recursive part of this filter.\n\t *  The input of this procedure is the array so[0...159] and the\n\t *  output the array sof[ 0...159 ].\n\t */\n\t\t/*   Compute the non-recursive part\n\t\t */\n\n\t\ts1 = SO - z1;\t\t\t/* s1 = gsm_sub( *so, z1 ); */\n\t\tz1 = SO;\n\n\t\tassert(s1 != MIN_WORD);\n\n\t\t/*   Compute the recursive part\n\t\t */\n\t\tL_s2 = s1;\n\t\tL_s2 <<= 15;\n\n\t\t/*   Execution of a 31 bv 16 bits multiplication\n\t\t */\n\n\t\tmsp = SASR( L_z2, 15 );\n\t\tlsp = L_z2-((longword)msp<<15); /* gsm_L_sub(L_z2,(msp<<15)); */\n\n\t\tL_s2  += GSM_MULT_R( lsp, 32735 );\n\t\tL_temp = (longword)msp * 32735; /* GSM_L_MULT(msp,32735) >> 1;*/\n\t\tL_z2   = GSM_L_ADD( L_temp, L_s2 );\n\n\t\t/*    Compute sof[k] with rounding\n\t\t */\n\t\tL_temp = GSM_L_ADD( L_z2, 16384 );\n\n\t/*   4.2.3  Preemphasis\n\t */\n\n\t\tmsp   = GSM_MULT_R( mp, -28180 );\n\t\tmp    = SASR( L_temp, 15 );\n\t\t*so++ = GSM_ADD( mp, msp );\n\t}\n\n\tS->z1   = z1;\n\tS->L_z2 = L_z2;\n\tS->mp   = mp;\n}\n"
  },
  {
    "path": "gsm/private.h",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/*$Header: /home/cvs/giga/ladspa-swh/gsm/private.h,v 1.1 2001/06/10 21:36:51 swh Exp $*/\n\n#ifndef\tPRIVATE_H\n#define\tPRIVATE_H\n\n/* Added by Erik de Castro Lopo */\n#define\tNeedFunctionPrototypes\t1\n#define\tSASR  \n#define\tUSE_FLOAT_MUL\n#define\tFAST\n#define\tWAV49  \n/* Added by Erik de Castro Lopo */\n\n\n\ntypedef short\t\t\t\tword;\t\t/* 16 bit signed int\t*/\ntypedef int\t\t\t\t\tlongword;\t/* 32 bit signed int\t*/\n\ntypedef unsigned short\t\tuword;\t\t/* unsigned word\t*/\ntypedef unsigned int\t\tulongword;\t/* unsigned longword\t*/\n\nstruct gsm_state {\n\n\tword\t\tdp0[ 280 ];\n\n\tword\t\tz1;\t\t/* preprocessing.c, Offset_com. */\n\tlongword\tL_z2;\t\t/*                  Offset_com. */\n\tint\t\t\tmp;\t\t/*                  Preemphasis\t*/\n\n\tword\t\tu[8];\t\t/* short_term_aly_filter.c\t*/\n\tword\t\tLARpp[2][8]; \t/*                              */\n\tword\t\tj;\t\t/*                              */\n\n\tword        ltp_cut;        /* long_term.c, LTP crosscorr.  */\n\tword\t\tnrp; /* 40 */\t/* long_term.c, synthesis\t*/\n\tword\t\tv[9];\t\t/* short_term.c, synthesis\t*/\n\tword\t\tmsr;\t\t/* decoder.c,\tPostprocessing\t*/\n\n\tchar\t\tverbose;\t/* only used if !NDEBUG\t\t*/\n\tchar\t\tfast;\t\t/* only used if FAST\t\t*/\n\n\tchar\t\twav_fmt;\t/* only used if WAV49 defined\t*/\n\tunsigned char\tframe_index;\t/*            odd/even chaining\t*/\n\tunsigned char\tframe_chain;\t/*   half-byte to carry forward\t*/\n};\n\n\n#define\tMIN_WORD\t(-32767 - 1)\n#define\tMAX_WORD\t  32767\n\n#define\tMIN_LONGWORD\t(-2147483647 - 1)\n#define\tMAX_LONGWORD\t  2147483647\n\n#ifdef\tSASR\t\t/* flag: >> is a signed arithmetic shift right */\n#undef\tSASR\n#define\tSASR(x, by)\t((x) >> (by))\n#else\n#define\tSASR(x, by)\t((x) >= 0 ? (x) >> (by) : (~(-((x) + 1) >> (by))))\n#endif\t/* SASR */\n\n#include \"proto.h\"\n\n/*\n *\tPrototypes from add.c\n */\nextern word\tgsm_mult \t\t(word a, word b);\nextern longword gsm_L_mult \t(word a, word b);\nextern word\tgsm_mult_r\t\t(word a, word b);\n\nextern word\tgsm_div  \t\t(word num, word denum);\n\nextern word\tgsm_add \t\t(word a, word b );\nextern longword gsm_L_add \t(longword a, longword b );\n\nextern word\tgsm_sub \t\t(word a, word b);\nextern longword gsm_L_sub \t(longword a, longword b);\n\nextern word\tgsm_abs \t\t(word a);\n\nextern word\tgsm_norm \t\t(longword a );\n\nextern longword gsm_L_asl  \t(longword a, int n);\nextern word\tgsm_asl \t\t(word a, int n);\n\nextern longword gsm_L_asr  \t(longword a, int n);\nextern word\tgsm_asr  \t\t(word a, int n);\n\n/*\n *  Inlined functions from add.h \n */\n\n/* \n * #define GSM_MULT_R(a, b) (* word a, word b, !(a == b == MIN_WORD) *)\t\\\n *\t(0x0FFFF & SASR(((longword)(a) * (longword)(b) + 16384), 15))\n */\n#define GSM_MULT_R(a, b) /* word a, word b, !(a == b == MIN_WORD) */\t\\\n\t(SASR( ((longword)(a) * (longword)(b) + 16384), 15 ))\n\n# define GSM_MULT(a,b)\t /* word a, word b, !(a == b == MIN_WORD) */\t\\\n\t(SASR( ((longword)(a) * (longword)(b)), 15 ))\n\n# define GSM_L_MULT(a, b) /* word a, word b */\t\\\n\t(((longword)(a) * (longword)(b)) << 1)\n\n# define GSM_L_ADD(a, b)\t\\\n\t( (a) <  0 ? ( (b) >= 0 ? (a) + (b)\t\\\n\t\t : (utmp = (ulongword)-((a) + 1) + (ulongword)-((b) + 1)) \\\n\t\t   >= MAX_LONGWORD ? MIN_LONGWORD : -(longword)utmp-2 )   \\\n\t: ((b) <= 0 ? (a) + (b)   \\\n\t          : (utmp = (ulongword)(a) + (ulongword)(b)) >= MAX_LONGWORD \\\n\t\t    ? MAX_LONGWORD : utmp))\n\n/*\n * # define GSM_ADD(a, b)\t\\\n * \t((ltmp = (longword)(a) + (longword)(b)) >= MAX_WORD \\\n * \t? MAX_WORD : ltmp <= MIN_WORD ? MIN_WORD : ltmp)\n */\n/* Nonportable, but faster: */\n\n#define\tGSM_ADD(a, b)\t\\\n\t((ulongword)((ltmp = (longword)(a) + (longword)(b)) - MIN_WORD) > \\\n\t\tMAX_WORD - MIN_WORD ? (ltmp > 0 ? MAX_WORD : MIN_WORD) : ltmp)\n\n# define GSM_SUB(a, b)\t\\\n\t((ltmp = (longword)(a) - (longword)(b)) >= MAX_WORD \\\n\t? MAX_WORD : ltmp <= MIN_WORD ? MIN_WORD : ltmp)\n\n# define GSM_ABS(a)\t((a) < 0 ? ((a) == MIN_WORD ? MAX_WORD : -(a)) : (a))\n\n/* Use these if necessary:\n\n# define GSM_MULT_R(a, b)\tgsm_mult_r(a, b)\n# define GSM_MULT(a, b)\t\tgsm_mult(a, b)\n# define GSM_L_MULT(a, b)\tgsm_L_mult(a, b)\n\n# define GSM_L_ADD(a, b)\tgsm_L_add(a, b)\n# define GSM_ADD(a, b)\t\tgsm_add(a, b)\n# define GSM_SUB(a, b)\t\tgsm_sub(a, b)\n\n# define GSM_ABS(a)\t\tgsm_abs(a)\n\n*/\n\n/*\n *  More prototypes from implementations..\n */\nextern void Gsm_Coder P((\n\t\tstruct gsm_state\t* S,\n\t\tword\t* s,\t/* [0..159] samples\t\tIN\t*/\n\t\tword\t* LARc,\t/* [0..7] LAR coefficients\tOUT\t*/\n\t\tword\t* Nc,\t/* [0..3] LTP lag\t\tOUT \t*/\n\t\tword\t* bc,\t/* [0..3] coded LTP gain\tOUT \t*/\n\t\tword\t* Mc,\t/* [0..3] RPE grid selection\tOUT     */\n\t\tword\t* xmaxc,/* [0..3] Coded maximum amplitude OUT\t*/\n\t\tword\t* xMc\t/* [13*4] normalized RPE samples OUT\t*/));\n\nextern void Gsm_Long_Term_Predictor P((\t\t/* 4x for 160 samples */\n\t\tstruct gsm_state * S,\n\t\tword\t* d,\t/* [0..39]   residual signal\tIN\t*/\n\t\tword\t* dp,\t/* [-120..-1] d'\t\tIN\t*/\n\t\tword\t* e,\t/* [0..40] \t\t\tOUT\t*/\n\t\tword\t* dpp,\t/* [0..40] \t\t\tOUT\t*/\n\t\tword\t* Nc,\t/* correlation lag\t\tOUT\t*/\n\t\tword\t* bc\t/* gain factor\t\t\tOUT\t*/));\n\nextern void Gsm_LPC_Analysis P((\n\t\tstruct gsm_state * S,\n\t\tword * s,\t /* 0..159 signals\tIN/OUT\t*/\n\t        word * LARc));   /* 0..7   LARc's\tOUT\t*/\n\nextern void Gsm_Preprocess P((\n\t\tstruct gsm_state * S,\n\t\tword * s, word * so));\n\nextern void Gsm_Encoding P((\n\t\tstruct gsm_state * S,\n\t\tword\t* e,\t\n\t\tword\t* ep,\t\n\t\tword\t* xmaxc,\n\t\tword\t* Mc,\t\n\t\tword\t* xMc));\n\nextern void Gsm_Short_Term_Analysis_Filter P((\n\t\tstruct gsm_state * S,\n\t\tword\t* LARc,\t/* coded log area ratio [0..7]  IN\t*/\n\t\tword\t* d\t/* st res. signal [0..159]\tIN/OUT\t*/));\n\nextern void Gsm_Decoder P((\n\t\tstruct gsm_state * S,\n\t\tword\t* LARcr,\t/* [0..7]\t\tIN\t*/\n\t\tword\t* Ncr,\t\t/* [0..3] \t\tIN \t*/\n\t\tword\t* bcr,\t\t/* [0..3]\t\tIN\t*/\n\t\tword\t* Mcr,\t\t/* [0..3] \t\tIN \t*/\n\t\tword\t* xmaxcr,\t/* [0..3]\t\tIN \t*/\n\t\tword\t* xMcr,\t\t/* [0..13*4]\t\tIN\t*/\n\t\tword\t* s));\t\t/* [0..159]\t\tOUT \t*/\n\nextern void Gsm_Decoding P((\n\t\tstruct gsm_state * S,\n\t\tword \txmaxcr,\n\t\tword\tMcr,\n\t\tword\t* xMcr,  \t/* [0..12]\t\tIN\t*/\n\t\tword\t* erp)); \t/* [0..39]\t\tOUT \t*/\n\nextern void Gsm_Long_Term_Synthesis_Filtering P((\n\t\tstruct gsm_state* S,\n\t\tword\tNcr,\n\t\tword\tbcr,\n\t\tword\t* erp,\t\t/* [0..39]\t\t  IN \t*/\n\t\tword\t* drp)); \t/* [-120..-1] IN, [0..40] OUT \t*/\n\nvoid Gsm_RPE_Decoding P((\n\tstruct gsm_state *S,\n\t\tword xmaxcr,\n\t\tword Mcr,\n\t\tword * xMcr,  /* [0..12], 3 bits             IN      */\n\t\tword * erp)); /* [0..39]                     OUT     */\n\nvoid Gsm_RPE_Encoding P((\n\t\tstruct gsm_state * S,\n\t\tword    * e,            /* -5..-1][0..39][40..44     IN/OUT  */\n\t\tword    * xmaxc,        /*                              OUT */\n\t\tword    * Mc,           /*                              OUT */\n\t\tword    * xMc));        /* [0..12]                      OUT */\n\nextern void Gsm_Short_Term_Synthesis_Filter P((\n\t\tstruct gsm_state * S,\n\t\tword\t* LARcr, \t/* log area ratios [0..7]  IN\t*/\n\t\tword\t* drp,\t\t/* received d [0...39]\t   IN\t*/\n\t\tword\t* s));\t\t/* signal   s [0..159]\t  OUT\t*/\n\nextern void Gsm_Update_of_reconstructed_short_time_residual_signal P((\n\t\tword\t* dpp,\t\t/* [0...39]\tIN\t*/\n\t\tword\t* ep,\t\t/* [0...39]\tIN\t*/\n\t\tword\t* dp));\t\t/* [-120...-1]  IN/OUT \t*/\n\n/*\n *  Tables from table.c\n */\n#ifndef\tGSM_TABLE_C\n\nextern word gsm_A[8], gsm_B[8], gsm_MIC[8], gsm_MAC[8];\nextern word gsm_INVA[8];\nextern word gsm_DLB[4], gsm_QLB[4];\nextern word gsm_H[11];\nextern word gsm_NRFAC[8];\nextern word gsm_FAC[8];\n\n#endif\t/* GSM_TABLE_C */\n\n/*\n *  Debugging\n */\n#ifdef NDEBUG\n\n#\tdefine\tgsm_debug_words(a, b, c, d)\t\t/* nil */\n#\tdefine\tgsm_debug_longwords(a, b, c, d)\t\t/* nil */\n#\tdefine\tgsm_debug_word(a, b)\t\t\t/* nil */\n#\tdefine\tgsm_debug_longword(a, b)\t\t/* nil */\n\n#else\t/* !NDEBUG => DEBUG */\n\n\textern void  gsm_debug_words     P((char * name, int, int, word *));\n\textern void  gsm_debug_longwords P((char * name, int, int, longword *));\n\textern void  gsm_debug_longword  P((char * name, longword));\n\textern void  gsm_debug_word      P((char * name, word));\n\n#endif /* !NDEBUG */\n\n#include \"unproto.h\"\n\n#endif\t/* PRIVATE_H */\n"
  },
  {
    "path": "gsm/proto.h",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/*$Header: /home/cvs/giga/ladspa-swh/gsm/proto.h,v 1.1 2001/06/10 21:36:51 swh Exp $*/\n\n#ifndef\tPROTO_H\n#define\tPROTO_H\n\n/*#if __cplusplus*/\n#\tdefine\tNeedFunctionPrototypes\t1\n/*#endif*/\n\n#if __STDC__\n#\tdefine\tNeedFunctionPrototypes\t1\n#endif\n\n#ifdef\t_NO_PROTO\n#\tundef\tNeedFunctionPrototypes\n#endif\n\n#undef\tP\t/* gnu stdio.h actually defines this... \t*/\n#undef\tP0\n#undef\tP1\n#undef\tP2\n#undef\tP3\n#undef\tP4\n#undef\tP5\n#undef\tP6\n#undef\tP7\n#undef\tP8\n\n#if NeedFunctionPrototypes\n\n#\tdefine\tP( protos )\tprotos\n\n#\tdefine\tP0()\t\t\t\t(void)\n#\tdefine\tP1(x, a)\t\t\t(a)\n#\tdefine\tP2(x, a, b)\t\t\t(a, b)\n#\tdefine\tP3(x, a, b, c)\t\t\t(a, b, c)\n#\tdefine\tP4(x, a, b, c, d)\t\t(a, b, c, d)\t\n#\tdefine\tP5(x, a, b, c, d, e)\t\t(a, b, c, d, e)\n#\tdefine\tP6(x, a, b, c, d, e, f)\t\t(a, b, c, d, e, f)\n#\tdefine\tP7(x, a, b, c, d, e, f, g)\t(a, b, c, d, e, f, g)\n#\tdefine\tP8(x, a, b, c, d, e, f, g, h)\t(a, b, c, d, e, f, g, h)\n\n#else /* !NeedFunctionPrototypes */\n\n#\tdefine\tP( protos )\t( /* protos */ )\n\n#\tdefine\tP0()\t\t\t\t()\n#\tdefine\tP1(x, a)\t\t\tx a;\n#\tdefine\tP2(x, a, b)\t\t\tx a; b;\n#\tdefine\tP3(x, a, b, c)\t\t\tx a; b; c;\n#\tdefine\tP4(x, a, b, c, d)\t\tx a; b; c; d;\n#\tdefine\tP5(x, a, b, c, d, e)\t\tx a; b; c; d; e;\n#\tdefine\tP6(x, a, b, c, d, e, f)\t\tx a; b; c; d; e; f;\n#\tdefine\tP7(x, a, b, c, d, e, f, g)\tx a; b; c; d; e; f; g;\n#\tdefine\tP8(x, a, b, c, d, e, f, g, h)\tx a; b; c; d; e; f; g; h;\n\n#endif  /* !NeedFunctionPrototypes */\n\n#endif\t/* PROTO_H */\n"
  },
  {
    "path": "gsm/rpe.c",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/* $Header: /home/cvs/giga/ladspa-swh/gsm/rpe.c,v 1.1 2001/06/10 21:36:51 swh Exp $ */\n\n#include <stdio.h>\n#include <assert.h>\n\n#include \"private.h\"\n\n#include \"gsm.h\"\n#include \"proto.h\"\n\n/*  4.2.13 .. 4.2.17  RPE ENCODING SECTION\n */\n\n/* 4.2.13 */\n\nstatic void Weighting_filter P2((e, x),\n\tregister word\t* e,\t\t/* signal [-5..0.39.44]\tIN  */\n\tword\t\t* x\t\t/* signal [0..39]\tOUT */\n)\n/*\n *  The coefficients of the weighting filter are stored in a table\n *  (see table 4.4).  The following scaling is used:\n *\n *\tH[0..10] = integer( real_H[ 0..10] * 8192 ); \n */\n{\n\t/* word\t\t\twt[ 50 ]; */\n\n\tregister longword\tL_result;\n\tregister int\t\tk /* , i */ ;\n\n\t/*  Initialization of a temporary working array wt[0...49]\n\t */\n\n\t/* for (k =  0; k <=  4; k++) wt[k] = 0;\n\t * for (k =  5; k <= 44; k++) wt[k] = *e++;\n\t * for (k = 45; k <= 49; k++) wt[k] = 0;\n\t *\n\t *  (e[-5..-1] and e[40..44] are allocated by the caller,\n\t *  are initially zero and are not written anywhere.)\n\t */\n\te -= 5;\n\n\t/*  Compute the signal x[0..39]\n\t */ \n\tfor (k = 0; k <= 39; k++) {\n\n\t\tL_result = 8192 >> 1;\n\n\t\t/* for (i = 0; i <= 10; i++) {\n\t\t *\tL_temp   = GSM_L_MULT( wt[k+i], gsm_H[i] );\n\t\t *\tL_result = GSM_L_ADD( L_result, L_temp );\n\t\t * }\n\t\t */\n\n#undef\tSTEP\n#define\tSTEP( i, H )\t(e[ k + i ] * (longword)H)\n\n\t\t/*  Every one of these multiplications is done twice --\n\t\t *  but I don't see an elegant way to optimize this. \n\t\t *  Do you?\n\t\t */\n\n#ifdef\tSTUPID_COMPILER\n\t\tL_result += STEP(\t0, \t-134 ) ;\n\t\tL_result += STEP(\t1, \t-374 )  ;\n\t               /* + STEP(\t2, \t0    )  */\n\t\tL_result += STEP(\t3, \t2054 ) ;\n\t\tL_result += STEP(\t4, \t5741 ) ;\n\t\tL_result += STEP(\t5, \t8192 ) ;\n\t\tL_result += STEP(\t6, \t5741 ) ;\n\t\tL_result += STEP(\t7, \t2054 ) ;\n\t \t       /* + STEP(\t8, \t0    )  */\n\t\tL_result += STEP(\t9, \t-374 ) ;\n\t\tL_result += STEP(\t10, \t-134 ) ;\n#else\n\t\tL_result +=\n\t\t  STEP(\t0, \t-134 ) \n\t\t+ STEP(\t1, \t-374 ) \n\t     /* + STEP(\t2, \t0    )  */\n\t\t+ STEP(\t3, \t2054 ) \n\t\t+ STEP(\t4, \t5741 ) \n\t\t+ STEP(\t5, \t8192 ) \n\t\t+ STEP(\t6, \t5741 ) \n\t\t+ STEP(\t7, \t2054 ) \n\t     /* + STEP(\t8, \t0    )  */\n\t\t+ STEP(\t9, \t-374 ) \n\t\t+ STEP(10, \t-134 )\n\t\t;\n#endif\n\n\t\t/* L_result = GSM_L_ADD( L_result, L_result ); (* scaling(x2) *)\n\t\t * L_result = GSM_L_ADD( L_result, L_result ); (* scaling(x4) *)\n\t\t *\n\t\t * x[k] = SASR( L_result, 16 );\n\t\t */\n\n\t\t/* 2 adds vs. >>16 => 14, minus one shift to compensate for\n\t\t * those we lost when replacing L_MULT by '*'.\n\t\t */\n\n\t\tL_result = SASR( L_result, 13 );\n\t\tx[k] =  (  L_result < MIN_WORD ? MIN_WORD\n\t\t\t: (L_result > MAX_WORD ? MAX_WORD : L_result ));\n\t}\n}\n\n/* 4.2.14 */\n\nstatic void RPE_grid_selection P3((x,xM,Mc_out),\n\tword\t\t* x,\t\t/* [0..39]\t\tIN  */ \n\tword\t\t* xM,\t\t/* [0..12]\t\tOUT */\n\tword\t\t* Mc_out\t/*\t\t\tOUT */\n)\n/*\n *  The signal x[0..39] is used to select the RPE grid which is\n *  represented by Mc.\n */\n{\n\t/* register word\ttemp1;\t*/\n\tregister int\t\t/* m, */  i;\n\tregister longword\tL_result, L_temp;\n\tlongword\t\tEM;\t/* xxx should be L_EM? */\n\tword\t\t\tMc;\n\n\tlongword\t\tL_common_0_3;\n\n\tEM = 0;\n\tMc = 0;\n\n\t/* for (m = 0; m <= 3; m++) {\n\t *\tL_result = 0;\n\t *\n\t *\n\t *\tfor (i = 0; i <= 12; i++) {\n\t *\n\t *\t\ttemp1    = SASR( x[m + 3*i], 2 );\n\t *\n\t *\t\tassert(temp1 != MIN_WORD);\n\t *\n\t *\t\tL_temp   = GSM_L_MULT( temp1, temp1 );\n\t *\t\tL_result = GSM_L_ADD( L_temp, L_result );\n\t *\t}\n\t * \n\t *\tif (L_result > EM) {\n\t *\t\tMc = m;\n\t *\t\tEM = L_result;\n\t *\t}\n\t * }\n\t */\n\n#undef\tSTEP\n#define\tSTEP( m, i )\t\tL_temp = SASR( x[m + 3 * i], 2 );\t\\\n\t\t\t\tL_result += L_temp * L_temp;\n\n\t/* common part of 0 and 3 */\n\n\tL_result = 0;\n\tSTEP( 0, 1 ); STEP( 0, 2 ); STEP( 0, 3 ); STEP( 0, 4 );\n\tSTEP( 0, 5 ); STEP( 0, 6 ); STEP( 0, 7 ); STEP( 0, 8 );\n\tSTEP( 0, 9 ); STEP( 0, 10); STEP( 0, 11); STEP( 0, 12);\n\tL_common_0_3 = L_result;\n\n\t/* i = 0 */\n\n\tSTEP( 0, 0 );\n\tL_result <<= 1;\t/* implicit in L_MULT */\n\tEM = L_result;\n\n\t/* i = 1 */\n\n\tL_result = 0;\n\tSTEP( 1, 0 );\n\tSTEP( 1, 1 ); STEP( 1, 2 ); STEP( 1, 3 ); STEP( 1, 4 );\n\tSTEP( 1, 5 ); STEP( 1, 6 ); STEP( 1, 7 ); STEP( 1, 8 );\n\tSTEP( 1, 9 ); STEP( 1, 10); STEP( 1, 11); STEP( 1, 12);\n\tL_result <<= 1;\n\tif (L_result > EM) {\n\t\tMc = 1;\n\t \tEM = L_result;\n\t}\n\n\t/* i = 2 */\n\n\tL_result = 0;\n\tSTEP( 2, 0 );\n\tSTEP( 2, 1 ); STEP( 2, 2 ); STEP( 2, 3 ); STEP( 2, 4 );\n\tSTEP( 2, 5 ); STEP( 2, 6 ); STEP( 2, 7 ); STEP( 2, 8 );\n\tSTEP( 2, 9 ); STEP( 2, 10); STEP( 2, 11); STEP( 2, 12);\n\tL_result <<= 1;\n\tif (L_result > EM) {\n\t\tMc = 2;\n\t \tEM = L_result;\n\t}\n\n\t/* i = 3 */\n\n\tL_result = L_common_0_3;\n\tSTEP( 3, 12 );\n\tL_result <<= 1;\n\tif (L_result > EM) {\n\t\tMc = 3;\n\t \tEM = L_result;\n\t}\n\n\t/**/\n\n\t/*  Down-sampling by a factor 3 to get the selected xM[0..12]\n\t *  RPE sequence.\n\t */\n\tfor (i = 0; i <= 12; i ++) xM[i] = x[Mc + 3*i];\n\t*Mc_out = Mc;\n}\n\n/* 4.12.15 */\n\nstatic void APCM_quantization_xmaxc_to_exp_mant P3((xmaxc,exp_out,mant_out),\n\tword\t\txmaxc,\t\t/* IN \t*/\n\tword\t\t* exp_out,\t/* OUT\t*/\n\tword\t\t* mant_out )\t/* OUT  */\n{\n\tword\texp, mant;\n\n\t/* Compute exponent and mantissa of the decoded version of xmaxc\n\t */\n\n\texp = 0;\n\tif (xmaxc > 15) exp = SASR(xmaxc, 3) - 1;\n\tmant = xmaxc - (exp << 3);\n\n\tif (mant == 0) {\n\t\texp  = -4;\n\t\tmant = 7;\n\t}\n\telse {\n\t\twhile (mant <= 7) {\n\t\t\tmant = mant << 1 | 1;\n\t\t\texp--;\n\t\t}\n\t\tmant -= 8;\n\t}\n\n\tassert( exp  >= -4 && exp <= 6 );\n\tassert( mant >= 0 && mant <= 7 );\n\n\t*exp_out  = exp;\n\t*mant_out = mant;\n}\n\nstatic void APCM_quantization P5((xM,xMc,mant_out,exp_out,xmaxc_out),\n\tword\t\t* xM,\t\t/* [0..12]\t\tIN\t*/\n\n\tword\t\t* xMc,\t\t/* [0..12]\t\tOUT\t*/\n\tword\t\t* mant_out,\t/* \t\t\tOUT\t*/\n\tword\t\t* exp_out,\t/*\t\t\tOUT\t*/\n\tword\t\t* xmaxc_out\t/*\t\t\tOUT\t*/\n)\n{\n\tint\ti, itest;\n\n\tword\txmax, xmaxc, temp, temp1, temp2;\n\tword\texp, mant;\n\n\n\t/*  Find the maximum absolute value xmax of xM[0..12].\n\t */\n\n\txmax = 0;\n\tfor (i = 0; i <= 12; i++) {\n\t\ttemp = xM[i];\n\t\ttemp = GSM_ABS(temp);\n\t\tif (temp > xmax) xmax = temp;\n\t}\n\n\t/*  Qantizing and coding of xmax to get xmaxc.\n\t */\n\n\texp   = 0;\n\ttemp  = SASR( xmax, 9 );\n\titest = 0;\n\n\tfor (i = 0; i <= 5; i++) {\n\n\t\titest |= (temp <= 0);\n\t\ttemp = SASR( temp, 1 );\n\n\t\tassert(exp <= 5);\n\t\tif (itest == 0) exp++;\t\t/* exp = add (exp, 1) */\n\t}\n\n\tassert(exp <= 6 && exp >= 0);\n\ttemp = exp + 5;\n\n\tassert(temp <= 11 && temp >= 0);\n\txmaxc = gsm_add( SASR(xmax, temp), exp << 3 );\n\n\t/*   Quantizing and coding of the xM[0..12] RPE sequence\n\t *   to get the xMc[0..12]\n\t */\n\n\tAPCM_quantization_xmaxc_to_exp_mant( xmaxc, &exp, &mant );\n\n\t/*  This computation uses the fact that the decoded version of xmaxc\n\t *  can be calculated by using the exponent and the mantissa part of\n\t *  xmaxc (logarithmic table).\n\t *  So, this method avoids any division and uses only a scaling\n\t *  of the RPE samples by a function of the exponent.  A direct \n\t *  multiplication by the inverse of the mantissa (NRFAC[0..7]\n\t *  found in table 4.5) gives the 3 bit coded version xMc[0..12]\n\t *  of the RPE samples.\n\t */\n\n\n\t/* Direct computation of xMc[0..12] using table 4.5\n\t */\n\n\tassert( exp <= 4096 && exp >= -4096);\n\tassert( mant >= 0 && mant <= 7 ); \n\n\ttemp1 = 6 - exp;\t\t/* normalization by the exponent */\n\ttemp2 = gsm_NRFAC[ mant ];  \t/* inverse mantissa \t\t */\n\n\tfor (i = 0; i <= 12; i++) {\n\n\t\tassert(temp1 >= 0 && temp1 < 16);\n\n\t\ttemp = xM[i] << temp1;\n\t\ttemp = GSM_MULT( temp, temp2 );\n\t\ttemp = SASR(temp, 12);\n\t\txMc[i] = temp + 4;\t\t/* see note below */\n\t}\n\n\t/*  NOTE: This equation is used to make all the xMc[i] positive.\n\t */\n\n\t*mant_out  = mant;\n\t*exp_out   = exp;\n\t*xmaxc_out = xmaxc;\n}\n\n/* 4.2.16 */\n\nstatic void APCM_inverse_quantization P4((xMc,mant,exp,xMp),\n\tregister word\t* xMc,\t/* [0..12]\t\t\tIN \t*/\n\tword\t\tmant,\n\tword\t\texp,\n\tregister word\t* xMp)\t/* [0..12]\t\t\tOUT \t*/\n/* \n *  This part is for decoding the RPE sequence of coded xMc[0..12]\n *  samples to obtain the xMp[0..12] array.  Table 4.6 is used to get\n *  the mantissa of xmaxc (FAC[0..7]).\n */\n{\n\tint\ti;\n\tword\ttemp, temp1, temp2, temp3;\n\tlongword\tltmp;\n\n\tassert( mant >= 0 && mant <= 7 ); \n\n\ttemp1 = gsm_FAC[ mant ];\t/* see 4.2-15 for mant */\n\ttemp2 = gsm_sub( 6, exp );\t/* see 4.2-15 for exp  */\n\ttemp3 = gsm_asl( 1, gsm_sub( temp2, 1 ));\n\n\tfor (i = 13; i--;) {\n\n\t\tassert( *xMc <= 7 && *xMc >= 0 ); \t/* 3 bit unsigned */\n\n\t\t/* temp = gsm_sub( *xMc++ << 1, 7 ); */\n\t\ttemp = (*xMc++ << 1) - 7;\t        /* restore sign   */\n\t\tassert( temp <= 7 && temp >= -7 ); \t/* 4 bit signed   */\n\n\t\ttemp <<= 12;\t\t\t\t/* 16 bit signed  */\n\t\ttemp = GSM_MULT_R( temp1, temp );\n\t\ttemp = GSM_ADD( temp, temp3 );\n\t\t*xMp++ = gsm_asr( temp, temp2 );\n\t}\n}\n\n/* 4.2.17 */\n\nstatic void RPE_grid_positioning P3((Mc,xMp,ep),\n\tword\t\tMc,\t\t/* grid position\tIN\t*/\n\tregister word\t* xMp,\t\t/* [0..12]\t\tIN\t*/\n\tregister word\t* ep\t\t/* [0..39]\t\tOUT\t*/\n)\n/*\n *  This procedure computes the reconstructed long term residual signal\n *  ep[0..39] for the LTP analysis filter.  The inputs are the Mc\n *  which is the grid position selection and the xMp[0..12] decoded\n *  RPE samples which are upsampled by a factor of 3 by inserting zero\n *  values.\n */\n{\n\tint\ti = 13;\n\n\tassert(0 <= Mc && Mc <= 3);\n\n        switch (Mc) {\n                case 3: *ep++ = 0;\n                case 2:  do {\n                                *ep++ = 0;\n                case 1:         *ep++ = 0;\n                case 0:         *ep++ = *xMp++;\n                         } while (--i);\n        }\n        while (++Mc < 4) *ep++ = 0;\n\n\t/*\n\n\tint i, k;\n\tfor (k = 0; k <= 39; k++) ep[k] = 0;\n\tfor (i = 0; i <= 12; i++) {\n\t\tep[ Mc + (3*i) ] = xMp[i];\n\t}\n\t*/\n}\n\n/* 4.2.18 */\n\n/*  This procedure adds the reconstructed long term residual signal\n *  ep[0..39] to the estimated signal dpp[0..39] from the long term\n *  analysis filter to compute the reconstructed short term residual\n *  signal dp[-40..-1]; also the reconstructed short term residual\n *  array dp[-120..-41] is updated.\n */\n\n#if 0\t/* Has been inlined in code.c */\nvoid Gsm_Update_of_reconstructed_short_time_residual_signal P3((dpp, ep, dp),\n\tword\t* dpp,\t\t/* [0...39]\tIN\t*/\n\tword\t* ep,\t\t/* [0...39]\tIN\t*/\n\tword\t* dp)\t\t/* [-120...-1]  IN/OUT \t*/\n{\n\tint \t\tk;\n\n\tfor (k = 0; k <= 79; k++) \n\t\tdp[ -120 + k ] = dp[ -80 + k ];\n\n\tfor (k = 0; k <= 39; k++)\n\t\tdp[ -40 + k ] = gsm_add( ep[k], dpp[k] );\n}\n#endif\t/* Has been inlined in code.c */\n\nvoid Gsm_RPE_Encoding P5((S,e,xmaxc,Mc,xMc),\n\n\tstruct gsm_state * S,\n\n\tword\t* e,\t\t/* -5..-1][0..39][40..44\tIN/OUT  */\n\tword\t* xmaxc,\t/* \t\t\t\tOUT */\n\tword\t* Mc,\t\t/* \t\t\t  \tOUT */\n\tword\t* xMc)\t\t/* [0..12]\t\t\tOUT */\n{\n\tword\tx[40];\n\tword\txM[13], xMp[13];\n\tword\tmant, exp;\n\n\tWeighting_filter(e, x);\n\tRPE_grid_selection(x, xM, Mc);\n\n\tAPCM_quantization(\txM, xMc, &mant, &exp, xmaxc);\n\tAPCM_inverse_quantization(  xMc,  mant,  exp, xMp);\n\n\tRPE_grid_positioning( *Mc, xMp, e );\n\n}\n\nvoid Gsm_RPE_Decoding P5((S, xmaxcr, Mcr, xMcr, erp),\n\tstruct gsm_state\t* S,\n\n\tword \t\txmaxcr,\n\tword\t\tMcr,\n\tword\t\t* xMcr,  /* [0..12], 3 bits \t\tIN\t*/\n\tword\t\t* erp\t /* [0..39]\t\t\tOUT \t*/\n)\n{\n\tword\texp, mant;\n\tword\txMp[ 13 ];\n\n\tAPCM_quantization_xmaxc_to_exp_mant( xmaxcr, &exp, &mant );\n\tAPCM_inverse_quantization( xMcr, mant, exp, xMp );\n\tRPE_grid_positioning( Mcr, xMp, erp );\n\n}\n"
  },
  {
    "path": "gsm/short_term.c",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/* $Header: /home/cvs/giga/ladspa-swh/gsm/short_term.c,v 1.1 2001/06/10 21:36:51 swh Exp $ */\n\n#include <stdio.h>\n#include <assert.h>\n\n#include \"private.h\"\n\n#include \"gsm.h\"\n#include \"proto.h\"\n\n/*\n *  SHORT TERM ANALYSIS FILTERING SECTION\n */\n\n/* 4.2.8 */\n\nstatic void Decoding_of_the_coded_Log_Area_Ratios P2((LARc,LARpp),\n\tword \t* LARc,\t\t/* coded log area ratio\t[0..7] \tIN\t*/\n\tword\t* LARpp)\t/* out: decoded ..\t\t\t*/\n{\n\tregister word\ttemp1 /* , temp2 */;\n\tregister long\tltmp;\t/* for GSM_ADD */\n\n\t/*  This procedure requires for efficient implementation\n\t *  two tables.\n \t *\n\t *  INVA[1..8] = integer( (32768 * 8) / real_A[1..8])\n\t *  MIC[1..8]  = minimum value of the LARc[1..8]\n\t */\n\n\t/*  Compute the LARpp[1..8]\n\t */\n\n\t/* \tfor (i = 1; i <= 8; i++, B++, MIC++, INVA++, LARc++, LARpp++) {\n\t *\n\t *\t\ttemp1  = GSM_ADD( *LARc, *MIC ) << 10;\n\t *\t\ttemp2  = *B << 1;\n\t *\t\ttemp1  = GSM_SUB( temp1, temp2 );\n\t *\n\t *\t\tassert(*INVA != MIN_WORD);\n\t *\n\t *\t\ttemp1  = GSM_MULT_R( *INVA, temp1 );\n\t *\t\t*LARpp = GSM_ADD( temp1, temp1 );\n\t *\t}\n\t */\n\n#undef\tSTEP\n#define\tSTEP( B, MIC, INVA )\t\\\n\t\ttemp1    = GSM_ADD( *LARc++, MIC ) << 10;\t\\\n\t\ttemp1    = GSM_SUB( temp1, B * 2 );\t\t\\\n\t\ttemp1    = GSM_MULT_R( INVA, temp1 );\t\t\\\n\t\t*LARpp++ = GSM_ADD( temp1, temp1 );\n\n\tSTEP(      0,  -32,  13107 );\n\tSTEP(      0,  -32,  13107 );\n\tSTEP(   2048,  -16,  13107 );\n\tSTEP(  -2560,  -16,  13107 );\n\n\tSTEP(     94,   -8,  19223 );\n\tSTEP(  -1792,   -8,  17476 );\n\tSTEP(   -341,   -4,  31454 );\n\tSTEP(  -1144,   -4,  29708 );\n\n\t/* NOTE: the addition of *MIC is used to restore\n\t * \t the sign of *LARc.\n\t */\n}\n\n/* 4.2.9 */\n/* Computation of the quantized reflection coefficients \n */\n\n/* 4.2.9.1  Interpolation of the LARpp[1..8] to get the LARp[1..8]\n */\n\n/*\n *  Within each frame of 160 analyzed speech samples the short term\n *  analysis and synthesis filters operate with four different sets of\n *  coefficients, derived from the previous set of decoded LARs(LARpp(j-1))\n *  and the actual set of decoded LARs (LARpp(j))\n *\n * (Initial value: LARpp(j-1)[1..8] = 0.)\n */\n\nstatic void Coefficients_0_12 P3((LARpp_j_1, LARpp_j, LARp),\n\tregister word * LARpp_j_1,\n\tregister word * LARpp_j,\n\tregister word * LARp)\n{\n\tregister int \ti;\n\tregister longword ltmp;\n\n\tfor (i = 1; i <= 8; i++, LARp++, LARpp_j_1++, LARpp_j++) {\n\t\t*LARp = GSM_ADD( SASR( *LARpp_j_1, 2 ), SASR( *LARpp_j, 2 ));\n\t\t*LARp = GSM_ADD( *LARp,  SASR( *LARpp_j_1, 1));\n\t}\n}\n\nstatic void Coefficients_13_26 P3((LARpp_j_1, LARpp_j, LARp),\n\tregister word * LARpp_j_1,\n\tregister word * LARpp_j,\n\tregister word * LARp)\n{\n\tregister int i;\n\tregister longword ltmp;\n\tfor (i = 1; i <= 8; i++, LARpp_j_1++, LARpp_j++, LARp++) {\n\t\t*LARp = GSM_ADD( SASR( *LARpp_j_1, 1), SASR( *LARpp_j, 1 ));\n\t}\n}\n\nstatic void Coefficients_27_39 P3((LARpp_j_1, LARpp_j, LARp),\n\tregister word * LARpp_j_1,\n\tregister word * LARpp_j,\n\tregister word * LARp)\n{\n\tregister int i;\n\tregister longword ltmp;\n\n\tfor (i = 1; i <= 8; i++, LARpp_j_1++, LARpp_j++, LARp++) {\n\t\t*LARp = GSM_ADD( SASR( *LARpp_j_1, 2 ), SASR( *LARpp_j, 2 ));\n\t\t*LARp = GSM_ADD( *LARp, SASR( *LARpp_j, 1 ));\n\t}\n}\n\n\nstatic void Coefficients_40_159 P2((LARpp_j, LARp),\n\tregister word * LARpp_j,\n\tregister word * LARp)\n{\n\tregister int i;\n\n\tfor (i = 1; i <= 8; i++, LARp++, LARpp_j++)\n\t\t*LARp = *LARpp_j;\n}\n\n/* 4.2.9.2 */\n\nstatic void LARp_to_rp P1((LARp),\n\tregister word * LARp)\t/* [0..7] IN/OUT  */\n/*\n *  The input of this procedure is the interpolated LARp[0..7] array.\n *  The reflection coefficients, rp[i], are used in the analysis\n *  filter and in the synthesis filter.\n */\n{\n\tregister int \t\ti;\n\tregister word\t\ttemp;\n\tregister longword\tltmp;\n\n\tfor (i = 1; i <= 8; i++, LARp++) {\n\n\t\t/* temp = GSM_ABS( *LARp );\n\t         *\n\t\t * if (temp < 11059) temp <<= 1;\n\t\t * else if (temp < 20070) temp += 11059;\n\t\t * else temp = GSM_ADD( temp >> 2, 26112 );\n\t\t *\n\t\t * *LARp = *LARp < 0 ? -temp : temp;\n\t\t */\n\n\t\tif (*LARp < 0) {\n\t\t\ttemp = *LARp == MIN_WORD ? MAX_WORD : -(*LARp);\n\t\t\t*LARp = - ((temp < 11059) ? temp << 1\n\t\t\t\t: ((temp < 20070) ? temp + 11059\n\t\t\t\t:  GSM_ADD( temp >> 2, 26112 )));\n\t\t} else {\n\t\t\ttemp  = *LARp;\n\t\t\t*LARp =    (temp < 11059) ? temp << 1\n\t\t\t\t: ((temp < 20070) ? temp + 11059\n\t\t\t\t:  GSM_ADD( temp >> 2, 26112 ));\n\t\t}\n\t}\n}\n\n\n/* 4.2.10 */\nstatic void Short_term_analysis_filtering P4((S,rp,k_n,s),\n\tstruct gsm_state * S,\n\tregister word\t* rp,\t/* [0..7]\tIN\t*/\n\tregister int \tk_n, \t/*   k_end - k_start\t*/\n\tregister word\t* s\t/* [0..n-1]\tIN/OUT\t*/\n)\n/*\n *  This procedure computes the short term residual signal d[..] to be fed\n *  to the RPE-LTP loop from the s[..] signal and from the local rp[..]\n *  array (quantized reflection coefficients).  As the call of this\n *  procedure can be done in many ways (see the interpolation of the LAR\n *  coefficient), it is assumed that the computation begins with index\n *  k_start (for arrays d[..] and s[..]) and stops with index k_end\n *  (k_start and k_end are defined in 4.2.9.1).  This procedure also\n *  needs to keep the array u[0..7] in memory for each call.\n */\n{\n\tregister word\t\t* u = S->u;\n\tregister int\t\ti;\n\tregister word\t\tdi, zzz, ui, sav, rpi;\n\tregister longword \tltmp;\n\n\tfor (; k_n--; s++) {\n\n\t\tdi = sav = *s;\n\n\t\tfor (i = 0; i < 8; i++) {\t\t/* YYY */\n\n\t\t\tui    = u[i];\n\t\t\trpi   = rp[i];\n\t\t\tu[i]  = sav;\n\n\t\t\tzzz   = GSM_MULT_R(rpi, di);\n\t\t\tsav   = GSM_ADD(   ui,  zzz);\n\n\t\t\tzzz   = GSM_MULT_R(rpi, ui);\n\t\t\tdi    = GSM_ADD(   di,  zzz );\n\t\t}\n\n\t\t*s = di;\n\t}\n}\n\n#if defined(USE_FLOAT_MUL) && defined(FAST)\n\nstatic void Fast_Short_term_analysis_filtering P4((S,rp,k_n,s),\n\tstruct gsm_state * S,\n\tregister word\t* rp,\t/* [0..7]\tIN\t*/\n\tregister int \tk_n, \t/*   k_end - k_start\t*/\n\tregister word\t* s\t/* [0..n-1]\tIN/OUT\t*/\n)\n{\n\tregister word\t\t* u = S->u;\n\tregister int\t\ti;\n\n\tfloat \t  uf[8],\n\t\t rpf[8];\n\n\tregister float scalef = 3.0517578125e-5;\n\tregister float\t\tsav, di, temp;\n\n\tfor (i = 0; i < 8; ++i) {\n\t\tuf[i]  = u[i];\n\t\trpf[i] = rp[i] * scalef;\n\t}\n\tfor (; k_n--; s++) {\n\t\tsav = di = *s;\n\t\tfor (i = 0; i < 8; ++i) {\n\t\t\tregister float rpfi = rpf[i];\n\t\t\tregister float ufi  = uf[i];\n\n\t\t\tuf[i] = sav;\n\t\t\ttemp  = rpfi * di + ufi;\n\t\t\tdi   += rpfi * ufi;\n\t\t\tsav   = temp;\n\t\t}\n\t\t*s = di;\n\t}\n\tfor (i = 0; i < 8; ++i) u[i] = uf[i];\n}\n#endif /* ! (defined (USE_FLOAT_MUL) && defined (FAST)) */\n\nstatic void Short_term_synthesis_filtering P5((S,rrp,k,wt,sr),\n\tstruct gsm_state * S,\n\tregister word\t* rrp,\t/* [0..7]\tIN\t*/\n\tregister int\tk,\t/* k_end - k_start\t*/\n\tregister word\t* wt,\t/* [0..k-1]\tIN\t*/\n\tregister word\t* sr\t/* [0..k-1]\tOUT\t*/\n)\n{\n\tregister word\t\t* v = S->v;\n\tregister int\t\ti;\n\tregister word\t\tsri, tmp1, tmp2;\n\tregister longword\tltmp;\t/* for GSM_ADD  & GSM_SUB */\n\n\twhile (k--) {\n\t\tsri = *wt++;\n\t\tfor (i = 8; i--;) {\n\n\t\t\t/* sri = GSM_SUB( sri, gsm_mult_r( rrp[i], v[i] ) );\n\t\t\t */\n\t\t\ttmp1 = rrp[i];\n\t\t\ttmp2 = v[i];\n\t\t\ttmp2 =  ( tmp1 == MIN_WORD && tmp2 == MIN_WORD\n\t\t\t\t? MAX_WORD\n\t\t\t\t: 0x0FFFF & (( (longword)tmp1 * (longword)tmp2\n\t\t\t\t\t     + 16384) >> 15)) ;\n\n\t\t\tsri  = GSM_SUB( sri, tmp2 );\n\n\t\t\t/* v[i+1] = GSM_ADD( v[i], gsm_mult_r( rrp[i], sri ) );\n\t\t\t */\n\t\t\ttmp1  = ( tmp1 == MIN_WORD && sri == MIN_WORD\n\t\t\t\t? MAX_WORD\n\t\t\t\t: 0x0FFFF & (( (longword)tmp1 * (longword)sri\n\t\t\t\t\t     + 16384) >> 15)) ;\n\n\t\t\tv[i+1] = GSM_ADD( v[i], tmp1);\n\t\t}\n\t\t*sr++ = v[0] = sri;\n\t}\n}\n\n\n#if defined(FAST) && defined(USE_FLOAT_MUL)\n\nstatic void Fast_Short_term_synthesis_filtering P5((S,rrp,k,wt,sr),\n\tstruct gsm_state * S,\n\tregister word\t* rrp,\t/* [0..7]\tIN\t*/\n\tregister int\tk,\t/* k_end - k_start\t*/\n\tregister word\t* wt,\t/* [0..k-1]\tIN\t*/\n\tregister word\t* sr\t/* [0..k-1]\tOUT\t*/\n)\n{\n\tregister word\t\t* v = S->v;\n\tregister int\t\ti;\n\n\tfloat va[9], rrpa[8];\n\tregister float scalef = 3.0517578125e-5, temp;\n\n\tfor (i = 0; i < 8; ++i) {\n\t\tva[i]   = v[i];\n\t\trrpa[i] = (float)rrp[i] * scalef;\n\t}\n\twhile (k--) {\n\t\tregister float sri = *wt++;\n\t\tfor (i = 8; i--;) {\n\t\t\tsri -= rrpa[i] * va[i];\n\t\t\tif     (sri < -32768.) sri = -32768.;\n\t\t\telse if (sri > 32767.) sri =  32767.;\n\n\t\t\ttemp = va[i] + rrpa[i] * sri;\n\t\t\tif     (temp < -32768.) temp = -32768.;\n\t\t\telse if (temp > 32767.) temp =  32767.;\n\t\t\tva[i+1] = temp;\n\t\t}\n\t\t*sr++ = va[0] = sri;\n\t}\n\tfor (i = 0; i < 9; ++i) v[i] = va[i];\n}\n\n#endif /* defined(FAST) && defined(USE_FLOAT_MUL) */\n\nvoid Gsm_Short_Term_Analysis_Filter P3((S,LARc,s),\n\n\tstruct gsm_state * S,\n\n\tword\t* LARc,\t\t/* coded log area ratio [0..7]  IN\t*/\n\tword\t* s\t\t/* signal [0..159]\t\tIN/OUT\t*/\n)\n{\n\tword\t\t* LARpp_j\t= S->LARpp[ S->j      ];\n\tword\t\t* LARpp_j_1\t= S->LARpp[ S->j ^= 1 ];\n\n\tword\t\tLARp[8];\n\n#undef\tFILTER\n#if \tdefined(FAST) && defined(USE_FLOAT_MUL)\n# \tdefine\tFILTER \t(* (S->fast\t\t\t\\\n\t\t\t   ? Fast_Short_term_analysis_filtering\t\\\n\t\t    \t   : Short_term_analysis_filtering\t))\n\n#else\n# \tdefine\tFILTER\tShort_term_analysis_filtering\n#endif\n\n\tDecoding_of_the_coded_Log_Area_Ratios( LARc, LARpp_j );\n\n\tCoefficients_0_12(  LARpp_j_1, LARpp_j, LARp );\n\tLARp_to_rp( LARp );\n\tFILTER( S, LARp, 13, s);\n\n\tCoefficients_13_26( LARpp_j_1, LARpp_j, LARp);\n\tLARp_to_rp( LARp );\n\tFILTER( S, LARp, 14, s + 13);\n\n\tCoefficients_27_39( LARpp_j_1, LARpp_j, LARp);\n\tLARp_to_rp( LARp );\n\tFILTER( S, LARp, 13, s + 27);\n\n\tCoefficients_40_159( LARpp_j, LARp);\n\tLARp_to_rp( LARp );\n\tFILTER( S, LARp, 120, s + 40);\n}\n\nvoid Gsm_Short_Term_Synthesis_Filter P4((S, LARcr, wt, s),\n\tstruct gsm_state * S,\n\n\tword\t* LARcr,\t/* received log area ratios [0..7] IN  */\n\tword\t* wt,\t\t/* received d [0..159]\t\t   IN  */\n\n\tword\t* s\t\t/* signal   s [0..159]\t\t  OUT  */\n)\n{\n\tword\t\t* LARpp_j\t= S->LARpp[ S->j     ];\n\tword\t\t* LARpp_j_1\t= S->LARpp[ S->j ^=1 ];\n\n\tword\t\tLARp[8];\n\n#undef\tFILTER\n#if \tdefined(FAST) && defined(USE_FLOAT_MUL)\n\n# \tdefine\tFILTER \t(* (S->fast\t\t\t\\\n\t\t\t   ? Fast_Short_term_synthesis_filtering\t\\\n\t\t    \t   : Short_term_synthesis_filtering\t))\n#else\n#\tdefine\tFILTER\tShort_term_synthesis_filtering\n#endif\n\n\tDecoding_of_the_coded_Log_Area_Ratios( LARcr, LARpp_j );\n\n\tCoefficients_0_12( LARpp_j_1, LARpp_j, LARp );\n\tLARp_to_rp( LARp );\n\tFILTER( S, LARp, 13, wt, s );\n\n\tCoefficients_13_26( LARpp_j_1, LARpp_j, LARp);\n\tLARp_to_rp( LARp );\n\tFILTER( S, LARp, 14, wt + 13, s + 13 );\n\n\tCoefficients_27_39( LARpp_j_1, LARpp_j, LARp);\n\tLARp_to_rp( LARp );\n\tFILTER( S, LARp, 13, wt + 27, s + 27 );\n\n\tCoefficients_40_159( LARpp_j, LARp );\n\tLARp_to_rp( LARp );\n\tFILTER(S, LARp, 120, wt + 40, s + 40);\n}\n"
  },
  {
    "path": "gsm/table.c",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/* $Header: /home/cvs/giga/ladspa-swh/gsm/table.c,v 1.1 2001/06/10 21:36:51 swh Exp $ */\n\n/*  Most of these tables are inlined at their point of use.\n */\n\n/*  4.4 TABLES USED IN THE FIXED POINT IMPLEMENTATION OF THE RPE-LTP\n *      CODER AND DECODER\n *\n *\t(Most of them inlined, so watch out.)\n */\n\n#define\tGSM_TABLE_C\n#include \"private.h\"\n#include\t\"gsm.h\"\n\n/*  Table 4.1  Quantization of the Log.-Area Ratios\n */\n/* i \t\t     1      2      3        4      5      6        7       8 */\nword gsm_A[8]   = {20480, 20480, 20480,  20480,  13964,  15360,   8534,  9036};\nword gsm_B[8]   = {    0,     0,  2048,  -2560,     94,  -1792,   -341, -1144};\nword gsm_MIC[8] = { -32,   -32,   -16,    -16,     -8,     -8,     -4,    -4 };\nword gsm_MAC[8] = {  31,    31,    15,     15,      7,      7,      3,     3 };\n\n\n/*  Table 4.2  Tabulation  of 1/A[1..8]\n */\nword gsm_INVA[8]={ 13107, 13107,  13107, 13107,  19223, 17476,  31454, 29708 };\n\n\n/*   Table 4.3a  Decision level of the LTP gain quantizer\n */\n/*  bc\t\t      0\t        1\t  2\t     3\t\t\t*/\nword gsm_DLB[4] = {  6554,    16384,\t26214,\t   32767\t};\n\n\n/*   Table 4.3b   Quantization levels of the LTP gain quantizer\n */\n/* bc\t\t      0          1        2          3\t\t\t*/\nword gsm_QLB[4] = {  3277,    11469,\t21299,\t   32767\t};\n\n\n/*   Table 4.4\t Coefficients of the weighting filter\n */\n/* i\t\t    0      1   2    3   4      5      6     7   8   9    10  */\nword gsm_H[11] = {-134, -374, 0, 2054, 5741, 8192, 5741, 2054, 0, -374, -134 };\n\n\n/*   Table 4.5 \t Normalized inverse mantissa used to compute xM/xmax \n */\n/* i\t\t \t0        1    2      3      4      5     6      7   */\nword gsm_NRFAC[8] = { 29128, 26215, 23832, 21846, 20165, 18725, 17476, 16384 };\n\n\n/*   Table 4.6\t Normalized direct mantissa used to compute xM/xmax\n */\n/* i                  0      1       2      3      4      5      6      7   */\nword gsm_FAC[8]\t= { 18431, 20479, 22527, 24575, 26623, 28671, 30719, 32767 };\n"
  },
  {
    "path": "gsm/unproto.h",
    "content": "/*\n * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische\n * Universitaet Berlin.  See the accompanying file \"COPYRIGHT\" for\n * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.\n */\n\n/*$Header: /home/cvs/giga/ladspa-swh/gsm/unproto.h,v 1.1 2001/06/10 21:36:51 swh Exp $*/\n\n#ifdef\tPROTO_H\t\t/* sic */\n#undef\tPROTO_H\n\n#undef\tP\n#undef\tP0\n#undef\tP1\n#undef\tP2\n#undef\tP3\n#undef\tP4\n#undef\tP5\n#undef\tP6\n#undef\tP7\n#undef\tP8\n\n#endif\t/* PROTO_H */\n"
  },
  {
    "path": "gsm_1215.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <code><![CDATA[\n      #include <stdlib.h>\n      #include \"ladspa-util.h\"\n      #include \"gsm/gsm.h\"\n      #include \"util/biquad.h\"\n\n      #define SCALE 32768.0f\n      #define SCALE_R 0.0000305175f\n\n      int bits[] = {0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80};\n    ]]></code>\n  </global>\n\n  <plugin label=\"gsm\" id=\"1215\" class=\"DistortionPlugin\">\n    <name>GSM simulator</name>\n    <p>Encodes and decodes a signal using the GSM voice compression system. Has the effect of making the signal sound like it is being sent over a European mobile phone network.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      count = 0;\n      resamp = s_rate / 8000;\n      fs = s_rate;\n      rsf = SCALE / (float)resamp;\n      src = malloc(sizeof(gsm_signal) * 160);\n      dst = malloc(sizeof(gsm_signal) * 163);\n      dry = malloc(sizeof(LADSPA_Data) * 160 * resamp);\n      handle = NULL;\n\n      blf = malloc(sizeof(biquad));\n      biquad_init(blf);\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      count = 0;\n      memset(src, 0, sizeof(gsm_signal) * 160);\n      memset(dst, 0, sizeof(gsm_signal) * 163);\n      memset(dry, 0, sizeof(LADSPA_Data) * 160 * resamp);\n      handle = gsm_create();\n      biquad_init(blf);\n      hs_set_params(blf, 3500.0f, -50.0f, 0.7f, fs);\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->src);\n      free(plugin_data->dst);\n      free(plugin_data->dry);\n      free(plugin_data->blf);\n      if (plugin_data->handle) {\n        gsm_destroy(plugin_data->handle);\n      }\n    ]]></callback>\n\n    <callback event=\"run\" unused-vars=\"fs\"><![CDATA[\n      unsigned long pos;\n      gsm_frame frame;\n      int samp;\n      float part;\n      int error_rate = f_round(error);\n      int num_passes = f_round(passes);\n\n      for (pos = 0; pos < sample_count; pos++) {\n\n\t// oversample into buffer down to aprox 8kHz, 13bit\n\tsrc[count / resamp] += f_round(biquad_run(blf, input[pos]) * rsf);\n\n\t// interpolate output, so it doesn't sound totaly awful\n\tsamp = count / resamp;\n\tpart = (float)count / (float)resamp - (float)samp;\n        buffer_write(output[pos], cube_interp(part, dst[samp], dst[samp+1], dst[samp+2], dst[samp+3]) * SCALE_R * drywet + dry[count] * (1.0f - drywet));\n\n\t// Maintain delayed, dry buffer.\n\tdry[count] = input[pos];\n\n\tcount++;\n\n\t// If we have a full, downsampled buffer then run the encode +\n\t// decode process.\n\tif (count >= 160 * resamp) {\n\t\tint i, j;\n\t\tgsm_signal *in;\n\n\t\tcount = 0;\n\t\tdst[0] = dst[160];\n\t\tdst[1] = dst[161];\n\t\tdst[2] = dst[162];\n\n\t\tin = src;\n\t\tfor (j=0; j<num_passes; j++) {\n\t\t\tgsm_encode(handle, in, frame);\n\t\t\tfor (i=0; i < error_rate; i++) {\n\t\t\t\tframe[1 + (rand() % 32)] ^= bits[rand() % 8];\n\t\t\t}\n\t\t\tgsm_decode(handle, frame, dst+3);\n\t\t\tin = dst+3;\n\t\t}\n\t\tif (num_passes == 0) {\n\t\t\tfor (j=0; j < 160; j++) {\n\t\t\t\tdst[j + 3] = src[j];\n\t\t\t}\n\t\t}\n\t\tmemset(src, 0, sizeof(gsm_signal) * 160);\n\t}\n      }\n\n      plugin_data->count = count;\n\n      *(plugin_data->latency) = 160 * resamp;\n    ]]></callback>\n\n    <port label=\"drywet\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Dry/wet mix</name>\n      <range min=\"0\" max=\"1\"/>\n      <p>Controls the dry/wet mix, 0 will give you the dry signal (but with the appropriate amount of delay), 1 will give you a totally wet signal.</p>\n    </port>\n\n    <port label=\"passes\" dir=\"input\" type=\"control\" hint=\"integer,default_1\">\n      <name>Number of passes</name>\n      <range min=\"0\" max=\"10\"/>\n      <p>The number of times the signal is sent through the encode/decode process. Increases the CPU consumption almost linearly, and it will become more peaky so less friendly to realtime processing.</p>\n    </port>\n\n    <port label=\"error\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Error rate (bits/block)</name>\n      <range min=\"0\" max=\"30\"/>\n      <p>The number of simulated bits that get changed during the transmission process.</p>\n      <p>I really wanted to reduce the bandwidth to get that \"shouting down a drainpipe\" effect, but I'm not sure how the reduced bandwidth is dealt with by real phones. I suspect it's heavily patented technology.</p>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"latency\" dir=\"output\" type=\"control\">\n      <name>latency</name>\n    </port>\n\n    <instance-data label=\"count\" type=\"int\" />\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"rsf\" type=\"float\" />\n    <instance-data label=\"resamp\" type=\"int\" />\n    <instance-data label=\"handle\" type=\"gsm\" />\n    <instance-data label=\"dry\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"src\" type=\"gsm_signal *\" />\n    <instance-data label=\"dst\" type=\"gsm_signal *\" />\n    <instance-data label=\"blf\" type=\"biquad *\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "gverb/Makefile.am",
    "content": "LIBTOOL=libtool\nRANLIB=ranlib\n\nnoinst_HEADERS = gverb.h gverbdsp.h\n\nnoinst_LIBRARIES = libgverb.a\n\nlibgverb_a_SOURCES = gverb.c gverbdsp.c\n\n# Disable autoheader. \nAUTOHEADER=echo\n"
  },
  {
    "path": "gverb/gverb-test.c",
    "content": "#include <stdio.h>\n#include <stdlib.h>\n#include <math.h>\n#include <bits/nan.h>\n\n#include \"gverb.h\"\n\nvoid run(const char *desc);\n\n#define rdtscll(val) __asm__ __volatile__(\"rdtsc\" : \"=A\" (val))\n#define SIZE 48000\n\nfloat in[SIZE], out[2][SIZE];\nty_gverb *verb;\n\nint main(int argc, char *argv[])\n{\n\tlong long then, now;\n\tunsigned int i;\n\tfloat v;\n\n\tverb = gverb_new(48000, 300.0f, 50.0f, 7.0f, 0.5f, 15.0f, 0.5f, 0.5f, 0.5f);\n\tfor (i=0; i<SIZE; i++) {\n\t\tin[i] = sin((double)i * 0.03);\n\t}\n\trun(\"slow sin\");\n\n\tfor (i=0; i<SIZE; i++) {\n\t\tin[i] = sin((double)i);\n\t}\n\trun(\"fast sin\");\n\n\tv = 0.0000001535354543f;\n\tfor (i=0; i<SIZE; i++) {\n\t\tin[i] = v;\n\t\tv *= 0.0001f;\n\t}\n\trun(\"small numbers\");\n\n\tv = 1.0f;\n\tfor (i=0; i<SIZE; i++) {\n\t\tin[i] = v;\n\t\tv *= 10.0f;\n\t}\n\trun(\"big numbers\");\n\n\tfor (i=0; i<SIZE/2; i++) {\n\t\tin[i] = sin((double)i);\n\t}\n\tfor (; i<SIZE; i++) {\n\t\tin[i] = i % 50 * 0.0000000001543534f;\n\t}\n\trun(\"sin then small\");\n\n\tfor (i=0; i<SIZE/2; i++) {\n\t\tin[i] = sin((double)i);\n\t}\n\tfor (; i<SIZE; i++) {\n\t\tin[i] = 0.0f;\n\t}\n\trun(\"sin then zero\");\n\n\tfor (i=0; i<SIZE; i++) {\n\t\tin[i] = 0.0f;\n\t}\n\trun(\"all zeros\");\n\n\tfor (i=0; i<SIZE; i++) {\n\t\tin[i] = 0.00000000432432f;\n\t}\n\trun(\"small constant\");\n\n\tv = 1.0f;\n\tfor (i=0; i<SIZE; i++) {\n\t\tif (random() > RAND_MAX / 5) {\n\t\t\tv *= -1.0f;\n\t\t}\n\t\tv *= -1.0f;\n\t\tin[i] = 1.0f;\n\t}\n\trun(\"+0dB pulse constant\");\n\n\tfor (i=0; i<SIZE; i++) {\n\t\tin[i] = 1.0e100f;\n\t}\n\trun(\"+lots dB constant\");\n\n\trdtscll(then);\n\tgverb_flush(verb);\n\trdtscll(now);\n\tprintf(\"flush took %lld cycles\\n\", now-then);\n\n\treturn 0;\n}\n\nvoid run(const char *desc)\n{\n\tunsigned int i;\n\tlong long then, now;\n\n\t// total flush test: verb = gverb_new(48000, 300.0f, 50.0f, 7.0f, 0.5f, 15.0f, 0.5f, 0.5f, 0.5f);\n\trdtscll(then);\n\tfor (i=0; i<SIZE; i++) {\n//printf(\"%f\\n\", in[i]);\n\t\tgverb_do(verb, in[i], out[0]+i, out[1]+i);\n\t}\n\trdtscll(now);\n\tprintf(\"%s took %lld cycles/sample\\n\", desc, (now - then) / (long long)SIZE);\n\tgverb_flush(verb);\n}\n"
  },
  {
    "path": "gverb/gverb.c",
    "content": "/*\n\n        Copyright (C) 1999 Juhana Sadeharju\n                       kouhia at nic.funet.fi\n\n    This program is free software; you can redistribute it and/or modify\n    it under the terms of the GNU General Public License as published by\n    the Free Software Foundation; either version 2 of the License, or\n    (at your option) any later version.\n\n    This program is distributed in the hope that it will be useful,\n    but WITHOUT ANY WARRANTY; without even the implied warranty of\n    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n    GNU General Public License for more details.\n\n    You should have received a copy of the GNU General Public License\n    along with this program; if not, write to the Free Software\n    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.\n\n    */\n\n\n#include <stdio.h>\n#include <stdlib.h>\n#include <math.h>\n#include <string.h>\n#include \"gverbdsp.h\"\n#include \"gverb.h\"\n#include \"../ladspa-util.h\"\n\nty_gverb *gverb_new(int srate, float maxroomsize, float roomsize,\n\t\t    float revtime,\n\t\t    float damping, float spread,\n\t\t    float inputbandwidth, float earlylevel,\n\t\t    float taillevel)\n{\n  ty_gverb *p;\n  float ga,gb,gt;\n  int i,n;\n  float r;\n  float diffscale;\n  int a,b,c,cc,d,dd,e;\n  float spread1,spread2;\n\n  p = (ty_gverb *)malloc(sizeof(ty_gverb));\n  p->rate = srate;\n  p->fdndamping = damping;\n  p->maxroomsize = maxroomsize;\n  p->roomsize = roomsize;\n  p->revtime = revtime;\n  p->earlylevel = earlylevel;\n  p->taillevel = taillevel;\n\n  p->maxdelay = p->rate*p->maxroomsize/340.0;\n  p->largestdelay = p->rate*p->roomsize/340.0;\n\n\n  /* Input damper */\n\n  p->inputbandwidth = inputbandwidth;\n  p->inputdamper = damper_make(1.0 - p->inputbandwidth);\n\n\n  /* FDN section */\n\n\n  p->fdndels = (ty_fixeddelay **)calloc(FDNORDER, sizeof(ty_fixeddelay *));\n  for(i = 0; i < FDNORDER; i++) {\n    p->fdndels[i] = fixeddelay_make((int)p->maxdelay+1000);\n  }\n  p->fdngains = (float *)calloc(FDNORDER, sizeof(float));\n  p->fdnlens = (int *)calloc(FDNORDER, sizeof(int));\n\n  p->fdndamps = (ty_damper **)calloc(FDNORDER, sizeof(ty_damper *));\n  for(i = 0; i < FDNORDER; i++) {\n    p->fdndamps[i] = damper_make(p->fdndamping);\n  }\n\n  ga = 60.0;\n  gt = p->revtime;\n  ga = powf(10.0f,-ga/20.0f);\n  n = p->rate*gt;\n  p->alpha = pow((double)ga, 1.0/(double)n);\n\n  gb = 0.0;\n  for(i = 0; i < FDNORDER; i++) {\n    if (i == 0) gb = 1.000000*p->largestdelay;\n    if (i == 1) gb = 0.816490*p->largestdelay;\n    if (i == 2) gb = 0.707100*p->largestdelay;\n    if (i == 3) gb = 0.632450*p->largestdelay;\n\n#if 0\n    p->fdnlens[i] = nearest_prime((int)gb, 0.5);\n#else\n    p->fdnlens[i] = f_round(gb);\n#endif\n    p->fdngains[i] = -powf((float)p->alpha,p->fdnlens[i]);\n  }\n\n  p->d = (float *)calloc(FDNORDER, sizeof(float));\n  p->u = (float *)calloc(FDNORDER, sizeof(float));\n  p->f = (float *)calloc(FDNORDER, sizeof(float));\n\n  /* Diffuser section */\n\n  diffscale = (float)p->fdnlens[3]/(210+159+562+410);\n  spread1 = spread;\n  spread2 = 3.0*spread;\n\n  b = 210;\n  r = 0.125541;\n  a = spread1*r;\n  c = 210+159+a;\n  cc = c-b;\n  r = 0.854046;\n  a = spread2*r;\n  d = 210+159+562+a;\n  dd = d-c;\n  e = 1341-d;\n\n  p->ldifs = (ty_diffuser **)calloc(4, sizeof(ty_diffuser *));\n  p->ldifs[0] = diffuser_make((int)(diffscale*b),0.75);\n  p->ldifs[1] = diffuser_make((int)(diffscale*cc),0.75);\n  p->ldifs[2] = diffuser_make((int)(diffscale*dd),0.625);\n  p->ldifs[3] = diffuser_make((int)(diffscale*e),0.625);\n\n  b = 210;\n  r = -0.568366;\n  a = spread1*r;\n  c = 210+159+a;\n  cc = c-b;\n  r = -0.126815;\n  a = spread2*r;\n  d = 210+159+562+a;\n  dd = d-c;\n  e = 1341-d;\n\n  p->rdifs = (ty_diffuser **)calloc(4, sizeof(ty_diffuser *));\n  p->rdifs[0] = diffuser_make((int)(diffscale*b),0.75);\n  p->rdifs[1] = diffuser_make((int)(diffscale*cc),0.75);\n  p->rdifs[2] = diffuser_make((int)(diffscale*dd),0.625);\n  p->rdifs[3] = diffuser_make((int)(diffscale*e),0.625);\n\n\n\n  /* Tapped delay section */\n\n  p->tapdelay = fixeddelay_make(44000);\n  p->taps = (int *)calloc(FDNORDER, sizeof(int));\n  p->tapgains = (float *)calloc(FDNORDER, sizeof(float));\n\n  p->taps[0] = 5+0.410*p->largestdelay;\n  p->taps[1] = 5+0.300*p->largestdelay;\n  p->taps[2] = 5+0.155*p->largestdelay;\n  p->taps[3] = 5+0.000*p->largestdelay;\n\n  for(i = 0; i < FDNORDER; i++) {\n    p->tapgains[i] = pow(p->alpha,(double)p->taps[i]);\n  }\n\n  return(p);\n}\n\nvoid gverb_free(ty_gverb *p)\n{\n  int i;\n\n  damper_free(p->inputdamper);\n  for(i = 0; i < FDNORDER; i++) {\n    fixeddelay_free(p->fdndels[i]);\n    damper_free(p->fdndamps[i]);\n    diffuser_free(p->ldifs[i]);\n    diffuser_free(p->rdifs[i]);\n  }\n  free(p->fdndels);\n  free(p->fdngains);\n  free(p->fdnlens);\n  free(p->fdndamps);\n  free(p->d);\n  free(p->u);\n  free(p->f);\n  free(p->ldifs);\n  free(p->rdifs);\n  free(p->taps);\n  free(p->tapgains);\n  fixeddelay_free(p->tapdelay);\n  free(p);\n}\n\nvoid gverb_flush(ty_gverb *p)\n{\n  int i;\n\n  damper_flush(p->inputdamper);\n  for(i = 0; i < FDNORDER; i++) {\n    fixeddelay_flush(p->fdndels[i]);\n    damper_flush(p->fdndamps[i]);\n    diffuser_flush(p->ldifs[i]);\n    diffuser_flush(p->rdifs[i]);\n  }\n  memset(p->d, 0, FDNORDER * sizeof(float));\n  memset(p->u, 0, FDNORDER * sizeof(float));\n  memset(p->f, 0, FDNORDER * sizeof(float));\n  fixeddelay_flush(p->tapdelay);\n}\n\n/* swh: other functions are now in the .h file for inlining */\n"
  },
  {
    "path": "gverb/gverb.h",
    "content": "/*\n\n        Copyright (C) 1999 Juhana Sadeharju\n                       kouhia at nic.funet.fi\n\n    This program is free software; you can redistribute it and/or modify\n    it under the terms of the GNU General Public License as published by\n    the Free Software Foundation; either version 2 of the License, or\n    (at your option) any later version.\n\n    This program is distributed in the hope that it will be useful,\n    but WITHOUT ANY WARRANTY; without even the implied warranty of\n    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n    GNU General Public License for more details.\n\n    You should have received a copy of the GNU General Public License\n    along with this program; if not, write to the Free Software\n    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.\n\n    */\n\n#ifndef GVERB_H\n#define GVERB_H\n\n#include <stdlib.h>\n#include <math.h>\n#include <string.h>\n#include \"gverbdsp.h\"\n#include \"../ladspa-util.h\"\n\n#define FDNORDER 4\n\ntypedef struct {\n  int rate;\n  float inputbandwidth;\n  float taillevel;\n  float earlylevel;\n  ty_damper *inputdamper;\n  float maxroomsize;\n  float roomsize;\n  float revtime;\n  float maxdelay;\n  float largestdelay;\n  ty_fixeddelay **fdndels;\n  float *fdngains;\n  int *fdnlens;\n  ty_damper **fdndamps; \n  float fdndamping;\n  ty_diffuser **ldifs;\n  ty_diffuser **rdifs;\n  ty_fixeddelay *tapdelay;\n  int *taps;\n  float *tapgains;\n  float *d;\n  float *u;\n  float *f;\n  double alpha;\n} ty_gverb;\n\n\nty_gverb *gverb_new(int, float, float, float, float, float, float, float, float);\nvoid gverb_free(ty_gverb *);\nvoid gverb_flush(ty_gverb *);\nstatic void gverb_do(ty_gverb *, float, float *, float *);\nstatic void gverb_set_roomsize(ty_gverb *, float);\nstatic void gverb_set_revtime(ty_gverb *, float);\nstatic void gverb_set_damping(ty_gverb *, float);\nstatic void gverb_set_inputbandwidth(ty_gverb *, float);\nstatic void gverb_set_earlylevel(ty_gverb *, float);\nstatic void gverb_set_taillevel(ty_gverb *, float);\n\n/*\n * This FDN reverb can be made smoother by setting matrix elements at the\n * diagonal and near of it to zero or nearly zero. By setting diagonals to zero\n * means we remove the effect of the parallel comb structure from the\n * reverberation.  A comb generates uniform impulse stream to the reverberation\n * impulse response, and thus it is not good. By setting near diagonal elements\n * to zero means we remove delay sequences having consequtive delays of the\n * similar lenths, when the delays are in sorted in length with respect to\n * matrix element index. The matrix described here could be generated by\n * differencing Rocchesso's circulant matrix at max diffuse value and at low\n * diffuse value (approaching parallel combs).\n *\n * Example 1:\n * Set a(k,k), for all k, equal to 0.\n *\n * Example 2:\n * Set a(k,k), a(k,k-1) and a(k,k+1) equal to 0.\n *\n * Example 3: The transition to zero gains could be smooth as well.\n * a(k,k-1) and a(k,k+1) could be 0.3, and a(k,k-2) and a(k,k+2) could\n * be 0.5, say.\n */\n\nstatic inline void gverb_fdnmatrix(float *a, float *b)\n{\n  const float dl0 = a[0], dl1 = a[1], dl2 = a[2], dl3 = a[3];\n\n  b[0] = 0.5f*(+dl0 + dl1 - dl2 - dl3);\n  b[1] = 0.5f*(+dl0 - dl1 - dl2 + dl3);\n  b[2] = 0.5f*(-dl0 + dl1 - dl2 + dl3);\n  b[3] = 0.5f*(+dl0 + dl1 + dl2 + dl3);\n}\n\nstatic inline void gverb_do(ty_gverb *p, float x, float *yl, float *yr)\n{\n  float z;\n  unsigned int i;\n  float lsum,rsum,sum,sign;\n\n  if (isnan(x) || fabsf(x) > 100000.0f) {\n    x = 0.0f;\n  }\n\n  z = damper_do(p->inputdamper, x);\n\n  z = diffuser_do(p->ldifs[0],z);\n\n  for(i = 0; i < FDNORDER; i++) {\n    p->u[i] = p->tapgains[i]*fixeddelay_read(p->tapdelay,p->taps[i]);\n  }\n  fixeddelay_write(p->tapdelay,z);\n\n  for(i = 0; i < FDNORDER; i++) {\n    p->d[i] = damper_do(p->fdndamps[i],\n\t\t\tp->fdngains[i]*fixeddelay_read(p->fdndels[i],\n\t\t\t\t\t\t       p->fdnlens[i]));\n  }\n\n  sum = 0.0f;\n  sign = 1.0f;\n  for(i = 0; i < FDNORDER; i++) {\n    sum += sign*(p->taillevel*p->d[i] + p->earlylevel*p->u[i]);\n    sign = -sign;\n  }\n  sum += x*p->earlylevel;\n  lsum = sum;\n  rsum = sum;\n\n  gverb_fdnmatrix(p->d,p->f);\n\n  for(i = 0; i < FDNORDER; i++) {\n    fixeddelay_write(p->fdndels[i],p->u[i]+p->f[i]);\n  }\n\n  lsum = diffuser_do(p->ldifs[1],lsum);\n  lsum = diffuser_do(p->ldifs[2],lsum);\n  lsum = diffuser_do(p->ldifs[3],lsum);\n  rsum = diffuser_do(p->rdifs[1],rsum);\n  rsum = diffuser_do(p->rdifs[2],rsum);\n  rsum = diffuser_do(p->rdifs[3],rsum);\n\n  *yl = lsum;\n  *yr = rsum;\n}\n\nstatic inline void gverb_set_roomsize(ty_gverb *p, const float a)\n{\n  unsigned int i;\n\n  if (a <= 1.0 || isnan(a)) {\n    p->roomsize = 1.0;\n  } else {\n    p->roomsize = a;\n  }\n  p->largestdelay = p->rate * p->roomsize * 0.00294f;\n\n  p->fdnlens[0] = f_round(1.000000f*p->largestdelay);\n  p->fdnlens[1] = f_round(0.816490f*p->largestdelay);\n  p->fdnlens[2] = f_round(0.707100f*p->largestdelay);\n  p->fdnlens[3] = f_round(0.632450f*p->largestdelay);\n  for(i = 0; i < FDNORDER; i++) {\n    p->fdngains[i] = -powf((float)p->alpha, p->fdnlens[i]);\n  }\n\n  p->taps[0] = 5+f_round(0.410f*p->largestdelay);\n  p->taps[1] = 5+f_round(0.300f*p->largestdelay);\n  p->taps[2] = 5+f_round(0.155f*p->largestdelay);\n  p->taps[3] = 5+f_round(0.000f*p->largestdelay);\n\n  for(i = 0; i < FDNORDER; i++) {\n    p->tapgains[i] = powf((float)p->alpha, p->taps[i]);\n  }\n\n}\n\nstatic inline void gverb_set_revtime(ty_gverb *p,float a)\n{\n  float ga,gt;\n  double n;\n  unsigned int i;\n\n  p->revtime = a;\n\n  ga = 60.0;\n  gt = p->revtime;\n  ga = powf(10.0f,-ga/20.0f);\n  n = p->rate*gt;\n  p->alpha = (double)powf(ga,1.0f/n);\n\n  for(i = 0; i < FDNORDER; i++) {\n    p->fdngains[i] = -powf((float)p->alpha, p->fdnlens[i]);\n  }\n\n}\n\nstatic inline void gverb_set_damping(ty_gverb *p,float a)\n{\n  unsigned int i;\n\n  p->fdndamping = a;\n  for(i = 0; i < FDNORDER; i++) {\n    damper_set(p->fdndamps[i],p->fdndamping);\n  }\n}\n\nstatic inline void gverb_set_inputbandwidth(ty_gverb *p,float a)\n{\n  p->inputbandwidth = a;\n  damper_set(p->inputdamper,1.0 - p->inputbandwidth);\n}\n\nstatic inline void gverb_set_earlylevel(ty_gverb *p,float a)\n{\n  p->earlylevel = a;\n}\n\nstatic inline void gverb_set_taillevel(ty_gverb *p,float a)\n{\n  p->taillevel = a;\n}\n\n#endif\n"
  },
  {
    "path": "gverb/gverbdsp.c",
    "content": "\n\n/*\n\n        Copyright (C) 1999 Juhana Sadeharju\n                       kouhia at nic.funet.fi\n\n    This program is free software; you can redistribute it and/or modify\n    it under the terms of the GNU General Public License as published by\n    the Free Software Foundation; either version 2 of the License, or\n    (at your option) any later version.\n\n    This program is distributed in the hope that it will be useful,\n    but WITHOUT ANY WARRANTY; without even the implied warranty of\n    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n    GNU General Public License for more details.\n\n    You should have received a copy of the GNU General Public License\n    along with this program; if not, write to the Free Software\n    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.\n\n    */\n\n#include <stdio.h>\n#include <math.h>\n#include <stdlib.h>\n#include <string.h>\n\n#include \"gverbdsp.h\"\n\n#define TRUE 1\n#define FALSE 0\n\nty_diffuser *diffuser_make(int size, float coeff)\n{\n  ty_diffuser *p;\n  int i;\n\n  p = (ty_diffuser *)malloc(sizeof(ty_diffuser));\n  p->size = size;\n  p->coeff = coeff;\n  p->idx = 0;\n  p->buf = (float *)malloc(size*sizeof(float));\n  for (i = 0; i < size; i++) p->buf[i] = 0.0;\n  return(p);\n}\n\nvoid diffuser_free(ty_diffuser *p)\n{\n  free(p->buf);\n  free(p);\n}\n\nvoid diffuser_flush(ty_diffuser *p)\n{\n  memset(p->buf, 0, p->size * sizeof(float));\n}\n\nty_damper *damper_make(float damping)\n{\n  ty_damper *p;\n\n  p = (ty_damper *)malloc(sizeof(ty_damper));\n  p->damping = damping;\n  p->delay = 0.0f;\n  return(p);\n}\n\nvoid damper_free(ty_damper *p)\n{\n  free(p);\n}\n\nvoid damper_flush(ty_damper *p)\n{\n  p->delay = 0.0f;\n}\n\nty_fixeddelay *fixeddelay_make(int size)\n{\n  ty_fixeddelay *p;\n  int i;\n\n  p = (ty_fixeddelay *)malloc(sizeof(ty_fixeddelay));\n  p->size = size;\n  p->idx = 0;\n  p->buf = (float *)malloc(size*sizeof(float));\n  for (i = 0; i < size; i++) p->buf[i] = 0.0;\n  return(p);\n}\n\nvoid fixeddelay_free(ty_fixeddelay *p)\n{\n  free(p->buf);\n  free(p);\n}\n\nvoid fixeddelay_flush(ty_fixeddelay *p)\n{\n  memset(p->buf, 0, p->size * sizeof(float));\n}\n\nint isprime(int n)\n{\n  unsigned int i;\n  const unsigned int lim = (int)sqrtf((float)n);\n\n  if (n == 2) return(TRUE);\n  if ((n & 1) == 0) return(FALSE);\n  for(i = 3; i <= lim; i += 2)\n    if ((n % i) == 0) return(FALSE);\n  return(TRUE);\n}\n\nint nearest_prime(int n, float rerror)\n     /* relative error; new prime will be in range\n      * [n-n*rerror, n+n*rerror];\n      */\n{\n  int bound,k;\n\n  if (isprime(n)) return(n);\n  /* assume n is large enough and n*rerror enough smaller than n */\n  bound = n*rerror;\n  for(k = 1; k <= bound; k++) {\n    if (isprime(n+k)) return(n+k);\n    if (isprime(n-k)) return(n-k);\n  }\n  return(-1);\n}\n"
  },
  {
    "path": "gverb/gverbdsp.h",
    "content": "\n#ifndef GVERBDSP_H\n#define GVERBDSP_H\n\n#include \"../ladspa-util.h\"\n\ntypedef struct {\n  int size;\n  int idx;\n  float *buf;\n} ty_fixeddelay;\n\ntypedef struct {\n  int size;\n  float coeff;\n  int idx;\n  float *buf;\n} ty_diffuser;\n\ntypedef struct {\n  float damping;\n  float delay;\n} ty_damper;\n\nty_diffuser *diffuser_make(int, float);\nvoid diffuser_free(ty_diffuser *);\nvoid diffuser_flush(ty_diffuser *);\n//float diffuser_do(ty_diffuser *, float);\n\nty_damper *damper_make(float);\nvoid damper_free(ty_damper *);\nvoid damper_flush(ty_damper *);\n//void damper_set(ty_damper *, float);\n//float damper_do(ty_damper *, float);\n\nty_fixeddelay *fixeddelay_make(int);\nvoid fixeddelay_free(ty_fixeddelay *);\nvoid fixeddelay_flush(ty_fixeddelay *);\n//float fixeddelay_read(ty_fixeddelay *, int);\n//void fixeddelay_write(ty_fixeddelay *, float);\n\nint isprime(int);\nint nearest_prime(int, float);\n\nstatic inline float diffuser_do(ty_diffuser *p, float x)\n{\n  float y,w;\n\n  w = x - p->buf[p->idx]*p->coeff;\n  w = flush_to_zero(w);\n  y = p->buf[p->idx] + w*p->coeff;\n  p->buf[p->idx] = w;\n  p->idx = (p->idx + 1) % p->size;\n  return(y);\n}\n\nstatic inline float fixeddelay_read(ty_fixeddelay *p, int n)\n{\n  int i;\n\n  i = (p->idx - n + p->size) % p->size;\n  return(p->buf[i]);\n}\n\nstatic inline void fixeddelay_write(ty_fixeddelay *p, float x)\n{\n  p->buf[p->idx] = x;\n  p->idx = (p->idx + 1) % p->size;\n}\n\nstatic inline void damper_set(ty_damper *p, float damping)\n{ \n  p->damping = damping;\n} \n  \nstatic inline float damper_do(ty_damper *p, float x)\n{ \n  float y;\n    \n  y = x*(1.0-p->damping) + p->delay*p->damping;\n  p->delay = y;\n  return(y);\n}\n\n#endif\n"
  },
  {
    "path": "gverb_1216.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Juhana Sadeharju &lt;kouhia at nic.funet.fi&gt;, LADSPAification by Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n/*\n\nGVerb algorithm designed and implemented by Juhana Sadeharju.\nLADSPA implementation and GVerb speeds ups by Steve Harris.\n\nComments and suggestions should be mailed to Juhana Sadeharju\n(kouhia at nic funet fi).\n\n*/\n\n#include \"ladspa-util.h\"\n#include \"gverb/gverbdsp.h\"\n#include \"gverb/gverb.h\"\n    </code>\n  </global>\n\n  <plugin label=\"gverb\" id=\"1216\" class=\"ReverbPlugin\">\n    <name>GVerb</name>\n    <p>A mono in, stereo out reverb implementation by Juhana Sadeharju (kouhia at nic.funet.fi). I ported it to LADSPA and did some testing.</p>\n    <p>Please contact Juhana directly regarding any bugs you find.</p>\n    <p><![CDATA[\n      Paul Winkler recommends a good starting point for a \"large hall\" as follows:\n\n\t\\begin{tabular}{|l|r|}\n\t\\hline\n\tParameter & Value \\\\\n\t\\hline\n\tRoomsize & 200 \\\\\n\tReverb time & 1.3 \\\\\n\tDamping & 0.4 \\\\\n\tInput bandwidth & 0.5 \\\\\n\tDry signal level & 0 \\\\\n\tEarly reflection level & -12 \\\\\n\tTail level & 0 \\\\\n\t\\hline\n\t\\end{tabular}\n    ]]></p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      verb = gverb_new(s_rate, 300.0f, 50.0f, 7.0f, 0.5f, 15.0f, 0.5f, 0.5f, 0.5f);\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      gverb_flush(plugin_data->verb);\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      gverb_free(plugin_data->verb);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float l, r;\n      float dryc = DB_CO(drylevel);\n\n      gverb_set_roomsize(verb, roomsize);\n      gverb_set_revtime(verb, revtime);\n      gverb_set_damping(verb, damping);\n      gverb_set_inputbandwidth(verb, inputbandwidth);\n      gverb_set_earlylevel(verb, DB_CO(earlylevel));\n      gverb_set_taillevel(verb, DB_CO(taillevel));\n\n      for (pos = 0; pos < sample_count; pos++) {\n        gverb_do(verb, input[pos], &l, &r);\n        buffer_write(outl[pos], l + input[pos] * dryc);\n        buffer_write(outr[pos], r + input[pos] * dryc);\n      }\n    ]]></callback>\n\n    <port label=\"roomsize\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Roomsize (m)</name>\n      <p>The size of the room, in meters. Excessivly large, and excessivly small values will make it sound a bit unrealistic.</p>\n      <p>Values of around 30 sound good.</p>\n      <range min=\"1\" max=\"300\"/>\n    </port>\n\n    <port label=\"revtime\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Reverb time (s)</name>\n      <p>Reverb decay time, in seconds. 7 is a good place to start.</p>\n      <range min=\"0.1\" max=\"30\"/>\n    </port>\n\n    <port label=\"damping\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Damping</name>\n      <p>This controls the high frequency damping (a lowpass filter), values near 1 will make it sound very bright, values near 0 will make it sound very dark.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"inputbandwidth\" dir=\"input\" type=\"control\" hint=\"default_high\">\n      <name>Input bandwidth</name>\n      <p>This is like a damping control for the input, it has a similar effect to the damping control, but is subtly different.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"drylevel\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n      <name>Dry signal level (dB)</name>\n      <p>The amount of dry signal to be mixed with the reverberated signal.</p>\n      <range min=\"-70\" max=\"0\"/>\n    </port>\n\n    <port label=\"earlylevel\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Early reflection level (dB)</name>\n      <p>The quantity of early reflections (scatter reflections directly from the source). Think of Lexicons ambiance patches.</p>\n      <range min=\"-70\" max=\"0\"/>\n    </port>\n\n    <port label=\"taillevel\" dir=\"input\" type=\"control\" hint=\"default_high\">\n      <name>Tail level (dB)</name>\n      <p>The level of the classic reverb tail reflections.</p>\n      <range min=\"-70\" max=\"0\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"outl\" dir=\"output\" type=\"audio\">\n      <name>Left output</name>\n    </port>\n\n    <port label=\"outr\" dir=\"output\" type=\"audio\">\n      <name>Right output</name>\n    </port>\n\n    <instance-data label=\"verb\" type=\"ty_gverb *\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "hard_limiter_1413.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Marcus Andersson\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include <math.h>\n      #include \"ladspa-util.h\"\n    ]]></code>\n  </global>\n\n  <plugin label=\"hardLimiter\" id=\"1413\" class=\"LimiterPlugin,DistortionPlugin\">\n    <name>Hard Limiter</name>\n    <p>Brick hard limiter with residue mixer.</p>\n\n    <callback event=\"run\"><![CDATA[\n\tunsigned long i;\n\tfor (i = 0; i < sample_count; i++)\n\t{\n\t\tfloat limit_g = pow(10, limit_db / 20);\n\t\tfloat sign = input[i] < 0.0 ? -1.0 : 1.0;\n\t\tfloat data = input[i] * sign;\n\t\tfloat residue = data > limit_g ? data - limit_g : 0.0;\n\t\tdata -= residue;\n\t\tbuffer_write(output[i],\n\t\t\t sign * (wet_gain * data + res_gain * residue));\n\t}\n    ]]></callback>\n\n    <port label=\"limit_db\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>dB limit</name>\n      <p></p>\n      <range min=\"-50.0\" max=\"0.0\"/>\n    </port>\n\n    <port label=\"wet_gain\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Wet level</name>\n      <p>Output level for limited signal.</p>\n      <range min=\"0.0\" max=\"1.0\"/>\n    </port>\n\n    <port label=\"res_gain\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Residue level</name>\n      <p>Output level for residue signal.</p>\n      <range min=\"0.0\" max=\"1.0\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "harmonic_gen_1220.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #define HARMONICS 11\n\n      /* Calculate Chebychev coefficents from partial magnitudes, adapted from\n       * example in Num. Rec. */\n      void chebpc(float c[], float d[])\n      {\n          int k, j;\n          float sv, dd[HARMONICS];\n      \n          for (j = 0; j < HARMONICS; j++) {\n              d[j] = dd[j] = 0.0;\n          }\n      \n          d[0] = c[HARMONICS - 1];\n      \n          for (j = HARMONICS - 2; j >= 1; j--) {\n              for (k = HARMONICS - j; k >= 1; k--) {\n                  sv = d[k];\n                  d[k] = 2.0 * d[k - 1] - dd[k];\n                  dd[k] = sv;\n              }\n              sv = d[0];\n              d[0] = -dd[0] + c[j];\n              dd[0] = sv;\n          }\n      \n          for (j = HARMONICS - 1; j >= 1; j--) {\n              d[j] = d[j - 1] - dd[j];\n          }\n          d[0] = -dd[0] + 0.5 * c[0];\n      }\n    ]]></code>\n  </global>\n\n  <plugin label=\"harmonicGen\" id=\"1220\" class=\"GeneratorPlugin\">\n    <name>Harmonic generator</name>\n    <p>\\subsubsection{What does it do?}</p>\n    <p>Allows you to add harmonics and remove the fundamental from any audio signal.</p>\n    <p>\\subsubsection{Known bugs}</p>\n    <p>There is no bandwith limiting filter on the output, so it is easy to create excessively high frequency harmonics that could cause aliasing problems. In practice this doesn't seem to be a serious problem however.</p>\n    <p>\\subsubsection{Examples}</p>\n    <p>There are many interesting effects you can achieve with sinewaves, one example is producing bandlimited squarewaves from sinewaves. To do this set the parameters to 1, 0, -0.3333, 0, 0.2, 0, -0.14285, 0, 0.11111.</p>\n    <p>To get a triangle like signal use 1, 0, -0.3333, 0, -0.2, 0, -0.14285, 0, -0.11111.</p>\n\n    <callback event=\"activate\"><![CDATA[\n      itm1 = 0.0f;\n      otm1 = 0.0f;\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos, i;\n      float mag_fix;\n      float mag[HARMONICS] = {0.0f, mag_1, mag_2, mag_3, mag_4, mag_5, mag_6,\n                              mag_7, mag_8, mag_9, mag_10};\n      float p[HARMONICS];\n\n      // Normalise magnitudes\n      mag_fix = (fabs(mag_1) + fabs(mag_2) + fabs(mag_3) + fabs(mag_4) +\n                 fabs(mag_5) + fabs(mag_6) + fabs(mag_7) + fabs(mag_8) +\n                 fabs(mag_9) + fabs(mag_10));\n      if (mag_fix < 1.0f) {\n        mag_fix = 1.0f;\n      } else {\n        mag_fix = 1.0f / mag_fix;\n      }\n      for (i=0; i<HARMONICS; i++) {\n        mag[i] *= mag_fix;\n      }\n\n      // Calculate polynomial coefficients, using Chebychev aproximation\n      chebpc(mag, p);\n\n      for (pos = 0; pos < sample_count; pos++) {\n        float x = input[pos], y;\n\n        // Calculate the polynomial using Horner's Rule\n\ty = p[0] + (p[1] + (p[2] + (p[3] + (p[4] + (p[5] + (p[6] + (p[7] +\n            (p[8] + (p[9] + p[10] * x) * x) * x) * x) * x) * x) * x) * x) *\n            x) * x;\n\n\t// DC offset remove (odd harmonics cause DC offset)\n        otm1 = 0.999f * otm1 + y - itm1;\n        itm1 = y;\n\n        buffer_write(output[pos], otm1);\n      }\n\n      plugin_data->itm1 = itm1;\n      plugin_data->otm1 = otm1;\n    ]]></callback>\n\n    <port label=\"mag_1\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Fundamental magnitude</name>\n      <p>The amplitude of the fundamental of the signal, reduce it to 0 to remove the base signal altogether, or -1 to phase invert it.</p>\n      <range min=\"-1\" max=\"+1\"/>\n    </port>\n\n    <port label=\"mag_2\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>2nd harmonic magnitude</name>\n      <p>The 2nd harmonic, its frequency is twice the frequency of the fundamental.</p>\n      <p>Even harmonics add a distorted feel to the sound, valve (tube) amplifiers introduce distortions at all the harmonics.</p>\n      <range min=\"-1\" max=\"+1\"/>\n    </port>\n\n    <port label=\"mag_3\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>3rd harmonic magnitude</name>\n      <p>The 3rd harmonic, its frequency is three times the frequency of the fundamental.</p>\n      <p>Transistor amplifiers only introduce distortion into the odd harmonics.</p>\n      <range min=\"-1\" max=\"+1\"/>\n    </port>\n\n    <port label=\"mag_4\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>4th harmonic magnitude</name>\n      <range min=\"-1\" max=\"+1\"/>\n    </port>\n\n    <port label=\"mag_5\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>5th harmonic magnitude</name>\n      <range min=\"-1\" max=\"+1\"/>\n    </port>\n\n    <port label=\"mag_6\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>6th harmonic magnitude</name>\n      <range min=\"-1\" max=\"+1\"/>\n    </port>\n\n    <port label=\"mag_7\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>7th harmonic magnitude</name>\n      <range min=\"-1\" max=\"+1\"/>\n    </port>\n\n    <port label=\"mag_8\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>8th harmonic magnitude</name>\n      <range min=\"-1\" max=\"+1\"/>\n    </port>\n\n    <port label=\"mag_9\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>9th harmonic magnitude</name>\n      <range min=\"-1\" max=\"+1\"/>\n    </port>\n\n    <port label=\"mag_10\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>10th harmonic magnitude</name>\n      <range min=\"-1\" max=\"+1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n      <range min=\"-1\" max=\"+1\"/>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n      <range min=\"-1\" max=\"+1\"/>\n    </port>\n\n    <instance-data label=\"itm1\" type=\"float\" />\n    <instance-data label=\"otm1\" type=\"float\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "hermes_filter_1200.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code><![CDATA[\n#include \"ladspa-util.h\"\n#include \"util/blo.h\"\n\n// Return the value of the LDO's for given coeffs\n#define LFO(a,b) (a*lfo1 + b*lfo2)\n\n// Ampmod / ringmod two signals together with given depth\n#define RINGMOD(c,m,d) (c * ((d * 0.5f) * m + (2.0f - d)))\n\n// Stuff needed for the soft clipping code\n#define MAX_AMP 1.0f\n#define CLIP 0.8f\n#define CLIP_A ((MAX_AMP - CLIP) * (MAX_AMP - CLIP))\n#define CLIP_B (MAX_AMP - 2.0f * CLIP)\n\n// Constants to match filter types\n#define F_LP 1\n#define F_HP 2\n#define F_BP 3\n#define F_BR 4\n#define F_AP 5\n\n// Number of filter oversamples\n#define F_R 3\n\n// Magic number\n#define NOISE 23\n\nLADSPA_Data *sin_tbl, *tri_tbl, *saw_tbl, *squ_tbl;\nint tbl_ref_count = 0;\nlong sample_rate;\n\n/* Structure to hold parameters for SV filter */\n\ntypedef struct {\n\tfloat f;     // 2.0*sin(PI*fs/(fc*r));\n\tfloat q;     // 2.0*cos(pow(q, 0.1)*PI*0.5);\n\tfloat qnrm;  // sqrt(m/2.0f+0.01f);\n\tfloat h;     // high pass output\n\tfloat b;     // band pass output\n\tfloat l;     // low pass output\n\tfloat p;     // peaking output (allpass with resonance)\n\tfloat n;     // notch output\n\tfloat *op;   // pointer to output value\n} sv_filter;\n\nfloat soft_clip(float sc_in) {\n\tif ((sc_in < CLIP) && (sc_in > -CLIP)) {\n\t\treturn sc_in;\n\t} else if (sc_in > 0.0f) {\n\t\treturn MAX_AMP - (CLIP_A / (CLIP_B + sc_in));\n\t} else {\n\t\treturn -(MAX_AMP - (CLIP_A / (CLIP_B - sc_in)));\n\t}\n}\n\n/* Store data in SVF struct, takes the sampling frequency, cutoff frequency\n   and Q, and fills in the structure passed */\n\nvoid setup_svf(sv_filter *sv, float fs, float fc, float q, int t) {\n\tsv->f = 2.0f * sinf(M_PI * fc / (float)(fs * F_R));\n\tsv->q = 2.0f * cosf(powf(q, 0.1f) * M_PI * 0.5f);\n\tsv->qnrm = sqrtf(sv->q*0.5f + 0.01f);\n\n\tswitch(t) {\n\tcase F_LP:\n\t\tsv->op = &(sv->l);\n\t\tbreak;\n\tcase F_HP:\n\t\tsv->op = &(sv->h);\n\t\tbreak;\n\tcase F_BP:\n\t\tsv->op = &(sv->b);\n\t\tbreak;\n\tcase F_BR:\n\t\tsv->op = &(sv->n);\n\t\tbreak;\n\tdefault:\n\t\tsv->op = &(sv->p);\n\t}\n}\n\n/* Change the frequency of a running SVF */\n\nvoid setup_f_svf(sv_filter *sv, const float fs, const float fc) {\n\tsv->f = 2.0f * sin(M_PI * fc / ((float)(fs * F_R)));\n}\n\n/* Run one sample through the SV filter. Filter is by andy@vellocet */\n\nstatic inline float run_svf(sv_filter *sv, float in) {\n\tfloat out;\n\tint i;\n\n\tin = sv->qnrm * in ;\n\tfor (i=0; i < F_R; i++) {\n\t\t// only needed for pentium chips\n\t\tin  = flush_to_zero(in);\n\t\tsv->l = flush_to_zero(sv->l);\n\t\t// very slight waveshape for extra stability\n\t\tsv->b = sv->b - sv->b * sv->b * sv->b * 0.001f;\n\n\t\t// regular state variable code here\n\t\t// the notch and peaking outputs are optional\n\t\tsv->h = in - sv->l - sv->q * sv->b;\n\t\tsv->b = sv->b + sv->f * sv->h;\n\t\tsv->l = sv->l + sv->f * sv->b;\n\t\tsv->n = sv->l + sv->h;\n\t\tsv->p = sv->l - sv->h;\n\n\t\tout = *(sv->op);\n\t\tin = out;\n\t}\n\n\treturn out;\n}\n\nstatic inline int wave_tbl(const float wave) {\n\tswitch (f_round(wave)) {\n\t\tcase 0:\n\t\treturn BLO_SINE;\n\t\tbreak;\n\n\t\tcase 1:\n\t\treturn BLO_TRI;\n\t\tbreak;\n\n\t\tcase 2:\n\t\treturn BLO_SAW;\n\t\tbreak;\n\n\t\tcase 3:\n\t\treturn BLO_SQUARE;\n\t\tbreak;\n\t}\n\treturn NOISE;\n}\n\t\t]]></code>\n\t</global>\n\n\t<plugin label=\"hermesFilter\" id=\"1200\" class=\"FilterPlugin\">\n\t\t<name>Hermes Filter</name>\n\t\t<p>This plugin is a simulation of a modern analogue synth called a Pro Tone, with some extra features bolted on, like a crossover. I tried to make it as comprehensive as possible, without requiring ludicrous amounts of CPU juice.</p>\n\t\t<p>N.B. as far as I know, noone has tried to use this (I certainly haven't), so it may be full of bugs and what not. The parameters are all undocumented, but there is a diagram of the routing on the website. Without a custom interface however it would be very hard to use.</p>\n\t\t<p>Historical note: the name is a bad pun, it comes from the name Hermes Trimegistus given to the Egyptian god Thoth by the greeks, it means Thrice Blessed, or something similar.</p>\n\n\t\t<callback event=\"instantiate\">\nlong i;\n\nsample_rate = s_rate;\ncount = 0;\n\ntables = blo_h_tables_new(1024);\nosc1_d = blo_h_new(tables, BLO_SINE, (float)s_rate);\nosc2_d = blo_h_new(tables, BLO_SINE, (float)s_rate);\nlfo1_d = blo_h_new(tables, BLO_SINE, (float)s_rate);\nlfo2_d = blo_h_new(tables, BLO_SINE, (float)s_rate);\n\nxover_b1_data = calloc(1, sizeof(sv_filter));\nxover_b2_data = calloc(1, sizeof(sv_filter));\n\ndela_data = malloc(3 * sizeof(float *));\ndela_pos = malloc(3 * sizeof(int));\nfilt_data = malloc(3 * sizeof(sv_filter *));\nfor (i = 0; i &lt; 3; i++) {\n\tdela_data[i] = malloc(sample_rate * 2 * sizeof(float));\n\tdela_pos[i] = 0;\n\tfilt_data[i] = calloc(1, sizeof(sv_filter));\n}\nlfo1 = 0.0f;\nlfo2 = 0.0f;\nlfo1_phase = 0.0f;\nlfo2_phase = 0.0f;\n\t\t</callback>\n\n\t\t<callback event=\"activate\">\nsetup_svf(filt_data[0], 0, 0, 0, 0);\nsetup_svf(filt_data[1], 0, 0, 0, 0);\nsetup_svf(filt_data[2], 0, 0, 0, 0);\nsetup_svf(xover_b1_data, sample_rate, 1000.0, 0.0, F_HP);\nsetup_svf(xover_b2_data, sample_rate, 100.0, 0.0, F_LP);\nmemset(dela_data[0], 0, sample_rate * 2 * sizeof(float));\nmemset(dela_data[1], 0, sample_rate * 2 * sizeof(float));\nmemset(dela_data[2], 0, sample_rate * 2 * sizeof(float));\ndela_pos[0] = 0;\ndela_pos[1] = 0;\ndela_pos[2] = 0;\n/*\nosc1_d->ph.all = 0;\nosc2_d->ph.all = 0;\nlfo1_d->ph.all = 0;\nlfo2_d->ph.all = 0;\n*/\ncount = 0;\nlfo1 = 0.0f;\nlfo2 = 0.0f;\nlfo1_phase = 0.0f;\nlfo2_phase = 0.0f;\n\t\t</callback>\n\n\t\t<callback event=\"cleanup\">\nfree(plugin_data->filt_data[0]);\nfree(plugin_data->filt_data[1]);\nfree(plugin_data->filt_data[2]);\nfree(plugin_data->dela_data[0]);\nfree(plugin_data->dela_data[1]);\nfree(plugin_data->dela_data[2]);\nfree(plugin_data->filt_data);\nfree(plugin_data->dela_data);\nfree(plugin_data->dela_pos);\nfree(plugin_data->xover_b1_data);\nfree(plugin_data->xover_b2_data);\n\nblo_h_free(plugin_data->osc1_d);\nblo_h_free(plugin_data->osc2_d);\nblo_h_free(plugin_data->lfo1_d);\nblo_h_free(plugin_data->lfo2_d);\nblo_h_tables_free(plugin_data->tables);\n\t\t</callback>\n\n\t\t<callback event=\"run\" unused-vars=\"tables\"><![CDATA[\nunsigned long pos;\nint i;\n\n// dB gains converted to coefficients\nfloat osc1_gain, rm1_gain, osc2_gain, rm2_gain, in_gain, rm3_gain;\n\n// Output values for the oscilators etc.\nfloat osc1, osc2, in, rm1, rm2, rm3, mixer1;\n\n// Outputs from xover\nfloat xover[3], band_gain[3];\n\n// Output values for disortions\nfloat dist[3];\n\n// Stuff for distortions\nfloat drive[3];\n\n// Stuff for filters\nfloat filt[3];\nfloat filt_freq[3];\nfloat filt_res[3];\nfloat filt_lfo1[3];\nfloat filt_lfo2[3];\nint filt_t[3];\n\n// Values for delays\nfloat dela[3], dela_wet[3], dela_fb[3];\nint dela_offset[3];\n\n// Output of mixer2\nfloat mixer2;\n\n// X overs\nconst float xover_ufreq = f_clamp(xover_ufreqp, 200.0f, (float)(sample_rate / 6));\nconst float xover_lfreq = f_clamp(xover_lfreqp, 0.0f, xover_ufreq);\nsetup_f_svf(xover_b1_data, sample_rate, xover_ufreq);\nsetup_f_svf(xover_b2_data, sample_rate, xover_lfreq);\n\n// Calculate delay offsets\ndela_offset[0] = dela1_length * sample_rate;\ndela_offset[1] = dela2_length * sample_rate;\ndela_offset[2] = dela3_length * sample_rate;\nfor (i = 0; i < 3; i++) {\n\tif (dela_offset[i] > sample_rate * 2 || dela_offset[i] < 0) {\n\t\tdela_offset[i] = 0;\n\t}\n\tdela[i] = 0.0f;\n\tfilt_t[i] = 0;\n}\n\n// Convert dB gains to coefficients\nosc1_gain = DB_CO(osc1_gain_db);\nosc2_gain = DB_CO(osc2_gain_db);\nin_gain   = DB_CO(in_gain_db);\nrm1_gain  = DB_CO(rm1_gain_db);\nrm2_gain  = DB_CO(rm2_gain_db);\nrm3_gain  = DB_CO(rm3_gain_db);\nband_gain[0] = DB_CO(band1_gain_db);\nband_gain[1] = DB_CO(band2_gain_db);\nband_gain[2] = DB_CO(band3_gain_db);\n\nosc1_d->wave = wave_tbl(osc1_wave);\nosc2_d->wave = wave_tbl(osc2_wave);\nlfo1_d->wave = wave_tbl(lfo1_wave);\nlfo2_d->wave = wave_tbl(lfo2_wave);\n\nblo_hd_set_freq(osc1_d, osc1_freq);\nblo_hd_set_freq(osc2_d, osc2_freq);\nblo_hd_set_freq(lfo1_d, lfo1_freq * 16);\nblo_hd_set_freq(lfo2_d, lfo2_freq * 16);\n\n#define SETUP_F(n,f,q,t) setup_svf(filt_data[n], sample_rate, f, q, (int)t)\n\n// Set filter stuff\nSETUP_F(0, filt1_freq, filt1_q, filt1_type);\nSETUP_F(1, filt2_freq, filt2_q, filt2_type);\nSETUP_F(2, filt3_freq, filt3_q, filt3_type);\n\nfilt_freq[0] = filt1_freq;\nfilt_freq[1] = filt2_freq;\nfilt_freq[2] = filt3_freq;\nfilt_res[0] = filt1_res;\nfilt_res[1] = filt2_res;\nfilt_res[2] = filt3_res;\nfilt_lfo1[0] = filt1_lfo1;\nfilt_lfo1[1] = filt2_lfo1;\nfilt_lfo1[2] = filt3_lfo1;\nfilt_lfo2[0] = filt1_lfo2;\nfilt_lfo2[1] = filt2_lfo2;\nfilt_lfo2[2] = filt3_lfo2;\n\n// Setup distortions\ndrive[0] = drive1;\ndrive[1] = drive2;\ndrive[2] = drive3;\n\n// Setup delays\ndela_wet[0] = dela1_wet;\ndela_wet[1] = dela2_wet;\ndela_wet[2] = dela3_wet;\ndela_fb[0] = dela1_fb;\ndela_fb[1] = dela2_fb;\ndela_fb[2] = dela3_fb;\n\nfor (pos = 0; pos < sample_count; pos++) {\n\tcount++; // Count of number of samples processed\n\n\t// Calculate oscilator values for this sample\n\n\tif (osc1_d->wave == NOISE) {\n\t\tosc1 = rand() * (0.5f/(float)RAND_MAX) - 1.0f;\n\t} else {\n\t\tosc1 = blo_hd_run_lin(osc1_d);\n\t}\n\tif (osc2_d->wave == NOISE) {\n\t\tosc2 = rand() * (0.5f/(float)RAND_MAX) - 1.0f;\n\t} else {\n\t\tosc2 = blo_hd_run_lin(osc2_d);\n\t}\n\n\t// Calculate LFO values every 16 samples\n\tif ((count & 15) == 1) {\n\t\t// Calculate lfo values\n\t\tif (lfo1_d->wave == NOISE) {\n\t\t\tlfo1_phase += lfo1_freq;\n\t\t\tif (lfo1_phase >= sample_rate) {\n\t\t\t\tlfo1_phase -= sample_rate;\n\t\t\t\tlfo1 = rand() * (0.5f/(float)RAND_MAX) - 1.0f;\n\t\t\t}\n\t\t} else {\n\t\t\tlfo1 = blo_hd_run_lin(lfo1_d);\n\t\t}\n\t\tif (lfo2_d->wave == NOISE) {\n\t\t\tlfo2_phase += lfo1_freq;\n\t\t\tif (lfo2_phase >= sample_rate) {\n\t\t\t\tlfo2_phase -= sample_rate;\n\t\t\t\tlfo2 = rand() * (0.5f/(float)RAND_MAX) - 1.0f;\n\t\t\t}\n\t\t} else {\n\t\t\tlfo2 = blo_hd_run_lin(lfo2_d);\n\t\t}\n\t}\n\n\tin = input[pos];\n\trm1 = RINGMOD(osc2, osc1, rm1_depth);\n\trm2 = RINGMOD(in, osc2, rm2_depth);\n\trm3 = RINGMOD(osc1, in, rm3_depth);\n\n\tmixer1 = (osc1 * osc1_gain) + (osc2 * osc2_gain) + (in * in_gain) +\n\t         (rm1 * rm1_gain) + (rm2 * rm2_gain) + (rm3 * rm3_gain);\n\n\tmixer1 = soft_clip(mixer1);\n\n\t// Higpass off the top band\n\txover[0] = run_svf(xover_b1_data, mixer1);\n\t// Lowpass off the bottom band\n\txover[2] = run_svf(xover_b2_data, mixer1);\n\t// The middle band is whats left\n\txover[1] = mixer1 - xover[0] - xover[2];\n\n\tmixer2 = 0.0f;\n\tfor (i = 0; i < 3; i++) {\n\t\tdist[i] = xover[i]*(fabs(xover[i]) + drive1)/(xover[i]*xover[i] + (drive[i]-1)*fabs(xover[i]) + 1.0f);\n\n\t\tif (filt_t[i] == 0) {\n\t\t\tfilt[i] = dist[i];\n\t\t} else {\n\t\t\tif (count % 16 == 1) {\n\t\t\t\tsetup_f_svf(filt_data[i], sample_rate, filt_freq[i]+LFO(filt_lfo1[i], filt_lfo2[i]));\n\t\t\t}\n\t\t\tfilt[i] = run_svf(filt_data[i], dist[i] + (filt_res[i] * (filt_data[i])->b));\n\t\t}\n\n\t\tdela[i] = (dela_data[i][dela_pos[i]] * dela_wet[i]) + filt[i];\n\t\tdela_data[i][(dela_pos[i] + dela_offset[i]) %\n\t\t (2 * sample_rate)] = filt[i] + (dela[i] * dela_fb[i]);\n\t\tdela_pos[i] = (dela_pos[i] + 1) % (2 * sample_rate);\n\n\t\tmixer2 += band_gain[i] * dela[i];\n\t}\n\n\tbuffer_write(output[pos], soft_clip(mixer2));\n}\n\nplugin_data->count = count;\nplugin_data->lfo1 = lfo1;\nplugin_data->lfo2 = lfo2;\nplugin_data->lfo1_phase = lfo1_phase;\nplugin_data->lfo2_phase = lfo2_phase;\n\t\t]]></callback>\n\n\t\t<!-- LFO control -->\n\n\t\t<port label=\"lfo1_freq\" dir=\"input\" type=\"control\" hint=\"default_low\">\n\t\t\t<name>LFO1 freq (Hz)</name>\n\t\t\t<range min=\"0\" max=\"1000\"/>\n\t\t</port>\n\n\t\t<port label=\"lfo1_wave\" dir=\"input\" type=\"control\" hint=\"integer,default_0\">\n\t\t\t<name>LFO1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&amp;h)</name>\n\t\t\t<range min=\"0\" max=\"4\"/>\n\t\t</port>\n\n\t\t<port label=\"lfo2_freq\" dir=\"input\" type=\"control\" hint=\"default_low\">\n\t\t\t<name>LFO2 freq (Hz)</name>\n\t\t\t<range min=\"0\" max=\"1000\"/>\n\t\t</port>\n\n\t\t<port label=\"lfo2_wave\" dir=\"input\" type=\"control\" hint=\"integer,default_0\">\n\t\t\t<name>LFO2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&amp;h)</name>\n\t\t\t<range min=\"0\" max=\"4\"/>\n\t\t</port>\n\n\t\t<!-- osc control -->\n\n\t\t<port label=\"osc1_freq\" dir=\"input\" type=\"control\" hint=\"default_440\">\n\t\t\t<name>Osc1 freq (Hz)</name>\n\t\t\t<range min=\"0\" max=\"4000\"/>\n\t\t</port>\n\n\t\t<port label=\"osc1_wave\" dir=\"input\" type=\"control\" hint=\"integer,default_0\">\n\t\t\t<name>Osc1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise)</name>\n\t\t\t<range min=\"0\" max=\"4\"/>\n\t\t</port>\n\n\t\t<port label=\"osc2_freq\" dir=\"input\" type=\"control\" hint=\"default_440\">\n\t\t\t<name>Osc2 freq (Hz)</name>\n\t\t\t<range min=\"0\" max=\"4000\"/>\n\t\t</port>\n\n\t\t<port label=\"osc2_wave\" dir=\"input\" type=\"control\" hint=\"integer,default_0\">\n\t\t\t<name>Osc2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise)</name>\n\t\t\t<range min=\"0\" max=\"4\"/>\n\t\t</port>\n\n\t\t<!-- ringmod control -->\n\n                <port label=\"rm1_depth\" dir=\"input\" type=\"control\" hint=\"default_0\">\n                        <name>Ringmod 1 depth (0=none, 1=AM, 2=RM)</name>\n                        <range min=\"0\" max=\"2\"/>\n                </port>\n\n                <port label=\"rm2_depth\" dir=\"input\" type=\"control\" hint=\"default_0\">\n                        <name>Ringmod 2 depth (0=none, 1=AM, 2=RM)</name>\n                        <range min=\"0\" max=\"2\"/>\n                </port>\n\n                <port label=\"rm3_depth\" dir=\"input\" type=\"control\" hint=\"default_0\">\n                        <name>Ringmod 3 depth (0=none, 1=AM, 2=RM)</name>\n                        <range min=\"0\" max=\"2\"/>\n                </port>\n\n\t\t<!-- mixer1 control -->\n\n\t\t<port label=\"osc1_gain_db\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n\t\t\t<name>Osc1 gain (dB)</name>\n\t\t\t<range min=\"-70\" max=\"+20\"/>\n\t\t</port>\n\n\t\t<port label=\"rm1_gain_db\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n\t\t\t<name>RM1 gain (dB)</name>\n\t\t\t<range min=\"-70\" max=\"+20\"/>\n\t\t</port>\n\n\t\t<port label=\"osc2_gain_db\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n\t\t\t<name>Osc2 gain (dB)</name>\n\t\t\t<range min=\"-70\" max=\"+20\"/>\n\t\t</port>\n\n\t\t<port label=\"rm2_gain_db\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n\t\t\t<name>RM2 gain (dB)</name>\n\t\t\t<range min=\"-70\" max=\"+20\"/>\n\t\t</port>\n\n\t\t<port label=\"in_gain_db\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Input gain (dB)</name>\n\t\t\t<range min=\"-70\" max=\"+20\"/>\n\t\t</port>\n\n\t\t<port label=\"rm3_gain_db\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n\t\t\t<name>RM3 gain (dB)</name>\n\t\t\t<range min=\"-70\" max=\"+20\"/>\n\t\t</port>\n\n\t\t<!-- xover control -->\n\n\t\t<port label=\"xover_lfreqp\" dir=\"input\" type=\"control\" hint=\"default_low\">\n\t\t\t<name>Xover lower freq</name>\n\t\t\t<range min=\"50\" max=\"6000\"/>\n\t\t</port>\n\n\t\t<port label=\"xover_ufreqp\" dir=\"input\" type=\"control\" hint=\"default_high\">\n\t\t\t<name>Xover upper freq</name>\n\t\t\t<range min=\"1000\" max=\"10000\"/>\n\t\t</port>\n\n\t\t<!-- distortion control -->\n\n\t\t<port label=\"drive1\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Dist1 drive</name>\n\t\t\t<range min=\"0\" max=\"3\"/>\n\t\t</port>\n\n\t\t<port label=\"drive2\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Dist2 drive</name>\n\t\t\t<range min=\"0\" max=\"3\"/>\n\t\t</port>\n\n\t\t<port label=\"drive3\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Dist3 drive</name>\n\t\t\t<range min=\"0\" max=\"3\"/>\n\t\t</port>\n\n\t\t<!-- filter control -->\n\n\t\t<port label=\"filt1_type\" dir=\"input\" type=\"control\" hint=\"integer,default_0\">\n\t\t\t<name>Filt1 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)</name>\n\t\t\t<range min=\"0\" max=\"5\"/>\n\t\t</port>\n\n\t\t<port label=\"filt1_freq\" dir=\"input\" type=\"control\" hint=\"default_440\">\n\t\t\t<name>Filt1 freq</name>\n\t\t\t<range min=\"0\" max=\"8000\"/>\n\t\t</port>\n\n\t\t<port label=\"filt1_q\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Filt1 q</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t</port>\n\n\t\t<port label=\"filt1_res\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Filt1 resonance</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t</port>\n\n\t\t<port label=\"filt1_lfo1\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Filt1 LFO1 level</name>\n\t\t\t<range min=\"-500\" max=\"500\"/>\n\t\t</port>\n\n\t\t<port label=\"filt1_lfo2\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Filt1 LFO2 level</name>\n\t\t\t<range min=\"-500\" max=\"500\"/>\n\t\t</port>\n\n\t\t<port label=\"filt2_type\" dir=\"input\" type=\"control\" hint=\"integer,default_0\">\n\t\t\t<name>Filt2 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)</name>\n\t\t\t<range min=\"0\" max=\"5\"/>\n\t\t</port>\n\n\t\t<port label=\"filt2_freq\" dir=\"input\" type=\"control\" hint=\"default_440\">\n\t\t\t<name>Filt2 freq</name>\n\t\t\t<range min=\"0\" max=\"8000\"/>\n\t\t</port>\n\n\t\t<port label=\"filt2_q\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Filt2 q</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t</port>\n\n\t\t<port label=\"filt2_res\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Filt2 resonance</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t</port>\n\n\t\t<port label=\"filt2_lfo1\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Filt2 LFO1 level</name>\n\t\t\t<range min=\"-500\" max=\"500\"/>\n\t\t</port>\n\n\t\t<port label=\"filt2_lfo2\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Filt2 LFO2 level</name>\n\t\t\t<range min=\"-500\" max=\"500\"/>\n\t\t</port>\n\n\t\t<port label=\"filt3_type\" dir=\"input\" type=\"control\" hint=\"integer,default_0\">\n\t\t\t<name>Filt3 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)</name>\n\t\t\t<range min=\"0\" max=\"5\"/>\n\t\t</port>\n\n\t\t<port label=\"filt3_freq\" dir=\"input\" type=\"control\" hint=\"default_440\">\n\t\t\t<name>Filt3 freq</name>\n\t\t\t<range min=\"0\" max=\"8000\"/>\n\t\t</port>\n\n\t\t<port label=\"filt3_q\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Filt3 q</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t</port>\n\n\t\t<port label=\"filt3_res\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Filt3 resonance</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t</port>\n\n\t\t<port label=\"filt3_lfo1\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Filt3 LFO1 level</name>\n\t\t\t<range min=\"-500\" max=\"500\"/>\n\t\t</port>\n\n\t\t<port label=\"filt3_lfo2\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Filt3 LFO2 level</name>\n\t\t\t<range min=\"-500\" max=\"500\"/>\n\t\t</port>\n\n\t\t<!-- delay control -->\n\n\t\t<port label=\"dela1_length\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Delay1 length (s)</name>\n\t\t\t<range min=\"0\" max=\"2\"/>\n\t\t</port>\n\n\t\t<port label=\"dela1_fb\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Delay1 feedback</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t</port>\n\n\t\t<port label=\"dela1_wet\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Delay1 wetness</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t</port>\n\n\t\t<port label=\"dela2_length\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Delay2 length (s)</name>\n\t\t\t<range min=\"0\" max=\"2\"/>\n\t\t</port>\n\n\t\t<port label=\"dela2_fb\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Delay2 feedback</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t</port>\n\n\t\t<port label=\"dela2_wet\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Delay2 wetness</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t</port>\n\n\t\t<port label=\"dela3_length\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Delay3 length (s)</name>\n\t\t\t<range min=\"0\" max=\"2\"/>\n\t\t</port>\n\n\t\t<port label=\"dela3_fb\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Delay3 feedback</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t</port>\n\n\t\t<port label=\"dela3_wet\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Delay3 wetness</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t</port>\n\n\t\t<!-- mixer2 -->\n\n\t\t<port label=\"band1_gain_db\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Band 1 gain (dB)</name>\n\t\t\t<range min=\"-70\" max=\"+20\"/>\n\t\t</port>\n\n\t\t<port label=\"band2_gain_db\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Band 2 gain (dB)</name>\n\t\t\t<range min=\"-70\" max=\"+20\"/>\n\t\t</port>\n\n\t\t<port label=\"band3_gain_db\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Band 3 gain (dB)</name>\n\t\t\t<range min=\"-70\" max=\"+20\"/>\n\t\t</port>\n\n\t\t<!-- audio i/o -->\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\n\t\t<instance-data label=\"tables\" type=\"blo_h_tables *\"/>\n\t\t<instance-data label=\"osc1_d\" type=\"blo_h_osc *\"/>\n\t\t<instance-data label=\"osc2_d\" type=\"blo_h_osc *\"/>\n\t\t<instance-data label=\"lfo1_d\" type=\"blo_h_osc *\"/>\n\t\t<instance-data label=\"lfo2_d\" type=\"blo_h_osc *\"/>\n\t\t<instance-data label=\"lfo1\" type=\"float\"/>\n\t\t<instance-data label=\"lfo2\" type=\"float\"/>\n\t\t<instance-data label=\"lfo1_phase\" type=\"float\"/>\n\t\t<instance-data label=\"lfo2_phase\" type=\"float\"/>\n\t\t<instance-data label=\"filt_data\" type=\"sv_filter **\"/>\n\t\t<instance-data label=\"xover_b1_data\" type=\"sv_filter *\"/>\n\t\t<instance-data label=\"xover_b2_data\" type=\"sv_filter *\"/>\n\t\t<instance-data label=\"dela_data\" type=\"float **\"/>\n\t\t<instance-data label=\"dela_pos\" type=\"int *\"/>\n\t\t<instance-data label=\"count\" type=\"long\"/>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "highpass_iir_1890.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Alexander Ehlert &lt;mag@glame.de&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code>\n\t\t\t#include \"config.h\"\n\t\t\t#include \"util/iir.h\"\n                        \n\t\t</code>\n\t</global>\n\n\t<plugin label=\"highpass_iir\" id=\"1890\" class=\"HighpassPlugin\">\n\t\t<name>Glame Highpass Filter</name>\n                <p> IIR highpass filter based using chebishev coefficients. The filter allows you to tweak the number of stages used for\n                filtering. Every stage adds two more poles, which leads to a steeper dropoff. More stages need more CPU power. This\n                filter was ported from the glame multitrack editor to ladspa.\n                </p>\n\n                <callback event=\"instantiate\">\n                  sample_rate = s_rate;\n                </callback>\n\t\t<callback event=\"run\">\n                  chebyshev(iirf, gt, 2*CLAMP((int)stages,1,10), IIR_STAGE_HIGHPASS, cutoff/(float)sample_rate, 0.5f);\n                  iir_process_buffer_ns_5(iirf, gt, input, output, sample_count,RUN_ADDING);\n\n                  // Unused variable\n                  (void)(run_adding_gain);\n                </callback>\n\n                <callback event=\"activate\">                  \n                  gt = init_iir_stage(IIR_STAGE_HIGHPASS,10,3,2);\n                  iirf = init_iirf_t(gt);\n                  chebyshev(iirf, gt, 2*CLAMP((int)(*(plugin_data->stages)),1,10), IIR_STAGE_HIGHPASS, *(plugin_data->cutoff)/(float)sample_rate, 0.5f);\n                </callback>\n\n                <callback event=\"cleanup\">\n                  free_iirf_t(plugin_data->iirf, plugin_data->gt);\n                  free_iir_stage(plugin_data->gt);\n                </callback>\n\n                <port label=\"cutoff\" dir=\"input\" type=\"control\" hint=\"default_low, sample_rate, logarithmic\">\n\t\t\t<name>Cutoff Frequency</name>\n \t\t\t<range min=\"0.0001\" max=\"0.45\"/>\n\t\t</port>\n                \n                <port label=\"stages\" dir=\"input\" type=\"control\" hint=\"default_1, integer\">\n\t\t\t<name>Stages(2 poles per stage)</name>\n\t\t\t<range min=\"1.0\" max=\"10.0\"/>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n            \n                <instance-data label=\"iirf\" type=\"iirf_t*\"/>\n                <instance-data label=\"gt\" type=\"iir_stage_t*\"/>  \n                <instance-data label=\"sample_rate\" type=\"long\"/>           \n\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "hilbert_1440.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n#include \"ladspa-util.h\"\n\n#define D_SIZE 256\n#define NZEROS 200\n\n/* The non-zero taps of the Hilbert transformer */\nstatic float xcoeffs[] = {\n     +0.0008103736f, +0.0008457886f, +0.0009017196f, +0.0009793364f,\n     +0.0010798341f, +0.0012044365f, +0.0013544008f, +0.0015310235f,\n     +0.0017356466f, +0.0019696659f, +0.0022345404f, +0.0025318040f,\n     +0.0028630784f, +0.0032300896f, +0.0036346867f, +0.0040788644f,\n     +0.0045647903f, +0.0050948365f, +0.0056716186f, +0.0062980419f,\n     +0.0069773575f, +0.0077132300f, +0.0085098208f, +0.0093718901f,\n     +0.0103049226f, +0.0113152847f, +0.0124104218f, +0.0135991079f,\n     +0.0148917649f, +0.0163008758f, +0.0178415242f, +0.0195321089f,\n     +0.0213953037f, +0.0234593652f, +0.0257599469f, +0.0283426636f,\n     +0.0312667947f, +0.0346107648f, +0.0384804823f, +0.0430224431f,\n     +0.0484451086f, +0.0550553725f, +0.0633242001f, +0.0740128560f,\n     +0.0884368322f, +0.1090816773f, +0.1412745301f, +0.1988673273f,\n     +0.3326528346f, +0.9997730178f, -0.9997730178f, -0.3326528346f,\n     -0.1988673273f, -0.1412745301f, -0.1090816773f, -0.0884368322f,\n     -0.0740128560f, -0.0633242001f, -0.0550553725f, -0.0484451086f,\n     -0.0430224431f, -0.0384804823f, -0.0346107648f, -0.0312667947f,\n     -0.0283426636f, -0.0257599469f, -0.0234593652f, -0.0213953037f,\n     -0.0195321089f, -0.0178415242f, -0.0163008758f, -0.0148917649f,\n     -0.0135991079f, -0.0124104218f, -0.0113152847f, -0.0103049226f,\n     -0.0093718901f, -0.0085098208f, -0.0077132300f, -0.0069773575f,\n     -0.0062980419f, -0.0056716186f, -0.0050948365f, -0.0045647903f,\n     -0.0040788644f, -0.0036346867f, -0.0032300896f, -0.0028630784f,\n     -0.0025318040f, -0.0022345404f, -0.0019696659f, -0.0017356466f,\n     -0.0015310235f, -0.0013544008f, -0.0012044365f, -0.0010798341f,\n     -0.0009793364f, -0.0009017196f, -0.0008457886f, -0.0008103736f,\n};\n    </code>\n  </global>\n\n  <plugin label=\"hilbert\" id=\"1440\" class=\"UtilityPlugin\">\n    <name>Hilbert transformer</name>\n    <p>A Hilbert Transformer phase shifts the input signal by 90degrees. It outputs the 90 degree phase shifted signal and the unshifted signal, both delayed by an equivalent amount</p>\n    <p>This plugin was written for a demo at the LAD Meet in 2003.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      delay = calloc(D_SIZE, sizeof(LADSPA_Data));\n\n      dptr = 0;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->delay);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      unsigned int i;\n      float hilb;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tdelay[dptr] = input[pos];\n\thilb = 0.0f;\n\tfor (i = 0; i < NZEROS/2; i++) {\n\t  hilb += (xcoeffs[i] * delay[(dptr - i*2) & (D_SIZE - 1)]);\n\t}\n        buffer_write(output0[pos], delay[(dptr - 99) & (D_SIZE - 1)]);\n        buffer_write(output90[pos], hilb);\n\tdptr = (dptr + 1) & (D_SIZE - 1);\n      }\n\n      plugin_data->dptr = dptr;\n\n      *(plugin_data->latency) = 99;\n    ]]></callback>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output0\" dir=\"output\" type=\"audio\">\n      <name>0deg output</name>\n    </port>\n\n    <port label=\"output90\" dir=\"output\" type=\"audio\">\n      <name>90deg output</name>\n    </port>\n\n    <port label=\"latency\" dir=\"output\" type=\"control\">\n      <name>latency</name>\n    </port>\n\n    <instance-data label=\"delay\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"dptr\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "imp_1199.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <code><![CDATA[\n      #include <string.h>\n\n      #include \"config.h\"\n\n      #ifdef FFTW3\n\n      #include <fftw3.h>\n\n      typedef fftwf_plan fft_plan;\n      typedef float fftw_real;\n      #define local_malloc(s) fftwf_malloc(s)\n      #define local_free(s) fftwf_free(s)\n\n      #else\n\n      #ifdef EXPLICIT_S\n      #include <srfftw.h>\n      #else\n      #include <rfftw.h>\n      #endif //EXPLICIT_S\n\n      typedef rfftw_plan fft_plan;\n      #define local_malloc(s) malloc(s)\n      #define local_free(s) free(s)\n\n      #endif //FFTW3\n\n      #include \"ladspa-util.h\"\n\n      #define MAX_FFT_LENGTH 16384\n      #define SEG_LENGTH     128\n\n      #define IMP_LENGTH(a) (sizeof(a) / sizeof(float))\n\n      #define MK_IMP(i) impulse2freq(c, i, IMP_LENGTH(i), impulse_freq[c]); c++\n\n      static inline void impulse2freq(int id, float *imp, unsigned int length, fftw_real *out);\n\n      #include \"impulses/all.h\"\n\n      static fft_plan *g_plan_rc, *g_plan_cr;\n      static fftw_real *real_in, *real_out, *comp_in, *comp_out;\n\n      unsigned int fft_length[IMPULSES];\n\n#ifdef __clang__\n      static void impulse2freq(int id, float *imp, unsigned int length, fftw_real *out)\n#else\n      static inline void impulse2freq(int id, float *imp, unsigned int length, fftw_real *out)\n#endif\n      {\n        fftw_real impulse_time[MAX_FFT_LENGTH];\n#ifdef FFTW3\n\tfft_plan tmp_plan;\n#endif\n        unsigned int i, fftl = 128;\n\n\twhile (fftl < length+SEG_LENGTH) {\n\t\tfftl *= 2;\n\t}\n\n\tfft_length[id] = fftl;\n#ifdef FFTW3\n\tg_plan_rc[id] = fftwf_plan_r2r_1d(fftl, real_in, comp_out, FFTW_R2HC, FFTW_MEASURE);\n\tg_plan_cr[id] = fftwf_plan_r2r_1d(fftl, comp_in, real_out, FFTW_HC2R, FFTW_MEASURE);\n\ttmp_plan = fftwf_plan_r2r_1d(fftl, impulse_time, out, FFTW_R2HC, FFTW_MEASURE);\n#else\n        g_plan_rc[id] = rfftw_create_plan(fftl, FFTW_REAL_TO_COMPLEX, FFTW_ESTIMATE);\n        g_plan_cr[id] = rfftw_create_plan(fftl, FFTW_COMPLEX_TO_REAL, FFTW_ESTIMATE);\n#endif\n\n        for (i=0; i<length; i++) {\n          impulse_time[i] = imp[i];\n        }\n        for (; i<fftl; i++) {\n          impulse_time[i] = 0.0f;\n        }\n#ifdef FFTW3\n\tfftwf_execute(tmp_plan);\n\tfftwf_destroy_plan(tmp_plan);\n#else\n        rfftw_one(g_plan_rc[id], impulse_time, out);\n#endif\n      }\n        \n    ]]></code>\n  </global>\n\n  <plugin label=\"imp\" id=\"1199\" class=\"SpectralPlugin\">\n    <name>Impulse convolver</name>\n    <p><![CDATA[\n    This is a convolver for a set of fairly short impulses.\n\n    The set of impulses has to be compiled in, they are:\n\n    \\begin{tabular}{|r|l|}\n    \\hline\n    Id & Impulse \\\\\n    \\hline \\hline\n    1 & Unit impulse (identity) \\\\\n    2 & My flat (light natural reverb) \\\\\n    3 & Yamaha Marshall stack simulator \\\\\n    4 & Fender 68 Vibrolux (SM57 on axis) \\\\\n    5 & Fender 68 Vibrolux (SM57 off axis) \\\\\n    6 & Fender 68 Vibrolux (Audio-technica AT4050) \\\\\n    7 & Fender 68 Vibrolux (Neumann U87) \\\\\n    8 & Fender Bassman (SM57 on axis) \\\\\n    9 & Fender Bassman (SM57 off axis) \\\\\n    10 & Fender Bassman (Audio-technica AT4050) \\\\\n    11 & Fender Bassman (Neumann U87) \\\\\n    12 & Fender Superchamp (SM57 on axis) \\\\\n    13 & Fender Superchamp (SM57 off axis) \\\\\n    14 & Fender Superchamp (Audio-technica AT4050) \\\\\n    15 & Fender Superchamp (Neumann U87) \\\\\n    16 & Marshall JCM2000 (SM57 on axis) \\\\\n    17 & Marshall JCM2000 (SM57 off axis) \\\\\n    18 & Marshall Plexi (SM57 on axis) \\\\\n    19 & Marshall Plexi (SM57 off axis) \\\\\n    20 & Matchless Chieftan (SM57 on axis) \\\\\n    21 & Matchless Chieftan (SM57 off axis) \\\\\n    \\hline\n    \\end{tabular}\n\n    The first three were quickly grabbed by me using jack_impulse_grabber, and the others we collected by someone else, but unfortunately I've lost his email address and can't find him on the web :(\n    ]]></p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      unsigned int i;\n\n      impulse_freq = local_malloc(IMPULSES * sizeof(fftw_real *));\n      for (i=0; i<IMPULSES; i++) {\n        impulse_freq[i] = local_malloc(MAX_FFT_LENGTH * sizeof(fftw_real));\n      }\n\n      block_time = local_malloc(MAX_FFT_LENGTH * sizeof(fftw_real));\n      block_freq = local_malloc(MAX_FFT_LENGTH * sizeof(fftw_real));\n      op = local_malloc(MAX_FFT_LENGTH * sizeof(fftw_real));\n      overlap = local_malloc(MAX_FFT_LENGTH * sizeof(float));\n      opc = local_malloc(SEG_LENGTH * sizeof(LADSPA_Data));\n      plan_rc = local_malloc(IMPULSES * sizeof(fft_plan));\n      plan_cr = local_malloc(IMPULSES * sizeof(fft_plan));\n\n      /* transform the impulses */\n      g_plan_rc = plan_rc;\n      g_plan_cr = plan_cr;\n      real_in = block_time;\n      comp_out = block_freq;\n      comp_in = block_freq;\n      real_out = op;\n      mk_imps(impulse_freq);\n\n      in_ptr = 0;\n      out_ptr = 0;\n      count = 0;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      memset(block_time, 0, MAX_FFT_LENGTH * sizeof(fftw_real));\n      memset(block_freq, 0, MAX_FFT_LENGTH * sizeof(fftw_real));\n      memset(op, 0, MAX_FFT_LENGTH * sizeof(fftw_real));\n      memset(overlap, 0, (MAX_FFT_LENGTH - SEG_LENGTH) * sizeof(float));\n      memset(opc, 0, SEG_LENGTH * sizeof(LADSPA_Data));\n\n      in_ptr = 0;\n      out_ptr = 0;\n      count = 0;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      local_free(plugin_data->block_time);\n      local_free(plugin_data->block_freq);\n      local_free(plugin_data->op);\n      local_free(plugin_data->overlap);\n      local_free(plugin_data->opc);\n      unsigned int i;\n      for (i=0; i<IMPULSES; i++) {\n        local_free(plugin_data->impulse_freq[i]);\n      }\n      local_free(plugin_data->plan_cr);\n      local_free(plugin_data->plan_rc);\n      local_free(plugin_data->impulse_freq);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long i, pos, ipos, limit;\n      unsigned int im;\n      unsigned int len;\n      fftw_real tmp;\n      fftw_real *imp_freq;\n      float coef;\n\n      im = f_round(impulse) - 1;\n      if (im >= IMPULSES) {\n        im = 0;\n      }\n\n      coef = pow(10.0f, gain * 0.05f) / (float)fft_length[im];\n\n      imp_freq = impulse_freq[im];\n\n      for (pos = 0; pos < sample_count; pos += SEG_LENGTH) {\n        limit = pos + SEG_LENGTH;\n\n        for (ipos = pos; ipos < sample_count && ipos<limit; ipos++) {\n          block_time[in_ptr++] = input[ipos];\n\n          if (in_ptr == SEG_LENGTH) {\n#ifdef FFTW3\n\t    fftwf_execute(plan_rc[im]);\n#else\n            rfftw_one(plan_rc[im], block_time, block_freq);\n#endif\n \n            len = fft_length[im];\n            for (i=1; i<fft_length[im]/2; i++) {\n\t      len--;\n              tmp = block_freq[i] * imp_freq[i] -\n               block_freq[len] * imp_freq[len];\n              block_freq[len] =\n               block_freq[i] * imp_freq[len] +\n               block_freq[len] * imp_freq[i];\n              block_freq[i] = tmp;\n            }\n\n            block_freq[0] = imp_freq[0] * block_freq[0];\n            block_freq[fft_length[im]/2] = imp_freq[fft_length[im]/2] * block_freq[fft_length[im]/2];\n\n#ifdef FFTW3\n\t    fftwf_execute(plan_cr[im]);\n#else\n            rfftw_one(plan_cr[im], block_freq, op);\n#endif\n\n            for (i=0; i<fft_length[im]-SEG_LENGTH; i++) {\n              op[i] += overlap[i];\n            }\n            for (i=SEG_LENGTH; i<fft_length[im]; i++) {\n              overlap[i-SEG_LENGTH] = op[i];\n            }\n\n            in_ptr = 0;\n\t    if (count == 0 && high_lat < 1.0f) {\n\t      count = 1;\n\t      plugin_data->count = 1;\n\t      out_ptr = 0;\n\t    }\n          }\n        }\n\n        for (ipos = pos; ipos < sample_count && ipos<limit; ipos++) {\n          buffer_write(output[ipos], opc[out_ptr++] * coef);\n          if (out_ptr == SEG_LENGTH) {\n            for (i=0; i<SEG_LENGTH; i++) {\n              opc[i] = op[i];\n            }\n            out_ptr = 0;\n          }\n        }\n      }\n\n      plugin_data->in_ptr = in_ptr;\n      plugin_data->out_ptr = out_ptr;\n\n      *(plugin_data->latency) = SEG_LENGTH;\n    ]]></callback>\n\n    <port label=\"impulse\" dir=\"input\" type=\"control\" hint=\"integer,default_1\">\n      <name>Impulse ID</name>\n      <p>Selects the impulse to convolve with. New impulses have to be compiled in.</p>\n      <range min=\"1\" max=\"IMPULSES\"/>\n    </port>\n\n    <port label=\"high_lat\" dir=\"input\" type=\"control\" hint=\"integer,default_0\">\n      <name>High latency mode</name>\n      <p>If you are running with blocks that are not whole powers of two long, or you are hearing distortion, try changing this to 1.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"gain\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Gain (dB)</name>\n      <p>Controls the gain of the output signal in dB's.</p>\n      <range min=\"-90\" max=\"+24\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"latency\" dir=\"output\" type=\"control\">\n      <name>latency</name>\n    </port>\n\n    <instance-data label=\"impulse_freq\" type=\"fftw_real **\" />\n    <instance-data label=\"block_time\" type=\"fftw_real *\" />\n    <instance-data label=\"block_freq\" type=\"fftw_real *\" />\n    <instance-data label=\"op\" type=\"fftw_real *\" />\n    <instance-data label=\"opc\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"overlap\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"in_ptr\" type=\"unsigned long\" />\n    <instance-data label=\"out_ptr\" type=\"unsigned long\" />\n    <instance-data label=\"count\" type=\"unsigned int\" />\n    <instance-data label=\"plan_rc\" type=\"fft_plan *\" />\n    <instance-data label=\"plan_cr\" type=\"fft_plan *\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "impulse_1885.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Andy Wingo &lt;wingo at pobox dot com&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"ladspa-util.h\"\n\n      #define LOG001 -6.9077552789f\n    ]]></code>\n  </global>\n\n  <!-- ******   IMPULSE-FC   ****** -->\n\n  <plugin label=\"impulse_fc\" id=\"1885\" class=\"UtilityPlugin\">\n    <name>Nonbandlimited single-sample impulses (Frequency: Control)</name>\n    <p>Based on work by James McCartney in SuperCollider.</p>\n    \n    <callback event=\"instantiate\"><![CDATA[\n      sample_rate = s_rate;\n      phase = 0.f;\n    ]]></callback>\n    \n    <callback event=\"activate\"><![CDATA[\n      phase = 0.f;\n    ]]></callback>\n    \n    <callback event=\"run\"><![CDATA[\n      int i;\n      float phase_step = frequency / sample_rate;\n\n      for (i=0; i<sample_count; i++) {\n        if (phase > 1.f) {\n          phase -= 1.f;\n          buffer_write(out[i], 1.f);\n        } else {\n          buffer_write(out[i], 0.f);\n        }\n        phase += phase_step;\n      }\n\n      plugin_data->phase = phase;\n    ]]></callback>\n\n    <port label=\"frequency\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Frequency (Hz)</name>\n      <range min=\"0\"/>\n      <p>\n       Frequency for the impulses.\n      </p>\n    </port>\n\n    <port label=\"out\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"sample_rate\" type=\"LADSPA_Data\" />\n    <instance-data label=\"phase\" type=\"float\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "impulses/01-unit.h",
    "content": "float unit[] = { 1.0f };\n"
  },
  {
    "path": "impulses/02-steves-flat.h",
    "content": "float steves_flat[] = {\n    -0.0000747256300, +0.0004581413362, -0.0004988051100, +0.0080212860617, \n    +0.0409775662455, +0.0272593302189, -0.0347729749807, +0.0206228755550, \n    +0.0830415514680, +0.0981127192346, +0.1165879969154, +0.0534580725429, \n    -0.0129770915478, -0.0194366926723, +0.0335325785381, +0.0388072508561, \n    -0.0213017054305, -0.0292409720411, +0.0075425029238, +0.0147545640387, \n    -0.0226343413216, -0.0257136599758, -0.0429779903773, -0.0507456071427, \n    -0.0301750856554, -0.0044625067799, +0.0074273297400, -0.0128299178065, \n    -0.0208570418077, -0.0048472053918, +0.0133211840459, -0.0247062189553, \n    -0.0180474936312, +0.0028139734788, +0.0078072570979, +0.0109728907727, \n    +0.0216466772225, +0.0407098426493, +0.0143495984063, -0.0056788739734, \n    -0.0043740007291, -0.0220882416929, -0.0512888670834, -0.0431623827872, \n    -0.0180879555998, -0.0222443669420, -0.0285499617727, -0.0158642771161, \n    -0.0133201606034, -0.0127702266735, -0.0090371884921, -0.0166105820447, \n    -0.0185939680423, -0.0080760329637, +0.0117406879686, +0.0131132236554, \n    -0.0026151664027, -0.0020506304148, +0.0098572965115, +0.0150237291004, \n    +0.0066948773059, -0.0022852435224, -0.0017129380290, +0.0013233096022, \n    -0.0018295526796, -0.0109795215200, -0.0199344166820, -0.0208222303881, \n    -0.0166376527884, -0.0175138915175, -0.0247779607485, -0.0277080299492, \n    -0.0245018478174, -0.0221699872648, -0.0199550440689, -0.0164751994994, \n    -0.0121488969008, -0.0113359097267, -0.0116449457557, -0.0095046272878, \n    -0.0111194014401, -0.0032949332310, +0.0129679526493, +0.0263678263579, \n    +0.0308535119214, +0.0248421204281, +0.0204144394813, +0.0190867045768, \n    +0.0219311074160, +0.0156608429323, +0.0037536223253, -0.0030656247219, \n    -0.0042825540871, -0.0021690468972, -0.0038422869371, -0.0138509230290, \n    -0.0235538240496, -0.0229926610943, -0.0196150165079, -0.0135943131403, \n    -0.0107564689746, -0.0127025354015, -0.0145724203168, -0.0171933814148, \n    -0.0138159530484, -0.0098164597618, -0.0087455221354, -0.0064264473918, \n    -0.0074598348126, -0.0121645223990, -0.0126989461487, -0.0097513631294, \n    -0.0067988070496, -0.0041353226856, -0.0043423317074, -0.0043674564704, \n    -0.0042041094728, -0.0019608702878, +0.0039238018742, +0.0101425627557, \n    +0.0102753362455, -0.0001845221427, -0.0073682584377, -0.0037386166578, \n    -0.0014888908730, -0.0020602161681, -0.0015174030822, +0.0007402363543, \n    +0.0053005178150, +0.0095026236493, +0.0096782375272, +0.0012873738392, \n    -0.0065135408053, -0.0044955596094, -0.0018158443313, -0.0040755883096, \n    -0.0083392303543, -0.0100848320169, -0.0083145812745, -0.0083637785308, \n    -0.0106060663470, -0.0145516776119, -0.0176741826058, -0.0173162520290, \n    -0.0160623778742, -0.0133682911741, -0.0081434215284, -0.0041882245115, \n    -0.0008310055067, +0.0048951197424, +0.0074982066542, +0.0052300877557, \n    +0.0007194071608, -0.0022146981451, -0.0038053565623, -0.0023047321511, \n    +0.0034375951826, +0.0083622505756, +0.0096198581294, +0.0133878518767, \n    +0.0194724842890, +0.0199918879565, +0.0158011264643, +0.0082251094414, \n    +0.0032514297690, +0.0029124112346, +0.0047323781608, +0.0047874710145, \n    +0.0029745240314, +0.0026771350520, +0.0030138472406, +0.0034298400919, \n    +0.0052113486892, +0.0017789716155, -0.0037898607956, -0.0057119988767, \n    -0.0046561534051, -0.0026514913615, +0.0001813941596, +0.0039354200955, \n    +0.0059624969456, +0.0080446810641, +0.0094737078283, +0.0084286012842, \n    +0.0058381560351, +0.0058541130701, +0.0100478007400, +0.0152600575526, \n    +0.0183627856252, +0.0187877732285, +0.0182146316856, +0.0176063327727, \n    +0.0157871009940, +0.0123767495296, +0.0075541788029, +0.0102779164716, \n    +0.0156277036143, +0.0113348574559, +0.0059646591451, +0.0026247377412, \n    +0.0011803881862, +0.0007245676119, -0.0023045880036, -0.0055248676796, \n    -0.0073599555901, -0.0046368665816, -0.0018872113446, +0.0023064763253, \n    +0.0029218095961, +0.0000173408440, -0.0015071398404, +0.0007385642527, \n    +0.0051101721475, +0.0005332994063, -0.0027207250036, +0.0007673215115, \n    +0.0019155073337, +0.0005625467630, +0.0038801975091, +0.0080619786638, \n    +0.0101137622527, +0.0115505873507, +0.0122711332709, +0.0097186562515, \n    +0.0040092952600, +0.0020222767666, +0.0011850873676, -0.0003067729262, \n    +0.0031021370713, +0.0066621848428, +0.0034938556252, +0.0013637715695, \n    +0.0059936326252, +0.0090966634051, +0.0103580331862, +0.0138644439855, \n    +0.0122683368259, +0.0051846238984, +0.0018034765478, +0.0035777345683, \n    +0.0070538745683, +0.0106506364958, +0.0122065988102, +0.0037282525127, \n    -0.0097867799637, -0.0191162978863, -0.0160759997340, -0.0059400965538, \n    +0.0007624637690, +0.0021018313096, -0.0012120572080, -0.0009874334643, \n    +0.0035154632092, +0.0026084779976, -0.0023815911511, -0.0018048459407, \n    +0.0015878619710, +0.0115002657509, +0.0151442933688, +0.0055393400048, \n    -0.0045969235417, -0.0052492592612, +0.0039214666977, +0.0093624266058, \n    +0.0107736656711, +0.0118124874208, +0.0079349854547, +0.0072958103253, \n    +0.0103136648428, +0.0080157508295, +0.0028874306179, -0.0016525261632, \n    -0.0005321318174, -0.0001136019843, -0.0043761485139, -0.0086800795514, \n    -0.0102800930859, -0.0076825846493, -0.0080295744946, -0.0099791869287, \n    -0.0068291066784, +0.0014600182963, +0.0084357221294, +0.0083239508077, \n    +0.0105090556433, +0.0209676743712, +0.0155793135804, -0.0057499238634, \n    -0.0117800400073, -0.0010136537424, +0.0205021238960, +0.0214418880593, \n    +0.0047571281427, -0.0013221275998, -0.0028140167231, +0.0035838463857, \n    +0.0027972812950, -0.0005072953482, -0.0061055625079, -0.0190592302237, \n    -0.0219839515828, -0.0133021999299, -0.0048697787582, -0.0140393515453, \n    -0.0313880365732, -0.0322599220738, -0.0222278621487, -0.0185733694837, \n    -0.0202459320339, -0.0219478572588, -0.0174627050375, -0.0110820962842, \n    -0.0042020625901, +0.0016826095719, -0.0021050025357, -0.0088914418017, \n    -0.0064301231318, +0.0049224643640, +0.0134595071826, +0.0118207758549, \n    +0.0002952411935, -0.0065936863495, -0.0085117450798, -0.0083368951778, \n    -0.0089617853724, -0.0143826512358, -0.0198868194547, -0.0229201985671, \n    -0.0210879791753, -0.0166534224329, -0.0129672463313, -0.0137536816904, \n    -0.0146976693507, -0.0094222618851, -0.0008786171499, +0.0055761983059, \n    +0.0032591560302, -0.0042438795369, -0.0064698643664, -0.0012681158452, \n    +0.0030560101391, -0.0009312883398, -0.0098521937195, -0.0142323206820, \n    -0.0130993279178, -0.0097967404982, -0.0036743416602, -0.0035161983579, \n    -0.0096935603180, -0.0169815290653, -0.0206942569819, -0.0170324560810, \n    -0.0137159873386, -0.0152915824281, -0.0178534433942, -0.0172026788742, \n    -0.0112864530073, -0.0078368071632, -0.0092339486856, -0.0084639172164, \n    -0.0059688538138, -0.0063049894148, -0.0084049468174, -0.0051594558912, \n    -0.0027000255417, -0.0042830874293, -0.0049426881403, -0.0025534139722, \n    -0.0001873474172, -0.0033615578186, -0.0071660206711, -0.0086420104172, \n    -0.0086939608742, -0.0076917667920, -0.0092880757570, -0.0133662731209, \n    -0.0171444003785, -0.0175337981717, -0.0124645060181, -0.0072337119444, \n    -0.0054154171185, -0.0091645132382, -0.0130219644039, -0.0103368580411, \n    -0.0069447987896, -0.0041669772926, -0.0047664111874, -0.0075998588803, \n    -0.0075558941487, -0.0055831173458, -0.0036531376868, -0.0052074999734, \n    -0.0109020859323, -0.0157361883930, -0.0172222539903, -0.0132375501524, \n    -0.0073726981560, -0.0039935544438, -0.0017452701258, -0.0045152500435, \n    -0.0077802295985, -0.0073526761838, -0.0040718693253, -0.0033338384160, \n    -0.0062312295671, -0.0082092388936, -0.0062941063410, -0.0002929348464, \n    +0.0062345161112, +0.0112047939226, +0.0105847326421, +0.0061261034075, \n    +0.0013483334619, -0.0012494920967, -0.0021418608380, -0.0017150569855, \n    -0.0013053633422, -0.0042484057424, -0.0095094562007, -0.0152183559238, \n    -0.0173283747630, -0.0166015008053, -0.0156999643362, -0.0152454122527, \n    -0.0136559646687, -0.0100450619528, -0.0046197563736, -0.0007542329952, \n    +0.0005524420822, +0.0011462686711, +0.0022597439782, +0.0067100415357, \n    +0.0091015643918, +0.0071974014002, +0.0028650158114, -0.0008570528089, \n    -0.0032883889734, -0.0042249530810, -0.0054351796264, -0.0063627778114, \n    -0.0045259024813, -0.0001674119335, +0.0021612341487, -0.0010521841451, \n    -0.0036361139661, -0.0042102357062, -0.0033228832696, -0.0043576544982, \n    -0.0077593427473, -0.0134104973168, -0.0186017375466, -0.0169262632346, \n    -0.0093301521681, -0.0030828070036, -0.0003904933071, +0.0013699122177, \n    +0.0039354489250, +0.0071919814849, +0.0131733183990, +0.0198125118501, \n    +0.0211508847787, +0.0178021271826, +0.0087791515526, -0.0019948024123, \n    -0.0066499467920, +0.0002749885877, +0.0121399021499, +0.0178126931330, \n    +0.0139416201088, +0.0038776172842, +0.0020008133289, +0.0095989280339, \n    +0.0162674841596, +0.0141164411802, +0.0050923556203, -0.0037555250605, \n    -0.0062519434426, +0.0001227985417, +0.0053736578307, +0.0025464228597, \n    -0.0019400555103, +0.0007114070218, +0.0095546029359, +0.0180404160302, \n    +0.0205341676989, +0.0131460314365, +0.0017651335357, -0.0021776524534, \n    +0.0021499907086, +0.0080382809528, +0.0064767545768, -0.0005905400447, \n    -0.0056409922297, -0.0057271342757, -0.0010248971826, +0.0001965295586, \n    -0.0016733409420, -0.0041532112866, -0.0048168336892, -0.0004342274051, \n    +0.0046055146832, +0.0059345901511, +0.0035574098888, +0.0035169479202, \n    +0.0042726223821, +0.0035716804075, +0.0063788069202, +0.0102540601983, \n    +0.0099536153108, +0.0069103044933, +0.0051097541221, +0.0102746875865, \n    +0.0167526818247, +0.0172246468259, +0.0113766599879, +0.0052510322660, \n    +0.0074379389347, +0.0136055854099, +0.0139783198489, +0.0088761622563, \n    +0.0036880932527, +0.0014514559843, +0.0044967560266, +0.0082283815707, \n    +0.0044520849758, -0.0028727564873, -0.0044896784256, +0.0009698043277, \n    +0.0073500815441, +0.0074535356034, -0.0004922752660, -0.0079106102539, \n    -0.0085194136820, -0.0001654659541, +0.0077844819250, +0.0062742429311, \n    +0.0033696732757, +0.0047521694970, +0.0086698163096, +0.0097220581125, \n    +0.0086553439843, +0.0097692084861, +0.0108593176179, +0.0076238737146, \n    +0.0007481355913, -0.0043912118404, -0.0026930200145, +0.0024288280121, \n    +0.0053480285538, +0.0054991375006, +0.0035035711100, +0.0035630171935, \n    +0.0057042293712, +0.0101991259057, +0.0127147013797, +0.0076009976385, \n    +0.0010203565623, -0.0001680461790, +0.0049075307703, +0.0106729792285, \n    +0.0125028778597, +0.0112498685840, +0.0075985903894, +0.0056879119686, \n    +0.0070147531644, +0.0077355441330, +0.0051466124232, +0.0038549430133, \n    +0.0067380636457, +0.0126514786530, +0.0161628192684, +0.0139460886554, \n    +0.0092421650459, +0.0056117016288, +0.0070535286167, +0.0114364808537, \n    +0.0131186003265, +0.0097553271620, +0.0075059040859, +0.0059946560653, \n    +0.0036953726590, +0.0036144487231, +0.0059943245284, +0.0052993790556, \n    +0.0005088377170, -0.0016146876651, -0.0013390360024, -0.0022557511149, \n    -0.0036896932805, -0.0032728643773, -0.0017285635272, +0.0000136218597, \n    -0.0015652021161, -0.0027440191040, -0.0008943291354, +0.0010105690036, \n    +0.0016489369117, +0.0001165425768, +0.0000480584970, +0.0023770649456, \n    +0.0070233587195, +0.0107160646651, +0.0102371950387, +0.0077407045840, \n    +0.0053095269807, +0.0051501151874, +0.0069093963688, +0.0080905052890, \n    +0.0057846055502, +0.0027135609141, +0.0028974199819, +0.0049991071439, \n    +0.0057285613277, +0.0039797740230, +0.0024058510339, +0.0023427868694, \n    +0.0012131959674, -0.0003557972056, -0.0000877853168, +0.0006679323881, \n    +0.0009092627304, -0.0021226028428, -0.0055329398924, -0.0054007429891, \n    -0.0038617034921, -0.0017439439770, +0.0014234338730, +0.0027731223144, \n    +0.0019790471826, +0.0000038054716, -0.0009416092406, -0.0005184378851, \n    -0.0023182819371, -0.0036341824002, -0.0023393273495, -0.0012571462842, \n    -0.0015296123047, -0.0029763979371, -0.0035542386614, -0.0026193754849, \n    -0.0020068674885, -0.0022936184426, -0.0036060449722, -0.0044930658718, \n    -0.0035938789940, -0.0034391231378, -0.0044602580919, -0.0044104410060, \n    -0.0027260872588, -0.0023267577606, -0.0007445463386, +0.0014639246711, \n    +0.0014658562358, +0.0000063856977, +0.0005639449855, +0.0039736477896, \n    +0.0051974385369, +0.0026448029565, -0.0009916713761, -0.0021272587799, \n    -0.0021297669323, -0.0028823566554, -0.0053606269722, -0.0089441994800, \n    -0.0103258164075, -0.0078037543337, -0.0038114539661, -0.0041416939686, \n    -0.0077367549649, -0.0093767691983, -0.0049238914160, +0.0003043656771, \n    +0.0001129100798, -0.0036184848295, -0.0057568284885, -0.0027392046046, \n    +0.0005968824982, +0.0009122033216, -0.0021714685623, -0.0062496226820, \n    -0.0061561724002, -0.0004889166481, +0.0049314302866, +0.0043125510073, \n    -0.0003473790411, -0.0025395470629, -0.0013720167594, -0.0005259190967, \n    -0.0017093776070, -0.0045928297775, -0.0071139693120, -0.0087535366904, \n    -0.0096900431391, -0.0110237601306, -0.0129355340653, -0.0138453445526, \n    -0.0132649524329, -0.0104173783664, -0.0064308871088, -0.0045004317666, \n    -0.0052939591415, -0.0071689756784, -0.0067878807328, -0.0048131867787, \n    -0.0042411984099, -0.0051894528114, -0.0075691412261, -0.0084582810822, \n    -0.0058850325296, -0.0035841923386, -0.0038244704099, -0.0069623558525, \n    -0.0100728245998, -0.0098737292310, -0.0070272362648, -0.0038863525719, \n    -0.0040507806687, -0.0070519862467, -0.0083977827279, -0.0079154247533, \n    -0.0060595508936, -0.0045879864486, -0.0052839841923, -0.0070780912080, \n    -0.0070135135030, -0.0030664607727, +0.0015887556808, +0.0033065946965, \n    +0.0003601071911, -0.0035770426638, -0.0033092037509, +0.0005350435804, \n    +0.0020688793821, -0.0000537234607, -0.0025886578307, -0.0040806622721, \n    -0.0041601591560, -0.0025284045260, -0.0024950922334, -0.0062667617195, \n    -0.0087170820000, -0.0056856632805, -0.0010811576239, -0.0014468432914, \n    -0.0051189218501, -0.0076374379154, -0.0073133962189, -0.0039924733434, \n    -0.0012206483495, -0.0015230248017, -0.0029420910314, -0.0042203980459, \n    -0.0040218792624, -0.0029184509794, -0.0018115775901, -0.0014781231173, \n    -0.0015003793615, +0.0012770529383, +0.0043077365091, +0.0045503065115, \n    +0.0034476998646, +0.0026506408960, +0.0023141593422, +0.0018534954401, \n    -0.0000894430036, -0.0026278657231, -0.0045251096747, -0.0036073422926, \n    -0.0003843238307, +0.0026418335345, +0.0042104230967, +0.0029565201125, \n    +0.0021220550859, +0.0029113445490, +0.0050072226010, +0.0053226587412, \n    +0.0025999733446, -0.0009697466687, -0.0025950291137, -0.0010905704015, \n    +0.0019591549432, +0.0038280884909, +0.0019455330834, -0.0007281568634, \n    -0.0010698997703, +0.0009943813337, +0.0020717046566, +0.0005126287739, \n    -0.0013075543712, -0.0017547982201, +0.0009649898295, +0.0055851930568, \n    +0.0079210320580, +0.0063426261076, +0.0030034542660, +0.0025351650048, \n    +0.0044688204039, +0.0048071470339, +0.0022986491620, -0.0005660495272, \n    -0.0018098622455, -0.0006422886965, +0.0012945379287, +0.0020593224583, \n    +0.0016145435187, +0.0012885414268, +0.0024348965865, +0.0049348321475, \n    +0.0067883564172, +0.0056932165659, +0.0028044886288, +0.0007815055429, \n    +0.0011305566856, +0.0014630453761, +0.0011665501076, +0.0015016910967, \n    +0.0028065787545, +0.0054792596759, +0.0087719874631, +0.0120228406457, \n    +0.0135962735357, +0.0137770046203, +0.0119019448392, +0.0096385683664, \n    +0.0110317170266, +0.0123311415260, +0.0111144283809, +0.0085588377932, \n    +0.0070326705937, +0.0070931257037, +0.0065731598646, +0.0063079300060, \n    +0.0058184800157, +0.0048052875417, +0.0047790096058, +0.0061594012854, \n    +0.0086919572358, +0.0103546024958, +0.0107134700254, +0.0092432029008, \n    +0.0072884588464, +0.0054407869311, +0.0034426259021, +0.0034245066663, \n    +0.0029076688089, +0.0023881786542, +0.0028031192346, +0.0037894139407, \n    +0.0069190974389, +0.0097940449565, +0.0104857903724, +0.0087359652116, \n    +0.0063516929335, +0.0061562733035, +0.0055411274232, +0.0037322597896, \n    +0.0020101540326, +0.0019343328875, +0.0036089134909, +0.0060746718779, \n    +0.0091017950254, +0.0082511711584, +0.0021507114426, -0.0019754146868, \n    +0.0018929339661, +0.0086581836735, +0.0081004802370, +0.0025738972128, \n    -0.0008139241270, -0.0007002356554, +0.0033556622201, +0.0075122321245, \n    +0.0080494234897, +0.0048872493337, +0.0013343512358, +0.0040446976796, \n    +0.0101389735042, +0.0143418721451, +0.0120999302805, +0.0055178477364, \n    +0.0026746845586, +0.0037804768476, +0.0060732736554, +0.0071600962430, \n    +0.0063961333495, +0.0057587023942, +0.0069891527170, +0.0104688963833, \n    +0.0129541722285, +0.0110105130520, +0.0074211026046, +0.0051097685369, \n    +0.0042494147690, +0.0028874306179, +0.0008414417255, +0.0000516189202, \n    +0.0015505424002, +0.0032787311463, +0.0044769646904, +0.0063625327618, \n    +0.0081126894595, +0.0083391438658, +0.0069201352950, +0.0052288769238, \n    +0.0049338951935, +0.0061401288767, +0.0081555298476, +0.0084563639323, \n    +0.0053476105296, +0.0018247093519, +0.0021899337497, +0.0060935118464, \n    +0.0099533414317, +0.0101412798501, +0.0063866629129, +0.0023150818815, \n    +0.0010860874401, +0.0030231735296, +0.0056132872418, +0.0057434228489, \n    +0.0038067115405, +0.0022620935683, +0.0037833165369, +0.0069945726312, \n    +0.0056246604135, +0.0002037368924, -0.0019557819117, +0.0014063957376, \n    +0.0057861767485, +0.0071906985804, +0.0049572901971, +0.0027254097690, \n    +0.0026091122430, +0.0057198548694, +0.0096820574148, +0.0101045368658, \n    +0.0069566908888, +0.0011590112370, -0.0020920437509, -0.0021247506288, \n    +0.0011814116276, +0.0054561673797, +0.0082199634063, +0.0076318306094, \n    +0.0029954685405, -0.0022127809952, -0.0060975911971, -0.0073766766034, \n    -0.0050588847654, -0.0033399790629, -0.0043015958609, -0.0041356253942, \n    -0.0030925080738, -0.0009980138295, +0.0014213005030, +0.0031680120955, \n    +0.0051382375018, +0.0060889423978, +0.0046977108888, +0.0025613708682, \n    +0.0018127740073, +0.0020081359794, +0.0009294288476, -0.0002107135901, \n    +0.0004109333047, +0.0015992783869, +0.0025257666421, +0.0015188733785, \n    -0.0003108666917, -0.0030349935562, -0.0043888910798, -0.0044862044909, \n    -0.0056074925466, -0.0063104381584, -0.0070704370193, -0.0069093675393, \n    -0.0064474639758, -0.0065124885345, -0.0071510005889, -0.0079914909468, \n    -0.0094096922963, -0.0099729021342, -0.0070438852044, -0.0025929389867, \n    -0.0016253401028, -0.0030569038489, -0.0037136216264, -0.0020782200859, \n    +0.0011658726179, +0.0029954541258, +0.0014782960931, -0.0035454168863, \n    -0.0061423775647, -0.0038470005320, -0.0011946154619, -0.0008877992914, \n    -0.0026542157328, -0.0032678624885, -0.0021232370883, -0.0000268401088, \n    +0.0017074172128, +0.0015192914039, +0.0013691338259, +0.0000969674595, \n    -0.0038607953676, -0.0051298049226, -0.0037118918658, -0.0034207156082, \n    -0.0048109669202, -0.0055778704075, -0.0050492125236, -0.0040507806687, \n    -0.0010503823120, +0.0023977499915, +0.0019033269407, -0.0019003142757, \n    -0.0048720418609, -0.0051566450314, -0.0024253252479, -0.0004952446868, \n    -0.0013819628791, -0.0023835659601, -0.0029509560520, -0.0012064931475, \n    +0.0004683325054, +0.0002549666155, -0.0006755145030, -0.0016286843059, \n    -0.0004755686675, +0.0021845138343, +0.0037515610278, +0.0034383447461, \n    +0.0021229632104, -0.0003199191016, -0.0030101859154, -0.0036932681173, \n    -0.0026251990097, -0.0021491834873, -0.0038137747267, -0.0054088152019, \n    -0.0046503154655, -0.0026782593966, -0.0008273585961, -0.0004635035925, \n    -0.0027871045405, -0.0059286801391, -0.0074347821221, -0.0057865227001, \n    -0.0035256832080, -0.0035032684027, -0.0031558749468, -0.0022848543265, \n    -0.0023997968742, -0.0024703710798, -0.0007829181802, +0.0004592656796, \n    -0.0011415694909, -0.0038754406687, -0.0042796711536, -0.0046060047823, \n    -0.0052900095224, -0.0044586292346, -0.0035621378984, -0.0029484767291, \n    -0.0029673743567, -0.0025392443555, -0.0022078944232, -0.0026867496348, \n    -0.0027547003712, -0.0025515688948, -0.0022191378634, -0.0026753332189, \n    -0.0021186532249, -0.0008557122455, -0.0010612221415, -0.0030778051149, \n    -0.0048290140822, -0.0046190788839, -0.0038990663071, -0.0025585888380, \n    -0.0013334575272, -0.0023617998138, -0.0046174500266, -0.0053816723857, \n    -0.0047013722140, -0.0042101348041, -0.0034755634135, -0.0017596559625, \n    -0.0007275946917, -0.0002008107146, +0.0013827268561, +0.0026901082515, \n    +0.0030221068440, +0.0026806666457, +0.0028967569069, +0.0038974951088, \n    +0.0036616567545, +0.0020765912285, -0.0001378330387, -0.0014561984099, \n    -0.0010542454426, -0.0009030788380, -0.0015282284970, -0.0024805766638, \n    -0.0023634286723, -0.0015071830846, -0.0004817381451, -0.0000909565441, \n    -0.0015917395163, -0.0027659293966, -0.0021020187001, -0.0011193132455, \n    -0.0012485839722, -0.0016790779782, -0.0004732046626, +0.0028757403241, \n    +0.0044769646904, +0.0041658961935, +0.0037679216735, +0.0041947687690, \n    +0.0051953916542, +0.0055461148972, +0.0037587683603, +0.0002758967110, \n    -0.0013863881814, -0.0002137550846, +0.0023300875490, +0.0026673330798, \n    +0.0006402418150, -0.0010760115889, -0.0018001611753, -0.0012621625877, \n    -0.0001944106034, +0.0010012427146, +0.0019943988017, +0.0022958383023, \n    +0.0022132999226, +0.0026976327074, +0.0031392115925, +0.0039377985151, \n    +0.0046998442588, +0.0052801066469, +0.0054009159649, +0.0038541934510, \n    +0.0039433049178, +0.0060203718307, +0.0065066073507, +0.0048411368174, \n    +0.0015419800883, -0.0008067600387, +0.0005492996856, +0.0026299414353, \n    +0.0033266166675, +0.0020148387993, -0.0007572312455, -0.0009581428634, \n    +0.0013949793229, +0.0030889332370, +0.0029678932842, +0.0020170586578, \n    -0.0000780265877, -0.0011707736046, -0.0004250596771, +0.0017072730653, \n    +0.0025711872551, +0.0000076253579, -0.0013139256542, +0.0000081587013, \n    +0.0044425857110, +0.0080615750532, +0.0070084107110, +0.0052879626409, \n    +0.0073393137884, +0.0092122546131, +0.0088441040375, +0.0068184542394, \n    +0.0034810698162, +0.0040748964051, +0.0079912170677, +0.0119434590786, \n    +0.0112605786808, +0.0051408898005, +0.0008626456989, +0.0000044108875, \n    +0.0018431745393, +0.0047054803930, +0.0053481871161, +0.0032021604401, \n    +0.0002677668392, -0.0017107037557, -0.0012368648489, -0.0011649356638, \n    -0.0034584099613, -0.0036001782031, -0.0012919288730, -0.0003377644583, \n    -0.0014651499178, -0.0017030783978, -0.0006543970169, +0.0002879762019, \n    +0.0021887085030, +0.0052418357086, +0.0056273127122, +0.0031077011318, \n    +0.0035685956699, +0.0067161965973, +0.0067470295683, +0.0052833355320, \n    +0.0057989913869, +0.0078575498682, +0.0083648163869, +0.0075770837074, \n    +0.0062297304426, +0.0029323178888, +0.0025319361197, +0.0040996175574, \n    +0.0055590448525, +0.0094595670411, +0.0126728700181, +0.0100440529262, \n    +0.0063612786856, +0.0058777531233, +0.0055040817304, +0.0007885399008, \n    -0.0028604751923, -0.0020346301354, +0.0006546564800, +0.0011162573362, \n    -0.0028205753954, -0.0044932244329, -0.0054969608851, -0.0053094837364, \n    -0.0009529535828, +0.0021590719492, +0.0005345534813, -0.0011826512890, \n    +0.0021510285647, +0.0064310168416, +0.0055308785949, +0.0017727588948, \n    +0.0010098194414, +0.0037083746880, +0.0064332943579, +0.0057021392443, \n    +0.0028010435236, +0.0019837175345, +0.0049146516143, +0.0085302390955, \n    +0.0101661595635, +0.0081879484317, +0.0045285836094, +0.0029148473132, \n    +0.0033690246155, +0.0059736971415, +0.0054985032551, +0.0029185518827, \n    +0.0006962860363, +0.0018849338271, +0.0050919520085, +0.0048357457316, \n    +0.0032076235985, +0.0055642917920, +0.0092209610713, +0.0081516667170, \n    +0.0045814133615, -0.0001052558924, -0.0036940609238, -0.0011177852914, \n    +0.0040940679117, +0.0046536740834, +0.0006280614208, -0.0013320593047, \n    +0.0004906752382, -0.0005134071669, -0.0012806998489, +0.0006573520230, \n    +0.0008897308573, +0.0005528601076, +0.0018375960629, +0.0021069917594, \n    +0.0000977314365, +0.0018047162092, +0.0070357985768, +0.0086593224317, \n    +0.0058038347146, +0.0027150023809, +0.0040623268162, +0.0093885459807, \n    +0.0117805012769, +0.0098612461294, +0.0078271060931, +0.0074667394377, \n    +0.0068778859081, +0.0064553199686, +0.0054319795707, +0.0016061397678, \n    -0.0032690444909, -0.0051601045514, -0.0028359702600, -0.0006244865840, \n    -0.0015503550097, -0.0022392751511, +0.0002094595151, +0.0036620027062, \n    +0.0049601154716, +0.0023878903603, -0.0014587498053, -0.0026545184414, \n    -0.0032621831100, -0.0029044687533, -0.0017744021669, -0.0024749981886, \n    -0.0027128545949, -0.0010972011475, +0.0006625701318, +0.0005290903229, \n    -0.0003213029093, +0.0003172523881, +0.0010285152636, -0.0005378976844, \n    -0.0029964487388, -0.0033829491838, -0.0022598737098, -0.0014111669927, \n    -0.0012192789565, -0.0013258754123, -0.0009644853156, -0.0015323799202, \n    -0.0027946434111, -0.0020415635901, -0.0012803250677, -0.0021430860846, \n    -0.0021094422527, -0.0017409601403, -0.0025211107050, -0.0036333175212, \n    -0.0042878730992, -0.0037045259722, -0.0028295269033, -0.0024896434885, \n    -0.0027795080121, -0.0046296448343, -0.0061291881451, -0.0070849814184, \n    -0.0071450617461, -0.0058743945054, -0.0043933740411, -0.0029293772963, \n    -0.0028740105635, -0.0040214324087, -0.0058031428102, -0.0060093590254, \n    -0.0036428312007, -0.0007608781560, +0.0011561283035, +0.0004037115562, \n    -0.0015397746445, -0.0026872397328, -0.0026414299238, -0.0018088388041, \n    -0.0024139520762, -0.0035568188875, -0.0039857416953, -0.0034252706433, \n    -0.0028839422684, -0.0042517643591, -0.0066552658041, -0.0076718313083, \n    -0.0061797980387, -0.0027978578815, -0.0008907687134, -0.0024543708005, \n    -0.0058142132745, -0.0079417747630, -0.0061119337896, -0.0047158445381, \n    -0.0062481091415, -0.0085857643906, -0.0105078880556, -0.0100740930907, \n    -0.0077852170726, -0.0057107880447, -0.0057628682334, -0.0072461229710, \n    -0.0072934895647, -0.0054676414547, -0.0047329547473, -0.0063348566034, \n    -0.0076989308815, -0.0071287011004, -0.0053808075054, -0.0029713239746, \n    -0.0016836906723, -0.0018713984559, -0.0025371542285, -0.0015544343603, \n    +0.0003901041112, +0.0000118920992, -0.0032592136880, -0.0056350966324, \n    -0.0038027042636, -0.0004022556747, +0.0011369423821, -0.0007093457243, \n    -0.0049737085018, -0.0077899018392, -0.0066428980193, -0.0048741752322, \n    -0.0052199686602, -0.0073149818319, -0.0081908025357, -0.0076032607412, \n    -0.0072567033362, -0.0067036125937, -0.0066689453216, -0.0061082003918, \n    -0.0052906149383, -0.0039157584909, -0.0028012453289, -0.0039611502745, \n    -0.0058281955006, -0.0055459851657, -0.0043841918984, -0.0039997383362, \n    -0.0046870007908, -0.0051153614268, -0.0042438795369, -0.0029151644353, \n    -0.0020310264692, -0.0021762686457, -0.0032332672890, -0.0047935828331, \n    -0.0045325043990, -0.0035315643918, -0.0042793107872, -0.0055943319553, \n    -0.0058948200871, -0.0053009070109, -0.0048205238440, -0.0038113242334, \n    -0.0015755518464, +0.0004595828029, +0.0003215479589, -0.0021622720048, \n    -0.0054096944970, -0.0068500656022, -0.0052460592056, -0.0016374051790, \n    -0.0005417608150, -0.0014177544946, -0.0023037087098, -0.0010475282080, \n    +0.0013461136046, +0.0023819226880, +0.0014698923422, -0.0010225043470, \n    -0.0018161470399, -0.0010028859867, +0.0007229099250, +0.0020640792987, \n    +0.0017642686566, +0.0011484308718, +0.0003239840375, +0.0003106216421, \n    +0.0005080449105, +0.0005269281233, +0.0002412582684, -0.0005021781415, \n    -0.0005523555949, -0.0012510200508, -0.0035050702358, -0.0054122458924, \n    -0.0054369238005, -0.0038430509141, -0.0033699471548, -0.0039295965695, \n    -0.0045771466203, -0.0049478630060, -0.0047697842189, -0.0036756389807, \n    -0.0016000135345, -0.0008085186276, -0.0011065706808, +0.0002817346505, \n    +0.0023111610919, +0.0034973151451, +0.0028689942600, +0.0008982499250, \n    -0.0000219535369, -0.0003541251052, +0.0004929815840, +0.0016320717521, \n    +0.0014637661100, +0.0014520902297, +0.0019098567848, +0.0033662425852, \n    +0.0042354469577, +0.0045176572926, +0.0046223942576, +0.0035891653978, \n    +0.0014096246227, -0.0004519430290, -0.0004662279637, +0.0010730709964, \n    +0.0023721351306, +0.0019239110846, +0.0005069349819, -0.0010489408452, \n    -0.0008821919867, +0.0023395435695, +0.0065296275732, +0.0071227478428, \n    +0.0036543052745, +0.0005514186409, +0.0006263316614, +0.0025835117956, \n    +0.0031195355732, +0.0027077518029, +0.0007961364293, -0.0020149829456, \n    -0.0017861212902, +0.0015652453591, +0.0032082001850, +0.0024514446239, \n    +0.0018557008839, +0.0035016251306, +0.0047309366941, +0.0034913618875, \n    +0.0015764455550, -0.0000556117823, -0.0006048249794, -0.0000167786711, \n    +0.0016657011681, +0.0031739221088, +0.0021161450726, +0.0012962388585, \n    +0.0031905998779, +0.0047842421294, +0.0044332882515, +0.0048715373482, \n    +0.0067858482648, +0.0073585717823, +0.0060907874752, +0.0052361563301, \n    +0.0056625421560, +0.0057112781427, +0.0055786199698, +0.0049617299141, \n    +0.0036091441258, +0.0018223165163, +0.0004653342539, +0.0004115387207, \n    +0.0019849571959, +0.0032562875115, +0.0037392509033, +0.0038166432455, \n    +0.0035702821850, +0.0027705420895, +0.0022551601137, +0.0028131374281, \n    +0.0041858460907, +0.0041370092019, +0.0035052432116, +0.0045875107654, \n    +0.0057061176929, +0.0081336916288, +0.0103184505127, +0.0104456022830, \n    +0.0087169234377, +0.0065468675139, +0.0061459668174, +0.0056310605248, \n    +0.0045202663470, +0.0039058267848, +0.0030250762648, +0.0018411709008, \n    +0.0010014733495, +0.0015390539117, +0.0024990562660, +0.0027889496179, \n    +0.0026068779698, +0.0028327269601, +0.0028903712092, +0.0027406172418, \n    +0.0033766499746, +0.0034872681221, +0.0026820648682, +0.0007115223386, \n    -0.0016852042116, -0.0015938296433, +0.0006516870593, +0.0025180259674, \n    +0.0036139874534, +0.0033915403241, +0.0018413871197, +0.0009754260484, \n    +0.0014144102926, +0.0030693581197, +0.0039772802854, +0.0034584820339, \n    +0.0016045829843, -0.0008033870060, -0.0016275743761, -0.0003146865780, \n    +0.0018860725852, +0.0039725666904, +0.0048708598585, +0.0046268051451, \n    +0.0036899239154, +0.0031196508900, +0.0022871895018, +0.0015972315042, \n    +0.0004982285224, -0.0003417717364, +0.0004924194123, +0.0017690110810, \n    +0.0030292853482, +0.0028826737775, +0.0009529824123, -0.0014794492660, \n    -0.0023717747630, -0.0010929632358, +0.0007350903180, +0.0004518421270, \n    -0.0014590813434, -0.0027666933736, -0.0028125752563, -0.0019024332322, \n    -0.0017323401705, -0.0031735473277, -0.0041915398839, -0.0036079044643, \n    -0.0013763844027, +0.0005498041983, -0.0000257734232, -0.0014357728283, \n    -0.0019112550073, -0.0013689464353, -0.0009183583845, -0.0013372774135, \n    -0.0013229924788, -0.0002723362890, +0.0002510169976, +0.0005312525236, \n    -0.0000553523180, -0.0012255349214, -0.0014278880048, -0.0007677107074, \n    -0.0005120377727, -0.0010415317074, -0.0020583278464, -0.0022086872297, \n    -0.0021272731947, -0.0024494842285, -0.0029081300786, -0.0032820897642, \n    -0.0029915621669, -0.0019692019649, -0.0009035112781, -0.0009204485103, \n    -0.0011844242926, -0.0011501029722, -0.0017737246771, -0.0020200136638, \n    -0.0026528175103, -0.0036242506953, -0.0038688387521, -0.0032731815006, \n    -0.0022627854728, -0.0019497854099, -0.0023965391596, -0.0036547665441, \n    -0.0040688278307, -0.0038201604244, -0.0036714587279, -0.0029563759661, \n    -0.0014739572781, +0.0004532115200, +0.0008079564559, -0.0006303965973, \n    -0.0026696105961, -0.0048818294196, -0.0063380566590, -0.0063812429988, \n    -0.0063158580726, -0.0064129840943, -0.0064989819927, -0.0053292606590, \n    -0.0033192796022, -0.0024800433216, -0.0033668480012, -0.0046607949287, \n    -0.0054964275429, -0.0054233019407, -0.0040425931378, -0.0026504246759, \n    -0.0021486069008, -0.0020621477328, -0.0011171798755, +0.0010216971258, \n    +0.0022364354619, +0.0017884564655, -0.0001448097364, -0.0022585908041, \n    -0.0031739365236, -0.0035135172297, -0.0050673461741, -0.0060172294329, \n    -0.0064332367001, -0.0065363448077, -0.0053445113761, -0.0043335964196, \n    -0.0047003055284, -0.0051328031729, -0.0045949199033, -0.0036535557122, \n    -0.0045797124305, -0.0067704245719, -0.0083307112866, -0.0088638088863, \n    -0.0078616580484, -0.0061673293519, -0.0053339021814, -0.0054644558138, \n    -0.0052421960750, -0.0038404851040, -0.0029712374873, -0.0039177909589, \n    -0.0050570685175, -0.0052598684559, -0.0051042044752, -0.0055861155961, \n    -0.0071543015478, -0.0084897915429, -0.0087608593410, -0.0064509090810, \n    -0.0021723911004, -0.0013004911850, -0.0038964860822, -0.0065515522805, \n    -0.0050643190943, -0.0010404361923, +0.0005490258065, -0.0009182574813, \n    -0.0045209438368, -0.0059731637981, -0.0033365483724, -0.0007178071330, \n    -0.0007913363458, -0.0032826807654, -0.0055908580218, -0.0059035842044, \n    -0.0051865410484, -0.0048713355429, -0.0055233108960, -0.0067591378888, \n    -0.0078800367473, -0.0089603583216, -0.0087173558779, -0.0066204976288, \n    -0.0056189810351, -0.0051540648053, -0.0048854042576, -0.0051940799190, \n    -0.0049613263035, -0.0031184977170, -0.0003840931959, +0.0002538278573, \n    -0.0012115094510, -0.0014209401366, -0.0002817346505, +0.0004490456820, \n    +0.0003253390157, -0.0000320005586, -0.0001438151245, -0.0009419119492, \n    -0.0019514286820, -0.0027267647485, -0.0046419117158, -0.0063352025550, \n    -0.0059981588295, -0.0049923322503, -0.0039264397582, -0.0035244291318, \n    -0.0045467172600, -0.0055329398924, -0.0060490137727, -0.0061963460750, \n    -0.0058135501995, -0.0057162079589, -0.0053102044704, -0.0054654792539, \n    -0.0057007842660, -0.0048351259008, -0.0025973066312, -0.0006517158888, \n    -0.0004654639867, -0.0016486918622, -0.0030242546300\n};\n"
  },
  {
    "path": "impulses/03-stk-m1.h",
    "content": "float stk_m1[] = {\n    -0.0078354283852, -0.0305904437564, -0.0544448647061, -0.0654778659204, \n    -0.0493025333033, +0.0057999367459, +0.0697043517155, +0.1049470287295, \n    +0.1062267837260, +0.0866926526019, +0.0628288791663, +0.0440187979075, \n    +0.0317299114731, +0.0240030835890, +0.0188275299251, +0.0151256208396, \n    +0.0124967349496, +0.0107776923255, +0.0098134092201, +0.0094201860714, \n    +0.0094193485363, +0.0096668404215, +0.0100590864450, +0.0105258731710, \n    +0.0110197402272, +0.0115077445328, +0.0119674122026, +0.0123829696440, \n    +0.0127452039602, +0.0130483919895, +0.0132901607131, +0.0134696725937, \n    +0.0135874859906, +0.0136454155632, +0.0136451363841, +0.0135893006511, \n    +0.0134801417939, +0.0133203120082, +0.0131127426721, +0.0128596672131, \n    +0.0125634586499, +0.0122264900023, +0.0118511342892, +0.0114392061698, \n    +0.0109927994859, +0.0105137288993, +0.0100040882482, +0.0094655526042, \n    +0.0088999366311, +0.0083090549895, +0.0050828663466, -0.0031392244883, \n    -0.0117486757190, -0.0161038628782, -0.0114075193923, +0.0062480185012, \n    +0.0268223693279, +0.0378285693899, +0.0375009532272, +0.0302240217600, \n    +0.0214935465773, +0.0144385621475, +0.0095493062037, +0.0061736173876, \n    +0.0036425836194, +0.0015980186733, -0.0000926873162, -0.0014832762424, \n    -0.0026241398525, -0.0035754411511, -0.0043959472447, -0.0051326997389, \n    -0.0058197584309, -0.0064797367927, -0.0071275708829, -0.0077730319543, \n    -0.0084232390621, -0.0090827986557, -0.0097539441651, -0.0104376527131, \n    -0.0111346222482, -0.0118441548220, -0.0125656920796, -0.0132981173044, \n    -0.0140398950152, -0.0147899084965, -0.0155469014438, -0.0163094779649, \n    -0.0170759629871, -0.0178455189742, -0.0186167500340, -0.0193885394508, \n    -0.0201599100995, -0.0209300244438, -0.0216973470023, -0.0224610402377, \n    -0.0232202666148, -0.0239740490070, -0.0247215498806, -0.0254617921089, \n    -0.0261943569227, -0.0269185463770, -0.0276336625258, -0.0283391470094, \n    -0.0290338831148, -0.0297175916628, -0.0303895747073, -0.0310496926593, \n    -0.0316973871593, -0.0323319602623, -0.0329527140222, -0.0335593692588, \n    -0.0341516467951, -0.0347291278618, -0.0352913936909, -0.0358384442834, \n    -0.0363698608700, -0.0368852246838, -0.0373842565457, -0.0378665376885, \n    -0.0383317889321, -0.0387800102775, -0.0392109225445, -0.0396250840925, \n    -0.0400219365644, -0.0404010611897, -0.0407623183806, -0.0411058477272, \n    -0.0414313700492, -0.0417388853478, -0.0420285332119, -0.0423004532307, \n    -0.0425546454040, -0.0427911097330, -0.0430097066265, -0.0432102964965, \n    -0.0433928793431, -0.0435577343443, -0.0437051406792, -0.0438345399895, \n    -0.0439469094016, -0.0440422489157, -0.0441206981206, -0.0441821174262, \n    -0.0442265068337, -0.0442535871639, -0.0442643355433, -0.0442590311487, \n    -0.0442373948021, -0.0442001244508, -0.0441470805035, -0.0440782629637, \n    -0.0439940905960, -0.0438949821710, -0.0437810772752, -0.0436529342681, \n    -0.0435106927389, -0.0433544922763, -0.0431844724707, -0.0430009124988, \n    -0.0428038123618, -0.0425935908279, -0.0423702478970, -0.0421346211042, \n    -0.0418865708618, -0.0416269347037, -0.0413561313993, -0.0410743005386, \n    -0.0407815817084, -0.0404783936803, -0.0401644572717, -0.0398397724859, \n    -0.0395057352143, -0.0391627642248, -0.0388107199297, -0.0384496023279, \n    -0.0380796905984, -0.0377019618653, -0.0373165557201, -0.0369236117506, \n    -0.0365231299567, -0.0361155291077, -0.0357010883806, -0.0352800869555, \n    -0.0348528040094, -0.0344199374906, -0.0339820457564, -0.0335391288056, \n    -0.0330910470504, -0.0326383588466, -0.0321813433735, -0.0317198610422, \n    -0.0312544702084, -0.0307854500527, -0.0303132193431, -0.0298374988993, \n    -0.0293588470796, -0.0288781014204, -0.0283949827424, -0.0279096306347, \n    -0.0274230222237, -0.0269352970972, -0.0264460364883, -0.0259555195761, \n    -0.0254644443056, -0.0249728106780, -0.0244806186932, -0.0239882871194, \n    -0.0234960951347, -0.0230041823290, -0.0225128278794, -0.0220218921991, \n    -0.0215317940539, -0.0210426730351, -0.0205549479087, -0.0200691770340, \n    -0.0195846624625, -0.0191018229625, -0.0186206585351, -0.0181413087693, \n    -0.0176640528431, -0.0171893095246, -0.0167174975820, -0.0162490357834, \n    -0.0157830865937, -0.0153197896007, -0.0148592843946, -0.0144025480995, \n    -0.0139493015386, -0.0134991259426, -0.0130521609016, -0.0126089647728, \n    -0.0121695375550, -0.0117344376077, -0.0113032461604, -0.0108755444473, \n    -0.0104517512354, -0.0100327040609, -0.0096185425129, -0.0092082894660, \n    -0.0088023636885, -0.0084007651803, -0.0080036335304, -0.0076112479180, \n    -0.0072233291639, -0.0068402960375, -0.0064628464836, -0.0060900033782, \n    -0.0057206500047, -0.0053560426698, -0.0049970189075, -0.0046432995410, \n    -0.0042943262108, -0.0039502385070, -0.0036108968407, -0.0032763012119, \n    -0.0029474287459, -0.0026237210843, -0.0023050386393, -0.0019912418208, \n    -0.0016823306300, -0.0013784446534, -0.0010793047155, -0.0007846316358, \n    -0.0004954025398, -0.0002118966066, +0.0000671424684, +0.0003411563279, \n    +0.0006102845597, +0.0008743875761, +0.0011338841440, +0.0013883554965, \n    +0.0016373828642, +0.0018813850176, +0.0021211994895, +0.0023561283349, \n    +0.0025856131967, +0.0028100728431, +0.0030304843981, +0.0032464290948, \n    +0.0034576277541, +0.0036642199660, +0.0038667640867, +0.0040653997061, \n    +0.0042595684672, +0.0044485724227, +0.0046328303407, +0.0048126214005, \n    +0.0049886435480, +0.0051603384262, +0.0053277060351, +0.0054911651429, \n    +0.0056502969813, +0.0058048223724, +0.0059557184403, +0.0061028455960, \n    +0.0062457850726, +0.0063850952260, +0.0065207760562, +0.0066526879754, \n    +0.0067805518033, +0.0069046467190, +0.0070251123126, +0.0071419485843, \n    +0.0072554347108, +0.0073654311042, +0.0074723565328, +0.0075760714063, \n    +0.0076760173677, +0.0077730319543, +0.0078669755749, +0.0079572898724, \n    +0.0080448123829, +0.0081299618759, +0.0082119008138, +0.0082902104286, \n    +0.0083655886686, +0.0084387334789, +0.0085089469122, +0.0085758102026, \n    +0.0086400212951, +0.0087022781370, +0.0087621619602, +0.0088198123548, \n    +0.0088743917834, +0.0089256210679, +0.0089740585667, +0.0090209605820, \n    +0.0090661875258, +0.0091094602190, +0.0091503598934, +0.0091891657272, \n    +0.0092253193642, +0.0092588208044, +0.0092902284040, +0.0093202401101, \n    +0.0093485767447, +0.0093753778958, +0.0094005039766, +0.0094236758056, \n    +0.0094450329731, +0.0094647150691, +0.0094824429133, +0.0094983560972, \n    +0.0095127337986, +0.0095255760176, +0.0095370223431, +0.0095467935960, \n    +0.0095551689555, +0.0095621484227, +0.0095675924063, +0.0095717800867, \n    +0.0095747114625, +0.0095762469450, +0.0095765261241, +0.0095756885878, \n    +0.0095738739262, +0.0095709425504, +0.0095667548700, +0.0095614504754, \n    +0.0095551689555, +0.0095477707213, +0.0095392557717, +0.0095301824660, \n    +0.0095201320340, +0.0095088252974, +0.0094966810258, +0.0094839783970, \n    +0.0094704382319, +0.0094557813513, +0.0094402869356, +0.0094243737518, \n    +0.0094079022108, +0.0093907327225, +0.0093727256991, +0.0093537415504, \n    +0.0093340594543, +0.0093140981792, +0.0092935785480, +0.0092726401475, \n    +0.0092517017482, +0.0092311821159, +0.0092098249485, +0.0091867927084, \n    +0.0091626437541, +0.0091379364426, +0.0091129499520, +0.0090876842834, \n    +0.0090621394356, +0.0090363154087, +0.0090100726148, +0.0089835506417, \n    +0.0089567494895, +0.0089295295703, +0.0089020304719, +0.0088748105515, \n    +0.0088484281674, +0.0088216270164, +0.0087935695609, +0.0087645349789, \n    +0.0087349420410, +0.0087050699239, +0.0086751978068, +0.0086450465105, \n    +0.0086148952155, +0.0085846043302, +0.0085543134450, +0.0085238829707, \n    +0.0084938712646, +0.0084646970937, +0.0084353833349, +0.0084049528595, \n    +0.0083736848501, +0.0083421376604, +0.0083104508817, +0.0082786245141, \n    +0.0082469377365, +0.0082152509578, +0.0081835641792, +0.0081518774005, \n    +0.0081208885691, +0.0080907372740, +0.0080605859778, +0.0080293179672, \n    +0.0079974915995, +0.0079652464637, +0.0079330013279, +0.0079007561932, \n    +0.0078685110574, +0.0078365450995, +0.0078047187319, +0.0077740090796, \n    +0.0077442765515, +0.0077141252553, +0.0076828572459, +0.0076508912881, \n    +0.0076186461522, +0.0075864010176, +0.0075542954707, +0.0075223295141, \n    +0.0074905031464, +0.0074588163677, +0.0074279671253, +0.0073982345972, \n    +0.0073683624801, +0.0073379320059, +0.0073072223525, +0.0072760939321, \n    +0.0072448259215, +0.0072132787330, +0.0071818711323, +0.0071507427119, \n    +0.0071196142904, +0.0070893234052, +0.0070602888244, +0.0070311146546, \n    +0.0070012425375, +0.0069706724731, +0.0069402419988, +0.0069099511136, \n    +0.0068797998185, +0.0068496485222, +0.0068193576370, +0.0067892063419, \n    +0.0067597529930, +0.0067315559473, +0.0067033589028, +0.0066744639110, \n    +0.0066448709719, +0.0066151384450, +0.0065855455059, +0.0065565109251, \n    +0.0065276159333, +0.0064987209415, +0.0064696863607, +0.0064413497260, \n    +0.0064142693958, +0.0063871890656, +0.0063591316101, +0.0063306553864, \n    +0.0063018999836, +0.0062735633489, +0.0062456454824, +0.0062178672061, \n    +0.0061899493396, +0.0061627294192, +0.0061366262143, +0.0061105230094, \n    +0.0060835822681, +0.0060560831698, +0.0060283048934, +0.0060006662049, \n    +0.0059734462857, +0.0059466451335, +0.0059201231604, +0.0058934615984, \n    +0.0058673583934, +0.0058425114918, +0.0058175250012, +0.0057915613852, \n    +0.0057651790023, +0.0057385174391, +0.0057118558770, +0.0056857526721, \n    +0.0056600682354, +0.0056345233876, +0.0056089785398, +0.0055839920492, \n    +0.0055601222728, +0.0055362524977, +0.0055114055960, +0.0054860003384, \n    +0.0054604554906, +0.0054349106429, +0.0054097845632, +0.0053852168407, \n    +0.0053607887073, +0.0053362209848, +0.0053123512084, +0.0052897377377, \n    +0.0052669846756, +0.0052432544895, +0.0052189659461, +0.0051943982237, \n    +0.0051698305012, +0.0051456815468, +0.0051220909496, +0.0050986399415, \n    +0.0050750493443, +0.0050521566944, +0.0050303807588, +0.0050086048220, \n    +0.0049858517611, +0.0049625403431, +0.0049389497459, +0.0049156383279, \n    +0.0048928852658, +0.0048704113841, +0.0048476583232, +0.0048249052611, \n    +0.0048028501475, +0.0047820513361, +0.0047612525258, +0.0047396161792, \n    +0.0047172818864, +0.0046946684145, +0.0046724737108, +0.0046506977752, \n    +0.0046290614286, +0.0046072854930, +0.0045855095574, +0.0045637336218, \n    +0.0045427952213, +0.0045231131253, +0.0045034310293, +0.0044827718091, \n    +0.0044615542307, +0.0044403366522, +0.0044193982518, +0.0043985994415, \n    +0.0043776610422, +0.0043567226417, +0.0043356446522, +0.0043155437892, \n    +0.0042966992295, +0.0042778546698, +0.0042581725738, +0.0042377925304, \n    +0.0042174124883, +0.0041973116253, +0.0041774899391, +0.0041575286651, \n    +0.0041372882119, +0.0041173269379, +0.0040980636101, +0.0040800565855, \n    +0.0040621891511, +0.0040432050023, +0.0040236624953, +0.0040041199895, \n    +0.0039849962506, +0.0039658725117, +0.0039466091838, +0.0039274854461, \n    +0.0039082221183, +0.0038890983794, +0.0038709517670, +0.0038540614567, \n    +0.0038371711475, +0.0038193037131, +0.0038010175105, +0.0037827313091, \n    +0.0037644451066, +0.0037460193138, +0.0037274539333, +0.0037090281417, \n    +0.0036906023489, +0.0036724557365, +0.0036552862482, +0.0036392334754, \n    +0.0036233202916, +0.0036062903934, +0.0035888417260, +0.0035715326487, \n    +0.0035540839824, +0.0035364957272, +0.0035189074707, +0.0035013192155, \n    +0.0034837309590, +0.0034671198290, +0.0034519045913, +0.0034365497646, \n    +0.0034203574028, +0.0034036066827, +0.0033869955527, +0.0033703844215, \n    +0.0033533545234, +0.0033364642143, +0.0033195739052, +0.0033028231850, \n    +0.0032862120550, +0.0032698801030, +0.0032543856874, +0.0032400079859, \n    +0.0032260490527, +0.0032112525831, +0.0031958977564, +0.0031797053946, \n    +0.0031632338536, +0.0031467623115, +0.0031305699496, +0.0031145171756, \n    +0.0030987435820, +0.0030829699871, +0.0030685922857, +0.0030558896569, \n    +0.0030433266171, +0.0030296468618, +0.0030148503934, +0.0029992163876, \n    +0.0029834427939, +0.0029675296101, +0.0029518956042, +0.0029365407775, \n    +0.0029213255410, +0.0029063894824, +0.0028924305492, +0.0028797279192, \n    +0.0028671648794, +0.0028540434824, +0.0028400845492, +0.0028255672588, \n    +0.0028106312002, +0.0027958347307, +0.0027810382623, +0.0027665209719, \n    +0.0027521432705, +0.0027380447482, +0.0027247837611, +0.0027130582576, \n    +0.0027017515211, +0.0026893280703, +0.0026756483162, +0.0026615497939, \n    +0.0026473116815, +0.0026330735703, +0.0026191146370, +0.0026054348817, \n    +0.0025917551276, +0.0025783545515, +0.0025657915117, +0.0025546243653, \n    +0.0025435968080, +0.0025318713044, +0.0025193082646, +0.0025060472775, \n    +0.0024926467026, +0.0024791065363, +0.0024657059614, +0.0024525845632, \n    +0.0024396027553, +0.0024267605375, +0.0024140579075, +0.0024021928150, \n    +0.0023921423829, +0.0023825107190, +0.0023716227506, +0.0023594784789, \n    +0.0023466362611, +0.0023336544532, +0.0023206726452, +0.0023079700152, \n    +0.0022954069754, +0.0022831231148, +0.0022709788431, +0.0022591137494, \n    +0.0022482257822, +0.0022391524754, +0.0022299395796, +0.0022191912002, \n    +0.0022073261077, +0.0021951818349, +0.0021828979742, +0.0021706141136, \n    +0.0021587490199, +0.0021470235164, +0.0021355771909, +0.0021241308653, \n    +0.0021139408443, +0.0021054258946, +0.0020967713560, +0.0020867209239, \n    +0.0020755537775, +0.0020639678630, +0.0020522423595, +0.0020406564450, \n    +0.0020293497084, +0.0020183221522, +0.0020074341838, +0.0019966858056, \n    +0.0019863561944, +0.0019771432986, +0.0019693262963, +0.0019610905258, \n    +0.0019513192728, +0.0019407104836, +0.0019296829262, +0.0019186553689, \n    +0.0019077674005, +0.0018970190222, +0.0018865498220, +0.0018762202119, \n    +0.0018660301909, +0.0018562589368, +0.0018470460410, +0.0018385310925, \n    +0.0018309932681, +0.0018230366768, +0.0018138237799, +0.0018037733489, \n    +0.0017934437377, +0.0017831141276, +0.0017729241066, +0.0017628736745, \n    +0.0017529628314, +0.0017433311674, +0.0017339786827, +0.0017253241440, \n    +0.0017173675515, +0.0017103880855, +0.0017029898513, +0.0016943353126, \n    +0.0016848432377, +0.0016750719848, +0.0016653007307, +0.0016556690667, \n    +0.0016461769930, +0.0016368245070, +0.0016280303794, +0.0016196550199, \n    +0.0016114192494, +0.0016036022459, +0.0015969019578, +0.0015899224918, \n    +0.0015818263103, +0.0015727530035, +0.0015635401077, +0.0015543272119, \n    +0.0015452539052, +0.0015363201885, +0.0015275260609, +0.0015192902892, \n    +0.0015114732869, +0.0015037958735, +0.0014956996932, +0.0014883014578, \n    +0.0014821595269, +0.0014758780070, +0.0014683401838, +0.0014599648232, \n    +0.0014511706956, +0.0014423765679, +0.0014338616183, +0.0014253466698, \n    +0.0014171108993, +0.0014092938958, +0.0014020352506, +0.0013947766054, \n    +0.0013879367283, +0.0013823531546, +0.0013763508138, +0.0013692317576, \n    +0.0013612751663, +0.0013530393958, +0.0013446640351, +0.0013365678536, \n    +0.0013286112623, +0.0013207942600, +0.0013133960246, +0.0013066957365, \n    +0.0012998558595, +0.0012927368044, +0.0012863156944, +0.0012810112998, \n    +0.0012755673162, +0.0012688670281, +0.0012614687939, +0.0012536517904, \n    +0.0012458347881, +0.0012381573747, +0.0012307591405, +0.0012237796733, \n    +0.0012172189754, +0.0012107978665, +0.0012040975785, +0.0011972577002, \n    +0.0011909761803, +0.0011862301440, +0.0011812049274, +0.0011750629965, \n    +0.0011682231194, +0.0011609644742, +0.0011535662400, +0.0011464471838, \n    +0.0011394677178, +0.0011329070187, +0.0011269046780, +0.0011210419251, \n    +0.0011148999953, +0.0011083392963, +0.0011017785972, +0.0010961950246, \n    +0.0010918677553, +0.0010874008970, +0.0010818173232, +0.0010753962143, \n    +0.0010685563372, +0.0010618560492, +0.0010554349391, +0.0010494325984, \n    +0.0010437094356, +0.0010377070948, +0.0010315651639, +0.0010252836440, \n    +0.0010191417131, +0.0010139769075, +0.0010100684063, +0.0010060203162, \n    +0.0010008555105, +0.0009949927588, +0.0009885716499, +0.0009822901300, \n    +0.0009761481991, +0.0009707042155, +0.0009653998208, +0.0009598162471, \n    +0.0009540930843, +0.0009482303326, +0.0009425071698, +0.0009367840070, \n    +0.0009320379696, +0.0009286878255, +0.0009250585035, +0.0009204520550, \n    +0.0009148684824, +0.0009090057307, +0.0009031429778, +0.0008979781733, \n    +0.0008929529567, +0.0008875089731, +0.0008820649895, +0.0008764814157, \n    +0.0008710374321, +0.0008657330375, +0.0008612661792, +0.0008581952131, \n    +0.0008551242482, +0.0008506573899, +0.0008454925843, +0.0008399090105, \n    +0.0008343254379, +0.0008290210433, +0.0008244145948, +0.0008198081475, \n    +0.0008149225199, +0.0008098973044, +0.0008047324988, +0.0007997072834, \n    +0.0007948216569, +0.0007907735656, +0.0007879817799, +0.0007851899930, \n    +0.0007812814918, +0.0007763958642, +0.0007710914696, +0.0007660662541, \n    +0.0007617389848, +0.0007572721265, +0.0007526656780, +0.0007477800515, \n    +0.0007428944251, +0.0007381483876, +0.0007334023501, +0.0007287959028, \n    +0.0007251665796, +0.0007227935609, +0.0007204205422, +0.0007167912201, \n    +0.0007121847717, +0.0007072991452, +0.0007025531077, +0.0006983654286, \n    +0.0006943173372, +0.0006899900679, +0.0006855232096, +0.0006809167611, \n    +0.0006764499028, +0.0006721226335, +0.0006676557752, +0.0006634680948, \n    +0.0006601179508, +0.0006581637002, +0.0006560698607, +0.0006527197166, \n    +0.0006488112155, +0.0006449027143, +0.0006408546230, +0.0006366669438, \n    +0.0006320604953, +0.0006275936370, +0.0006232663677, +0.0006189390984, \n    +0.0006148910070, +0.0006108429169, +0.0006069344157, +0.0006038634508, \n    +0.0006023279672, +0.0006007924848, +0.0005977215199, +0.0005940921967, \n    +0.0005903232857, +0.0005864147834, +0.0005822271042, +0.0005778998349, \n    +0.0005735725656, +0.0005693848852, +0.0005653367951, +0.0005614282939, \n    +0.0005576593817, +0.0005538904696, +0.0005502611464, +0.0005474693607, \n    +0.0005460734672, +0.0005445379848, +0.0005420253759, +0.0005389544110, \n    +0.0005356042670, +0.0005316957658, +0.0005275080855, +0.0005233204063, \n    +0.0005194119040, +0.0005155034028, +0.0005117344906, +0.0005081051686, \n    +0.0005047550246, +0.0005012652916, +0.0004977755585, +0.0004952629496, \n    +0.0004941462354, +0.0004928899309, +0.0004906565023, +0.0004878647155, \n    +0.0004846541604, +0.0004808852494, +0.0004769767471, +0.0004730682459, \n    +0.0004692993337, +0.0004656700117, +0.0004621802787, +0.0004588301347, \n    +0.0004554799906, +0.0004524090246, +0.0004491984707, +0.0004469650410, \n    +0.0004459879157, +0.0004452899696, +0.0004437544859, +0.0004412418782, \n    +0.0004377521452, +0.0004339832330, +0.0004300747319, +0.0004263058197, \n    +0.0004226764977, +0.0004191867646, +0.0004159762096, +0.0004127656546, \n    +0.0004096946897, +0.0004067633138, +0.0004036923478, +0.0004007609719, \n    +0.0003988067213, +0.0003983879532, +0.0003982483642, +0.0003968524707, \n    +0.0003940606838, +0.0003904313618, +0.0003868020386, +0.0003830331276, \n    +0.0003795433934, +0.0003761932494, +0.0003731222845, +0.0003701909087, \n    +0.0003671199438, +0.0003643281569, +0.0003615363700, +0.0003588841721, \n    +0.0003569299215, +0.0003567903326, +0.0003569299215, +0.0003556736183, \n    +0.0003530214204, +0.0003496712763, +0.0003460419543, +0.0003426918103, \n    +0.0003393416663, +0.0003362707014, +0.0003333393244, +0.0003305475386, \n    +0.0003277557518, +0.0003251035539, +0.0003225909461, +0.0003200783384, \n    +0.0003175657307, +0.0003161698372, +0.0003165886054, +0.0003168677834, \n    +0.0003153323009, +0.0003126801042, +0.0003093299602, +0.0003058402260, \n    +0.0003026296721, +0.0002995587061, +0.0002966273302, +0.0002938355445, \n    +0.0002913229356, +0.0002888103279, +0.0002862977201, +0.0002839247014, \n    +0.0002815516827, +0.0002791786639, +0.0002780619496, +0.0002787598958, \n    +0.0002791786639, +0.0002777827705, +0.0002751305738, +0.0002720596077, \n    +0.0002688490539, +0.0002656384988, +0.0002628467119, +0.0002600549251, \n    +0.0002575423173, +0.0002550297096, +0.0002527962799, +0.0002504232611, \n    +0.0002483294215, +0.0002460959918, +0.0002441417412, +0.0002427458489, \n    +0.0002421874906, +0.0002424666698, +0.0002423270808, +0.0002407915972, \n    +0.0002382789895, +0.0002352080246, +0.0002322766487, +0.0002294848618, \n    +0.0002268326651, +0.0002243200562, +0.0002219470375, +0.0002198531979, \n    +0.0002176197681, +0.0002156655176, +0.0002135716780, +0.0002118966066, \n    +0.0002106403021, +0.0002102215340, +0.0002107798911, +0.0002107798911, \n    +0.0002093839977, +0.0002070109789, +0.0002042191932, +0.0002014274063, \n    +0.0001986356194, +0.0001962626007, +0.0001938895820, +0.0001917957424, \n    +0.0001897019016, +0.0001877476511, +0.0001859329906, +0.0001839787400, \n    +0.0001825828466, +0.0001814661311, +0.0001803494169, +0.0001799306487, \n    +0.0001813265422, +0.0001823036674, +0.0001811869532, +0.0001789535234, \n    +0.0001761617365, +0.0001732303607, +0.0001704385749, +0.0001679259660, \n    +0.0001656925375, +0.0001635986967, +0.0001616444461, +0.0001598297857, \n    +0.0001580151241, +0.0001563400515, +0.0001549441581, +0.0001541066230, \n    +0.0001532690867, +0.0001527107295, +0.0001534086756, +0.0001536878548, \n    +0.0001525711393, +0.0001506168888, +0.0001481042810, +0.0001457312623, \n    +0.0001434978337, +0.0001414039930, +0.0001393101534, +0.0001376350808, \n    +0.0001358204204, +0.0001342849379, +0.0001327494543, +0.0001314931511, \n    +0.0001307952037, +0.0001299576686, +0.0001288409532, +0.0001273054707, \n    +0.0001264679344, +0.0001270262916, +0.0001275846499, +0.0001267471136, \n    +0.0001249324520, +0.0001228386124, +0.0001206051827, +0.0001183717541, \n    +0.0001165570925, +0.0001147424309, +0.0001130673595, +0.0001115318759, \n    +0.0001101359824, +0.0001090192681, +0.0001087400902, +0.0001083213220, \n    +0.0001073441967, +0.0001059483033, +0.0001042732307, +0.0001035752845, \n    +0.0001042732307, +0.0001046919988, +0.0001039940527, +0.0001024585703, \n    +0.0001005043185, +0.0000984104789, +0.0000964562283, +0.0000946415667, \n    +0.0000929664953, +0.0000914310129, +0.0000900351194, +0.0000890579941, \n    +0.0000884996370, +0.0000879412787, +0.0000871037436, +0.0000858474391, \n    +0.0000844515457, +0.0000830556522, +0.0000826368841, +0.0000836140094, \n    +0.0000843119567, +0.0000838931885, +0.0000824972951, +0.0000806826335, \n    +0.0000787283829, +0.0000769137225, +0.0000752386499, +0.0000737031674, \n    +0.0000724468630, +0.0000710509696, +0.0000702134344, +0.0000697946663, \n    +0.0000693758981, +0.0000686779508, +0.0000675612365, +0.0000661653431, \n    +0.0000650486288, +0.0000646298607, +0.0000657465749\n};\n"
  },
  {
    "path": "impulses/04-fender-68-vibrolux-sm57.h",
    "content": "float fender_68_vibrolux_sm57[] = {\n    +0.0000000000000, +0.0000061913321, +0.0000061913321, +0.0000000000000, \n    +0.0000000000000, -0.0000183742760, -0.0000730976633, -0.0000974635510, \n    -0.0000671060515, -0.0000183742760, +0.0000487317755, +0.0001402037148, \n    +0.0001461953265, +0.0001036548832, +0.0000427401638, -0.0000487317755, \n    -0.0001036548832, -0.0000974635510, -0.0001523866587, -0.0002316756541, \n    -0.0002133013781, -0.0001096464949, +0.0000183742760, +0.0002133013781, \n    +0.0003475134811, +0.0002925903735, +0.0001523866587, +0.0000305572199, \n    -0.0001096464949, -0.0001829438786, -0.0001523866587, -0.0000974635510, \n    -0.0001158378270, -0.0000974635510, -0.0000243658878, +0.0000792889954, \n    +0.0002438585980, +0.0003656880367, +0.0003047733174, +0.0001340123827, \n    -0.0000609147194, -0.0002560415418, -0.0003413221490, -0.0002498502097, \n    -0.0001280207709, -0.0001158378270, -0.0000792889954, +0.0000121829439, \n    +0.0000730976633, +0.0002073097663, +0.0003656880367, +0.0003107649291, \n    +0.0000852806071, -0.0001280207709, -0.0003535050929, -0.0004631515878, \n    -0.0002863990413, -0.0000243658878, +0.0000792889954, +0.0001340123827, \n    +0.0001951268224, +0.0002376672658, +0.0003596964250, +0.0004387857000, \n    +0.0003229478730, +0.0000671060515, -0.0001951268224, -0.0005118833633, \n    -0.0006582784102, -0.0003778709806, +0.0000609147194, +0.0002254843219, \n    +0.0003291392051, +0.0003475134811, +0.0002254843219, +0.0001402037148, \n    +0.0002804074296, +0.0001280207709, -0.0001705612143, -0.0005058917515, \n    -0.0006339125225, -0.0008228480128, -0.0003778709806, +0.0000305572199, \n    +0.0006764529658, +0.0005058917515, +0.0008715797883, -0.0002925903735, \n    +0.0007070101857, -0.0001158378270, -0.0003535050929, +0.0006095466347, \n    -0.0003596964250, -0.0009386858398, -0.0009508687837, -0.0001705612143, \n    +0.0005546235271, +0.0012067106052, +0.0010239664470, +0.0011214299980, \n    +0.0002254843219, +0.0001280207709, -0.0003656880367, -0.0002438585980, \n    -0.0004449770322, -0.0004815258638, -0.0009690433393, -0.0013652885960, \n    -0.0006826442980, +0.0009265028959, +0.0019320950669, +0.0019015378470, \n    +0.0010970641102, -0.0001645696026, -0.0009203115638, -0.0006033553026, \n    -0.0006460954663, -0.0010848811664, -0.0004693429199, -0.0004022368684, \n    -0.0014933093669, -0.0022552426603, +0.0010726982225, +0.0125190732974, \n    +0.0051258238466, -0.0314317954863, -0.0373013780707, +0.0362652286798, \n    +0.1530511284202, +0.1628701817456, -0.0260621130417, -0.1997020171760, \n    -0.1606942280807, -0.0844216097464, -0.0949780307569, -0.0449870181746, \n    +0.0905592170961, +0.1607551428001, +0.1115320551228, +0.0124337926902, \n    -0.0394711404034, -0.0241971240264, -0.0250015977631, -0.0405194727382, \n    -0.0221551827442, +0.0141404034352, +0.0177485520272, -0.0056317155982, \n    -0.0091364090274, +0.0046442979828, +0.0022184941082, -0.0105198721789, \n    -0.0022246854404, +0.0198270421410, +0.0181142400639, -0.0172488516077, \n    -0.0203023766727, +0.0083744757340, +0.0245628120631, +0.0209790293589, \n    +0.0021881366087, -0.0257635310565, -0.0325044937088, -0.0036265228680, \n    +0.0255624126223, +0.0260621130417, +0.0148352306771, +0.0107821050529, \n    -0.0041751547833, -0.0144451767525, +0.0067531455962, +0.0327727181945, \n    +0.0328336329139, +0.0142927900939, -0.0124337926902, -0.0314927102057, \n    -0.0242458558019, -0.0071493908528, +0.0106113441182, +0.0287499500699, \n    +0.0182666267226, -0.0132079089275, -0.0200403435191, -0.0085999600559, \n    -0.0060461354104, +0.0020906730577, +0.0184799281007, +0.0230635110845, \n    +0.0064789294987, -0.0109770321550, -0.0128665867785, -0.0016335130817, \n    +0.0088254443779, +0.0131589774316, +0.0150728979429, +0.0108368284402, \n    -0.0038703814659, -0.0179802276812, -0.0205034951069, -0.0130433393249, \n    -0.0006948272419, +0.0103553025764, +0.0109770321550, +0.0042907928900, \n    +0.0000792889954, -0.0025416417016, -0.0053818653885, -0.0022674256042, \n    +0.0040531256241, +0.0073139604554, +0.0078625923707, +0.0063752746155, \n    +0.0021697623327, -0.0027731176353, -0.0044859197124, -0.0048699820252, \n    -0.0055220691033, -0.0016822448572, +0.0081733572998, +0.0157982824046, \n    +0.0130980627122, +0.0014933093669, -0.0105260635111, -0.0152009187138, \n    -0.0122508488117, -0.0048394248053, +0.0038703814659, +0.0091607749151, \n    +0.0067287797084, +0.0008166566806, -0.0017126023567, +0.0003656880367, \n    +0.0036081485920, +0.0039678450170, +0.0006948272419, -0.0029560615139, \n    -0.0063083682844, -0.0069298981426, -0.0014202117036, +0.0067593369283, \n    +0.0093618933493, +0.0052356700619, -0.0015114839225, -0.0080515278610, \n    -0.0125799880168, -0.0111294188137, -0.0024319952067, +0.0069544637507, \n    +0.0091913321350, +0.0040287597364, -0.0029500699021, -0.0063692830038, \n    -0.0060217695227, -0.0054062312762, -0.0040409426802, +0.0001767525464, \n    +0.0038092670262, +0.0035715997603, +0.0016760535251, +0.0001829438786, \n    -0.0009265028959, -0.0026452965848, -0.0039800279609, -0.0031206311164, \n    -0.0007741162373, -0.0000730976633, -0.0014383862592, -0.0025416417016, \n    -0.0028158577991, -0.0033826642700, -0.0037727181945, -0.0035899740363, \n    -0.0021332135011, +0.0012372678250, +0.0037970840823, +0.0031390053925, \n    +0.0005851807470, -0.0024441781506, -0.0044371879369, -0.0038398242461, \n    -0.0011823447174, +0.0011032554424, +0.0018040742960, +0.0008837627322, \n    -0.0019992011184, -0.0053209506691, -0.0064607549431, -0.0041689634512, \n    -0.0001767525464, +0.0021453964450, +0.0016700619133, +0.0013531056521, \n    +0.0017737167965, +0.0013347313761, +0.0005180746954, -0.0003962452566, \n    -0.0025050928700, -0.0039984022369, -0.0032668264430, -0.0018771719593, \n    -0.0006033553026, +0.0008350309567, +0.0012800079888, +0.0000000000000, \n    -0.0009021370082, -0.0011823447174, -0.0016029558618, -0.0013896544837, \n    +0.0000792889954, +0.0001402037148, -0.0020417415618, -0.0033339324945, \n    -0.0014080287597, +0.0013225484322, +0.0016395046934, -0.0002804074296, \n    -0.0020539245057, -0.0022796085480, -0.0011154383863, +0.0001461953265, \n    +0.0003413221490, -0.0006460954663, -0.0016456960256, -0.0007862991811, \n    +0.0007375674056, +0.0013103654883, +0.0010667066107, +0.0001645696026, \n    -0.0007375674056, +0.0001583782704, +0.0015785899740, +0.0014445775914, \n    -0.0004022368684, -0.0019930097863, -0.0025903734771, -0.0014445775914, \n    +0.0007741162373, +0.0012981825444, +0.0003962452566, +0.0001461953265, \n    +0.0003535050929, +0.0006826442980, +0.0013958458159, +0.0018589974036, \n    +0.0017004194128, +0.0003596964250, -0.0011032554424, -0.0006520870781, \n    +0.0006582784102, +0.0002316756541, -0.0004875174755, +0.0005546235271, \n    +0.0018955462353, +0.0017309766327, +0.0014627521470, +0.0014933093669, \n    +0.0002073097663, -0.0016638705812, -0.0014383862592, -0.0002985819852, \n    -0.0005851807470, -0.0007497503495, +0.0005302576393, +0.0020906730577, \n    +0.0027183942481, +0.0021941282205, +0.0012007189934, +0.0007922907929, \n    +0.0009324945077, +0.0009752346715, +0.0005851807470, -0.0002863990413, \n    -0.0008715797883, -0.0006704613541, +0.0000061913321, -0.0000305572199, \n    -0.0008288396245, -0.0008532055123, -0.0003107649291, -0.0003351308169, \n    -0.0000305572199, +0.0013469143200, +0.0020906730577, +0.0019992011184, \n    +0.0014383862592, +0.0003718793689, -0.0003291392051, -0.0001158378270, \n    +0.0001158378270, -0.0000792889954, -0.0003291392051, +0.0001461953265, \n    +0.0007679249051, +0.0007191931296, +0.0009508687837, +0.0011457958858, \n    +0.0008472139005, +0.0005424405832, +0.0008837627322, +0.0015664070302, \n    +0.0014080287597, +0.0004753345317, -0.0002438585980, -0.0009081286199, \n    -0.0014993009786, -0.0014811264230, -0.0008837627322, -0.0004206111444, \n    -0.0003535050929, -0.0002985819852, -0.0001340123827, +0.0002011184342, \n    +0.0012190932694, +0.0021150389455, +0.0025232674256, +0.0025660075894, \n    +0.0010483323347, -0.0008350309567, -0.0004327940883, +0.0003475134811, \n    -0.0006155382465, -0.0017187936888, -0.0013165568205, -0.0000730976633, \n    +0.0001523866587, -0.0002498502097, +0.0000730976633, +0.0011092470541, \n    +0.0015969642500, +0.0005180746954, -0.0007010185740, -0.0004022368684, \n    -0.0001218294388, -0.0002742160975, +0.0001889354903, +0.0011032554424, \n    +0.0021819452766, +0.0022125024965, +0.0005789894148, -0.0009630517276, \n    -0.0017493509087, -0.0021759536649, -0.0018162572399, -0.0000183742760, \n    +0.0015542240863, +0.0007497503495, -0.0007313760735, -0.0007070101857, \n    +0.0000305572199, +0.0005058917515, +0.0010299580587, +0.0011701617735, \n    +0.0003535050929, -0.0007922907929, -0.0012434591572, -0.0010848811664, \n    -0.0002863990413, +0.0008228480128, +0.0009324945077, -0.0004509686439, \n    -0.0017737167965, -0.0014567605353, -0.0006704613541, -0.0006642700220, \n    -0.0007679249051, -0.0004084282005, +0.0003351308169, +0.0006399041342, \n    -0.0000061913321, -0.0004571599760, -0.0001036548832, +0.0002682244857, \n    +0.0002682244857, +0.0001096464949, +0.0004084282005, +0.0003107649291, \n    -0.0002376672658, -0.0000914719393, +0.0001340123827, -0.0001461953265, \n    -0.0002498502097, -0.0000061913321, +0.0008837627322, +0.0017615338526, \n    +0.0012678250449, +0.0001583782704, -0.0010910724985, -0.0022977831037, \n    -0.0026940283603, -0.0022490513281, -0.0008593968444, +0.0007313760735, \n    +0.0010177751148, +0.0004509686439, +0.0003778709806, +0.0009203115638, \n    +0.0012129019373, +0.0006948272419, +0.0000243658878, -0.0002438585980, \n    +0.0000000000000, +0.0002985819852, -0.0000609147194, -0.0005851807470, \n    -0.0010788895546, -0.0014323946475, -0.0009508687837, +0.0002438585980, \n    +0.0010117835031, +0.0011336129419, +0.0008653884562, +0.0005729978031, \n    +0.0003596964250, -0.0001461953265, -0.0001829438786, +0.0005180746954, \n    +0.0005668064709, -0.0000427401638, -0.0001767525464, -0.0000549231076, \n    -0.0001461953265, -0.0001523866587, -0.0001402037148, +0.0000000000000, \n    +0.0002620331536, +0.0002498502097, +0.0004449770322, +0.0009386858398, \n    +0.0005851807470, -0.0003962452566, -0.0010970641102, -0.0017797084082, \n    -0.0023221489914, -0.0019015378470, -0.0004997004194, +0.0009081286199, \n    +0.0015664070302, +0.0017309766327, +0.0019442780108, +0.0017371679648, \n    +0.0006520870781, -0.0000549231076, +0.0002133013781, +0.0006033553026, \n    +0.0004997004194, +0.0002925903735, +0.0004997004194, +0.0009630517276, \n    +0.0006217295786, -0.0002985819852, -0.0006582784102, -0.0006642700220, \n    -0.0007191931296, -0.0004937088077, -0.0003962452566, -0.0005364489714, \n    -0.0002620331536, +0.0002073097663, +0.0002682244857, +0.0002073097663, \n    +0.0004266027561, +0.0009324945077, +0.0012616337128, +0.0011945276613, \n    +0.0009630517276, +0.0012250848812, +0.0011945276613, +0.0000000000000, \n    -0.0009996005592, -0.0008777711204, -0.0007313760735, -0.0004327940883, \n    +0.0004875174755, +0.0007557419613, +0.0000305572199, -0.0006277211903, \n    -0.0003840623128, +0.0002376672658, +0.0005486319153, +0.0002194927102, \n    +0.0001583782704, +0.0005180746954, +0.0002073097663, -0.0003535050929, \n    -0.0000365488316, +0.0004266027561, +0.0004631515878, +0.0005242660276, \n    +0.0007010185740, +0.0009143199521, +0.0010423407230, +0.0006095466347, \n    -0.0000730976633, -0.0005486319153, -0.0005546235271, -0.0001523866587, \n    +0.0001705612143, +0.0001951268224, +0.0001461953265, +0.0000974635510, \n    +0.0000487317755, +0.0001218294388, +0.0001829438786, +0.0004022368684, \n    +0.0007191931296, +0.0007191931296, +0.0003413221490, +0.0000487317755, \n    +0.0002073097663, +0.0005118833633, +0.0003656880367, -0.0002011184342, \n    -0.0003900539245, +0.0000121829439, +0.0001829438786, -0.0002011184342, \n    -0.0003413221490, +0.0000305572199, +0.0005242660276, +0.0004144198123, \n    -0.0002620331536, -0.0005973636908, -0.0003229478730, +0.0002011184342, \n    +0.0002620331536, +0.0000730976633, +0.0004815258638, +0.0012007189934, \n    +0.0008410225684, -0.0002316756541, -0.0006217295786, +0.0001583782704, \n    +0.0007191931296, +0.0002073097663, -0.0002376672658, -0.0000427401638, \n    +0.0000549231076, +0.0000121829439, -0.0000365488316, +0.0000000000000, \n    -0.0000365488316, -0.0001096464949, +0.0000121829439, -0.0000365488316, \n    -0.0003778709806, -0.0003840623128, -0.0000061913321, +0.0005424405832, \n    +0.0011092470541, +0.0012738166567, +0.0011579788296, +0.0008044737368, \n    -0.0004631515878, -0.0020417415618, -0.0022977831037, -0.0015542240863, \n    -0.0008593968444, +0.0000000000000, +0.0007922907929, +0.0008410225684, \n    +0.0006033553026, +0.0003900539245, +0.0004997004194, +0.0008044737368, \n    +0.0004084282005, -0.0006095466347, -0.0016395046934, -0.0019015378470, \n    -0.0013774715398, -0.0002863990413, +0.0008837627322, +0.0012250848812, \n    +0.0005911723587, -0.0000243658878, -0.0003535050929, -0.0002498502097, \n    +0.0000914719393, +0.0000061913321, -0.0002863990413, -0.0003169562612, \n    -0.0001096464949, +0.0000427401638, -0.0002742160975, -0.0012556421011, \n    -0.0018468144598, -0.0010910724985, +0.0002985819852, +0.0013834631516, \n    +0.0015725983623, +0.0008653884562, +0.0000730976633, -0.0003535050929, \n    -0.0006642700220, -0.0008777711204, -0.0011457958858, -0.0012616337128, \n    -0.0008044737368, -0.0001583782704, +0.0007313760735, +0.0011214299980, \n    +0.0003596964250, -0.0006277211903, -0.0014140203715, -0.0019382863990, \n    -0.0012800079888, +0.0001951268224, +0.0008288396245, +0.0005302576393, \n    +0.0004327940883, +0.0001767525464, -0.0005608148592, -0.0007191931296, \n    -0.0004449770322, -0.0004022368684, -0.0003778709806, -0.0002438585980, \n    -0.0001461953265, -0.0001340123827, -0.0002560415418, -0.0003778709806, \n    -0.0005180746954, -0.0006095466347, -0.0004084282005, -0.0001705612143, \n    -0.0002376672658, -0.0002376672658, -0.0001036548832, -0.0001096464949, \n    +0.0000609147194, +0.0000121829439, -0.0007132015179, -0.0014933093669, \n    -0.0014933093669, -0.0009081286199, -0.0002863990413, +0.0002620331536, \n    +0.0008106650689, +0.0008899540643, +0.0002498502097, -0.0002620331536, \n    -0.0002073097663, +0.0001829438786, +0.0002620331536, -0.0001218294388, \n    -0.0004449770322, -0.0003718793689, -0.0003047733174, -0.0002011184342, \n    +0.0001158378270, +0.0004144198123, +0.0004449770322, +0.0002804074296, \n    -0.0001218294388, -0.0005364489714, -0.0005424405832, -0.0004022368684, \n    -0.0004327940883, -0.0003900539245, -0.0000183742760, +0.0003229478730, \n    +0.0006460954663, +0.0007862991811, +0.0004753345317, +0.0002316756541, \n    +0.0001218294388, -0.0002376672658, -0.0003351308169, -0.0000305572199, \n    +0.0001036548832, -0.0000852806071, -0.0005118833633, -0.0005058917515, \n    -0.0000121829439, +0.0003475134811, +0.0003475134811, +0.0003047733174, \n    +0.0004022368684, +0.0003535050929, -0.0001280207709, -0.0006033553026, \n    -0.0005364489714, -0.0002863990413, -0.0000730976633, +0.0002194927102, \n    +0.0002742160975, +0.0000730976633, +0.0003413221490, +0.0006704613541, \n    +0.0003718793689, -0.0004327940883, -0.0007801078490, -0.0002682244857, \n    +0.0002194927102, +0.0002194927102, +0.0006460954663, +0.0012434591572, \n    +0.0010177751148, +0.0001951268224, -0.0006217295786, -0.0009630517276, \n    -0.0004387857000, +0.0003596964250, +0.0008106650689, +0.0008106650689, \n    +0.0003718793689, -0.0001402037148, -0.0005546235271, -0.0007313760735, \n    -0.0004875174755, -0.0001645696026, +0.0002194927102, +0.0008777711204, \n    +0.0011579788296, +0.0005911723587, -0.0001889354903, -0.0004387857000, \n    -0.0001340123827, +0.0000974635510, +0.0000487317755, +0.0002011184342, \n    +0.0004631515878, +0.0002498502097, -0.0001705612143, -0.0002498502097, \n    +0.0000792889954, +0.0003778709806, +0.0002073097663, -0.0000305572199, \n    -0.0001280207709, -0.0003656880367, -0.0003656880367, +0.0000183742760, \n    +0.0003656880367, +0.0002438585980, -0.0001096464949, -0.0002742160975, \n    -0.0000792889954, +0.0001096464949, +0.0001402037148, +0.0001583782704, \n    +0.0002925903735, +0.0005242660276, +0.0005486319153, +0.0000730976633, \n    -0.0003778709806, -0.0001402037148, +0.0002376672658, +0.0001583782704, \n    -0.0001889354903, -0.0002438585980, -0.0000914719393, -0.0002498502097, \n    -0.0003778709806, -0.0001829438786, +0.0001218294388, +0.0002133013781, \n    +0.0000730976633, +0.0000792889954, -0.0000183742760, -0.0004266027561, \n    -0.0002682244857, +0.0002863990413, +0.0004875174755, +0.0004693429199, \n    +0.0002254843219, -0.0000792889954, -0.0000121829439, +0.0000183742760, \n    -0.0003169562612, -0.0007375674056, -0.0008350309567, -0.0004206111444, \n    +0.0002438585980, +0.0007313760735, +0.0008106650689, +0.0006095466347, \n    +0.0002925903735, -0.0003351308169, -0.0008593968444, -0.0007375674056, \n    -0.0000852806071, +0.0006886359097, +0.0009690433393, +0.0005851807470, \n    +0.0001829438786, -0.0001280207709, -0.0004206111444, -0.0004084282005, \n    -0.0001096464949, +0.0001951268224, +0.0002194927102, +0.0000792889954, \n    -0.0000792889954, -0.0002560415418, -0.0003229478730, -0.0001523866587, \n    +0.0001096464949, +0.0003778709806, +0.0003778709806, -0.0002254843219, \n    -0.0008593968444, -0.0008044737368, -0.0003107649291, +0.0000792889954, \n    +0.0003291392051, +0.0003656880367, +0.0001583782704, -0.0000792889954, \n    -0.0002254843219, -0.0001889354903, +0.0000671060515, +0.0002376672658, \n    +0.0001158378270, +0.0000061913321, -0.0000365488316, -0.0000730976633, \n    -0.0002011184342, -0.0006095466347, -0.0008899540643, -0.0007619332934, \n    -0.0004327940883, +0.0000183742760, +0.0004509686439, +0.0004571599760, \n    +0.0002925903735, +0.0002804074296, +0.0003047733174, +0.0001036548832, \n    -0.0000427401638, -0.0000487317755, +0.0000061913321, +0.0000549231076, \n    -0.0001583782704, -0.0002682244857, +0.0000792889954, +0.0002438585980, \n    -0.0000305572199, -0.0003047733174, -0.0002133013781, -0.0000183742760, \n    -0.0000487317755, -0.0002254843219, -0.0001280207709, +0.0000792889954, \n    +0.0000000000000, -0.0001218294388, +0.0000549231076, +0.0001829438786, \n    +0.0000549231076, -0.0000730976633, -0.0001829438786, -0.0002742160975, \n    -0.0002804074296, -0.0000609147194, +0.0002133013781, +0.0002438585980, \n    +0.0001829438786, +0.0001889354903, +0.0003778709806, +0.0004327940883, \n    +0.0001829438786, +0.0000243658878, -0.0000549231076, -0.0002985819852, \n    -0.0006217295786, -0.0007984821250, -0.0005118833633, +0.0000609147194, \n    +0.0004631515878, +0.0005729978031, +0.0004387857000, +0.0003107649291, \n    +0.0002376672658, +0.0001461953265, +0.0001218294388, +0.0002498502097, \n    +0.0003596964250, +0.0004266027561, +0.0004387857000, +0.0002316756541, \n    -0.0003475134811, -0.0009934092271, -0.0010483323347, -0.0002863990413, \n    +0.0006095466347, +0.0009324945077, +0.0006217295786, +0.0001218294388, \n    -0.0002376672658, -0.0002316756541, -0.0001218294388, -0.0001096464949, \n    -0.0001829438786, -0.0001523866587, +0.0000427401638, +0.0002804074296, \n    +0.0003778709806, +0.0002804074296, +0.0001767525464, +0.0001096464949, \n    -0.0001583782704, -0.0003718793689, -0.0001158378270, +0.0001705612143, \n    +0.0001889354903, +0.0000427401638, -0.0000914719393, -0.0001767525464, \n    -0.0002254843219, -0.0000852806071, -0.0000730976633, -0.0002194927102, \n    -0.0001402037148, +0.0000730976633, +0.0000852806071, -0.0000305572199, \n    -0.0001705612143, -0.0000852806071, +0.0003107649291, +0.0008044737368, \n    +0.0009690433393, +0.0007557419613, +0.0003535050929, -0.0000427401638, \n    -0.0002316756541, -0.0003229478730, -0.0004449770322, -0.0002925903735, \n    +0.0001583782704, +0.0003778709806, +0.0000671060515, -0.0002620331536, \n    -0.0003107649291, -0.0002438585980, -0.0000974635510, +0.0002498502097, \n    +0.0005364489714, +0.0004449770322, +0.0002376672658, +0.0002316756541, \n    +0.0002133013781, -0.0000730976633, -0.0003351308169, -0.0001523866587, \n    +0.0003596964250, +0.0005302576393, +0.0000549231076, -0.0002254843219, \n    +0.0000305572199, +0.0000609147194, -0.0003718793689, -0.0005789894148, \n    -0.0002742160975, +0.0001461953265, +0.0003169562612, +0.0002316756541, \n    -0.0000792889954, -0.0003962452566, -0.0004022368684, +0.0000000000000, \n    +0.0005058917515, +0.0006582784102, +0.0003047733174, -0.0004449770322, \n    -0.0011457958858, -0.0008532055123, +0.0002804074296, +0.0010667066107, \n    +0.0010239664470, +0.0006399041342, +0.0002742160975, -0.0002438585980, \n    -0.0008593968444, -0.0011092470541, -0.0007375674056, -0.0001705612143, \n    +0.0001523866587, +0.0003107649291, +0.0006095466347, +0.0008472139005, \n    +0.0005911723587, -0.0001402037148, -0.0005302576393, -0.0001402037148, \n    +0.0002682244857, +0.0000914719393, -0.0000792889954, +0.0001036548832, \n    +0.0000974635510, +0.0000121829439, +0.0002863990413, +0.0006033553026, \n    +0.0004693429199, +0.0000609147194, -0.0002742160975, -0.0003778709806, \n    -0.0003351308169, -0.0001705612143, +0.0000487317755, +0.0002560415418, \n    +0.0000914719393, -0.0005180746954, -0.0007435590174, -0.0003351308169, \n    +0.0002194927102, +0.0006033553026, +0.0004937088077, +0.0000974635510, \n    -0.0002254843219, -0.0004509686439, -0.0004571599760, -0.0001951268224, \n    +0.0002560415418, +0.0005973636908, +0.0002985819852, -0.0002073097663, \n    -0.0001158378270, +0.0002254843219, +0.0000792889954, -0.0005424405832, \n    -0.0008288396245, -0.0004997004194, -0.0000852806071, +0.0003351308169, \n    +0.0008166566806, +0.0010055921710, +0.0007010185740, +0.0001951268224, \n    -0.0000305572199, -0.0002620331536, -0.0008593968444, -0.0010483323347, \n    -0.0001705612143, +0.0009690433393, +0.0012616337128, +0.0005608148592, \n    -0.0004144198123, -0.0009446774516, -0.0008044737368, -0.0005242660276, \n    -0.0001036548832, +0.0004753345317, +0.0007191931296, +0.0006217295786, \n    +0.0003475134811, -0.0004387857000, -0.0009996005592, -0.0007619332934, \n    -0.0001889354903, +0.0003107649291, +0.0005546235271, +0.0005851807470, \n    +0.0005668064709, +0.0003900539245, -0.0000427401638, -0.0005424405832, \n    -0.0005973636908, -0.0001036548832, +0.0002073097663, +0.0000852806071, \n    -0.0000792889954, -0.0002011184342, -0.0001889354903, +0.0001158378270, \n    +0.0007801078490, +0.0011092470541, +0.0002438585980, -0.0012494507689, \n    -0.0017187936888, -0.0007070101857, +0.0005302576393, +0.0009265028959, \n    +0.0005608148592, +0.0001645696026, -0.0000974635510, -0.0001705612143, \n    +0.0001461953265, +0.0006460954663, +0.0006704613541, -0.0000549231076, \n    -0.0010299580587, -0.0016091471939, -0.0013896544837, -0.0005302576393, \n    +0.0004753345317, +0.0009874176153, +0.0010726982225, +0.0009996005592, \n    +0.0007497503495, +0.0001158378270, -0.0005486319153, -0.0009203115638, \n    -0.0010055921710, -0.0006826442980, -0.0002316756541, +0.0000365488316, \n    +0.0001767525464, +0.0001218294388, -0.0001829438786, -0.0003840623128, \n    +0.0000183742760, +0.0007741162373, +0.0008532055123, +0.0001523866587, \n    -0.0002985819852, -0.0002925903735, -0.0002376672658, -0.0001218294388, \n    -0.0000671060515, -0.0003840623128, -0.0009446774516, -0.0011945276613, \n    -0.0007801078490, +0.0001402037148, +0.0009690433393, +0.0011336129419, \n    +0.0004693429199, -0.0003900539245, -0.0006642700220, -0.0005486319153, \n    -0.0003900539245, +0.0000000000000, +0.0004144198123, +0.0005608148592, \n    +0.0003169562612, -0.0002620331536, -0.0005364489714, -0.0001218294388, \n    +0.0002925903735, +0.0005058917515, +0.0007070101857, +0.0007862991811, \n    +0.0005789894148, +0.0000730976633, -0.0006460954663, -0.0009934092271, \n    -0.0006886359097, -0.0003047733174, -0.0002742160975, -0.0003962452566, \n    -0.0001705612143, +0.0003778709806, +0.0006582784102, +0.0006399041342, \n    +0.0005789894148, +0.0002804074296, -0.0002498502097, -0.0007557419613, \n    -0.0008350309567, -0.0002254843219, +0.0006704613541, +0.0011579788296, \n    +0.0007862991811, -0.0001340123827, -0.0006277211903, -0.0004084282005, \n    -0.0002133013781, -0.0003413221490, -0.0002985819852, +0.0001218294388, \n    +0.0004206111444, +0.0004571599760, +0.0003413221490, -0.0000121829439, \n    -0.0003718793689, -0.0004509686439, -0.0003962452566, -0.0002376672658, \n    +0.0000000000000, +0.0002925903735, +0.0006582784102, +0.0008532055123, \n    +0.0008593968444, +0.0007497503495, +0.0003413221490, -0.0005911723587, \n    -0.0014811264230, -0.0011641701618, +0.0002925903735, +0.0014871180348, \n    +0.0014080287597, +0.0003900539245, -0.0004327940883, -0.0006764529658, \n    -0.0008837627322, -0.0009690433393, -0.0004875174755, +0.0003351308169, \n    +0.0006217295786, +0.0002316756541, +0.0001645696026, +0.0008959456761, \n    +0.0014749350909, +0.0010299580587, -0.0000487317755, -0.0008288396245, \n    -0.0011885360495, -0.0012921909327, -0.0009934092271, -0.0002316756541, \n    +0.0004875174755, +0.0006948272419, +0.0004144198123, +0.0000609147194, \n    -0.0000427401638, -0.0000549231076, -0.0004815258638, -0.0011579788296, \n    -0.0010055921710, -0.0000243658878, +0.0006277211903, +0.0004144198123, \n    +0.0000609147194, +0.0000974635510, +0.0003475134811, +0.0004084282005, \n    +0.0002011184342, +0.0000243658878, -0.0001705612143, -0.0003413221490, \n    +0.0000671060515, +0.0004997004194, +0.0004631515878, +0.0002804074296, \n    -0.0004022368684, -0.0015176752546, -0.0018955462353, -0.0012921909327, \n    -0.0004144198123, +0.0004693429199, +0.0012129019373, +0.0015664070302, \n    +0.0015969642500, +0.0012738166567, +0.0004571599760, -0.0002376672658, \n    -0.0005668064709, -0.0009874176153, -0.0012556421011, -0.0008106650689, \n    +0.0001218294388, +0.0006460954663, +0.0007497503495, +0.0009446774516, \n    +0.0010970641102, +0.0005424405832, -0.0002804074296, -0.0010726982225, \n    -0.0017797084082, -0.0017004194128, -0.0005608148592, +0.0008410225684, \n    +0.0017493509087, +0.0017737167965, +0.0008350309567, -0.0002620331536, \n    -0.0007679249051, -0.0005789894148, -0.0001645696026, -0.0001036548832, \n    -0.0002863990413, +0.0000121829439, +0.0006155382465, +0.0009812262832, \n    +0.0010299580587, +0.0006582784102, +0.0001829438786, -0.0000549231076, \n    -0.0004815258638, -0.0009874176153, -0.0009021370082, -0.0005364489714, \n    -0.0006095466347, -0.0007497503495, -0.0002133013781, +0.0004815258638, \n    +0.0005789894148, +0.0007191931296, +0.0012800079888, +0.0015480327541, \n    +0.0011823447174, +0.0003351308169, -0.0005180746954, -0.0010483323347, \n    -0.0011214299980, -0.0006886359097, -0.0000549231076, +0.0003962452566, \n    +0.0008410225684, +0.0010055921710, +0.0006399041342, +0.0000852806071, \n    -0.0002376672658, -0.0007191931296, -0.0011519872179, -0.0007191931296, \n    +0.0002498502097, +0.0008106650689, +0.0007375674056, +0.0002011184342, \n    -0.0002742160975, -0.0002925903735, -0.0003107649291, -0.0004693429199, \n    -0.0005302576393, -0.0002376672658, +0.0003413221490, +0.0007132015179, \n    +0.0007132015179, +0.0004387857000, -0.0002620331536, -0.0009324945077, \n    -0.0008593968444, -0.0004509686439, -0.0000549231076, +0.0006399041342, \n    +0.0012067106052, +0.0008288396245, -0.0000730976633, -0.0007070101857, \n    -0.0010117835031, -0.0009446774516, -0.0002925903735, +0.0005058917515, \n    +0.0009265028959, +0.0008959456761, +0.0004693429199, +0.0000183742760, \n    -0.0000792889954, +0.0000852806071, +0.0001951268224, +0.0000852806071, \n    +0.0000061913321, +0.0002742160975, +0.0004084282005, +0.0000671060515, \n    -0.0003413221490, -0.0006399041342, -0.0007557419613, -0.0004815258638, \n    -0.0002863990413, -0.0004266027561, -0.0002011184342, +0.0005546235271, \n    +0.0010970641102, +0.0010788895546, +0.0006704613541, +0.0001036548832, \n    -0.0003351308169, -0.0005424405832, -0.0005180746954, -0.0002254843219, \n    -0.0001036548832, -0.0003047733174, -0.0002742160975, +0.0000000000000, \n    +0.0002985819852, +0.0004571599760, +0.0000609147194, -0.0004631515878, \n    -0.0004631515878, -0.0003475134811, -0.0003778709806, -0.0003351308169, \n    -0.0004084282005, -0.0006399041342, -0.0006642700220, -0.0002194927102, \n    +0.0004815258638, +0.0008350309567, +0.0004937088077, -0.0001645696026, \n    -0.0005729978031, -0.0006826442980, -0.0006339125225, -0.0002742160975, \n    +0.0003596964250, +0.0006948272419, +0.0004084282005, +0.0000974635510, \n    -0.0000183742760, -0.0003351308169, -0.0006277211903, -0.0005729978031, \n    -0.0003291392051, -0.0001461953265, -0.0004266027561, -0.0007375674056, \n    -0.0004266027561, -0.0000730976633, +0.0000000000000, +0.0002620331536, \n    +0.0005851807470, +0.0004022368684, -0.0000121829439, -0.0002498502097, \n    -0.0001280207709, +0.0001218294388, +0.0002682244857, +0.0004206111444, \n    +0.0006095466347, +0.0002985819852, -0.0002560415418, -0.0003900539245, \n    -0.0001705612143, +0.0001461953265, +0.0002073097663, -0.0000914719393, \n    -0.0000792889954, +0.0003107649291, +0.0003291392051, +0.0000487317755, \n    -0.0001340123827, -0.0001523866587, -0.0001829438786, -0.0002316756541, \n    -0.0000730976633, +0.0001096464949, +0.0002682244857, +0.0004815258638, \n    +0.0004327940883, -0.0000427401638, -0.0003413221490, -0.0000427401638, \n    +0.0003596964250, +0.0002742160975, -0.0000365488316, +0.0000000000000, \n    +0.0002254843219, +0.0000427401638, -0.0004875174755, -0.0006033553026, \n    -0.0002560415418, +0.0000914719393, +0.0004144198123, +0.0005789894148, \n    +0.0004875174755, +0.0003169562612, +0.0001951268224, +0.0000121829439, \n    -0.0002011184342, -0.0001461953265, -0.0000183742760, -0.0001218294388, \n    -0.0000609147194, +0.0004266027561, +0.0009386858398, +0.0011092470541, \n    +0.0008288396245, +0.0001280207709, -0.0006642700220, -0.0010910724985, \n    -0.0010605152786, -0.0008593968444, -0.0003718793689, +0.0005118833633, \n    +0.0010726982225, +0.0007922907929, +0.0002804074296, +0.0000427401638, \n    +0.0000121829439, -0.0000852806071, -0.0001829438786, +0.0000671060515, \n    +0.0005364489714, +0.0008837627322, +0.0007801078490, +0.0002438585980, \n    -0.0000792889954, -0.0000243658878, -0.0000974635510, -0.0003718793689, \n    -0.0003778709806, -0.0001705612143, -0.0002133013781, -0.0002985819852, \n    -0.0001767525464, -0.0000121829439, +0.0000549231076, +0.0000000000000, \n    -0.0001218294388, -0.0000671060515, +0.0002316756541, +0.0006155382465, \n    +0.0006642700220, +0.0001158378270, -0.0004206111444, -0.0004206111444, \n    -0.0001889354903, -0.0001889354903, -0.0002804074296, -0.0001280207709, \n    +0.0000852806071, +0.0000427401638, -0.0000305572199, +0.0001340123827, \n    +0.0002011184342, -0.0000914719393, -0.0004266027561, -0.0004509686439, \n    -0.0001340123827, +0.0003351308169, +0.0004206111444, -0.0000852806071, \n    -0.0005486319153, -0.0006642700220, -0.0006704613541, -0.0003169562612, \n    +0.0002804074296, +0.0004509686439, +0.0003229478730, +0.0002560415418, \n    +0.0000792889954, -0.0001340123827, -0.0000914719393, +0.0001158378270, \n    +0.0000974635510, +0.0000243658878, +0.0001645696026, +0.0001645696026, \n    -0.0000549231076, -0.0001096464949, -0.0000487317755, -0.0002620331536, \n    -0.0006764529658, -0.0007557419613, -0.0003413221490, +0.0000305572199, \n    +0.0001705612143, +0.0004387857000, +0.0006764529658, +0.0006826442980, \n    +0.0005424405832, +0.0003413221490, +0.0000487317755, -0.0003291392051, \n    -0.0005973636908, -0.0004387857000, -0.0000914719393, -0.0000974635510, \n    -0.0004144198123, -0.0003962452566, +0.0000000000000, +0.0002804074296, \n    +0.0003229478730, +0.0003840623128, +0.0004693429199, +0.0002316756541, \n    -0.0002804074296, -0.0005789894148, -0.0005118833633, -0.0001645696026, \n    +0.0001767525464, +0.0001767525464, -0.0000121829439, +0.0000914719393, \n    +0.0003107649291, +0.0001583782704, -0.0000305572199, -0.0000305572199, \n    -0.0002133013781, -0.0003962452566, -0.0001583782704, +0.0002863990413, \n    +0.0006095466347, +0.0006095466347, +0.0002863990413, -0.0002376672658, \n    -0.0007010185740, -0.0007132015179, -0.0003475134811, -0.0001461953265, \n    -0.0000792889954, +0.0002011184342, +0.0005851807470, +0.0005364489714, \n    +0.0001705612143, +0.0000914719393, +0.0000974635510, -0.0001705612143, \n    -0.0003840623128, -0.0002498502097, +0.0000671060515, +0.0002804074296, \n    +0.0002073097663, -0.0000121829439, -0.0001767525464, -0.0002560415418, \n    -0.0001889354903, +0.0000852806071, +0.0002498502097, +0.0002376672658, \n    +0.0002498502097, +0.0000974635510, -0.0002438585980, -0.0004631515878, \n    -0.0003475134811, -0.0000549231076, +0.0000427401638, -0.0000305572199, \n    +0.0000974635510, +0.0003229478730, +0.0001645696026, -0.0003413221490, \n    -0.0005118833633, -0.0002985819852, -0.0002985819852, -0.0002985819852, \n    +0.0001889354903, +0.0006704613541, +0.0005364489714, -0.0000487317755, \n    -0.0005118833633, -0.0005302576393, -0.0004144198123, -0.0005180746954, \n    -0.0004327940883, +0.0000974635510, +0.0005242660276, +0.0004631515878, \n    +0.0001340123827, -0.0000974635510, -0.0001340123827, -0.0000852806071, \n    -0.0001523866587, -0.0001705612143, +0.0000852806071, +0.0004631515878, \n    +0.0004144198123, +0.0000243658878, -0.0001829438786, -0.0000730976633, \n    +0.0000609147194, -0.0000671060515, -0.0003047733174, -0.0001523866587, \n    +0.0001889354903, +0.0001523866587, -0.0001218294388, -0.0002073097663, \n    +0.0000121829439, +0.0002133013781, +0.0002316756541, +0.0002620331536, \n    +0.0003475134811, +0.0003351308169, +0.0000427401638, -0.0003291392051, \n    -0.0003656880367, -0.0001402037148, -0.0000305572199, +0.0000549231076, \n    +0.0001705612143, +0.0001340123827, +0.0001036548832, +0.0000000000000, \n    -0.0002316756541, -0.0002863990413, -0.0002316756541, -0.0003656880367, \n    -0.0004327940883, +0.0000061913321, +0.0007253844618, +0.0010483323347, \n    +0.0006704613541, +0.0000792889954, -0.0002133013781, -0.0002498502097, \n    -0.0003107649291, -0.0002682244857, -0.0000914719393, -0.0001280207709, \n    -0.0001767525464, +0.0000183742760, +0.0000852806071, +0.0000852806071, \n    +0.0003107649291, +0.0004327940883, +0.0004266027561, +0.0003107649291, \n    -0.0000974635510, -0.0004937088077, -0.0005424405832, -0.0003962452566, \n    -0.0002498502097, +0.0001705612143, +0.0006704613541, +0.0005118833633, \n    -0.0000183742760, -0.0002133013781, -0.0002742160975, -0.0003169562612, \n    -0.0000549231076, +0.0003900539245, +0.0007070101857, +0.0006033553026, \n    +0.0002073097663, -0.0000121829439, -0.0000914719393, -0.0002925903735, \n    -0.0005058917515, -0.0003840623128, +0.0001583782704, +0.0006826442980, \n    +0.0007862991811, +0.0005608148592, +0.0001705612143, -0.0002438585980, \n    -0.0003962452566, -0.0002376672658, -0.0000487317755, +0.0000243658878, \n    +0.0000365488316, -0.0000671060515, -0.0001280207709, +0.0000427401638, \n    +0.0002925903735, +0.0004144198123, +0.0004084282005, +0.0000974635510, \n    -0.0003413221490, -0.0003962452566, -0.0001036548832, +0.0000852806071, \n    +0.0000852806071, +0.0001280207709, +0.0003656880367, +0.0005118833633, \n    +0.0002742160975, -0.0000549231076, -0.0000914719393, -0.0000792889954, \n    -0.0002560415418, -0.0002254843219, +0.0000914719393, +0.0001829438786, \n    +0.0000061913321, -0.0000305572199, +0.0000487317755, +0.0000427401638, \n    -0.0000549231076, -0.0000487317755, +0.0001461953265, +0.0001829438786, \n    -0.0000243658878, -0.0000549231076, +0.0000305572199, -0.0001705612143, \n    -0.0004144198123, -0.0003413221490, -0.0001889354903, -0.0001583782704, \n    -0.0000243658878, +0.0002133013781, +0.0002742160975, +0.0002011184342, \n    +0.0003047733174, +0.0003596964250, +0.0001645696026, -0.0000914719393, \n    -0.0002620331536, -0.0003169562612, -0.0003229478730, -0.0002925903735, \n    -0.0002316756541, -0.0001461953265, +0.0000549231076, +0.0003840623128, \n    +0.0005424405832, +0.0004631515878, +0.0002376672658, -0.0000609147194, \n    -0.0002560415418, -0.0002498502097, -0.0002985819852, -0.0003840623128, \n    -0.0002133013781, +0.0000427401638, +0.0000549231076, -0.0000852806071, \n    -0.0000671060515, +0.0002804074296, +0.0004997004194, +0.0001461953265, \n    -0.0002073097663, -0.0000183742760, +0.0001889354903, -0.0001645696026, \n    -0.0006826442980, -0.0007313760735, -0.0004509686439, -0.0002011184342, \n    +0.0000183742760, +0.0002682244857, +0.0003169562612, +0.0001461953265, \n    +0.0001523866587, +0.0003656880367, +0.0003962452566, +0.0002560415418, \n    +0.0000671060515, -0.0001829438786, -0.0003413221490, -0.0003596964250, \n    -0.0002925903735, -0.0002011184342, -0.0001158378270, -0.0000730976633, \n    -0.0000549231076, -0.0000061913321, -0.0000121829439, -0.0001340123827, \n    -0.0002073097663, -0.0000914719393, +0.0001951268224, +0.0003169562612, \n    +0.0000549231076, -0.0001280207709, -0.0000671060515, -0.0000487317755, \n    -0.0000730976633, -0.0000487317755, -0.0000792889954, -0.0001523866587, \n    -0.0002073097663, -0.0002620331536, -0.0001096464949, +0.0002620331536, \n    +0.0003962452566, +0.0001705612143, -0.0000549231076, -0.0002620331536, \n    -0.0003840623128, -0.0003107649291, -0.0002133013781, -0.0002376672658, \n    -0.0001158378270, +0.0002073097663, +0.0003229478730, +0.0000852806071, \n    -0.0001523866587, -0.0002316756541, -0.0001889354903, -0.0000183742760, \n    +0.0001767525464, +0.0002863990413, +0.0002254843219, +0.0000609147194, \n    -0.0000243658878, +0.0000000000000, +0.0000305572199, +0.0000121829439, \n    +0.0000000000000, -0.0000243658878, +0.0000305572199, +0.0002376672658, \n    +0.0003718793689, +0.0001645696026, -0.0002498502097, -0.0005364489714, \n    -0.0004937088077, -0.0002498502097, +0.0000549231076, +0.0003107649291, \n    +0.0003718793689, +0.0003107649291, +0.0001951268224, +0.0001340123827, \n    +0.0002133013781, +0.0002620331536, +0.0001705612143, +0.0000183742760, \n    -0.0002254843219, -0.0004144198123, -0.0003656880367, -0.0001951268224, \n    -0.0000365488316, +0.0000852806071, +0.0002804074296, +0.0004875174755, \n    +0.0004753345317, +0.0002804074296, +0.0000609147194, -0.0001767525464, \n    -0.0003169562612, -0.0002863990413, -0.0002194927102, -0.0001461953265, \n    +0.0000000000000, +0.0001829438786, +0.0002804074296, +0.0002560415418, \n    +0.0003047733174, +0.0004206111444, +0.0003047733174, +0.0000000000000, \n    -0.0001461953265, -0.0000609147194, +0.0000730976633, +0.0002254843219, \n    +0.0002742160975, +0.0000609147194, -0.0003351308169, -0.0006033553026, \n    -0.0005424405832, -0.0002194927102, +0.0001583782704, +0.0004753345317, \n    +0.0006582784102, +0.0006460954663, +0.0005118833633, +0.0002560415418, \n    -0.0001645696026, -0.0005973636908, -0.0006582784102, -0.0003047733174, \n    +0.0000671060515, +0.0002804074296, +0.0003718793689, +0.0004266027561, \n    +0.0004631515878, +0.0003718793689, +0.0001218294388, -0.0001402037148, \n    -0.0003107649291, -0.0004084282005, -0.0003962452566, -0.0002376672658, \n    -0.0000974635510, -0.0000730976633, -0.0000061913321, +0.0001583782704, \n    +0.0002376672658, +0.0002133013781, +0.0002254843219, +0.0002438585980, \n    +0.0001158378270, -0.0002073097663, -0.0004266027561, -0.0002073097663, \n    +0.0001645696026, +0.0002985819852, +0.0001951268224, -0.0000121829439, \n    -0.0001402037148, -0.0001583782704, -0.0001218294388, +0.0000183742760, \n    +0.0001583782704, +0.0000914719393, -0.0001158378270, -0.0002804074296, \n    -0.0002620331536, -0.0000792889954, +0.0002316756541, +0.0004753345317, \n    +0.0003351308169, -0.0000671060515, -0.0003718793689, -0.0004327940883, \n    -0.0002376672658, +0.0000671060515, +0.0002742160975, +0.0002804074296, \n    +0.0001645696026, +0.0000365488316, -0.0001036548832, -0.0003475134811, \n    -0.0003900539245, -0.0000243658878, +0.0003229478730, +0.0002133013781, \n    -0.0000792889954, -0.0001280207709, +0.0000061913321, +0.0000487317755, \n    -0.0001218294388, -0.0003107649291, -0.0002254843219, -0.0000061913321, \n    +0.0001340123827, +0.0002254843219, +0.0002438585980, +0.0001583782704, \n    +0.0000121829439, -0.0000730976633, -0.0000305572199, -0.0000183742760, \n    -0.0001705612143, -0.0003169562612, -0.0003229478730, -0.0001829438786, \n    +0.0000000000000, +0.0000974635510, +0.0001158378270, +0.0000974635510, \n    -0.0000243658878, -0.0000549231076, +0.0000487317755, +0.0000121829439, \n    -0.0001280207709, -0.0001705612143, -0.0001096464949, +0.0000487317755, \n    +0.0002438585980, +0.0002620331536, +0.0001096464949, -0.0000061913321, \n    -0.0000609147194, -0.0000671060515, -0.0001340123827, -0.0003962452566, \n    -0.0006642700220, -0.0005851807470, -0.0002682244857, +0.0000671060515, \n    +0.0004022368684, +0.0005973636908, +0.0005424405832, +0.0004753345317, \n    +0.0004144198123, +0.0001340123827, -0.0002254843219, -0.0003656880367, \n    -0.0002863990413, -0.0000792889954, +0.0000609147194, -0.0000121829439, \n    -0.0000914719393, -0.0000914719393, -0.0002498502097, -0.0003047733174, \n    -0.0000792889954, +0.0001645696026, +0.0004084282005, +0.0005546235271, \n    +0.0003656880367, +0.0000061913321, -0.0002804074296, -0.0004266027561, \n    -0.0004449770322, -0.0004693429199, -0.0004206111444, -0.0000730976633, \n    +0.0004327940883, +0.0005911723587, +0.0002863990413, -0.0000427401638, \n    -0.0001951268224, -0.0002682244857, -0.0002438585980, -0.0000974635510, \n    +0.0000427401638, +0.0000609147194, -0.0000183742760, -0.0000427401638, \n    +0.0000183742760, -0.0000549231076, -0.0003351308169, -0.0004266027561, \n    -0.0000549231076, +0.0003351308169, +0.0003718793689, +0.0002194927102, \n    +0.0000609147194, -0.0000487317755, -0.0001036548832, -0.0001583782704, \n    -0.0001583782704, -0.0000121829439, +0.0001829438786, +0.0001402037148, \n    -0.0002133013781, -0.0005180746954, -0.0004937088077, -0.0001951268224, \n    +0.0002560415418, +0.0004997004194, +0.0003291392051, +0.0000305572199, \n    -0.0001402037148, -0.0001889354903, -0.0001218294388, -0.0000121829439, \n    +0.0001340123827, +0.0003656880367, +0.0004327940883, +0.0002073097663, \n    -0.0000183742760, -0.0001523866587, -0.0002925903735, -0.0003840623128, \n    -0.0002863990413, -0.0000243658878, +0.0001829438786, +0.0001461953265, \n    -0.0000609147194, -0.0001705612143, +0.0000487317755, +0.0002804074296, \n    +0.0001461953265, -0.0000852806071, -0.0001645696026, -0.0001645696026, \n    +0.0000183742760, +0.0003107649291, +0.0003107649291, -0.0000549231076, \n    -0.0004815258638, -0.0005973636908, -0.0004327940883, -0.0002254843219, \n    +0.0000549231076, +0.0004266027561, +0.0004266027561, -0.0000121829439, \n    -0.0002925903735, -0.0001280207709, +0.0000671060515, +0.0000792889954, \n    +0.0000549231076, +0.0002194927102, +0.0004387857000, +0.0002620331536, \n    -0.0003169562612, -0.0005058917515, +0.0000671060515, +0.0006399041342, \n    +0.0006217295786, +0.0003962452566, +0.0002863990413, +0.0001523866587, \n    -0.0000974635510, -0.0002682244857, -0.0001583782704, -0.0000549231076, \n    -0.0002620331536, -0.0005242660276, -0.0003718793689, +0.0002498502097, \n    +0.0007984821250, +0.0007741162373, +0.0004753345317, +0.0003778709806, \n    +0.0003291392051, -0.0000549231076, -0.0004937088077, -0.0004937088077, \n    -0.0002254843219, -0.0000121829439, +0.0002254843219, +0.0004815258638, \n    +0.0006399041342, +0.0006277211903, +0.0002985819852, -0.0001583782704, \n    -0.0003291392051, -0.0004266027561, -0.0007010185740, -0.0008106650689, \n    -0.0005302576393, -0.0001096464949, +0.0002073097663, +0.0004997004194, \n    +0.0008044737368, +0.0007557419613, +0.0002438585980, -0.0001829438786, \n    -0.0001829438786, -0.0000671060515, -0.0002194927102, -0.0004509686439, \n    -0.0001705612143, +0.0004753345317, +0.0007435590174, +0.0003962452566, \n    -0.0000121829439, -0.0001218294388, -0.0001158378270, -0.0001340123827, \n    -0.0000487317755, -0.0000427401638, -0.0002560415418, -0.0004144198123, \n    -0.0003229478730, -0.0000183742760, +0.0003475134811, +0.0004753345317, \n    +0.0002560415418, -0.0000792889954, -0.0004084282005, -0.0005486319153, \n    -0.0001402037148, +0.0006095466347, +0.0008350309567, +0.0003229478730, \n    -0.0001951268224, -0.0003107649291, -0.0004022368684, -0.0005789894148, \n    -0.0003656880367, +0.0004084282005, +0.0010423407230, +0.0008837627322, \n    +0.0002682244857, -0.0001036548832, -0.0002925903735, -0.0005058917515, \n    -0.0004937088077, +0.0000061913321, +0.0006033553026, +0.0007679249051, \n    +0.0004022368684, -0.0001158378270, -0.0003900539245, -0.0002498502097, \n    +0.0000243658878, +0.0001461953265, +0.0001645696026, +0.0002133013781, \n    +0.0000974635510, -0.0002804074296, -0.0004571599760, -0.0001036548832, \n    +0.0001705612143, -0.0000671060515, -0.0003291392051, -0.0001829438786, \n    +0.0000671060515, +0.0000305572199, -0.0002925903735, -0.0004022368684, \n    -0.0000792889954, +0.0001889354903, +0.0001461953265, -0.0000365488316, \n    -0.0001523866587, -0.0000914719393, -0.0000121829439, -0.0001461953265, \n    -0.0004084282005, -0.0004631515878, -0.0001767525464, +0.0000852806071, \n    +0.0001583782704, +0.0000974635510, -0.0000061913321, -0.0002254843219, \n    -0.0004815258638, -0.0002985819852, +0.0002316756541, +0.0005364489714, \n    +0.0005118833633, +0.0002682244857, -0.0000792889954, -0.0003778709806, \n    -0.0005118833633, -0.0002254843219, +0.0004266027561, +0.0007497503495, \n    +0.0003900539245, -0.0002985819852, -0.0009021370082, -0.0012067106052, \n    -0.0009568603954, -0.0002194927102, +0.0004753345317, +0.0007741162373, \n    +0.0006704613541, +0.0002804074296, -0.0002438585980, -0.0008593968444, \n    -0.0012067106052, -0.0008044737368, +0.0001523866587, +0.0010848811664, \n    +0.0016638705812, +0.0017371679648, +0.0012067106052, +0.0001645696026, \n    -0.0009386858398, -0.0015602156980, -0.0014933093669, -0.0008959456761, \n    -0.0002011184342, +0.0003596964250, +0.0007435590174, +0.0008106650689, \n    +0.0005302576393, +0.0001402037148, -0.0003351308169, -0.0009021370082, \n    -0.0011154383863, -0.0005242660276, +0.0004084282005, +0.0008350309567, \n    +0.0005911723587, +0.0001340123827, -0.0002742160975, -0.0003900539245, \n    +0.0000121829439, +0.0005424405832, +0.0005546235271, +0.0001461953265, \n    -0.0002073097663, -0.0002438585980, -0.0000914719393, +0.0000000000000, \n    +0.0000427401638, +0.0000730976633, +0.0000121829439, -0.0000792889954, \n    -0.0002073097663, -0.0003962452566, -0.0005729978031, -0.0005180746954, \n    -0.0001523866587, +0.0003718793689, +0.0006642700220, +0.0005424405832, \n    +0.0003047733174, +0.0001461953265, +0.0000121829439, -0.0000183742760, \n    -0.0000243658878, -0.0000121829439, +0.0001158378270, +0.0001218294388, \n    -0.0002376672658, -0.0006339125225, -0.0006339125225, -0.0002133013781, \n    +0.0002742160975, +0.0005118833633, +0.0004693429199, +0.0001829438786, \n    -0.0000549231076, +0.0000671060515, +0.0002863990413, +0.0002985819852, \n    +0.0002316756541, +0.0003107649291, +0.0004693429199, +0.0001829438786, \n    -0.0005546235271, -0.0009446774516, -0.0005973636908, +0.0000000000000, \n    +0.0004144198123, +0.0006095466347, +0.0006886359097, +0.0005851807470, \n    +0.0002376672658, -0.0001767525464, -0.0003229478730, -0.0001340123827, \n    +0.0000061913321, -0.0001402037148, -0.0003169562612, -0.0002804074296, \n    -0.0000183742760, +0.0002560415418, +0.0004022368684, +0.0003778709806, \n    +0.0003169562612, +0.0002194927102, +0.0001218294388, +0.0001829438786, \n    +0.0002560415418, +0.0000305572199, -0.0002804074296, -0.0003107649291, \n    -0.0001340123827, +0.0000183742760, +0.0000914719393, +0.0000671060515, \n    -0.0000243658878, -0.0000549231076, +0.0001402037148, +0.0003107649291, \n    +0.0001829438786, -0.0000365488316, -0.0001523866587, -0.0002316756541, \n    -0.0002682244857, -0.0002498502097, -0.0001889354903, -0.0000243658878, \n    +0.0001705612143, +0.0003535050929, +0.0005242660276, +0.0006339125225, \n    +0.0004206111444, -0.0000549231076, -0.0004266027561, -0.0004266027561, \n    -0.0001523866587, +0.0001096464949, +0.0001583782704, +0.0001280207709, \n    +0.0001767525464, +0.0002316756541, +0.0001705612143, +0.0001523866587, \n    +0.0000852806071, -0.0001036548832, -0.0002133013781, -0.0001036548832, \n    +0.0000427401638, +0.0001096464949, +0.0000243658878, -0.0002194927102, \n    -0.0004266027561, -0.0004144198123, -0.0003291392051, -0.0001951268224, \n    +0.0001096464949, +0.0004327940883, +0.0004937088077, +0.0002133013781, \n    -0.0001767525464, -0.0004144198123, -0.0004144198123, -0.0002560415418, \n    -0.0000243658878, +0.0001280207709, +0.0000974635510, -0.0000609147194, \n    -0.0001705612143, -0.0001461953265, -0.0000914719393, +0.0000549231076, \n    +0.0003778709806, +0.0005668064709, +0.0002254843219, -0.0004693429199, \n    -0.0007375674056, -0.0003047733174, +0.0002438585980, +0.0004571599760, \n    +0.0004206111444, +0.0002316756541, +0.0000000000000, -0.0002254843219, \n    -0.0003351308169, -0.0002682244857, -0.0001402037148, -0.0000914719393, \n    -0.0000609147194, -0.0000427401638, -0.0000305572199, -0.0000365488316, \n    -0.0000852806071, -0.0001340123827, -0.0000609147194, +0.0000549231076, \n    +0.0001889354903, +0.0002804074296, +0.0001645696026, -0.0000549231076, \n    -0.0002011184342, -0.0003413221490, -0.0004449770322, -0.0002925903735, \n    +0.0000305572199, +0.0003047733174, +0.0004022368684, +0.0003291392051, \n    +0.0000974635510, -0.0002742160975, -0.0006217295786, -0.0006642700220, \n    -0.0003778709806, -0.0000427401638, +0.0001402037148, +0.0002985819852, \n    +0.0004022368684, +0.0002804074296, -0.0000852806071, -0.0004631515878, \n    -0.0004449770322, +0.0000487317755, +0.0004571599760, +0.0004206111444, \n    +0.0001829438786, +0.0000549231076, -0.0000061913321, -0.0001645696026, \n    -0.0003229478730, -0.0002438585980, +0.0000549231076, +0.0003535050929, \n    +0.0003718793689, +0.0000671060515, -0.0003107649291, -0.0004753345317, \n    -0.0003169562612, -0.0000671060515, -0.0000121829439, -0.0001158378270, \n    -0.0000974635510, +0.0001218294388, +0.0003047733174, +0.0002011184342, \n    -0.0000183742760, -0.0000730976633, +0.0000671060515, +0.0002376672658, \n    +0.0002194927102, -0.0000427401638, -0.0003656880367, -0.0004571599760, \n    -0.0002194927102, +0.0000365488316, +0.0000549231076, -0.0000487317755, \n    +0.0000000000000, +0.0002133013781, +0.0003778709806, +0.0004022368684, \n    +0.0003596964250, +0.0002438585980, +0.0000549231076, -0.0001523866587, \n    -0.0002620331536, -0.0002438585980, -0.0001461953265, -0.0000549231076, \n    +0.0000365488316, +0.0001158378270, +0.0001829438786, +0.0002011184342, \n    +0.0001523866587, +0.0000609147194, -0.0000609147194, -0.0001402037148, \n    +0.0000061913321, +0.0002620331536, +0.0002682244857, -0.0000609147194, \n    -0.0003962452566, -0.0003962452566, -0.0001705612143, +0.0000549231076, \n    +0.0002254843219, +0.0003291392051, +0.0003351308169, +0.0001951268224, \n    -0.0000487317755, -0.0002133013781, -0.0002194927102, -0.0001645696026, \n    +0.0000121829439, +0.0003291392051, +0.0004144198123, +0.0002316756541, \n    +0.0000305572199, -0.0000487317755, -0.0000974635510, -0.0001218294388, \n    -0.0001767525464, -0.0001523866587, -0.0000061913321, +0.0000549231076, \n    -0.0001036548832, -0.0002742160975, -0.0001767525464, +0.0001583782704, \n    +0.0004266027561, +0.0004875174755, +0.0003047733174, -0.0001340123827, \n    -0.0006217295786, -0.0007801078490, -0.0005364489714, -0.0000852806071, \n    +0.0002863990413, +0.0004815258638, +0.0004327940883, +0.0002011184342, \n    -0.0000183742760, -0.0001461953265, -0.0001889354903, -0.0001523866587, \n    -0.0000183742760, +0.0001889354903, +0.0003778709806, +0.0002925903735, \n    -0.0000852806071, -0.0004631515878, -0.0005546235271, -0.0004022368684, \n    -0.0002194927102, -0.0000061913321, +0.0003229478730, +0.0005424405832, \n    +0.0004387857000, +0.0001340123827, -0.0001767525464, -0.0004206111444, \n    -0.0004753345317, -0.0003535050929, -0.0000914719393, +0.0002133013781, \n    +0.0003656880367, +0.0002316756541, +0.0001280207709, +0.0002011184342, \n    +0.0002133013781, +0.0000061913321, -0.0002498502097, -0.0003475134811, \n    -0.0002133013781, -0.0000061913321, +0.0001158378270, +0.0001218294388, \n    +0.0000000000000, -0.0003107649291, -0.0005424405832, -0.0003535050929, \n    +0.0001340123827, +0.0004022368684, +0.0003413221490, +0.0002498502097, \n    +0.0002254843219, +0.0000852806071, -0.0001951268224, -0.0003962452566, \n    -0.0002133013781, +0.0001340123827, +0.0002498502097, +0.0001829438786, \n    +0.0002133013781, +0.0003351308169, +0.0003656880367, +0.0001705612143, \n    -0.0000914719393, -0.0001889354903, -0.0002133013781, -0.0002560415418, \n    -0.0002254843219, -0.0000487317755, +0.0002254843219, +0.0004815258638, \n    +0.0004631515878, +0.0002073097663, -0.0000427401638, -0.0001705612143, \n    -0.0002011184342, -0.0001218294388, +0.0000609147194, +0.0002498502097, \n    +0.0002194927102, +0.0000243658878, -0.0000852806071, +0.0000183742760, \n    +0.0002073097663, +0.0001767525464, -0.0000974635510, -0.0002925903735, \n    -0.0002620331536, -0.0001583782704, -0.0001096464949, -0.0000427401638, \n    +0.0001280207709, +0.0002804074296, +0.0001951268224, +0.0000305572199, \n    +0.0000427401638, +0.0001829438786, +0.0002011184342, +0.0000671060515, \n    -0.0000121829439, +0.0000609147194, +0.0001889354903, +0.0001645696026, \n    -0.0000121829439, -0.0001829438786, -0.0002498502097, -0.0002073097663, \n    -0.0001340123827, -0.0001767525464, -0.0001829438786, -0.0000487317755, \n    +0.0001340123827, +0.0002316756541, +0.0002073097663, +0.0000609147194, \n    -0.0000365488316, -0.0000243658878, -0.0000183742760, -0.0000974635510, \n    -0.0000609147194, +0.0000852806071, +0.0002498502097, +0.0002376672658, \n    -0.0000183742760, -0.0002438585980, -0.0001461953265, +0.0000183742760, \n    +0.0000609147194, +0.0000427401638, -0.0000427401638, -0.0002073097663, \n    -0.0002133013781, +0.0000000000000, +0.0002742160975, +0.0003656880367, \n    +0.0001767525464, -0.0000852806071, -0.0001583782704, -0.0000305572199, \n    +0.0001340123827, +0.0002194927102, +0.0001280207709, -0.0000671060515, \n    -0.0002682244857, -0.0002985819852, -0.0000487317755, +0.0002254843219, \n    +0.0002376672658, +0.0001402037148, +0.0000792889954, -0.0000305572199, \n    -0.0002133013781, -0.0003169562612, -0.0002254843219, +0.0000243658878, \n    +0.0002682244857, +0.0003475134811, +0.0001280207709, -0.0002254843219, \n    -0.0004084282005, -0.0003229478730, -0.0001951268224, -0.0000974635510, \n    +0.0000000000000, +0.0000914719393, +0.0001096464949, +0.0000487317755, \n    -0.0000549231076, -0.0001402037148, -0.0001645696026, -0.0000061913321, \n    +0.0002254843219, +0.0002742160975, +0.0000792889954, -0.0001280207709, \n    -0.0002560415418, -0.0002682244857, -0.0001461953265, +0.0000243658878, \n    +0.0001340123827, +0.0001158378270, -0.0000305572199, -0.0001218294388, \n    +0.0000487317755, +0.0002438585980, +0.0001523866587, -0.0001280207709, \n    -0.0003351308169, -0.0004022368684, -0.0002985819852, -0.0000914719393, \n    +0.0001645696026, +0.0003656880367, +0.0003718793689, +0.0001461953265, \n    -0.0002194927102, -0.0004875174755, -0.0003840623128, -0.0000121829439, \n    +0.0003169562612, +0.0004144198123, +0.0002498502097, -0.0000061913321, \n    -0.0001096464949, -0.0000730976633, -0.0000671060515, -0.0001523866587, \n    -0.0002254843219, -0.0001705612143, -0.0000061913321, +0.0000914719393, \n    +0.0000974635510, +0.0000671060515, +0.0000305572199, +0.0000609147194, \n    +0.0001461953265, +0.0001705612143, +0.0000974635510, -0.0000427401638, \n    -0.0001583782704, -0.0001340123827, +0.0000121829439, +0.0001951268224, \n    +0.0002560415418, +0.0001767525464, +0.0000487317755, -0.0000305572199, \n    -0.0000730976633, -0.0000671060515, -0.0000792889954, -0.0001705612143, \n    -0.0003291392051, -0.0003778709806, -0.0002194927102, +0.0000305572199, \n    +0.0002682244857, +0.0004571599760, +0.0004327940883, +0.0001705612143, \n    -0.0000609147194, -0.0001280207709, -0.0001461953265, -0.0001096464949, \n    +0.0000061913321, +0.0001158378270, +0.0001889354903, +0.0002498502097, \n    +0.0002011184342, +0.0000427401638, -0.0001036548832, -0.0001829438786, \n    -0.0001829438786, -0.0001096464949, +0.0000183742760, +0.0000671060515, \n    -0.0000792889954, -0.0002742160975, -0.0002560415418, -0.0000427401638, \n    +0.0001583782704, +0.0002254843219, +0.0001829438786, +0.0000974635510, \n    +0.0000671060515, +0.0001218294388, +0.0001705612143, +0.0000974635510, \n    +0.0000000000000, -0.0001096464949, -0.0001951268224, -0.0001402037148, \n    +0.0000487317755, +0.0001645696026, +0.0001705612143, +0.0000671060515, \n    -0.0001583782704, -0.0003475134811, -0.0002498502097, +0.0000243658878, \n    +0.0001705612143, +0.0001583782704, +0.0001705612143, +0.0001951268224, \n    +0.0001583782704, +0.0000609147194, -0.0000305572199, -0.0001036548832, \n    -0.0001889354903, -0.0002560415418, -0.0002073097663, -0.0000609147194, \n    +0.0001158378270, +0.0003047733174, +0.0003169562612, +0.0000852806071, \n    -0.0001829438786, -0.0003229478730, -0.0002742160975, +0.0000183742760, \n    +0.0003229478730, +0.0003169562612, +0.0000914719393, +0.0000000000000, \n    +0.0000000000000, -0.0000852806071, -0.0002133013781, -0.0001705612143, \n    -0.0000487317755, -0.0000061913321, -0.0000183742760, +0.0000000000000, \n    +0.0000974635510, +0.0002376672658, +0.0002620331536, +0.0000914719393, \n    -0.0001340123827, -0.0002073097663, -0.0001096464949, +0.0000609147194, \n    +0.0001829438786, +0.0001280207709, -0.0000609147194, -0.0002804074296, \n    -0.0004449770322, -0.0004144198123, -0.0000914719393, +0.0003169562612, \n    +0.0005242660276, +0.0004509686439, +0.0002376672658, +0.0000121829439, \n    -0.0001767525464, -0.0002560415418, -0.0000671060515, +0.0001829438786, \n    +0.0001767525464, -0.0000365488316, -0.0001036548832, +0.0000121829439, \n    +0.0000609147194, -0.0000427401638, -0.0001158378270, -0.0000365488316, \n    +0.0001523866587, +0.0003047733174, +0.0002804074296, +0.0001280207709, \n    +0.0000243658878, +0.0000000000000, -0.0000549231076, -0.0001645696026, \n    -0.0001523866587, -0.0000183742760, +0.0000427401638, -0.0000549231076, \n    -0.0001705612143, -0.0001951268224, -0.0001280207709, +0.0000000000000, \n    +0.0001096464949, +0.0000792889954, +0.0000061913321, +0.0000183742760, \n    +0.0000549231076, +0.0000671060515, +0.0000852806071, +0.0000792889954, \n    +0.0000427401638, +0.0000974635510, +0.0001645696026, +0.0000730976633, \n    -0.0001889354903, -0.0003900539245, -0.0003169562612, -0.0000671060515, \n    +0.0001280207709, +0.0002742160975, +0.0002985819852, +0.0001218294388, \n    -0.0001583782704, -0.0002985819852, -0.0002073097663, +0.0000305572199, \n    +0.0002073097663, +0.0002316756541, +0.0001829438786, +0.0000974635510, \n    -0.0000914719393, -0.0002560415418, -0.0002011184342, -0.0000061913321, \n    +0.0001461953265, +0.0002133013781, +0.0002194927102, +0.0001218294388, \n    -0.0000974635510, -0.0002742160975, -0.0002438585980, -0.0000609147194, \n    +0.0000792889954, +0.0000852806071, +0.0000305572199, +0.0000000000000, \n    -0.0000427401638, -0.0001158378270, -0.0000792889954, +0.0000305572199, \n    +0.0001218294388, +0.0001583782704, +0.0001951268224, +0.0001583782704, \n    +0.0000000000000, -0.0001461953265, -0.0001829438786, -0.0002011184342, \n    -0.0002133013781, -0.0001280207709, +0.0000305572199, +0.0000974635510, \n    +0.0000121829439, -0.0000549231076, +0.0000183742760, +0.0001158378270, \n    +0.0000852806071, +0.0000000000000, +0.0000671060515, +0.0001583782704, \n    +0.0000183742760, -0.0002254843219, -0.0002863990413, -0.0001461953265, \n    +0.0000427401638, +0.0001767525464, +0.0002438585980, +0.0002682244857, \n    +0.0001705612143, -0.0000792889954, -0.0003351308169, -0.0004022368684, \n    -0.0002560415418, +0.0000000000000, +0.0002011184342, +0.0002133013781, \n    +0.0000427401638, -0.0001280207709, -0.0001829438786, -0.0000792889954, \n    +0.0000671060515, +0.0001340123827, +0.0000852806071, +0.0000243658878, \n    -0.0000305572199, -0.0000792889954, -0.0001036548832, -0.0000609147194, \n    +0.0000487317755, +0.0001461953265, +0.0001036548832, -0.0000243658878, \n    -0.0001461953265, -0.0001523866587, -0.0000730976633, +0.0000243658878, \n    +0.0001280207709, +0.0002133013781, +0.0002011184342, +0.0001158378270, \n    +0.0000427401638, -0.0000183742760, -0.0000852806071, -0.0000914719393, \n    -0.0000305572199, +0.0000852806071, +0.0002011184342, +0.0001340123827, \n    -0.0000549231076, -0.0001645696026, -0.0001461953265, -0.0002011184342, \n    -0.0002985819852, -0.0002316756541, +0.0000061913321, +0.0001461953265, \n    +0.0000792889954, -0.0000305572199, -0.0000609147194, -0.0000671060515, \n    -0.0000792889954, -0.0000305572199, +0.0000852806071, +0.0000730976633, \n    -0.0000671060515, -0.0001036548832, +0.0000609147194, +0.0001280207709, \n    -0.0000427401638, -0.0002254843219, -0.0002011184342, -0.0001036548832, \n    -0.0000427401638, -0.0000121829439, -0.0000365488316, -0.0000243658878, \n    +0.0000914719393, +0.0002073097663, +0.0002011184342, +0.0000487317755, \n    -0.0001523866587, -0.0002316756541, -0.0001951268224, -0.0000792889954, \n    +0.0001036548832, +0.0002682244857, +0.0002804074296, +0.0002011184342, \n    +0.0000427401638, -0.0001158378270, -0.0002073097663, -0.0001645696026, \n    -0.0000427401638, +0.0000792889954, +0.0002194927102, +0.0003107649291, \n    +0.0001402037148, -0.0002011184342, -0.0004206111444, -0.0003169562612, \n    -0.0000487317755, +0.0001461953265, +0.0002254843219, +0.0002498502097, \n    +0.0001767525464, +0.0000365488316, -0.0000487317755, +0.0000061913321, \n    +0.0001523866587, +0.0001583782704, -0.0000730976633, -0.0002438585980, \n    -0.0001096464949, +0.0000974635510, +0.0001402037148, +0.0001218294388, \n    +0.0001280207709, +0.0000549231076, -0.0001829438786, -0.0004084282005, \n    -0.0004144198123, -0.0002560415418, -0.0000243658878, +0.0001951268224, \n    +0.0003596964250, +0.0003840623128, +0.0002560415418, +0.0000671060515, \n    -0.0000427401638, -0.0001158378270, -0.0001158378270, -0.0000549231076, \n    +0.0000061913321, +0.0000549231076, +0.0001096464949, +0.0000549231076, \n    -0.0000609147194, -0.0001036548832, -0.0000852806071, -0.0000852806071, \n    -0.0000852806071, -0.0000549231076, +0.0000487317755, +0.0002254843219, \n    +0.0003047733174, +0.0001767525464, -0.0000487317755, -0.0002073097663, \n    -0.0002073097663, -0.0000852806071, +0.0000914719393, +0.0002804074296, \n    +0.0003656880367, +0.0002925903735, +0.0000609147194, -0.0002011184342, \n    -0.0003107649291, -0.0001829438786, +0.0000121829439, +0.0001705612143, \n    +0.0002620331536, +0.0002438585980, +0.0000549231076, -0.0001096464949, \n    -0.0001340123827, -0.0000974635510, -0.0000730976633, -0.0000121829439, \n    +0.0000183742760, -0.0000609147194, -0.0001402037148, -0.0000549231076, \n    +0.0000792889954, +0.0000730976633, -0.0000852806071, -0.0001829438786, \n    -0.0000730976633, +0.0001523866587, +0.0003169562612, +0.0003047733174, \n    +0.0001036548832, -0.0001523866587, -0.0002682244857, -0.0002073097663, \n    -0.0001158378270, -0.0001218294388, -0.0001402037148, -0.0000609147194, \n    +0.0000730976633, +0.0001158378270, +0.0000487317755, +0.0000243658878, \n    +0.0000671060515, +0.0000914719393, +0.0000914719393, +0.0000487317755, \n    +0.0000305572199, +0.0000609147194, +0.0000609147194, +0.0000121829439, \n    -0.0000061913321, -0.0000365488316, -0.0000974635510, -0.0001158378270, \n    -0.0000061913321, +0.0000914719393, -0.0000121829439, -0.0002011184342, \n    -0.0001461953265, +0.0000730976633, +0.0001889354903, +0.0001705612143, \n    +0.0001461953265, +0.0000671060515, -0.0001096464949, -0.0002133013781, \n    -0.0001218294388, +0.0000852806071, +0.0002316756541, +0.0002376672658, \n    +0.0002316756541, +0.0003107649291, +0.0002742160975, +0.0000487317755, \n    -0.0001951268224, -0.0002498502097, -0.0001523866587, -0.0001036548832, \n    -0.0001461953265, -0.0000671060515, +0.0001218294388, +0.0002376672658, \n    +0.0001280207709, -0.0000549231076, -0.0000914719393, +0.0000365488316, \n    +0.0001461953265, +0.0000609147194, -0.0001583782704, -0.0002985819852, \n    -0.0002254843219, -0.0000061913321, +0.0002011184342, +0.0002985819852, \n    +0.0001951268224, -0.0000061913321, -0.0001158378270, -0.0000609147194, \n    +0.0000487317755, +0.0001158378270, +0.0001096464949, +0.0000000000000, \n    -0.0001645696026, -0.0002925903735, -0.0002925903735, -0.0001583782704, \n    +0.0001402037148, +0.0004266027561, +0.0004509686439, +0.0001583782704, \n    -0.0002073097663, -0.0004509686439, -0.0004631515878, -0.0002498502097, \n    +0.0000914719393, +0.0004266027561, +0.0006277211903, +0.0004875174755, \n    +0.0000427401638, -0.0003900539245, -0.0005364489714, -0.0004084282005, \n    -0.0001218294388, +0.0001158378270, +0.0002376672658, +0.0002438585980, \n    +0.0001705612143, +0.0000305572199, -0.0000792889954, -0.0001096464949, \n    -0.0001461953265, -0.0002254843219, -0.0002620331536, -0.0001583782704, \n    +0.0000549231076, +0.0002133013781, +0.0001889354903, +0.0000974635510, \n    -0.0000061913321, -0.0001767525464, -0.0003107649291, -0.0002376672658, \n    -0.0000852806071, +0.0000000000000, +0.0000609147194, +0.0001767525464, \n    +0.0002073097663, +0.0001096464949, -0.0000427401638, -0.0001583782704, \n    -0.0001951268224, -0.0000914719393, +0.0000852806071, +0.0002316756541, \n    +0.0002316756541, +0.0001280207709, -0.0000121829439, -0.0001583782704, \n    -0.0002804074296, -0.0002620331536, -0.0000427401638, +0.0002560415418, \n    +0.0004266027561, +0.0003840623128, +0.0002438585980, +0.0000609147194, \n    -0.0001705612143, -0.0003291392051, -0.0002863990413, -0.0001402037148, \n    -0.0000243658878, +0.0000609147194, +0.0001767525464, +0.0002133013781, \n    +0.0001096464949, -0.0000427401638, -0.0001340123827, -0.0001340123827, \n    -0.0000852806071, -0.0000852806071, -0.0001158378270, -0.0000487317755, \n    +0.0000365488316, -0.0000121829439, -0.0001523866587, -0.0001889354903, \n    -0.0000487317755, +0.0001583782704, +0.0003107649291, +0.0003291392051, \n    +0.0002073097663, -0.0000121829439, -0.0002560415418, -0.0003475134811, \n    -0.0002073097663, +0.0000365488316, +0.0001829438786, +0.0001218294388, \n    -0.0000243658878, -0.0000487317755, -0.0000121829439, +0.0000061913321, \n    +0.0000121829439, +0.0000243658878, +0.0000000000000, -0.0000549231076, \n    -0.0000974635510, -0.0000671060515, -0.0000365488316, -0.0000061913321, \n    +0.0000914719393, +0.0001889354903, +0.0001340123827, +0.0000305572199, \n    +0.0000365488316, +0.0001340123827, +0.0001280207709, -0.0000365488316, \n    -0.0001951268224, -0.0001583782704, +0.0000243658878, +0.0002254843219, \n    +0.0002863990413, +0.0002073097663, +0.0000974635510, -0.0000792889954, \n    -0.0002682244857, -0.0002560415418, -0.0000305572199, +0.0001583782704, \n    +0.0002316756541, +0.0002133013781, +0.0001583782704, +0.0000487317755, \n    -0.0000730976633, -0.0001705612143, -0.0001096464949, +0.0000852806071, \n    +0.0002925903735, +0.0003413221490, +0.0002316756541, +0.0000671060515, \n    -0.0000671060515, -0.0001705612143, -0.0001705612143, -0.0001036548832, \n    -0.0000427401638, -0.0000183742760, -0.0000183742760, -0.0000487317755, \n    -0.0000427401638, +0.0000183742760, +0.0000792889954, +0.0000609147194, \n    -0.0000365488316, -0.0002133013781, -0.0003047733174, -0.0001767525464, \n    +0.0000305572199, +0.0002011184342, +0.0003229478730, +0.0003351308169, \n    +0.0001951268224, +0.0000061913321, -0.0001340123827, -0.0001829438786, \n    -0.0002073097663, -0.0002011184342, -0.0000974635510, +0.0000792889954, \n    +0.0001829438786, +0.0002073097663, +0.0001645696026, +0.0000243658878, \n    -0.0001889354903, -0.0003229478730, -0.0003291392051, -0.0002742160975, \n    -0.0001645696026, +0.0000305572199, +0.0002376672658, +0.0003475134811, \n    +0.0003596964250, +0.0002985819852, +0.0001583782704, -0.0000974635510, \n    -0.0003718793689, -0.0004206111444, -0.0002316756541, +0.0000243658878, \n    +0.0001951268224, +0.0002316756541, +0.0001889354903, +0.0001158378270, \n    +0.0000061913321, -0.0001036548832, -0.0001218294388, -0.0000792889954, \n    -0.0000852806071, -0.0000974635510, +0.0000243658878, +0.0001829438786, \n    +0.0001461953265, -0.0000730976633, -0.0002133013781, -0.0002254843219, \n    -0.0001645696026, -0.0000121829439, +0.0002011184342, +0.0003169562612, \n    +0.0002560415418, +0.0000609147194, -0.0001036548832, -0.0001645696026, \n    -0.0000974635510, +0.0000305572199, +0.0001096464949, +0.0000061913321, \n    -0.0001889354903, -0.0002742160975, -0.0001461953265, +0.0000974635510, \n    +0.0002985819852, +0.0003351308169, +0.0001767525464, -0.0000427401638, \n    -0.0002073097663, -0.0002254843219, -0.0001402037148, -0.0000487317755, \n    -0.0000365488316, -0.0000121829439, +0.0001036548832, +0.0002254843219, \n    +0.0002316756541, +0.0001523866587, +0.0000609147194, +0.0000121829439, \n    -0.0000852806071, -0.0002438585980, -0.0003535050929, -0.0002925903735, \n    -0.0001402037148, -0.0000121829439, +0.0000852806071, +0.0001951268224, \n    +0.0002985819852, +0.0002620331536, +0.0000792889954, -0.0000549231076, \n    -0.0000730976633, -0.0000549231076, -0.0000609147194, -0.0000792889954, \n    -0.0001096464949, -0.0001461953265, -0.0001523866587, -0.0000914719393, \n    +0.0000061913321, +0.0000914719393, +0.0001645696026, +0.0001767525464, \n    +0.0001340123827, +0.0000487317755, -0.0000487317755, -0.0000852806071, \n    +0.0000000000000, +0.0000974635510, +0.0001218294388, +0.0000609147194, \n    -0.0000365488316, -0.0001036548832, -0.0001036548832, -0.0001036548832, \n    -0.0001280207709, -0.0001402037148, -0.0001218294388, -0.0000365488316, \n    +0.0000914719393, +0.0001889354903, +0.0002376672658, +0.0002316756541, \n    +0.0001280207709, +0.0000000000000, -0.0000792889954, -0.0000974635510, \n    -0.0000914719393, -0.0000609147194, -0.0000061913321, +0.0000427401638, \n    +0.0001158378270, +0.0001280207709, -0.0000121829439, -0.0001218294388, \n    -0.0000671060515, +0.0000305572199, +0.0000730976633, +0.0000792889954, \n    +0.0000730976633, +0.0000243658878, -0.0001036548832, -0.0001889354903, \n    -0.0001461953265, -0.0000487317755, -0.0000121829439, -0.0000305572199, \n    -0.0000487317755, +0.0000121829439, +0.0001523866587, +0.0002133013781, \n    +0.0001218294388, +0.0000183742760, +0.0000000000000, -0.0000121829439, \n    -0.0000121829439, +0.0000061913321, +0.0000000000000, -0.0000792889954, \n    -0.0001951268224, -0.0002498502097, -0.0001402037148, +0.0000305572199, \n    +0.0001036548832, +0.0000487317755, +0.0000243658878, +0.0001218294388, \n    +0.0001889354903, +0.0000549231076, -0.0001340123827, -0.0001767525464, \n    -0.0001402037148, -0.0001280207709, -0.0000730976633, +0.0000305572199, \n    +0.0001218294388, +0.0001583782704, +0.0001645696026, +0.0001280207709, \n    -0.0000061913321, -0.0001767525464, -0.0002620331536, -0.0002316756541, \n    -0.0001645696026, -0.0000487317755, +0.0000974635510, +0.0002620331536, \n    +0.0003351308169, +0.0002498502097, +0.0000427401638, -0.0001280207709, \n    -0.0002133013781, -0.0002194927102, -0.0001523866587, +0.0000000000000, \n    +0.0001340123827, +0.0001645696026, +0.0001158378270, +0.0001036548832, \n    +0.0001218294388, +0.0001280207709, +0.0000792889954, -0.0000365488316, \n    -0.0001583782704, -0.0001829438786, -0.0001036548832, +0.0000183742760, \n    +0.0001218294388, +0.0001402037148, +0.0001096464949, +0.0000243658878, \n    -0.0001096464949, -0.0002011184342, -0.0001705612143, -0.0000183742760, \n    +0.0001645696026, +0.0002254843219, +0.0001340123827, -0.0000183742760, \n    -0.0001767525464, -0.0002376672658, -0.0001218294388, +0.0001096464949, \n    +0.0003535050929, +0.0004387857000, +0.0003047733174, +0.0000243658878, \n    -0.0002376672658, -0.0004509686439, -0.0005242660276, -0.0003840623128, \n    -0.0000914719393, +0.0001705612143, +0.0002742160975, +0.0001829438786, \n    +0.0000487317755, +0.0000061913321, +0.0000183742760, +0.0000000000000, \n    -0.0000061913321, +0.0000427401638, +0.0000852806071, +0.0000730976633, \n    +0.0000305572199, -0.0000121829439, -0.0000427401638, -0.0000427401638, \n    -0.0000487317755, -0.0000243658878, +0.0000487317755, +0.0001218294388, \n    +0.0000671060515, -0.0000305572199, -0.0000792889954, -0.0000183742760, \n    +0.0000365488316, +0.0000243658878, -0.0000305572199, -0.0000427401638, \n    -0.0000061913321, +0.0000427401638, +0.0000730976633, +0.0001158378270, \n    +0.0002073097663, +0.0002620331536, +0.0001889354903, +0.0000914719393, \n    +0.0000549231076, -0.0000183742760, -0.0001402037148, -0.0001705612143, \n    -0.0000730976633, +0.0000365488316, +0.0000914719393, +0.0001158378270, \n    +0.0001583782704, +0.0001402037148, +0.0000487317755, -0.0000609147194, \n    -0.0001218294388, -0.0001340123827, -0.0000852806071, -0.0000183742760, \n    +0.0000671060515, +0.0001645696026, +0.0002133013781, +0.0001402037148, \n    +0.0000243658878, -0.0000487317755, -0.0000609147194, -0.0000061913321, \n    +0.0000852806071, +0.0001402037148, +0.0001158378270, +0.0000000000000, \n    -0.0001340123827, -0.0001889354903, -0.0001280207709, -0.0000792889954, \n    -0.0000852806071, -0.0000549231076, +0.0000305572199, +0.0001096464949, \n    +0.0001218294388, +0.0000730976633, +0.0000061913321, -0.0000243658878, \n    -0.0000671060515, -0.0000671060515, +0.0000183742760, +0.0001402037148, \n    +0.0001523866587, +0.0000305572199, -0.0001158378270, -0.0001461953265, \n    -0.0000671060515, +0.0000671060515, +0.0001767525464, +0.0001583782704, \n    +0.0000183742760, -0.0001036548832, -0.0001829438786, -0.0002133013781, \n    -0.0001889354903, -0.0000852806071, +0.0000792889954, +0.0002438585980, \n    +0.0002985819852, +0.0001829438786, +0.0000121829439, -0.0000671060515, \n    -0.0000792889954, -0.0000792889954, -0.0000730976633, -0.0000305572199, \n    +0.0000487317755, +0.0000852806071, +0.0000487317755, +0.0000061913321, \n    -0.0000061913321, -0.0000852806071, -0.0002376672658, -0.0003169562612, \n    -0.0002498502097, -0.0001402037148, -0.0000609147194, +0.0000183742760, \n    +0.0000609147194, +0.0000121829439, -0.0000487317755, -0.0000183742760, \n    +0.0000852806071, +0.0001461953265, +0.0001036548832, +0.0000183742760, \n    -0.0000427401638, -0.0000792889954, -0.0001096464949, -0.0001402037148, \n    -0.0000914719393, +0.0000243658878, +0.0001218294388, +0.0000914719393, \n    -0.0000427401638, -0.0001645696026, -0.0001829438786, -0.0000914719393, \n    +0.0000609147194, +0.0001523866587, +0.0000974635510, +0.0000061913321, \n    -0.0000852806071, -0.0001889354903, -0.0002376672658, -0.0001583782704, \n    +0.0000000000000, +0.0001523866587, +0.0002073097663, +0.0001645696026, \n    +0.0000671060515, +0.0000000000000, +0.0000000000000, +0.0000061913321, \n    -0.0000305572199, -0.0000852806071, -0.0001158378270, -0.0001340123827, \n    -0.0001096464949, -0.0000549231076, -0.0000121829439, +0.0000000000000, \n    +0.0000243658878, +0.0000671060515, +0.0000852806071, +0.0000549231076, \n    +0.0000305572199, +0.0000427401638, +0.0000549231076, +0.0000061913321, \n    -0.0000792889954, -0.0001340123827, -0.0000974635510, +0.0000243658878, \n    +0.0001583782704, +0.0001705612143, +0.0000730976633, +0.0000000000000, \n    -0.0000183742760, -0.0000243658878, -0.0000305572199, -0.0000183742760, \n    +0.0000061913321, +0.0000305572199, +0.0000061913321, -0.0000305572199, \n    -0.0000609147194, -0.0000549231076, -0.0000243658878, +0.0000183742760, \n    +0.0000243658878, +0.0000121829439, +0.0000487317755, +0.0001402037148, \n    +0.0001218294388, -0.0000365488316, -0.0001767525464, -0.0001583782704, \n    -0.0000365488316, +0.0000671060515, +0.0001280207709, +0.0001402037148, \n    +0.0000671060515, -0.0000671060515, -0.0001645696026, -0.0001096464949, \n    +0.0000365488316, +0.0001280207709, +0.0000671060515, -0.0000427401638, \n    -0.0000792889954, -0.0000487317755, -0.0000061913321, +0.0000730976633, \n    +0.0001461953265, +0.0001402037148, +0.0000671060515, +0.0000000000000, \n    -0.0000427401638, -0.0000671060515, -0.0000730976633, -0.0000183742760, \n    +0.0001036548832, +0.0001767525464, +0.0000974635510, -0.0000549231076, \n    -0.0001523866587, -0.0001523866587, -0.0000792889954, +0.0000121829439, \n    +0.0001158378270, +0.0001889354903, +0.0001889354903, +0.0000730976633, \n    -0.0000609147194, -0.0001158378270, -0.0000609147194, +0.0000243658878, \n    +0.0001218294388, +0.0001889354903, +0.0001767525464, +0.0000852806071, \n    -0.0000365488316, -0.0001402037148, -0.0001523866587, -0.0000730976633, \n    +0.0000183742760, +0.0001096464949, +0.0001951268224, +0.0002316756541, \n    +0.0001645696026, +0.0000549231076, -0.0000305572199, -0.0000914719393, \n    -0.0001280207709, -0.0001096464949, -0.0000365488316, +0.0000549231076, \n    +0.0001158378270, +0.0001158378270, +0.0000609147194, +0.0000061913321, \n    -0.0000487317755, -0.0000914719393, -0.0000365488316, +0.0000852806071, \n    +0.0001523866587, +0.0000974635510, -0.0000243658878, -0.0001158378270, \n    -0.0001280207709, -0.0001036548832, -0.0000305572199, +0.0000183742760, \n    +0.0000000000000, -0.0000671060515, -0.0000792889954, -0.0000121829439, \n    +0.0000792889954, +0.0001583782704, +0.0001767525464, +0.0001036548832, \n    -0.0000061913321, -0.0000730976633, -0.0000487317755, +0.0000000000000, \n    +0.0000365488316, +0.0000183742760, -0.0000243658878, -0.0000730976633, \n    -0.0000792889954, -0.0000365488316, +0.0000243658878, +0.0000609147194, \n    +0.0000121829439, -0.0000549231076, -0.0000792889954, -0.0000974635510, \n    -0.0001218294388, -0.0000730976633, +0.0000183742760, +0.0000974635510, \n    +0.0001218294388, +0.0001096464949, +0.0000730976633, +0.0000305572199, \n    -0.0000243658878, -0.0000365488316, +0.0000061913321, +0.0000730976633, \n    +0.0000852806071, +0.0000243658878, -0.0000427401638, -0.0000974635510, \n    -0.0001280207709, -0.0000914719393, +0.0000000000000, +0.0000671060515, \n    +0.0000852806071, +0.0000852806071, +0.0000609147194, -0.0000243658878, \n    -0.0001036548832, -0.0000974635510, -0.0000243658878, +0.0000305572199, \n    +0.0000427401638, +0.0000121829439, -0.0000121829439, -0.0000183742760, \n    +0.0000549231076, +0.0001705612143, +0.0001889354903, +0.0000549231076, \n    -0.0000914719393, -0.0001158378270, -0.0000792889954, -0.0001036548832, \n    -0.0001218294388, -0.0000549231076, +0.0000183742760, +0.0000427401638, \n    +0.0000183742760, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    -0.0000487317755, -0.0000852806071, -0.0000852806071, -0.0000427401638, \n    +0.0000365488316, +0.0001340123827, +0.0002011184342, +0.0001829438786, \n    +0.0001158378270, +0.0000365488316, -0.0000730976633, -0.0002376672658, \n    -0.0003291392051, -0.0002194927102, +0.0000000000000, +0.0001583782704, \n    +0.0001951268224, +0.0001523866587, +0.0000609147194, -0.0000549231076, \n    -0.0001523866587, -0.0001645696026, -0.0001096464949, -0.0000121829439, \n    +0.0000792889954, +0.0001461953265, +0.0001523866587, +0.0000974635510, \n    -0.0000243658878, -0.0001583782704, -0.0002073097663, -0.0001036548832, \n    +0.0000671060515, +0.0001523866587, +0.0001461953265, +0.0001218294388, \n    +0.0000974635510, +0.0000487317755, -0.0000243658878, -0.0000974635510, \n    -0.0001158378270, -0.0000792889954, -0.0000305572199, +0.0000183742760, \n    +0.0000549231076, +0.0000671060515, +0.0001158378270, +0.0001829438786, \n    +0.0001767525464, +0.0000671060515, -0.0000792889954, -0.0001767525464, \n    -0.0002011184342, -0.0001705612143, -0.0000730976633, +0.0000974635510, \n    +0.0002376672658, +0.0002316756541, +0.0001523866587, +0.0000852806071, \n    +0.0000365488316, -0.0000243658878, -0.0001158378270, -0.0001705612143, \n    -0.0001340123827, -0.0000365488316, +0.0000061913321, +0.0000243658878, \n    +0.0000730976633, +0.0000914719393, +0.0000243658878, -0.0000549231076, \n    -0.0000914719393, -0.0000487317755, -0.0000061913321, -0.0000121829439, \n    -0.0000427401638, -0.0000365488316, +0.0000000000000, +0.0000121829439, \n    +0.0000000000000, -0.0000427401638, -0.0000792889954, -0.0000914719393, \n    -0.0000671060515, -0.0000061913321, +0.0000365488316, +0.0000549231076, \n    +0.0000427401638, +0.0000183742760, +0.0000000000000, -0.0000183742760, \n    -0.0000243658878, -0.0000487317755, -0.0000730976633, -0.0000792889954, \n    -0.0000427401638, +0.0000183742760, +0.0000427401638, +0.0000183742760, \n    +0.0000000000000, -0.0000061913321, +0.0000000000000, +0.0000121829439, \n    +0.0000000000000, -0.0000427401638, -0.0000243658878, +0.0000243658878, \n    +0.0000487317755, +0.0000549231076, +0.0000549231076, +0.0000061913321, \n    -0.0000549231076, -0.0000549231076, +0.0000365488316, +0.0001218294388, \n    +0.0000792889954, -0.0000305572199, -0.0000852806071, -0.0000487317755, \n    +0.0000061913321, +0.0000427401638, +0.0000671060515, +0.0001096464949, \n    +0.0001096464949, +0.0000243658878, -0.0000974635510, -0.0001340123827, \n    -0.0001036548832, -0.0000671060515, +0.0000000000000, +0.0001218294388, \n    +0.0002620331536, +0.0003047733174, +0.0002133013781, +0.0000487317755, \n    -0.0000974635510, -0.0002254843219, -0.0002863990413, -0.0002620331536, \n    -0.0001645696026, -0.0000487317755, +0.0000852806071, +0.0002011184342, \n    +0.0002376672658, +0.0001645696026, +0.0000549231076, +0.0000061913321, \n    +0.0000121829439, -0.0000243658878, -0.0001158378270, -0.0001523866587, \n    -0.0000609147194, +0.0000427401638, +0.0000852806071, +0.0000730976633, \n    +0.0000487317755, +0.0000121829439, -0.0000243658878, -0.0000730976633, \n    -0.0000974635510, -0.0000730976633, -0.0000243658878, +0.0000000000000, \n    +0.0000243658878, +0.0000487317755, +0.0000305572199, +0.0000000000000, \n    +0.0000121829439, +0.0000365488316, +0.0000183742760, +0.0000000000000, \n    -0.0000183742760, +0.0000000000000, +0.0000427401638, +0.0000852806071, \n    +0.0000974635510, +0.0000974635510, +0.0000609147194, -0.0000121829439, \n    -0.0001218294388, -0.0001829438786, -0.0001583782704, -0.0000365488316, \n    +0.0001218294388, +0.0002438585980, +0.0002194927102, +0.0000549231076, \n    -0.0001280207709, -0.0002133013781, -0.0001280207709, +0.0000427401638, \n    +0.0001829438786, +0.0002073097663, +0.0001705612143, +0.0001096464949, \n    +0.0000305572199, -0.0000427401638, -0.0000730976633, -0.0000914719393, \n    -0.0001036548832, -0.0000671060515, +0.0000305572199, +0.0001340123827, \n    +0.0001705612143, +0.0000730976633, -0.0000609147194, -0.0000914719393, \n    -0.0000061913321, +0.0000487317755, +0.0000243658878, -0.0000305572199, \n    -0.0000671060515, -0.0000671060515, -0.0000183742760, +0.0000549231076, \n    +0.0001096464949, +0.0001096464949, +0.0000549231076, -0.0000121829439, \n    -0.0000671060515, -0.0000609147194, -0.0000183742760, +0.0000549231076, \n    +0.0001096464949, +0.0001280207709, +0.0000609147194, -0.0000487317755, \n    -0.0002073097663, -0.0003107649291, -0.0002682244857, -0.0000730976633, \n    +0.0001158378270, +0.0002011184342, +0.0001767525464, +0.0001096464949, \n    +0.0000183742760, -0.0001036548832, -0.0002133013781, -0.0001951268224, \n    -0.0000549231076, +0.0000974635510, +0.0001829438786, +0.0001158378270, \n    -0.0000487317755, -0.0001829438786, -0.0002254843219, -0.0001705612143, \n    -0.0000183742760, +0.0001461953265, +0.0002254843219, +0.0001461953265, \n    +0.0000183742760, -0.0000487317755, -0.0000671060515, -0.0000914719393, \n    -0.0000852806071, -0.0000183742760, +0.0000487317755, +0.0000730976633, \n    +0.0000609147194, +0.0000609147194, +0.0000487317755, -0.0000061913321, \n    -0.0000730976633, -0.0000671060515, +0.0000183742760, +0.0000852806071, \n    +0.0000609147194, +0.0000000000000, -0.0000305572199, -0.0000061913321, \n    +0.0000183742760, +0.0000121829439, -0.0000121829439, +0.0000000000000, \n    +0.0000365488316, +0.0000427401638, +0.0000061913321, -0.0000183742760, \n    -0.0000305572199, -0.0000549231076, -0.0001036548832, -0.0001036548832, \n    -0.0000061913321, +0.0001218294388, +0.0002011184342, +0.0001951268224, \n    +0.0001280207709, +0.0000183742760, -0.0000914719393, -0.0001767525464, \n    -0.0002073097663, -0.0001583782704, -0.0000427401638, +0.0000427401638, \n    +0.0000487317755, +0.0000061913321, +0.0000183742760, +0.0000671060515, \n    +0.0000730976633, +0.0000061913321, -0.0000243658878, +0.0000000000000, \n    -0.0000061913321, -0.0000974635510, -0.0001705612143, -0.0001340123827, \n    +0.0000000000000, +0.0000730976633, +0.0000305572199, -0.0000365488316, \n    -0.0000671060515, -0.0000730976633, -0.0000730976633, -0.0000487317755, \n    +0.0000549231076, +0.0002073097663, +0.0002742160975, +0.0002011184342, \n    +0.0000061913321, -0.0001583782704, -0.0002073097663, -0.0001461953265, \n    -0.0000730976633, -0.0000061913321, +0.0000365488316, +0.0000365488316, \n    -0.0000121829439, -0.0000305572199, +0.0000365488316, +0.0001583782704, \n    +0.0001889354903, +0.0001036548832, -0.0000305572199, -0.0001402037148, \n    -0.0001829438786, -0.0001340123827, -0.0000061913321, +0.0001218294388, \n    +0.0001767525464, +0.0001340123827, +0.0000549231076, +0.0000121829439, \n    +0.0000061913321, -0.0000305572199, -0.0001096464949, -0.0001280207709, \n    -0.0000183742760, +0.0000730976633, +0.0000671060515, +0.0000365488316, \n    +0.0000914719393, +0.0001523866587, +0.0001096464949, -0.0000427401638, \n    -0.0001951268224, -0.0002560415418, -0.0001889354903, -0.0000305572199, \n    +0.0001583782704, +0.0002560415418, +0.0002133013781, +0.0001036548832, \n    +0.0000000000000, -0.0000974635510, -0.0001402037148, -0.0001096464949, \n    -0.0000243658878, +0.0000487317755, +0.0000852806071, +0.0000549231076, \n    -0.0000305572199, -0.0000792889954, -0.0000549231076, +0.0000061913321, \n    +0.0000671060515, +0.0000792889954, +0.0000000000000, -0.0000852806071, \n    -0.0000852806071, +0.0000061913321, +0.0001158378270, +0.0001767525464, \n    +0.0001645696026, +0.0000671060515, -0.0000914719393, -0.0001951268224, \n    -0.0001340123827, +0.0000121829439, +0.0000852806071, +0.0000365488316, \n    -0.0000365488316, -0.0000730976633, -0.0000427401638, +0.0000365488316, \n    +0.0001340123827, +0.0001645696026, +0.0000914719393, -0.0000243658878, \n    -0.0000852806071, -0.0000671060515, -0.0000183742760, +0.0000000000000, \n    -0.0000305572199, -0.0000609147194, +0.0000061913321, +0.0000792889954, \n    +0.0000671060515, -0.0000121829439, -0.0000305572199, +0.0000183742760, \n    +0.0000487317755, +0.0000183742760, +0.0000000000000, -0.0000061913321, \n    -0.0000365488316, -0.0000914719393, -0.0001340123827, -0.0001158378270, \n    -0.0000487317755, +0.0000061913321, +0.0000365488316, +0.0000609147194, \n    +0.0000852806071, +0.0001158378270, +0.0001158378270, +0.0000852806071, \n    +0.0000000000000, -0.0000974635510, -0.0001158378270, -0.0000183742760, \n    +0.0000609147194, +0.0000730976633, +0.0000609147194, +0.0000549231076, \n    +0.0000365488316, -0.0000305572199, -0.0000914719393, -0.0000671060515, \n    +0.0000121829439, +0.0000852806071, +0.0001461953265, +0.0001705612143, \n    +0.0001340123827, +0.0000549231076, -0.0000121829439, -0.0000609147194, \n    -0.0000792889954, -0.0000852806071, -0.0000730976633, -0.0000487317755, \n    +0.0000243658878, +0.0001036548832, +0.0001280207709, +0.0001036548832, \n    +0.0000487317755, -0.0000365488316, -0.0001218294388, -0.0001461953265, \n    -0.0000914719393, +0.0000000000000, +0.0000792889954, +0.0001340123827, \n    +0.0001036548832, +0.0000061913321, -0.0000427401638, -0.0000305572199, \n    -0.0000365488316, -0.0000792889954, -0.0000974635510, -0.0000365488316, \n    +0.0000305572199, +0.0000487317755, +0.0000121829439, +0.0000000000000, \n    +0.0000000000000, +0.0000121829439, +0.0000000000000, -0.0000183742760, \n    -0.0000427401638, -0.0000365488316, -0.0000243658878, -0.0000121829439, \n    -0.0000121829439, -0.0000305572199, -0.0000121829439, +0.0000365488316, \n    +0.0000730976633, +0.0000852806071, +0.0001096464949, +0.0001340123827, \n    +0.0001158378270, +0.0000061913321, -0.0001280207709, -0.0001951268224, \n    -0.0001280207709, -0.0000305572199, +0.0000365488316, +0.0000730976633, \n    +0.0000974635510, +0.0000671060515, +0.0000000000000, -0.0000549231076, \n    -0.0000427401638, +0.0000183742760, +0.0000852806071, +0.0000914719393, \n    +0.0000549231076, +0.0000121829439, -0.0000305572199, -0.0000730976633, \n    -0.0001036548832, -0.0000914719393, -0.0000365488316, +0.0000427401638, \n    +0.0001036548832, +0.0001096464949, +0.0000609147194, +0.0000061913321, \n    -0.0000183742760\n};\n"
  },
  {
    "path": "impulses/05-fender-68-vibrolux-sm57-off.h",
    "content": "float fender_68_vibrolux_sm57_off[] = {\n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000058490566, +0.0000115094340, +0.0000115094340, \n    +0.0000058490566, +0.0000000000000, +0.0000000000000, -0.0000173584906, \n    -0.0000288679245, -0.0000173584906, -0.0000058490566, +0.0000000000000, \n    +0.0000058490566, +0.0000230188679, +0.0000288679245, +0.0000173584906, \n    +0.0000115094340, +0.0000115094340, +0.0000058490566, -0.0000115094340, \n    -0.0000345283019, -0.0000230188679, +0.0000000000000, +0.0000058490566, \n    +0.0000230188679, +0.0000518867925, +0.0000633962264, +0.0000288679245, \n    -0.0000058490566, -0.0000173584906, -0.0000230188679, -0.0000690566038, \n    -0.0001035849057, -0.0000749056604, -0.0000518867925, -0.0000288679245, \n    +0.0000173584906, +0.0000979245283, +0.0001439622642, +0.0001209433962, \n    +0.0000575471698, +0.0000288679245, +0.0000115094340, -0.0000518867925, \n    -0.0000864150943, -0.0000633962264, -0.0000690566038, -0.0000749056604, \n    -0.0000345283019, +0.0000460377358, +0.0001035849057, +0.0000749056604, \n    +0.0000173584906, +0.0000000000000, -0.0000518867925, -0.0001266037736, \n    -0.0001496226415, -0.0000864150943, -0.0000288679245, -0.0000058490566, \n    +0.0000403773585, +0.0001496226415, +0.0002188679245, +0.0002073584906, \n    +0.0001496226415, +0.0001094339623, -0.0000058490566, -0.0002073584906, \n    -0.0002935849057, -0.0002360377358, -0.0001843396226, -0.0001728301887, \n    -0.0000864150943, +0.0000518867925, +0.0001381132075, +0.0001324528302, \n    +0.0001324528302, +0.0001611320755, +0.0000920754717, -0.0000690566038, \n    -0.0001728301887, -0.0001324528302, -0.0000690566038, -0.0000345283019, \n    +0.0000460377358, +0.0001843396226, +0.0002360377358, +0.0001496226415, \n    +0.0000690566038, +0.0000518867925, -0.0000230188679, -0.0002188679245, \n    -0.0003109433962, -0.0002820754717, -0.0002590566038, -0.0002360377358, \n    -0.0000864150943, +0.0001669811321, +0.0003050943396, +0.0002705660377, \n    +0.0002533962264, +0.0002649056604, +0.0001496226415, -0.0000575471698, \n    -0.0001554716981, -0.0001094339623, -0.0001611320755, -0.0002764150943, \n    -0.0001784905660, +0.0000575471698, +0.0001784905660, +0.0001439622642, \n    +0.0001381132075, +0.0001324528302, -0.0000403773585, -0.0002764150943, \n    -0.0002705660377, -0.0001843396226, -0.0001728301887, -0.0001784905660, \n    +0.0000173584906, +0.0002590566038, +0.0003513207547, +0.0003684905660, \n    +0.0004664150943, +0.0004145283019, +0.0001381132075, -0.0001843396226, \n    -0.0003339622642, -0.0003800000000, -0.0003915094340, -0.0003743396226, \n    -0.0002360377358, -0.0000345283019, +0.0001209433962, +0.0001611320755, \n    +0.0003454716981, +0.0004088679245, +0.0002705660377, -0.0000173584906, \n    -0.0002015094340, -0.0002935849057, -0.0002705660377, -0.0001669811321, \n    +0.0000690566038, +0.0002245283019, +0.0003915094340, +0.0002994339623, \n    +0.0002360377358, +0.0003513207547, +0.0002590566038, -0.0002820754717, \n    -0.0005239622642, -0.0005930188679, -0.0006679245283, -0.0007083018868, \n    -0.0003109433962, +0.0002073584906, +0.0006390566038, +0.0005584905660, \n    +0.0005988679245, +0.0007139622642, +0.0007369811321, +0.0002820754717, \n    +0.0000805660377, -0.0001554716981, -0.0006218867925, -0.0005700000000, \n    -0.0014222641509, +0.0012494339623, -0.0011054716981, +0.0006505660377, \n    +0.0012839622642, +0.0004720754717, -0.0003339622642, -0.0003109433962, \n    -0.0004145283019, +0.0001209433962, -0.0005354716981, -0.0007945283019, \n    -0.0006390566038, -0.0001150943396, +0.0014509433962, +0.0018311320755, \n    +0.0025967924528, +0.0020843396226, +0.0011977358491, -0.0000058490566, \n    -0.0001496226415, -0.0004490566038, -0.0015662264151, -0.0021937735849, \n    -0.0020843396226, -0.0022167924528, -0.0020843396226, -0.0009788679245, \n    +0.0102262264151, +0.0023666037736, -0.0383369811321, -0.0203432075472, \n    +0.0619162264151, +0.1230203773585, +0.1472445283019, +0.0346230188679, \n    -0.1634301886792, -0.1886618867925, -0.1050035849057, -0.0972762264151, \n    -0.0602809433962, +0.0353083018868, +0.0883224528302, +0.1019000000000, \n    +0.0746586792453, -0.0028962264151, -0.0535266037736, -0.0531984905660, \n    -0.0456554716981, -0.0065986792453, +0.0382794339623, +0.0257441509434, \n    +0.0106811320755, +0.0023320754717, -0.0163298113208, -0.0001150943396, \n    +0.0238324528302, +0.0151435849057, +0.0106350943396, -0.0045200000000, \n    -0.0224850943396, -0.0252490566038, -0.0104220754717, +0.0157769811321, \n    +0.0307249056604, +0.0190418867925, -0.0186560377358, -0.0411700000000, \n    -0.0182530188679, +0.0223181132075, +0.0430183018868, +0.0362698113208, \n    +0.0010364150943, -0.0170898113208, -0.0084067924528, +0.0088039622642, \n    +0.0251281132075, +0.0365405660377, +0.0253871698113, -0.0071975471698, \n    -0.0337247169811, -0.0364311320755, -0.0246501886792, +0.0083318867925, \n    +0.0403466037736, +0.0369377358491, +0.0125179245283, -0.0131167924528, \n    -0.0334254716981, -0.0265156603774, -0.0011918867925, +0.0154603773585, \n    +0.0179707547170, +0.0134277358491, +0.0044913207547, +0.0026660377358, \n    +0.0049692452830, +0.0030516981132, +0.0074450943396, +0.0240858490566, \n    +0.0263315094340, +0.0106350943396, -0.0040939622642, -0.0194735849057, \n    -0.0261760377358, -0.0106811320755, +0.0057118867925, +0.0090862264151, \n    +0.0086658490566, +0.0080728301887, +0.0015833962264, -0.0133241509434, \n    -0.0236079245283, -0.0144469811321, +0.0055679245283, +0.0180226415094, \n    +0.0169458490566, +0.0124430188679, +0.0145447169811, +0.0171647169811, \n    +0.0096332075472, -0.0062013207547, -0.0143316981132, -0.0084124528302, \n    +0.0010883018868, +0.0097311320755, +0.0186675471698, +0.0175966037736, \n    +0.0010364150943, -0.0192260377358, -0.0258592452830, -0.0158805660377, \n    -0.0031439622642, +0.0029366037736, +0.0032130188679, +0.0014739622642, \n    +0.0000805660377, -0.0000864150943, +0.0035066037736, +0.0091841509434, \n    +0.0091092452830, +0.0035815094340, -0.0011862264151, -0.0036390566038, \n    -0.0035009433962, -0.0012264150943, +0.0026315094340, +0.0059422641509, \n    +0.0035469811321, -0.0040709433962, -0.0078884905660, -0.0055796226415, \n    -0.0055564150943, -0.0102090566038, -0.0132492452830, -0.0104796226415, \n    -0.0024298113208, +0.0062935849057, +0.0110900000000, +0.0114815094340, \n    +0.0079864150943, +0.0010133962264, -0.0070650943396, -0.0125639622642, \n    -0.0127483018868, -0.0057696226415, +0.0039384905660, +0.0075315094340, \n    +0.0040075471698, +0.0003166037736, -0.0011458490566, -0.0015258490566, \n    -0.0009558490566, -0.0019116981132, -0.0037139622642, -0.0043300000000, \n    -0.0059941509434, -0.0079230188679, -0.0079058490566, -0.0068692452830, \n    -0.0040824528302, -0.0007658490566, +0.0014913207547, +0.0017964150943, \n    -0.0001784905660, -0.0029481132075, -0.0048598113208, -0.0052224528302, \n    -0.0040133962264, -0.0023722641509, +0.0000749056604, +0.0019922641509, \n    +0.0024126415094, +0.0021822641509, +0.0009962264151, -0.0019577358491, \n    -0.0046639622642, -0.0052743396226, -0.0051418867925, -0.0055047169811, \n    -0.0046467924528, -0.0021650943396, +0.0000230188679, +0.0017447169811, \n    +0.0016411320755, -0.0012322641509, -0.0043013207547, -0.0043300000000, \n    -0.0013532075472, +0.0017447169811, +0.0026775471698, +0.0023952830189, \n    +0.0009558490566, -0.0016467924528, -0.0041113207547, -0.0052513207547, \n    -0.0047388679245, -0.0028445283019, -0.0008694339623, +0.0005873584906, \n    +0.0011747169811, +0.0006737735849, +0.0007139622642, +0.0005009433962, \n    -0.0008233962264, -0.0012667924528, -0.0005009433962, -0.0012552830189, \n    -0.0025967924528, -0.0023320754717, -0.0016813207547, -0.0017447169811, \n    -0.0010998113208, +0.0008003773585, +0.0025450943396, +0.0027120754717, \n    +0.0005413207547, -0.0021420754717, -0.0028100000000, -0.0017101886792, \n    -0.0013069811321, -0.0015373584906, -0.0011169811321, -0.0007830188679, \n    -0.0012092452830, -0.0005584905660, +0.0016352830189, +0.0032994339623, \n    +0.0032360377358, +0.0017273584906, -0.0003684905660, -0.0020211320755, \n    -0.0031611320755, -0.0029711320755, -0.0011632075472, +0.0007773584906, \n    +0.0015662264151, +0.0017907547170, +0.0018022641509, +0.0008637735849, \n    -0.0005873584906, -0.0004490566038, +0.0012437735849, +0.0016756603774, \n    +0.0007428301887, +0.0005009433962, +0.0011977358491, +0.0021650943396, \n    +0.0024816981132, +0.0021016981132, +0.0013877358491, +0.0004605660377, \n    -0.0004088679245, -0.0009098113208, -0.0008867924528, -0.0000749056604, \n    +0.0009903773585, +0.0008694339623, -0.0000633962264, -0.0004664150943, \n    +0.0006505660377, +0.0020728301887, +0.0021881132075, +0.0015662264151, \n    +0.0012552830189, +0.0019058490566, +0.0025852830189, +0.0018771698113, \n    +0.0006505660377, -0.0001324528302, -0.0009500000000, -0.0010249056604, \n    -0.0001554716981, +0.0003224528302, +0.0003109433962, +0.0006275471698, \n    +0.0009788679245, +0.0009328301887, +0.0016583018868, +0.0023262264151, \n    +0.0011918867925, -0.0000403773585, +0.0000749056604, +0.0006275471698, \n    +0.0013588679245, +0.0019692452830, +0.0014798113208, -0.0000518867925, \n    -0.0012033962264, -0.0012667924528, -0.0009903773585, -0.0006564150943, \n    +0.0001324528302, +0.0011977358491, +0.0018943396226, +0.0014913207547, \n    +0.0008233962264, +0.0010998113208, +0.0009788679245, +0.0004030188679, \n    -0.0004894339623, -0.0011284905660, -0.0004375471698, +0.0008292452830, \n    +0.0014222641509, +0.0009788679245, +0.0004605660377, +0.0007024528302, \n    +0.0002649056604, -0.0011054716981, -0.0011688679245, -0.0000864150943, \n    +0.0006622641509, +0.0002015094340, -0.0007024528302, -0.0000920754717, \n    +0.0007945283019, +0.0004835849057, +0.0001611320755, +0.0004779245283, \n    +0.0012783018868, +0.0013588679245, -0.0003628301887, -0.0012724528302, \n    -0.0003800000000, +0.0007773584906, +0.0012379245283, +0.0007139622642, \n    +0.0005067924528, +0.0011688679245, +0.0007715094340, -0.0006737735849, \n    -0.0008233962264, +0.0004779245283, +0.0007715094340, -0.0009328301887, \n    -0.0025105660377, -0.0030171698113, -0.0023320754717, -0.0009730188679, \n    -0.0000864150943, +0.0010479245283, +0.0016007547170, +0.0002533962264, \n    -0.0005930188679, -0.0007600000000, -0.0000403773585, +0.0014107547170, \n    +0.0013877358491, +0.0003743396226, +0.0005354716981, +0.0008349056604, \n    +0.0000000000000, -0.0007313207547, -0.0009673584906, -0.0018656603774, \n    -0.0028790566038, -0.0018311320755, +0.0001784905660, +0.0005988679245, \n    -0.0001324528302, -0.0004720754717, +0.0000173584906, +0.0005988679245, \n    +0.0007830188679, +0.0007945283019, +0.0007658490566, -0.0004433962264, \n    -0.0014913207547, -0.0004720754717, +0.0006218867925, +0.0006045283019, \n    +0.0005413207547, +0.0004318867925, -0.0004835849057, -0.0010998113208, \n    -0.0000633962264, +0.0007083018868, -0.0008579245283, -0.0019866037736, \n    -0.0010422641509, -0.0001728301887, +0.0004260377358, +0.0007888679245, \n    +0.0007543396226, +0.0002820754717, -0.0004835849057, -0.0004720754717, \n    +0.0000345283019, +0.0004260377358, +0.0008924528302, +0.0010939622642, \n    +0.0005758490566, -0.0006103773585, -0.0015662264151, -0.0007428301887, \n    +0.0004433962264, +0.0004490566038, +0.0005298113208, +0.0009500000000, \n    +0.0006045283019, +0.0003743396226, +0.0004433962264, +0.0003858490566, \n    +0.0005354716981, +0.0003283018868, -0.0005528301887, -0.0007313207547, \n    -0.0003628301887, -0.0005298113208, -0.0006852830189, -0.0001843396226, \n    +0.0006218867925, +0.0006737735849, +0.0002303773585, +0.0006333962264, \n    +0.0012494339623, +0.0005528301887, -0.0008175471698, -0.0015143396226, \n    -0.0007428301887, +0.0002015094340, +0.0002590566038, +0.0007254716981, \n    +0.0022686792453, +0.0026716981132, +0.0013069811321, +0.0004720754717, \n    +0.0008983018868, +0.0008118867925, -0.0002879245283, -0.0013358490566, \n    -0.0010998113208, -0.0001035849057, +0.0002188679245, +0.0003339622642, \n    +0.0011343396226, +0.0013933962264, +0.0008694339623, +0.0007945283019, \n    +0.0009039622642, +0.0005643396226, -0.0001035849057, -0.0004952830189, \n    -0.0001324528302, +0.0009500000000, +0.0015833962264, +0.0011458490566, \n    +0.0002245283019, -0.0002245283019, -0.0002533962264, +0.0001209433962, \n    +0.0011977358491, +0.0016583018868, +0.0009443396226, +0.0006103773585, \n    +0.0006103773585, +0.0001439622642, -0.0002418867925, -0.0001843396226, \n    +0.0000920754717, +0.0005643396226, +0.0013358490566, +0.0016641509434, \n    +0.0011169811321, +0.0003454716981, -0.0004664150943, -0.0009039622642, \n    -0.0004605660377, +0.0002935849057, +0.0010018867925, +0.0016467924528, \n    +0.0013588679245, +0.0007543396226, +0.0003915094340, -0.0004088679245, \n    -0.0012264150943, -0.0011400000000, -0.0005758490566, +0.0003858490566, \n    +0.0014567924528, +0.0018196226415, +0.0016698113208, +0.0009328301887, \n    -0.0003858490566, -0.0013762264151, -0.0015488679245, -0.0011228301887, \n    -0.0000288679245, +0.0015662264151, +0.0023837735849, +0.0014222641509, \n    +0.0004835849057, +0.0005815094340, +0.0004318867925, -0.0002418867925, \n    -0.0003224528302, +0.0004318867925, +0.0012092452830, +0.0013069811321, \n    +0.0010537735849, +0.0008522641509, +0.0003166037736, -0.0006967924528, \n    -0.0010709433962, -0.0004260377358, -0.0002764150943, -0.0008983018868, \n    -0.0009443396226, +0.0001209433962, +0.0009903773585, +0.0009154716981, \n    +0.0006564150943, +0.0006909433962, +0.0009788679245, +0.0011400000000, \n    +0.0009500000000, +0.0006794339623, -0.0000575471698, -0.0014222641509, \n    -0.0018311320755, -0.0007313207547, +0.0003800000000, +0.0005183018868, \n    +0.0004203773585, +0.0009384905660, +0.0012724528302, +0.0008522641509, \n    +0.0007024528302, +0.0007773584906, -0.0000115094340, -0.0012898113208, \n    -0.0014913207547, -0.0004549056604, +0.0004318867925, +0.0003858490566, \n    -0.0001381132075, -0.0003398113208, -0.0000575471698, +0.0002649056604, \n    +0.0006160377358, +0.0006794339623, +0.0001439622642, -0.0005067924528, \n    -0.0009788679245, -0.0012898113208, -0.0013069811321, -0.0009673584906, \n    -0.0001381132075, +0.0004835849057, +0.0001094339623, -0.0005354716981, \n    -0.0007600000000, -0.0003224528302, +0.0004720754717, +0.0008983018868, \n    +0.0010709433962, +0.0010594339623, -0.0000575471698, -0.0017503773585, \n    -0.0023205660377, -0.0018137735849, -0.0009213207547, +0.0000920754717, \n    +0.0008407547170, +0.0007945283019, +0.0000749056604, -0.0008407547170, \n    -0.0010018867925, -0.0004375471698, -0.0001209433962, -0.0000230188679, \n    +0.0000115094340, -0.0004894339623, -0.0009384905660, -0.0009788679245, \n    -0.0005815094340, +0.0001554716981, +0.0004549056604, +0.0000000000000, \n    -0.0005124528302, -0.0008233962264, -0.0011862264151, -0.0013703773585, \n    -0.0009154716981, -0.0001209433962, +0.0004145283019, +0.0000230188679, \n    -0.0012322641509, -0.0016179245283, -0.0010192452830, -0.0008292452830, \n    -0.0003858490566, +0.0007484905660, +0.0015028301887, +0.0012724528302, \n    +0.0000000000000, -0.0012839622642, -0.0016411320755, -0.0014971698113, \n    -0.0011169811321, -0.0007830188679, -0.0006045283019, -0.0002705660377, \n    +0.0000690566038, +0.0002303773585, +0.0001669811321, -0.0002360377358, \n    -0.0007484905660, -0.0007945283019, -0.0003166037736, -0.0001209433962, \n    -0.0005815094340, -0.0008694339623, -0.0006333962264, -0.0004088679245, \n    -0.0004720754717, -0.0004203773585, -0.0002879245283, -0.0002418867925, \n    -0.0000460377358, +0.0000288679245, -0.0002188679245, -0.0005988679245, \n    -0.0008579245283, -0.0008118867925, -0.0005584905660, -0.0002994339623, \n    -0.0001324528302, -0.0001784905660, -0.0003109433962, -0.0004894339623, \n    -0.0006909433962, -0.0007024528302, -0.0008522641509, -0.0010824528302, \n    -0.0007198113208, +0.0001324528302, +0.0009730188679, +0.0014164150943, \n    +0.0013128301887, +0.0008752830189, +0.0000058490566, -0.0009213207547, \n    -0.0012379245283, -0.0010939622642, -0.0009328301887, -0.0008809433962, \n    -0.0007369811321, -0.0002418867925, +0.0002475471698, +0.0002820754717, \n    +0.0002590566038, +0.0004952830189, +0.0004779245283, -0.0001843396226, \n    -0.0007484905660, -0.0005124528302, +0.0000115094340, -0.0001669811321, \n    -0.0006160377358, -0.0005067924528, +0.0000173584906, +0.0004664150943, \n    +0.0005009433962, +0.0003454716981, +0.0004145283019, +0.0002533962264, \n    -0.0005354716981, -0.0008924528302, -0.0003224528302, +0.0002879245283, \n    +0.0004894339623, +0.0006967924528, +0.0007484905660, +0.0002015094340, \n    -0.0005873584906, -0.0007198113208, -0.0002073584906, +0.0000000000000, \n    -0.0001669811321, +0.0000115094340, +0.0006160377358, +0.0008809433962, \n    +0.0006794339623, +0.0007543396226, +0.0008407547170, +0.0004433962264, \n    -0.0002533962264, -0.0006275471698, -0.0005009433962, -0.0001381132075, \n    -0.0001150943396, -0.0002073584906, -0.0001035849057, -0.0000749056604, \n    -0.0003628301887, -0.0003973584906, +0.0001784905660, +0.0007600000000, \n    +0.0010594339623, +0.0012149056604, +0.0011573584906, +0.0007254716981, \n    -0.0001035849057, -0.0008233962264, -0.0009098113208, -0.0004549056604, \n    -0.0001094339623, -0.0000173584906, +0.0001784905660, +0.0003684905660, \n    +0.0003050943396, +0.0002935849057, +0.0003684905660, +0.0002303773585, \n    -0.0002245283019, -0.0004835849057, -0.0002533962264, -0.0001094339623, \n    -0.0000460377358, +0.0001900000000, +0.0003569811321, +0.0002705660377, \n    +0.0001611320755, +0.0000173584906, -0.0002188679245, -0.0003743396226, \n    -0.0003743396226, -0.0002188679245, -0.0000173584906, -0.0000805660377, \n    -0.0003166037736, -0.0002649056604, +0.0001324528302, +0.0005930188679, \n    +0.0007313207547, +0.0004664150943, +0.0005528301887, +0.0009098113208, \n    +0.0006967924528, -0.0000058490566, -0.0007254716981, -0.0011400000000, \n    -0.0010018867925, -0.0006333962264, -0.0002935849057, +0.0000345283019, \n    +0.0002015094340, +0.0002994339623, +0.0006333962264, +0.0009962264151, \n    +0.0011054716981, +0.0012379245283, +0.0012552830189, +0.0003628301887, \n    -0.0006449056604, -0.0009039622642, -0.0009384905660, -0.0011054716981, \n    -0.0009673584906, -0.0001496226415, +0.0007830188679, +0.0011573584906, \n    +0.0011688679245, +0.0009098113208, +0.0002649056604, -0.0003858490566, \n    -0.0007139622642, -0.0005413207547, +0.0000115094340, +0.0004952830189, \n    +0.0004952830189, +0.0003109433962, +0.0003224528302, +0.0002245283019, \n    -0.0002188679245, -0.0005873584906, -0.0003454716981, +0.0003800000000, \n    +0.0007254716981, +0.0004952830189, +0.0002879245283, +0.0001843396226, \n    +0.0001554716981, +0.0001728301887, +0.0001094339623, -0.0001611320755, \n    -0.0003454716981, -0.0001784905660, +0.0000805660377, +0.0000920754717, \n    -0.0001209433962, -0.0003050943396, -0.0002188679245, -0.0002764150943, \n    -0.0004318867925, -0.0001554716981, +0.0003743396226, +0.0004952830189, \n    -0.0000460377358, -0.0007024528302, -0.0006564150943, -0.0001958490566, \n    +0.0000345283019, +0.0001958490566, +0.0005124528302, +0.0005584905660, \n    +0.0000288679245, -0.0006909433962, -0.0008637735849, -0.0004605660377, \n    +0.0000403773585, +0.0001843396226, +0.0001611320755, +0.0002705660377, \n    +0.0000749056604, -0.0006564150943, -0.0008637735849, -0.0000633962264, \n    +0.0005584905660, +0.0003109433962, -0.0001784905660, -0.0003858490566, \n    -0.0003743396226, -0.0004433962264, -0.0005758490566, -0.0003858490566, \n    +0.0001669811321, +0.0002533962264, +0.0000230188679, +0.0002130188679, \n    +0.0001496226415, -0.0002879245283, -0.0000805660377, +0.0004664150943, \n    +0.0004720754717, +0.0001324528302, -0.0002360377358, -0.0005239622642, \n    -0.0005988679245, -0.0003283018868, +0.0001150943396, +0.0003973584906, \n    +0.0004549056604, +0.0006045283019, +0.0007369811321, +0.0005469811321, \n    +0.0002820754717, -0.0000288679245, -0.0003224528302, -0.0002820754717, \n    +0.0000749056604, +0.0003224528302, +0.0004145283019, +0.0002820754717, \n    +0.0001150943396, +0.0000058490566, -0.0001784905660, -0.0003858490566, \n    -0.0002245283019, +0.0001324528302, +0.0003684905660, +0.0005413207547, \n    +0.0007024528302, +0.0004203773585, -0.0002360377358, -0.0005413207547, \n    -0.0002475471698, +0.0003050943396, +0.0006967924528, +0.0007313207547, \n    +0.0003973584906, -0.0001900000000, -0.0006218867925, -0.0006045283019, \n    -0.0002820754717, +0.0002590566038, +0.0005528301887, +0.0002879245283, \n    -0.0000058490566, -0.0000575471698, -0.0000864150943, +0.0000230188679, \n    +0.0002475471698, +0.0003283018868, +0.0002994339623, +0.0001324528302, \n    -0.0002015094340, -0.0003339622642, -0.0001611320755, -0.0000403773585, \n    +0.0000518867925, +0.0000690566038, -0.0001439622642, -0.0002418867925, \n    -0.0002245283019, -0.0002533962264, -0.0001094339623, +0.0001209433962, \n    +0.0004375471698, +0.0007139622642, +0.0003513207547, -0.0002533962264, \n    -0.0003628301887, -0.0001728301887, +0.0000000000000, +0.0003454716981, \n    +0.0004835849057, +0.0001958490566, -0.0001611320755, -0.0002245283019, \n    -0.0000633962264, -0.0000345283019, -0.0001496226415, +0.0000403773585, \n    +0.0003684905660, +0.0004433962264, +0.0003569811321, +0.0002649056604, \n    +0.0001324528302, -0.0000864150943, -0.0002418867925, -0.0002649056604, \n    -0.0002360377358, +0.0001266037736, +0.0005469811321, +0.0004260377358, \n    +0.0000000000000, -0.0005124528302, -0.0008983018868, -0.0005815094340, \n    +0.0000000000000, +0.0001843396226, +0.0001209433962, +0.0003224528302, \n    +0.0006160377358, +0.0004203773585, -0.0001266037736, -0.0002590566038, \n    -0.0002188679245, -0.0003915094340, -0.0003398113208, +0.0002705660377, \n    +0.0007830188679, +0.0005528301887, -0.0003283018868, -0.0008983018868, \n    -0.0007600000000, -0.0003050943396, +0.0000749056604, +0.0004720754717, \n    +0.0007369811321, +0.0005584905660, -0.0001554716981, -0.0005815094340, \n    -0.0002764150943, +0.0001439622642, +0.0002994339623, +0.0001958490566, \n    -0.0000920754717, -0.0003109433962, -0.0004952830189, -0.0006679245283, \n    -0.0002705660377, +0.0005700000000, +0.0012322641509, +0.0014624528302, \n    +0.0006679245283, -0.0007715094340, -0.0014164150943, -0.0010077358491, \n    -0.0003224528302, +0.0005584905660, +0.0013416981132, +0.0013358490566, \n    +0.0004894339623, -0.0004835849057, -0.0010594339623, -0.0010307547170, \n    -0.0004720754717, -0.0000575471698, +0.0000690566038, +0.0006333962264, \n    +0.0011862264151, +0.0009788679245, +0.0003973584906, -0.0000690566038, \n    -0.0004318867925, -0.0004664150943, -0.0003454716981, -0.0000115094340, \n    +0.0007139622642, +0.0010767924528, +0.0004145283019, -0.0005815094340, \n    -0.0011458490566, -0.0010594339623, -0.0007313207547, -0.0003628301887, \n    +0.0002303773585, +0.0007600000000, +0.0008694339623, +0.0005413207547, \n    +0.0001900000000, +0.0000230188679, -0.0002935849057, -0.0006045283019, \n    -0.0002130188679, +0.0004203773585, +0.0005009433962, +0.0000979245283, \n    -0.0000575471698, +0.0004203773585, +0.0006852830189, +0.0000288679245, \n    -0.0005067924528, -0.0002820754717, -0.0000230188679, +0.0000173584906, \n    +0.0000288679245, +0.0001496226415, +0.0001381132075, -0.0002590566038, \n    -0.0004894339623, -0.0001958490566, +0.0002418867925, +0.0004952830189, \n    +0.0003569811321, -0.0000575471698, -0.0001496226415, +0.0001266037736, \n    +0.0001958490566, -0.0000749056604, -0.0001843396226, +0.0000000000000, \n    +0.0001150943396, -0.0002705660377, -0.0005873584906, -0.0000345283019, \n    +0.0006679245283, +0.0003569811321, -0.0001728301887, -0.0001035849057, \n    +0.0002130188679, +0.0000518867925, -0.0002188679245, +0.0000575471698, \n    +0.0006333962264, +0.0005700000000, +0.0000058490566, -0.0003398113208, \n    -0.0003398113208, -0.0002418867925, -0.0002015094340, +0.0001209433962, \n    +0.0007888679245, +0.0011343396226, +0.0009039622642, +0.0004549056604, \n    -0.0004720754717, -0.0015028301887, -0.0014452830189, -0.0003398113208, \n    +0.0005183018868, +0.0004952830189, -0.0000979245283, -0.0005413207547, \n    -0.0000690566038, +0.0009328301887, +0.0011458490566, +0.0004088679245, \n    -0.0002360377358, -0.0008233962264, -0.0013703773585, -0.0013877358491, \n    -0.0011803773585, -0.0006794339623, +0.0003800000000, +0.0013933962264, \n    +0.0016698113208, +0.0012667924528, +0.0003800000000, -0.0006794339623, \n    -0.0012494339623, -0.0011632075472, -0.0010479245283, -0.0008118867925, \n    -0.0001728301887, +0.0003050943396, +0.0005584905660, +0.0007369811321, \n    +0.0005930188679, -0.0000920754717, -0.0009328301887, -0.0012207547170, \n    -0.0008060377358, -0.0000979245283, +0.0006218867925, +0.0012494339623, \n    +0.0013473584906, +0.0001784905660, -0.0015258490566, -0.0019866037736, \n    -0.0012322641509, -0.0005815094340, -0.0002360377358, +0.0001728301887, \n    +0.0007139622642, +0.0007658490566, +0.0003915094340, +0.0000805660377, \n    -0.0003569811321, -0.0010709433962, -0.0012839622642, -0.0004203773585, \n    +0.0008579245283, +0.0012092452830, +0.0006218867925, +0.0002130188679, \n    -0.0001784905660, -0.0008407547170, -0.0009269811321, -0.0003454716981, \n    -0.0000518867925, -0.0002188679245, -0.0002533962264, +0.0001669811321, \n    +0.0005700000000, +0.0002418867925, -0.0000920754717, +0.0002649056604, \n    +0.0005413207547, +0.0002360377358, +0.0000460377358, +0.0000288679245, \n    -0.0003973584906, -0.0011169811321, -0.0015603773585, -0.0009558490566, \n    +0.0002820754717, +0.0007773584906, +0.0003454716981, +0.0002820754717, \n    +0.0006449056604, +0.0003339622642, -0.0004779245283, -0.0007600000000, \n    -0.0007254716981, -0.0009098113208, -0.0006794339623, +0.0002303773585, \n    +0.0009384905660, +0.0011458490566, +0.0014452830189, +0.0013473584906, \n    +0.0005354716981, -0.0003743396226, -0.0015373584906, -0.0024298113208, \n    -0.0020383018868, -0.0008118867925, +0.0004835849057, +0.0015086792453, \n    +0.0018598113208, +0.0015086792453, +0.0006333962264, -0.0002418867925, \n    -0.0003628301887, +0.0001669811321, +0.0006564150943, +0.0008924528302, \n    +0.0009154716981, +0.0003915094340, -0.0005584905660, -0.0012149056604, \n    -0.0013069811321, -0.0011228301887, -0.0011228301887, -0.0009039622642, \n    +0.0001381132075, +0.0014337735849, +0.0017733962264, +0.0013473584906, \n    +0.0008003773585, +0.0001958490566, -0.0003513207547, -0.0000749056604, \n    +0.0007484905660, +0.0011169811321, +0.0008003773585, -0.0002015094340, \n    -0.0016986792453, -0.0027407547170, -0.0029654716981, -0.0021937735849, \n    -0.0006160377358, +0.0008637735849, +0.0014798113208, +0.0013762264151, \n    +0.0008867924528, +0.0004375471698, +0.0004145283019, +0.0007658490566, \n    +0.0010824528302, +0.0013473584906, +0.0012264150943, +0.0002649056604, \n    -0.0009847169811, -0.0017733962264, -0.0019577358491, -0.0016813207547, \n    -0.0008809433962, +0.0003109433962, +0.0009213207547, +0.0005298113208, \n    +0.0000288679245, +0.0000230188679, +0.0002188679245, +0.0002475471698, \n    +0.0001843396226, +0.0002015094340, +0.0003339622642, +0.0005298113208, \n    +0.0005815094340, +0.0006909433962, +0.0005758490566, -0.0004664150943, \n    -0.0016467924528, -0.0018137735849, -0.0012379245283, -0.0005183018868, \n    +0.0004260377358, +0.0014164150943, +0.0019001886792, +0.0014279245283, \n    +0.0002994339623, -0.0006737735849, -0.0008983018868, -0.0005067924528, \n    -0.0001150943396, -0.0000403773585, +0.0000000000000, +0.0000805660377, \n    +0.0000345283019, +0.0000805660377, +0.0001266037736, -0.0001324528302, \n    +0.0001439622642, +0.0008867924528, +0.0008118867925, +0.0002935849057, \n    +0.0006103773585, +0.0010133962264, +0.0005183018868, -0.0003858490566, \n    -0.0006622641509, -0.0002820754717, +0.0000575471698, +0.0001900000000, \n    +0.0004549056604, +0.0009098113208, +0.0011977358491, +0.0005873584906, \n    -0.0007888679245, -0.0014107547170, -0.0004720754717, +0.0006390566038, \n    +0.0009558490566, +0.0010537735849, +0.0012033962264, +0.0007198113208, \n    -0.0003050943396, -0.0010767924528, -0.0009962264151, -0.0002475471698, \n    +0.0005354716981, +0.0008924528302, +0.0006622641509, -0.0001324528302, \n    -0.0010998113208, -0.0015432075472, -0.0010767924528, -0.0000805660377, \n    +0.0008752830189, +0.0012033962264, +0.0006333962264, -0.0002073584906, \n    -0.0006103773585, -0.0005183018868, +0.0000920754717, +0.0008809433962, \n    +0.0011054716981, +0.0006449056604, -0.0001958490566, -0.0007198113208, \n    -0.0004952830189, -0.0000749056604, +0.0001669811321, +0.0003050943396, \n    +0.0004835849057, +0.0005873584906, +0.0001266037736, -0.0004145283019, \n    -0.0002705660377, -0.0002245283019, -0.0006390566038, -0.0003858490566, \n    +0.0004260377358, +0.0006737735849, +0.0004203773585, +0.0003050943396, \n    +0.0002475471698, +0.0000115094340, -0.0001150943396, -0.0000518867925, \n    -0.0001611320755, -0.0004549056604, -0.0005528301887, -0.0001611320755, \n    +0.0002935849057, +0.0006679245283, +0.0011113207547, +0.0011054716981, \n    +0.0002590566038, -0.0004088679245, -0.0003398113208, -0.0000920754717, \n    -0.0000518867925, -0.0002188679245, -0.0005700000000, -0.0007369811321, \n    -0.0004835849057, -0.0000288679245, +0.0003454716981, +0.0005873584906, \n    +0.0006045283019, +0.0003858490566, +0.0000230188679, -0.0001381132075, \n    -0.0001381132075, -0.0002245283019, -0.0003166037736, -0.0003628301887, \n    -0.0003569811321, -0.0001554716981, -0.0001784905660, -0.0002245283019, \n    +0.0001439622642, +0.0004433962264, +0.0002705660377, -0.0001900000000, \n    -0.0006333962264, -0.0005930188679, -0.0004779245283, -0.0004894339623, \n    -0.0000230188679, +0.0004664150943, +0.0000000000000, -0.0008579245283, \n    -0.0010077358491, -0.0004952830189, +0.0000690566038, +0.0004664150943, \n    +0.0005298113208, +0.0003166037736, +0.0000633962264, -0.0001035849057, \n    -0.0001094339623, +0.0000345283019, +0.0000173584906, -0.0003858490566, \n    -0.0007024528302, -0.0003166037736, +0.0001209433962, -0.0000058490566, \n    -0.0002764150943, -0.0005239622642, -0.0006737735849, -0.0005930188679, \n    -0.0002879245283, +0.0000345283019, +0.0003569811321, +0.0005643396226, \n    +0.0004145283019, -0.0000864150943, -0.0002649056604, -0.0000345283019, \n    -0.0000575471698, -0.0002303773585, -0.0000230188679, +0.0002820754717, \n    +0.0002015094340, +0.0000288679245, -0.0000403773585, -0.0001900000000, \n    -0.0005988679245, -0.0011054716981, -0.0009269811321, +0.0000805660377, \n    +0.0008118867925, +0.0007600000000, +0.0005930188679, +0.0005124528302, \n    +0.0002994339623, -0.0002130188679, -0.0005758490566, -0.0004549056604, \n    -0.0000633962264, +0.0002879245283, +0.0007428301887, +0.0008407547170, \n    +0.0003283018868, -0.0001958490566, -0.0004720754717, -0.0006160377358, \n    -0.0002994339623, +0.0003513207547, +0.0009098113208, +0.0011284905660, \n    +0.0006275471698, -0.0003915094340, -0.0010479245283, -0.0008694339623, \n    -0.0004088679245, +0.0000000000000, +0.0006103773585, +0.0009213207547, \n    +0.0006333962264, +0.0002360377358, -0.0001035849057, -0.0002879245283, \n    -0.0001094339623, +0.0000518867925, +0.0000633962264, +0.0001784905660, \n    +0.0002303773585, -0.0001266037736, -0.0005584905660, -0.0004260377358, \n    -0.0000288679245, +0.0000633962264, +0.0000000000000, +0.0000518867925, \n    +0.0002073584906, +0.0004145283019, +0.0005758490566, +0.0005930188679, \n    +0.0007083018868, +0.0009615094340, +0.0006679245283, -0.0001611320755, \n    -0.0006449056604, -0.0004490566038, -0.0001554716981, -0.0001439622642, \n    -0.0002935849057, -0.0001150943396, +0.0003915094340, +0.0007715094340, \n    +0.0007024528302, +0.0006333962264, +0.0005009433962, +0.0000000000000, \n    -0.0004720754717, -0.0006275471698, -0.0005700000000, -0.0002590566038, \n    +0.0000805660377, +0.0004260377358, +0.0003973584906, -0.0003684905660, \n    -0.0009730188679, -0.0007254716981, -0.0002475471698, +0.0001094339623, \n    +0.0004835849057, +0.0006679245283, +0.0003513207547, -0.0000749056604, \n    -0.0001958490566, -0.0001035849057, -0.0001611320755, -0.0001669811321, \n    +0.0000230188679, +0.0000115094340, -0.0003398113208, -0.0002303773585, \n    +0.0002935849057, +0.0004664150943, +0.0002418867925, -0.0000575471698, \n    -0.0002820754717, -0.0003513207547, -0.0003628301887, -0.0003398113208, \n    -0.0003513207547, -0.0002245283019, +0.0000920754717, +0.0003454716981, \n    +0.0004835849057, +0.0004720754717, +0.0000518867925, -0.0003743396226, \n    -0.0004894339623, -0.0004720754717, -0.0004490566038, -0.0002360377358, \n    +0.0001728301887, +0.0004952830189, +0.0002705660377, -0.0003973584906, \n    -0.0006852830189, -0.0002764150943, +0.0002188679245, +0.0003109433962, \n    -0.0001209433962, -0.0004952830189, -0.0003109433962, -0.0001150943396, \n    -0.0001035849057, +0.0000749056604, +0.0002360377358, +0.0003973584906, \n    +0.0006564150943, +0.0006852830189, +0.0004088679245, -0.0000920754717, \n    -0.0006737735849, -0.0009558490566, -0.0006622641509, -0.0000690566038, \n    +0.0003569811321, +0.0003339622642, -0.0000575471698, -0.0004260377358, \n    -0.0002879245283, +0.0001324528302, +0.0001900000000, -0.0000920754717, \n    -0.0001439622642, -0.0000173584906, -0.0000058490566, -0.0000403773585, \n    +0.0001496226415, +0.0003569811321, +0.0002188679245, -0.0000460377358, \n    -0.0002130188679, -0.0004145283019, -0.0004260377358, -0.0001843396226, \n    +0.0000460377358, +0.0001496226415, +0.0002994339623, +0.0004894339623, \n    +0.0004375471698, +0.0001958490566, +0.0003398113208, +0.0003800000000, \n    -0.0001381132075, -0.0003858490566, -0.0000230188679, +0.0002649056604, \n    +0.0002820754717, +0.0000690566038, +0.0000460377358, +0.0002764150943, \n    +0.0000345283019, -0.0003973584906, -0.0002705660377, -0.0000173584906, \n    -0.0000460377358, -0.0000288679245, +0.0001669811321, +0.0002820754717, \n    +0.0002533962264, +0.0000979245283, -0.0000058490566, -0.0000288679245, \n    -0.0000403773585, -0.0003800000000, -0.0009500000000, -0.0009730188679, \n    -0.0003398113208, +0.0001209433962, +0.0001728301887, +0.0002015094340, \n    +0.0003628301887, +0.0002705660377, -0.0002418867925, -0.0004605660377, \n    -0.0001496226415, +0.0000518867925, +0.0000173584906, +0.0004145283019, \n    +0.0009384905660, +0.0008349056604, +0.0001843396226, -0.0007313207547, \n    -0.0013818867925, -0.0010998113208, -0.0005643396226, -0.0002073584906, \n    +0.0004203773585, +0.0009903773585, +0.0006679245283, -0.0002935849057, \n    -0.0008867924528, -0.0006909433962, -0.0001554716981, +0.0003973584906, \n    +0.0007428301887, +0.0007658490566, +0.0004779245283, -0.0000460377358, \n    -0.0004203773585, -0.0003800000000, -0.0003166037736, -0.0001728301887, \n    +0.0000633962264, +0.0000979245283, +0.0000518867925, +0.0000288679245, \n    -0.0002764150943, -0.0003915094340, -0.0001150943396, +0.0001900000000, \n    +0.0004835849057, +0.0003800000000, -0.0002994339623, -0.0005067924528, \n    -0.0000749056604, +0.0001439622642, +0.0000979245283, +0.0001381132075, \n    -0.0000864150943, -0.0007083018868, -0.0009443396226, -0.0004779245283, \n    +0.0002073584906, +0.0006218867925, +0.0004779245283, +0.0001784905660, \n    +0.0001669811321, +0.0001958490566, +0.0000403773585, -0.0002015094340, \n    -0.0003628301887, -0.0000345283019, +0.0003166037736, +0.0001035849057, \n    -0.0002533962264, -0.0003109433962, -0.0003800000000, -0.0004375471698, \n    -0.0001958490566, +0.0003454716981, +0.0008060377358, +0.0007888679245, \n    +0.0003339622642, -0.0000979245283, -0.0002130188679, -0.0002303773585, \n    -0.0004664150943, -0.0006103773585, -0.0000920754717, +0.0004835849057, \n    +0.0003166037736, -0.0002360377358, -0.0001958490566, +0.0001900000000, \n    +0.0000979245283, -0.0002935849057, -0.0002649056604, -0.0001035849057, \n    -0.0001150943396, +0.0000000000000, +0.0003743396226, +0.0008175471698, \n    +0.0010824528302, +0.0008060377358, +0.0002649056604, -0.0001094339623, \n    -0.0004490566038, -0.0007600000000, -0.0004835849057, +0.0003050943396, \n    +0.0007830188679, +0.0004605660377, -0.0001554716981, -0.0006160377358, \n    -0.0007600000000, -0.0005298113208, -0.0000979245283, +0.0002879245283, \n    +0.0005239622642, +0.0005354716981, +0.0006737735849, +0.0008809433962, \n    +0.0007024528302, +0.0002188679245, -0.0001669811321, -0.0002303773585, \n    -0.0001728301887, -0.0003513207547, -0.0003684905660, +0.0001381132075, \n    +0.0006449056604, +0.0005298113208, +0.0000979245283, +0.0000345283019, \n    +0.0002994339623, +0.0002820754717, -0.0000518867925, -0.0000403773585, \n    +0.0004088679245, +0.0006218867925, +0.0004664150943, +0.0003858490566, \n    +0.0002649056604, -0.0000058490566, -0.0002245283019, -0.0002994339623, \n    -0.0003398113208, -0.0001784905660, +0.0002015094340, +0.0004490566038, \n    +0.0003684905660, +0.0001843396226, -0.0000805660377, -0.0002245283019, \n    -0.0000690566038, +0.0001439622642, +0.0002360377358, +0.0002935849057, \n    +0.0001266037736, -0.0001324528302, -0.0002994339623, -0.0004720754717, \n    -0.0006449056604, -0.0005124528302, -0.0002303773585, -0.0000345283019, \n    +0.0002073584906, +0.0004490566038, +0.0003050943396, +0.0001439622642, \n    +0.0000805660377, +0.0000345283019, +0.0000230188679, +0.0000058490566, \n    -0.0000230188679, -0.0000690566038, -0.0003283018868, -0.0006390566038, \n    -0.0005815094340, +0.0000173584906, +0.0005413207547, +0.0004490566038, \n    +0.0001094339623, -0.0001439622642, -0.0003973584906, -0.0004375471698, \n    -0.0002015094340, +0.0001669811321, +0.0005413207547, +0.0007083018868, \n    +0.0004260377358, -0.0001094339623, -0.0005067924528, -0.0005815094340, \n    -0.0004664150943, -0.0002705660377, -0.0000288679245, +0.0001728301887, \n    +0.0003283018868, +0.0003569811321, +0.0001900000000, -0.0001381132075, \n    -0.0003513207547, -0.0002764150943, -0.0001728301887, -0.0001958490566, \n    +0.0000288679245, +0.0004375471698, +0.0005298113208, +0.0002705660377, \n    +0.0000000000000, -0.0002820754717, -0.0004375471698, -0.0003109433962, \n    -0.0000979245283, +0.0000690566038, +0.0002475471698, +0.0001150943396, \n    -0.0001439622642, -0.0002475471698, -0.0002015094340, -0.0000920754717, \n    -0.0001094339623, -0.0002994339623, -0.0003050943396, -0.0002590566038, \n    -0.0004549056604, -0.0004605660377, +0.0000460377358, +0.0003800000000, \n    +0.0002360377358, +0.0001554716981, +0.0001611320755, -0.0001150943396, \n    -0.0004375471698, -0.0005183018868, -0.0001784905660, +0.0003454716981, \n    +0.0005413207547, +0.0002590566038, -0.0000230188679, -0.0002475471698, \n    -0.0004203773585, -0.0004260377358, -0.0004145283019, -0.0004549056604, \n    -0.0002303773585, +0.0002015094340, +0.0004549056604, +0.0003283018868, \n    +0.0000115094340, -0.0002188679245, -0.0003398113208, -0.0002879245283, \n    +0.0000288679245, +0.0001611320755, -0.0000920754717, -0.0002994339623, \n    -0.0003224528302, -0.0001266037736, +0.0002590566038, +0.0004088679245, \n    +0.0002360377358, +0.0000460377358, -0.0000230188679, +0.0000288679245, \n    -0.0000288679245, -0.0002820754717, -0.0002994339623, +0.0001900000000, \n    +0.0005298113208, +0.0003224528302, -0.0000518867925, -0.0000173584906, \n    +0.0001439622642, +0.0001150943396, -0.0000518867925, -0.0002245283019, \n    -0.0002764150943, -0.0001035849057, -0.0001035849057, -0.0002073584906, \n    +0.0001784905660, +0.0008060377358, +0.0008637735849, +0.0002188679245, \n    -0.0005643396226, -0.0008233962264, -0.0006103773585, -0.0001496226415, \n    +0.0003743396226, +0.0006852830189, +0.0005354716981, +0.0002705660377, \n    +0.0000173584906, -0.0004030188679, -0.0007139622642, -0.0004779245283, \n    +0.0000920754717, +0.0005298113208, +0.0006505660377, +0.0005183018868, \n    +0.0002188679245, -0.0001150943396, -0.0002245283019, -0.0001554716981, \n    -0.0002015094340, -0.0003166037736, -0.0002360377358, +0.0001266037736, \n    +0.0004664150943, +0.0005239622642, +0.0004779245283, +0.0003398113208, \n    -0.0000805660377, -0.0005413207547, -0.0006390566038, -0.0003513207547, \n    +0.0001266037736, +0.0004835849057, +0.0005930188679, +0.0006333962264, \n    +0.0005758490566, +0.0002360377358, -0.0001496226415, -0.0002245283019, \n    +0.0000173584906, +0.0002360377358, +0.0003224528302, +0.0003166037736, \n    +0.0002360377358, +0.0001094339623, +0.0001324528302, +0.0000864150943, \n    +0.0001209433962, +0.0003569811321, +0.0003454716981, -0.0000058490566, \n    -0.0000288679245, +0.0001209433962, +0.0001439622642, +0.0001611320755, \n    +0.0002590566038, +0.0001900000000, +0.0000115094340, -0.0001496226415, \n    -0.0001496226415, +0.0000288679245, +0.0002245283019, +0.0002015094340, \n    +0.0000920754717, +0.0001381132075, +0.0002073584906, +0.0000749056604, \n    -0.0000633962264, -0.0001094339623, -0.0000749056604, -0.0001324528302, \n    -0.0002705660377, -0.0002303773585, -0.0000575471698, -0.0000979245283, \n    -0.0000864150943, +0.0001266037736, +0.0002303773585, +0.0000518867925, \n    -0.0002590566038, -0.0003743396226, -0.0000749056604, +0.0002649056604, \n    +0.0002303773585, +0.0000864150943, +0.0000288679245, -0.0001784905660, \n    -0.0004145283019, -0.0003166037736, +0.0000690566038, +0.0005469811321, \n    +0.0007139622642, +0.0004490566038, -0.0000115094340, -0.0003050943396, \n    -0.0004088679245, -0.0004664150943, -0.0003339622642, +0.0000575471698, \n    +0.0001554716981, -0.0000345283019, -0.0000575471698, +0.0001094339623, \n    +0.0000633962264, +0.0000058490566, +0.0001209433962, +0.0000230188679, \n    -0.0003513207547, -0.0004203773585, -0.0002418867925, -0.0000518867925, \n    +0.0001381132075, +0.0002303773585, +0.0001439622642, +0.0001669811321, \n    +0.0001784905660, -0.0000115094340, -0.0002533962264, -0.0003339622642, \n    -0.0004088679245, -0.0003513207547, -0.0000864150943, +0.0000288679245, \n    -0.0001728301887, -0.0002705660377, -0.0001843396226, -0.0001554716981, \n    -0.0002533962264, -0.0002764150943, -0.0000979245283, +0.0001554716981, \n    +0.0003858490566, +0.0006045283019, +0.0004433962264, -0.0001439622642, \n    -0.0005239622642, -0.0004433962264, -0.0004605660377, -0.0006333962264, \n    -0.0004318867925, +0.0000288679245, +0.0002590566038, +0.0001381132075, \n    -0.0000403773585, -0.0001094339623, -0.0001324528302, -0.0001266037736, \n    -0.0000749056604, -0.0002590566038, -0.0004605660377, -0.0002994339623, \n    +0.0001496226415, +0.0004835849057, +0.0003513207547, -0.0002073584906, \n    -0.0005815094340, -0.0003858490566, +0.0001209433962, +0.0002994339623, \n    +0.0000920754717, -0.0001035849057, -0.0000345283019, +0.0000058490566, \n    -0.0000288679245, -0.0001669811321, -0.0003050943396, -0.0004260377358, \n    -0.0003743396226, -0.0001439622642, +0.0001094339623, +0.0001381132075, \n    +0.0000115094340, -0.0000864150943, -0.0000460377358, -0.0000173584906, \n    -0.0000749056604, -0.0000518867925, +0.0001439622642, +0.0001611320755, \n    -0.0001150943396, -0.0002994339623, -0.0001150943396, +0.0000805660377, \n    +0.0001324528302, +0.0001209433962, +0.0000805660377, +0.0001209433962, \n    +0.0001439622642, +0.0000000000000, -0.0002533962264, -0.0005183018868, \n    -0.0006564150943, -0.0003800000000, +0.0001784905660, +0.0006218867925, \n    +0.0007198113208, +0.0005354716981, +0.0000920754717, -0.0003858490566, \n    -0.0005643396226, -0.0004318867925, -0.0002649056604, -0.0000058490566, \n    +0.0002935849057, +0.0004260377358, +0.0001784905660, -0.0001900000000, \n    -0.0003684905660, -0.0003800000000, -0.0004490566038, -0.0003569811321, \n    -0.0001035849057, +0.0000805660377, +0.0002475471698, +0.0004605660377, \n    +0.0003915094340, +0.0000115094340, -0.0004894339623, -0.0007083018868, \n    -0.0004433962264, -0.0000173584906, +0.0003166037736, +0.0005873584906, \n    +0.0005643396226, +0.0002303773585, -0.0002073584906, -0.0005413207547, \n    -0.0005354716981, -0.0001958490566, -0.0000173584906, -0.0001496226415, \n    -0.0001439622642, +0.0000115094340, +0.0000518867925, +0.0002820754717, \n    +0.0005239622642, +0.0002590566038, -0.0002705660377, -0.0006737735849, \n    -0.0008579245283, -0.0006390566038, -0.0000403773585, +0.0005988679245, \n    +0.0009154716981, +0.0007313207547, +0.0002130188679, -0.0001958490566, \n    -0.0002130188679, -0.0000633962264, +0.0002015094340, +0.0006160377358, \n    +0.0008579245283, +0.0005815094340, +0.0000460377358, -0.0003569811321, \n    -0.0004490566038, -0.0003454716981, -0.0000460377358, +0.0003743396226, \n    +0.0005873584906, +0.0003398113208, +0.0000288679245, +0.0000805660377, \n    +0.0004088679245, +0.0006103773585, +0.0006103773585, +0.0002994339623, \n    -0.0002015094340, -0.0005700000000, -0.0005469811321, -0.0002073584906, \n    +0.0002649056604, +0.0006333962264, +0.0008407547170, +0.0007600000000, \n    +0.0002879245283, -0.0003339622642, -0.0006909433962, -0.0006045283019, \n    -0.0001209433962, +0.0004490566038, +0.0007313207547, +0.0004952830189, \n    -0.0000575471698, -0.0004145283019, -0.0002764150943, +0.0001611320755, \n    +0.0005469811321, +0.0007484905660, +0.0006622641509, +0.0001900000000, \n    -0.0003454716981, -0.0004952830189, -0.0001669811321, +0.0002820754717, \n    +0.0002820754717, -0.0001669811321, -0.0003973584906, -0.0001669811321, \n    -0.0000230188679, -0.0001094339623, +0.0000230188679, +0.0004779245283, \n    +0.0007254716981, +0.0006218867925, +0.0003224528302, +0.0000058490566, \n    -0.0002130188679, -0.0003050943396, -0.0003050943396, +0.0000000000000, \n    +0.0003743396226, +0.0004203773585, +0.0001094339623, -0.0001843396226, \n    -0.0003513207547, -0.0004260377358, -0.0004664150943, -0.0003283018868, \n    +0.0000518867925, +0.0005584905660, +0.0008292452830, +0.0006103773585, \n    +0.0001209433962, -0.0002649056604, -0.0006045283019, -0.0007600000000, \n    -0.0005067924528, +0.0000288679245, +0.0003973584906, +0.0003628301887, \n    +0.0001900000000, +0.0001843396226, +0.0003166037736, +0.0004894339623, \n    +0.0006505660377, +0.0006160377358, +0.0003569811321, +0.0001035849057, \n    +0.0000518867925, +0.0000173584906, -0.0003915094340, -0.0010652830189, \n    -0.0011054716981, -0.0002303773585, +0.0006679245283, +0.0007428301887, \n    +0.0003283018868, +0.0002533962264, +0.0005009433962, +0.0003858490566, \n    +0.0000633962264, +0.0000345283019, -0.0000230188679, -0.0006218867925, \n    -0.0011113207547, -0.0009443396226, -0.0004490566038, -0.0001209433962, \n    -0.0001324528302, -0.0004779245283, -0.0007600000000, -0.0006275471698, \n    -0.0000518867925, +0.0004894339623, +0.0006505660377, +0.0005009433962, \n    +0.0001784905660, -0.0003569811321, -0.0007254716981, -0.0005413207547, \n    +0.0001150943396, +0.0006045283019, +0.0005413207547, +0.0001496226415, \n    -0.0001611320755, -0.0002879245283, -0.0002245283019, -0.0001324528302, \n    -0.0001150943396, -0.0001554716981, -0.0002360377358, -0.0003513207547, \n    -0.0002590566038, +0.0001728301887, +0.0005413207547, +0.0005528301887, \n    +0.0001958490566, -0.0003339622642, -0.0007313207547, -0.0008175471698, \n    -0.0007543396226, -0.0006275471698, -0.0003283018868, +0.0003398113208, \n    +0.0008292452830, +0.0005528301887, -0.0001035849057, -0.0005758490566, \n    -0.0005584905660, -0.0000805660377, +0.0002820754717, +0.0003973584906, \n    +0.0003454716981, +0.0000403773585, -0.0004088679245, -0.0006564150943, \n    -0.0004835849057, +0.0001035849057, +0.0007715094340, +0.0010998113208, \n    +0.0008522641509, +0.0002590566038, -0.0003858490566, -0.0009213207547, \n    -0.0012149056604, -0.0011113207547, -0.0006852830189, -0.0000749056604, \n    +0.0005183018868, +0.0009903773585, +0.0010537735849, +0.0005815094340, \n    -0.0001611320755, -0.0006333962264, -0.0008003773585, -0.0007543396226, \n    -0.0004203773585, +0.0000345283019, +0.0003166037736, +0.0003339622642, \n    +0.0002475471698, +0.0001439622642, +0.0000518867925, -0.0000403773585, \n    -0.0001496226415, -0.0002245283019, -0.0000690566038, +0.0000633962264, \n    -0.0000173584906, +0.0000115094340, +0.0003050943396, +0.0003166037736, \n    +0.0001324528302, +0.0001843396226, +0.0003628301887, +0.0004433962264, \n    +0.0004490566038, +0.0001439622642, -0.0004318867925, -0.0010364150943, \n    -0.0012207547170, -0.0007024528302, +0.0001784905660, +0.0007945283019, \n    +0.0012149056604, +0.0014107547170, +0.0008983018868, -0.0002073584906, \n    -0.0010652830189, -0.0011977358491, -0.0008579245283, -0.0005239622642, \n    -0.0001900000000, +0.0003166037736, +0.0007830188679, +0.0008233962264, \n    +0.0004720754717, +0.0000000000000, -0.0002764150943, -0.0002590566038, \n    -0.0001266037736, -0.0000749056604, +0.0000575471698, +0.0003628301887, \n    +0.0005584905660, +0.0005584905660, +0.0003684905660, +0.0000115094340, \n    -0.0003569811321, -0.0005469811321, -0.0004664150943, -0.0000920754717, \n    +0.0003858490566, +0.0007484905660, +0.0007428301887, +0.0004779245283, \n    +0.0001496226415, -0.0002130188679, -0.0005183018868, -0.0004375471698, \n    +0.0000518867925, +0.0005239622642, +0.0005643396226, +0.0005067924528, \n    +0.0006160377358, +0.0005067924528, +0.0000000000000, -0.0003973584906, \n    -0.0005183018868, -0.0005815094340, -0.0005124528302, +0.0000288679245, \n    +0.0006218867925, +0.0007658490566, +0.0004433962264, +0.0000633962264, \n    -0.0001324528302, -0.0003050943396, -0.0005354716981, -0.0004318867925, \n    +0.0000173584906, +0.0004203773585, +0.0004952830189, +0.0003224528302, \n    +0.0002015094340, +0.0000633962264, -0.0001324528302, -0.0001094339623, \n    +0.0000058490566, -0.0000403773585, -0.0000403773585, +0.0001439622642, \n    +0.0003166037736, +0.0002764150943, +0.0002130188679, +0.0001784905660, \n    +0.0000920754717, -0.0000864150943, -0.0002879245283, -0.0004030188679, \n    -0.0002533962264, +0.0000000000000, +0.0004030188679, +0.0007830188679, \n    +0.0008060377358, +0.0004835849057, +0.0000633962264, -0.0003800000000, \n    -0.0007198113208, -0.0008407547170, -0.0007369811321, -0.0005354716981, \n    -0.0001094339623, +0.0003743396226, +0.0005469811321, +0.0004664150943, \n    +0.0004835849057, +0.0004145283019, +0.0000805660377, -0.0003915094340, \n    -0.0006275471698, -0.0005354716981, -0.0002015094340, +0.0001266037736, \n    +0.0001843396226, +0.0000173584906, -0.0001150943396, -0.0002705660377, \n    -0.0003398113208, -0.0000345283019, +0.0003628301887, +0.0003339622642, \n    -0.0000690566038, -0.0003339622642, -0.0002360377358, -0.0000230188679, \n    +0.0000633962264, +0.0000864150943, +0.0000690566038, +0.0001266037736, \n    +0.0003166037736, +0.0004203773585, +0.0001728301887, -0.0002475471698, \n    -0.0006160377358, -0.0006794339623, -0.0005298113208, -0.0002879245283, \n    -0.0000920754717, +0.0001150943396, +0.0003513207547, +0.0004894339623, \n    +0.0004030188679, +0.0003743396226, +0.0003628301887, +0.0000403773585, \n    -0.0004835849057, -0.0005528301887, -0.0001958490566, +0.0000345283019, \n    -0.0000633962264, -0.0001150943396, -0.0000403773585, -0.0000575471698, \n    -0.0001094339623, +0.0000460377358, +0.0002015094340, +0.0000575471698, \n    -0.0001266037736, -0.0000920754717, -0.0000345283019, -0.0000864150943, \n    -0.0002130188679, -0.0002935849057, -0.0002130188679, -0.0000518867925, \n    +0.0000920754717, +0.0002590566038, +0.0002705660377, -0.0001035849057, \n    -0.0005239622642, -0.0005067924528, -0.0001843396226, +0.0000690566038, \n    +0.0003109433962, +0.0004260377358, +0.0003109433962, -0.0000460377358, \n    -0.0003569811321, -0.0003973584906, -0.0002073584906, -0.0000518867925, \n    +0.0000403773585, +0.0000805660377, +0.0001035849057, -0.0000345283019, \n    -0.0002705660377, -0.0004720754717, -0.0005124528302, -0.0002994339623, \n    +0.0000920754717, +0.0001496226415, +0.0000000000000, +0.0000805660377, \n    +0.0002935849057, +0.0002188679245, +0.0001209433962, +0.0002130188679, \n    +0.0002705660377, +0.0000403773585, -0.0003569811321, -0.0005988679245, \n    -0.0002705660377, +0.0003628301887, +0.0006449056604, +0.0003224528302, \n    -0.0001900000000, -0.0004894339623, -0.0005413207547, -0.0003973584906, \n    +0.0000173584906, +0.0005469811321, +0.0006390566038, +0.0002303773585, \n    -0.0001381132075, -0.0001728301887, -0.0000575471698, +0.0000460377358, \n    +0.0000403773585, +0.0000000000000, +0.0000518867925, +0.0001035849057, \n    -0.0000173584906, -0.0000920754717, +0.0000288679245, +0.0002705660377, \n    +0.0004145283019, +0.0004664150943, +0.0003224528302, +0.0000460377358, \n    -0.0003283018868, -0.0005988679245, -0.0005873584906, -0.0003224528302, \n    +0.0000000000000, +0.0003684905660, +0.0005067924528, +0.0003050943396, \n    +0.0000403773585, -0.0000518867925, -0.0000575471698, -0.0000345283019, \n    -0.0001209433962, -0.0002245283019, -0.0001900000000, +0.0000173584906, \n    +0.0002475471698, +0.0003569811321, +0.0002994339623, +0.0000749056604, \n    -0.0001554716981, -0.0002533962264, -0.0002303773585, -0.0001150943396, \n    +0.0000058490566, -0.0000115094340, -0.0000230188679, +0.0000805660377, \n    +0.0001611320755, +0.0000749056604, -0.0001209433962, -0.0003166037736, \n    -0.0002130188679, +0.0000690566038, +0.0002073584906, +0.0002188679245, \n    +0.0002649056604, +0.0000460377358, -0.0002705660377, -0.0003915094340, \n    -0.0003050943396, -0.0002188679245, -0.0001035849057, -0.0000345283019, \n    -0.0000058490566, +0.0000230188679, +0.0001669811321, +0.0003109433962, \n    +0.0003398113208, +0.0002188679245, +0.0000805660377, -0.0000690566038, \n    -0.0003628301887, -0.0006218867925, -0.0005298113208, -0.0002073584906, \n    +0.0001496226415, +0.0004952830189, +0.0006333962264, +0.0004318867925, \n    -0.0000403773585, -0.0005528301887, -0.0007369811321, -0.0004260377358, \n    +0.0000345283019, +0.0002879245283, +0.0004030188679, +0.0005009433962, \n    +0.0003915094340, +0.0001209433962, -0.0001035849057, -0.0003224528302, \n    -0.0005873584906, -0.0005758490566, -0.0002705660377, +0.0001669811321, \n    +0.0005009433962, +0.0005584905660, +0.0003166037736, +0.0000805660377, \n    -0.0000749056604, -0.0002015094340, -0.0002935849057, -0.0001611320755, \n    +0.0001035849057, +0.0002533962264, +0.0001784905660, +0.0002188679245, \n    +0.0004318867925, +0.0005067924528, +0.0003109433962, +0.0000575471698, \n    -0.0002245283019, -0.0003973584906, -0.0002360377358, +0.0001381132075, \n    +0.0003513207547, +0.0002533962264, -0.0000230188679, -0.0002705660377, \n    -0.0003684905660, -0.0002475471698, +0.0000749056604, +0.0003283018868, \n    +0.0002764150943, +0.0000173584906, -0.0001554716981, -0.0000864150943, \n    +0.0001554716981, +0.0002764150943, +0.0002303773585, +0.0002073584906, \n    +0.0002245283019, +0.0000518867925, -0.0002245283019, -0.0002879245283, \n    +0.0000230188679, +0.0003398113208, +0.0003743396226, +0.0002073584906, \n    +0.0001035849057, +0.0000000000000, -0.0001209433962, -0.0001728301887, \n    +0.0000230188679, +0.0003166037736, +0.0004030188679, +0.0001439622642, \n    -0.0001900000000, -0.0003454716981, -0.0003283018868, -0.0002418867925, \n    -0.0001150943396, +0.0000690566038, +0.0002879245283, +0.0003858490566, \n    +0.0002879245283, +0.0000518867925, -0.0001266037736, -0.0001324528302, \n    -0.0000345283019, +0.0000864150943, +0.0001496226415, +0.0000115094340, \n    -0.0002705660377, -0.0004549056604, -0.0003973584906, -0.0001150943396, \n    +0.0001669811321, +0.0003224528302, +0.0003339622642, +0.0002015094340, \n    -0.0000230188679, -0.0000979245283, -0.0000460377358, +0.0000173584906, \n    +0.0000288679245, -0.0000403773585, -0.0001900000000, -0.0002303773585, \n    -0.0001094339623, +0.0001381132075, +0.0002705660377, +0.0001266037736, \n    -0.0001843396226, -0.0002015094340, +0.0000864150943, +0.0003800000000, \n    +0.0004894339623, +0.0003858490566, +0.0001094339623, -0.0000979245283, \n    -0.0001669811321, -0.0001554716981, -0.0001094339623, +0.0000115094340, \n    +0.0001496226415, +0.0001150943396, -0.0001150943396, -0.0002820754717, \n    -0.0002073584906, +0.0000058490566, +0.0001266037736, +0.0000230188679, \n    -0.0000805660377, +0.0000288679245, +0.0002418867925, +0.0001900000000, \n    -0.0000460377358, -0.0001958490566, -0.0001035849057, +0.0000058490566, \n    -0.0000690566038, -0.0002764150943, -0.0003224528302, -0.0002073584906, \n    -0.0000403773585, +0.0000000000000, -0.0000173584906, +0.0000575471698, \n    +0.0001728301887, +0.0000805660377, -0.0000575471698, -0.0000979245283, \n    -0.0001266037736, -0.0001958490566, -0.0001381132075, +0.0000000000000, \n    +0.0000460377358, -0.0000749056604, -0.0002245283019, -0.0002475471698, \n    -0.0001554716981, -0.0000749056604, -0.0000115094340, -0.0000230188679, \n    -0.0000575471698, -0.0000403773585, +0.0000345283019, +0.0002073584906, \n    +0.0003224528302, +0.0001209433962, -0.0001381132075, -0.0001035849057, \n    -0.0000460377358, -0.0000979245283, -0.0000690566038, -0.0000115094340, \n    -0.0000575471698, -0.0000749056604, -0.0001035849057, -0.0000979245283, \n    -0.0000058490566, +0.0002130188679, +0.0003628301887, +0.0002705660377, \n    +0.0000403773585, -0.0000173584906, -0.0000460377358, -0.0001554716981, \n    -0.0002073584906, -0.0000173584906, +0.0002245283019, +0.0002879245283, \n    +0.0000864150943, -0.0002015094340, -0.0004088679245, -0.0004318867925, \n    -0.0002418867925, +0.0001150943396, +0.0004088679245, +0.0004720754717, \n    +0.0002188679245, -0.0001843396226, -0.0004779245283, -0.0005239622642, \n    -0.0002418867925, +0.0001900000000, +0.0003684905660, +0.0001843396226, \n    -0.0001324528302, -0.0003454716981, -0.0002764150943, -0.0000749056604, \n    +0.0000805660377, +0.0000518867925, -0.0000920754717, -0.0002015094340, \n    -0.0000979245283, +0.0001611320755, +0.0004260377358, +0.0004088679245, \n    +0.0001324528302, -0.0001381132075, -0.0001611320755, -0.0000749056604, \n    +0.0000345283019, +0.0001150943396, +0.0001611320755, +0.0000230188679, \n    -0.0002360377358, -0.0003339622642, -0.0001669811321, -0.0000115094340, \n    +0.0000920754717, +0.0002418867925, +0.0003973584906, +0.0003398113208, \n    +0.0000979245283, -0.0000920754717, -0.0001554716981, -0.0000633962264, \n    +0.0001496226415, +0.0002245283019, +0.0000460377358, -0.0000805660377, \n    -0.0001266037736, -0.0002015094340, -0.0002130188679, +0.0000288679245, \n    +0.0003915094340, +0.0005930188679, +0.0003743396226, -0.0000633962264, \n    -0.0003973584906, -0.0004720754717, -0.0003743396226, -0.0001784905660, \n    -0.0000230188679, +0.0001843396226, +0.0003743396226, +0.0003569811321, \n    +0.0001094339623, -0.0000979245283, -0.0001669811321, -0.0001439622642, \n    -0.0001266037736, -0.0000690566038, -0.0000518867925, -0.0000173584906, \n    +0.0000920754717, +0.0001554716981, +0.0000690566038, -0.0000058490566, \n    -0.0000173584906, +0.0000230188679, +0.0000920754717, +0.0001669811321, \n    +0.0002015094340, +0.0000805660377, -0.0001843396226, -0.0002649056604, \n    -0.0000920754717, +0.0000173584906, +0.0001150943396, +0.0002360377358, \n    +0.0002130188679, +0.0000749056604, +0.0000000000000, -0.0001324528302, \n    -0.0002533962264, -0.0002015094340, +0.0000575471698, +0.0003050943396, \n    +0.0003569811321, +0.0000979245283, -0.0001554716981, -0.0001496226415, \n    +0.0000115094340, +0.0000749056604, +0.0001209433962, +0.0001843396226, \n    +0.0000920754717, -0.0001843396226, -0.0003166037736, -0.0002188679245, \n    -0.0000115094340, +0.0001209433962, +0.0002245283019, +0.0004088679245, \n    +0.0005124528302, +0.0002303773585, -0.0001958490566, -0.0003283018868, \n    -0.0002303773585, -0.0001728301887, -0.0000864150943, +0.0000749056604, \n    +0.0001094339623, -0.0000173584906, -0.0001900000000, -0.0001209433962, \n    +0.0001381132075, +0.0003283018868, +0.0003800000000, +0.0004549056604, \n    +0.0004030188679, +0.0002130188679, -0.0000230188679, -0.0002073584906, \n    -0.0003743396226, -0.0004145283019, -0.0002879245283, -0.0000115094340, \n    +0.0001843396226, +0.0002245283019, +0.0001843396226, +0.0001843396226, \n    +0.0001496226415, +0.0000979245283, -0.0000230188679, -0.0002130188679, \n    -0.0003398113208, -0.0002764150943, -0.0001611320755, +0.0000000000000, \n    +0.0001900000000, +0.0002649056604, +0.0000633962264, -0.0002475471698, \n    -0.0003915094340, -0.0002130188679, +0.0000690566038, +0.0001611320755, \n    +0.0001669811321, +0.0002303773585, +0.0001958490566, -0.0000518867925, \n    -0.0002820754717, -0.0002303773585, +0.0000460377358, +0.0001266037736, \n    -0.0000288679245, -0.0001439622642, -0.0000518867925, +0.0000575471698, \n    +0.0001324528302, +0.0001496226415, +0.0001381132075, +0.0000058490566, \n    -0.0001209433962, -0.0001150943396, +0.0000173584906, -0.0000058490566, \n    -0.0001209433962, -0.0000575471698, +0.0001439622642, +0.0001728301887, \n    +0.0000115094340, -0.0001496226415, -0.0001439622642, -0.0001381132075, \n    -0.0002245283019, -0.0001728301887, +0.0000920754717, +0.0003166037736, \n    +0.0003398113208, +0.0001958490566, -0.0000115094340, -0.0002245283019, \n    -0.0003166037736, -0.0001784905660, -0.0000115094340, +0.0000230188679, \n    +0.0000000000000, -0.0000058490566, -0.0000864150943, -0.0001843396226, \n    -0.0001669811321, -0.0000115094340, +0.0000575471698, +0.0000979245283, \n    +0.0000864150943, +0.0000000000000, -0.0001439622642, -0.0002188679245, \n    -0.0002994339623, -0.0002820754717, -0.0000864150943, +0.0001958490566, \n    +0.0002418867925, +0.0000920754717, +0.0000000000000, +0.0001094339623, \n    +0.0002303773585, +0.0001611320755, -0.0000920754717, -0.0002649056604, \n    -0.0002130188679, -0.0000690566038, -0.0000058490566, +0.0000345283019, \n    +0.0000403773585, -0.0001209433962, -0.0003166037736, -0.0002533962264, \n    +0.0000288679245, +0.0003109433962, +0.0004030188679, +0.0002303773585, \n    +0.0000230188679, -0.0001094339623, -0.0002360377358, -0.0003513207547, \n    -0.0002879245283, -0.0000749056604, +0.0002188679245, +0.0003684905660, \n    +0.0003743396226, +0.0002705660377, +0.0000403773585, -0.0002590566038, \n    -0.0002590566038, -0.0000864150943, -0.0000058490566, +0.0000230188679, \n    +0.0001554716981, +0.0001728301887, +0.0001381132075, +0.0001381132075, \n    +0.0000864150943, -0.0000633962264, -0.0001843396226, -0.0002188679245, \n    -0.0001554716981, -0.0000920754717, -0.0000345283019, +0.0000749056604, \n    +0.0002130188679, +0.0001784905660, +0.0000460377358, +0.0000000000000, \n    -0.0000345283019, -0.0000805660377, -0.0000690566038, -0.0000633962264, \n    -0.0001669811321, -0.0002705660377, -0.0003166037736, -0.0002360377358, \n    -0.0000690566038, +0.0000864150943, +0.0001728301887, +0.0002303773585, \n    +0.0001324528302, -0.0000460377358, -0.0001843396226, -0.0002015094340, \n    -0.0001958490566, -0.0001381132075, -0.0000460377358, +0.0001035849057, \n    +0.0001900000000, +0.0001669811321, +0.0000749056604, +0.0000633962264, \n    +0.0000633962264, -0.0000230188679, -0.0001728301887, -0.0001439622642, \n    -0.0000690566038, -0.0001439622642, -0.0002303773585, -0.0001324528302, \n    +0.0000345283019, +0.0000920754717, +0.0000403773585, +0.0000000000000, \n    +0.0000173584906, +0.0000345283019, +0.0000173584906, -0.0000173584906, \n    -0.0000058490566, +0.0000460377358, +0.0001094339623, +0.0000979245283, \n    +0.0000345283019, -0.0000460377358, -0.0000864150943, -0.0000403773585, \n    +0.0001094339623, +0.0001900000000, +0.0001381132075, +0.0000230188679, \n    -0.0000288679245, -0.0000575471698, -0.0000173584906, +0.0000518867925, \n    +0.0001094339623, +0.0001209433962, +0.0000575471698, -0.0000979245283, \n    -0.0001035849057, +0.0000690566038, +0.0001843396226, +0.0001554716981, \n    +0.0000864150943, +0.0000633962264, +0.0000749056604, -0.0000403773585, \n    -0.0002303773585, -0.0001784905660, +0.0000115094340, +0.0000864150943, \n    +0.0000805660377, +0.0000864150943, +0.0000864150943, +0.0000920754717, \n    +0.0000345283019, -0.0000173584906, +0.0000288679245, +0.0001209433962, \n    +0.0001209433962, +0.0000633962264, -0.0000864150943, -0.0001784905660, \n    -0.0000518867925, +0.0001669811321, +0.0002303773585, +0.0001728301887, \n    +0.0001266037736, +0.0001209433962, +0.0000460377358, -0.0001035849057, \n    -0.0002130188679, -0.0001611320755, -0.0000460377358, +0.0000749056604, \n    +0.0002705660377, +0.0004664150943, +0.0004375471698, +0.0001496226415, \n    -0.0001094339623, -0.0001784905660, -0.0001669811321, -0.0002073584906, \n    -0.0002130188679, -0.0000920754717, +0.0001094339623, +0.0002130188679, \n    +0.0002073584906, +0.0001554716981, +0.0000979245283, -0.0000173584906, \n    -0.0001439622642, -0.0002073584906, -0.0000979245283, +0.0001209433962, \n    +0.0003224528302, +0.0003684905660, +0.0002188679245, -0.0000690566038, \n    -0.0003224528302, -0.0003973584906, -0.0002533962264, -0.0000575471698, \n    +0.0000288679245, +0.0000115094340, +0.0000173584906, +0.0000345283019, \n    +0.0000230188679, -0.0000345283019, -0.0000749056604, -0.0000115094340, \n    +0.0000749056604, +0.0000575471698, -0.0000575471698, -0.0001784905660, \n    -0.0002418867925, -0.0002188679245, -0.0000749056604, +0.0001784905660, \n    +0.0003800000000, +0.0003743396226, +0.0001266037736, -0.0000864150943, \n    -0.0001266037736, -0.0000979245283, -0.0001439622642, -0.0001439622642, \n    -0.0001209433962, -0.0000979245283, -0.0000288679245, +0.0001784905660, \n    +0.0003166037736, +0.0002303773585, -0.0000115094340, -0.0001381132075, \n    -0.0000864150943, +0.0000000000000, -0.0000115094340, -0.0000173584906, \n    +0.0000288679245, +0.0001035849057, +0.0000979245283, +0.0000115094340, \n    -0.0000460377358, +0.0000230188679, +0.0001381132075, +0.0001150943396, \n    +0.0000000000000, -0.0000288679245, +0.0000230188679, +0.0000518867925, \n    +0.0000749056604, +0.0000230188679, -0.0000633962264, -0.0001669811321, \n    -0.0002705660377, -0.0003050943396, -0.0001784905660, -0.0000288679245, \n    +0.0000805660377, +0.0001900000000, +0.0003684905660, +0.0004433962264, \n    +0.0002820754717, +0.0000518867925, -0.0000749056604, -0.0002649056604, \n    -0.0004835849057, -0.0005183018868, -0.0002533962264, +0.0000575471698, \n    +0.0001728301887, +0.0001209433962, +0.0000633962264, +0.0000000000000, \n    -0.0000864150943, -0.0001150943396, -0.0000690566038, +0.0000403773585, \n    +0.0002073584906, +0.0002935849057, +0.0002015094340, +0.0000749056604, \n    +0.0000115094340, +0.0000058490566, -0.0000749056604, -0.0002475471698, \n    -0.0003454716981, -0.0002188679245, -0.0000575471698, +0.0000000000000, \n    +0.0000058490566, +0.0000920754717, +0.0001669811321, +0.0001209433962, \n    -0.0000403773585, -0.0001381132075, -0.0000690566038, +0.0000518867925, \n    +0.0000633962264, +0.0000115094340, -0.0000230188679, -0.0000288679245, \n    +0.0000518867925, +0.0001958490566, +0.0002188679245, +0.0000518867925, \n    -0.0001900000000, -0.0003050943396, -0.0002303773585, -0.0000633962264, \n    +0.0000460377358, +0.0000575471698, +0.0001035849057, +0.0002475471698, \n    +0.0002879245283, +0.0001094339623, -0.0000749056604, -0.0001784905660, \n    -0.0001843396226, -0.0001324528302, -0.0000575471698, +0.0000000000000, \n    +0.0001381132075, +0.0002015094340, +0.0000690566038, -0.0001094339623, \n    -0.0001554716981, -0.0000920754717, +0.0000920754717, +0.0003050943396, \n    +0.0004030188679, +0.0002705660377, -0.0000058490566, -0.0002590566038, \n    -0.0003569811321, -0.0004145283019, -0.0004203773585, -0.0002015094340, \n    +0.0002245283019, +0.0005239622642, +0.0005009433962, +0.0003454716981, \n    +0.0001611320755, -0.0000690566038, -0.0002245283019, -0.0001784905660, \n    -0.0001094339623, -0.0001035849057, -0.0001611320755, -0.0001381132075, \n    +0.0000345283019, +0.0001958490566, +0.0000575471698, -0.0001900000000, \n    -0.0002475471698, -0.0000518867925, +0.0000690566038, +0.0000403773585, \n    -0.0000058490566, +0.0000058490566, -0.0000288679245, -0.0000979245283, \n    -0.0001554716981, -0.0001324528302, +0.0000460377358, +0.0002879245283, \n    +0.0003339622642, +0.0002130188679, +0.0000690566038, -0.0001094339623, \n    -0.0002935849057, -0.0003454716981, -0.0002590566038, -0.0001496226415, \n    -0.0000633962264, +0.0000288679245, +0.0001266037736, +0.0001900000000, \n    +0.0002764150943, +0.0003166037736, +0.0002418867925, +0.0000000000000, \n    -0.0003166037736, -0.0005354716981, -0.0004490566038, -0.0001035849057, \n    +0.0003513207547, +0.0005700000000, +0.0004145283019, +0.0000633962264, \n    -0.0001209433962, -0.0001439622642, -0.0001209433962, -0.0001035849057, \n    +0.0000288679245, +0.0001728301887, +0.0002015094340, +0.0001554716981, \n    +0.0001784905660, +0.0001611320755, -0.0000230188679, -0.0002188679245, \n    -0.0002130188679, -0.0000920754717, +0.0000000000000, +0.0001266037736, \n    +0.0003224528302, +0.0004260377358, +0.0002935849057, +0.0001035849057, \n    -0.0000690566038, -0.0002015094340, -0.0002015094340, -0.0000345283019, \n    +0.0000920754717, +0.0001496226415, +0.0001035849057, +0.0000345283019, \n    -0.0000115094340, -0.0000058490566, -0.0000345283019, -0.0000288679245, \n    +0.0000000000000, +0.0000230188679, -0.0000690566038, -0.0002188679245, \n    -0.0002590566038, -0.0001150943396, +0.0000230188679, +0.0001439622642, \n    +0.0002705660377, +0.0003398113208, +0.0002879245283, +0.0001958490566, \n    +0.0000345283019, -0.0002130188679, -0.0004203773585, -0.0003628301887, \n    -0.0001150943396, +0.0000403773585, +0.0000288679245, -0.0000173584906, \n    -0.0000115094340, +0.0000749056604, +0.0002705660377, +0.0003743396226, \n    +0.0002994339623, +0.0000345283019, -0.0002820754717, -0.0004835849057, \n    -0.0003743396226, -0.0001094339623, +0.0001843396226, +0.0003454716981, \n    +0.0002820754717, +0.0000633962264, -0.0000058490566, +0.0000633962264, \n    +0.0000864150943, -0.0000345283019, -0.0000979245283, -0.0000864150943, \n    -0.0001439622642, -0.0003166037736, -0.0003973584906, -0.0002820754717, \n    -0.0000115094340, +0.0002073584906, +0.0002935849057, +0.0002935849057, \n    +0.0001958490566, -0.0000403773585, -0.0002820754717, -0.0002303773585, \n    +0.0000575471698, +0.0003109433962, +0.0003628301887, +0.0003283018868, \n    +0.0002130188679, -0.0000173584906, -0.0002935849057, -0.0004088679245, \n    -0.0003915094340, -0.0003454716981, -0.0002820754717, -0.0000920754717, \n    +0.0001150943396, +0.0002935849057, +0.0003109433962, +0.0001266037736, \n    -0.0000345283019, +0.0000230188679, +0.0000805660377, +0.0000575471698, \n    +0.0000345283019, +0.0000000000000, -0.0001266037736, -0.0003283018868, \n    -0.0003109433962, +0.0000979245283, +0.0005183018868, +0.0004952830189, \n    +0.0001496226415, -0.0001266037736, -0.0002015094340, -0.0001900000000, \n    -0.0001266037736, -0.0000518867925, -0.0000345283019, -0.0000633962264, \n    -0.0000345283019, +0.0000058490566, -0.0000173584906, -0.0001728301887, \n    -0.0002764150943, -0.0001728301887, +0.0000403773585, +0.0001784905660, \n    +0.0002418867925, +0.0002303773585, +0.0001843396226, +0.0001035849057, \n    +0.0000115094340, -0.0000749056604, -0.0001324528302, -0.0001669811321, \n    -0.0002188679245, -0.0002360377358, -0.0001150943396, +0.0000518867925, \n    +0.0001381132075, +0.0001266037736, +0.0000633962264, -0.0000403773585, \n    -0.0001843396226, -0.0002649056604, -0.0002245283019, -0.0000749056604, \n    +0.0000749056604, +0.0001728301887, +0.0001728301887, +0.0001324528302, \n    +0.0000979245283, +0.0001324528302, +0.0001381132075, +0.0000575471698, \n    -0.0000403773585, -0.0001035849057, -0.0001728301887, -0.0002073584906, \n    -0.0001843396226, -0.0000805660377, +0.0000575471698, +0.0001035849057, \n    +0.0000000000000, -0.0000864150943, -0.0000518867925, -0.0000633962264, \n    -0.0002015094340, -0.0002073584906, +0.0001094339623, +0.0005067924528, \n    +0.0006103773585, +0.0003513207547, -0.0000345283019, -0.0002994339623, \n    -0.0003569811321, -0.0002533962264, -0.0000633962264, +0.0001150943396, \n    +0.0002764150943, +0.0003513207547, +0.0002533962264, +0.0000230188679, \n    -0.0001439622642, -0.0002418867925, -0.0002820754717, -0.0002533962264, \n    -0.0000920754717, +0.0001209433962, +0.0002245283019, +0.0001209433962, \n    -0.0000230188679, -0.0000633962264, +0.0000000000000, +0.0000230188679, \n    -0.0000690566038, -0.0001728301887, -0.0001094339623, +0.0000345283019, \n    +0.0001496226415, +0.0002533962264, +0.0002935849057, +0.0001669811321, \n    -0.0001035849057, -0.0003398113208, -0.0003513207547, -0.0001784905660, \n    +0.0000173584906, +0.0001728301887, +0.0001554716981, +0.0000000000000, \n    -0.0001728301887, -0.0002073584906, -0.0001266037736, -0.0000058490566, \n    +0.0000749056604, +0.0001669811321, +0.0001958490566, +0.0001324528302, \n    +0.0000749056604, +0.0000864150943, +0.0000979245283, +0.0000000000000, \n    -0.0001784905660, -0.0002303773585, -0.0000805660377, +0.0000749056604, \n    +0.0001094339623, +0.0000920754717, +0.0001035849057, +0.0001035849057, \n    +0.0000288679245, -0.0001150943396, -0.0002475471698, -0.0002590566038, \n    -0.0000749056604, +0.0001554716981, +0.0002590566038, +0.0002418867925, \n    +0.0002418867925, +0.0001900000000, +0.0000518867925, -0.0001209433962, \n    -0.0001843396226, -0.0001035849057, -0.0000230188679, -0.0000115094340, \n    +0.0000403773585, +0.0000864150943, +0.0000115094340, -0.0000575471698, \n    +0.0000115094340, +0.0001784905660, +0.0002764150943, +0.0002188679245, \n    +0.0000288679245, -0.0001728301887, -0.0002764150943, -0.0002188679245, \n    -0.0000518867925, +0.0001209433962, +0.0002188679245, +0.0001843396226, \n    -0.0000058490566, -0.0001900000000, -0.0002188679245, -0.0001381132075, \n    -0.0000690566038, -0.0000115094340, +0.0000288679245, +0.0001150943396, \n    +0.0001900000000, +0.0001611320755, -0.0000173584906, -0.0001728301887, \n    -0.0001611320755, -0.0000575471698, -0.0000575471698, -0.0001381132075, \n    -0.0002130188679, -0.0002360377358, -0.0001843396226, -0.0000575471698, \n    +0.0000633962264, +0.0001784905660, +0.0002475471698, +0.0002764150943, \n    +0.0002188679245, +0.0000230188679, -0.0001784905660, -0.0002360377358, \n    -0.0000749056604, +0.0001094339623, +0.0001554716981, +0.0001381132075, \n    +0.0002188679245, +0.0002418867925, +0.0000805660377, -0.0001496226415, \n    -0.0002764150943, -0.0002820754717, -0.0001784905660, +0.0000000000000, \n    +0.0002360377358, +0.0003800000000, +0.0003743396226, +0.0002649056604, \n    +0.0001611320755, +0.0000460377358, -0.0001035849057, -0.0002130188679, \n    -0.0001669811321, -0.0000230188679, +0.0001381132075, +0.0002475471698, \n    +0.0002245283019, +0.0001035849057, -0.0000288679245, -0.0000633962264, \n    +0.0000000000000, +0.0000633962264, +0.0000403773585, +0.0000230188679, \n    +0.0000518867925, +0.0000920754717, +0.0000173584906, -0.0000864150943, \n    -0.0001209433962, -0.0000864150943, -0.0000920754717, -0.0000979245283, \n    -0.0000173584906, +0.0001496226415, +0.0002360377358, +0.0002073584906, \n    +0.0001266037736, +0.0000864150943, +0.0000460377358, -0.0000115094340, \n    -0.0000864150943, -0.0001266037736, -0.0001554716981, -0.0001381132075, \n    -0.0000633962264, -0.0000173584906, -0.0000115094340, +0.0000000000000, \n    +0.0000864150943, +0.0001324528302, +0.0000864150943, -0.0000288679245, \n    -0.0001266037736, -0.0001209433962, +0.0000000000000, +0.0001150943396, \n    +0.0001843396226, +0.0001266037736, -0.0000115094340, -0.0001728301887, \n    -0.0002705660377, -0.0002073584906, +0.0000288679245, +0.0002245283019, \n    +0.0002303773585, +0.0000749056604, -0.0000864150943, -0.0001784905660, \n    -0.0001784905660, -0.0001209433962, -0.0000230188679, +0.0000864150943, \n    +0.0001496226415, +0.0001209433962, +0.0000345283019, -0.0000345283019, \n    -0.0000403773585, +0.0000230188679, +0.0000460377358, +0.0000115094340, \n    +0.0000000000000, +0.0000173584906, +0.0000173584906, -0.0000230188679, \n    -0.0001035849057, -0.0001611320755, -0.0001958490566, -0.0002303773585, \n    -0.0002245283019, -0.0001035849057, -0.0000058490566, -0.0000115094340, \n    -0.0000288679245, +0.0000058490566, +0.0000230188679, +0.0000173584906, \n    -0.0000173584906, -0.0000864150943, -0.0001035849057, -0.0000403773585, \n    +0.0000230188679, +0.0000460377358, +0.0000288679245, -0.0000403773585, \n    -0.0001094339623, -0.0000345283019, +0.0001439622642, +0.0002188679245, \n    +0.0001035849057, -0.0001094339623, -0.0002418867925, -0.0002590566038, \n    -0.0001958490566, -0.0000518867925, +0.0001209433962, +0.0001900000000, \n    +0.0001669811321, +0.0001094339623, +0.0000058490566, -0.0001209433962, \n    -0.0001843396226, -0.0001611320755, -0.0000920754717, -0.0000173584906, \n    +0.0000920754717, +0.0001843396226, +0.0001554716981, +0.0000173584906, \n    -0.0000864150943, -0.0001611320755, -0.0001900000000, -0.0000805660377, \n    +0.0001150943396, +0.0002303773585, +0.0001439622642, -0.0000345283019, \n    -0.0001496226415, -0.0001209433962, -0.0000749056604, -0.0001094339623, \n    -0.0001094339623, +0.0000575471698, +0.0002015094340, +0.0001669811321, \n    +0.0000460377358, -0.0000058490566, -0.0000518867925, -0.0000460377358, \n    +0.0000518867925, +0.0002015094340, +0.0002188679245, +0.0000749056604, \n    -0.0000920754717, -0.0001728301887, -0.0001611320755, -0.0000749056604, \n    +0.0000518867925, +0.0002073584906, +0.0002820754717, +0.0001554716981, \n    -0.0001094339623, -0.0002590566038, -0.0001266037736, +0.0001035849057, \n    +0.0001843396226, +0.0000920754717, -0.0000288679245, -0.0001324528302, \n    -0.0001900000000, -0.0001324528302, +0.0000115094340, +0.0000864150943, \n    +0.0000460377358, -0.0000058490566, -0.0000230188679, -0.0000979245283, \n    -0.0001958490566, -0.0001900000000, -0.0000288679245, +0.0001669811321, \n    +0.0002590566038, +0.0001611320755, -0.0000173584906, -0.0001381132075, \n    -0.0001496226415, -0.0000749056604, +0.0000173584906, +0.0001094339623, \n    +0.0001150943396, +0.0000000000000, -0.0001266037736, -0.0001324528302, \n    -0.0000403773585, +0.0000230188679, +0.0000230188679, +0.0000864150943, \n    +0.0002130188679, +0.0002475471698, +0.0001094339623, -0.0000575471698, \n    -0.0001209433962, -0.0000805660377, -0.0000920754717, -0.0001324528302, \n    -0.0000690566038, +0.0001094339623, +0.0002073584906, +0.0001209433962, \n    +0.0000173584906, +0.0000460377358, +0.0001094339623, +0.0000864150943, \n    +0.0000288679245, +0.0000979245283, +0.0002360377358, +0.0002245283019, \n    +0.0000575471698, -0.0000690566038, -0.0000864150943, -0.0000749056604, \n    -0.0000518867925, -0.0000115094340, +0.0000345283019, +0.0000690566038, \n    +0.0000979245283, +0.0001266037736, +0.0001611320755, +0.0001496226415, \n    +0.0001209433962, +0.0000690566038, -0.0000403773585, -0.0001784905660, \n    -0.0002418867925, -0.0002188679245, -0.0000920754717, +0.0000690566038, \n    +0.0001324528302, +0.0000920754717, +0.0000920754717, +0.0001209433962, \n    +0.0000633962264, -0.0000230188679, -0.0000288679245, +0.0000403773585, \n    +0.0000575471698, -0.0000345283019, -0.0001611320755, -0.0002130188679, \n    -0.0001669811321, -0.0000633962264, +0.0000690566038, +0.0001784905660, \n    +0.0001439622642, +0.0000058490566, -0.0000749056604, -0.0000115094340, \n    +0.0001035849057, +0.0001496226415, +0.0001035849057, +0.0000115094340, \n    -0.0000864150943, -0.0001611320755, -0.0001496226415, -0.0000345283019, \n    +0.0000749056604, +0.0000979245283, +0.0000230188679, -0.0000518867925, \n    -0.0000633962264, -0.0000403773585, -0.0000115094340, +0.0000345283019, \n    +0.0001439622642, +0.0002188679245, +0.0001324528302, -0.0000633962264, \n    -0.0002015094340, -0.0002303773585, -0.0001669811321, +0.0000000000000, \n    +0.0002303773585, +0.0003628301887, +0.0002994339623, +0.0000749056604, \n    -0.0001266037736, -0.0001900000000, -0.0000864150943, +0.0000288679245, \n    +0.0000288679245, -0.0000345283019, -0.0000633962264, -0.0000575471698, \n    -0.0000345283019, +0.0000115094340, +0.0000920754717, +0.0001439622642, \n    +0.0000979245283, +0.0000000000000, -0.0000805660377, -0.0001209433962, \n    -0.0000979245283, +0.0000000000000, +0.0000690566038, +0.0000575471698, \n    +0.0000345283019, +0.0000460377358, +0.0000058490566, -0.0000864150943, \n    -0.0001900000000, -0.0002015094340, -0.0000920754717, +0.0000518867925, \n    +0.0000864150943, +0.0000058490566, -0.0001035849057, -0.0001381132075, \n    -0.0000345283019, +0.0001209433962, +0.0001439622642, -0.0000058490566, \n    -0.0001728301887, -0.0001958490566, -0.0001209433962, -0.0000403773585, \n    +0.0000230188679, +0.0001094339623, +0.0001554716981, +0.0001035849057, \n    -0.0000058490566, -0.0000518867925, -0.0000345283019, -0.0000460377358, \n    -0.0000864150943, -0.0001035849057, -0.0000518867925, +0.0000230188679, \n    +0.0000633962264, +0.0000690566038, +0.0000690566038, +0.0000690566038, \n    +0.0000403773585, -0.0000230188679, -0.0000749056604, -0.0000979245283, \n    -0.0001094339623, -0.0000805660377, -0.0000115094340, +0.0000518867925, \n    +0.0000979245283, +0.0001209433962, +0.0000979245283, +0.0000345283019, \n    -0.0000518867925, -0.0001266037736, -0.0001150943396, -0.0000173584906, \n    +0.0000690566038, +0.0000920754717, +0.0000575471698, +0.0000000000000, \n    -0.0000460377358, -0.0000690566038, -0.0000749056604, -0.0000230188679, \n    +0.0000749056604, +0.0001439622642, +0.0001094339623, -0.0000058490566, \n    -0.0001035849057, -0.0001094339623, -0.0000288679245, +0.0000633962264, \n    +0.0001324528302, +0.0001381132075, +0.0001035849057, +0.0000805660377, \n    +0.0000920754717, +0.0000575471698, -0.0000403773585, -0.0001611320755, \n    -0.0002073584906, -0.0001900000000, -0.0000979245283, +0.0000173584906, \n    +0.0001094339623, +0.0002130188679, +0.0003109433962, +0.0002475471698, \n    +0.0000115094340, -0.0002188679245, -0.0003166037736, -0.0002764150943, \n    -0.0001496226415, +0.0000000000000, +0.0001381132075, +0.0002533962264, \n    +0.0002533962264, +0.0001324528302, -0.0000058490566, -0.0000864150943, \n    -0.0001150943396, -0.0000979245283, -0.0000575471698, -0.0000288679245, \n    -0.0000345283019, -0.0000460377358, -0.0000345283019, +0.0000000000000, \n    +0.0000345283019, +0.0000403773585, +0.0000000000000, -0.0000345283019, \n    -0.0000633962264, -0.0000518867925, -0.0000115094340, +0.0000173584906, \n    +0.0000058490566, -0.0000115094340, -0.0000058490566, +0.0000403773585, \n    +0.0000518867925, +0.0000000000000, -0.0000805660377, -0.0001381132075, \n    -0.0000749056604, +0.0000749056604, +0.0001958490566, +0.0001784905660, \n    +0.0000864150943, -0.0000058490566, -0.0000864150943, -0.0001209433962, \n    -0.0000575471698, +0.0000058490566, +0.0000230188679, +0.0000288679245, \n    +0.0000805660377, +0.0001209433962, +0.0001035849057, +0.0000288679245, \n    -0.0000288679245, -0.0000345283019, -0.0000058490566, +0.0000000000000, \n    +0.0000345283019, +0.0001150943396, +0.0001439622642, +0.0000460377358, \n    -0.0000749056604, -0.0001439622642, -0.0001324528302, -0.0000979245283, \n    -0.0000460377358, +0.0000173584906, +0.0000805660377, +0.0001381132075, \n    +0.0001439622642, +0.0000864150943, +0.0000173584906, +0.0000058490566, \n    +0.0000000000000, -0.0000058490566, -0.0000058490566, +0.0000058490566, \n    -0.0000058490566, -0.0000403773585, -0.0000633962264, -0.0000288679245, \n    +0.0000690566038, +0.0001669811321, +0.0001266037736, -0.0000115094340, \n    -0.0001496226415, -0.0002130188679, -0.0002303773585, -0.0001266037736, \n    +0.0000690566038, +0.0002303773585, +0.0002188679245, +0.0000575471698, \n    -0.0000805660377, -0.0001266037736, -0.0001381132075, -0.0001266037736, \n    -0.0000403773585, +0.0000749056604, +0.0001554716981, +0.0001496226415, \n    +0.0001094339623, +0.0000690566038, +0.0000230188679, -0.0000575471698, \n    -0.0001439622642, -0.0001554716981, -0.0000805660377, -0.0000058490566, \n    +0.0000230188679, +0.0000633962264, +0.0001150943396, +0.0001209433962, \n    +0.0000920754717, +0.0000749056604, +0.0000864150943, +0.0000518867925, \n    +0.0000173584906, +0.0000288679245, +0.0000173584906, -0.0000403773585, \n    -0.0000575471698, -0.0000058490566, +0.0000690566038, +0.0001266037736, \n    +0.0001150943396, +0.0000575471698, +0.0000403773585, +0.0000575471698, \n    +0.0000403773585, +0.0000288679245, +0.0000749056604, +0.0001209433962, \n    +0.0000633962264, -0.0000749056604, -0.0001958490566, -0.0002130188679, \n    -0.0001611320755, -0.0000920754717, -0.0000230188679, +0.0000864150943, \n    +0.0001900000000, +0.0002303773585, +0.0001669811321, +0.0000518867925, \n    -0.0000518867925, -0.0001266037736, -0.0002015094340, -0.0002533962264, \n    -0.0002073584906, -0.0000805660377, +0.0000460377358, +0.0001496226415, \n    +0.0002130188679, +0.0001728301887, +0.0000633962264, +0.0000000000000, \n    -0.0000345283019, -0.0000920754717, -0.0001554716981, -0.0001784905660, \n    -0.0001554716981, -0.0000805660377, +0.0000230188679, +0.0001150943396, \n    +0.0001324528302, +0.0000749056604, +0.0000000000000, -0.0000749056604, \n    -0.0001381132075, -0.0001439622642, -0.0000749056604, +0.0000288679245, \n    +0.0000979245283, +0.0000575471698, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, -0.0000749056604, -0.0001784905660, -0.0002130188679, \n    -0.0001209433962, +0.0000230188679, +0.0001209433962, +0.0001094339623, \n    +0.0000575471698, +0.0000115094340, -0.0000460377358, -0.0001094339623, \n    -0.0001094339623, -0.0000058490566, +0.0001324528302, +0.0002188679245, \n    +0.0002245283019, +0.0001728301887, +0.0000979245283, +0.0000115094340, \n    -0.0000920754717, -0.0001843396226, -0.0001784905660, -0.0001266037736, \n    -0.0001150943396, -0.0000690566038, +0.0000690566038, +0.0002015094340, \n    +0.0001611320755, +0.0000173584906, -0.0000690566038, -0.0000690566038, \n    -0.0000518867925, -0.0000460377358, +0.0000000000000, +0.0000805660377, \n    +0.0001266037736, +0.0000805660377, +0.0000115094340, -0.0000288679245, \n    -0.0000633962264, -0.0001150943396, -0.0001439622642, -0.0001035849057, \n    +0.0000000000000, +0.0000920754717, +0.0001324528302, +0.0001035849057, \n    +0.0000288679245, -0.0000403773585, -0.0000690566038, -0.0000403773585, \n    +0.0000058490566, +0.0000058490566, -0.0000690566038, -0.0001324528302, \n    -0.0000864150943, -0.0000230188679, -0.0000115094340, +0.0000000000000, \n    +0.0000575471698, +0.0000920754717, +0.0000460377358, -0.0000058490566, \n    +0.0000058490566, +0.0000460377358, +0.0000230188679, -0.0000288679245, \n    -0.0000288679245, +0.0000345283019, +0.0000690566038, +0.0000403773585, \n    -0.0000403773585, -0.0001554716981, -0.0002130188679, -0.0001496226415, \n    +0.0000000000000, +0.0001324528302, +0.0001958490566, +0.0001669811321, \n    +0.0000979245283, +0.0000575471698, +0.0000460377358, +0.0000230188679, \n    +0.0000000000000, +0.0000000000000, +0.0000173584906, +0.0000288679245, \n    -0.0000173584906, -0.0000979245283, -0.0001209433962, -0.0000805660377, \n    -0.0000173584906, +0.0000633962264, +0.0001266037736, +0.0001496226415, \n    +0.0001266037736, +0.0000864150943, +0.0000575471698, +0.0000403773585, \n    +0.0000000000000, -0.0000575471698, -0.0000690566038, -0.0000115094340, \n    +0.0000115094340, -0.0000115094340, -0.0000173584906, +0.0000345283019, \n    +0.0000864150943, +0.0000805660377, +0.0000575471698, +0.0000575471698, \n    +0.0000288679245, -0.0000749056604, -0.0001669811321, -0.0001094339623, \n    +0.0000403773585, +0.0001209433962, +0.0000518867925, -0.0000575471698, \n    -0.0001094339623, -0.0000920754717, -0.0000633962264, -0.0000288679245, \n    +0.0000288679245, +0.0001150943396, +0.0001611320755, +0.0001150943396, \n    +0.0000000000000, -0.0001324528302, -0.0002073584906, -0.0001439622642, \n    +0.0000058490566, +0.0001266037736, +0.0001266037736, +0.0000518867925, \n    -0.0000058490566, -0.0000518867925, -0.0000690566038, -0.0000460377358, \n    +0.0000000000000, -0.0000173584906, -0.0000864150943, -0.0001150943396, \n    -0.0000230188679, +0.0001266037736, +0.0002073584906, +0.0001611320755, \n    +0.0000805660377, -0.0000173584906, -0.0001728301887, -0.0002879245283, \n    -0.0002418867925, -0.0000575471698, +0.0000979245283, +0.0001554716981, \n    +0.0001496226415, +0.0001266037736, +0.0000518867925, -0.0000518867925, \n    -0.0000979245283, -0.0000403773585, +0.0000690566038, +0.0001324528302, \n    +0.0001035849057, +0.0000288679245, -0.0000805660377, -0.0001958490566, \n    -0.0002073584906, -0.0000575471698, +0.0001035849057, +0.0001266037736, \n    +0.0000403773585, +0.0000115094340, +0.0000633962264, +0.0000690566038, \n    +0.0000000000000, -0.0000575471698, -0.0000518867925, -0.0000345283019, \n    -0.0000345283019, -0.0000345283019, -0.0000173584906, +0.0000000000000, \n    +0.0000173584906, +0.0000460377358, +0.0000920754717, +0.0001209433962, \n    +0.0000979245283, +0.0000345283019, -0.0000115094340, -0.0000173584906, \n    -0.0000345283019, -0.0000575471698, -0.0000288679245, +0.0000403773585, \n    +0.0000805660377, +0.0000518867925, -0.0000058490566, -0.0000460377358, \n    -0.0000518867925, -0.0000288679245, +0.0000230188679, +0.0000805660377, \n    +0.0000805660377, +0.0000173584906, -0.0000403773585, -0.0000518867925, \n    -0.0000575471698, -0.0000805660377, -0.0000518867925, +0.0000690566038, \n    +0.0001900000000, +0.0001728301887, +0.0000864150943, +0.0000345283019, \n    +0.0000115094340, -0.0000403773585, -0.0001209433962, -0.0001381132075, \n    -0.0000805660377, -0.0000115094340, +0.0000345283019, +0.0000749056604, \n    +0.0001209433962, +0.0001324528302, +0.0000633962264, -0.0000575471698, \n    -0.0001439622642, -0.0001209433962, -0.0000690566038, -0.0000345283019, \n    +0.0000000000000, +0.0000460377358, +0.0000690566038, +0.0000805660377, \n    +0.0000749056604, +0.0000518867925, +0.0000345283019, +0.0000000000000, \n    -0.0000230188679, -0.0000518867925, -0.0000920754717, -0.0001381132075, \n    -0.0001324528302, -0.0000518867925, +0.0000288679245, +0.0000749056604, \n    +0.0000460377358, -0.0000173584906, -0.0000460377358, -0.0000230188679, \n    +0.0000000000000, +0.0000000000000, -0.0000173584906, +0.0000000000000, \n    +0.0000518867925, +0.0000690566038, +0.0000460377358, +0.0000460377358, \n    +0.0000805660377, +0.0000979245283, +0.0000403773585, -0.0000633962264, \n    -0.0001209433962, -0.0000805660377, +0.0000115094340, +0.0000805660377, \n    +0.0000920754717, +0.0000749056604, +0.0000403773585, +0.0000058490566, \n    -0.0000345283019, -0.0000864150943, -0.0001209433962, -0.0000805660377, \n    +0.0000000000000, +0.0000518867925, +0.0000979245283, +0.0001266037736, \n    +0.0001381132075, +0.0000979245283, +0.0000173584906, -0.0000805660377, \n    -0.0001611320755, -0.0001669811321, -0.0000633962264, +0.0000518867925, \n    +0.0001094339623, +0.0001035849057, +0.0000920754717, +0.0000633962264, \n    -0.0000058490566, -0.0000920754717, -0.0001094339623, -0.0000403773585, \n    +0.0000575471698, +0.0001266037736, +0.0001266037736, +0.0000345283019, \n    -0.0000805660377, -0.0001381132075, -0.0000920754717, -0.0000058490566, \n    +0.0000749056604, +0.0001439622642, +0.0001439622642, +0.0000749056604, \n    +0.0000000000000, -0.0000115094340, +0.0000460377358, +0.0000979245283, \n    +0.0000230188679, -0.0000864150943, -0.0001035849057, -0.0000403773585, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000173584906, +0.0000575471698, +0.0000633962264, +0.0000000000000, \n    -0.0000979245283, -0.0001150943396, -0.0000345283019, +0.0000460377358, \n    +0.0000345283019, -0.0000230188679, -0.0000345283019, -0.0000345283019, \n    -0.0000690566038, -0.0001094339623, -0.0000979245283, -0.0000403773585, \n    +0.0000000000000, +0.0000173584906, +0.0000173584906, -0.0000173584906, \n    -0.0000690566038, -0.0000749056604, +0.0000000000000, +0.0001150943396, \n    +0.0001554716981, +0.0000460377358, -0.0000920754717, -0.0001496226415, \n    -0.0001324528302, -0.0000979245283, -0.0000690566038, -0.0000173584906, \n    +0.0000403773585, +0.0001094339623, +0.0001439622642, +0.0001035849057, \n    -0.0000173584906, -0.0001728301887, -0.0002418867925, -0.0001496226415, \n    +0.0000230188679, +0.0001669811321, +0.0001958490566, +0.0001094339623, \n    -0.0000460377358, -0.0002015094340, -0.0002764150943, -0.0001958490566, \n    +0.0000173584906, +0.0002245283019, +0.0002820754717, +0.0002015094340, \n    +0.0000690566038, -0.0000403773585, -0.0000979245283, -0.0001209433962, \n    -0.0001324528302, -0.0001209433962, -0.0000403773585, +0.0000749056604, \n    +0.0001728301887, +0.0001900000000, +0.0001209433962, +0.0000000000000, \n    -0.0001035849057, -0.0000979245283, +0.0000000000000, +0.0000920754717, \n    +0.0001324528302, +0.0001266037736, +0.0000864150943, +0.0000345283019, \n    -0.0000288679245, -0.0001150943396, -0.0001439622642, -0.0000805660377, \n    -0.0000173584906, -0.0000115094340, -0.0000115094340, +0.0000115094340, \n    +0.0000345283019, +0.0000288679245, +0.0000173584906, +0.0000345283019, \n    +0.0000288679245, -0.0000173584906, -0.0000690566038, -0.0000749056604, \n    -0.0000575471698, -0.0000230188679, +0.0000403773585, +0.0001094339623, \n    +0.0001094339623, +0.0000633962264, +0.0000230188679, +0.0000000000000, \n    -0.0000173584906, -0.0000288679245, -0.0000288679245, -0.0000230188679, \n    -0.0000058490566, +0.0000058490566, +0.0000000000000, -0.0000230188679, \n    -0.0000345283019, -0.0000345283019, -0.0000115094340, +0.0000230188679, \n    +0.0000633962264, +0.0000920754717, +0.0000920754717, +0.0000749056604, \n    +0.0000633962264, +0.0000230188679, -0.0000173584906, -0.0000518867925, \n    -0.0000690566038, -0.0000690566038, -0.0000749056604, -0.0000749056604, \n    -0.0000518867925, +0.0000115094340, +0.0001035849057, +0.0001843396226, \n    +0.0002073584906, +0.0001611320755, +0.0000690566038, -0.0000518867925, \n    -0.0001843396226, -0.0002590566038, -0.0002188679245, -0.0000518867925, \n    +0.0001150943396, +0.0001958490566, +0.0001843396226, +0.0001150943396, \n    +0.0000288679245, -0.0000230188679, -0.0000690566038, -0.0000864150943, \n    -0.0000288679245, +0.0000633962264, +0.0001209433962, +0.0001381132075, \n    +0.0001209433962, +0.0000403773585, -0.0000633962264, -0.0001035849057, \n    -0.0000575471698, -0.0000173584906, -0.0000345283019, -0.0000749056604, \n    -0.0000518867925, +0.0000115094340, +0.0000575471698, +0.0000805660377, \n    +0.0001035849057, +0.0000979245283, +0.0000575471698, +0.0000230188679, \n    +0.0000058490566, -0.0000115094340, -0.0000518867925, -0.0000864150943, \n    -0.0000979245283, -0.0000518867925, +0.0000058490566, +0.0000345283019, \n    +0.0000345283019, +0.0000518867925, +0.0000460377358, +0.0000403773585, \n    +0.0000460377358, +0.0000288679245, -0.0000230188679, -0.0000805660377, \n    -0.0001035849057, -0.0000749056604, -0.0000403773585, -0.0000230188679, \n    +0.0000115094340, +0.0000518867925, +0.0000403773585, +0.0000115094340, \n    +0.0000058490566, +0.0000288679245, +0.0000460377358, +0.0000345283019, \n    +0.0000058490566, -0.0000403773585, -0.0000920754717, -0.0001035849057, \n    -0.0000749056604, -0.0000518867925, +0.0000000000000, +0.0000633962264, \n    +0.0001150943396, +0.0000805660377, +0.0000000000000, -0.0000633962264, \n    -0.0000805660377, -0.0000864150943, -0.0000690566038, -0.0000403773585, \n    +0.0000000000000, +0.0000230188679, +0.0000288679245, +0.0000345283019, \n    +0.0000575471698, +0.0000690566038, +0.0000230188679, -0.0000403773585, \n    -0.0000979245283, -0.0001324528302, -0.0001381132075, -0.0000920754717, \n    -0.0000230188679, +0.0000460377358, +0.0001035849057, +0.0001266037736, \n    +0.0000864150943, +0.0000403773585, +0.0000000000000, -0.0000575471698, \n    -0.0001266037736, -0.0001324528302, -0.0000460377358, +0.0000749056604, \n    +0.0001728301887, +0.0001900000000, +0.0001381132075, +0.0000518867925, \n    -0.0000403773585, -0.0001266037736, -0.0001324528302, -0.0000575471698, \n    +0.0000288679245, +0.0000690566038, +0.0000749056604, +0.0000575471698, \n    +0.0000460377358, +0.0000173584906, -0.0000230188679, -0.0000805660377, \n    -0.0000979245283, -0.0000749056604, -0.0000058490566, +0.0000864150943, \n    +0.0001381132075, +0.0001035849057, +0.0000518867925, +0.0000000000000, \n    -0.0000518867925, -0.0001209433962, -0.0001496226415, -0.0000979245283, \n    +0.0000000000000, +0.0000864150943, +0.0001324528302, +0.0001554716981, \n    +0.0001439622642, +0.0000920754717, +0.0000000000000, -0.0000805660377, \n    -0.0000864150943, -0.0000518867925, -0.0000518867925, -0.0000518867925, \n    +0.0000000000000, +0.0000518867925, +0.0000288679245, -0.0000230188679, \n    -0.0000230188679, +0.0000115094340, +0.0000403773585, +0.0000403773585, \n    +0.0000345283019, +0.0000345283019, +0.0000403773585, +0.0000115094340, \n    -0.0000173584906, -0.0000633962264, -0.0001150943396, -0.0001439622642, \n    -0.0001035849057, -0.0000173584906, +0.0000690566038, +0.0001150943396, \n    +0.0000864150943, +0.0000058490566, -0.0000633962264, -0.0000920754717, \n    -0.0000690566038, -0.0000288679245, +0.0000173584906, +0.0000403773585, \n    +0.0000288679245, -0.0000058490566, -0.0000518867925, -0.0000633962264, \n    -0.0000115094340, +0.0000633962264, +0.0001381132075, +0.0001611320755, \n    +0.0001094339623, +0.0000000000000, -0.0001381132075, -0.0002130188679, \n    -0.0001496226415, +0.0000000000000, +0.0001381132075, +0.0001728301887, \n    +0.0001209433962, +0.0000518867925, +0.0000000000000, -0.0000633962264, \n    -0.0001324528302, -0.0001381132075, -0.0000749056604, +0.0000000000000, \n    +0.0000518867925, +0.0000749056604, +0.0000805660377, +0.0000575471698, \n    +0.0000000000000, -0.0000403773585, -0.0000460377358, -0.0000345283019, \n    -0.0000288679245, -0.0000173584906, +0.0000460377358, +0.0001266037736, \n    +0.0001324528302, +0.0000403773585, -0.0000288679245, -0.0000345283019, \n    +0.0000000000000, +0.0000058490566, +0.0000000000000, -0.0000058490566, \n    -0.0000230188679, -0.0000460377358, -0.0000403773585, +0.0000000000000, \n    +0.0000575471698, +0.0000805660377, +0.0000518867925, +0.0000230188679, \n    +0.0000115094340, +0.0000230188679, +0.0000173584906, +0.0000058490566, \n    +0.0000058490566, +0.0000173584906, +0.0000288679245, +0.0000460377358, \n    +0.0000288679245, -0.0000058490566, -0.0000403773585, -0.0000345283019, \n    -0.0000058490566, +0.0000058490566, +0.0000173584906, +0.0000230188679, \n    +0.0000115094340, +0.0000000000000, +0.0000000000000, +0.0000058490566, \n    +0.0000288679245, +0.0000345283019, +0.0000460377358, +0.0000403773585, \n    +0.0000173584906, +0.0000000000000, -0.0000058490566, -0.0000288679245, \n    -0.0000518867925, -0.0000403773585, +0.0000000000000, +0.0000173584906, \n    +0.0000288679245, +0.0000230188679, +0.0000288679245, +0.0000345283019, \n    +0.0000230188679, +0.0000058490566, +0.0000000000000, -0.0000115094340, \n    -0.0000345283019, -0.0000403773585, -0.0000288679245, +0.0000000000000, \n    +0.0000173584906, +0.0000403773585, +0.0000345283019, +0.0000345283019, \n    +0.0000173584906, +0.0000058490566, +0.0000000000000, +0.0000058490566, \n    +0.0000058490566, +0.0000000000000, -0.0000173584906, -0.0000230188679, \n    -0.0000115094340, +0.0000000000000, +0.0000115094340, +0.0000115094340, \n    +0.0000058490566, -0.0000058490566, -0.0000230188679, -0.0000230188679, \n    +0.0000000000000, +0.0000115094340, +0.0000230188679, +0.0000115094340, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000058490566, +0.0000058490566, \n    +0.0000058490566, +0.0000058490566, +0.0000000000000, -0.0000058490566, \n    -0.0000173584906, -0.0000173584906, -0.0000058490566, +0.0000000000000, \n    +0.0000058490566, +0.0000115094340, +0.0000058490566, +0.0000058490566, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    -0.0000058490566, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000058490566, +0.0000058490566, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000\n};\n"
  },
  {
    "path": "impulses/06-fender-68-vibrolux-at4050.h",
    "content": "float fender_68_vibrolux_at4050[] = {\n    +0.0000000000000, -0.0000082228117, -0.0000244031830, +0.0000000000000, \n    +0.0000485411141, +0.0000485411141, +0.0000082228117, -0.0000082228117, \n    +0.0000000000000, +0.0000405835544, +0.0000405835544, +0.0000000000000, \n    -0.0000082228117, -0.0000567639257, -0.0001376657825, -0.0001294429708, \n    +0.0000000000000, +0.0001376657825, +0.0001779840849, +0.0000809018568, \n    -0.0000485411141, -0.0000729442971, -0.0000082228117, -0.0000809018568, \n    -0.0001376657825, +0.0000729442971, +0.0003641909814, +0.0003156498674, \n    -0.0000647214854, -0.0004450928382, -0.0003885941645, +0.0001132625995, \n    +0.0005100795756, +0.0002832891247, -0.0002832891247, -0.0005100795756, \n    -0.0002185676393, +0.0001132625995, +0.0003156498674, +0.0002591511936, \n    -0.0000567639257, -0.0003724137931, -0.0004615384615, -0.0002185676393, \n    +0.0004615384615, +0.0011413793103, +0.0008580901857, -0.0001456233422, \n    -0.0007042440318, -0.0005503978780, -0.0002265251989, -0.0001214854111, \n    -0.0002509283820, -0.0002994694960, +0.0001618037135, +0.0006312997347, \n    +0.0001456233422, -0.0005100795756, -0.0001941644562, +0.0004938992042, \n    +0.0006718832891, +0.0002103448276, -0.0005748010610, -0.0009228116711, \n    -0.0002509283820, +0.0007042440318, +0.0009389920424, +0.0004938992042, \n    +0.0000000000000, -0.0007366047745, -0.0012628647215, -0.0005989389920, \n    +0.0006151193634, +0.0011819628647, +0.0006474801061, -0.0005989389920, \n    -0.0014246684350, -0.0006798408488, +0.0008257294430, +0.0010119363395, \n    +0.0001132625995, -0.0002591511936, -0.0000809018568, +0.0002915119363, \n    +0.0006233421751, +0.0002429708223, -0.0003156498674, -0.0000970822281, \n    +0.0000891246684, -0.0007204244032, -0.0013599469496, -0.0007366047745, \n    +0.0002753315650, +0.0008904509284, +0.0012546419098, +0.0008742705570, \n    -0.0001779840849, -0.0008257294430, -0.0009472148541, -0.0006151193634, \n    +0.0006395225464, +0.0018700265252, +0.0009389920424, -0.0010360742706, \n    -0.0016594164456, -0.0004127320955, +0.0013355437666, +0.0019588859416, \n    +0.0002103448276, -0.0021856763926, -0.0021936339523, -0.0002103448276, \n    +0.0008660477454, +0.0007610079576, +0.0007527851459, +0.0002509283820, \n    -0.0005503978780, -0.0005100795756, -0.0003885941645, +0.0001132625995, \n    +0.0015785145889, +0.0020236074271, +0.0004856763926, -0.0007851458886, \n    -0.0005748010610, -0.0009957559682, -0.0018294429708, -0.0011169761273, \n    +0.0001862068966, +0.0011737400531, +0.0011251989390, -0.0010604774536, \n    -0.0025419098143, +0.0003318302387, +0.0043549071618, +0.0036750663130, \n    -0.0003965517241, -0.0037156498674, -0.0040960212202, -0.0007610079576, \n    +0.0039665782493, +0.0045087533156, +0.0013437665782, -0.0011413793103, \n    -0.0022259946950, -0.0030679045093, -0.0015299734748, +0.0016026525199, \n    +0.0022259946950, -0.0002753315650, -0.0022907161804, -0.0034482758621, \n    -0.0005827586207, +0.0042336870027, +0.0048326259947, +0.0003318302387, \n    -0.0006557029178, +0.0017000000000, +0.0019265251989, -0.0013437665782, \n    -0.0021936339523, +0.0003156498674, +0.0074795755968, +0.0089042440318, \n    -0.0048649867374, -0.0242846153846, -0.0174928381963, -0.0015541114058, \n    +0.0344920424403, +0.0311408488064, -0.0519283819629, -0.0749501326260, \n    +0.0397538461538, +0.2236769230769, +0.2119068965517, -0.1057673740053, \n    -0.2652275862069, -0.1026750663130, -0.0213702917772, -0.0821870026525, \n    -0.0352450928382, +0.0840488063660, +0.0248026525199, -0.0184482758621, \n    +0.0613265251989, +0.0332132625995, -0.0287771883289, -0.0204474801061, \n    -0.0253368700265, +0.0206013262599, +0.0287042440318, -0.0096084880637, \n    -0.0008904509284, -0.0020318302387, -0.0093251989390, -0.0075525198939, \n    -0.0052453580902, +0.0042901856764, +0.0016514588859, +0.0039259946950, \n    +0.0060710875332, +0.0001053050398, +0.0083135278515, +0.0241469496021, \n    +0.0221718832891, +0.0038450928382, -0.0323389920424, -0.0445864721485, \n    +0.0038127320955, +0.0431697612732, +0.0243896551724, +0.0110819628647, \n    +0.0172257294430, -0.0093172413793, -0.0178005305040, +0.0070021220159, \n    +0.0309546419098, +0.0365644562334, +0.0222283819629, +0.0112275862069, \n    -0.0119721485411, -0.0250374005305, -0.0311246684350, -0.0166511936340, \n    +0.0101185676393, +0.0108145888594, -0.0145222811671, +0.0043145888594, \n    +0.0244708222812, -0.0067753315650, -0.0299509283820, -0.0077466843501, \n    +0.0253854111406, +0.0201562334218, +0.0094466843501, +0.0008498673740, \n    -0.0031732095491, -0.0022745358090, +0.0009795755968, +0.0141175066313, \n    +0.0250291777188, +0.0096005305040, -0.0124419098143, -0.0226413793103, \n    -0.0237180371353, -0.0110575596817, +0.0044925729443, +0.0035456233422, \n    -0.0108310344828, -0.0059334217507, +0.0018132625995, -0.0014408488064, \n    +0.0024689655172, +0.0080543766578, +0.0093496021220, +0.0146193633952, \n    +0.0227546419098, +0.0212732095491, +0.0039015915119, -0.0078114058355, \n    -0.0043954907162, -0.0066782493369, -0.0080949602122, +0.0017403183024, \n    +0.0110819628647, +0.0095923076923, -0.0003238726790, -0.0059984084881, \n    -0.0082000000000, -0.0066376657825, +0.0003238726790, +0.0009633952255, \n    -0.0013031830239, +0.0018374005305, +0.0011493368700, -0.0033917771883, \n    -0.0011413793103, +0.0040798408488, +0.0046787798408, +0.0003076923077, \n    -0.0032217506631, -0.0038206896552, +0.0030517241379, +0.0060307692308, \n    +0.0033594164456, -0.0014246684350, -0.0057554376658, -0.0049379310345, \n    -0.0082729442971, -0.0140363395225, -0.0044198938992, +0.0077628647215, \n    +0.0059740053050, +0.0027278514589, -0.0024042440318, -0.0039583554377, \n    +0.0032299734748, +0.0044763925729, -0.0022259946950, -0.0051644562334, \n    -0.0028007957560, +0.0018862068966, +0.0011493368700, -0.0052374005305, \n    -0.0065405835544, -0.0034647214854, -0.0013761273210, -0.0014005305040, \n    +0.0002994694960, +0.0020641909814, +0.0012222811671, +0.0011169761273, \n    -0.0008013262599, -0.0070183023873, -0.0067188328912, -0.0004127320955, \n    +0.0019265251989, +0.0015055702918, +0.0025419098143, -0.0008095490716, \n    -0.0046708222812, +0.0006474801061, +0.0067026525199, +0.0019103448276, \n    -0.0037480106101, -0.0038774535809, -0.0031488063660, -0.0042740053050, \n    -0.0030761273210, +0.0000000000000, -0.0021533156499, -0.0054559681698, \n    -0.0030114058355, +0.0023395225464, +0.0005180371353, -0.0035294429708, \n    +0.0003400530504, +0.0037559681698, +0.0007689655172, -0.0014976127321, \n    -0.0019750663130, -0.0044602122016, -0.0028816976127, -0.0004856763926, \n    -0.0062331564987, -0.0080625994695, -0.0011090185676, +0.0018050397878, \n    +0.0000891246684, +0.0024122015915, +0.0022259946950, -0.0026307692308, \n    -0.0017970822281, +0.0027846153846, -0.0007448275862, -0.0051482758621, \n    -0.0030761273210, +0.0001941644562, -0.0018941644562, -0.0075363395225, \n    -0.0048732095491, +0.0050997347480, +0.0066944297082, +0.0006636604775, \n    +0.0001214854111, +0.0016190981432, +0.0003965517241, +0.0025742705570, \n    +0.0043631299735, -0.0014328912467, -0.0041769230769, -0.0008660477454, \n    -0.0012546419098, -0.0031488063660, +0.0003238726790, +0.0029708222812, \n    +0.0005909814324, +0.0014732095491, +0.0032461538462, +0.0007851458886, \n    -0.0000970822281, +0.0015055702918, +0.0013679045093, +0.0009228116711, \n    +0.0007042440318, +0.0015217506631, +0.0013517241379, +0.0016432360743, \n    +0.0036265251989, +0.0025742705570, -0.0024607427056, -0.0065729442971, \n    -0.0049297082228, -0.0021533156499, -0.0015864721485, -0.0014084880637, \n    +0.0014570291777, +0.0043793103448, +0.0032702917772, +0.0032135278515, \n    +0.0039665782493, +0.0012222811671, -0.0011090185676, -0.0005424403183, \n    -0.0000729442971, -0.0002023872679, +0.0000244031830, -0.0009633952255, \n    -0.0029302387268, -0.0007448275862, +0.0018700265252, +0.0003400530504, \n    +0.0002994694960, +0.0000244031830, -0.0008904509284, +0.0007448275862, \n    +0.0021612732095, +0.0017241379310, -0.0000161803714, +0.0011493368700, \n    +0.0039259946950, -0.0008822281167, -0.0050188328912, -0.0011657824934, \n    +0.0010846153846, -0.0015541114058, -0.0002915119363, +0.0007366047745, \n    -0.0002753315650, +0.0028978779841, +0.0050755968170, +0.0030517241379, \n    +0.0003724137931, -0.0009472148541, -0.0002023872679, -0.0016270557029, \n    -0.0040312997347, -0.0017000000000, -0.0013923076923, -0.0017888594164, \n    +0.0012546419098, +0.0040877984085, +0.0058848806366, +0.0032785145889, \n    -0.0024042440318, -0.0028251989390, +0.0005180371353, +0.0028655172414, \n    +0.0010037135279, -0.0031084880637, -0.0018456233422, +0.0006474801061, \n    +0.0014893899204, +0.0000082228117, -0.0050267904509, -0.0041039787798, \n    +0.0022421750663, +0.0028816976127, +0.0011169761273, +0.0004533156499, \n    +0.0020803713528, +0.0024851458886, -0.0005503978780, -0.0016026525199, \n    -0.0012546419098, -0.0028899204244, -0.0001294429708, +0.0046222811671, \n    +0.0021209549072, -0.0027522546419, -0.0032623342175, -0.0007689655172, \n    +0.0020480106101, +0.0039421750663, +0.0005586206897, -0.0021533156499, \n    +0.0022098143236, +0.0046708222812, -0.0005989389920, -0.0052129973475, \n    -0.0032623342175, +0.0005909814324, +0.0013923076923, -0.0014167108753, \n    -0.0027684350133, -0.0008822281167, -0.0009551724138, +0.0001376657825, \n    +0.0048973474801, +0.0040312997347, -0.0013599469496, -0.0027360742706, \n    +0.0007933687003, +0.0028413793103, -0.0002753315650, -0.0022180371353, \n    -0.0014246684350, -0.0011657824934, -0.0014490716180, -0.0005748010610, \n    +0.0009795755968, +0.0004289124668, -0.0008580901857, +0.0006636604775, \n    +0.0002915119363, -0.0024607427056, -0.0005503978780, -0.0002347480106, \n    -0.0021371352785, -0.0012061007958, -0.0014570291777, +0.0008742705570, \n    +0.0038854111406, +0.0013193633952, +0.0000405835544, +0.0024527851459, \n    +0.0008580901857, -0.0025742705570, -0.0035859416446, -0.0020641909814, \n    -0.0006636604775, -0.0005586206897, +0.0005180371353, +0.0010928381963, \n    +0.0002832891247, +0.0002185676393, +0.0004856763926, +0.0011169761273, \n    +0.0027602122016, +0.0012061007958, -0.0003965517241, -0.0004533156499, \n    -0.0004450928382, +0.0001214854111, -0.0013599469496, -0.0032299734748, \n    -0.0008822281167, +0.0016917771883, +0.0013679045093, +0.0009875331565, \n    +0.0008095490716, +0.0005018567639, -0.0012061007958, -0.0015379310345, \n    +0.0004209549072, -0.0009551724138, -0.0030761273210, -0.0009145888594, \n    +0.0027360742706, +0.0032623342175, +0.0005503978780, -0.0006151193634, \n    -0.0002185676393, -0.0003156498674, -0.0005018567639, -0.0009228116711, \n    -0.0005342175066, +0.0007204244032, +0.0013517241379, -0.0007204244032, \n    -0.0016676392573, +0.0012952254642, +0.0015055702918, -0.0013114058355, \n    -0.0011331564987, -0.0006233421751, -0.0019185676393, -0.0008419098143, \n    +0.0014814323607, +0.0016026525199, +0.0006312997347, +0.0005586206897, \n    -0.0009066312997, -0.0012222811671, -0.0005262599469, -0.0012384615385, \n    +0.0003076923077, +0.0004209549072, -0.0014084880637, +0.0006233421751, \n    +0.0021047745358, +0.0012952254642, +0.0004289124668, -0.0015785145889, \n    -0.0008095490716, +0.0021371352785, +0.0021856763926, -0.0008984084881, \n    -0.0018538461538, +0.0000405835544, +0.0000485411141, +0.0004938992042, \n    +0.0007527851459, -0.0005748010610, -0.0001132625995, +0.0010442970822, \n    +0.0003400530504, -0.0020803713528, -0.0024366047745, -0.0008498673740, \n    -0.0008336870027, +0.0006312997347, +0.0014167108753, +0.0009551724138, \n    +0.0030437665782, +0.0035456233422, +0.0019912466844, +0.0014328912467, \n    -0.0002671087533, -0.0026307692308, -0.0031811671088, -0.0006962864721, \n    +0.0011331564987, -0.0008175066313, -0.0017241379310, -0.0000891246684, \n    +0.0013517241379, +0.0008984084881, +0.0000082228117, -0.0002671087533, \n    -0.0017161803714, -0.0018212201592, +0.0004127320955, +0.0009310344828, \n    +0.0018294429708, +0.0035374005305, +0.0016026525199, -0.0008822281167, \n    +0.0005180371353, +0.0019103448276, +0.0010198938992, -0.0013275862069, \n    -0.0033997347480, -0.0021774535809, -0.0008580901857, -0.0010766578249, \n    +0.0018456233422, +0.0039907161804, +0.0012790450928, +0.0002023872679, \n    +0.0014893899204, -0.0000891246684, -0.0008580901857, +0.0015623342175, \n    +0.0007933687003, -0.0013517241379, -0.0010684350133, -0.0000891246684, \n    +0.0003076923077, +0.0001456233422, -0.0005018567639, -0.0003156498674, \n    +0.0018538461538, +0.0034564986737, +0.0026469496021, +0.0010442970822, \n    +0.0006395225464, +0.0005827586207, +0.0007286472149, -0.0003076923077, \n    -0.0012952254642, +0.0003562334218, +0.0011331564987, -0.0009228116711, \n    -0.0011169761273, -0.0000567639257, -0.0004209549072, -0.0000485411141, \n    +0.0001456233422, -0.0000809018568, +0.0000082228117, +0.0016026525199, \n    +0.0032379310345, +0.0018456233422, -0.0005100795756, +0.0004209549072, \n    +0.0013923076923, +0.0003238726790, -0.0006474801061, +0.0001053050398, \n    +0.0003480106101, -0.0008984084881, -0.0001376657825, +0.0002347480106, \n    -0.0014408488064, -0.0006312997347, +0.0011331564987, +0.0015217506631, \n    +0.0027522546419, +0.0021936339523, -0.0000244031830, -0.0013437665782, \n    -0.0013355437666, +0.0001214854111, +0.0003238726790, -0.0002753315650, \n    -0.0004450928382, -0.0020480106101, -0.0031732095491, -0.0019832891247, \n    +0.0010119363395, +0.0033188328912, +0.0030923076923, +0.0014084880637, \n    +0.0006880636605, +0.0011737400531, +0.0005827586207, -0.0021127320955, \n    -0.0025175066313, -0.0003480106101, +0.0003885941645, -0.0016917771883, \n    -0.0020397877984, +0.0005180371353, -0.0003724137931, -0.0011169761273, \n    +0.0014893899204, +0.0025498673740, +0.0009472148541, +0.0009310344828, \n    +0.0014976127321, +0.0000970822281, -0.0019588859416, -0.0011981432361, \n    +0.0001456233422, -0.0008095490716, -0.0019347480106, -0.0014814323607, \n    -0.0004533156499, -0.0012628647215, -0.0013923076923, +0.0009875331565, \n    +0.0022827586207, +0.0009713527851, -0.0000323607427, -0.0001214854111, \n    -0.0003641909814, -0.0008336870027, -0.0016755968170, -0.0018132625995, \n    -0.0001376657825, +0.0006312997347, -0.0018374005305, -0.0035212201592, \n    -0.0021774535809, -0.0004450928382, -0.0006474801061, -0.0009957559682, \n    +0.0008660477454, +0.0035212201592, +0.0031246684350, +0.0000161803714, \n    -0.0029061007958, -0.0029384615385, +0.0003156498674, +0.0025984084881, \n    +0.0007933687003, -0.0015702917772, -0.0020885941645, -0.0014814323607, \n    -0.0015217506631, -0.0020559681698, -0.0012790450928, +0.0000970822281, \n    +0.0012305039788, +0.0010198938992, +0.0001700265252, +0.0008175066313, \n    +0.0010766578249, -0.0004371352785, -0.0011819628647, -0.0012061007958, \n    -0.0013193633952, -0.0004615384615, +0.0012061007958, +0.0011657824934, \n    +0.0005262599469, -0.0006233421751, -0.0021127320955, -0.0014328912467, \n    -0.0005180371353, -0.0001053050398, +0.0009795755968, +0.0023880636605, \n    +0.0027440318302, +0.0010281167109, -0.0004615384615, +0.0002429708223, \n    -0.0002994694960, -0.0023636604775, -0.0025580901857, -0.0007933687003, \n    +0.0011090185676, +0.0016026525199, +0.0003156498674, -0.0006798408488, \n    -0.0000970822281, -0.0000647214854, +0.0005827586207, +0.0020318302387, \n    +0.0017241379310, +0.0008498673740, -0.0004856763926, -0.0025984084881, \n    -0.0023071618037, +0.0006557029178, +0.0005827586207, -0.0013031830239, \n    -0.0000891246684, +0.0014167108753, -0.0004938992042, -0.0015217506631, \n    +0.0005342175066, +0.0012222811671, -0.0000647214854, -0.0004938992042, \n    -0.0006474801061, +0.0005989389920, +0.0031732095491, +0.0029787798408, \n    +0.0005989389920, -0.0013031830239, -0.0005586206897, +0.0006798408488, \n    -0.0006071618037, -0.0024931034483, -0.0013599469496, +0.0013843501326, \n    +0.0019750663130, -0.0008904509284, -0.0021612732095, -0.0002347480106, \n    +0.0013114058355, +0.0008336870027, +0.0001456233422, +0.0016352785146, \n    +0.0019832891247, +0.0000567639257, -0.0004127320955, -0.0000161803714, \n    -0.0011007957560, -0.0018538461538, -0.0010198938992, +0.0001376657825, \n    +0.0008175066313, +0.0009875331565, +0.0013843501326, +0.0023960212202, \n    +0.0027198938992, +0.0012870026525, -0.0003318302387, -0.0012061007958, \n    -0.0015541114058, -0.0014246684350, -0.0015217506631, -0.0013275862069, \n    -0.0002994694960, +0.0007124668435, +0.0007448275862, -0.0004938992042, \n    -0.0010281167109, +0.0005827586207, +0.0013355437666, +0.0011737400531, \n    +0.0011819628647, +0.0011251989390, +0.0019023872679, +0.0017323607427, \n    +0.0000970822281, -0.0007042440318, -0.0009957559682, -0.0008904509284, \n    -0.0003885941645, -0.0003803713528, -0.0002671087533, -0.0003400530504, \n    +0.0004615384615, +0.0015623342175, +0.0014328912467, +0.0005262599469, \n    +0.0001862068966, +0.0002671087533, -0.0001294429708, -0.0000161803714, \n    +0.0008742705570, +0.0012790450928, +0.0007851458886, -0.0005018567639, \n    -0.0010846153846, -0.0001053050398, +0.0008257294430, -0.0003318302387, \n    -0.0022342175066, -0.0019671087533, +0.0000000000000, +0.0015702917772, \n    +0.0014976127321, -0.0001941644562, -0.0013599469496, -0.0000970822281, \n    +0.0011657824934, +0.0005424403183, -0.0008742705570, -0.0016755968170, \n    -0.0005586206897, +0.0005503978780, -0.0001053050398, +0.0000485411141, \n    +0.0004856763926, -0.0005989389920, -0.0003480106101, +0.0002994694960, \n    -0.0004450928382, -0.0011413793103, -0.0012143236074, -0.0001294429708, \n    +0.0010604774536, +0.0013275862069, +0.0005748010610, -0.0007851458886, \n    -0.0014976127321, -0.0011737400531, +0.0000000000000, +0.0009472148541, \n    -0.0001618037135, -0.0018212201592, -0.0016190981432, +0.0000647214854, \n    +0.0017888594164, +0.0013193633952, -0.0003156498674, -0.0008175066313, \n    +0.0003318302387, +0.0022098143236, +0.0030840848806, +0.0015137931034, \n    -0.0008742705570, -0.0017485411141, -0.0013843501326, -0.0011169761273, \n    -0.0012628647215, -0.0007610079576, +0.0002753315650, +0.0000809018568, \n    -0.0013275862069, -0.0015217506631, -0.0000485411141, +0.0025904509284, \n    +0.0029302387268, -0.0007448275862, -0.0032623342175, -0.0014732095491, \n    +0.0006151193634, +0.0000161803714, -0.0018862068966, -0.0013599469496, \n    +0.0013031830239, +0.0026389920424, +0.0018941644562, +0.0004127320955, \n    -0.0010928381963, -0.0015864721485, -0.0004856763926, +0.0005180371353, \n    -0.0001779840849, -0.0015055702918, -0.0011251989390, +0.0006798408488, \n    +0.0020641909814, +0.0017241379310, +0.0000647214854, -0.0001779840849, \n    +0.0007527851459, +0.0000809018568, -0.0014814323607, -0.0014976127321, \n    -0.0007933687003, -0.0003885941645, +0.0007689655172, +0.0016270557029, \n    +0.0009551724138, +0.0002832891247, -0.0000809018568, -0.0006233421751, \n    -0.0006312997347, +0.0002753315650, +0.0005018567639, -0.0004371352785, \n    -0.0005827586207, +0.0000244031830, +0.0002671087533, +0.0011331564987, \n    +0.0010037135279, +0.0000244031830, -0.0008419098143, -0.0011007957560, \n    -0.0000405835544, +0.0006557029178, -0.0007366047745, -0.0013517241379, \n    +0.0003238726790, +0.0018779840849, +0.0013517241379, -0.0001214854111, \n    -0.0005424403183, -0.0001700265252, -0.0000082228117, -0.0003965517241, \n    -0.0008419098143, -0.0000970822281, +0.0006880636605, -0.0003400530504, \n    -0.0011575596817, -0.0006636604775, -0.0006962864721, -0.0004777188329, \n    +0.0006071618037, +0.0014814323607, +0.0008822281167, -0.0001941644562, \n    -0.0000485411141, +0.0002347480106, -0.0001862068966, -0.0005989389920, \n    +0.0002429708223, +0.0013031830239, +0.0006798408488, +0.0004127320955, \n    +0.0009795755968, +0.0003724137931, -0.0007689655172, -0.0012143236074, \n    -0.0007689655172, +0.0001779840849, +0.0007204244032, +0.0008984084881, \n    +0.0000405835544, -0.0014005305040, -0.0017888594164, -0.0011575596817, \n    -0.0003156498674, +0.0003885941645, +0.0006395225464, +0.0001941644562, \n    -0.0001538461538, +0.0007610079576, +0.0017000000000, +0.0009795755968, \n    -0.0000809018568, -0.0002915119363, -0.0006151193634, -0.0008580901857, \n    -0.0001214854111, +0.0007124668435, +0.0001862068966, -0.0008498673740, \n    -0.0008175066313, -0.0002753315650, +0.0000082228117, -0.0004694960212, \n    -0.0013031830239, -0.0003641909814, +0.0010198938992, +0.0006474801061, \n    -0.0001214854111, -0.0002429708223, +0.0001618037135, +0.0003156498674, \n    -0.0008419098143, -0.0009472148541, +0.0004450928382, +0.0006312997347, \n    +0.0003238726790, +0.0007610079576, +0.0008175066313, -0.0000809018568, \n    -0.0006962864721, -0.0007286472149, -0.0007851458886, -0.0002753315650, \n    +0.0004127320955, +0.0004450928382, +0.0006071618037, +0.0003724137931, \n    -0.0006312997347, -0.0009310344828, +0.0001294429708, +0.0013843501326, \n    +0.0012546419098, -0.0003885941645, -0.0010928381963, +0.0000567639257, \n    +0.0010037135279, +0.0003641909814, -0.0002429708223, -0.0002832891247, \n    -0.0004289124668, -0.0002671087533, +0.0006636604775, +0.0009145888594, \n    -0.0002347480106, -0.0010522546419, -0.0002671087533, +0.0007448275862, \n    +0.0001456233422, -0.0008904509284, -0.0009145888594, -0.0013114058355, \n    -0.0014976127321, +0.0001214854111, +0.0018294429708, +0.0019671087533, \n    +0.0008660477454, -0.0001779840849, +0.0000405835544, -0.0005180371353, \n    -0.0020236074271, -0.0015864721485, -0.0002023872679, +0.0005586206897, \n    +0.0017485411141, +0.0016432360743, +0.0001618037135, +0.0002265251989, \n    +0.0009389920424, -0.0002753315650, -0.0020721485411, -0.0023557029178, \n    -0.0009875331565, +0.0009633952255, +0.0011899204244, -0.0002671087533, \n    -0.0005909814324, +0.0008742705570, +0.0015864721485, +0.0006395225464, \n    +0.0002591511936, +0.0000161803714, -0.0001376657825, +0.0002347480106, \n    +0.0005180371353, -0.0004450928382, -0.0009957559682, -0.0001941644562, \n    -0.0002994694960, -0.0011899204244, -0.0000567639257, +0.0015946949602, \n    +0.0018132625995, +0.0008336870027, -0.0002185676393, +0.0002103448276, \n    -0.0003965517241, -0.0017485411141, -0.0003885941645, +0.0005018567639, \n    -0.0003724137931, +0.0000082228117, +0.0013275862069, +0.0016594164456, \n    +0.0004533156499, -0.0013843501326, -0.0026954907162, -0.0022018567639, \n    +0.0002265251989, +0.0014893899204, +0.0011251989390, +0.0016026525199, \n    +0.0020397877984, +0.0008580901857, -0.0005748010610, -0.0004047745358, \n    +0.0002671087533, -0.0005909814324, -0.0012546419098, -0.0007204244032, \n    -0.0006312997347, -0.0005586206897, +0.0009389920424, +0.0021127320955, \n    +0.0006395225464, -0.0009875331565, -0.0009389920424, -0.0004127320955, \n    +0.0002915119363, +0.0001618037135, -0.0001538461538, +0.0006718832891, \n    +0.0005827586207, -0.0000161803714, -0.0003156498674, -0.0007042440318, \n    -0.0000567639257, +0.0006718832891, +0.0001700265252, -0.0001376657825, \n    +0.0006557029178, +0.0010198938992, +0.0003318302387, -0.0007851458886, \n    -0.0016352785146, -0.0015946949602, -0.0007286472149, +0.0003480106101, \n    +0.0003480106101, +0.0000323607427, +0.0008336870027, +0.0006880636605, \n    -0.0000161803714, +0.0001941644562, +0.0002347480106, +0.0002915119363, \n    -0.0006798408488, -0.0028655172414, -0.0028169761273, -0.0008580901857, \n    +0.0004533156499, +0.0025984084881, +0.0053588859416, +0.0054559681698, \n    +0.0013517241379, -0.0029952254642, -0.0041931034483, -0.0034970822281, \n    -0.0035941644562, -0.0026145888594, -0.0001053050398, +0.0005180371353, \n    +0.0011657824934, +0.0029302387268, +0.0029061007958, +0.0013355437666, \n    -0.0002915119363, -0.0011819628647, -0.0008984084881, -0.0008257294430, \n    -0.0008660477454, -0.0008498673740, +0.0000485411141, +0.0021371352785, \n    +0.0022098143236, +0.0007124668435, -0.0010846153846, -0.0023395225464, \n    -0.0013679045093, +0.0000647214854, +0.0003400530504, -0.0001456233422, \n    -0.0014167108753, -0.0000161803714, +0.0023798408488, +0.0021694960212, \n    +0.0008257294430, -0.0008336870027, -0.0017564986737, -0.0013923076923, \n    -0.0018618037135, -0.0012222811671, +0.0007610079576, +0.0018862068966, \n    +0.0025580901857, +0.0018294429708, +0.0002509283820, -0.0008175066313, \n    -0.0011090185676, -0.0003724137931, -0.0005909814324, -0.0023395225464, \n    -0.0020641909814, +0.0008336870027, +0.0018538461538, -0.0004856763926, \n    -0.0014246684350, +0.0021289124668, +0.0035535809019, +0.0003238726790, \n    -0.0014893899204, -0.0005827586207, -0.0001618037135, -0.0005342175066, \n    -0.0018456233422, -0.0021450928382, -0.0009389920424, +0.0001779840849, \n    +0.0017485411141, +0.0035535809019, +0.0037641909814, +0.0016432360743, \n    -0.0009551724138, -0.0025419098143, -0.0026145888594, -0.0017970822281, \n    -0.0012466843501, -0.0004450928382, +0.0011413793103, +0.0023071618037, \n    +0.0028493368700, +0.0023474801061, +0.0006557029178, -0.0010604774536, \n    -0.0023718832891, -0.0016676392573, +0.0000567639257, +0.0005018567639, \n    +0.0000161803714, -0.0010846153846, -0.0012628647215, +0.0003238726790, \n    +0.0013437665782, +0.0009310344828, +0.0005180371353, -0.0000567639257, \n    -0.0009389920424, -0.0013679045093, -0.0006636604775, +0.0000567639257, \n    -0.0002265251989, -0.0004533156499, -0.0001376657825, +0.0002429708223, \n    +0.0000323607427, -0.0004694960212, -0.0001214854111, +0.0005342175066, \n    +0.0011331564987, +0.0015541114058, +0.0013355437666, +0.0011090185676, \n    +0.0010604774536, -0.0001294429708, -0.0009066312997, +0.0005665782493, \n    +0.0012870026525, -0.0004856763926, -0.0009875331565, -0.0005665782493, \n    -0.0022421750663, -0.0036750663130, -0.0033835543767, -0.0021047745358, \n    +0.0000323607427, +0.0020559681698, +0.0035132625995, +0.0045169761273, \n    +0.0036265251989, +0.0009228116711, -0.0003803713528, -0.0000082228117, \n    -0.0006880636605, -0.0024527851459, -0.0023312997347, -0.0003238726790, \n    +0.0008498673740, -0.0003562334218, -0.0010928381963, +0.0000567639257, \n    +0.0000244031830, -0.0017323607427, -0.0014976127321, -0.0001538461538, \n    +0.0005262599469, +0.0012143236074, +0.0011169761273, +0.0002671087533, \n    +0.0005665782493, +0.0014084880637, +0.0013599469496, +0.0006962864721, \n    +0.0000000000000, -0.0008580901857, -0.0012952254642, -0.0007933687003, \n    -0.0016190981432, -0.0022907161804, -0.0000729442971, +0.0018700265252, \n    +0.0012870026525, +0.0010846153846, +0.0020885941645, +0.0025175066313, \n    +0.0011007957560, -0.0013355437666, -0.0022583554377, -0.0010037135279, \n    -0.0004127320955, -0.0018618037135, -0.0021289124668, +0.0004127320955, \n    +0.0025742705570, +0.0022018567639, -0.0015217506631, -0.0055045092838, \n    -0.0016190981432, +0.0062331564987, +0.0057148541114, -0.0002429708223, \n    -0.0020965517241, +0.0006962864721, +0.0024689655172, +0.0002265251989, \n    -0.0018941644562, -0.0013517241379, -0.0010442970822, -0.0017000000000, \n    -0.0007771883289, -0.0003803713528, -0.0031246684350, -0.0039421750663, \n    -0.0010846153846, +0.0027684350133, +0.0067106100796, +0.0069615384615, \n    +0.0039827586207, +0.0021936339523, +0.0004694960212, -0.0012870026525, \n    -0.0019103448276, -0.0021612732095, -0.0013599469496, -0.0008904509284, \n    -0.0018212201592, -0.0023151193634, -0.0014490716180, +0.0005342175066, \n    +0.0012952254642, +0.0007366047745, +0.0005018567639, +0.0000082228117, \n    +0.0006395225464, +0.0022989389920, +0.0020318302387, -0.0003885941645, \n    -0.0035132625995, -0.0034482758621, -0.0009066312997, +0.0001456233422, \n    +0.0009310344828, +0.0014570291777, +0.0008580901857, +0.0005100795756, \n    +0.0004371352785, +0.0006151193634, +0.0001862068966, -0.0009228116711, \n    -0.0012708222812, -0.0012466843501, +0.0002915119363, +0.0028090185676, \n    +0.0021127320955, -0.0017079575597, -0.0033432360743, -0.0017241379310, \n    -0.0004533156499, +0.0005586206897, +0.0022665782493, +0.0021694960212, \n    +0.0011090185676, +0.0008660477454, -0.0005586206897, -0.0008904509284, \n    +0.0005909814324, +0.0002023872679, -0.0025660477454, -0.0025336870027, \n    +0.0014570291777, +0.0039098143236, +0.0017809018568, -0.0013923076923, \n    -0.0023636604775, -0.0006636604775, +0.0007448275862, -0.0001941644562, \n    -0.0015055702918, -0.0019185676393, -0.0010037135279, +0.0013517241379, \n    +0.0033270557029, +0.0021209549072, -0.0007689655172, -0.0016026525199, \n    -0.0001053050398, +0.0010928381963, +0.0004127320955, -0.0015541114058, \n    -0.0015299734748, +0.0003562334218, +0.0010119363395, -0.0000485411141, \n    -0.0011251989390, -0.0011899204244, -0.0002915119363, +0.0001862068966, \n    -0.0004777188329, -0.0006798408488, -0.0000485411141, +0.0004289124668, \n    -0.0000323607427, -0.0015785145889, -0.0016676392573, +0.0000970822281, \n    +0.0011575596817, +0.0017970822281, +0.0032299734748, +0.0029787798408, \n    -0.0002023872679, -0.0029302387268, -0.0018538461538, -0.0000244031830, \n    +0.0001700265252, -0.0007204244032, -0.0016352785146, -0.0012870026525, \n    -0.0003724137931, -0.0000647214854, -0.0004533156499, -0.0012708222812, \n    -0.0010846153846, +0.0001456233422, +0.0011251989390, +0.0019265251989, \n    +0.0015541114058, +0.0009389920424, +0.0016594164456, +0.0017564986737, \n    -0.0001618037135, -0.0024769230769, -0.0036103448276, -0.0028737400531, \n    -0.0005424403183, +0.0012305039788, +0.0014490716180, +0.0013114058355, \n    +0.0004450928382, -0.0003965517241, +0.0004047745358, -0.0002265251989, \n    -0.0025580901857, -0.0026389920424, -0.0008660477454, +0.0000082228117, \n    +0.0010360742706, +0.0020156498674, +0.0009551724138, +0.0001456233422, \n    +0.0010928381963, +0.0013843501326, +0.0008257294430, -0.0001941644562, \n    -0.0010766578249, -0.0002671087533, +0.0009145888594, +0.0008013262599, \n    -0.0001618037135, +0.0000647214854, +0.0014976127321, +0.0007851458886, \n    -0.0012708222812, -0.0013275862069, -0.0008984084881, -0.0012628647215, \n    -0.0008336870027, +0.0013679045093, +0.0035779840849, +0.0026631299735, \n    +0.0002103448276, +0.0001456233422, +0.0005018567639, -0.0009713527851, \n    -0.0022180371353, -0.0015055702918, +0.0006151193634, +0.0027116710875, \n    +0.0031649867374, +0.0014167108753, -0.0009066312997, -0.0013923076923, \n    -0.0005018567639, +0.0000647214854, -0.0000161803714, -0.0004694960212, \n    -0.0003724137931, +0.0004127320955, +0.0008095490716, -0.0007610079576, \n    -0.0030840848806, -0.0028251989390, -0.0007204244032, +0.0013275862069, \n    +0.0026066312997, +0.0020803713528, +0.0010846153846, +0.0014893899204, \n    +0.0007042440318, -0.0007610079576, +0.0000647214854, +0.0010604774536, \n    -0.0007689655172, -0.0025013262599, -0.0016352785146, -0.0007771883289, \n    -0.0001779840849, +0.0011981432361, +0.0017079575597, +0.0005989389920, \n    -0.0013193633952, -0.0022342175066, -0.0008660477454, +0.0007527851459, \n    +0.0011169761273, +0.0005586206897, -0.0002915119363, +0.0000729442971, \n    +0.0010198938992, +0.0008336870027, -0.0006151193634, -0.0013517241379, \n    -0.0002347480106, +0.0003965517241, -0.0006718832891, -0.0014814323607, \n    -0.0007933687003, +0.0009957559682, +0.0015217506631, +0.0002753315650, \n    +0.0000891246684, +0.0006312997347, +0.0007851458886, +0.0007610079576, \n    -0.0012708222812, -0.0036103448276, -0.0026389920424, +0.0001214854111, \n    +0.0015299734748, +0.0009472148541, +0.0000891246684, -0.0003724137931, \n    -0.0008742705570, -0.0005909814324, +0.0002429708223, +0.0007527851459, \n    +0.0007366047745, -0.0000485411141, +0.0002994694960, +0.0012790450928, \n    +0.0003724137931, -0.0008175066313, -0.0013437665782, -0.0015946949602, \n    -0.0007124668435, -0.0001376657825, -0.0001941644562, +0.0008175066313, \n    +0.0016917771883, +0.0011331564987, -0.0001862068966, -0.0000891246684, \n    +0.0011090185676, +0.0005342175066, -0.0008498673740, -0.0004938992042, \n    +0.0002915119363, +0.0005586206897, +0.0008498673740, +0.0008013262599, \n    +0.0001618037135, -0.0009389920424, -0.0017647214854, -0.0019427055703, \n    -0.0014976127321, -0.0002994694960, +0.0005909814324, +0.0003724137931, \n    +0.0008660477454, +0.0012466843501, -0.0000567639257, -0.0014814323607, \n    -0.0010928381963, -0.0002753315650, -0.0008175066313, -0.0009310344828, \n    +0.0009875331565, +0.0019750663130, +0.0005665782493, -0.0003400530504, \n    -0.0002023872679, -0.0001294429708, -0.0004047745358, -0.0003641909814, \n    -0.0002265251989, -0.0005180371353, -0.0000809018568, +0.0009633952255, \n    +0.0008742705570, -0.0002591511936, -0.0005665782493, +0.0003238726790, \n    +0.0014167108753, +0.0012870026525, +0.0003641909814, -0.0008336870027, \n    -0.0012708222812, -0.0005503978780, -0.0005909814324, -0.0008580901857, \n    +0.0003400530504, +0.0013679045093, +0.0005018567639, -0.0005018567639, \n    -0.0004289124668, +0.0006798408488, +0.0010119363395, +0.0001456233422, \n    -0.0006312997347, -0.0004615384615, +0.0000405835544, +0.0004209549072, \n    +0.0010846153846, +0.0015541114058, +0.0003156498674, -0.0010928381963, \n    -0.0004694960212, +0.0006880636605, +0.0003480106101, -0.0006557029178, \n    -0.0005342175066, -0.0001132625995, +0.0001700265252, +0.0006880636605, \n    +0.0004289124668, -0.0002591511936, -0.0001862068966, -0.0001294429708, \n    -0.0003803713528, -0.0000244031830, +0.0005424403183, +0.0007851458886, \n    +0.0007933687003, -0.0001376657825, -0.0010766578249, +0.0001941644562, \n    +0.0012870026525, +0.0000809018568, -0.0011899204244, -0.0014652519894, \n    -0.0011169761273, -0.0004371352785, +0.0002509283820, +0.0009145888594, \n    +0.0007448275862, +0.0003724137931, +0.0001456233422, -0.0001700265252, \n    +0.0001214854111, -0.0001456233422, -0.0010119363395, -0.0006233421751, \n    -0.0003238726790, -0.0008013262599, -0.0012222811671, -0.0003885941645, \n    +0.0012061007958, +0.0008419098143, -0.0007366047745, -0.0005503978780, \n    +0.0006395225464, +0.0007933687003, -0.0002591511936, -0.0007933687003, \n    +0.0000323607427, +0.0013517241379, +0.0016755968170, +0.0007366047745, \n    -0.0003318302387, -0.0011007957560, -0.0011657824934, -0.0002832891247, \n    +0.0001700265252, -0.0003400530504, -0.0006798408488, +0.0000000000000, \n    +0.0008257294430, +0.0008013262599, +0.0007366047745, +0.0010846153846, \n    +0.0003724137931, -0.0010522546419, -0.0008257294430, +0.0001862068966, \n    +0.0000000000000, -0.0009795755968, -0.0008419098143, +0.0004209549072, \n    +0.0015055702918, +0.0012305039788, +0.0002915119363, -0.0004615384615, \n    -0.0007366047745, -0.0009145888594, -0.0009389920424, -0.0001618037135, \n    +0.0009472148541, +0.0009551724138, +0.0002509283820, +0.0002832891247, \n    +0.0001214854111, -0.0010684350133, -0.0007527851459, +0.0007771883289, \n    +0.0003885941645, -0.0005180371353, -0.0002429708223, +0.0000161803714, \n    -0.0004047745358, -0.0013355437666, -0.0014490716180, +0.0003318302387, \n    +0.0024445623342, +0.0024769230769, +0.0012143236074, +0.0013114058355, \n    +0.0017079575597, -0.0000244031830, -0.0018212201592, -0.0016755968170, \n    -0.0009472148541, -0.0010604774536, -0.0013355437666, -0.0002671087533, \n    +0.0009145888594, +0.0008419098143, +0.0009633952255, +0.0013843501326, \n    +0.0008175066313, -0.0001376657825, -0.0005342175066, -0.0000405835544, \n    +0.0008419098143, +0.0013275862069, +0.0010604774536, +0.0003238726790, \n    -0.0002753315650, +0.0001538461538, +0.0007933687003, +0.0001700265252, \n    -0.0011169761273, -0.0012790450928, -0.0003641909814, +0.0005827586207, \n    +0.0005748010610, +0.0002347480106, +0.0004209549072, +0.0000809018568, \n    -0.0006395225464, -0.0006395225464, -0.0002994694960, -0.0003480106101, \n    -0.0007448275862, -0.0004777188329, +0.0007610079576, +0.0015137931034, \n    +0.0009228116711, +0.0000485411141, -0.0002509283820, +0.0001053050398, \n    +0.0005424403183, -0.0001618037135, -0.0013923076923, -0.0011007957560, \n    -0.0008822281167, -0.0011413793103, -0.0001618037135, +0.0004938992042, \n    +0.0005424403183, +0.0009875331565, +0.0012466843501, +0.0014005305040, \n    +0.0005748010610, -0.0009389920424, -0.0011899204244, -0.0004450928382, \n    -0.0002185676393, -0.0003724137931, -0.0000244031830, +0.0008013262599, \n    +0.0008742705570, +0.0004289124668, +0.0003965517241, -0.0000161803714, \n    -0.0005503978780, -0.0003076923077, +0.0002832891247, +0.0005665782493, \n    -0.0001618037135, -0.0015299734748, -0.0015785145889, -0.0002832891247, \n    +0.0007610079576, +0.0009633952255, +0.0005989389920, +0.0002347480106, \n    +0.0004209549072, +0.0007851458886, +0.0004450928382, -0.0003318302387, \n    -0.0010442970822, -0.0014084880637, -0.0010198938992, -0.0003641909814, \n    -0.0001132625995, -0.0004533156499, -0.0007933687003, -0.0009472148541, \n    -0.0006071618037, +0.0007610079576, +0.0017726790451, +0.0007366047745, \n    -0.0001132625995, -0.0002509283820, -0.0007689655172, -0.0006071618037, \n    +0.0004615384615, +0.0009310344828, +0.0002994694960, -0.0010522546419, \n    -0.0016514588859, -0.0007771883289, -0.0000567639257, +0.0002509283820, \n    +0.0007204244032, +0.0007527851459, +0.0006557029178, +0.0004450928382, \n    -0.0004777188329, -0.0013437665782, -0.0009713527851, -0.0001214854111, \n    +0.0007204244032, +0.0011657824934, +0.0004371352785, -0.0004533156499, \n    -0.0001941644562, +0.0003238726790, +0.0004047745358, -0.0000729442971, \n    -0.0004289124668, +0.0000485411141, +0.0002994694960, +0.0003400530504, \n    +0.0003724137931, -0.0003641909814, -0.0008095490716, -0.0000161803714, \n    +0.0006071618037, -0.0000161803714, -0.0012546419098, -0.0010360742706, \n    +0.0004533156499, +0.0012628647215, +0.0011169761273, +0.0000567639257, \n    -0.0007042440318, +0.0000567639257, +0.0007933687003, -0.0000161803714, \n    -0.0012870026525, -0.0015055702918, -0.0005909814324, +0.0003641909814, \n    +0.0003400530504, -0.0000405835544, +0.0004533156499, +0.0012384615385, \n    +0.0008013262599, -0.0002347480106, -0.0010442970822, -0.0007366047745, \n    -0.0001132625995, -0.0001538461538, -0.0003562334218, -0.0002103448276, \n    -0.0002429708223, -0.0004533156499, -0.0003562334218, -0.0000567639257, \n    -0.0001132625995, +0.0002265251989, +0.0008742705570, +0.0002265251989, \n    -0.0006151193634, -0.0002429708223, +0.0005665782493, +0.0007286472149, \n    +0.0001053050398, -0.0003238726790, -0.0003318302387, -0.0002915119363, \n    -0.0000729442971, +0.0003400530504, +0.0004777188329, -0.0000244031830, \n    -0.0005827586207, +0.0000244031830, +0.0007366047745, +0.0003400530504, \n    -0.0006395225464, -0.0012870026525, -0.0006233421751, +0.0007042440318, \n    +0.0013517241379, +0.0014408488064, +0.0011413793103, +0.0009713527851, \n    +0.0008336870027, -0.0003641909814, -0.0018538461538, -0.0018700265252, \n    -0.0005342175066, +0.0003076923077, +0.0002429708223, +0.0007286472149, \n    +0.0015137931034, +0.0013517241379, +0.0007286472149, +0.0003400530504, \n    +0.0004615384615, +0.0000647214854, -0.0009875331565, -0.0009472148541, \n    +0.0001132625995, +0.0006880636605, +0.0001941644562, -0.0005424403183, \n    -0.0005018567639, -0.0002103448276, +0.0000082228117, +0.0000567639257, \n    +0.0000323607427, +0.0003965517241, +0.0006962864721, +0.0011575596817, \n    +0.0016594164456, +0.0005989389920, -0.0008175066313, -0.0009633952255, \n    -0.0004856763926, +0.0000323607427, -0.0000809018568, -0.0009713527851, \n    -0.0010522546419, -0.0005180371353, -0.0000647214854, +0.0005424403183, \n    +0.0007448275862, +0.0005342175066, +0.0007771883289, +0.0007042440318, \n    -0.0003156498674, -0.0012466843501, -0.0009551724138, +0.0002023872679, \n    +0.0003803713528, -0.0003480106101, -0.0002023872679, +0.0001294429708, \n    -0.0002915119363, -0.0005262599469, -0.0004047745358, -0.0002994694960, \n    -0.0000970822281, +0.0002915119363, +0.0005748010610, +0.0002265251989, \n    +0.0000000000000, +0.0001214854111, -0.0001779840849, -0.0005503978780, \n    -0.0001294429708, +0.0003724137931, +0.0005665782493, +0.0008498673740, \n    +0.0007610079576, -0.0004127320955, -0.0014005305040, -0.0008257294430, \n    -0.0000405835544, +0.0003156498674, +0.0004209549072, +0.0000809018568, \n    -0.0002023872679, +0.0002429708223, +0.0009551724138, +0.0010037135279, \n    +0.0000000000000, -0.0006233421751, -0.0004450928382, -0.0002023872679, \n    -0.0003480106101, -0.0010442970822, -0.0007610079576, +0.0006636604775, \n    +0.0010198938992, +0.0005424403183, +0.0003641909814, +0.0000891246684, \n    -0.0004371352785, -0.0005989389920, -0.0004533156499, -0.0003641909814, \n    -0.0003965517241, +0.0001053050398, +0.0010442970822, +0.0007933687003, \n    -0.0003076923077, -0.0003238726790, +0.0002103448276, +0.0000244031830, \n    -0.0004777188329, -0.0005586206897, -0.0005100795756, -0.0002509283820, \n    +0.0004450928382, +0.0005503978780, -0.0001862068966, -0.0007933687003, \n    -0.0007448275862, +0.0004209549072, +0.0017079575597, +0.0012546419098, \n    -0.0004694960212, -0.0019347480106, -0.0018618037135, -0.0002832891247, \n    +0.0010198938992, +0.0007933687003, -0.0000647214854, -0.0003480106101, \n    +0.0003480106101, +0.0014005305040, +0.0014893899204, +0.0003076923077, \n    -0.0010766578249, -0.0011090185676, +0.0000970822281, +0.0002591511936, \n    -0.0007042440318, -0.0013355437666, -0.0011981432361, -0.0004371352785, \n    +0.0003724137931, +0.0010928381963, +0.0017161803714, +0.0014490716180, \n    +0.0005342175066, -0.0002591511936, -0.0004047745358, -0.0000809018568, \n    +0.0000323607427, +0.0000809018568, -0.0004209549072, -0.0014490716180, \n    -0.0009472148541, +0.0008742705570, +0.0015379310345, +0.0007124668435, \n    +0.0000567639257, +0.0001862068966, +0.0004289124668, +0.0002509283820, \n    -0.0003480106101, -0.0007610079576, -0.0005018567639, -0.0001456233422, \n    -0.0002915119363, -0.0005748010610, -0.0001376657825, +0.0007204244032, \n    +0.0008660477454, +0.0003400530504, -0.0005342175066, -0.0011657824934, \n    -0.0004615384615, +0.0005586206897, +0.0003562334218, -0.0005424403183, \n    -0.0003965517241, +0.0013599469496, +0.0018779840849, -0.0002023872679, \n    -0.0017161803714, -0.0010604774536, -0.0000323607427, +0.0003318302387, \n    +0.0000485411141, -0.0004615384615, -0.0005665782493, -0.0002429708223, \n    -0.0001618037135, -0.0006557029178, -0.0008257294430, -0.0001779840849, \n    +0.0006880636605, +0.0009389920424, +0.0002103448276, -0.0003480106101, \n    +0.0002347480106, +0.0009957559682, +0.0004533156499, -0.0010846153846, \n    -0.0019103448276, -0.0006880636605, +0.0010928381963, +0.0012061007958, \n    +0.0001294429708, -0.0000082228117, +0.0003803713528, +0.0000082228117, \n    -0.0004938992042, -0.0007689655172, -0.0009875331565, -0.0004450928382, \n    +0.0007933687003, +0.0011090185676, +0.0002509283820, -0.0002429708223, \n    -0.0000405835544, +0.0000405835544, +0.0001538461538, +0.0000323607427, \n    -0.0002265251989, +0.0000970822281, +0.0004450928382, +0.0005262599469, \n    +0.0004371352785, -0.0001700265252, -0.0005748010610, -0.0000082228117, \n    +0.0003480106101, -0.0004777188329, -0.0011981432361, -0.0005909814324, \n    +0.0003400530504, +0.0007610079576, +0.0007851458886, +0.0000000000000, \n    -0.0010119363395, -0.0011737400531, +0.0000000000000, +0.0010604774536, \n    +0.0006395225464, -0.0003076923077, -0.0005342175066, +0.0001214854111, \n    +0.0005586206897, -0.0003885941645, -0.0011331564987, -0.0001700265252, \n    +0.0007771883289, -0.0001618037135, -0.0016917771883, -0.0011981432361, \n    +0.0008013262599, +0.0015217506631, +0.0008904509284, +0.0006636604775, \n    +0.0006636604775, -0.0000323607427, -0.0007448275862, -0.0009633952255, \n    -0.0013679045093, -0.0017564986737, -0.0006395225464, +0.0013843501326, \n    +0.0021936339523, +0.0017970822281, +0.0010522546419, +0.0000567639257, \n    -0.0004938992042, -0.0005342175066, -0.0005180371353, +0.0000405835544, \n    +0.0006395225464, +0.0006880636605, +0.0002994694960, -0.0002591511936, \n    -0.0004289124668, -0.0002591511936, -0.0002023872679, -0.0001779840849, \n    -0.0001132625995, +0.0000000000000, +0.0003885941645, +0.0009713527851, \n    +0.0008984084881, +0.0001779840849, +0.0000567639257, +0.0005586206897, \n    +0.0006557029178, +0.0000000000000, -0.0007610079576, -0.0004938992042, \n    +0.0002832891247, +0.0004450928382, +0.0001618037135, +0.0000244031830, \n    -0.0003318302387, -0.0009145888594, -0.0009145888594, +0.0000891246684, \n    +0.0009389920424, +0.0008257294430, +0.0005100795756, +0.0003480106101, \n    +0.0004450928382, +0.0005180371353, -0.0001779840849, -0.0008013262599, \n    -0.0007527851459, -0.0007124668435, -0.0005262599469, -0.0000647214854, \n    +0.0000000000000, -0.0005503978780, -0.0011657824934, -0.0009713527851, \n    +0.0000647214854, +0.0006962864721, +0.0006718832891, +0.0006962864721, \n    +0.0010360742706, +0.0008984084881, +0.0002265251989, -0.0002347480106, \n    -0.0001294429708, +0.0006151193634, +0.0006395225464, -0.0011575596817, \n    -0.0019994694960, -0.0000647214854, +0.0022503978780, +0.0015946949602, \n    -0.0013923076923, -0.0021612732095, +0.0006880636605, +0.0020721485411, \n    +0.0000244031830, -0.0012305039788, +0.0001214854111, +0.0007204244032, \n    -0.0000891246684, -0.0006395225464, -0.0006233421751, +0.0005827586207, \n    +0.0011819628647, +0.0001456233422, -0.0002753315650, +0.0011169761273, \n    +0.0010846153846, -0.0005586206897, -0.0009795755968, -0.0001294429708, \n    +0.0005909814324, +0.0009633952255, +0.0005503978780, +0.0002832891247, \n    +0.0010037135279, +0.0005342175066, -0.0010119363395, -0.0018862068966, \n    -0.0019347480106, -0.0009875331565, +0.0006718832891, +0.0007851458886, \n    +0.0001053050398, +0.0007689655172, +0.0010522546419, -0.0002185676393, \n    -0.0011493368700, -0.0007610079576, -0.0001053050398, +0.0002671087533, \n    +0.0002265251989, +0.0003400530504, +0.0003238726790, -0.0007042440318, \n    -0.0018456233422, -0.0014652519894, +0.0002347480106, +0.0014570291777, \n    +0.0012870026525, +0.0003803713528, -0.0006395225464, -0.0014490716180, \n    -0.0014246684350, +0.0000970822281, +0.0011575596817, -0.0003724137931, \n    -0.0019832891247, -0.0005180371353, +0.0010928381963, +0.0006474801061, \n    -0.0003803713528, -0.0007527851459, -0.0004209549072, +0.0002103448276, \n    +0.0009472148541, +0.0009145888594, +0.0001779840849, -0.0000891246684, \n    -0.0010766578249, -0.0024931034483, -0.0016108753316, +0.0004371352785, \n    +0.0007689655172, -0.0001214854111, -0.0000647214854, +0.0009145888594, \n    +0.0008660477454, +0.0003885941645, +0.0008336870027, +0.0010442970822, \n    -0.0002915119363, -0.0012790450928, -0.0002265251989, +0.0010522546419, \n    +0.0011657824934, +0.0003641909814, -0.0002429708223, -0.0002509283820, \n    -0.0000405835544, +0.0001053050398, -0.0004127320955, -0.0012628647215, \n    -0.0010037135279, -0.0000485411141, +0.0009228116711, +0.0011575596817, \n    +0.0002185676393, -0.0008336870027, -0.0013761273210, -0.0008984084881, \n    +0.0002915119363, +0.0009310344828, +0.0010846153846, +0.0006962864721, \n    -0.0003641909814, -0.0011493368700, -0.0014005305040, -0.0014005305040, \n    -0.0013275862069, -0.0011575596817, +0.0000323607427, +0.0019185676393, \n    +0.0021289124668, +0.0005665782493, -0.0003156498674, +0.0000970822281, \n    +0.0006474801061, +0.0004938992042, -0.0002023872679, -0.0006880636605, \n    -0.0008175066313, -0.0009066312997, -0.0007286472149, -0.0004127320955, \n    +0.0000809018568, +0.0005503978780, +0.0010037135279, +0.0015217506631, \n    +0.0012870026525, +0.0005342175066, +0.0003965517241, +0.0006312997347, \n    +0.0002265251989, -0.0008013262599, -0.0015299734748, -0.0008419098143, \n    +0.0003318302387, +0.0006151193634, -0.0000567639257, -0.0008175066313, \n    -0.0005018567639, +0.0004047745358, +0.0005018567639, +0.0000891246684, \n    +0.0000405835544, +0.0003724137931, +0.0011899204244, +0.0022342175066, \n    +0.0019750663130, -0.0005424403183, -0.0025175066313, -0.0014408488064, \n    -0.0004938992042, -0.0009875331565, -0.0008660477454, +0.0003076923077, \n    +0.0012790450928, +0.0009795755968, +0.0002429708223, +0.0003238726790, \n    +0.0003965517241, +0.0000567639257, +0.0000244031830, +0.0007042440318, \n    +0.0010604774536, +0.0004209549072, +0.0000000000000, -0.0000485411141, \n    -0.0005262599469, -0.0009389920424, -0.0008984084881, -0.0007448275862, \n    -0.0006474801061, -0.0002994694960, +0.0003238726790, +0.0009875331565, \n    +0.0018132625995, +0.0020480106101, +0.0008095490716, -0.0009310344828, \n    -0.0015623342175, -0.0015055702918, -0.0013517241379, -0.0007771883289, \n    +0.0000729442971, +0.0007448275862, +0.0013355437666, +0.0011981432361, \n    +0.0007851458886, +0.0007124668435, +0.0000244031830, -0.0009551724138, \n    -0.0011737400531, -0.0010360742706, -0.0006557029178, +0.0005100795756, \n    +0.0020156498674, +0.0022342175066, +0.0003400530504, -0.0018862068966, \n    -0.0019994694960, -0.0004371352785, +0.0006151193634, +0.0004289124668, \n    -0.0000567639257, -0.0002265251989, +0.0005262599469, +0.0015623342175, \n    +0.0011981432361, -0.0001618037135, -0.0008904509284, -0.0006395225464, \n    +0.0001132625995, +0.0002347480106, -0.0001700265252, +0.0002265251989, \n    +0.0009145888594, +0.0006962864721, -0.0003641909814, -0.0012384615385, \n    -0.0009875331565, -0.0000405835544, +0.0003641909814, -0.0000970822281, \n    -0.0009875331565, -0.0013843501326, -0.0002265251989, +0.0015217506631, \n    +0.0012708222812, -0.0002671087533, -0.0007042440318, -0.0004615384615, \n    -0.0000485411141, +0.0006636604775, +0.0008175066313, +0.0007610079576, \n    +0.0006071618037, +0.0000082228117, -0.0005018567639, -0.0006557029178, \n    -0.0006233421751, -0.0006798408488, -0.0008742705570, -0.0003803713528, \n    +0.0005909814324, +0.0012305039788, +0.0010766578249, +0.0001294429708, \n    -0.0008257294430, -0.0011413793103, -0.0008498673740, -0.0004777188329, \n    -0.0004209549072, -0.0001618037135, +0.0004533156499, +0.0009145888594, \n    +0.0009228116711, +0.0006474801061, +0.0001456233422, -0.0005342175066, \n    -0.0011493368700, -0.0013517241379, -0.0005989389920, +0.0005018567639, \n    +0.0008822281167, +0.0005342175066, -0.0000244031830, -0.0004371352785, \n    -0.0003641909814, -0.0001538461538, -0.0001132625995, -0.0001538461538, \n    +0.0001618037135, +0.0005424403183, +0.0003400530504, +0.0000244031830, \n    +0.0004533156499, +0.0008257294430, +0.0002671087533, -0.0003562334218, \n    -0.0000405835544, +0.0003562334218, -0.0005262599469, -0.0016676392573, \n    -0.0011657824934, +0.0001700265252, +0.0010198938992, +0.0009472148541, \n    +0.0004371352785, +0.0003076923077, +0.0002832891247, -0.0000485411141, \n    -0.0000970822281, +0.0000000000000, -0.0001862068966, -0.0002994694960, \n    -0.0002591511936, -0.0004777188329, -0.0006962864721, -0.0003156498674, \n    +0.0003156498674, +0.0007124668435, +0.0007124668435, +0.0002023872679, \n    -0.0001214854111, +0.0001376657825, +0.0000082228117, -0.0005748010610, \n    -0.0004777188329, +0.0000405835544, +0.0002832891247, +0.0004371352785, \n    +0.0004777188329, +0.0002671087533, -0.0004450928382, -0.0010766578249, \n    -0.0009066312997, -0.0003400530504, +0.0002103448276, +0.0008984084881, \n    +0.0009472148541, -0.0000891246684, -0.0009228116711, +0.0000000000000, \n    +0.0011169761273, +0.0004777188329, -0.0006233421751, -0.0003562334218, \n    +0.0005665782493, +0.0008175066313, +0.0001779840849, -0.0006071618037, \n    -0.0007527851459, -0.0000970822281, +0.0003318302387, +0.0000000000000, \n    -0.0002753315650, +0.0002915119363, +0.0008660477454, +0.0005018567639, \n    -0.0004127320955, -0.0009472148541, -0.0009066312997, -0.0005748010610, \n    -0.0002509283820, -0.0004209549072, -0.0005827586207, -0.0000567639257, \n    +0.0006962864721, +0.0011007957560, +0.0010684350133, +0.0006557029178, \n    +0.0004371352785, +0.0001456233422, -0.0003641909814, -0.0008013262599, \n    -0.0012628647215, -0.0015055702918, -0.0007204244032, +0.0006880636605, \n    +0.0016676392573, +0.0015946949602, +0.0007366047745, +0.0000000000000, \n    -0.0002671087533, -0.0003885941645, -0.0002994694960, -0.0001618037135, \n    -0.0000485411141, +0.0003400530504, +0.0005989389920, -0.0000161803714, \n    -0.0006636604775, -0.0003724137931, +0.0000970822281, -0.0002832891247, \n    -0.0007689655172, -0.0006880636605, -0.0006474801061, -0.0004450928382, \n    +0.0003238726790, +0.0008984084881, +0.0007610079576, +0.0003724137931, \n    +0.0003076923077, +0.0004615384615, +0.0000161803714, -0.0010360742706, \n    -0.0014652519894, -0.0008013262599, +0.0000244031830, +0.0004209549072, \n    +0.0004047745358, +0.0000970822281, -0.0001456233422, -0.0000891246684, \n    +0.0003641909814, +0.0004856763926, -0.0004694960212, -0.0012305039788, \n    -0.0005748010610, +0.0007366047745, +0.0013517241379, +0.0008822281167, \n    +0.0000244031830, -0.0004450928382, -0.0004371352785, +0.0001294429708, \n    +0.0004450928382, -0.0002994694960, -0.0014005305040, -0.0013114058355, \n    +0.0000485411141, +0.0011899204244, +0.0011981432361, +0.0005018567639, \n    -0.0002185676393, -0.0003965517241, -0.0002265251989, -0.0001941644562, \n    -0.0002103448276, -0.0003400530504, -0.0000729442971, +0.0004127320955, \n    +0.0004694960212, +0.0003641909814, +0.0001294429708, -0.0002023872679, \n    -0.0004127320955, -0.0004777188329, -0.0002347480106, +0.0001538461538, \n    +0.0004777188329, +0.0006395225464, +0.0001214854111, -0.0005665782493, \n    -0.0006312997347, -0.0003724137931, -0.0002832891247, -0.0003400530504, \n    +0.0001214854111, +0.0009633952255, +0.0014570291777, +0.0009551724138, \n    -0.0002509283820, -0.0008660477454, -0.0005586206897, -0.0000891246684, \n    +0.0002832891247, +0.0000891246684, -0.0003400530504, -0.0002429708223, \n    +0.0003562334218, +0.0007771883289, +0.0003238726790, -0.0004856763926, \n    -0.0005748010610, -0.0000082228117, +0.0006557029178, +0.0009875331565, \n    +0.0007042440318, +0.0001700265252, -0.0001294429708, -0.0002185676393, \n    -0.0004533156499, -0.0007771883289, -0.0007286472149, -0.0002429708223, \n    +0.0005748010610, +0.0010442970822, +0.0006474801061, +0.0003965517241, \n    +0.0005342175066, +0.0002671087533, -0.0004615384615, -0.0008822281167, \n    -0.0005909814324, -0.0001132625995, +0.0000567639257, +0.0002671087533, \n    +0.0005180371353, +0.0005909814324, +0.0005100795756, +0.0003724137931, \n    -0.0000485411141, -0.0007448275862, -0.0012466843501, -0.0010198938992, \n    +0.0000809018568, +0.0012466843501, +0.0014490716180, +0.0007933687003, \n    -0.0000891246684, -0.0002753315650, +0.0000567639257, +0.0000809018568, \n    -0.0001132625995, -0.0005180371353, -0.0007286472149, -0.0002023872679, \n    +0.0002671087533, +0.0004289124668, +0.0004127320955, +0.0000323607427, \n    -0.0000244031830, +0.0003724137931, +0.0003400530504, -0.0003238726790, \n    -0.0007527851459, -0.0005424403183, -0.0001214854111, +0.0003076923077, \n    +0.0004450928382, -0.0002509283820, -0.0006798408488, +0.0002347480106, \n    +0.0009472148541, +0.0002429708223, -0.0006474801061, -0.0007042440318, \n    -0.0001053050398, +0.0003641909814, +0.0002671087533, +0.0002023872679, \n    +0.0005018567639, +0.0002429708223, -0.0002832891247, -0.0004615384615, \n    -0.0005180371353, -0.0003641909814, +0.0002429708223, +0.0008095490716, \n    +0.0007689655172, -0.0001132625995, -0.0007366047745, -0.0003076923077, \n    +0.0000729442971, -0.0002832891247, -0.0007527851459, -0.0003803713528, \n    +0.0006557029178, +0.0007286472149, -0.0001053050398, -0.0000567639257, \n    +0.0005424403183, +0.0005180371353, +0.0000161803714, -0.0003400530504, \n    -0.0003480106101, -0.0002185676393, -0.0001779840849, +0.0000244031830, \n    +0.0003238726790, +0.0000647214854, -0.0006395225464, -0.0007366047745, \n    -0.0002994694960, -0.0001456233422, -0.0002023872679, +0.0000082228117, \n    +0.0002832891247, +0.0002671087533, +0.0000891246684, +0.0000000000000, \n    -0.0000244031830, -0.0000485411141, -0.0002591511936, -0.0001538461538, \n    +0.0003803713528, +0.0004938992042, +0.0000323607427, -0.0001862068966, \n    +0.0001294429708, +0.0004777188329, +0.0004856763926, +0.0003803713528, \n    -0.0001779840849, -0.0010360742706, -0.0010928381963, -0.0003803713528, \n    +0.0001053050398, +0.0001214854111, +0.0000647214854, +0.0001618037135, \n    +0.0002509283820, +0.0000485411141, -0.0002753315650, -0.0001779840849, \n    +0.0002509283820, +0.0005018567639, +0.0004615384615, +0.0003318302387, \n    +0.0001941644562, -0.0001862068966, -0.0005586206897, -0.0003724137931, \n    +0.0000809018568, +0.0002265251989, +0.0003238726790, +0.0004047745358, \n    +0.0003641909814, +0.0001376657825, -0.0002994694960, -0.0004533156499, \n    +0.0000647214854, +0.0004127320955, +0.0000891246684, -0.0005503978780, \n    -0.0009551724138, -0.0005018567639, +0.0003641909814, +0.0004938992042, \n    +0.0000891246684, -0.0000244031830, +0.0002103448276, +0.0002185676393, \n    -0.0003156498674, -0.0005503978780, -0.0000161803714, +0.0003803713528, \n    +0.0002347480106, -0.0001214854111, -0.0002591511936, -0.0002185676393, \n    -0.0003480106101, -0.0004127320955, -0.0002671087533, -0.0002103448276, \n    -0.0002832891247, +0.0000244031830, +0.0006636604775, +0.0008580901857, \n    +0.0003562334218, +0.0000405835544, +0.0002753315650, +0.0002753315650, \n    -0.0003076923077, -0.0005989389920, -0.0003965517241, +0.0001376657825, \n    +0.0008257294430, +0.0008498673740, +0.0002509283820, -0.0002023872679, \n    -0.0004047745358, -0.0005503978780, -0.0005503978780, -0.0001053050398, \n    +0.0003480106101, +0.0003076923077, +0.0000082228117, -0.0000567639257, \n    +0.0003076923077, +0.0003803713528, -0.0003480106101, -0.0006233421751, \n    +0.0001294429708, +0.0006071618037, +0.0001700265252, -0.0002591511936, \n    +0.0001214854111, +0.0008336870027, +0.0007610079576, +0.0000000000000, \n    -0.0004533156499, -0.0004209549072, -0.0003724137931, -0.0003562334218, \n    -0.0002103448276, -0.0000809018568, +0.0000647214854, +0.0002671087533, \n    +0.0002671087533, +0.0000485411141, +0.0000323607427, -0.0000647214854, \n    -0.0005586206897, -0.0007124668435, -0.0000647214854, +0.0005665782493, \n    +0.0007124668435, +0.0006880636605, +0.0004450928382, -0.0001376657825, \n    -0.0003480106101, -0.0002103448276, -0.0003400530504, -0.0006151193634, \n    -0.0003803713528, +0.0002832891247, +0.0005665782493, +0.0004289124668, \n    +0.0003965517241, +0.0004209549072, +0.0002185676393, +0.0001376657825, \n    +0.0001862068966, +0.0001053050398, -0.0001053050398, -0.0002185676393, \n    -0.0003076923077, -0.0005424403183, -0.0008095490716, -0.0005586206897, \n    +0.0002265251989, +0.0007933687003, +0.0005342175066, -0.0001941644562, \n    -0.0005424403183, -0.0002429708223, +0.0000082228117, +0.0001376657825, \n    +0.0003965517241, +0.0004450928382, -0.0001538461538, -0.0004938992042, \n    +0.0000647214854, +0.0005018567639, -0.0001053050398, -0.0007851458886, \n    -0.0005262599469, +0.0000729442971, +0.0002671087533, +0.0001538461538, \n    +0.0000082228117, +0.0004047745358, +0.0008660477454, +0.0002429708223, \n    -0.0005909814324, -0.0005586206897, -0.0000244031830, +0.0002915119363, \n    +0.0000567639257, -0.0003400530504, -0.0002832891247, +0.0001053050398, \n    +0.0004371352785, +0.0003400530504, -0.0000891246684, -0.0003724137931, \n    -0.0001941644562, +0.0002023872679, +0.0003724137931, +0.0002671087533, \n    +0.0003562334218, +0.0001618037135, -0.0003562334218, -0.0002185676393, \n    +0.0004533156499, +0.0003562334218, -0.0004856763926, -0.0011493368700, \n    -0.0007527851459, +0.0004209549072, +0.0010846153846, +0.0005342175066, \n    -0.0002347480106, -0.0000891246684, +0.0005748010610, +0.0005665782493, \n    -0.0001376657825, -0.0003724137931, +0.0002103448276, +0.0004694960212, \n    -0.0000809018568, -0.0005018567639, -0.0003885941645, -0.0001294429708, \n    +0.0001456233422, +0.0000891246684, -0.0004289124668, -0.0008984084881, \n    -0.0006880636605, +0.0003480106101, +0.0012790450928, +0.0013679045093, \n    +0.0006798408488, -0.0001214854111, -0.0003562334218, -0.0002994694960, \n    -0.0006798408488, -0.0011169761273, -0.0010684350133, -0.0001214854111, \n    +0.0010604774536, +0.0013923076923, +0.0008822281167, -0.0000244031830, \n    -0.0007933687003, -0.0005989389920, +0.0000323607427, +0.0001779840849, \n    -0.0001132625995, -0.0001941644562, +0.0002265251989, +0.0005989389920, \n    +0.0004209549072, +0.0000244031830, -0.0003156498674, -0.0002994694960, \n    -0.0002185676393, -0.0004371352785, -0.0005100795756, -0.0001862068966, \n    +0.0001941644562, +0.0002994694960, +0.0002103448276, +0.0003238726790, \n    +0.0004777188329, +0.0005586206897, +0.0006474801061, +0.0003076923077, \n    -0.0000891246684, -0.0003641909814, -0.0004938992042, -0.0004694960212, \n    -0.0003641909814, -0.0001618037135, -0.0001941644562, -0.0004777188329, \n    -0.0001862068966, +0.0002347480106, +0.0003238726790, +0.0003076923077, \n    +0.0002265251989, +0.0002023872679, +0.0002832891247, +0.0002023872679, \n    -0.0000082228117, -0.0002671087533, -0.0003400530504, -0.0003562334218, \n    -0.0004938992042, -0.0006474801061, -0.0005748010610, -0.0002671087533, \n    +0.0000809018568, +0.0003238726790, +0.0004127320955, +0.0005180371353, \n    +0.0006798408488, +0.0004694960212, -0.0000405835544, -0.0002429708223, \n    -0.0000891246684, +0.0001700265252, -0.0001132625995, -0.0008498673740, \n    -0.0008904509284, -0.0001700265252, +0.0003400530504, +0.0003562334218, \n    +0.0000970822281, +0.0000323607427, +0.0001294429708, +0.0001214854111, \n    -0.0001294429708, -0.0001294429708, +0.0003885941645, +0.0005909814324, \n    +0.0001376657825, -0.0000161803714, +0.0000891246684, -0.0000405835544, \n    -0.0003156498674, -0.0006962864721, -0.0010846153846, -0.0009145888594, \n    -0.0001538461538, +0.0005827586207, +0.0006962864721, +0.0002591511936, \n    +0.0000000000000, +0.0001862068966, +0.0004533156499, +0.0003076923077, \n    -0.0001779840849, -0.0004856763926, -0.0003480106101, +0.0001294429708, \n    +0.0004615384615, +0.0002429708223, +0.0000485411141, -0.0000323607427, \n    -0.0004450928382, -0.0008822281167, -0.0007286472149, -0.0000405835544, \n    +0.0005989389920, +0.0005989389920, -0.0000082228117, -0.0003641909814, \n    +0.0000809018568, +0.0003400530504, -0.0000729442971, -0.0004615384615, \n    -0.0003562334218, +0.0001862068966, +0.0007689655172, +0.0008013262599, \n    +0.0003076923077, -0.0003480106101, -0.0009713527851, -0.0013031830239, \n    -0.0009551724138, -0.0001214854111, +0.0003238726790, +0.0005827586207, \n    +0.0009795755968, +0.0010198938992, +0.0007042440318, +0.0004533156499, \n    +0.0002509283820, -0.0001214854111, -0.0005827586207, -0.0005424403183, \n    -0.0002103448276, -0.0002103448276, -0.0003803713528, -0.0004371352785, \n    -0.0002832891247, +0.0000082228117, +0.0002994694960, +0.0007042440318, \n    +0.0007366047745, +0.0002265251989, -0.0000647214854, +0.0001132625995, \n    +0.0001053050398, -0.0004371352785, -0.0008498673740, -0.0005342175066, \n    +0.0000323607427, +0.0001294429708, -0.0001132625995, -0.0000405835544, \n    +0.0002429708223, +0.0001618037135, -0.0000485411141, +0.0000000000000, \n    +0.0002103448276, +0.0002429708223, -0.0001618037135, -0.0006798408488, \n    -0.0005100795756, +0.0001941644562, +0.0008095490716, +0.0008336870027, \n    +0.0001700265252, -0.0005424403183, -0.0004694960212, +0.0000323607427, \n    +0.0000809018568, -0.0003641909814, -0.0007851458886, -0.0005909814324, \n    +0.0004209549072, +0.0012061007958, +0.0008742705570, +0.0001618037135, \n    -0.0000244031830, +0.0002265251989, +0.0003076923077, -0.0001376657825, \n    -0.0005424403183, -0.0005100795756, -0.0002023872679, +0.0000000000000, \n    +0.0000729442971, +0.0002671087533, +0.0006233421751, +0.0007366047745, \n    +0.0002591511936, -0.0002753315650, -0.0002753315650, -0.0001294429708, \n    -0.0002347480106, -0.0003400530504, -0.0002591511936, -0.0000891246684, \n    -0.0000809018568, +0.0001376657825, +0.0004777188329, +0.0003400530504, \n    +0.0000000000000, +0.0000000000000, +0.0001538461538, +0.0001456233422, \n    -0.0002103448276, -0.0003480106101, -0.0001294429708, -0.0001376657825, \n    -0.0004289124668, -0.0005989389920, -0.0003480106101, +0.0000647214854, \n    +0.0003238726790, +0.0004047745358, +0.0002429708223, +0.0000891246684, \n    +0.0001214854111, +0.0002915119363, +0.0003641909814, +0.0000082228117, \n    -0.0002103448276, +0.0001132625995, +0.0001132625995, -0.0002429708223, \n    -0.0002915119363, -0.0002832891247, -0.0003641909814, -0.0002347480106, \n    +0.0001456233422, +0.0004777188329, +0.0004127320955, +0.0000809018568, \n    +0.0002023872679, +0.0005586206897, +0.0002429708223, -0.0004615384615, \n    -0.0005262599469, -0.0001862068966, +0.0000000000000, +0.0000161803714, \n    +0.0000000000000, +0.0001214854111, +0.0006474801061, +0.0007851458886, \n    +0.0001214854111, -0.0004856763926, -0.0004127320955, -0.0001538461538, \n    -0.0001862068966, -0.0002509283820, +0.0000405835544, +0.0005100795756, \n    +0.0007366047745, +0.0005503978780, +0.0003156498674, +0.0003076923077, \n    -0.0001618037135, -0.0010766578249, -0.0013517241379, -0.0006395225464, \n    +0.0001941644562, +0.0003562334218, +0.0001053050398, +0.0001700265252, \n    +0.0002429708223, +0.0002832891247, +0.0004371352785, +0.0004371352785, \n    -0.0000729442971, -0.0006636604775, -0.0004856763926, +0.0001456233422, \n    +0.0001053050398, -0.0001779840849, +0.0000323607427, +0.0004047745358, \n    +0.0001700265252, -0.0005586206897, -0.0006395225464, +0.0000809018568, \n    +0.0002832891247, -0.0001538461538, -0.0001376657825, +0.0004047745358, \n    +0.0005827586207, +0.0001779840849, -0.0002265251989, -0.0003400530504, \n    -0.0003885941645, -0.0005018567639, -0.0004615384615, -0.0001618037135, \n    +0.0000244031830, +0.0001941644562, +0.0005748010610, +0.0005748010610, \n    +0.0000891246684, -0.0003480106101, -0.0002915119363, +0.0000970822281, \n    +0.0002103448276, -0.0000891246684, -0.0003641909814, -0.0005018567639, \n    -0.0003318302387, +0.0001456233422, +0.0004694960212, +0.0002265251989, \n    -0.0000809018568, +0.0000323607427, +0.0003238726790, +0.0003076923077, \n    +0.0000485411141, -0.0001214854111, -0.0000970822281, -0.0003238726790, \n    -0.0004289124668, +0.0000647214854, +0.0005180371353, +0.0002753315650, \n    -0.0002429708223, -0.0003562334218, -0.0001779840849, -0.0002671087533, \n    -0.0003885941645, -0.0000161803714, +0.0006071618037, +0.0009066312997, \n    +0.0006071618037, +0.0001294429708, -0.0003238726790, -0.0004371352785, \n    -0.0002023872679, -0.0001376657825, -0.0003400530504, -0.0002509283820, \n    +0.0000323607427, +0.0002509283820, +0.0005100795756, +0.0007124668435, \n    +0.0005100795756, +0.0001618037135, -0.0000809018568, -0.0003724137931, \n    -0.0006474801061, -0.0004047745358, +0.0002753315650, +0.0005503978780, \n    +0.0001132625995, -0.0002591511936, -0.0002671087533, -0.0001456233422, \n    -0.0001862068966, -0.0003965517241, -0.0005342175066, -0.0004371352785, \n    -0.0000082228117, +0.0004533156499, +0.0006233421751, +0.0004127320955, \n    +0.0000244031830, -0.0003480106101, -0.0005424403183, -0.0004450928382, \n    -0.0004047745358, -0.0006151193634, -0.0003400530504, +0.0003885941645, \n    +0.0007933687003, +0.0007933687003, +0.0005909814324, +0.0001941644562, \n    +0.0000161803714, +0.0001294429708, +0.0000729442971, -0.0004209549072, \n    -0.0008904509284, -0.0005909814324, +0.0002832891247, +0.0007366047745, \n    +0.0003318302387, -0.0003885941645, -0.0005989389920, -0.0003318302387, \n    -0.0001376657825, +0.0000729442971, +0.0004127320955, +0.0007204244032, \n    +0.0007851458886, +0.0002591511936, -0.0003641909814, -0.0000567639257, \n    +0.0005665782493, +0.0006071618037, +0.0003318302387, +0.0000485411141, \n    -0.0004047745358, -0.0006557029178, -0.0006798408488, -0.0002832891247, \n    +0.0005909814324, +0.0011007957560, +0.0007851458886, +0.0003400530504, \n    +0.0001132625995, -0.0001618037135, -0.0006071618037, -0.0007851458886, \n    -0.0003803713528, +0.0001862068966, +0.0003318302387, +0.0000729442971, \n    -0.0003318302387, -0.0006557029178, -0.0004533156499, +0.0004694960212, \n    +0.0014084880637, +0.0014490716180, +0.0006880636605, +0.0000244031830, \n    -0.0001700265252, -0.0005424403183, -0.0010604774536, -0.0010037135279, \n    -0.0002832891247, +0.0001538461538, +0.0000970822281, +0.0001618037135, \n    +0.0003965517241, +0.0002591511936, -0.0000244031830, -0.0003076923077, \n    -0.0006395225464, -0.0007286472149, -0.0004289124668, +0.0001862068966, \n    +0.0009145888594, +0.0009795755968, +0.0004533156499, +0.0001941644562, \n    +0.0002023872679, -0.0001214854111, -0.0006557029178, -0.0008498673740, \n    -0.0004777188329, -0.0001294429708, -0.0001214854111, -0.0000891246684, \n    +0.0000970822281, +0.0003885941645, +0.0004289124668, +0.0002023872679, \n    +0.0000161803714, -0.0001779840849, -0.0004047745358, -0.0002103448276, \n    +0.0001538461538, +0.0002753315650, +0.0002023872679, +0.0003156498674, \n    +0.0005989389920, +0.0006071618037, +0.0001053050398, -0.0002994694960, \n    -0.0002509283820, -0.0001214854111, -0.0003480106101, -0.0007204244032, \n    -0.0007286472149, -0.0001053050398, +0.0004371352785, +0.0003562334218, \n    +0.0000970822281, +0.0001053050398, +0.0003400530504, +0.0003724137931, \n    -0.0000809018568, -0.0004694960212, -0.0003238726790, -0.0002023872679, \n    -0.0002023872679, +0.0001538461538, +0.0004127320955, +0.0000000000000, \n    -0.0004371352785, -0.0002753315650, +0.0002023872679, +0.0004209549072, \n    +0.0002023872679, -0.0001779840849, -0.0001941644562, +0.0001214854111, \n    +0.0003885941645, +0.0003803713528, +0.0002753315650, +0.0003156498674, \n    +0.0002753315650, -0.0002509283820, -0.0006151193634, -0.0003724137931, \n    +0.0000323607427, +0.0001941644562, +0.0000891246684, -0.0000323607427, \n    -0.0000567639257, -0.0000485411141, +0.0001132625995, +0.0003238726790, \n    +0.0003724137931, +0.0003562334218, +0.0001132625995, -0.0002103448276, \n    -0.0001862068966, +0.0000729442971, -0.0001132625995, -0.0006395225464, \n    -0.0006962864721, -0.0002509283820, +0.0000970822281, +0.0002429708223, \n    +0.0003318302387, +0.0004047745358, +0.0002347480106, +0.0000647214854, \n    -0.0000082228117, -0.0002994694960, -0.0004533156499, -0.0000970822281, \n    +0.0002509283820, +0.0002429708223, -0.0000970822281, -0.0003803713528, \n    -0.0002429708223, -0.0000323607427, -0.0001618037135, -0.0002591511936, \n    +0.0001294429708, +0.0005748010610, +0.0004856763926, +0.0001618037135, \n    -0.0001053050398, -0.0003318302387, -0.0003238726790, -0.0001941644562, \n    -0.0001132625995, +0.0000000000000, +0.0001053050398, +0.0000485411141, \n    -0.0000244031830, +0.0000891246684, +0.0003076923077, +0.0001941644562, \n    -0.0001941644562, -0.0004856763926, -0.0003238726790, +0.0000647214854, \n    +0.0002347480106, +0.0000891246684, -0.0001294429708, -0.0002023872679, \n    +0.0000405835544, +0.0003965517241, +0.0006798408488, +0.0006233421751, \n    +0.0000647214854, -0.0003885941645, -0.0003156498674, -0.0001618037135, \n    -0.0003076923077, -0.0004694960212, -0.0003238726790, +0.0000082228117, \n    +0.0003480106101, +0.0007042440318, +0.0007124668435, +0.0001941644562, \n    -0.0003724137931, -0.0004450928382, -0.0001053050398, +0.0001294429708, \n    -0.0002023872679, -0.0007527851459, -0.0006557029178, +0.0001700265252, \n    +0.0008336870027, +0.0006718832891, +0.0000244031830, -0.0002915119363, \n    -0.0000647214854, +0.0002915119363, +0.0001779840849, -0.0003238726790, \n    -0.0004371352785, -0.0000567639257, +0.0000809018568, -0.0002103448276, \n    -0.0004856763926, -0.0003562334218, -0.0000809018568, -0.0001294429708, \n    -0.0002023872679, +0.0000567639257, +0.0003641909814, +0.0003803713528, \n    +0.0003238726790, +0.0002429708223, -0.0000485411141, -0.0004047745358, \n    -0.0003238726790, -0.0000485411141, +0.0000729442971, -0.0000082228117, \n    -0.0002103448276, -0.0002671087533, -0.0000970822281, +0.0000323607427, \n    +0.0001132625995, +0.0002185676393, +0.0003400530504, +0.0003318302387, \n    +0.0003562334218, +0.0003562334218, -0.0000729442971, -0.0007042440318, \n    -0.0007851458886, -0.0001538461538, +0.0004450928382, +0.0003238726790, \n    -0.0000405835544, +0.0001538461538, +0.0005586206897, +0.0004209549072, \n    -0.0001700265252, -0.0005748010610, -0.0005262599469, -0.0003562334218, \n    -0.0001862068966, +0.0002429708223, +0.0007366047745, +0.0007610079576, \n    +0.0001618037135, -0.0003238726790, -0.0002753315650, -0.0000323607427, \n    +0.0000082228117, +0.0000405835544, +0.0000244031830, -0.0001294429708, \n    -0.0001538461538, +0.0001132625995, +0.0001053050398, -0.0003156498674, \n    -0.0004615384615, -0.0000647214854, +0.0002671087533, +0.0000970822281, \n    -0.0001132625995, +0.0000809018568, +0.0003562334218, +0.0004047745358, \n    +0.0003562334218, +0.0002347480106, +0.0000485411141, -0.0002671087533, \n    -0.0004615384615, -0.0004047745358, -0.0003641909814, -0.0003724137931, \n    -0.0000647214854, +0.0003318302387, +0.0004615384615, +0.0003480106101, \n    +0.0004371352785, +0.0005989389920, +0.0004615384615, -0.0000647214854, \n    -0.0006395225464, -0.0007204244032, -0.0004209549072, -0.0001941644562, \n    +0.0000405835544, +0.0002429708223, +0.0003076923077, +0.0003965517241, \n    +0.0003480106101, +0.0000729442971, -0.0001456233422, -0.0000891246684, \n    +0.0001376657825, +0.0004371352785, +0.0005180371353, +0.0001618037135, \n    -0.0002023872679, -0.0001779840849, -0.0002347480106, -0.0004289124668, \n    -0.0004047745358, -0.0001941644562, -0.0000244031830, +0.0003156498674, \n    +0.0007689655172, +0.0008257294430, +0.0003803713528, +0.0000729442971, \n    +0.0000405835544, +0.0000485411141, -0.0000970822281, -0.0003724137931, \n    -0.0004777188329, -0.0002591511936, +0.0000485411141, +0.0002265251989, \n    +0.0001538461538, -0.0000891246684, -0.0002347480106, -0.0000567639257, \n    +0.0002753315650, +0.0003641909814, +0.0003156498674, +0.0003724137931, \n    +0.0003885941645, -0.0000082228117, -0.0005180371353, -0.0004938992042, \n    -0.0000323607427, -0.0000405835544, -0.0004938992042, -0.0004856763926, \n    +0.0001294429708, +0.0005586206897, +0.0005827586207, +0.0004615384615, \n    +0.0001941644562, -0.0002023872679, -0.0003724137931, -0.0000970822281, \n    +0.0003885941645, +0.0005342175066, +0.0000729442971, -0.0005748010610, \n    -0.0007689655172, -0.0003965517241, -0.0000323607427, -0.0001376657825, \n    -0.0004371352785, -0.0004209549072, -0.0000082228117, +0.0005100795756, \n    +0.0007042440318, +0.0004127320955, +0.0000161803714, -0.0000567639257, \n    -0.0002103448276, -0.0005262599469, -0.0005909814324, -0.0003400530504, \n    -0.0001618037135, +0.0000000000000, +0.0003400530504, +0.0007527851459, \n    +0.0007689655172, +0.0004615384615, -0.0000244031830, -0.0005665782493, \n    -0.0007204244032, -0.0003965517241, -0.0000323607427, +0.0000485411141, \n    +0.0000647214854, +0.0003400530504, +0.0005100795756, +0.0002832891247, \n    +0.0000485411141, -0.0001941644562, -0.0004777188329, -0.0004371352785, \n    -0.0000244031830, +0.0003724137931, +0.0005424403183, +0.0003076923077, \n    -0.0001214854111, -0.0005262599469, -0.0006557029178, -0.0004450928382, \n    -0.0000567639257, +0.0002023872679, +0.0002509283820, +0.0000647214854, \n    -0.0001456233422, -0.0001618037135, +0.0000647214854, +0.0002185676393, \n    +0.0000891246684, -0.0001376657825, -0.0002994694960, -0.0003318302387, \n    -0.0000405835544, +0.0002347480106, +0.0000405835544, -0.0002429708223, \n    -0.0001779840849, +0.0000485411141, +0.0001214854111, +0.0000567639257, \n    -0.0000485411141, -0.0000647214854, +0.0000000000000, +0.0000000000000, \n    -0.0001294429708, -0.0001618037135, -0.0000647214854, +0.0000970822281, \n    +0.0002591511936, +0.0002671087533, +0.0000082228117, -0.0000891246684, \n    -0.0000082228117, -0.0001132625995, -0.0002429708223, -0.0000323607427, \n    +0.0002185676393, +0.0001132625995, -0.0001214854111, -0.0000809018568, \n    -0.0000729442971, -0.0002915119363, -0.0001700265252, +0.0003156498674, \n    +0.0004938992042, +0.0000970822281, -0.0002185676393, -0.0000405835544, \n    +0.0001700265252, -0.0000567639257, -0.0002509283820, -0.0000970822281, \n    -0.0000647214854, -0.0004371352785, -0.0005827586207, -0.0001294429708, \n    +0.0005262599469, +0.0006557029178, +0.0003965517241, +0.0002591511936, \n    +0.0002509283820, +0.0000000000000, -0.0004127320955, -0.0005262599469, \n    -0.0002671087533, -0.0001779840849, -0.0001294429708, +0.0002185676393, \n    +0.0004856763926, +0.0002429708223, -0.0002185676393, -0.0003238726790, \n    -0.0000647214854, +0.0000970822281, -0.0000647214854, -0.0002185676393, \n    +0.0000244031830, +0.0005665782493, +0.0006880636605, +0.0002591511936, \n    -0.0001941644562, -0.0002185676393, +0.0000000000000, +0.0000567639257, \n    +0.0000000000000, +0.0000729442971, +0.0001294429708, +0.0001376657825, \n    +0.0002103448276, +0.0002265251989, -0.0000161803714, -0.0004127320955, \n    -0.0006233421751, -0.0003885941645, +0.0000161803714, +0.0001941644562, \n    +0.0002671087533, +0.0004289124668, +0.0004450928382, +0.0002591511936, \n    -0.0000161803714, -0.0002509283820, -0.0002265251989, -0.0001538461538, \n    -0.0001132625995, -0.0000161803714, +0.0000244031830, -0.0000485411141, \n    -0.0000405835544, +0.0001214854111, +0.0002753315650, +0.0000729442971, \n    -0.0002103448276, -0.0001618037135, +0.0001456233422, +0.0002103448276, \n    +0.0000082228117, -0.0000970822281, +0.0000970822281, +0.0002429708223, \n    +0.0000970822281, -0.0000809018568, +0.0000000000000, +0.0000567639257, \n    -0.0000647214854, -0.0001538461538, +0.0000000000000, +0.0002591511936, \n    +0.0003724137931, +0.0003318302387, +0.0001779840849, +0.0000000000000, \n    -0.0001376657825, -0.0001376657825, -0.0000405835544, +0.0000000000000, \n    -0.0002265251989, -0.0004694960212, -0.0003400530504, +0.0000567639257, \n    +0.0002509283820, +0.0001456233422, +0.0000323607427, +0.0001618037135, \n    +0.0002185676393, +0.0000809018568, -0.0000244031830, +0.0000161803714, \n    +0.0000161803714, -0.0000485411141, -0.0000647214854, -0.0000647214854, \n    -0.0001456233422, -0.0001132625995, +0.0000161803714, +0.0000000000000, \n    -0.0000485411141, +0.0000082228117, +0.0001618037135, +0.0001862068966, \n    +0.0000161803714, -0.0002753315650, -0.0003803713528, -0.0001376657825, \n    +0.0002023872679, +0.0001700265252, -0.0001214854111, -0.0002185676393, \n    -0.0000729442971, +0.0000405835544, +0.0001376657825, +0.0001132625995, \n    +0.0000323607427, +0.0000729442971, +0.0000809018568, -0.0000891246684, \n    -0.0002591511936, -0.0002023872679, +0.0000405835544, +0.0002185676393, \n    +0.0001214854111, +0.0000000000000, +0.0000567639257, +0.0000970822281, \n    +0.0000161803714, +0.0000244031830, +0.0000970822281, +0.0001456233422, \n    +0.0000323607427, -0.0001779840849, -0.0002994694960, -0.0000891246684, \n    +0.0000000000000, -0.0002591511936, -0.0003562334218, +0.0000485411141, \n    +0.0003885941645, +0.0002915119363, +0.0000647214854, +0.0002103448276, \n    +0.0006395225464, +0.0007124668435, +0.0000970822281, -0.0005342175066, \n    -0.0004938992042, -0.0000891246684, -0.0001132625995, -0.0004371352785, \n    -0.0002591511936, +0.0002994694960, +0.0004777188329, +0.0002185676393, \n    +0.0000244031830, -0.0000485411141, -0.0000405835544, +0.0000323607427, \n    +0.0001700265252, +0.0001700265252, +0.0000405835544, -0.0001700265252, \n    -0.0004127320955, -0.0005100795756, -0.0002671087533, -0.0000082228117, \n    +0.0000485411141, +0.0000323607427, +0.0000891246684, +0.0001214854111, \n    +0.0001214854111, +0.0001456233422, +0.0001538461538, +0.0000567639257, \n    -0.0000891246684, -0.0002429708223, -0.0003076923077, -0.0001376657825, \n    +0.0001214854111, +0.0002103448276, +0.0000891246684, +0.0000323607427, \n    -0.0000082228117, -0.0000161803714, +0.0000567639257, +0.0000405835544, \n    +0.0000000000000, +0.0000891246684, +0.0000405835544, -0.0001132625995, \n    -0.0001456233422, +0.0000000000000, +0.0000647214854, -0.0001456233422, \n    -0.0004533156499, -0.0004209549072, +0.0000323607427, +0.0005586206897, \n    +0.0006880636605, +0.0003965517241, +0.0000405835544, -0.0001618037135, \n    -0.0001700265252, -0.0000970822281, -0.0000809018568, -0.0000891246684, \n    -0.0000809018568, -0.0001294429708, -0.0001538461538, -0.0001053050398, \n    +0.0001214854111, +0.0003965517241, +0.0004856763926, +0.0004047745358, \n    +0.0002185676393, -0.0001538461538, -0.0003965517241, -0.0002915119363, \n    -0.0000161803714, +0.0000567639257, -0.0000485411141, -0.0000161803714, \n    +0.0001862068966, +0.0001779840849, -0.0000891246684, -0.0001779840849, \n    +0.0000244031830, +0.0001941644562, +0.0001294429708, +0.0000161803714, \n    -0.0000244031830, +0.0000647214854, +0.0002429708223, +0.0002591511936, \n    -0.0000567639257, -0.0002265251989, -0.0000485411141, +0.0001132625995, \n    -0.0000244031830, -0.0002429708223, -0.0002429708223, -0.0000161803714, \n    +0.0000809018568, -0.0000244031830, -0.0002509283820, -0.0003238726790, \n    -0.0001700265252, -0.0000244031830, -0.0000405835544, +0.0000405835544, \n    +0.0002509283820, +0.0002753315650, +0.0000323607427, -0.0000485411141, \n    +0.0001294429708, +0.0001538461538, +0.0000082228117, -0.0001294429708, \n    -0.0002103448276, -0.0002103448276, -0.0001700265252, -0.0001456233422, \n    -0.0000244031830, -0.0000082228117, +0.0000000000000, +0.0001376657825, \n    +0.0002347480106, +0.0000809018568, +0.0000161803714, +0.0000729442971, \n    +0.0000323607427, -0.0000405835544, +0.0000244031830, +0.0000000000000, \n    -0.0001376657825, -0.0000891246684, +0.0000729442971, +0.0000000000000, \n    -0.0002832891247, -0.0002753315650, +0.0000567639257, +0.0002915119363, \n    +0.0001862068966, +0.0000244031830, -0.0000323607427, -0.0000405835544, \n    -0.0000485411141, +0.0000000000000, +0.0000000000000, +0.0000244031830, \n    +0.0001376657825, +0.0002994694960, +0.0003318302387, +0.0002509283820, \n    +0.0000405835544, -0.0002185676393, -0.0002994694960, -0.0000082228117, \n    +0.0002023872679, +0.0001053050398, -0.0001053050398, -0.0001700265252, \n    -0.0000485411141, +0.0000567639257, -0.0000323607427, -0.0002347480106, \n    -0.0001862068966, +0.0001456233422, +0.0004209549072, +0.0002671087533, \n    -0.0000323607427, -0.0001132625995, +0.0000323607427, +0.0000405835544, \n    -0.0001053050398, -0.0002023872679, -0.0001294429708, -0.0000809018568, \n    -0.0000323607427, +0.0000323607427, +0.0000891246684, +0.0000729442971, \n    +0.0001214854111, +0.0002103448276, +0.0002671087533, +0.0001618037135, \n    -0.0000244031830, -0.0002509283820, -0.0003965517241, -0.0003480106101, \n    -0.0000891246684, +0.0001862068966, +0.0003400530504, +0.0003885941645, \n    +0.0003562334218, +0.0001700265252, -0.0001538461538, -0.0003400530504, \n    -0.0002994694960, -0.0001538461538, -0.0000161803714, +0.0001700265252, \n    +0.0002994694960, +0.0002994694960, +0.0000405835544, -0.0002671087533, \n    -0.0003156498674, -0.0000567639257, +0.0001700265252, +0.0002103448276, \n    +0.0000647214854, -0.0000485411141, -0.0000891246684, -0.0000082228117, \n    +0.0001294429708, +0.0001941644562, +0.0002265251989, +0.0002994694960, \n    +0.0002023872679, -0.0000082228117, -0.0001132625995, -0.0001132625995, \n    -0.0000729442971, -0.0000970822281, -0.0000405835544, +0.0000891246684, \n    +0.0001053050398, -0.0000485411141, -0.0001294429708, -0.0000405835544, \n    +0.0000729442971, +0.0000809018568, +0.0001538461538, +0.0001456233422, \n    +0.0000082228117, -0.0000082228117, +0.0001294429708, +0.0000647214854, \n    -0.0001700265252, -0.0001456233422, +0.0001700265252, +0.0002429708223, \n    -0.0000729442971, -0.0003238726790, -0.0002023872679, +0.0000082228117, \n    +0.0000000000000, -0.0001376657825, -0.0002265251989, -0.0001862068966, \n    -0.0000244031830, +0.0002185676393, +0.0002915119363, +0.0001053050398, \n    -0.0000970822281, -0.0000405835544, +0.0001618037135, +0.0001538461538, \n    -0.0001376657825, -0.0002832891247, -0.0000405835544, +0.0002429708223, \n    +0.0001700265252, -0.0001376657825, -0.0003156498674, -0.0002429708223, \n    -0.0001132625995, -0.0000405835544, -0.0000323607427, +0.0000567639257, \n    +0.0002347480106, +0.0001618037135, -0.0001941644562, -0.0005665782493, \n    -0.0004856763926, +0.0000082228117, +0.0003724137931, +0.0002915119363, \n    +0.0001294429708, +0.0001053050398, +0.0001214854111, +0.0000485411141, \n    +0.0000000000000, -0.0000729442971, -0.0002265251989, -0.0002753315650, \n    -0.0000323607427, +0.0002265251989, +0.0002915119363, +0.0001862068966, \n    +0.0000647214854, +0.0000485411141, +0.0000485411141, -0.0000161803714, \n    -0.0001132625995, -0.0001700265252, -0.0001779840849, -0.0000405835544, \n    +0.0001538461538, +0.0001941644562, +0.0001294429708, +0.0001941644562, \n    +0.0001618037135, -0.0000970822281, -0.0002753315650, -0.0001779840849, \n    -0.0000405835544, +0.0000405835544, -0.0000082228117, -0.0000405835544, \n    +0.0000891246684, +0.0002429708223, +0.0002265251989, +0.0001456233422, \n    -0.0000323607427, -0.0002832891247, -0.0002832891247, +0.0000000000000, \n    +0.0003156498674, +0.0003238726790, +0.0000082228117, -0.0002509283820, \n    -0.0002753315650, -0.0002753315650, -0.0002591511936, -0.0002023872679, \n    -0.0000323607427, +0.0002023872679, +0.0004289124668, +0.0003400530504, \n    -0.0000161803714, -0.0001941644562, +0.0000000000000, +0.0000809018568, \n    -0.0000729442971, -0.0002509283820, -0.0002347480106, -0.0001294429708, \n    -0.0000082228117, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000082228117, +0.0000082228117, +0.0000082228117, \n    +0.0000000000000, +0.0000000000000, -0.0000244031830, -0.0000323607427, \n    -0.0000082228117, +0.0000161803714, +0.0000244031830, +0.0000082228117, \n    +0.0000244031830, +0.0000485411141, +0.0000244031830, -0.0000161803714, \n    -0.0000405835544, +0.0000000000000, +0.0000323607427, +0.0000244031830, \n    -0.0000082228117, -0.0000244031830, +0.0000000000000, +0.0000082228117, \n    +0.0000244031830, +0.0000000000000, +0.0000000000000, +0.0000161803714, \n    +0.0000405835544, +0.0000000000000, -0.0000729442971, -0.0000323607427, \n    +0.0000970822281, +0.0001862068966, +0.0001132625995, +0.0000000000000, \n    -0.0000405835544, -0.0000323607427, +0.0000000000000, +0.0000082228117, \n    -0.0000323607427, -0.0000809018568, -0.0000405835544, +0.0000082228117, \n    +0.0000405835544, +0.0000405835544, +0.0000323607427, +0.0000082228117, \n    -0.0000082228117, -0.0000244031830, -0.0000082228117, +0.0000161803714, \n    +0.0000485411141, +0.0000567639257, +0.0000323607427, +0.0000000000000, \n    +0.0000082228117, +0.0000485411141, +0.0000244031830, -0.0000082228117, \n    +0.0000000000000, -0.0000161803714, -0.0001294429708, -0.0001294429708, \n    +0.0000000000000, +0.0000970822281, +0.0000729442971, +0.0000000000000, \n    -0.0000485411141, -0.0000567639257, -0.0000729442971, -0.0001294429708, \n    -0.0000970822281, +0.0000082228117, +0.0001294429708, +0.0001618037135, \n    +0.0000891246684, -0.0000567639257, -0.0001456233422, -0.0001132625995, \n    -0.0000323607427, -0.0000161803714, -0.0000244031830, +0.0000000000000, \n    +0.0000970822281, +0.0001941644562, +0.0001376657825, -0.0000082228117, \n    -0.0001214854111, -0.0001538461538, -0.0000970822281, +0.0000244031830, \n    +0.0000729442971, +0.0000244031830, +0.0000000000000, +0.0000729442971, \n    +0.0001294429708, +0.0000082228117, -0.0001456233422, -0.0001214854111, \n    +0.0000161803714, +0.0001132625995, +0.0000000000000, -0.0001294429708, \n    -0.0000891246684, +0.0000485411141, +0.0001456233422, +0.0001941644562, \n    +0.0001779840849, +0.0000729442971, -0.0000405835544, -0.0000567639257, \n    -0.0000161803714, -0.0000405835544, -0.0000809018568, +0.0000000000000, \n    +0.0001456233422, +0.0000970822281, -0.0000647214854, -0.0001053050398, \n    +0.0000485411141, +0.0001862068966, +0.0001376657825, -0.0000244031830, \n    -0.0001214854111, -0.0001538461538, -0.0001376657825, -0.0001053050398, \n    -0.0000082228117, +0.0000485411141, +0.0001376657825, +0.0002347480106, \n    +0.0001779840849, -0.0000323607427, -0.0001214854111, -0.0000970822281, \n    -0.0001700265252, -0.0001779840849, +0.0000000000000, +0.0001538461538, \n    +0.0002185676393, +0.0002185676393, +0.0001294429708, -0.0000244031830, \n    -0.0002509283820, -0.0004371352785, -0.0003803713528, -0.0001053050398, \n    +0.0000809018568, +0.0001862068966, +0.0002023872679, +0.0001941644562, \n    +0.0001132625995, -0.0000485411141, -0.0001862068966, -0.0001294429708, \n    +0.0000000000000, +0.0001538461538, +0.0002347480106\n};\n"
  },
  {
    "path": "impulses/07-fender-68-vibrolux-ui87.h",
    "content": "float fender_68_vibrolux_ui87[] = {\n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000065400844, +0.0000194092827, \n    +0.0000128691983, +0.0000000000000, -0.0000194092827, +0.0000000000000, \n    +0.0000128691983, +0.0000000000000, -0.0000128691983, -0.0000065400844, \n    +0.0000000000000, +0.0000000000000, -0.0000128691983, +0.0000322784810, \n    +0.0000708860759, +0.0000514767932, +0.0000000000000, -0.0000257383966, \n    -0.0000065400844, +0.0000065400844, -0.0000065400844, -0.0000322784810, \n    -0.0000257383966, -0.0000065400844, -0.0000322784810, -0.0000322784810, \n    +0.0000194092827, +0.0000900843882, +0.0000837552743, +0.0000194092827, \n    -0.0000257383966, +0.0000000000000, +0.0000128691983, -0.0000065400844, \n    -0.0000708860759, -0.0000386075949, +0.0000322784810, +0.0000000000000, \n    -0.0000643459916, +0.0000000000000, +0.0001094936709, +0.0001223628692, \n    +0.0000000000000, -0.0000322784810, +0.0000194092827, +0.0000000000000, \n    -0.0001158227848, -0.0001672995781, -0.0000580168776, +0.0000900843882, \n    +0.0000257383966, -0.0000514767932, +0.0000194092827, +0.0001481012658, \n    +0.0001223628692, +0.0000451476793, +0.0000451476793, +0.0000837552743, \n    +0.0000000000000, -0.0002124472574, -0.0002962025316, -0.0001094936709, \n    +0.0000837552743, +0.0000900843882, -0.0000386075949, -0.0000386075949, \n    +0.0000966244726, +0.0001029535865, +0.0000257383966, +0.0001223628692, \n    +0.0001932489451, +0.0000514767932, -0.0002704641350, -0.0004120253165, \n    -0.0001672995781, +0.0001867088608, +0.0002253164557, +0.0000386075949, \n    -0.0000322784810, +0.0000580168776, +0.0000837552743, -0.0000322784810, \n    +0.0000451476793, +0.0002767932489, +0.0001094936709, -0.0004185654008, \n    -0.0006888185654, -0.0002833333333, +0.0002189873418, +0.0003282700422, \n    +0.0001029535865, +0.0000643459916, +0.0002124472574, +0.0001415611814, \n    -0.0000643459916, +0.0001801687764, +0.0004700421941, +0.0001738396624, \n    -0.0005343881857, -0.0007210970464, -0.0003991561181, +0.0000257383966, \n    +0.0002381856540, +0.0001094936709, +0.0000708860759, +0.0002061181435, \n    +0.0000643459916, -0.0000322784810, +0.0000772151899, +0.0004185654008, \n    +0.0003348101266, -0.0003219409283, -0.0007597046414, -0.0003154008439, \n    +0.0001738396624, +0.0003025316456, +0.0000643459916, +0.0001801687764, \n    +0.0003670886076, +0.0001481012658, -0.0002253164557, -0.0002124472574, \n    +0.0004185654008, +0.0003219409283, -0.0005795358650, -0.0007725738397, \n    -0.0002896624473, +0.0001158227848, +0.0000708860759, +0.0000000000000, \n    +0.0004314345992, +0.0007597046414, +0.0004892405063, +0.0001158227848, \n    -0.0001544303797, +0.0002124472574, +0.0001995780591, -0.0004892405063, \n    -0.0008434599156, -0.0004120253165, +0.0000451476793, -0.0002767932489, \n    -0.0005215189873, +0.0001544303797, +0.0009400843882, +0.0009141350211, \n    +0.0001995780591, -0.0004377637131, +0.0001352320675, +0.0002962025316, \n    -0.0004506329114, -0.0005729957806, +0.0003605485232, +0.0005086497890, \n    -0.0004700421941, -0.0009721518987, +0.0002575949367, +0.0014164556962, \n    +0.0014873417722, +0.0000643459916, -0.0004314345992, -0.0004056962025, \n    -0.0004506329114, -0.0011717299578, -0.0006630801688, +0.0005278481013, \n    +0.0012360759494, -0.0012297468354, -0.0018027426160, +0.0000900843882, \n    +0.0035860759494, +0.0036504219409, +0.0017770042194, -0.0007274261603, \n    -0.0002704641350, -0.0008177215190, -0.0009978902954, -0.0018478902954, \n    +0.0014356540084, +0.0023951476793, -0.0014485232068, -0.0087947257384, \n    -0.0035088607595, +0.0029938818565, +0.0382048523207, -0.0170358649789, \n    -0.0791267932489, -0.0187677215190, +0.1161018987342, +0.2109575949367, \n    +0.0768926160338, -0.1636681434599, -0.1423253164557, -0.0362476793249, \n    -0.1131016877637, -0.1276717299578, +0.0162373417722, +0.1233514767932, \n    +0.0506244725738, +0.0418103375527, +0.0046871308017, +0.0040818565401, \n    -0.0304725738397, -0.0581829113924, -0.0086531645570, +0.0347540084388, \n    -0.0397565400844, -0.0239827004219, +0.0140419831224, -0.0147565400844, \n    +0.0023500000000, +0.0165978902954, +0.0268476793249, +0.0005601265823, \n    +0.0065219409283, -0.0127027426160, -0.0094386075949, -0.0036375527426, \n    +0.0008755274262, +0.0146987341772, +0.0315542194093, +0.0068696202532, \n    -0.0237573839662, -0.0308265822785, +0.0000708860759, +0.0435808016878, \n    +0.0116597046414, -0.0014227848101, +0.0102175105485, +0.0030582278481, \n    +0.0103850210970, +0.0295839662447, +0.0237122362869, +0.0107198312236, \n    +0.0059232067511, +0.0065542194093, +0.0049639240506, -0.0121105485232, \n    -0.0175894514768, -0.0126512658228, +0.0062774261603, +0.0028907172996, \n    -0.0068504219409, +0.0145955696203, +0.0169327004219, -0.0029293248945, \n    -0.0143510548523, -0.0012554852321, +0.0147694092827, +0.0110223628692, \n    +0.0034959915612, +0.0069468354430, -0.0007405063291, -0.0051892405063, \n    +0.0082088607595, +0.0120782700422, +0.0077774261603, -0.0025044303797, \n    -0.0091037974684, -0.0043265822785, +0.0036183544304, -0.0032641350211, \n    -0.0069856540084, -0.0007983122363, -0.0050605485232, -0.0077774261603, \n    -0.0017704641350, +0.0045453586498, +0.0033864978903, +0.0017255274262, \n    +0.0028972573840, +0.0074362869198, +0.0102820675105, +0.0064833333333, \n    +0.0083054852321, +0.0126578059072, +0.0042814345992, -0.0046162447257, \n    -0.0026075949367, +0.0031419831224, +0.0079770042194, +0.0061421940928, \n    +0.0000065400844, -0.0034831223629, -0.0041398734177, -0.0053630801688, \n    -0.0066508438819, -0.0029873417722, -0.0009850210970, +0.0007016877637, \n    +0.0061356540084, +0.0073719409283, +0.0060841772152, +0.0016031645570, \n    -0.0032449367089, -0.0050476793249, -0.0027105485232, -0.0027877637131, \n    +0.0014164556962, +0.0061936708861, +0.0087753164557, +0.0023628691983, \n    -0.0053373417722, -0.0070242616034, -0.0061421940928, -0.0072367088608, \n    -0.0083504219409, -0.0071335443038, -0.0057430379747, -0.0002575949367, \n    +0.0027040084388, +0.0021181434599, -0.0009272151899, +0.0005537974684, \n    +0.0001801687764, +0.0009529535865, +0.0005601265823, -0.0015708860759, \n    -0.0028135021097, -0.0067537974684, -0.0057301687764, -0.0010816455696, \n    +0.0020280590717, +0.0009012658228, -0.0007082278481, +0.0006244725738, \n    -0.0025172995781, -0.0088398734177, -0.0076358649789, -0.0044166666667, \n    -0.0046677215190, -0.0033158227848, -0.0016094936709, -0.0012489451477, \n    -0.0001867088608, +0.0020280590717, +0.0022276371308, +0.0016160337553, \n    -0.0012554852321, -0.0034831223629, -0.0026782700422, +0.0005858649789, \n    +0.0036054852321, -0.0007854430380, -0.0062065400844, -0.0047514767932, \n    -0.0028715189873, -0.0028135021097, -0.0045196202532, -0.0019765822785, \n    +0.0034508438819, +0.0025947257384, -0.0027943037975, -0.0043008438819, \n    -0.0039660337553, -0.0067343881857, -0.0037407172996, +0.0013907172996, \n    -0.0009335443038, -0.0010945147679, +0.0026976793249, +0.0003991561181, \n    -0.0037407172996, -0.0050605485232, -0.0034508438819, -0.0031677215190, \n    -0.0037470464135, -0.0020409282700, -0.0012554852321, +0.0009850210970, \n    +0.0008626582278, -0.0014613924051, -0.0040689873418, -0.0055369198312, \n    -0.0011139240506, +0.0024786919831, -0.0008305907173, -0.0010430379747, \n    +0.0000900843882, -0.0011073839662, -0.0012426160338, -0.0000451476793, \n    +0.0016869198312, +0.0000257383966, +0.0003734177215, +0.0018670886076, \n    +0.0000000000000, -0.0007274261603, +0.0007854430380, +0.0004120253165, \n    -0.0018864978903, -0.0012877637131, +0.0007016877637, +0.0026719409283, \n    +0.0042299578059, +0.0026010548523, -0.0001544303797, +0.0007016877637, \n    +0.0010236286920, +0.0013392405063, +0.0005215189873, +0.0007919831224, \n    +0.0043137130802, +0.0029293248945, -0.0006567510549, +0.0001223628692, \n    +0.0004185654008, -0.0010172995781, -0.0001995780591, -0.0007983122363, \n    -0.0012489451477, +0.0026139240506, +0.0035926160338, +0.0009400843882, \n    +0.0002061181435, -0.0005086497890, -0.0000772151899, +0.0006116033755, \n    -0.0010493670886, -0.0010172995781, +0.0009529535865, +0.0015774261603, \n    -0.0002124472574, -0.0004957805907, +0.0008883966245, +0.0023757383966, \n    +0.0036246835443, +0.0017512658228, +0.0021118143460, +0.0031097046414, \n    -0.0013006329114, -0.0032449367089, -0.0011845991561, -0.0003928270042, \n    +0.0007533755274, +0.0008883966245, +0.0000708860759, +0.0000000000000, \n    -0.0002061181435, -0.0010107594937, +0.0005407172996, +0.0021632911392, \n    +0.0031548523207, +0.0039145569620, +0.0008434599156, -0.0010879746835, \n    +0.0003282700422, +0.0009141350211, +0.0003090717300, +0.0001223628692, \n    +0.0001158227848, +0.0006696202532, -0.0001415611814, -0.0000386075949, \n    -0.0003670886076, -0.0005666666667, +0.0009592827004, +0.0007533755274, \n    +0.0013841772152, +0.0025495780591, +0.0011717299578, +0.0003991561181, \n    -0.0000257383966, -0.0010172995781, -0.0015902953586, -0.0015130801688, \n    +0.0019637130802, +0.0021118143460, -0.0004829113924, +0.0009658227848, \n    +0.0001801687764, -0.0009978902954, -0.0012940928270, -0.0029744725738, \n    -0.0007082278481, +0.0030067510549, +0.0033930379747, +0.0022791139241, \n    +0.0000194092827, -0.0016417721519, -0.0011459915612, -0.0005215189873, \n    -0.0007405063291, -0.0014613924051, -0.0007274261603, +0.0005795358650, \n    +0.0016740506329, +0.0017061181435, +0.0000322784810, -0.0008305907173, \n    +0.0015516877637, +0.0017318565401, -0.0003411392405, +0.0009850210970, \n    +0.0014164556962, +0.0000000000000, +0.0002447257384, -0.0011654008439, \n    -0.0014356540084, -0.0004443037975, -0.0020086497890, -0.0016546413502, \n    -0.0003862869198, -0.0006502109705, -0.0005215189873, -0.0004635021097, \n    +0.0012489451477, +0.0023434599156, -0.0008949367089, -0.0004892405063, \n    +0.0015966244726, +0.0008563291139, -0.0023305907173, -0.0039466244726, \n    -0.0010687763713, +0.0013069620253, +0.0004892405063, -0.0006567510549, \n    +0.0005086497890, +0.0010751054852, +0.0011588607595, -0.0001672995781, \n    -0.0009400843882, -0.0012489451477, -0.0011073839662, +0.0003799578059, \n    -0.0008755274262, -0.0024014767932, -0.0005987341772, +0.0006373417722, \n    -0.0002575949367, +0.0000837552743, +0.0003476793249, +0.0004829113924, \n    -0.0004314345992, -0.0006438818565, +0.0007274261603, -0.0004957805907, \n    -0.0023628691983, -0.0027685654008, -0.0023242616034, +0.0006630801688, \n    +0.0025624472574, +0.0014421940928, +0.0018928270042, +0.0024915611814, \n    +0.0022662447257, +0.0011331223629, -0.0011267932489, -0.0016932489451, \n    -0.0007016877637, -0.0012683544304, -0.0006696202532, -0.0000643459916, \n    -0.0004377637131, +0.0000580168776, -0.0002704641350, -0.0005086497890, \n    +0.0009206751055, +0.0010816455696, +0.0003670886076, -0.0001415611814, \n    -0.0005149789030, -0.0003734177215, -0.0009915611814, +0.0005407172996, \n    +0.0010687763713, -0.0013455696203, -0.0014099156118, +0.0000322784810, \n    +0.0001995780591, -0.0002575949367, -0.0011010548523, -0.0010044303797, \n    +0.0007082278481, +0.0008820675105, +0.0000128691983, -0.0000514767932, \n    +0.0004892405063, +0.0011974683544, +0.0013135021097, +0.0002896624473, \n    -0.0003991561181, +0.0001223628692, -0.0004635021097, -0.0018090717300, \n    -0.0020474683544, -0.0019894514768, -0.0006630801688, +0.0015130801688, \n    +0.0018219409283, +0.0005407172996, -0.0005795358650, -0.0002833333333, \n    +0.0001867088608, -0.0003476793249, +0.0002962025316, +0.0007016877637, \n    +0.0000900843882, -0.0006888185654, -0.0018478902954, -0.0013006329114, \n    +0.0000580168776, +0.0014164556962, +0.0035540084388, +0.0032835443038, \n    +0.0010751054852, -0.0009012658228, -0.0028586497890, -0.0024658227848, \n    -0.0007919831224, -0.0002767932489, +0.0005537974684, +0.0010172995781, \n    +0.0006824894515, -0.0005343881857, -0.0009206751055, +0.0008305907173, \n    +0.0012940928270, +0.0004443037975, +0.0007082278481, +0.0002575949367, \n    +0.0000772151899, +0.0002575949367, +0.0000643459916, +0.0008949367089, \n    +0.0023563291139, +0.0011010548523, -0.0005729957806, +0.0008949367089, \n    +0.0011073839662, -0.0011396624473, -0.0018219409283, -0.0020023206751, \n    -0.0023242616034, -0.0004443037975, -0.0001223628692, -0.0000322784810, \n    +0.0019122362869, +0.0023113924051, +0.0002639240506, -0.0006373417722, \n    -0.0003734177215, -0.0009012658228, -0.0006888185654, +0.0006888185654, \n    +0.0011396624473, +0.0002061181435, -0.0000128691983, +0.0005343881857, \n    +0.0015516877637, +0.0027168776371, +0.0022018987342, -0.0000257383966, \n    +0.0001158227848, +0.0000580168776, -0.0023886075949, -0.0024466244726, \n    -0.0006759493671, +0.0001481012658, +0.0000128691983, +0.0003799578059, \n    +0.0014679324895, +0.0018799578059, +0.0010430379747, +0.0007854430380, \n    +0.0009658227848, +0.0005795358650, +0.0004763713080, +0.0005795358650, \n    +0.0010622362869, +0.0021890295359, +0.0012618143460, +0.0003282700422, \n    +0.0013778481013, +0.0009721518987, -0.0002381856540, +0.0002767932489, \n    +0.0000580168776, -0.0011010548523, -0.0001672995781, +0.0012489451477, \n    +0.0007468354430, +0.0000000000000, -0.0003476793249, -0.0000772151899, \n    +0.0009915611814, +0.0008755274262, +0.0008305907173, +0.0016997890295, \n    +0.0007082278481, -0.0004571729958, -0.0000128691983, +0.0011073839662, \n    +0.0017447257384, +0.0004571729958, +0.0002318565401, +0.0007082278481, \n    -0.0000128691983, +0.0006502109705, +0.0008111814346, -0.0003670886076, \n    -0.0004056962025, +0.0002962025316, -0.0003025316456, -0.0007662447257, \n    -0.0005215189873, -0.0007854430380, -0.0006244725738, +0.0004377637131, \n    +0.0005086497890, +0.0008369198312, +0.0017447257384, +0.0007597046414, \n    -0.0009915611814, -0.0018993670886, -0.0019829113924, -0.0006824894515, \n    +0.0005729957806, +0.0010430379747, +0.0008434599156, +0.0012103375527, \n    +0.0006824894515, -0.0008048523207, -0.0011202531646, -0.0014613924051, \n    -0.0019251054852, -0.0010622362869, -0.0000514767932, +0.0008691983122, \n    +0.0021696202532, +0.0014936708861, +0.0006888185654, -0.0002833333333, \n    -0.0006759493671, -0.0009012658228, -0.0006244725738, +0.0001158227848, \n    +0.0002575949367, -0.0004506329114, -0.0005021097046, +0.0001995780591, \n    +0.0003734177215, +0.0000386075949, -0.0011267932489, -0.0016675105485, \n    -0.0014744725738, -0.0008305907173, -0.0010044303797, -0.0001094936709, \n    +0.0007082278481, -0.0009786919831, -0.0017447257384, -0.0001801687764, \n    +0.0000837552743, -0.0012683544304, -0.0016289029536, -0.0009400843882, \n    +0.0002447257384, +0.0001094936709, -0.0005343881857, -0.0006630801688, \n    -0.0007725738397, -0.0013327004219, -0.0009206751055, +0.0003540084388, \n    +0.0004314345992, -0.0004506329114, -0.0007854430380, -0.0011588607595, \n    -0.0018993670886, -0.0014164556962, -0.0005215189873, +0.0000451476793, \n    +0.0002639240506, +0.0000837552743, +0.0001352320675, -0.0006116033755, \n    -0.0021567510549, -0.0021118143460, -0.0010559071730, -0.0000257383966, \n    +0.0003282700422, +0.0003991561181, +0.0012103375527, +0.0007145569620, \n    -0.0001286919831, +0.0004443037975, +0.0000643459916, -0.0011073839662, \n    -0.0019508438819, -0.0021052742616, -0.0014485232068, -0.0002962025316, \n    +0.0004571729958, -0.0000451476793, -0.0012812236287, -0.0012103375527, \n    -0.0000194092827, +0.0012618143460, +0.0019056962025, +0.0019185654008, \n    +0.0021504219409, +0.0014613924051, -0.0002189873418, -0.0011845991561, \n    -0.0003605485232, +0.0002318565401, +0.0004892405063, +0.0005987341772, \n    +0.0000451476793, -0.0010816455696, -0.0009272151899, -0.0004314345992, \n    -0.0003670886076, +0.0000837552743, +0.0010751054852, +0.0009400843882, \n    +0.0001223628692, +0.0001223628692, +0.0003862869198, +0.0009721518987, \n    +0.0014808016878, +0.0009141350211, +0.0000643459916, -0.0009206751055, \n    -0.0013327004219, -0.0007210970464, -0.0006630801688, -0.0003219409283, \n    +0.0002833333333, +0.0001672995781, +0.0000194092827, -0.0006310126582, \n    -0.0006567510549, +0.0011974683544, +0.0030902953586, +0.0025238396624, \n    +0.0006888185654, -0.0005666666667, -0.0011396624473, -0.0014164556962, \n    -0.0008048523207, -0.0001352320675, +0.0005795358650, +0.0013327004219, \n    +0.0007145569620, -0.0004314345992, -0.0000900843882, +0.0015388185654, \n    +0.0017383966245, +0.0007145569620, +0.0003862869198, -0.0001029535865, \n    -0.0001481012658, +0.0000580168776, -0.0002962025316, +0.0000900843882, \n    +0.0006567510549, -0.0001415611814, -0.0000580168776, +0.0003348101266, \n    +0.0001932489451, +0.0006824894515, +0.0010559071730, +0.0004120253165, \n    +0.0002767932489, +0.0000322784810, -0.0005666666667, -0.0009400843882, \n    -0.0009335443038, +0.0000837552743, +0.0008626582278, +0.0003411392405, \n    +0.0001672995781, +0.0011459915612, +0.0017189873418, +0.0012040084388, \n    +0.0007210970464, -0.0002704641350, -0.0011267932489, -0.0011073839662, \n    -0.0012297468354, -0.0009915611814, +0.0007597046414, +0.0021310126582, \n    +0.0015322784810, +0.0007854430380, +0.0002189873418, -0.0003991561181, \n    -0.0010172995781, -0.0010493670886, -0.0003799578059, +0.0007210970464, \n    +0.0009335443038, +0.0004635021097, +0.0002253164557, +0.0001801687764, \n    -0.0002189873418, -0.0003799578059, +0.0003476793249, +0.0007405063291, \n    +0.0006759493671, +0.0008111814346, +0.0010687763713, +0.0001029535865, \n    -0.0010493670886, -0.0006630801688, -0.0004314345992, -0.0007145569620, \n    -0.0000966244726, +0.0004377637131, -0.0003219409283, +0.0000451476793, \n    +0.0004763713080, -0.0006373417722, -0.0011588607595, -0.0003799578059, \n    +0.0001672995781, +0.0001286919831, -0.0001481012658, +0.0000772151899, \n    +0.0005021097046, +0.0000451476793, -0.0002253164557, +0.0001481012658, \n    +0.0002381856540, +0.0001932489451, +0.0003348101266, -0.0003090717300, \n    -0.0012812236287, -0.0011845991561, -0.0002704641350, -0.0003605485232, \n    -0.0003991561181, +0.0000580168776, -0.0003282700422, -0.0007854430380, \n    -0.0000643459916, +0.0004957805907, -0.0001029535865, -0.0007016877637, \n    -0.0002447257384, -0.0002318565401, -0.0010430379747, -0.0002704641350, \n    +0.0011845991561, +0.0016675105485, +0.0013907172996, +0.0005987341772, \n    +0.0002575949367, +0.0003219409283, -0.0005666666667, -0.0007725738397, \n    -0.0002575949367, -0.0005924050633, -0.0012232067511, -0.0012554852321, \n    -0.0010816455696, +0.0001158227848, +0.0012232067511, +0.0009078059072, \n    -0.0001481012658, -0.0001609704641, +0.0003928270042, +0.0000708860759, \n    -0.0008305907173, -0.0009786919831, -0.0007533755274, -0.0007854430380, \n    -0.0003862869198, +0.0000837552743, -0.0003154008439, -0.0005343881857, \n    +0.0001932489451, +0.0008048523207, +0.0003605485232, -0.0001481012658, \n    -0.0006502109705, -0.0007533755274, -0.0006953586498, -0.0002447257384, \n    +0.0001672995781, +0.0003799578059, +0.0005729957806, +0.0004185654008, \n    -0.0001801687764, +0.0000966244726, +0.0008305907173, +0.0006373417722, \n    -0.0000322784810, +0.0000837552743, +0.0001867088608, -0.0005149789030, \n    -0.0007405063291, -0.0004248945148, -0.0006310126582, -0.0000322784810, \n    +0.0006244725738, +0.0003991561181, +0.0003991561181, +0.0010044303797, \n    +0.0011073839662, +0.0008111814346, +0.0000900843882, -0.0005407172996, \n    -0.0008111814346, -0.0005537974684, -0.0004377637131, -0.0003219409283, \n    +0.0004443037975, +0.0009978902954, +0.0000514767932, -0.0007468354430, \n    +0.0002510548523, +0.0013392405063, +0.0009978902954, +0.0004957805907, \n    +0.0000966244726, +0.0001801687764, +0.0002639240506, -0.0000128691983, \n    +0.0002124472574, +0.0007339662447, +0.0002061181435, -0.0000580168776, \n    -0.0005858649789, -0.0016160337553, -0.0017383966245, -0.0003219409283, \n    +0.0005021097046, +0.0002447257384, +0.0000514767932, -0.0003734177215, \n    -0.0002767932489, +0.0002189873418, +0.0002189873418, -0.0000194092827, \n    +0.0000386075949, +0.0003605485232, +0.0005666666667, +0.0006438818565, \n    +0.0006116033755, +0.0005343881857, +0.0004377637131, +0.0006888185654, \n    +0.0001801687764, -0.0004571729958, -0.0004506329114, -0.0000322784810, \n    +0.0001094936709, -0.0001158227848, -0.0003540084388, -0.0003219409283, \n    +0.0000708860759, +0.0000708860759, -0.0004248945148, -0.0002189873418, \n    +0.0004443037975, -0.0001801687764, -0.0009786919831, -0.0004892405063, \n    +0.0003862869198, +0.0001223628692, -0.0003219409283, +0.0001738396624, \n    +0.0005795358650, +0.0004056962025, -0.0000194092827, -0.0004185654008, \n    -0.0005472573840, -0.0002767932489, -0.0001672995781, -0.0004957805907, \n    +0.0000065400844, +0.0004056962025, +0.0000128691983, -0.0005858649789, \n    -0.0010751054852, -0.0012360759494, -0.0001867088608, +0.0005343881857, \n    +0.0004763713080, +0.0003154008439, -0.0000257383966, -0.0004635021097, \n    -0.0008434599156, -0.0003540084388, +0.0008111814346, +0.0009078059072, \n    +0.0001544303797, -0.0004185654008, -0.0000966244726, +0.0001609704641, \n    -0.0003025316456, -0.0005278481013, -0.0003219409283, -0.0007597046414, \n    -0.0002447257384, +0.0000900843882, +0.0000386075949, +0.0005021097046, \n    +0.0006310126582, +0.0001481012658, +0.0001932489451, +0.0004506329114, \n    +0.0005278481013, +0.0003219409283, +0.0001415611814, -0.0002639240506, \n    -0.0003090717300, -0.0001029535865, -0.0001672995781, -0.0003282700422, \n    +0.0001738396624, +0.0000065400844, +0.0003025316456, +0.0006696202532, \n    +0.0004120253165, +0.0003154008439, +0.0002253164557, -0.0002124472574, \n    -0.0004829113924, -0.0006244725738, -0.0010687763713, -0.0015580168776, \n    -0.0006310126582, +0.0008691983122, +0.0018928270042, +0.0014679324895, \n    +0.0000772151899, -0.0001738396624, +0.0001932489451, -0.0011974683544, \n    -0.0019637130802, -0.0011525316456, +0.0002381856540, +0.0005924050633, \n    +0.0003605485232, +0.0002767932489, +0.0007533755274, +0.0011782700422, \n    +0.0011845991561, +0.0000900843882, -0.0016417721519, -0.0021890295359, \n    -0.0006759493671, +0.0000580168776, -0.0003411392405, -0.0003476793249, \n    +0.0002124472574, +0.0008497890295, +0.0007662447257, +0.0006244725738, \n    +0.0001158227848, -0.0002253164557, +0.0002833333333, -0.0004829113924, \n    -0.0012618143460, -0.0003862869198, +0.0005086497890, +0.0011459915612, \n    +0.0011139240506, -0.0003605485232, -0.0007210970464, -0.0003991561181, \n    -0.0001801687764, +0.0002124472574, +0.0003928270042, -0.0004571729958, \n    -0.0009850210970, +0.0002189873418, +0.0012103375527, +0.0007725738397, \n    -0.0000772151899, -0.0004571729958, +0.0004571729958, +0.0008949367089, \n    -0.0003991561181, -0.0011459915612, -0.0005472573840, -0.0002318565401, \n    +0.0001672995781, +0.0009978902954, +0.0010879746835, +0.0007919831224, \n    +0.0006630801688, +0.0003411392405, +0.0002061181435, +0.0005666666667, \n    -0.0000514767932, -0.0013327004219, -0.0009721518987, +0.0001867088608, \n    +0.0003154008439, -0.0000900843882, -0.0000900843882, +0.0005343881857, \n    +0.0003219409283, -0.0005987341772, -0.0006116033755, +0.0008434599156, \n    +0.0011073839662, +0.0002318565401, -0.0004056962025, -0.0005666666667, \n    -0.0005729957806, -0.0003090717300, -0.0001995780591, +0.0000708860759, \n    +0.0009658227848, +0.0014679324895, +0.0007662447257, +0.0000708860759, \n    +0.0005278481013, +0.0000900843882, -0.0013392405063, -0.0009206751055, \n    -0.0003928270042, -0.0008177215190, -0.0006824894515, +0.0003605485232, \n    +0.0000837552743, +0.0000065400844, -0.0001481012658, +0.0003991561181, \n    +0.0011267932489, +0.0011654008439, +0.0004571729958, -0.0007597046414, \n    -0.0026204641350, -0.0024080168776, -0.0005987341772, +0.0008048523207, \n    +0.0016094936709, +0.0017447257384, +0.0017575949367, +0.0012040084388, \n    +0.0005729957806, -0.0012618143460, -0.0027491561181, -0.0021118143460, \n    -0.0005924050633, -0.0001223628692, -0.0002767932489, -0.0000514767932, \n    +0.0002767932489, +0.0001738396624, -0.0004635021097, +0.0005086497890, \n    +0.0011073839662, +0.0009400843882, -0.0001094936709, -0.0006310126582, \n    -0.0011073839662, -0.0014679324895, -0.0000322784810, +0.0011396624473, \n    +0.0011459915612, +0.0006630801688, -0.0000322784810, +0.0001995780591, \n    +0.0001801687764, -0.0001094936709, -0.0003282700422, -0.0006567510549, \n    -0.0006116033755, +0.0000000000000, -0.0008177215190, -0.0013970464135, \n    -0.0014164556962, -0.0003670886076, +0.0007791139241, +0.0011202531646, \n    +0.0015130801688, +0.0011331223629, +0.0002253164557, -0.0002253164557, \n    +0.0002896624473, +0.0008820675105, +0.0005021097046, -0.0004829113924, \n    -0.0011525316456, -0.0015388185654, -0.0016352320675, -0.0008626582278, \n    +0.0003219409283, +0.0008111814346, +0.0000065400844, -0.0004443037975, \n    -0.0000966244726, +0.0008434599156, +0.0016031645570, +0.0008177215190, \n    +0.0000900843882, -0.0000772151899, -0.0005537974684, -0.0007405063291, \n    -0.0002510548523, -0.0005278481013, -0.0012554852321, -0.0007983122363, \n    +0.0004120253165, +0.0011588607595, +0.0015388185654, +0.0008434599156, \n    -0.0005537974684, -0.0009012658228, -0.0007725738397, +0.0001995780591, \n    +0.0015322784810, +0.0005858649789, -0.0004185654008, +0.0004185654008, \n    +0.0010301687764, +0.0006310126582, -0.0003219409283, -0.0008497890295, \n    -0.0004443037975, +0.0000514767932, -0.0000451476793, -0.0002833333333, \n    -0.0000772151899, +0.0002704641350, +0.0001609704641, -0.0005537974684, \n    +0.0002318565401, +0.0018670886076, +0.0020345991561, -0.0004314345992, \n    -0.0025559071730, -0.0023951476793, -0.0005215189873, +0.0003282700422, \n    +0.0000000000000, -0.0007791139241, -0.0007919831224, -0.0001481012658, \n    +0.0002704641350, +0.0006181434599, +0.0009978902954, +0.0007854430380, \n    +0.0012877637131, +0.0020345991561, +0.0014164556962, +0.0002896624473, \n    +0.0001481012658, +0.0005987341772, +0.0007082278481, -0.0004443037975, \n    -0.0019571729958, -0.0021890295359, -0.0017641350211, -0.0024466244726, \n    -0.0021438818565, -0.0007791139241, +0.0003605485232, +0.0010430379747, \n    +0.0015902953586, +0.0021953586498, +0.0028907172996, +0.0027297468354, \n    +0.0019122362869, +0.0008048523207, +0.0000386075949, -0.0012812236287, \n    -0.0031097046414, -0.0034251054852, -0.0014293248945, +0.0003090717300, \n    +0.0009464135021, +0.0000837552743, -0.0008177215190, -0.0011782700422, \n    -0.0012940928270, -0.0007016877637, +0.0008305907173, +0.0018864978903, \n    +0.0014485232068, +0.0001544303797, -0.0002962025316, +0.0001738396624, \n    +0.0003862869198, +0.0006696202532, +0.0009335443038, +0.0007791139241, \n    -0.0003154008439, -0.0015645569620, -0.0013198312236, -0.0011654008439, \n    -0.0013263713080, -0.0002318565401, +0.0012168776371, +0.0018993670886, \n    +0.0020151898734, +0.0011331223629, +0.0002061181435, -0.0002447257384, \n    +0.0001223628692, +0.0009978902954, +0.0006824894515, -0.0008305907173, \n    -0.0024143459916, -0.0026654008439, -0.0019508438819, -0.0004957805907, \n    +0.0011654008439, +0.0017318565401, +0.0000194092827, -0.0015774261603, \n    +0.0001932489451, +0.0039531645570, +0.0044938818565, +0.0007725738397, \n    -0.0017962025316, -0.0022213080169, -0.0021181434599, -0.0005987341772, \n    +0.0005215189873, +0.0001352320675, -0.0006116033755, -0.0016094936709, \n    -0.0019251054852, -0.0003476793249, +0.0006373417722, +0.0007145569620, \n    +0.0013649789030, +0.0031677215190, +0.0032320675105, +0.0024658227848, \n    +0.0017704641350, +0.0001481012658, -0.0010044303797, -0.0008626582278, \n    -0.0008691983122, -0.0003282700422, -0.0002253164557, -0.0015774261603, \n    -0.0008305907173, +0.0007919831224, +0.0004635021097, +0.0001738396624, \n    +0.0010301687764, +0.0012103375527, +0.0004829113924, +0.0000514767932, \n    +0.0001672995781, +0.0005666666667, -0.0004377637131, -0.0018090717300, \n    -0.0017833333333, -0.0011331223629, -0.0014808016878, -0.0007791139241, \n    +0.0009272151899, +0.0026782700422, +0.0020474683544, -0.0002639240506, \n    -0.0009850210970, -0.0005021097046, -0.0004506329114, -0.0004185654008, \n    +0.0001286919831, +0.0015259493671, +0.0018864978903, +0.0008691983122, \n    -0.0005537974684, -0.0020924050633, -0.0022147679325, -0.0012618143460, \n    -0.0004185654008, +0.0010816455696, +0.0021310126582, +0.0005858649789, \n    -0.0008434599156, -0.0001738396624, +0.0003282700422, +0.0000966244726, \n    +0.0005149789030, +0.0012168776371, +0.0009658227848, +0.0000514767932, \n    -0.0006696202532, -0.0008691983122, -0.0006373417722, -0.0002510548523, \n    +0.0000194092827, +0.0000837552743, -0.0008883966245, -0.0017383966245, \n    -0.0009012658228, -0.0000451476793, +0.0005278481013, +0.0018350210970, \n    +0.0026525316456, +0.0015130801688, +0.0003282700422, -0.0004443037975, \n    -0.0009915611814, -0.0016094936709, -0.0015451476793, -0.0001738396624, \n    +0.0008434599156, +0.0003411392405, -0.0000900843882, -0.0004829113924, \n    -0.0009141350211, -0.0007082278481, -0.0007919831224, -0.0010816455696, \n    -0.0005278481013, +0.0007662447257, +0.0008563291139, -0.0003411392405, \n    -0.0004248945148, -0.0003025316456, -0.0009850210970, -0.0007016877637, \n    +0.0008369198312, +0.0013069620253, +0.0010301687764, +0.0010107594937, \n    +0.0009400843882, -0.0006373417722, -0.0022276371308, -0.0018928270042, \n    -0.0006502109705, +0.0000643459916, -0.0005278481013, -0.0011654008439, \n    +0.0000194092827, +0.0011396624473, +0.0007791139241, -0.0003605485232, \n    -0.0008949367089, -0.0006310126582, -0.0002575949367, +0.0004957805907, \n    +0.0018542194093, +0.0021696202532, +0.0006630801688, -0.0022213080169, \n    -0.0027748945148, -0.0005987341772, +0.0007983122363, +0.0007791139241, \n    +0.0000000000000, -0.0003154008439, +0.0002381856540, +0.0001995780591, \n    -0.0003734177215, -0.0008883966245, -0.0015388185654, -0.0013135021097, \n    +0.0003734177215, +0.0011396624473, +0.0000772151899, -0.0007016877637, \n    -0.0008369198312, -0.0009206751055, -0.0007468354430, -0.0001609704641, \n    +0.0013392405063, +0.0024981012658, +0.0019765822785, +0.0008755274262, \n    -0.0003282700422, -0.0010107594937, -0.0003670886076, +0.0006759493671, \n    +0.0003670886076, -0.0000322784810, +0.0002767932489, +0.0001738396624, \n    +0.0000386075949, +0.0000772151899, -0.0000128691983, -0.0000322784810, \n    +0.0001094936709, +0.0003670886076, +0.0004635021097, +0.0006824894515, \n    +0.0009529535865, +0.0004829113924, -0.0003025316456, -0.0006759493671, \n    -0.0005086497890, -0.0000580168776, +0.0003734177215, +0.0014936708861, \n    +0.0016031645570, +0.0007662447257, +0.0004443037975, +0.0004056962025, \n    +0.0003670886076, +0.0004892405063, +0.0005021097046, -0.0000772151899, \n    -0.0012360759494, -0.0009400843882, +0.0001672995781, -0.0002253164557, \n    -0.0006244725738, +0.0001481012658, +0.0005215189873, +0.0003411392405, \n    +0.0003991561181, +0.0002704641350, -0.0000514767932, +0.0003411392405, \n    +0.0010044303797, +0.0010236286920, +0.0001352320675, -0.0004957805907, \n    -0.0000514767932, +0.0005795358650, +0.0002253164557, -0.0003734177215, \n    -0.0003605485232, +0.0001932489451, +0.0004763713080, +0.0003670886076, \n    -0.0003605485232, -0.0011525316456, -0.0009464135021, +0.0000000000000, \n    +0.0003605485232, -0.0001029535865, -0.0001609704641, +0.0000000000000, \n    -0.0000322784810, +0.0000386075949, -0.0001672995781, -0.0009915611814, \n    -0.0011654008439, -0.0010622362869, -0.0007405063291, -0.0004120253165, \n    +0.0002381856540, +0.0010172995781, +0.0010044303797, -0.0000065400844, \n    -0.0007725738397, -0.0005215189873, -0.0003154008439, -0.0003025316456, \n    +0.0005278481013, +0.0007210970464, -0.0003476793249, -0.0009978902954, \n    -0.0014550632911, -0.0016611814346, -0.0010364978903, -0.0004185654008, \n    +0.0001415611814, +0.0003476793249, +0.0004957805907, +0.0008177215190, \n    +0.0000257383966, -0.0010172995781, -0.0002833333333, +0.0003928270042, \n    +0.0004120253165, +0.0005666666667, +0.0004377637131, +0.0000128691983, \n    +0.0000514767932, +0.0004185654008, +0.0005601265823, -0.0001801687764, \n    -0.0005924050633, +0.0000837552743, +0.0004763713080, +0.0000514767932, \n    -0.0001867088608, -0.0003862869198, +0.0000194092827, +0.0006502109705, \n    +0.0002447257384, +0.0004377637131, +0.0013327004219, +0.0010107594937, \n    -0.0001223628692, -0.0012103375527, -0.0013521097046, -0.0011525316456, \n    -0.0011588607595, -0.0002318565401, +0.0007533755274, +0.0006310126582, \n    +0.0001995780591, +0.0000900843882, -0.0001738396624, -0.0006116033755, \n    -0.0005537974684, -0.0001223628692, +0.0001867088608, +0.0004120253165, \n    -0.0000514767932, -0.0007597046414, -0.0009592827004, -0.0009141350211, \n    -0.0002962025316, +0.0003219409283, +0.0003090717300, +0.0003991561181, \n    +0.0003476793249, -0.0002833333333, -0.0002575949367, +0.0005407172996, \n    +0.0008626582278, +0.0007145569620, +0.0003411392405, -0.0001609704641, \n    -0.0006438818565, -0.0001415611814, +0.0001801687764, -0.0002124472574, \n    -0.0002767932489, -0.0000065400844, +0.0000708860759, +0.0007210970464, \n    +0.0008497890295, +0.0004377637131, +0.0002639240506, +0.0001029535865, \n    -0.0002962025316, -0.0007274261603, -0.0004314345992, +0.0006567510549, \n    +0.0008434599156, +0.0000966244726, -0.0002318565401, -0.0000966244726, \n    -0.0003154008439, -0.0000194092827, +0.0004763713080, +0.0003090717300, \n    +0.0002896624473, +0.0006438818565, +0.0004120253165, +0.0000643459916, \n    +0.0000451476793, +0.0000580168776, -0.0004248945148, -0.0004957805907, \n    +0.0005666666667, +0.0008883966245, -0.0002639240506, -0.0003282700422, \n    +0.0001158227848, +0.0001609704641, -0.0000451476793, +0.0000837552743, \n    +0.0004571729958, +0.0001995780591, -0.0004957805907, -0.0003928270042, \n    +0.0000000000000, +0.0001158227848, -0.0001867088608, -0.0004443037975, \n    -0.0003282700422, -0.0003799578059, -0.0000966244726, +0.0003219409283, \n    +0.0003348101266, +0.0000194092827, -0.0003282700422, -0.0003670886076, \n    -0.0001223628692, +0.0000708860759, +0.0007210970464, +0.0008111814346, \n    -0.0005343881857, -0.0015966244726, -0.0013263713080, -0.0008755274262, \n    -0.0005858649789, -0.0000257383966, +0.0006630801688, +0.0007854430380, \n    +0.0006502109705, +0.0005149789030, +0.0005149789030, +0.0001158227848, \n    -0.0005086497890, -0.0006888185654, -0.0003862869198, -0.0004185654008, \n    -0.0004443037975, -0.0002124472574, +0.0005086497890, +0.0006373417722, \n    -0.0003540084388, -0.0002639240506, +0.0013778481013, +0.0015194092827, \n    +0.0001609704641, -0.0004120253165, -0.0000128691983, -0.0002639240506, \n    -0.0006888185654, -0.0006696202532, -0.0006244725738, -0.0010107594937, \n    -0.0007405063291, +0.0003540084388, +0.0012940928270, +0.0010301687764, \n    +0.0005021097046, -0.0000257383966, -0.0003991561181, -0.0002318565401, \n    +0.0004892405063, +0.0007533755274, +0.0003411392405, -0.0004314345992, \n    -0.0007339662447, +0.0001738396624, +0.0009978902954, +0.0008434599156, \n    +0.0001029535865, -0.0009012658228, -0.0012746835443, -0.0010559071730, \n    -0.0005666666667, +0.0003348101266, +0.0003670886076, -0.0001801687764, \n    -0.0001158227848, +0.0001481012658, +0.0006310126582, +0.0008369198312, \n    +0.0006759493671, +0.0009141350211, +0.0011588607595, +0.0008305907173, \n    +0.0000000000000, -0.0003862869198, -0.0002318565401, -0.0002896624473, \n    -0.0007210970464, -0.0006953586498, -0.0002833333333, +0.0003476793249, \n    +0.0004571729958, +0.0000322784810, -0.0003282700422, -0.0001415611814, \n    +0.0004957805907, +0.0011911392405, +0.0009915611814, +0.0004443037975, \n    -0.0001544303797, -0.0000514767932, +0.0004377637131, +0.0001158227848, \n    -0.0004248945148, +0.0003282700422, +0.0007016877637, +0.0001352320675, \n    -0.0002253164557, +0.0003862869198, +0.0012877637131, +0.0011396624473, \n    +0.0003282700422, +0.0000900843882, -0.0003411392405, -0.0006438818565, \n    -0.0007533755274, -0.0009786919831, -0.0005924050633, +0.0002575949367, \n    +0.0004700421941, +0.0003282700422, +0.0004314345992, +0.0005795358650, \n    -0.0001223628692, -0.0009978902954, -0.0010044303797, -0.0002767932489, \n    +0.0008369198312, +0.0011845991561, +0.0007016877637, +0.0001867088608, \n    -0.0002896624473, -0.0001029535865, +0.0003154008439, -0.0001223628692, \n    -0.0004829113924, -0.0003734177215, -0.0006116033755, -0.0007339662447, \n    -0.0002189873418, -0.0000772151899, -0.0005407172996, -0.0001995780591, \n    +0.0002124472574, +0.0000000000000, +0.0005278481013, +0.0013455696203, \n    +0.0012168776371, +0.0003670886076, +0.0001029535865, +0.0003154008439, \n    +0.0000322784810, -0.0005021097046, -0.0004892405063, -0.0004377637131, \n    -0.0003348101266, -0.0004829113924, -0.0005407172996, -0.0004957805907, \n    -0.0006567510549, -0.0005537974684, -0.0001352320675, +0.0005215189873, \n    +0.0014485232068, +0.0007145569620, -0.0005666666667, -0.0007016877637, \n    -0.0003605485232, -0.0002447257384, +0.0000386075949, -0.0000708860759, \n    -0.0005407172996, -0.0006824894515, -0.0003025316456, -0.0004248945148, \n    -0.0004443037975, -0.0002061181435, -0.0000837552743, -0.0002189873418, \n    -0.0003025316456, -0.0000643459916, +0.0002189873418, +0.0001995780591, \n    +0.0002510548523, +0.0002061181435, -0.0003411392405, -0.0012554852321, \n    -0.0011717299578, -0.0005537974684, +0.0000322784810, +0.0009206751055, \n    +0.0012554852321, +0.0007983122363, +0.0002061181435, -0.0003991561181, \n    -0.0007597046414, -0.0006630801688, -0.0002833333333, +0.0000128691983, \n    +0.0004700421941, +0.0005537974684, +0.0000772151899, -0.0001801687764, \n    -0.0003154008439, -0.0004571729958, -0.0001544303797, +0.0000386075949, \n    +0.0001223628692, +0.0005278481013, +0.0005472573840, +0.0003282700422, \n    +0.0001738396624, +0.0000772151899, -0.0000128691983, +0.0002575949367, \n    +0.0002318565401, -0.0000900843882, -0.0004957805907, -0.0005472573840, \n    -0.0004248945148, -0.0001738396624, +0.0003282700422, +0.0006438818565, \n    +0.0000000000000, -0.0002189873418, -0.0001932489451, -0.0005666666667, \n    -0.0005343881857, +0.0001094936709, +0.0003928270042, +0.0001286919831, \n    +0.0000322784810, +0.0004377637131, -0.0001094936709, -0.0005729957806, \n    +0.0000386075949, +0.0005795358650, +0.0000643459916, -0.0003862869198, \n    -0.0004635021097, -0.0005343881857, -0.0008820675105, -0.0009400843882, \n    -0.0003991561181, +0.0000322784810, -0.0001801687764, -0.0001995780591, \n    +0.0006116033755, +0.0012683544304, +0.0007725738397, -0.0001544303797, \n    -0.0003862869198, -0.0000966244726, -0.0005278481013, -0.0008755274262, \n    -0.0004571729958, +0.0000900843882, +0.0003928270042, +0.0002962025316, \n    -0.0000772151899, +0.0001029535865, +0.0007405063291, +0.0007210970464, \n    +0.0002381856540, -0.0005858649789, -0.0008820675105, -0.0004056962025, \n    +0.0001158227848, +0.0004763713080, +0.0004571729958, -0.0002189873418, \n    -0.0004185654008, +0.0000451476793, +0.0004377637131, +0.0004829113924, \n    +0.0006116033755, +0.0008691983122, +0.0007339662447, -0.0000837552743, \n    -0.0005666666667, -0.0004763713080, +0.0000772151899, +0.0006181434599, \n    +0.0009721518987, +0.0006759493671, -0.0000322784810, -0.0002447257384, \n    +0.0005343881857, +0.0007274261603, +0.0002639240506, -0.0000386075949, \n    +0.0001094936709, +0.0001738396624, +0.0000257383966, -0.0000643459916, \n    +0.0000643459916, -0.0000772151899, -0.0001352320675, -0.0001738396624, \n    +0.0000128691983, +0.0002639240506, -0.0000643459916, -0.0007533755274, \n    -0.0006116033755, +0.0004377637131, +0.0009915611814, +0.0006824894515, \n    +0.0006373417722, +0.0006824894515, +0.0004957805907, +0.0001544303797, \n    -0.0005021097046, -0.0008755274262, -0.0006181434599, -0.0005086497890, \n    -0.0003670886076, +0.0000772151899, +0.0007405063291, +0.0011717299578, \n    +0.0009141350211, +0.0002704641350, -0.0004185654008, -0.0009012658228, \n    -0.0012040084388, -0.0010687763713, -0.0005086497890, +0.0001158227848, \n    +0.0002124472574, +0.0001352320675, -0.0001995780591, -0.0002061181435, \n    -0.0000257383966, -0.0000065400844, +0.0003025316456, +0.0008434599156, \n    +0.0005086497890, +0.0001932489451, -0.0000772151899, -0.0004763713080, \n    -0.0005858649789, -0.0006116033755, -0.0008177215190, -0.0002061181435, \n    +0.0006373417722, +0.0009978902954, +0.0007210970464, +0.0003540084388, \n    -0.0001672995781, -0.0004056962025, -0.0003025316456, +0.0000065400844, \n    +0.0002381856540, +0.0001801687764, -0.0003219409283, -0.0002833333333, \n    +0.0003540084388, +0.0003862869198, -0.0003928270042, -0.0008369198312, \n    -0.0004763713080, -0.0000451476793, +0.0003282700422, +0.0009272151899, \n    +0.0011459915612, +0.0009786919831, +0.0004892405063, -0.0005407172996, \n    -0.0013455696203, -0.0013778481013, -0.0008434599156, -0.0000643459916, \n    +0.0004700421941, +0.0008111814346, +0.0009592827004, +0.0008563291139, \n    +0.0004185654008, -0.0003411392405, -0.0008626582278, -0.0009272151899, \n    -0.0007210970464, -0.0005666666667, -0.0002896624473, +0.0000257383966, \n    +0.0002510548523, +0.0003154008439, +0.0004443037975, +0.0003862869198, \n    +0.0004829113924, +0.0003348101266, -0.0000708860759, -0.0004700421941, \n    -0.0003348101266, -0.0000966244726, -0.0002189873418, -0.0006244725738, \n    -0.0007983122363, -0.0007919831224, -0.0000065400844, +0.0008048523207, \n    +0.0009721518987, +0.0005729957806, +0.0002704641350, +0.0002124472574, \n    +0.0001867088608, -0.0002833333333, -0.0003282700422, +0.0000000000000, \n    -0.0001223628692, -0.0006116033755, -0.0007725738397, -0.0005343881857, \n    +0.0000837552743, +0.0004829113924, +0.0008820675105, +0.0008949367089, \n    +0.0003090717300, +0.0000580168776, +0.0002447257384, +0.0001481012658, \n    +0.0002189873418, +0.0001867088608, -0.0001995780591, -0.0005343881857, \n    -0.0008949367089, -0.0010751054852, -0.0005278481013, +0.0002896624473, \n    +0.0004892405063, +0.0005987341772, +0.0008240506329, +0.0006696202532, \n    +0.0001544303797, -0.0001223628692, -0.0000837552743, +0.0003540084388, \n    +0.0004957805907, -0.0000837552743, -0.0005666666667, -0.0001867088608, \n    -0.0003799578059, -0.0005924050633, -0.0000322784810, -0.0001481012658, \n    -0.0008177215190, -0.0003540084388, +0.0004763713080, +0.0008691983122, \n    +0.0003862869198, -0.0003090717300, -0.0006438818565, -0.0005278481013, \n    -0.0002575949367, +0.0001158227848, +0.0001672995781, +0.0001352320675, \n    +0.0002124472574, +0.0001544303797, -0.0002510548523, -0.0004314345992, \n    -0.0003090717300, -0.0000065400844, -0.0001672995781, -0.0003348101266, \n    -0.0000514767932, +0.0002381856540, +0.0002061181435, +0.0001029535865, \n    -0.0001867088608, -0.0006373417722, -0.0008883966245, -0.0003154008439, \n    +0.0001995780591, +0.0002896624473, +0.0005343881857, +0.0004120253165, \n    -0.0000386075949, -0.0001609704641, -0.0001223628692, -0.0001223628692, \n    -0.0000580168776, +0.0000451476793, +0.0004248945148, +0.0004635021097, \n    +0.0001672995781, -0.0002833333333, -0.0006181434599, -0.0007662447257, \n    -0.0007983122363, -0.0004571729958, +0.0004314345992, +0.0009915611814, \n    +0.0008949367089, +0.0005086497890, -0.0001352320675, -0.0008883966245, \n    -0.0007468354430, -0.0001544303797, +0.0005343881857, +0.0007016877637, \n    +0.0003476793249, +0.0000322784810, -0.0001223628692, -0.0006244725738, \n    -0.0008177215190, -0.0006502109705, -0.0002447257384, +0.0001352320675, \n    +0.0006116033755, +0.0007405063291, +0.0005472573840, -0.0000065400844, \n    -0.0008369198312, -0.0015002109705, -0.0011782700422, -0.0002381856540, \n    +0.0003670886076, +0.0002767932489, +0.0003862869198, +0.0005472573840, \n    +0.0001352320675, -0.0004571729958, -0.0005858649789, -0.0001223628692, \n    -0.0001801687764, -0.0006567510549, -0.0004120253165, +0.0002639240506, \n    +0.0004829113924, +0.0002253164557, +0.0000837552743, +0.0001995780591, \n    -0.0002124472574, -0.0008111814346, -0.0005149789030, +0.0006310126582, \n    +0.0014808016878, +0.0013907172996, +0.0008369198312, +0.0002767932489, \n    -0.0003219409283, -0.0003670886076, -0.0002061181435, -0.0003090717300, \n    -0.0003154008439, +0.0001738396624, +0.0004892405063, +0.0004763713080, \n    +0.0003025316456, -0.0000194092827, -0.0004120253165, -0.0000708860759, \n    +0.0002896624473, +0.0005086497890, +0.0007854430380, +0.0009592827004, \n    +0.0007983122363, +0.0007210970464, +0.0003154008439, -0.0000900843882, \n    -0.0001801687764, -0.0000643459916, -0.0002124472574, -0.0001995780591, \n    +0.0000837552743, +0.0004185654008, +0.0005924050633, +0.0003090717300, \n    -0.0002639240506, -0.0004185654008, -0.0003928270042, -0.0003991561181, \n    +0.0001286919831, +0.0009786919831, +0.0011331223629, +0.0008305907173, \n    +0.0004635021097, -0.0001286919831, -0.0008369198312, -0.0011331223629, \n    -0.0008883966245, -0.0003282700422, +0.0001481012658, +0.0000900843882, \n    +0.0000194092827, +0.0002575949367, +0.0001094936709, -0.0002124472574, \n    -0.0002189873418, -0.0005472573840, -0.0005021097046, +0.0003090717300, \n    +0.0014035864979, +0.0016740506329, +0.0005795358650, -0.0005729957806, \n    -0.0001932489451, +0.0000708860759, -0.0004829113924, -0.0009400843882, \n    -0.0004700421941, +0.0006116033755, +0.0013907172996, +0.0007468354430, \n    -0.0003862869198, -0.0009721518987, -0.0007662447257, -0.0000451476793, \n    +0.0007339662447, +0.0007791139241, +0.0003090717300, -0.0001932489451, \n    -0.0001544303797, -0.0004377637131, -0.0006181434599, +0.0005729957806, \n    +0.0017833333333, +0.0013327004219, +0.0003928270042, +0.0002510548523, \n    +0.0003154008439, +0.0000514767932, -0.0004892405063, -0.0004829113924, \n    -0.0001609704641, -0.0005021097046, -0.0009141350211, -0.0000386075949, \n    +0.0013135021097, +0.0011267932489, -0.0001481012658, -0.0006888185654, \n    -0.0009078059072, -0.0007597046414, +0.0000194092827, +0.0002575949367, \n    +0.0002189873418, +0.0006696202532, +0.0006953586498, -0.0000194092827, \n    -0.0013135021097, -0.0018219409283, -0.0004506329114, +0.0009464135021, \n    +0.0000194092827, -0.0012554852321, -0.0009464135021, +0.0000000000000, \n    +0.0002189873418, +0.0000128691983, -0.0003219409283, -0.0003540084388, \n    -0.0004763713080, -0.0003799578059, -0.0001801687764, -0.0000580168776, \n    -0.0001223628692, +0.0000000000000, -0.0001158227848, -0.0002061181435, \n    -0.0004957805907, -0.0004377637131, -0.0000966244726, +0.0003605485232, \n    +0.0003348101266, -0.0007983122363, -0.0016223628692, -0.0008048523207, \n    -0.0000128691983, +0.0001481012658, +0.0004571729958, +0.0000000000000, \n    -0.0008755274262, -0.0009335443038, -0.0005987341772, -0.0008626582278, \n    -0.0008177215190, +0.0000772151899, +0.0014873417722, +0.0019443037975, \n    +0.0010236286920, -0.0003025316456, -0.0004763713080, -0.0000322784810, \n    +0.0004248945148, +0.0008755274262, +0.0009335443038, +0.0005215189873, \n    -0.0000257383966, -0.0007854430380, -0.0011010548523, -0.0005537974684, \n    +0.0002510548523, +0.0003734177215, -0.0000386075949, -0.0002575949367, \n    -0.0001995780591, +0.0000000000000, +0.0007339662447, +0.0010622362869, \n    +0.0008177215190, +0.0001544303797, -0.0006567510549, -0.0010107594937, \n    -0.0004829113924, +0.0000772151899, +0.0001609704641, -0.0000128691983, \n    -0.0000580168776, -0.0002447257384, -0.0006310126582, -0.0008497890295, \n    -0.0008177215190, -0.0003991561181, +0.0003540084388, +0.0005472573840, \n    +0.0001801687764, +0.0002318565401, +0.0006696202532, +0.0005343881857, \n    -0.0001544303797, -0.0006052742616, -0.0005729957806, -0.0004120253165, \n    -0.0004120253165, -0.0003799578059, -0.0002510548523, +0.0002767932489, \n    +0.0007145569620, +0.0010364978903, +0.0010816455696, +0.0006502109705, \n    +0.0002061181435, +0.0000900843882, -0.0002510548523, -0.0001995780591, \n    +0.0000257383966, -0.0001352320675, -0.0001286919831, +0.0002639240506, \n    +0.0002447257384, -0.0000322784810, +0.0001286919831, +0.0002962025316, \n    -0.0001609704641, +0.0000386075949, +0.0005278481013, +0.0004377637131, \n    +0.0002381856540, +0.0002896624473, +0.0003799578059, +0.0008434599156, \n    +0.0005086497890, -0.0004185654008, -0.0005086497890, +0.0000643459916, \n    +0.0000000000000, -0.0004248945148, -0.0003991561181, -0.0002833333333, \n    -0.0003799578059, -0.0003154008439, +0.0000128691983, +0.0003348101266, \n    +0.0006888185654, +0.0009721518987, +0.0010751054852, +0.0009978902954, \n    +0.0005537974684, -0.0000900843882, +0.0000065400844, +0.0001867088608, \n    -0.0004185654008, -0.0008240506329, -0.0001867088608, +0.0002896624473, \n    +0.0001158227848, -0.0004700421941, -0.0007725738397, -0.0004314345992, \n    +0.0001223628692, +0.0000128691983, -0.0000580168776, +0.0003219409283, \n    +0.0005795358650, +0.0001352320675, -0.0002447257384, -0.0003670886076, \n    -0.0001094936709, +0.0002447257384, +0.0000514767932, -0.0000257383966, \n    +0.0007016877637, +0.0008563291139, +0.0003411392405, +0.0001286919831, \n    +0.0002510548523, +0.0002124472574, -0.0002704641350, -0.0012360759494, \n    -0.0013198312236, -0.0001801687764, +0.0009335443038, +0.0010493670886, \n    +0.0005149789030, -0.0000194092827, -0.0001738396624, -0.0003282700422, \n    -0.0003605485232, +0.0004248945148, +0.0011267932489, +0.0010364978903, \n    +0.0005987341772, +0.0002510548523, -0.0002575949367, -0.0004571729958, \n    -0.0002447257384, -0.0001352320675, -0.0005472573840, -0.0006310126582, \n    -0.0002447257384, +0.0000580168776, -0.0001481012658, -0.0001672995781, \n    -0.0000386075949, -0.0001352320675, -0.0006373417722, -0.0007597046414, \n    -0.0004443037975, -0.0000580168776, +0.0000386075949, +0.0002061181435, \n    +0.0003282700422, +0.0006310126582, +0.0007662447257, +0.0002704641350, \n    -0.0004443037975, -0.0005407172996, -0.0006696202532, -0.0008883966245, \n    -0.0006567510549, +0.0000000000000, +0.0007016877637, +0.0010107594937, \n    +0.0005472573840, -0.0002253164557, -0.0009658227848, -0.0013263713080, \n    -0.0008949367089, +0.0001286919831, +0.0008755274262, +0.0010816455696, \n    +0.0008883966245, +0.0001223628692, -0.0004377637131, -0.0003154008439, \n    -0.0001415611814, -0.0003991561181, -0.0004571729958, -0.0004248945148, \n    -0.0004314345992, -0.0003025316456, +0.0002510548523, +0.0005472573840, \n    +0.0006502109705, +0.0002962025316, -0.0003670886076, -0.0005987341772, \n    -0.0001223628692, +0.0001544303797, +0.0000386075949, -0.0004957805907, \n    -0.0006824894515, -0.0004443037975, +0.0000322784810, +0.0003799578059, \n    +0.0005472573840, +0.0004571729958, +0.0005407172996, +0.0003991561181, \n    +0.0003282700422, +0.0001672995781, -0.0002510548523, -0.0005729957806, \n    -0.0004506329114, -0.0001995780591, +0.0000386075949, +0.0000708860759, \n    +0.0000386075949, -0.0000386075949, +0.0000580168776, +0.0000708860759, \n    +0.0000900843882, +0.0006438818565, +0.0010430379747, +0.0006438818565, \n    -0.0000580168776, -0.0004829113924, -0.0004635021097, -0.0002639240506, \n    -0.0001867088608, -0.0001352320675, -0.0003411392405, -0.0004443037975, \n    -0.0007082278481, -0.0005472573840, +0.0003411392405, +0.0010301687764, \n    +0.0009012658228, +0.0003862869198, -0.0002318565401, -0.0002767932489, \n    -0.0000643459916, +0.0001932489451, +0.0001932489451, -0.0001094936709, \n    -0.0004506329114, -0.0003025316456, -0.0000065400844, +0.0002124472574, \n    -0.0000708860759, -0.0001932489451, -0.0000451476793, +0.0003928270042, \n    +0.0005666666667, +0.0001544303797, -0.0001801687764, +0.0003154008439, \n    +0.0003799578059, -0.0002381856540, -0.0005795358650, -0.0004120253165, \n    -0.0002704641350, -0.0000257383966, +0.0004314345992, +0.0006502109705, \n    +0.0005021097046, +0.0002124472574, -0.0001995780591, -0.0005149789030, \n    -0.0001481012658, +0.0003540084388, +0.0002896624473, -0.0001352320675, \n    -0.0002896624473, -0.0003219409283, -0.0005987341772, -0.0008949367089, \n    -0.0005924050633, -0.0000772151899, +0.0002447257384, +0.0004314345992, \n    +0.0006310126582, +0.0003219409283, -0.0001544303797, -0.0003411392405, \n    +0.0001932489451, +0.0004248945148, +0.0002767932489, -0.0000194092827, \n    -0.0001352320675, -0.0004443037975, -0.0006630801688, -0.0004377637131, \n    +0.0000708860759, +0.0002510548523, +0.0003411392405, +0.0001223628692, \n    -0.0000322784810, +0.0001415611814, +0.0003799578059, +0.0004571729958, \n    +0.0004185654008, +0.0000580168776, -0.0002639240506, -0.0004185654008, \n    -0.0002061181435, -0.0001223628692, -0.0002189873418, +0.0000000000000, \n    +0.0001801687764, +0.0002124472574, +0.0001672995781, +0.0000065400844, \n    -0.0001158227848, -0.0001609704641, -0.0003670886076, -0.0001672995781, \n    +0.0000643459916, -0.0001609704641, -0.0004248945148, -0.0001352320675, \n    +0.0001158227848, +0.0001286919831, -0.0000643459916, -0.0000580168776, \n    +0.0000772151899, -0.0000257383966, -0.0004443037975, -0.0003799578059, \n    -0.0002318565401, +0.0001094936709, +0.0002962025316, +0.0000580168776, \n    -0.0000900843882, +0.0001867088608, +0.0000580168776, -0.0002124472574, \n    -0.0002189873418, +0.0000643459916, +0.0001481012658, +0.0002447257384, \n    +0.0003090717300, +0.0000708860759, -0.0002124472574, -0.0003862869198, \n    -0.0007210970464, -0.0006438818565, -0.0001094936709, -0.0000194092827, \n    -0.0003605485232, -0.0003476793249, +0.0002767932489, +0.0007210970464, \n    +0.0006052742616, +0.0002575949367, -0.0000065400844, -0.0003282700422, \n    -0.0004957805907, -0.0003540084388, +0.0001544303797, +0.0005601265823, \n    +0.0007210970464, +0.0004763713080, +0.0000966244726, -0.0001672995781, \n    -0.0000386075949, -0.0000772151899, -0.0004056962025, -0.0007533755274, \n    -0.0004377637131, +0.0001609704641, +0.0005472573840, +0.0004506329114, \n    +0.0002575949367, -0.0000322784810, -0.0000580168776, +0.0002189873418, \n    +0.0003476793249, -0.0001481012658, -0.0004377637131, -0.0003282700422, \n    -0.0001029535865, +0.0000386075949, +0.0002833333333, +0.0005472573840, \n    +0.0006438818565, +0.0005601265823, +0.0002896624473, -0.0001094936709, \n    -0.0005021097046, -0.0003928270042, +0.0003605485232, +0.0007597046414, \n    +0.0003411392405, +0.0000322784810, -0.0003411392405, -0.0007791139241, \n    -0.0007082278481, -0.0001352320675, +0.0003928270042, +0.0008626582278, \n    +0.0008691983122, +0.0007016877637, +0.0003991561181, +0.0000643459916, \n    -0.0003540084388, -0.0003862869198, -0.0001867088608, +0.0001672995781, \n    +0.0003219409283, +0.0001352320675, -0.0001029535865, -0.0001094936709, \n    -0.0001544303797, -0.0000580168776, -0.0002575949367, -0.0003799578059, \n    +0.0001672995781, +0.0007274261603, +0.0005924050633, +0.0004571729958, \n    +0.0003540084388, -0.0000643459916, -0.0003670886076, -0.0000514767932, \n    +0.0001286919831, +0.0000194092827, +0.0002639240506, +0.0004056962025, \n    +0.0000580168776, -0.0001867088608, +0.0000000000000, +0.0002704641350, \n    +0.0003090717300, +0.0000837552743, +0.0000514767932, -0.0000837552743, \n    -0.0002510548523, -0.0003282700422, -0.0002704641350, -0.0003476793249, \n    -0.0002381856540, -0.0000900843882, -0.0000257383966, -0.0001801687764, \n    -0.0000065400844, +0.0003025316456, +0.0001738396624, -0.0003090717300, \n    -0.0003862869198, -0.0003411392405, -0.0001672995781, +0.0002833333333, \n    +0.0005149789030, +0.0003928270042, +0.0005601265823, +0.0005149789030, \n    +0.0002639240506, -0.0001738396624, -0.0004892405063, -0.0004120253165, \n    -0.0002767932489, -0.0005729957806, -0.0006373417722, -0.0003670886076, \n    +0.0000065400844, +0.0002318565401, +0.0000966244726, +0.0000065400844, \n    +0.0002447257384, +0.0004506329114, +0.0000772151899, -0.0001801687764, \n    -0.0001029535865, +0.0000643459916, +0.0001544303797, +0.0001995780591, \n    -0.0000451476793, -0.0001415611814, -0.0001672995781, -0.0001094936709, \n    -0.0000708860759, -0.0000194092827, -0.0000772151899, +0.0000451476793, \n    +0.0002704641350, +0.0003734177215, -0.0000900843882, -0.0003928270042, \n    -0.0002447257384, +0.0000128691983, -0.0000772151899, -0.0003219409283, \n    -0.0004635021097, -0.0002253164557, -0.0002061181435, -0.0001223628692, \n    +0.0001672995781, +0.0002962025316, +0.0003154008439, +0.0004443037975, \n    +0.0003348101266, +0.0002061181435, +0.0000966244726, -0.0001738396624, \n    -0.0003154008439, -0.0000580168776, +0.0002510548523, +0.0001995780591, \n    -0.0000322784810, -0.0001672995781, -0.0000514767932, -0.0001029535865, \n    -0.0003862869198, -0.0004314345992, +0.0000257383966, +0.0001932489451, \n    +0.0001481012658, +0.0000000000000, -0.0001544303797, -0.0002767932489, \n    -0.0001609704641, -0.0000837552743, +0.0002381856540, +0.0004763713080, \n    +0.0005795358650, +0.0004443037975, +0.0002189873418, -0.0000900843882, \n    -0.0001738396624, -0.0002189873418, -0.0002381856540, -0.0002767932489, \n    -0.0001609704641, -0.0001609704641, -0.0001029535865, -0.0001481012658, \n    -0.0002896624473, -0.0001609704641, +0.0002767932489, +0.0003799578059, \n    +0.0002253164557, -0.0000451476793, -0.0004248945148, -0.0003734177215, \n    -0.0000386075949, +0.0000386075949, +0.0000194092827, +0.0000772151899, \n    -0.0001738396624, -0.0004700421941, -0.0005407172996, -0.0002510548523, \n    +0.0000772151899, +0.0001415611814, -0.0002253164557, -0.0002833333333, \n    -0.0001029535865, +0.0000194092827, +0.0000514767932, +0.0004506329114, \n    +0.0006244725738, +0.0004635021097, +0.0001352320675, -0.0001995780591, \n    -0.0007274261603, -0.0008434599156, -0.0003991561181, +0.0002575949367, \n    +0.0006373417722, +0.0007725738397, +0.0006052742616, +0.0002704641350, \n    -0.0002061181435, -0.0002962025316, +0.0001672995781, +0.0006373417722, \n    +0.0005537974684, +0.0001609704641, -0.0001609704641, -0.0002124472574, \n    -0.0001995780591, -0.0004506329114, -0.0005278481013, -0.0003862869198, \n    -0.0001481012658, +0.0002962025316, +0.0008497890295, +0.0007597046414, \n    +0.0000643459916, -0.0004763713080, -0.0002704641350, +0.0000900843882, \n    +0.0003282700422, +0.0003476793249, +0.0003348101266, +0.0002061181435, \n    -0.0000451476793, -0.0003928270042, -0.0001672995781, +0.0001158227848, \n    +0.0001481012658, -0.0000194092827, -0.0001544303797, -0.0003282700422, \n    -0.0001481012658, +0.0001094936709, +0.0002767932489, +0.0001286919831, \n    -0.0002896624473, -0.0003219409283, +0.0003025316456, +0.0003799578059, \n    -0.0000386075949, -0.0002189873418, -0.0001415611814, +0.0001932489451, \n    +0.0003090717300, +0.0000451476793, +0.0000900843882, +0.0001932489451, \n    -0.0001352320675, -0.0002639240506, -0.0001415611814, +0.0001415611814, \n    +0.0001801687764, +0.0000065400844, +0.0000451476793, +0.0004957805907, \n    +0.0006052742616, +0.0003862869198, +0.0000643459916, -0.0001223628692, \n    -0.0005278481013, -0.0006052742616, -0.0003025316456, -0.0000128691983, \n    -0.0001223628692, -0.0001286919831, +0.0000000000000, +0.0001738396624, \n    +0.0000580168776, +0.0000900843882, +0.0002189873418, +0.0001094936709, \n    -0.0001738396624, -0.0000257383966, +0.0002447257384, +0.0001094936709, \n    -0.0003605485232, -0.0004443037975, -0.0001029535865, +0.0001995780591, \n    +0.0002061181435, +0.0000065400844, -0.0000966244726, -0.0001223628692, \n    -0.0001738396624, -0.0001867088608, +0.0000065400844, +0.0000580168776, \n    +0.0002124472574, +0.0004185654008, +0.0005537974684, +0.0003090717300, \n    +0.0001352320675, +0.0000000000000, -0.0003025316456, -0.0007854430380, \n    -0.0005215189873, -0.0000257383966, +0.0002124472574, +0.0001544303797, \n    +0.0001094936709, +0.0000128691983, +0.0001672995781, +0.0001415611814, \n    -0.0000194092827, -0.0002253164557, +0.0000128691983, +0.0003605485232, \n    +0.0003090717300, -0.0001544303797, -0.0003476793249, -0.0003734177215, \n    -0.0003348101266, -0.0001415611814, +0.0002189873418, +0.0005086497890, \n    +0.0004120253165, +0.0002575949367, +0.0003154008439, +0.0002767932489, \n    +0.0000194092827, +0.0000194092827, -0.0000386075949, -0.0001932489451, \n    -0.0001672995781, +0.0001415611814, +0.0001415611814, +0.0000000000000, \n    -0.0001094936709, +0.0001867088608, +0.0003025316456, +0.0001481012658, \n    -0.0001867088608, -0.0001223628692, -0.0000194092827, -0.0000708860759, \n    -0.0003348101266, -0.0001544303797, +0.0000000000000, -0.0000451476793, \n    -0.0001995780591, -0.0000772151899, +0.0001738396624, +0.0004635021097, \n    +0.0005601265823, +0.0006052742616, +0.0002124472574, -0.0003476793249, \n    -0.0005666666667, -0.0003025316456, +0.0001223628692, +0.0003219409283, \n    +0.0001158227848, -0.0000772151899, -0.0001481012658, -0.0001738396624, \n    -0.0000966244726, -0.0000386075949, +0.0001738396624, +0.0002381856540, \n    +0.0001094936709, -0.0002061181435, -0.0002510548523, -0.0002124472574, \n    -0.0002767932489, -0.0002318565401, +0.0004314345992, +0.0006630801688, \n    +0.0003090717300, -0.0001672995781, -0.0001415611814, -0.0000580168776, \n    -0.0000065400844, -0.0001223628692, -0.0001094936709, -0.0001223628692, \n    +0.0000643459916, +0.0000837552743, -0.0001029535865, -0.0003476793249, \n    -0.0000708860759, +0.0002189873418, +0.0001932489451, +0.0000128691983, \n    +0.0000065400844, +0.0000128691983, -0.0000065400844, -0.0000966244726, \n    -0.0000772151899, -0.0000386075949, -0.0000708860759, -0.0001223628692, \n    -0.0002381856540, -0.0001223628692, -0.0001223628692, -0.0004248945148, \n    -0.0006116033755, -0.0000514767932, +0.0005924050633, +0.0008755274262, \n    +0.0006116033755, +0.0001932489451, -0.0004120253165, -0.0006824894515, \n    -0.0006759493671, -0.0003605485232, +0.0000322784810, +0.0003605485232, \n    +0.0000386075949, -0.0002896624473, -0.0002318565401, +0.0000837552743, \n    +0.0000708860759, +0.0000065400844, -0.0001415611814, -0.0000580168776, \n    +0.0000708860759, +0.0001544303797, +0.0001158227848, +0.0001544303797, \n    +0.0000708860759, -0.0000966244726, -0.0000708860759, +0.0000772151899, \n    +0.0000000000000, -0.0000580168776, +0.0000386075949, -0.0000837552743, \n    -0.0002253164557, -0.0002639240506, -0.0000772151899, +0.0000322784810, \n    +0.0000837552743, -0.0000514767932, -0.0000772151899, -0.0000772151899, \n    -0.0001158227848, -0.0002575949367, -0.0001867088608, -0.0001932489451, \n    +0.0001158227848, +0.0004443037975, +0.0005215189873, +0.0003799578059, \n    +0.0002510548523, -0.0001286919831, -0.0004248945148, -0.0005215189873, \n    -0.0002318565401, -0.0000514767932, +0.0000257383966, -0.0000386075949, \n    -0.0001029535865, -0.0000643459916, +0.0001609704641, +0.0002510548523, \n    +0.0000900843882, -0.0001932489451, -0.0001867088608, +0.0000451476793, \n    +0.0000000000000, -0.0001609704641, -0.0002639240506, -0.0002381856540, \n    -0.0001544303797, +0.0000322784810, +0.0001158227848, +0.0000708860759, \n    -0.0001544303797, -0.0001094936709, +0.0000451476793, +0.0002704641350, \n    +0.0002253164557, +0.0001672995781, +0.0001672995781, +0.0002575949367, \n    +0.0001481012658, +0.0000065400844, -0.0001352320675, -0.0000514767932, \n    -0.0000065400844, +0.0000322784810, -0.0002189873418, -0.0004506329114, \n    -0.0003282700422, -0.0000837552743, -0.0001415611814, -0.0001801687764, \n    -0.0001544303797, -0.0000966244726, -0.0000257383966, +0.0000451476793, \n    +0.0001672995781, +0.0002639240506, +0.0003154008439, +0.0002124472574, \n    +0.0000128691983, -0.0001286919831, +0.0000194092827, +0.0001158227848, \n    +0.0000451476793, -0.0000708860759, +0.0001094936709, +0.0002189873418, \n    +0.0001738396624, +0.0000386075949, +0.0000257383966, -0.0001544303797, \n    -0.0001609704641, -0.0000708860759, +0.0001932489451, +0.0002124472574, \n    +0.0001286919831, +0.0000966244726, +0.0000772151899, -0.0001995780591, \n    -0.0001801687764, +0.0000900843882, +0.0002447257384, +0.0001352320675, \n    +0.0001867088608, +0.0003476793249, +0.0003670886076, +0.0003540084388, \n    +0.0003090717300, +0.0001415611814, -0.0000386075949, -0.0001995780591, \n    -0.0003540084388, -0.0002704641350, +0.0000257383966, +0.0003734177215, \n    +0.0004185654008, +0.0003090717300, +0.0000128691983, -0.0003734177215, \n    -0.0007983122363, -0.0006310126582, -0.0000451476793, +0.0004635021097, \n    +0.0004056962025, +0.0002962025316, +0.0002318565401, +0.0002510548523, \n    +0.0000386075949, -0.0001609704641, -0.0002253164557, +0.0000386075949, \n    +0.0000900843882, -0.0000514767932, -0.0001995780591, -0.0002833333333, \n    -0.0004829113924, -0.0004248945148, -0.0002381856540, -0.0000643459916, \n    +0.0001352320675, +0.0003476793249, +0.0002962025316, +0.0000386075949, \n    -0.0000128691983, +0.0001801687764, +0.0003605485232, +0.0003991561181, \n    +0.0003799578059, +0.0000194092827, -0.0002833333333, -0.0005149789030, \n    -0.0005021097046, -0.0002962025316, +0.0001352320675, +0.0002704641350, \n    +0.0002896624473, +0.0001158227848, +0.0000194092827, -0.0001094936709, \n    +0.0000514767932, +0.0003411392405, +0.0004571729958, +0.0001029535865, \n    -0.0001995780591, -0.0003154008439, -0.0001738396624, -0.0000257383966, \n    -0.0000128691983, -0.0000837552743, +0.0000386075949, +0.0000386075949, \n    +0.0000194092827, +0.0000194092827, +0.0000451476793, +0.0001932489451, \n    +0.0001995780591, +0.0000065400844, +0.0000386075949, +0.0002447257384, \n    +0.0001995780591, +0.0000451476793, -0.0002189873418, -0.0003411392405, \n    -0.0004185654008, -0.0002061181435, -0.0000065400844, +0.0000451476793, \n    -0.0000643459916, -0.0000580168776, -0.0001995780591, +0.0000065400844, \n    +0.0002253164557, +0.0001609704641, -0.0000386075949, +0.0000708860759, \n    +0.0000514767932, -0.0000065400844, -0.0000772151899, +0.0000708860759, \n    -0.0000257383966, -0.0003282700422, -0.0004185654008, -0.0001544303797, \n    +0.0002189873418, +0.0005343881857, +0.0004892405063, +0.0002061181435, \n    -0.0000065400844, -0.0001867088608, -0.0003928270042, -0.0004248945148, \n    +0.0000065400844, +0.0002639240506, +0.0000966244726, -0.0000966244726, \n    +0.0001544303797, +0.0003734177215, +0.0002962025316, -0.0000257383966, \n    -0.0003605485232, -0.0007597046414, -0.0006244725738, -0.0000194092827, \n    +0.0005666666667, +0.0003862869198, +0.0000386075949, -0.0002896624473, \n    -0.0003540084388, -0.0001801687764, +0.0001352320675, +0.0001932489451, \n    +0.0001867088608, +0.0000451476793, -0.0001158227848, -0.0003348101266, \n    -0.0002575949367, -0.0000194092827, -0.0000643459916, -0.0000900843882, \n    +0.0001544303797, +0.0002253164557, +0.0000000000000, -0.0000451476793, \n    +0.0000000000000, -0.0000386075949, -0.0003154008439, -0.0004571729958, \n    -0.0002189873418, +0.0002704641350, +0.0003670886076, +0.0001932489451, \n    +0.0000194092827, +0.0001609704641, +0.0000837552743, -0.0001672995781, \n    -0.0004443037975, -0.0003799578059, -0.0001672995781, +0.0001609704641, \n    +0.0003348101266, +0.0004763713080, +0.0002896624473, +0.0001223628692, \n    -0.0000194092827, -0.0001094936709, -0.0000065400844, +0.0003411392405, \n    +0.0003025316456, -0.0001094936709, -0.0004957805907, -0.0004571729958, \n    -0.0000837552743, +0.0002124472574, +0.0003540084388, +0.0003282700422, \n    +0.0002253164557, +0.0000708860759, +0.0000257383966, -0.0001481012658, \n    -0.0001415611814, -0.0000772151899, -0.0000643459916, -0.0002767932489, \n    -0.0001544303797, -0.0000322784810, +0.0000580168776, +0.0000322784810, \n    +0.0000128691983, -0.0002575949367, -0.0004056962025, -0.0004700421941, \n    -0.0004377637131, -0.0004120253165, +0.0000451476793, +0.0005795358650, \n    +0.0007016877637, +0.0002639240506, -0.0001352320675, -0.0003154008439, \n    -0.0002381856540, -0.0002833333333, -0.0003348101266, -0.0000580168776, \n    +0.0002962025316, +0.0003991561181, +0.0003605485232, +0.0002896624473, \n    +0.0000194092827, -0.0001094936709, -0.0002639240506, -0.0004056962025, \n    -0.0005729957806, -0.0003348101266, +0.0001286919831, +0.0006888185654, \n    +0.0007339662447, +0.0004571729958, +0.0000643459916, +0.0001352320675, \n    +0.0002510548523, +0.0003670886076, +0.0002962025316, +0.0003540084388, \n    +0.0002061181435, -0.0002061181435, -0.0005987341772, -0.0002510548523, \n    +0.0003411392405, +0.0007339662447, +0.0006953586498, +0.0005537974684, \n    +0.0003670886076, +0.0000000000000, -0.0003670886076, -0.0002833333333, \n    +0.0000000000000, -0.0000194092827, -0.0001867088608, -0.0000772151899, \n    +0.0003476793249, +0.0006116033755, +0.0006052742616, +0.0001995780591, \n    -0.0001158227848, -0.0004248945148, -0.0004957805907, -0.0003734177215, \n    +0.0000966244726, +0.0002447257384, +0.0002253164557, +0.0000900843882, \n    +0.0000708860759, -0.0001158227848, -0.0000837552743, -0.0001801687764, \n    -0.0001544303797, -0.0000900843882, -0.0001286919831, -0.0003540084388, \n    -0.0004056962025, -0.0003799578059, -0.0000643459916, +0.0003411392405, \n    +0.0004571729958, +0.0003025316456, +0.0003540084388, +0.0003154008439, \n    -0.0001352320675, -0.0004120253165, -0.0003090717300, -0.0001094936709, \n    -0.0000128691983, -0.0002124472574, -0.0006696202532, -0.0006116033755, \n    -0.0002704641350, +0.0003090717300, +0.0007082278481, +0.0006502109705, \n    +0.0000708860759, -0.0002253164557, -0.0002767932489, -0.0001029535865, \n    -0.0001544303797, -0.0000386075949, +0.0000966244726, +0.0003090717300, \n    +0.0002896624473, +0.0002833333333, +0.0001801687764, +0.0000837552743, \n    -0.0000900843882, +0.0000000000000, +0.0000322784810, -0.0000514767932, \n    -0.0001609704641, -0.0002962025316, -0.0004185654008, -0.0002318565401, \n    +0.0001158227848, +0.0002381856540, +0.0002639240506, +0.0001544303797, \n    -0.0000451476793, -0.0001995780591, -0.0000837552743, -0.0001672995781, \n    -0.0002124472574, -0.0003090717300, -0.0001286919831, +0.0001995780591, \n    +0.0003991561181, +0.0001415611814, +0.0001609704641, +0.0001223628692, \n    -0.0000322784810, -0.0001867088608, -0.0000065400844, +0.0000065400844, \n    +0.0000386075949, +0.0000000000000, -0.0000837552743, -0.0001738396624, \n    -0.0000451476793, +0.0000000000000, +0.0001352320675, +0.0002896624473, \n    +0.0003025316456, +0.0001029535865, -0.0002381856540, -0.0004377637131, \n    -0.0002447257384, +0.0001286919831, +0.0001932489451, +0.0001481012658, \n    +0.0001672995781, +0.0003348101266, +0.0002124472574, -0.0000514767932, \n    -0.0002962025316, -0.0001544303797, -0.0001286919831, -0.0002253164557, \n    -0.0002767932489, +0.0000451476793, +0.0001801687764, +0.0001544303797, \n    +0.0000000000000, +0.0000128691983, -0.0000386075949, -0.0001029535865, \n    -0.0001481012658, +0.0000580168776, +0.0001352320675, +0.0001609704641, \n    +0.0002124472574, +0.0002318565401, +0.0000194092827, -0.0001672995781, \n    -0.0002061181435, -0.0001481012658, -0.0001481012658, -0.0002833333333, \n    -0.0003025316456, -0.0001738396624, +0.0000837552743, +0.0001867088608, \n    +0.0003476793249, +0.0004635021097, +0.0004443037975, +0.0000514767932, \n    -0.0002896624473, -0.0004763713080, -0.0002767932489, -0.0001029535865, \n    +0.0000000000000, -0.0000322784810, +0.0000837552743, +0.0001029535865, \n    +0.0001223628692, +0.0000451476793, +0.0000451476793, +0.0000643459916, \n    +0.0002639240506, +0.0002189873418, +0.0000322784810, -0.0000643459916, \n    -0.0000772151899, -0.0001672995781, -0.0002767932489, -0.0001672995781, \n    +0.0000772151899, +0.0001481012658, -0.0000194092827, -0.0000514767932, \n    -0.0000708860759, -0.0000322784810, -0.0000322784810, +0.0001029535865, \n    +0.0001609704641, +0.0002061181435, +0.0001094936709, +0.0000900843882, \n    -0.0000580168776, -0.0001609704641, -0.0003154008439, -0.0003540084388, \n    -0.0003090717300, +0.0000000000000, +0.0001609704641, +0.0002318565401, \n    +0.0001672995781, +0.0001672995781, +0.0001738396624, +0.0001415611814, \n    -0.0000580168776, -0.0002447257384, -0.0003540084388, -0.0003862869198, \n    -0.0002833333333, -0.0000194092827, +0.0002767932489, +0.0003282700422, \n    +0.0002381856540, +0.0000194092827, -0.0000514767932, -0.0001223628692, \n    -0.0001609704641, -0.0002381856540, -0.0000257383966, +0.0002061181435, \n    +0.0003219409283, +0.0000580168776, -0.0001544303797, -0.0003348101266, \n    -0.0002767932489, -0.0003090717300, -0.0003476793249, -0.0003605485232, \n    -0.0000900843882, +0.0001995780591, +0.0003411392405, +0.0001738396624, \n    +0.0000000000000, -0.0001415611814, -0.0000643459916, +0.0001158227848, \n    +0.0001995780591, +0.0001286919831, -0.0000708860759, -0.0001801687764, \n    -0.0000128691983, +0.0001995780591, +0.0001094936709, +0.0000772151899, \n    +0.0000451476793, +0.0000580168776, -0.0000322784810, -0.0000966244726, \n    -0.0002896624473, -0.0002962025316, -0.0002962025316, -0.0000580168776, \n    +0.0001352320675, +0.0003219409283, +0.0002767932489, +0.0002510548523, \n    +0.0001932489451, +0.0001094936709, -0.0001867088608, -0.0002381856540, \n    -0.0000643459916, +0.0002318565401, +0.0004056962025, +0.0003348101266, \n    +0.0000643459916, -0.0001029535865, -0.0001995780591, -0.0003154008439, \n    -0.0003540084388, -0.0002639240506, -0.0000257383966, +0.0000386075949, \n    +0.0001094936709, +0.0001995780591, +0.0003154008439, +0.0000128691983, \n    -0.0002510548523, -0.0002704641350, +0.0000000000000, +0.0000900843882, \n    +0.0001801687764, +0.0000580168776, -0.0000065400844, -0.0001481012658, \n    -0.0001738396624, -0.0000900843882, +0.0001094936709, +0.0001094936709, \n    +0.0002962025316, +0.0004829113924, +0.0004829113924, +0.0002639240506, \n    +0.0000000000000, -0.0002704641350, -0.0003605485232, -0.0003540084388, \n    -0.0002575949367, +0.0000580168776, +0.0002124472574, +0.0001481012658, \n    +0.0000257383966, +0.0001094936709, +0.0001995780591, +0.0003476793249, \n    +0.0003090717300, +0.0002447257384, -0.0001029535865, -0.0002962025316, \n    -0.0002833333333, +0.0000900843882, +0.0003154008439, +0.0003605485232, \n    +0.0001544303797, +0.0000128691983, -0.0001609704641, -0.0000900843882, \n    +0.0000257383966, +0.0002704641350, +0.0003348101266, +0.0002510548523, \n    +0.0002447257384, +0.0003476793249, +0.0002447257384, -0.0000065400844, \n    -0.0001672995781, -0.0001609704641, -0.0000580168776, -0.0000257383966, \n    +0.0000708860759, +0.0001352320675, +0.0002189873418, +0.0002189873418, \n    +0.0002510548523, +0.0000772151899, -0.0000065400844, -0.0000900843882, \n    +0.0000257383966, -0.0000194092827, +0.0000900843882, +0.0002318565401, \n    +0.0003411392405, +0.0000065400844, -0.0003025316456, -0.0004700421941, \n    -0.0003025316456, -0.0001223628692, +0.0001672995781, +0.0002833333333, \n    +0.0002318565401, +0.0001544303797, +0.0000772151899, -0.0002189873418, \n    -0.0003862869198, -0.0001932489451, +0.0000322784810, +0.0000966244726, \n    +0.0001352320675, +0.0003154008439, +0.0002704641350, -0.0000322784810, \n    -0.0004506329114, -0.0004700421941, -0.0003219409283, -0.0000772151899, \n    -0.0001094936709, -0.0001352320675, -0.0001995780591, -0.0001286919831, \n    -0.0002510548523, -0.0002704641350, -0.0003411392405, -0.0002253164557, \n    -0.0000837552743, +0.0001544303797, +0.0002767932489, +0.0004571729958, \n    +0.0003670886076, +0.0001223628692, -0.0001094936709, -0.0001932489451, \n    -0.0003348101266, -0.0003928270042, -0.0001932489451, +0.0000000000000, \n    +0.0000772151899, +0.0001415611814, +0.0002510548523, +0.0001158227848, \n    -0.0000837552743, -0.0003411392405, -0.0002833333333, -0.0000837552743, \n    +0.0001158227848, -0.0000128691983, -0.0000451476793, -0.0000386075949, \n    +0.0000837552743, +0.0000065400844, -0.0000065400844, -0.0001286919831, \n    -0.0001286919831, -0.0001352320675, +0.0000128691983, +0.0000966244726, \n    +0.0001801687764, +0.0001158227848, +0.0000065400844, -0.0002381856540, \n    -0.0004056962025, -0.0003605485232, -0.0001481012658, +0.0000643459916, \n    +0.0001286919831, +0.0001223628692, -0.0000386075949, -0.0002253164557, \n    -0.0002896624473, +0.0000386075949, +0.0003411392405, +0.0005343881857, \n    +0.0003862869198, +0.0001481012658, -0.0002575949367, -0.0004185654008, \n    -0.0004248945148, -0.0002447257384, -0.0002189873418, +0.0000451476793, \n    +0.0002704641350, +0.0003862869198, +0.0002124472574, +0.0000000000000, \n    -0.0002253164557, -0.0001995780591, -0.0000966244726, +0.0000643459916, \n    +0.0000900843882, -0.0000128691983, -0.0001738396624, -0.0001801687764, \n    +0.0000322784810, +0.0001932489451, +0.0002381856540, +0.0001738396624, \n    +0.0000580168776, -0.0002253164557, -0.0003025316456, -0.0002318565401, \n    -0.0000580168776, -0.0000643459916, -0.0000837552743, -0.0002639240506, \n    -0.0001867088608, -0.0001932489451, -0.0001415611814, +0.0000128691983, \n    +0.0003090717300, +0.0004120253165, +0.0004377637131, +0.0001609704641, \n    +0.0000000000000, -0.0001286919831, -0.0001995780591, -0.0001415611814, \n    +0.0000257383966, +0.0000966244726, +0.0000451476793, +0.0000257383966, \n    +0.0001352320675, +0.0001932489451, +0.0000580168776, -0.0000128691983, \n    -0.0001481012658, -0.0001029535865, +0.0000065400844, +0.0000643459916, \n    -0.0001352320675, -0.0001995780591, -0.0001867088608, +0.0001672995781, \n    +0.0005021097046, +0.0006567510549, +0.0004700421941, +0.0003090717300, \n    +0.0000708860759, -0.0000322784810, -0.0001738396624, -0.0000966244726, \n    +0.0000451476793, +0.0001286919831, +0.0000322784810, -0.0000065400844, \n    +0.0000257383966, +0.0000194092827, -0.0000580168776, -0.0000643459916, \n    +0.0000837552743, +0.0002124472574, +0.0002253164557, +0.0000000000000, \n    -0.0001158227848, -0.0002253164557, -0.0001415611814, -0.0000065400844, \n    +0.0002510548523, +0.0002639240506, +0.0001415611814, -0.0001094936709, \n    -0.0001672995781, -0.0002381856540, -0.0001286919831, -0.0000451476793, \n    +0.0001286919831, +0.0001801687764, +0.0001672995781, -0.0000128691983, \n    -0.0001352320675, -0.0002061181435, -0.0000966244726, +0.0000580168776, \n    +0.0001415611814, +0.0000772151899, +0.0000065400844, +0.0000643459916, \n    +0.0001158227848, +0.0001995780591, +0.0001352320675, +0.0000257383966, \n    -0.0000708860759, +0.0000000000000, -0.0000257383966, +0.0000386075949, \n    +0.0000451476793, +0.0000643459916, -0.0001158227848, -0.0000900843882, \n    +0.0000194092827, +0.0001158227848, -0.0000837552743, -0.0001672995781, \n    -0.0001544303797, +0.0000580168776, +0.0001672995781, +0.0001481012658, \n    +0.0000000000000, -0.0000257383966, +0.0000128691983, +0.0001995780591, \n    +0.0003090717300, +0.0001609704641, -0.0000708860759, -0.0002833333333, \n    -0.0003282700422, -0.0001481012658, +0.0001352320675, +0.0001029535865, \n    +0.0000643459916, -0.0000643459916, -0.0001867088608, -0.0003154008439, \n    -0.0001352320675, +0.0000065400844, +0.0001801687764, +0.0001094936709, \n    +0.0000386075949, -0.0001544303797, -0.0002833333333, -0.0002962025316, \n    -0.0000837552743, -0.0000194092827, +0.0000966244726, +0.0002253164557, \n    +0.0002639240506, +0.0001094936709, -0.0000772151899, -0.0002510548523, \n    -0.0003154008439, -0.0002061181435, -0.0000708860759, +0.0000643459916, \n    +0.0001223628692, +0.0001223628692, -0.0000194092827, -0.0000451476793, \n    -0.0001094936709, -0.0000128691983, +0.0000322784810, +0.0001672995781, \n    +0.0000900843882, -0.0000257383966, -0.0001995780591, -0.0000900843882, \n    -0.0000128691983, +0.0000065400844, -0.0000837552743, +0.0000000000000, \n    +0.0001481012658, +0.0003670886076, +0.0004443037975, +0.0003540084388, \n    +0.0002061181435, +0.0001801687764, +0.0001867088608, +0.0000322784810, \n    -0.0002833333333, -0.0005149789030, -0.0003734177215, -0.0001481012658, \n    +0.0001158227848, +0.0001867088608, +0.0001223628692, +0.0000065400844, \n    +0.0001932489451, +0.0002639240506, +0.0002510548523, +0.0001094936709, \n    +0.0001609704641, +0.0001029535865, -0.0000580168776, -0.0003605485232, \n    -0.0003476793249, -0.0002124472574, -0.0000194092827, +0.0000643459916, \n    +0.0000451476793, -0.0001609704641, -0.0002447257384, -0.0002189873418, \n    -0.0002253164557, -0.0001158227848, +0.0000966244726, +0.0003090717300, \n    +0.0003928270042, +0.0004443037975, +0.0002639240506, -0.0000194092827, \n    -0.0003154008439, -0.0002896624473, -0.0001544303797, +0.0000708860759, \n    +0.0000000000000, -0.0001094936709, -0.0002510548523, -0.0001352320675, \n    +0.0000322784810, +0.0002189873418, +0.0001223628692, +0.0000128691983, \n    -0.0001158227848, -0.0001029535865, -0.0000772151899, -0.0000322784810, \n    -0.0000194092827, +0.0000194092827, +0.0001094936709, +0.0001415611814, \n    +0.0000257383966, -0.0001029535865, +0.0000065400844, +0.0000322784810, \n    -0.0000065400844, -0.0000837552743, +0.0000322784810, +0.0001094936709, \n    +0.0002447257384, +0.0001352320675, +0.0000643459916, -0.0000580168776, \n    -0.0000966244726, -0.0001544303797, -0.0000386075949, -0.0000900843882, \n    -0.0001352320675, -0.0001738396624, -0.0000194092827, +0.0001223628692, \n    +0.0002447257384, +0.0001995780591, +0.0001094936709, +0.0000322784810, \n    +0.0000194092827, +0.0000451476793, +0.0000708860759, +0.0000966244726, \n    -0.0000322784810, -0.0001415611814, -0.0003605485232, -0.0003219409283, \n    -0.0001415611814, +0.0000900843882, +0.0001609704641, +0.0003605485232, \n    +0.0003154008439, +0.0002447257384, -0.0000065400844, -0.0002061181435, \n    -0.0004443037975, -0.0003090717300, -0.0000257383966, +0.0002704641350, \n    +0.0002061181435, +0.0000322784810, -0.0002124472574, -0.0003348101266, \n    -0.0003476793249, -0.0001738396624, +0.0000386075949, +0.0001223628692, \n    +0.0000900843882, +0.0000065400844, +0.0000194092827, +0.0000451476793, \n    +0.0001481012658, +0.0000386075949, +0.0000128691983, -0.0000194092827, \n    +0.0000000000000, -0.0001029535865, +0.0000128691983, +0.0000451476793, \n    +0.0001544303797, +0.0001158227848, +0.0001609704641, +0.0000966244726, \n    +0.0001029535865, -0.0000772151899, -0.0001544303797, -0.0002767932489, \n    -0.0002061181435, -0.0000065400844, +0.0002381856540, +0.0002510548523, \n    +0.0000772151899, -0.0001223628692, -0.0002253164557, -0.0001481012658, \n    +0.0000128691983, +0.0001932489451, +0.0001352320675, +0.0000772151899, \n    +0.0000386075949, +0.0001415611814, +0.0000194092827, -0.0000257383966, \n    -0.0001158227848, -0.0001029535865, -0.0002381856540, -0.0000643459916, \n    +0.0001223628692, +0.0003090717300, +0.0001932489451, +0.0001029535865, \n    -0.0001094936709, -0.0000900843882, -0.0000514767932, +0.0000065400844, \n    +0.0000000000000, +0.0000837552743, +0.0000451476793, -0.0001029535865, \n    -0.0001932489451, -0.0001286919831, +0.0000065400844, +0.0000708860759, \n    +0.0001415611814, +0.0001223628692, +0.0001415611814, -0.0000128691983, \n    -0.0000451476793, -0.0000900843882, -0.0000257383966, -0.0001029535865, \n    +0.0000128691983, +0.0000386075949, +0.0001544303797, +0.0001029535865, \n    +0.0000966244726, -0.0000194092827, +0.0000194092827, -0.0000451476793, \n    -0.0000643459916, -0.0000772151899, +0.0000900843882, +0.0002124472574, \n    +0.0002510548523, +0.0001738396624, +0.0000386075949, -0.0001094936709, \n    -0.0001738396624, -0.0000514767932, -0.0000065400844, +0.0000257383966, \n    +0.0000708860759, +0.0001481012658, +0.0000194092827, +0.0001029535865, \n    +0.0001158227848, +0.0001415611814, +0.0000900843882, +0.0001223628692, \n    -0.0000643459916, -0.0001738396624, -0.0002061181435, +0.0000966244726, \n    +0.0002447257384, +0.0001672995781, -0.0001223628692, -0.0001932489451, \n    -0.0000643459916, +0.0001158227848, +0.0000966244726, +0.0000257383966, \n    -0.0000643459916, -0.0000900843882, -0.0000194092827, +0.0000128691983, \n    +0.0001094936709, +0.0001481012658, +0.0001672995781, +0.0000837552743, \n    +0.0001286919831, +0.0000772151899, +0.0000643459916, +0.0000000000000, \n    +0.0000580168776, -0.0001158227848, -0.0002510548523, -0.0002962025316, \n    -0.0001415611814, -0.0000837552743, +0.0000580168776, +0.0000966244726, \n    +0.0001352320675, +0.0001352320675, +0.0002253164557, +0.0001995780591, \n    -0.0000322784810, -0.0002704641350, -0.0002575949367, -0.0000386075949, \n    +0.0000900843882, +0.0001094936709, -0.0000451476793, -0.0001286919831, \n    -0.0001609704641, -0.0001029535865, -0.0001158227848, +0.0000900843882, \n    +0.0002318565401, +0.0002318565401, -0.0000194092827, -0.0001223628692, \n    -0.0001094936709, +0.0000128691983, -0.0000900843882, -0.0001932489451, \n    -0.0002767932489, -0.0001609704641, +0.0000000000000, +0.0001609704641, \n    +0.0001029535865, -0.0000708860759, -0.0001801687764, -0.0001481012658, \n    +0.0000000000000, +0.0000580168776, +0.0000772151899, +0.0000708860759, \n    +0.0001223628692, -0.0000194092827, -0.0001672995781, -0.0003799578059, \n    -0.0003670886076, -0.0002575949367, -0.0000194092827, +0.0000643459916, \n    +0.0001867088608, +0.0001158227848, +0.0000514767932, -0.0000128691983, \n    +0.0000000000000, -0.0000257383966, +0.0000772151899, +0.0000966244726, \n    +0.0000322784810, +0.0000194092827, +0.0000386075949, +0.0000194092827, \n    -0.0000194092827, -0.0000257383966, -0.0000386075949, +0.0000708860759, \n    +0.0001223628692, +0.0002124472574, +0.0001544303797, +0.0001094936709, \n    +0.0000000000000, +0.0000194092827, -0.0000708860759, -0.0000966244726, \n    -0.0001286919831, +0.0000322784810, +0.0000966244726, +0.0001029535865, \n    -0.0000580168776, -0.0000772151899, -0.0000643459916, -0.0000065400844, \n    +0.0000322784810, +0.0001223628692, +0.0002124472574, +0.0002318565401, \n    +0.0001094936709, -0.0001094936709, -0.0001609704641, -0.0001158227848, \n    +0.0000386075949, +0.0001029535865, +0.0001286919831, +0.0000128691983, \n    +0.0000000000000, -0.0000772151899, -0.0000257383966, -0.0000580168776, \n    -0.0000514767932, -0.0001481012658, -0.0001158227848, -0.0001995780591, \n    -0.0001609704641, -0.0001223628692, +0.0000514767932, +0.0001415611814, \n    +0.0002189873418, +0.0001932489451, +0.0001158227848, -0.0000194092827, \n    -0.0001415611814, -0.0002253164557, -0.0003025316456, -0.0002189873418, \n    -0.0001029535865, +0.0000194092827, -0.0000322784810, -0.0000580168776, \n    -0.0001481012658, -0.0000194092827, +0.0000966244726, +0.0002767932489, \n    +0.0001352320675, +0.0000514767932, -0.0000708860759, -0.0001094936709, \n    -0.0001995780591, -0.0000580168776, +0.0000322784810, +0.0001094936709, \n    +0.0000708860759, +0.0000900843882, +0.0000257383966, +0.0000065400844, \n    +0.0000643459916, +0.0000643459916, +0.0000257383966, +0.0000322784810, \n    +0.0001223628692, +0.0001158227848, +0.0001801687764, +0.0001415611814, \n    +0.0000580168776, -0.0002318565401, -0.0003025316456, -0.0002639240506, \n    +0.0000386075949, +0.0001609704641, +0.0001738396624, +0.0000000000000, \n    +0.0000451476793, +0.0001094936709, +0.0002189873418, +0.0000772151899, \n    -0.0000580168776, -0.0001672995781, -0.0001544303797, -0.0000708860759, \n    +0.0001415611814, +0.0003928270042, +0.0004829113924, +0.0003219409283, \n    -0.0000257383966, -0.0002833333333, -0.0003605485232, -0.0001544303797, \n    -0.0000514767932, +0.0000000000000, -0.0000643459916, -0.0000194092827, \n    -0.0001029535865, -0.0000257383966, +0.0000065400844, +0.0001544303797, \n    +0.0001352320675, +0.0001738396624, +0.0001029535865, +0.0002124472574, \n    +0.0002833333333, +0.0002639240506, +0.0000837552743, -0.0000128691983, \n    -0.0001223628692, -0.0001932489451, -0.0002253164557, -0.0002381856540, \n    -0.0001672995781, -0.0001867088608, -0.0001544303797, -0.0000580168776, \n    +0.0002061181435, +0.0002896624473, +0.0002704641350, +0.0000128691983, \n    -0.0000966244726, -0.0002447257384, -0.0001995780591, -0.0002253164557, \n    -0.0000837552743, -0.0000451476793, +0.0000257383966, -0.0000194092827, \n    +0.0000708860759, +0.0001029535865, +0.0000451476793, -0.0001932489451, \n    -0.0002318565401, -0.0000514767932, +0.0000900843882, +0.0001223628692, \n    +0.0000451476793, -0.0000451476793, -0.0001609704641, -0.0001481012658, \n    -0.0001481012658, -0.0000065400844, +0.0000065400844, +0.0001158227848, \n    +0.0001609704641, +0.0002896624473, +0.0001867088608, +0.0001029535865, \n    -0.0001158227848, -0.0002318565401, -0.0003670886076, -0.0001672995781, \n    +0.0000772151899, +0.0003734177215, +0.0003799578059, +0.0001932489451, \n    -0.0000257383966, -0.0000772151899, -0.0000580168776, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0001094936709, +0.0000643459916, \n    +0.0000000000000, -0.0000257383966, +0.0000772151899, +0.0000000000000, \n    +0.0000386075949, +0.0000322784810, +0.0001481012658, +0.0000966244726, \n    +0.0000772151899, -0.0000708860759, -0.0000900843882, -0.0001801687764, \n    -0.0000772151899, +0.0000000000000, +0.0000900843882, +0.0000322784810, \n    +0.0000386075949, +0.0000128691983, -0.0000580168776, -0.0001029535865, \n    -0.0000708860759, +0.0000194092827, +0.0000322784810, +0.0000322784810, \n    -0.0000386075949, +0.0000065400844, +0.0000065400844, +0.0000772151899, \n    -0.0000322784810, -0.0000386075949, -0.0000386075949, +0.0001094936709, \n    +0.0000000000000, -0.0000643459916, -0.0001672995781, -0.0000580168776, \n    -0.0000708860759, -0.0000514767932, -0.0000322784810, +0.0000966244726, \n    +0.0000708860759, +0.0000194092827, +0.0000580168776, +0.0001223628692, \n    +0.0000900843882, -0.0000128691983, -0.0000194092827, -0.0000837552743, \n    -0.0001223628692, -0.0001672995781, -0.0000772151899, -0.0000451476793, \n    +0.0001223628692, +0.0001544303797, +0.0002253164557, +0.0000837552743, \n    -0.0000900843882, -0.0004185654008, -0.0004056962025, -0.0001738396624, \n    +0.0002575949367, +0.0004314345992, +0.0004571729958, +0.0003025316456, \n    +0.0001544303797, -0.0000386075949, -0.0001672995781, -0.0001223628692, \n    +0.0000580168776, +0.0002061181435, +0.0000966244726, -0.0000128691983, \n    -0.0001029535865, -0.0000772151899, -0.0001352320675, -0.0000708860759, \n    -0.0000194092827, +0.0001544303797, +0.0001223628692, +0.0000772151899, \n    -0.0001094936709, -0.0001415611814, -0.0001672995781, -0.0000643459916, \n    -0.0000065400844, +0.0001352320675, +0.0001352320675, +0.0001223628692, \n    +0.0000580168776, -0.0000065400844, -0.0000966244726, -0.0001029535865, \n    +0.0000000000000, +0.0000772151899, +0.0000772151899, -0.0001029535865, \n    -0.0001415611814, -0.0000772151899, +0.0000966244726, +0.0001094936709, \n    +0.0001481012658, -0.0000065400844, -0.0001158227848, -0.0002447257384, \n    -0.0001738396624, -0.0000900843882, +0.0001158227848, +0.0001481012658, \n    +0.0001094936709, -0.0000194092827, -0.0000322784810, +0.0000000000000, \n    +0.0000580168776, +0.0000966244726, +0.0001352320675, +0.0001609704641, \n    +0.0000772151899, +0.0000000000000, -0.0000708860759, -0.0000257383966, \n    -0.0000451476793, +0.0000000000000, -0.0000386075949, +0.0000065400844, \n    -0.0000194092827, +0.0000708860759, +0.0001223628692, +0.0002124472574, \n    +0.0000900843882, +0.0000000000000, -0.0001094936709, -0.0001352320675, \n    -0.0001995780591, -0.0001801687764, -0.0001094936709, +0.0000128691983, \n    +0.0000580168776, +0.0000322784810, +0.0000580168776, +0.0000580168776, \n    +0.0000000000000, -0.0000900843882, -0.0000065400844, +0.0000000000000, \n    +0.0000580168776, +0.0000580168776, +0.0000772151899, -0.0001094936709, \n    -0.0001801687764, -0.0001801687764, -0.0000451476793, -0.0000065400844, \n    +0.0000643459916, -0.0000257383966, -0.0001094936709, -0.0000966244726, \n    +0.0000451476793, +0.0001094936709, +0.0000643459916, -0.0000451476793, \n    -0.0001029535865, -0.0000580168776, -0.0000065400844, +0.0000966244726, \n    +0.0000708860759, +0.0000000000000, -0.0001094936709, -0.0000643459916, \n    -0.0000257383966, +0.0001029535865, +0.0000900843882, +0.0000580168776, \n    -0.0000514767932, -0.0000451476793, -0.0000580168776, -0.0000128691983, \n    -0.0000708860759, -0.0000514767932, +0.0000000000000, +0.0000900843882, \n    +0.0000900843882, +0.0000514767932, +0.0000194092827, +0.0000257383966, \n    +0.0000580168776, +0.0000257383966, +0.0000257383966, +0.0000322784810, \n    +0.0000900843882, +0.0000065400844, -0.0000194092827, -0.0000708860759, \n    +0.0000194092827, +0.0000257383966, +0.0000451476793, +0.0000065400844, \n    +0.0000514767932, +0.0000257383966, +0.0000580168776, +0.0000257383966, \n    +0.0000128691983, -0.0000257383966, -0.0000514767932, -0.0000643459916, \n    -0.0000451476793, -0.0000451476793, -0.0000514767932, -0.0000128691983, \n    +0.0000000000000, +0.0000257383966, +0.0000322784810, +0.0000900843882, \n    +0.0000708860759, +0.0000643459916, -0.0000128691983, -0.0000065400844, \n    -0.0000065400844, +0.0000128691983, -0.0000708860759, -0.0000772151899, \n    -0.0000643459916, +0.0000000000000, +0.0000000000000, +0.0000194092827, \n    +0.0000257383966, +0.0000580168776, +0.0000580168776, +0.0000514767932, \n    +0.0000128691983, +0.0000000000000, +0.0000514767932, +0.0000514767932, \n    +0.0000322784810, -0.0000128691983, -0.0000257383966, -0.0000386075949, \n    -0.0000065400844, -0.0000065400844, +0.0000128691983, -0.0000128691983, \n    -0.0000194092827, -0.0000451476793, +0.0000000000000, +0.0000386075949, \n    +0.0000900843882, +0.0000514767932, +0.0000194092827, -0.0000128691983, \n    -0.0000257383966, -0.0000322784810, -0.0000065400844, +0.0000065400844, \n    +0.0000194092827, +0.0000322784810, +0.0000128691983, +0.0000000000000, \n    -0.0000128691983, -0.0000194092827, -0.0000386075949, -0.0000128691983, \n    -0.0000065400844, +0.0000128691983, +0.0000194092827, +0.0000386075949, \n    +0.0000065400844, +0.0000000000000, -0.0000257383966, -0.0000257383966, \n    -0.0000322784810, -0.0000065400844, +0.0000000000000, +0.0000000000000, \n    -0.0000065400844, -0.0000065400844, +0.0000000000000, +0.0000065400844, \n    +0.0000065400844, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000065400844, +0.0000000000000, +0.0000065400844, +0.0000000000000, \n    +0.0000000000000, -0.0000065400844, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000065400844, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000\n};\n"
  },
  {
    "path": "impulses/08-fender-bassman-sm57.h",
    "content": "float fender_bassman_sm57[] = {\n    +0.0000000000000, +0.0000449579832, +0.0000128151261, -0.0001153361345, \n    -0.0002693277311, -0.0003590336134, -0.0003655462185, -0.0002884453782, \n    -0.0001602941176, +0.0000000000000, +0.0001153361345, +0.0001859243697, \n    +0.0001924369748, +0.0001409663866, +0.0000640756303, -0.0000128151261, \n    -0.0001153361345, -0.0001859243697, -0.0002308823529, -0.0002565126050, \n    -0.0002500000000, -0.0002565126050, -0.0002756302521, -0.0002821428571, \n    -0.0002756302521, -0.0002308823529, -0.0001281512605, +0.0000256302521, \n    +0.0001924369748, +0.0003462184874, +0.0003334033613, +0.0002180672269, \n    -0.0000449579832, -0.0003012605042, -0.0005256302521, -0.0006859243697, \n    -0.0005962184874, -0.0003077731092, -0.0000256302521, +0.0001281512605, \n    +0.0001537815126, +0.0000321428571, -0.0001665966387, -0.0004359243697, \n    -0.0006987394958, -0.0009489495798, -0.0011348739496, -0.0012245798319, \n    -0.0011861344538, -0.0010705882353, -0.0009745798319, -0.0008974789916, \n    -0.0008974789916, -0.0009936974790, -0.0012630252101, -0.0016220588235, \n    -0.0021157563025, -0.0025581932773, -0.0030710084034, -0.0041800420168, \n    -0.0044046218487, -0.0047764705882, -0.0060266806723, -0.0043403361345, \n    -0.0068535714286, -0.0092002100840, +0.0065073529412, +0.0229844537815, \n    +0.0012758403361, -0.0708571428571, -0.1080808823529, -0.0428848739496, \n    +0.0436991596639, +0.1150949579832, +0.1932865546218, +0.2100712184874, \n    +0.1543701680672, +0.0668308823529, -0.0485075630252, -0.1251220588235, \n    -0.1295138655462, -0.1012529411765, -0.0552651260504, -0.0291905462185, \n    -0.0313831932773, -0.0201953781513, +0.0107388655462, +0.0452827731092, \n    +0.0654846638655, +0.0629586134454, +0.0473151260504, +0.0160987394958, \n    -0.0137264705882, -0.0213943277311, -0.0224073529412, -0.0183426470588, \n    -0.0132905462185, -0.0229201680672, -0.0319537815126, -0.0224523109244, \n    -0.0011605042017, +0.0215739495798, +0.0296264705882, +0.0185861344538, \n    +0.0064497899160, -0.0021029411765, -0.0081678571429, -0.0119953781513, \n    -0.0151369747899, -0.0166693277311, -0.0204006302521, -0.0228304621849, \n    -0.0166052521008, -0.0114632352941, -0.0075012605042, +0.0034107142857, \n    +0.0076165966387, +0.0018529411765, -0.0051289915966, -0.0087384453782, \n    -0.0112453781513, -0.0142073529412, -0.0075460084034, +0.0063214285714, \n    +0.0117647058824, +0.0099951680672, +0.0041800420168, -0.0043852941176, \n    -0.0070266806723, -0.0033338235294, +0.0031863445378, +0.0085974789916, \n    +0.0045840336134, -0.0054945378151, -0.0126686974790, -0.0120596638655, \n    -0.0082512605042, -0.0073600840336, -0.0069241596639, -0.0072831932773, \n    -0.0107004201681, -0.0084949579832, -0.0000897058824, +0.0078344537815, \n    +0.0141048319328, +0.0115081932773, +0.0023207983193, -0.0059176470588, \n    -0.0143163865546, -0.0163934873950, -0.0099630252101, -0.0062957983193, \n    -0.0034044117647, +0.0000321428571, +0.0009233193277, +0.0023336134454, \n    +0.0011092436975, -0.0018976890756, -0.0029619747899, -0.0069369747899, \n    -0.0117006302521, -0.0120081932773, -0.0109441176471, -0.0083474789916, \n    -0.0024042016807, +0.0054558823529, +0.0126237394958, +0.0138161764706, \n    +0.0075397058824, -0.0015964285714, -0.0086871848739, -0.0100207983193, \n    -0.0038147058824, +0.0052764705882, +0.0093861344538, +0.0071357142857, \n    +0.0020323529412, -0.0052186974790, -0.0128352941176, -0.0163743697479, \n    -0.0148676470588, -0.0108478991597, -0.0060586134454, -0.0013464285714, \n    +0.0022632352941, +0.0046546218487, +0.0060523109244, +0.0058726890756, \n    +0.0037890756303, +0.0010705882353, +0.0007886554622, +0.0030516806723, \n    +0.0051995798319, +0.0066804621849, +0.0071035714286, +0.0062254201681, \n    +0.0048724789916, +0.0021413865546, -0.0017502100840, -0.0046930672269, \n    -0.0066548319328, -0.0078922268908, -0.0077897058824, -0.0068472689076, \n    -0.0060073529412, -0.0053918067227, -0.0034684873950, +0.0000449579832, \n    +0.0027504201681, +0.0043340336134, +0.0054174369748, +0.0042571428571, \n    +0.0017117647059, +0.0009680672269, +0.0026542016807, +0.0052764705882, \n    +0.0065779411765, +0.0069819327731, +0.0074434873950, +0.0061739495798, \n    +0.0045006302521, +0.0039750000000, +0.0021348739496, -0.0001924369748, \n    -0.0018273109244, -0.0021029411765, +0.0002180672269, +0.0023850840336, \n    +0.0033338235294, +0.0053470588235, +0.0071997899160, +0.0073600840336, \n    +0.0065201680672, +0.0050455882353, +0.0049109243697, +0.0052636554622, \n    +0.0036672268908, +0.0017630252101, +0.0008655462185, +0.0005128151261, \n    +0.0003268907563, -0.0004102941176, +0.0003525210084, +0.0031800420168, \n    +0.0049046218487, +0.0054558823529, +0.0052252100840, +0.0039044117647, \n    +0.0031415966387, +0.0030453781513, +0.0031672268908, +0.0038081932773, \n    +0.0036159663866, +0.0025581932773, +0.0014361344538, -0.0002756302521, \n    -0.0008718487395, +0.0008334033613, +0.0035262605042, +0.0061739495798, \n    +0.0074884453782, +0.0069563025210, +0.0061292016807, +0.0055586134454, \n    +0.0046546218487, +0.0036159663866, +0.0030388655462, +0.0029170168067, \n    +0.0013142857143, -0.0019489495798, -0.0030260504202, -0.0006602941176, \n    +0.0014745798319, +0.0015002100840, +0.0010321428571, +0.0010577731092, \n    +0.0006539915966, +0.0003655462185, +0.0021861344538, +0.0053214285714, \n    +0.0066420168067, +0.0049815126050, +0.0021157563025, +0.0001346638655, \n    -0.0004680672269, -0.0006027310924, -0.0007052521008, -0.0001537815126, \n    +0.0012758403361, +0.0029363445378, +0.0039556722689, +0.0034878151261, \n    +0.0020836134454, +0.0002949579832, -0.0019617647059, -0.0032569327731, \n    -0.0021092436975, +0.0010964285714, +0.0043531512605, +0.0055201680672, \n    +0.0039878151261, +0.0008142857143, -0.0026478991597, -0.0042827731092, \n    -0.0029491596639, +0.0000193277311, +0.0021991596639, +0.0025195378151, \n    +0.0020516806723, +0.0016798319328, +0.0010577731092, +0.0000449579832, \n    -0.0005642857143, -0.0009552521008, -0.0013079831933, -0.0008655462185, \n    +0.0006411764706, +0.0025516806723, +0.0036800420168, +0.0029491596639, \n    +0.0009361344538, -0.0011861344538, -0.0027310924370, -0.0031031512605, \n    -0.0025451680672, -0.0024682773109, -0.0032184873950, -0.0037121848739, \n    -0.0030838235294, -0.0018273109244, -0.0005449579832, +0.0006155462185, \n    +0.0016411764706, +0.0014361344538, -0.0004487394958, -0.0026670168067, \n    -0.0038787815126, -0.0032441176471, -0.0010705882353, +0.0009680672269, \n    +0.0017502100840, +0.0010514705882, -0.0006283613445, -0.0018014705882, \n    -0.0017758403361, -0.0006218487395, +0.0008334033613, +0.0014424369748, \n    +0.0005705882353, -0.0013783613445, -0.0036672268908, -0.0051995798319, \n    -0.0057189075630, -0.0058663865546, -0.0049880252101, -0.0023978991597, \n    +0.0005834033613, +0.0025516806723, +0.0030773109244, +0.0025966386555, \n    +0.0018657563025, +0.0001924369748, -0.0019233193277, -0.0025838235294, \n    -0.0024876050420, -0.0024810924370, -0.0022054621849, -0.0018079831933, \n    -0.0007180672269, +0.0004102941176, -0.0000897058824, -0.0013464285714, \n    -0.0021991596639, -0.0027569327731, -0.0025838235294, -0.0025581932773, \n    -0.0025132352941, -0.0021092436975, -0.0026478991597, -0.0036350840336, \n    -0.0031544117647, -0.0016476890756, +0.0000000000000, +0.0012693277311, \n    +0.0013592436975, +0.0007630252101, +0.0000193277311, -0.0007949579832, \n    -0.0012823529412, -0.0012951680672, -0.0007949579832, +0.0001281512605, \n    +0.0004231092437, +0.0001602941176, -0.0001474789916, -0.0009552521008, \n    -0.0018014705882, -0.0023144957983, -0.0029235294118, -0.0032890756303, \n    -0.0026542016807, -0.0015514705882, -0.0007693277311, -0.0003077731092, \n    -0.0003205882353, -0.0006859243697, -0.0004424369748, +0.0007758403361, \n    +0.0020579831933, +0.0022695378151, +0.0017823529412, +0.0018336134454, \n    +0.0018014705882, +0.0010065126050, +0.0001537815126, -0.0004808823529, \n    -0.0005705882353, +0.0003140756303, +0.0012117647059, +0.0016283613445, \n    +0.0015323529412, +0.0005642857143, -0.0007693277311, -0.0021413865546, \n    -0.0031544117647, -0.0030516806723, -0.0022760504202, -0.0009745798319, \n    +0.0005834033613, +0.0009361344538, +0.0002308823529, -0.0003140756303, \n    -0.0004168067227, +0.0002565126050, +0.0013848739496, +0.0022567226891, \n    +0.0024235294118, +0.0015579831933, -0.0000962184874, -0.0015579831933, \n    -0.0020773109244, -0.0013783613445, +0.0000962184874, +0.0016283613445, \n    +0.0026926470588, +0.0030197478992, +0.0021285714286, +0.0002500000000, \n    -0.0012630252101, -0.0014617647059, -0.0004231092437, +0.0008590336134, \n    +0.0015707983193, +0.0013592436975, +0.0005449579832, -0.0003012605042, \n    -0.0010130252101, -0.0013720588235, -0.0010386554622, -0.0000897058824, \n    +0.0007565126050, +0.0010514705882, +0.0012245798319, +0.0014361344538, \n    +0.0010899159664, +0.0005000000000, +0.0003911764706, +0.0006924369748, \n    +0.0011668067227, +0.0014168067227, +0.0011989495798, +0.0005000000000, \n    -0.0002949579832, -0.0005577731092, -0.0000449579832, +0.0008655462185, \n    +0.0017567226891, +0.0020516806723, +0.0014552521008, -0.0000193277311, \n    -0.0018014705882, -0.0025451680672, -0.0019361344538, -0.0006090336134, \n    +0.0011155462185, +0.0023464285714, +0.0023722689076, +0.0015195378151, \n    +0.0001474789916, -0.0011092436975, -0.0016989495798, -0.0015771008403, \n    -0.0008527310924, +0.0000193277311, +0.0008077731092, +0.0016220588235, \n    +0.0019105042017, +0.0015964285714, +0.0010642857143, +0.0006346638655, \n    +0.0003397058824, -0.0002371848739, -0.0012245798319, -0.0020260504202, \n    -0.0022888655462, -0.0017886554622, -0.0005834033613, +0.0008911764706, \n    +0.0020388655462, +0.0023850840336, +0.0021029411765, +0.0015130252101, \n    +0.0009424369748, +0.0005384453782, -0.0000193277311, -0.0008783613445, \n    -0.0016411764706, -0.0016926470588, -0.0006411764706, +0.0005962184874, \n    +0.0013911764706, +0.0018464285714, +0.0017886554622, +0.0011283613445, \n    +0.0000897058824, -0.0009361344538, -0.0013464285714, -0.0010642857143, \n    -0.0003268907563, +0.0005962184874, +0.0010386554622, +0.0006987394958, \n    -0.0000512605042, -0.0008271008403, -0.0013976890756, -0.0016283613445, \n    -0.0015386554622, -0.0012245798319, -0.0009680672269, -0.0008911764706, \n    -0.0007821428571, -0.0006602941176, -0.0005065126050, -0.0000962184874, \n    +0.0002180672269, +0.0003077731092, +0.0003462184874, +0.0003205882353, \n    +0.0002565126050, +0.0000000000000, -0.0005128151261, -0.0009489495798, \n    -0.0014873949580, -0.0019170168067, -0.0017502100840, -0.0012565126050, \n    -0.0006731092437, -0.0002628151261, -0.0003525210084, -0.0008142857143, \n    -0.0011733193277, -0.0010834033613, -0.0008142857143, -0.0006924369748, \n    -0.0009233193277, -0.0016411764706, -0.0021798319328, -0.0020132352941, \n    -0.0012502100840, +0.0000577731092, +0.0011924369748, +0.0014873949580, \n    +0.0010386554622, +0.0001346638655, -0.0004871848739, -0.0007693277311, \n    -0.0011411764706, -0.0014168067227, -0.0014939075630, -0.0013911764706, \n    -0.0009617647059, -0.0008142857143, -0.0010321428571, -0.0010705882353, \n    -0.0012630252101, -0.0017373949580, -0.0020516806723, -0.0021285714286, \n    -0.0020323529412, -0.0018014705882, -0.0013464285714, -0.0005256302521, \n    +0.0001537815126, +0.0003974789916, +0.0004359243697, +0.0001859243697, \n    -0.0001346638655, -0.0001346638655, -0.0000065126050, +0.0000000000000, \n    -0.0001281512605, -0.0003718487395, -0.0006218487395, -0.0007436974790, \n    -0.0006796218487, -0.0003911764706, +0.0001409663866, +0.0007115546218, \n    +0.0009102941176, +0.0005514705882, -0.0003397058824, -0.0010577731092, \n    -0.0010642857143, -0.0009039915966, -0.0008399159664, -0.0006987394958, \n    -0.0005193277311, -0.0004296218487, -0.0005642857143, -0.0006796218487, \n    -0.0007052521008, -0.0007949579832, -0.0007308823529, -0.0005705882353, \n    -0.0006283613445, -0.0006539915966, -0.0005193277311, -0.0004039915966, \n    -0.0003140756303, -0.0001794117647, -0.0000768907563, +0.0000834033613, \n    +0.0005128151261, +0.0007502100840, +0.0003462184874, -0.0003077731092, \n    -0.0005514705882, -0.0003205882353, -0.0002884453782, -0.0005128151261, \n    -0.0004039915966, -0.0001987394958, -0.0002565126050, -0.0005193277311, \n    -0.0008846638655, -0.0009873949580, -0.0007436974790, -0.0005321428571, \n    -0.0004424369748, -0.0005321428571, -0.0008077731092, -0.0010002100840, \n    -0.0009680672269, -0.0006668067227, -0.0000640756303, +0.0005065126050, \n    +0.0007436974790, +0.0006090336134, +0.0001731092437, -0.0001859243697, \n    -0.0002371848739, -0.0000640756303, +0.0000962184874, +0.0001346638655, \n    -0.0000449579832, -0.0002052521008, -0.0003783613445, -0.0006796218487, \n    -0.0006987394958, -0.0002693277311, +0.0002821428571, +0.0006859243697, \n    +0.0007308823529, +0.0005256302521, +0.0003012605042, -0.0001859243697, \n    -0.0007502100840, -0.0007821428571, -0.0002180672269, +0.0003783613445, \n    +0.0003911764706, +0.0000000000000, -0.0001153361345, +0.0000705882353, \n    +0.0003140756303, +0.0004296218487, +0.0001924369748, -0.0000065126050, \n    +0.0000962184874, +0.0002052521008, +0.0001602941176, -0.0000449579832, \n    -0.0001474789916, +0.0001409663866, +0.0003655462185, +0.0003077731092, \n    +0.0002500000000, +0.0001859243697, +0.0000000000000, -0.0002371848739, \n    -0.0002693277311, +0.0000193277311, +0.0004168067227, +0.0007243697479, \n    +0.0008271008403, +0.0006027310924, +0.0003974789916, +0.0003334033613, \n    +0.0001474789916, +0.0001025210084, +0.0003655462185, +0.0006218487395, \n    +0.0004936974790, -0.0000128151261, -0.0004871848739, -0.0005256302521, \n    -0.0002565126050, +0.0001346638655, +0.0005193277311, +0.0008014705882, \n    +0.0008974789916, +0.0007758403361, +0.0005065126050, +0.0003397058824, \n    +0.0004296218487, +0.0007115546218, +0.0010449579832, +0.0011605042017, \n    +0.0008462184874, +0.0002693277311, -0.0001474789916, -0.0000705882353, \n    +0.0001859243697, +0.0002115546218, +0.0003525210084, +0.0007565126050, \n    +0.0010514705882, +0.0010193277311, +0.0006796218487, +0.0004424369748, \n    +0.0004552521008, +0.0004296218487, +0.0003268907563, +0.0001794117647, \n    +0.0000065126050, +0.0000128151261, +0.0001794117647, +0.0005128151261, \n    +0.0009680672269, +0.0012373949580, +0.0012502100840, +0.0010130252101, \n    +0.0006283613445, +0.0003846638655, +0.0003397058824, +0.0003783613445, \n    +0.0006796218487, +0.0011733193277, +0.0015964285714, +0.0016989495798, \n    +0.0014939075630, +0.0012052521008, +0.0008846638655, +0.0006218487395, \n    +0.0004296218487, +0.0001218487395, -0.0001731092437, -0.0002436974790, \n    -0.0001346638655, +0.0001537815126, +0.0003974789916, +0.0003846638655, \n    +0.0003846638655, +0.0004808823529, +0.0004487394958, +0.0002756302521, \n    +0.0001537815126, +0.0002756302521, +0.0004487394958, +0.0004168067227, \n    +0.0004168067227, +0.0004743697479, +0.0003655462185, +0.0001924369748, \n    +0.0001409663866, +0.0003077731092, +0.0006346638655, +0.0010002100840, \n    +0.0013079831933, +0.0012565126050, +0.0008399159664, +0.0003140756303, \n    -0.0001474789916, -0.0003012605042, -0.0000834033613, +0.0003140756303, \n    +0.0008205882353, +0.0010771008403, +0.0009361344538, +0.0006474789916, \n    +0.0003012605042, -0.0001409663866, -0.0004359243697, -0.0002884453782, \n    +0.0001665966387, +0.0005065126050, +0.0005834033613, +0.0002884453782, \n    -0.0002565126050, -0.0007308823529, -0.0008911764706, -0.0005899159664, \n    -0.0000449579832, +0.0003397058824, +0.0005962184874, +0.0008205882353, \n    +0.0008718487395, +0.0006796218487, +0.0003655462185, +0.0002243697479, \n    +0.0003268907563, +0.0004615546218, +0.0004743697479, +0.0003462184874, \n    -0.0000256302521, -0.0004359243697, -0.0007180672269, -0.0008974789916, \n    -0.0008205882353, -0.0004936974790, -0.0001025210084, +0.0002693277311, \n    +0.0003718487395, +0.0001090336134, -0.0003268907563, -0.0006859243697, \n    -0.0007052521008, -0.0004102941176, -0.0000512605042, +0.0002243697479, \n    +0.0001987394958, -0.0002180672269, -0.0006027310924, -0.0005705882353, \n    -0.0000577731092, +0.0005577731092, +0.0008590336134, +0.0006155462185, \n    -0.0000834033613, -0.0006796218487, -0.0005384453782, +0.0002115546218, \n    +0.0011027310924, +0.0015195378151, +0.0010642857143, +0.0000640756303, \n    -0.0009424369748, -0.0016605042017, -0.0016542016807, -0.0009489495798, \n    -0.0000256302521, +0.0006924369748, +0.0009424369748, +0.0007502100840, \n    +0.0003140756303, -0.0003140756303, -0.0008974789916, -0.0010705882353, \n    -0.0007243697479, -0.0002308823529, -0.0001409663866, -0.0001602941176, \n    +0.0000705882353, +0.0001602941176, +0.0000834033613, +0.0001474789916, \n    +0.0002884453782, +0.0002821428571, -0.0000897058824, -0.0006283613445, \n    -0.0007373949580, -0.0002308823529, +0.0004680672269, +0.0007886554622, \n    +0.0005771008403, +0.0000962184874, -0.0003718487395, -0.0005771008403, \n    -0.0004039915966, -0.0000449579832, +0.0001281512605, -0.0000512605042, \n    -0.0005065126050, -0.0009361344538, -0.0011027310924, -0.0008974789916, \n    -0.0005128151261, -0.0002565126050, -0.0001474789916, -0.0000128151261, \n    +0.0000962184874, +0.0000065126050, -0.0001409663866, -0.0000449579832, \n    +0.0004487394958, +0.0010065126050, +0.0010386554622, +0.0005193277311, \n    +0.0000256302521, +0.0000705882353, +0.0003718487395, +0.0004039915966, \n    +0.0000834033613, -0.0002308823529, -0.0004296218487, -0.0005962184874, \n    -0.0006155462185, -0.0001987394958, +0.0006218487395, +0.0014105042017, \n    +0.0016605042017, +0.0013014705882, +0.0006924369748, +0.0001090336134, \n    -0.0002243697479, -0.0001218487395, +0.0003525210084, +0.0007630252101, \n    +0.0006796218487, +0.0001025210084, -0.0005065126050, -0.0006859243697, \n    -0.0003974789916, -0.0000065126050, +0.0001987394958, +0.0003718487395, \n    +0.0007693277311, +0.0012758403361, +0.0015386554622, +0.0014361344538, \n    +0.0010321428571, +0.0003783613445, -0.0003205882353, -0.0007436974790, \n    -0.0006859243697, -0.0002115546218, +0.0003590336134, +0.0006987394958, \n    +0.0007052521008, +0.0005577731092, +0.0005128151261, +0.0006155462185, \n    +0.0005834033613, +0.0002884453782, -0.0000128151261, -0.0000577731092, \n    +0.0001987394958, +0.0004871848739, +0.0006155462185, +0.0006796218487, \n    +0.0005834033613, +0.0002821428571, +0.0000193277311, -0.0001859243697, \n    -0.0003974789916, -0.0004102941176, -0.0000768907563, +0.0004743697479, \n    +0.0009361344538, +0.0011027310924, +0.0009680672269, +0.0006668067227, \n    +0.0003205882353, +0.0000193277311, -0.0000640756303, +0.0000321428571, \n    +0.0000962184874, +0.0002052521008, +0.0004424369748, +0.0006283613445, \n    +0.0005962184874, +0.0005321428571, +0.0006411764706, +0.0007693277311, \n    +0.0007565126050, +0.0006027310924, +0.0003397058824, +0.0000256302521, \n    -0.0002628151261, -0.0003397058824, -0.0001409663866, +0.0000577731092, \n    +0.0001346638655, +0.0000449579832, -0.0000768907563, -0.0000768907563, \n    -0.0001153361345, -0.0000640756303, +0.0002628151261, +0.0006218487395, \n    +0.0007693277311, +0.0006411764706, +0.0003846638655, +0.0001474789916, \n    -0.0001090336134, -0.0002565126050, -0.0001409663866, +0.0001025210084, \n    +0.0002436974790, +0.0002115546218, +0.0001346638655, +0.0000384453782, \n    -0.0001409663866, -0.0003397058824, -0.0003974789916, -0.0003077731092, \n    -0.0002371848739, -0.0001924369748, -0.0001731092437, -0.0001731092437, \n    -0.0000705882353, +0.0000384453782, +0.0000193277311, -0.0000256302521, \n    -0.0001409663866, -0.0003334033613, -0.0004552521008, -0.0004296218487, \n    -0.0002436974790, -0.0000256302521, +0.0001474789916, +0.0002436974790, \n    +0.0001346638655, -0.0000512605042, -0.0001987394958, -0.0003205882353, \n    -0.0003205882353, -0.0002243697479, -0.0001474789916, -0.0000640756303, \n    -0.0000640756303, -0.0002052521008, -0.0004102941176, -0.0005321428571, \n    -0.0004424369748, -0.0002243697479, +0.0000449579832, +0.0002628151261, \n    +0.0002371848739, +0.0000000000000, -0.0001987394958, -0.0002693277311, \n    -0.0003012605042, -0.0003077731092, -0.0001859243697, -0.0000834033613, \n    -0.0000962184874, -0.0000962184874, -0.0000193277311, +0.0000577731092, \n    +0.0000321428571, -0.0000768907563, -0.0001794117647, -0.0002821428571, \n    -0.0004102941176, -0.0004743697479, -0.0003846638655, -0.0001987394958, \n    -0.0000256302521, +0.0000384453782, -0.0000705882353, -0.0003525210084, \n    -0.0006027310924, -0.0006346638655, -0.0004102941176, -0.0000577731092, \n    +0.0002693277311, +0.0004424369748, +0.0004168067227, +0.0002884453782, \n    +0.0001025210084, -0.0001090336134, -0.0002756302521, -0.0004552521008, \n    -0.0007180672269, -0.0008399159664, -0.0006731092437, -0.0002693277311, \n    +0.0002243697479, +0.0005256302521, +0.0005321428571, +0.0002371848739, \n    -0.0003268907563, -0.0008142857143, -0.0009233193277, -0.0006346638655, \n    -0.0000897058824, +0.0003590336134, +0.0004168067227, +0.0001987394958, \n    -0.0000577731092, -0.0001731092437, -0.0001409663866, -0.0001090336134, \n    -0.0001153361345, -0.0002693277311, -0.0006924369748, -0.0009745798319, \n    -0.0008205882353, -0.0004359243697, +0.0000000000000, +0.0002884453782, \n    +0.0002180672269, -0.0000640756303, -0.0004231092437, -0.0007052521008, \n    -0.0006731092437, -0.0005065126050, -0.0003077731092, -0.0001346638655, \n    -0.0001409663866, -0.0001281512605, -0.0000128151261, +0.0000128151261, \n    -0.0001090336134, -0.0004231092437, -0.0006731092437, -0.0006859243697, \n    -0.0006474789916, -0.0005384453782, -0.0003397058824, -0.0001346638655, \n    +0.0000321428571, +0.0001218487395, +0.0001859243697, +0.0002500000000, \n    +0.0000640756303, -0.0003655462185, -0.0007565126050, -0.0008271008403, \n    -0.0006346638655, -0.0003590336134, -0.0000962184874, +0.0000256302521, \n    -0.0000128151261, -0.0001794117647, -0.0004424369748, -0.0006218487395, \n    -0.0005321428571, -0.0002371848739, +0.0000705882353, +0.0001665966387, \n    -0.0000321428571, -0.0003655462185, -0.0006090336134, -0.0006411764706, \n    -0.0005065126050, -0.0003012605042, -0.0001346638655, -0.0001537815126, \n    -0.0003525210084, -0.0006090336134, -0.0007180672269, -0.0005384453782, \n    -0.0001409663866, +0.0002052521008, +0.0002821428571, +0.0001346638655, \n    -0.0000768907563, -0.0003140756303, -0.0003974789916, -0.0002565126050, \n    -0.0000768907563, +0.0000000000000, -0.0000962184874, -0.0002756302521, \n    -0.0003974789916, -0.0004102941176, -0.0003846638655, -0.0004296218487, \n    -0.0005000000000, -0.0005384453782, -0.0004936974790, -0.0002500000000, \n    +0.0000768907563, +0.0002052521008, +0.0001602941176, +0.0000384453782, \n    -0.0001602941176, -0.0004552521008, -0.0006859243697, -0.0006731092437, \n    -0.0003462184874, +0.0000193277311, +0.0001346638655, +0.0000000000000, \n    -0.0002436974790, -0.0005065126050, -0.0006090336134, -0.0005384453782, \n    -0.0002821428571, +0.0000577731092, +0.0002500000000, +0.0002628151261, \n    +0.0001859243697, +0.0000640756303, -0.0000577731092, -0.0002052521008, \n    -0.0003783613445, -0.0004552521008, -0.0003655462185, -0.0001602941176, \n    +0.0000256302521, +0.0001153361345, +0.0000705882353, -0.0000897058824, \n    -0.0002565126050, -0.0003012605042, -0.0002436974790, -0.0000962184874, \n    +0.0000512605042, +0.0001731092437, +0.0002115546218, +0.0000384453782, \n    -0.0002243697479, -0.0004168067227, -0.0005193277311, -0.0004359243697, \n    -0.0001602941176, +0.0001090336134, +0.0001859243697, +0.0000065126050, \n    -0.0002693277311, -0.0004743697479, -0.0005065126050, -0.0002500000000, \n    +0.0001537815126, +0.0003911764706, +0.0003590336134, +0.0001474789916, \n    -0.0001474789916, -0.0003655462185, -0.0003077731092, -0.0000128151261, \n    +0.0002500000000, +0.0003012605042, +0.0001346638655, -0.0000897058824, \n    -0.0002308823529, -0.0002628151261, -0.0001731092437, -0.0000577731092, \n    +0.0000000000000, -0.0000128151261, -0.0000962184874, -0.0001537815126, \n    -0.0001090336134, -0.0000321428571, +0.0000321428571, +0.0000449579832, \n    -0.0000897058824, -0.0002821428571, -0.0003462184874, -0.0002949579832, \n    -0.0001794117647, +0.0000065126050, +0.0002500000000, +0.0004487394958, \n    +0.0004936974790, +0.0004039915966, +0.0003462184874, +0.0003655462185, \n    +0.0003655462185, +0.0003397058824, +0.0002243697479, +0.0000000000000, \n    -0.0002436974790, -0.0003846638655, -0.0003718487395, -0.0002693277311, \n    -0.0002052521008, -0.0001474789916, -0.0000449579832, -0.0000128151261, \n    -0.0000834033613, -0.0001602941176, -0.0001859243697, -0.0001924369748, \n    -0.0001924369748, -0.0001602941176, -0.0000705882353, +0.0000128151261, \n    +0.0000128151261, -0.0000128151261, -0.0000449579832, -0.0000897058824, \n    -0.0000834033613, -0.0000065126050, +0.0000449579832, +0.0000449579832, \n    -0.0000321428571, -0.0001537815126, -0.0001859243697, -0.0000897058824, \n    +0.0000705882353, +0.0001924369748, +0.0002308823529, +0.0001665966387, \n    -0.0000256302521, -0.0002308823529, -0.0002308823529, -0.0000897058824, \n    +0.0000256302521, +0.0000640756303, -0.0000065126050, -0.0001346638655, \n    -0.0002052521008, -0.0002052521008, -0.0000321428571, +0.0002756302521, \n    +0.0005000000000, +0.0004936974790, +0.0003077731092, +0.0000962184874, \n    -0.0000449579832, -0.0001602941176, -0.0001924369748, -0.0000577731092, \n    +0.0000577731092, +0.0001090336134, +0.0001859243697, +0.0002756302521, \n    +0.0002756302521, +0.0002180672269, +0.0001987394958, +0.0002052521008, \n    +0.0001153361345, +0.0000128151261, -0.0000193277311, -0.0000449579832, \n    -0.0000256302521, +0.0000128151261, +0.0000384453782, +0.0000449579832, \n    +0.0000705882353, +0.0001794117647, +0.0002565126050, +0.0002308823529, \n    +0.0002180672269, +0.0002052521008, +0.0001537815126, +0.0001090336134, \n    +0.0000768907563, +0.0001025210084, +0.0001602941176, +0.0001409663866, \n    +0.0001346638655, +0.0001794117647, +0.0002308823529, +0.0002884453782, \n    +0.0003397058824, +0.0003525210084, +0.0002949579832, +0.0001794117647, \n    +0.0001346638655, +0.0001731092437, +0.0002052521008, +0.0002628151261, \n    +0.0003268907563, +0.0002565126050, +0.0000577731092, -0.0000384453782, \n    +0.0000000000000, +0.0001025210084, +0.0001665966387, +0.0001731092437, \n    +0.0001090336134, +0.0000256302521, -0.0000065126050, +0.0000705882353, \n    +0.0002052521008, +0.0002884453782, +0.0003334033613, +0.0002500000000, \n    +0.0000449579832, -0.0000768907563, -0.0001090336134, -0.0001025210084, \n    -0.0000128151261, +0.0001218487395, +0.0002115546218, +0.0002756302521, \n    +0.0003590336134, +0.0004168067227, +0.0003590336134, +0.0002115546218, \n    +0.0000834033613, +0.0000000000000, -0.0000321428571, +0.0000321428571, \n    +0.0001474789916, +0.0001859243697, +0.0001218487395, -0.0000768907563, \n    -0.0003077731092, -0.0003525210084, -0.0001924369748, +0.0000256302521, \n    +0.0002628151261, +0.0004424369748, +0.0005256302521, +0.0005705882353, \n    +0.0005514705882, +0.0004168067227, +0.0002180672269, -0.0000321428571, \n    -0.0003077731092, -0.0004296218487, -0.0003525210084, -0.0001474789916, \n    +0.0000705882353, +0.0002436974790, +0.0004039915966, +0.0005128151261, \n    +0.0005577731092, +0.0005771008403, +0.0005128151261, +0.0003590336134, \n    +0.0001474789916, -0.0000834033613, -0.0002693277311, -0.0003268907563, \n    -0.0002756302521, -0.0001025210084, +0.0001025210084, +0.0002628151261, \n    +0.0003911764706, +0.0004231092437, +0.0003077731092, +0.0002115546218, \n    +0.0002436974790, +0.0003140756303, +0.0003846638655, +0.0003846638655, \n    +0.0002565126050, +0.0000384453782, -0.0001153361345, -0.0001346638655, \n    -0.0000384453782, +0.0001090336134, +0.0002436974790, +0.0002436974790, \n    +0.0001731092437, +0.0001409663866, +0.0001409663866, +0.0001153361345, \n    +0.0000577731092, +0.0000193277311, +0.0000000000000, -0.0000768907563, \n    -0.0001218487395, -0.0000962184874, -0.0000256302521, +0.0000705882353, \n    +0.0000577731092, -0.0000897058824, -0.0002628151261, -0.0003590336134, \n    -0.0002628151261, +0.0000256302521, +0.0003590336134, +0.0006474789916, \n    +0.0008077731092, +0.0006796218487, +0.0002371848739, -0.0003205882353, \n    -0.0007052521008, -0.0007052521008, -0.0003846638655, +0.0000321428571, \n    +0.0003655462185, +0.0005449579832, +0.0005193277311, +0.0003012605042, \n    +0.0000897058824, +0.0000512605042, +0.0000897058824, +0.0000384453782, \n    +0.0000000000000, +0.0000384453782, +0.0001281512605, +0.0002500000000, \n    +0.0003525210084, +0.0003590336134, +0.0003462184874, +0.0002949579832, \n    +0.0001218487395, -0.0000577731092, -0.0001409663866, -0.0000640756303, \n    +0.0001218487395, +0.0002500000000, +0.0002308823529, +0.0001218487395, \n    +0.0000577731092, +0.0000768907563, +0.0000834033613, +0.0000512605042, \n    +0.0000512605042, +0.0001665966387, +0.0003012605042, +0.0003655462185, \n    +0.0004039915966, +0.0004168067227, +0.0003974789916, +0.0003655462185, \n    +0.0002693277311, +0.0001281512605, -0.0000065126050, -0.0001602941176, \n    -0.0002436974790, -0.0002115546218, -0.0000256302521, +0.0002756302521, \n    +0.0005193277311, +0.0005962184874, +0.0005449579832, +0.0003655462185, \n    +0.0001409663866, -0.0000577731092, -0.0002180672269, -0.0002884453782, \n    -0.0002436974790, -0.0001218487395, +0.0000640756303, +0.0003077731092, \n    +0.0004871848739, +0.0004936974790, +0.0003462184874, +0.0001153361345, \n    -0.0001409663866, -0.0003846638655, -0.0004871848739, -0.0003911764706, \n    -0.0001665966387, +0.0000834033613, +0.0003077731092, +0.0004231092437, \n    +0.0003590336134, +0.0001665966387, +0.0000193277311, -0.0000384453782, \n    -0.0000768907563, -0.0001090336134, -0.0001281512605, -0.0000577731092, \n    +0.0001218487395, +0.0002756302521, +0.0002693277311, +0.0001602941176, \n    +0.0000128151261, -0.0001474789916, -0.0002693277311, -0.0002180672269, \n    -0.0000384453782, +0.0001281512605, +0.0002756302521, +0.0003590336134, \n    +0.0002565126050, +0.0000384453782, -0.0000768907563, +0.0000000000000, \n    +0.0001537815126, +0.0001859243697, +0.0000768907563, -0.0000768907563, \n    -0.0002052521008, -0.0001859243697, -0.0000256302521, +0.0001409663866, \n    +0.0002243697479, +0.0001859243697, +0.0000768907563, +0.0000000000000, \n    -0.0000128151261, +0.0000065126050, +0.0000640756303, +0.0000897058824, \n    +0.0000705882353, +0.0000705882353, +0.0001281512605, +0.0001474789916, \n    +0.0000768907563, -0.0000512605042, -0.0001409663866, -0.0001602941176, \n    -0.0001346638655, -0.0000834033613, +0.0000000000000, +0.0000705882353, \n    +0.0001346638655, +0.0002180672269, +0.0003077731092, +0.0003268907563, \n    +0.0002371848739, +0.0000962184874, -0.0000065126050, -0.0000834033613, \n    -0.0001537815126, -0.0001794117647, -0.0001153361345, +0.0000065126050, \n    +0.0001665966387, +0.0002949579832, +0.0003718487395, +0.0003655462185, \n    +0.0002756302521, +0.0001153361345, -0.0001218487395, -0.0003462184874, \n    -0.0004231092437, -0.0003655462185, -0.0002115546218, -0.0000449579832, \n    +0.0000384453782, +0.0000640756303, +0.0000193277311, -0.0000768907563, \n    -0.0001731092437, -0.0001731092437, -0.0000768907563, +0.0000640756303, \n    +0.0001537815126, +0.0002052521008, +0.0002115546218, +0.0000962184874, \n    -0.0000897058824, -0.0002565126050, -0.0003268907563, -0.0002693277311, \n    -0.0001794117647, -0.0001218487395, -0.0000384453782, +0.0000321428571, \n    +0.0000897058824, +0.0001346638655, +0.0001025210084, -0.0000128151261, \n    -0.0001731092437, -0.0003334033613, -0.0004424369748, -0.0004359243697, \n    -0.0003012605042, -0.0000577731092, +0.0001665966387, +0.0002565126050, \n    +0.0002628151261, +0.0002052521008, +0.0000321428571, -0.0001987394958, \n    -0.0003974789916, -0.0004936974790, -0.0004359243697, -0.0002565126050, \n    -0.0000321428571, +0.0001025210084, +0.0000640756303, -0.0000512605042, \n    -0.0001924369748, -0.0003012605042, -0.0002884453782, -0.0001665966387, \n    -0.0000256302521, +0.0000640756303, +0.0000640756303, +0.0000128151261, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, -0.0000834033613, \n    -0.0002371848739, -0.0003590336134, -0.0003911764706, -0.0003012605042, \n    -0.0000834033613, +0.0001602941176, +0.0003012605042, +0.0002436974790, \n    -0.0000193277311, -0.0003140756303, -0.0004102941176, -0.0002949579832, \n    -0.0001090336134, +0.0000000000000, +0.0000000000000, -0.0000449579832, \n    -0.0000768907563, -0.0001281512605, -0.0001859243697, -0.0001859243697, \n    -0.0001474789916, -0.0001731092437, -0.0002436974790, -0.0002500000000, \n    -0.0001537815126, -0.0000384453782, +0.0000384453782, +0.0000962184874, \n    +0.0000834033613, -0.0000384453782, -0.0001794117647, -0.0002436974790, \n    -0.0002436974790, -0.0002500000000, -0.0002180672269, -0.0001281512605, \n    -0.0000449579832, -0.0000577731092, -0.0001153361345, -0.0001474789916, \n    -0.0001474789916, -0.0001090336134, -0.0000384453782, +0.0000193277311, \n    +0.0000512605042, +0.0000640756303, +0.0000384453782, -0.0000640756303, \n    -0.0001859243697, -0.0002821428571, -0.0003397058824, -0.0003012605042, \n    -0.0001602941176, +0.0000000000000, +0.0000897058824, +0.0000577731092, \n    -0.0000256302521, -0.0001153361345, -0.0001474789916, -0.0001537815126, \n    -0.0001474789916, -0.0001281512605, -0.0000640756303, -0.0000128151261, \n    -0.0000384453782, -0.0001218487395, -0.0001665966387, -0.0001218487395, \n    -0.0000512605042, -0.0000193277311, -0.0000128151261, +0.0000128151261, \n    +0.0000512605042, +0.0000577731092, +0.0000577731092, +0.0000512605042, \n    +0.0000384453782, +0.0000065126050, -0.0000768907563, -0.0002115546218, \n    -0.0003268907563, -0.0003846638655, -0.0003268907563, -0.0001602941176, \n    +0.0000256302521, +0.0001794117647, +0.0002500000000, +0.0001602941176, \n    -0.0000321428571, -0.0001859243697, -0.0002243697479, -0.0001794117647, \n    -0.0001409663866, -0.0001153361345, -0.0001218487395, -0.0001731092437, \n    -0.0002115546218, -0.0001987394958, -0.0001731092437, -0.0001346638655, \n    -0.0000640756303, +0.0000128151261, +0.0000384453782, +0.0000512605042, \n    +0.0000768907563, +0.0000962184874, +0.0000449579832, -0.0000962184874, \n    -0.0002821428571, -0.0004231092437, -0.0004871848739, -0.0004552521008, \n    -0.0003268907563, -0.0002115546218, -0.0001281512605, -0.0000193277311, \n    +0.0000640756303, +0.0000834033613, +0.0000321428571, -0.0000256302521, \n    +0.0000065126050, +0.0000640756303, +0.0000705882353, +0.0000193277311, \n    -0.0000321428571, -0.0000321428571, -0.0000065126050, -0.0000193277311, \n    -0.0000384453782, -0.0000384453782, -0.0000321428571, -0.0000449579832, \n    -0.0001218487395, -0.0002180672269, -0.0002821428571, -0.0002436974790, \n    -0.0001281512605, -0.0000705882353, -0.0001090336134, -0.0001665966387, \n    -0.0001602941176, -0.0000897058824, +0.0000000000000, +0.0001281512605, \n    +0.0003140756303, +0.0003718487395, +0.0002371848739, +0.0000577731092, \n    -0.0000962184874, -0.0001794117647, -0.0001537815126, -0.0000768907563, \n    -0.0000193277311, -0.0000256302521, -0.0000512605042, -0.0000384453782, \n    -0.0000256302521, -0.0000384453782, -0.0000512605042, -0.0000640756303, \n    -0.0001218487395, -0.0001665966387, -0.0001537815126, -0.0001281512605, \n    -0.0000834033613, +0.0000000000000, +0.0000705882353, +0.0001153361345, \n    +0.0001537815126, +0.0001665966387, +0.0001731092437, +0.0001474789916, \n    +0.0000834033613, +0.0000256302521, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, -0.0000512605042, -0.0001218487395, -0.0001218487395, \n    -0.0000834033613, -0.0000384453782, +0.0000000000000, +0.0000256302521, \n    +0.0000577731092, +0.0000705882353, +0.0000449579832, -0.0000065126050, \n    -0.0000834033613, -0.0001602941176, -0.0001602941176, -0.0001025210084, \n    -0.0000449579832, +0.0000065126050, +0.0000193277311, +0.0000000000000, \n    -0.0000065126050, -0.0000065126050, +0.0000000000000, +0.0000065126050, \n    -0.0000321428571, -0.0001090336134, -0.0001537815126, -0.0001346638655, \n    -0.0000384453782, +0.0000768907563, +0.0001346638655, +0.0001346638655, \n    +0.0000962184874, +0.0000512605042, +0.0000577731092, +0.0000640756303, \n    +0.0000512605042, +0.0000449579832, +0.0000193277311, +0.0000000000000, \n    +0.0000128151261, +0.0000384453782, +0.0000897058824, +0.0001281512605, \n    +0.0000705882353, -0.0000321428571, -0.0001090336134, -0.0001346638655, \n    -0.0000897058824, +0.0000000000000, +0.0001090336134, +0.0001409663866, \n    +0.0000705882353, -0.0000065126050, +0.0000000000000, +0.0001025210084, \n    +0.0001987394958, +0.0002756302521, +0.0002884453782, +0.0001924369748, \n    +0.0000256302521, -0.0000897058824, -0.0001665966387, -0.0002436974790, \n    -0.0002500000000, -0.0001537815126, -0.0000193277311, +0.0000705882353, \n    +0.0001090336134, +0.0001090336134, +0.0000897058824, +0.0000768907563, \n    +0.0000834033613, +0.0000897058824, +0.0000962184874, +0.0001153361345, \n    +0.0000897058824, +0.0000256302521, +0.0000000000000, -0.0000193277311, \n    -0.0000897058824, -0.0001537815126, -0.0001346638655, -0.0000705882353, \n    +0.0000065126050, +0.0000705882353, +0.0000768907563, +0.0000705882353, \n    +0.0000640756303, +0.0000512605042, +0.0000768907563, +0.0001090336134, \n    +0.0001090336134, +0.0000897058824, +0.0000834033613, +0.0000834033613, \n    +0.0000256302521, -0.0000834033613, -0.0001409663866, -0.0001346638655, \n    -0.0000897058824, -0.0000065126050, +0.0000897058824, +0.0001731092437, \n    +0.0002115546218, +0.0001731092437, +0.0000897058824, +0.0000640756303, \n    +0.0001025210084, +0.0001218487395, +0.0001090336134, +0.0001025210084, \n    +0.0001090336134, +0.0000768907563, +0.0000449579832, +0.0000768907563, \n    +0.0001474789916, +0.0001987394958, +0.0002115546218, +0.0001474789916, \n    +0.0000449579832, +0.0000321428571, +0.0001025210084, +0.0001409663866, \n    +0.0000705882353, -0.0000962184874, -0.0002243697479, -0.0002115546218, \n    -0.0000834033613, +0.0001218487395, +0.0002693277311, +0.0002436974790, \n    +0.0000962184874, -0.0000193277311, -0.0000449579832, -0.0000193277311, \n    +0.0000065126050, +0.0000256302521, +0.0000193277311, -0.0000321428571, \n    -0.0001090336134, -0.0001346638655, -0.0000897058824, -0.0000065126050, \n    +0.0000449579832, +0.0000577731092, +0.0000449579832, +0.0000449579832, \n    +0.0000577731092, +0.0000962184874, +0.0001537815126, +0.0001602941176, \n    +0.0001409663866, +0.0001474789916, +0.0001924369748, +0.0002115546218, \n    +0.0001794117647, +0.0001153361345, +0.0000193277311, -0.0000897058824, \n    -0.0001537815126, -0.0001153361345, -0.0000128151261, +0.0000640756303, \n    +0.0000640756303, +0.0000256302521, +0.0000065126050, +0.0000000000000, \n    -0.0000321428571, -0.0001218487395, -0.0002243697479, -0.0002628151261, \n    -0.0001859243697, +0.0000000000000, +0.0001924369748, +0.0002884453782, \n    +0.0002693277311, +0.0001731092437, +0.0000256302521, -0.0000897058824, \n    -0.0001537815126, -0.0001153361345, +0.0000065126050, +0.0001346638655, \n    +0.0002180672269, +0.0002243697479, +0.0001859243697, +0.0001281512605, \n    +0.0000640756303, -0.0000065126050, -0.0000962184874, -0.0001602941176, \n    -0.0001602941176, -0.0000897058824, +0.0000256302521, +0.0001474789916, \n    +0.0002308823529, +0.0002565126050, +0.0001924369748, +0.0000705882353, \n    +0.0000000000000, +0.0000065126050, +0.0000577731092, +0.0001025210084, \n    +0.0001218487395, +0.0001025210084, +0.0000512605042, -0.0000065126050, \n    -0.0000128151261, +0.0000193277311, +0.0000128151261, -0.0000193277311, \n    -0.0000256302521, +0.0000193277311, +0.0001346638655, +0.0002756302521, \n    +0.0003462184874, +0.0003268907563, +0.0002308823529, +0.0000640756303, \n    -0.0001090336134, -0.0001924369748, -0.0001153361345, +0.0000512605042, \n    +0.0001924369748, +0.0002180672269, +0.0001537815126, +0.0000512605042, \n    -0.0000065126050, +0.0000000000000, +0.0000834033613, +0.0002052521008, \n    +0.0002821428571, +0.0002565126050, +0.0001602941176, +0.0000000000000, \n    -0.0001218487395, -0.0001025210084, +0.0000256302521, +0.0001924369748, \n    +0.0003012605042, +0.0003205882353, +0.0002884453782, +0.0002308823529, \n    +0.0001731092437, +0.0001474789916, +0.0001474789916, +0.0001346638655, \n    +0.0000768907563, -0.0000065126050, -0.0000768907563, -0.0000834033613, \n    -0.0000449579832, +0.0000193277311, +0.0001025210084, +0.0001602941176, \n    +0.0001474789916, +0.0000193277311, -0.0001474789916, -0.0002371848739, \n    -0.0001924369748, -0.0000065126050, +0.0002180672269, +0.0003783613445, \n    +0.0003783613445, +0.0002180672269, +0.0000321428571, -0.0000768907563, \n    -0.0000834033613, -0.0000449579832, -0.0000321428571, -0.0000128151261, \n    +0.0000193277311, +0.0000834033613, +0.0001731092437, +0.0002565126050, \n    +0.0002756302521, +0.0001987394958, +0.0000577731092, -0.0000640756303, \n    -0.0000962184874, -0.0000449579832, +0.0000512605042, +0.0001090336134, \n    +0.0000768907563, +0.0000000000000, -0.0000577731092, -0.0000384453782, \n    +0.0000256302521, +0.0000768907563, +0.0000834033613, +0.0000193277311, \n    -0.0000834033613, -0.0001474789916, -0.0001153361345, +0.0000000000000, \n    +0.0001025210084, +0.0001281512605, +0.0000834033613, +0.0000193277311, \n    -0.0000128151261, +0.0000000000000, +0.0000193277311, +0.0000128151261, \n    -0.0000321428571, -0.0001090336134, -0.0001474789916, -0.0001281512605, \n    -0.0000768907563, -0.0000065126050, +0.0000768907563, +0.0001218487395, \n    +0.0000705882353, -0.0000065126050, -0.0000834033613, -0.0001346638655, \n    -0.0001665966387, -0.0001859243697, -0.0001987394958, -0.0001794117647, \n    -0.0001153361345, -0.0000128151261, +0.0000321428571, +0.0000449579832, \n    +0.0000321428571, +0.0000000000000, -0.0000065126050, -0.0000065126050, \n    +0.0000000000000, +0.0000065126050, -0.0000193277311, -0.0001090336134, \n    -0.0001859243697, -0.0002180672269, -0.0001665966387, -0.0000577731092, \n    +0.0000256302521, +0.0000577731092, +0.0000384453782, -0.0000065126050, \n    -0.0000577731092, -0.0000640756303, -0.0000321428571, +0.0000000000000, \n    +0.0000193277311, +0.0000000000000, -0.0000577731092, -0.0001218487395, \n    -0.0001218487395, -0.0000705882353, -0.0000128151261, +0.0000065126050, \n    -0.0000256302521, -0.0000834033613, -0.0001409663866, -0.0001859243697, \n    -0.0001987394958, -0.0001731092437, -0.0001281512605, -0.0000640756303, \n    -0.0000065126050, +0.0000193277311, +0.0000065126050, -0.0000065126050, \n    +0.0000000000000, +0.0000065126050, -0.0000193277311, -0.0000834033613, \n    -0.0001474789916, -0.0001409663866, -0.0000449579832, +0.0000577731092, \n    +0.0001153361345, +0.0001218487395, +0.0000768907563, +0.0000000000000, \n    -0.0000834033613, -0.0000962184874, +0.0000000000000, +0.0000962184874, \n    +0.0000834033613, +0.0000000000000, -0.0001025210084, -0.0001731092437, \n    -0.0001409663866, -0.0000256302521, +0.0001025210084, +0.0002180672269, \n    +0.0002693277311, +0.0002052521008, +0.0000705882353, -0.0000065126050, \n    -0.0000128151261, -0.0000128151261, -0.0000128151261, +0.0000065126050, \n    +0.0000256302521, +0.0000128151261, +0.0000193277311, +0.0000577731092, \n    +0.0000705882353, +0.0000512605042, +0.0000256302521, +0.0000065126050, \n    +0.0000193277311, +0.0000640756303, +0.0001537815126, +0.0002115546218, \n    +0.0001602941176, +0.0000449579832, -0.0000640756303, -0.0001346638655, \n    -0.0000962184874, +0.0000000000000, +0.0000193277311, -0.0000384453782, \n    -0.0001474789916, -0.0001924369748, -0.0001090336134, +0.0000384453782, \n    +0.0001859243697, +0.0002756302521, +0.0002628151261, +0.0001346638655, \n    -0.0000128151261, -0.0001025210084, -0.0000768907563, -0.0000065126050, \n    +0.0000321428571, +0.0000000000000, -0.0000512605042, -0.0000834033613, \n    -0.0000640756303, -0.0000128151261, +0.0000449579832, +0.0000962184874, \n    +0.0001090336134, +0.0000577731092, -0.0000128151261, -0.0000512605042, \n    -0.0000256302521, +0.0000193277311, +0.0000512605042, +0.0000834033613, \n    +0.0000962184874, +0.0000512605042, -0.0000512605042, -0.0001665966387, \n    -0.0002052521008, -0.0001281512605, +0.0000321428571, +0.0002052521008, \n    +0.0002500000000, +0.0001537815126, +0.0000000000000, -0.0001474789916, \n    -0.0002371848739, -0.0001987394958, -0.0001025210084, -0.0000065126050, \n    +0.0000321428571, +0.0000193277311, -0.0000193277311, -0.0000640756303, \n    -0.0000768907563, -0.0000768907563, -0.0000640756303, -0.0000384453782, \n    -0.0000128151261, -0.0000193277311, -0.0000193277311, -0.0000065126050, \n    +0.0000000000000, -0.0000193277311, -0.0000128151261, +0.0000065126050, \n    +0.0000193277311, +0.0000256302521, +0.0000256302521, +0.0000000000000, \n    -0.0000512605042, -0.0001153361345, -0.0001602941176, -0.0001474789916, \n    -0.0000897058824, +0.0000000000000, +0.0000962184874, +0.0001346638655, \n    +0.0000834033613, -0.0000128151261, -0.0000897058824, -0.0000834033613, \n    -0.0000193277311, +0.0000128151261, +0.0000321428571, +0.0000384453782, \n    +0.0000000000000, -0.0000640756303, -0.0001025210084, -0.0000897058824, \n    -0.0000640756303, -0.0000512605042, -0.0000512605042, -0.0000577731092, \n    -0.0000768907563, -0.0000705882353, -0.0000256302521, +0.0000128151261, \n    +0.0000256302521, +0.0000000000000, -0.0000321428571, -0.0000640756303, \n    -0.0000897058824, -0.0001153361345, -0.0001346638655, -0.0001281512605, \n    -0.0000640756303, +0.0000065126050, +0.0000384453782, +0.0000193277311, \n    -0.0000256302521, -0.0001025210084, -0.0001409663866, -0.0001153361345, \n    -0.0000640756303, -0.0000193277311, +0.0000128151261, +0.0000384453782, \n    +0.0000193277311, -0.0000193277311, -0.0000640756303, -0.0000834033613, \n    -0.0000834033613, -0.0000577731092, +0.0000065126050, +0.0001025210084, \n    +0.0001537815126, +0.0001346638655, +0.0000640756303, -0.0000321428571, \n    -0.0000897058824, -0.0000834033613, -0.0000512605042, -0.0000640756303, \n    -0.0000962184874, -0.0001218487395, -0.0001153361345, -0.0000768907563, \n    -0.0000193277311, +0.0000256302521, +0.0000193277311, -0.0000512605042, \n    -0.0001218487395, -0.0001474789916, -0.0001090336134, -0.0000321428571, \n    +0.0000256302521, +0.0000512605042, +0.0000384453782, +0.0000000000000, \n    -0.0000449579832, -0.0000705882353, -0.0000768907563, -0.0000768907563, \n    -0.0000897058824, -0.0000962184874, -0.0000640756303, +0.0000065126050, \n    +0.0001153361345, +0.0001731092437, +0.0001409663866, +0.0000705882353, \n    -0.0000193277311, -0.0001090336134, -0.0001474789916, -0.0001218487395, \n    -0.0000449579832, +0.0000193277311, +0.0000321428571, +0.0000000000000, \n    -0.0000321428571, -0.0000384453782, -0.0000128151261, +0.0000321428571, \n    +0.0000577731092, +0.0000577731092, +0.0000000000000, -0.0000962184874, \n    -0.0001731092437, -0.0001924369748, -0.0001346638655, -0.0000193277311, \n    +0.0000834033613, +0.0001218487395, +0.0000577731092, -0.0000321428571, \n    -0.0001153361345, -0.0001537815126, -0.0001218487395, -0.0000321428571, \n    +0.0000640756303, +0.0001090336134, +0.0000577731092, -0.0000321428571, \n    -0.0001090336134, -0.0001218487395, -0.0000897058824, -0.0000384453782, \n    +0.0000321428571, +0.0000768907563, +0.0000449579832, +0.0000065126050, \n    +0.0000000000000, -0.0000065126050, -0.0000128151261, -0.0000256302521, \n    -0.0000577731092, -0.0001090336134, -0.0001602941176, -0.0001537815126, \n    -0.0000834033613, +0.0000000000000, +0.0000705882353, +0.0001090336134, \n    +0.0001218487395, +0.0001025210084, +0.0000384453782, -0.0000449579832, \n    -0.0001474789916, -0.0002180672269, -0.0002436974790, -0.0001987394958, \n    -0.0000897058824, +0.0000384453782, +0.0001346638655, +0.0001346638655, \n    +0.0000449579832, -0.0000449579832, -0.0000449579832, +0.0000128151261, \n    +0.0001025210084, +0.0001537815126, +0.0001281512605, +0.0000193277311, \n    -0.0000962184874, -0.0001665966387, -0.0001537815126, -0.0000577731092, \n    +0.0000640756303, +0.0001665966387, +0.0001987394958, +0.0001665966387, \n    +0.0001090336134, +0.0000577731092, +0.0000128151261, -0.0000193277311, \n    -0.0000321428571, -0.0000256302521, -0.0000321428571, -0.0000384453782, \n    -0.0000128151261, +0.0000705882353, +0.0001665966387, +0.0001987394958, \n    +0.0001025210084, -0.0000640756303, -0.0002115546218, -0.0002371848739, \n    -0.0001474789916, +0.0000000000000, +0.0001090336134, +0.0001537815126, \n    +0.0001281512605, +0.0000834033613, +0.0000577731092, +0.0000768907563, \n    +0.0001025210084, +0.0000834033613, +0.0000321428571, -0.0000193277311, \n    -0.0000256302521, -0.0000065126050, +0.0000193277311, +0.0000449579832, \n    +0.0000384453782, +0.0000065126050, +0.0000000000000, +0.0000193277311, \n    +0.0000384453782, +0.0000321428571, +0.0000000000000, -0.0000384453782, \n    -0.0000449579832, -0.0000384453782, -0.0000065126050, +0.0000065126050, \n    +0.0000065126050, -0.0000065126050, -0.0000256302521, -0.0000128151261, \n    +0.0000065126050, +0.0000193277311, +0.0000193277311, +0.0000128151261, \n    -0.0000065126050, -0.0000321428571, -0.0000640756303, -0.0000640756303, \n    +0.0000000000000, +0.0001025210084, +0.0001794117647, +0.0001731092437, \n    +0.0000897058824, -0.0000193277311, -0.0000962184874, -0.0001346638655, \n    -0.0000768907563, +0.0000384453782, +0.0001537815126, +0.0001794117647, \n    +0.0001346638655, +0.0000640756303, +0.0000321428571, +0.0000128151261, \n    +0.0000000000000, -0.0000384453782, -0.0001025210084, -0.0001602941176, \n    -0.0001602941176, -0.0001153361345, -0.0000256302521, +0.0000640756303, \n    +0.0001281512605, +0.0001346638655, +0.0001090336134, +0.0000834033613, \n    +0.0000768907563, +0.0000834033613, +0.0000577731092, +0.0000193277311, \n    -0.0000256302521, -0.0000897058824, -0.0001090336134, -0.0000768907563, \n    +0.0000065126050, +0.0001025210084, +0.0001474789916, +0.0001409663866, \n    +0.0000897058824, -0.0000193277311, -0.0001153361345, -0.0001346638655, \n    -0.0001090336134, -0.0000640756303, -0.0000065126050, +0.0000577731092, \n    +0.0001281512605, +0.0001409663866, +0.0001218487395, +0.0001153361345, \n    +0.0001281512605, +0.0001281512605, +0.0000962184874, +0.0000384453782, \n    +0.0000000000000, -0.0000128151261, -0.0000065126050, +0.0000128151261, \n    +0.0000512605042, +0.0000577731092, +0.0000449579832, +0.0000193277311, \n    +0.0000128151261, +0.0000256302521, +0.0000512605042, +0.0000705882353, \n    +0.0000640756303, +0.0000128151261, -0.0000256302521, -0.0000193277311, \n    +0.0000065126050, +0.0000321428571, +0.0000512605042, +0.0000321428571, \n    -0.0000384453782, -0.0001474789916, -0.0002371848739, -0.0002371848739, \n    -0.0001409663866, +0.0000256302521, +0.0002115546218, +0.0003205882353, \n    +0.0003077731092, +0.0002308823529, +0.0001025210084, -0.0000321428571, \n    -0.0001346638655, -0.0001537815126, -0.0001025210084, -0.0000256302521, \n    +0.0000512605042, +0.0001025210084, +0.0001090336134, +0.0000768907563, \n    +0.0000193277311, -0.0000384453782, -0.0000640756303, -0.0000512605042, \n    -0.0000065126050, +0.0000705882353, +0.0001602941176, +0.0002052521008, \n    +0.0001474789916, +0.0000577731092, -0.0000128151261, -0.0000640756303, \n    -0.0000834033613, -0.0000512605042, +0.0000000000000, +0.0000834033613, \n    +0.0001090336134, +0.0000897058824, +0.0000321428571, -0.0000256302521, \n    -0.0000768907563, -0.0000640756303, +0.0000000000000, +0.0000512605042, \n    +0.0000834033613, +0.0000834033613, +0.0000512605042, +0.0000000000000, \n    -0.0000193277311, -0.0000256302521, +0.0000000000000, +0.0000384453782, \n    +0.0000768907563, +0.0000768907563, +0.0000384453782, +0.0000000000000, \n    -0.0000321428571, -0.0000384453782, -0.0000256302521, -0.0000065126050, \n    -0.0000065126050, -0.0000128151261, -0.0000321428571, -0.0000321428571, \n    -0.0000193277311, +0.0000000000000, +0.0000193277311, +0.0000193277311, \n    +0.0000128151261, +0.0000065126050, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000\n};\n"
  },
  {
    "path": "impulses/09-fender-bassman-sm57-off.h",
    "content": "float fender_bassman_sm57_off[] = {\n    +0.0000000000000, -0.0000430082256, -0.0000933019976, -0.0001003525264, \n    -0.0000072855464, +0.0001433607521, +0.0002726204465, +0.0003370152761, \n    +0.0002940070505, +0.0001576968273, -0.0000359576968, -0.0002366627497, \n    -0.0003656874266, -0.0003586368978, -0.0002079905993, +0.0000359576968, \n    +0.0003012925969, +0.0004806110458, +0.0004949471210, +0.0003299647474, \n    +0.0000216216216, -0.0003156286722, -0.0005666274971, -0.0006383078731, \n    -0.0005019976498, -0.0001863689777, +0.0001863689777, +0.0005092831962, \n    +0.0006669800235, +0.0006169212691, +0.0003656874266, +0.0000000000000, \n    -0.0003873090482, -0.0006742655699, -0.0007673325499, -0.0006526439483, \n    -0.0003513513514, +0.0000143360752, +0.0003513513514, +0.0005306698002, \n    +0.0005163337250, +0.0003156286722, +0.0000143360752, -0.0002726204465, \n    -0.0004662749706, -0.0005092831962, -0.0003943595770, -0.0001936545241, \n    +0.0000216216216, +0.0001793184489, +0.0002296122209, +0.0001649823737, \n    +0.0000072855464, -0.0001720329025, -0.0003226792009, -0.0003943595770, \n    -0.0003586368978, -0.0002079905993, +0.0000072855464, +0.0002509988249, \n    +0.0004232667450, +0.0004589894242, +0.0003370152761, +0.0000573443008, \n    -0.0002726204465, -0.0005736780259, -0.0007459459459, -0.0007459459459, \n    -0.0005666274971, -0.0002940070505, -0.0000072855464, +0.0002007050529, \n    +0.0003299647474, +0.0003513513514, +0.0003156286722, +0.0002152761457, \n    +0.0000933019976, -0.0000789659224, -0.0002726204465, -0.0005019976498, \n    -0.0006742655699, -0.0007673325499, -0.0007099882491, -0.0004232667450, \n    -0.0003083431257, +0.0002869565217, +0.0004589894242, +0.0002296122209, \n    +0.0002152761457, +0.0001863689777, -0.0001363102233, -0.0006239717979, \n    -0.0010615746181, -0.0012766157462, -0.0012622796710, -0.0011189189189, \n    -0.0008893066980, -0.0008749706228, -0.0009969447709, -0.0014345475911, \n    -0.0019292596945, -0.0024385428907, -0.0026968272620, -0.0026752056404, \n    -0.0023595769683, -0.0020296122209, -0.0019652173913, -0.0024242068155, \n    -0.0032991774383, -0.0051066980024, -0.0045257344301, -0.0081546415981, \n    -0.0166465334900, -0.0039661574618, +0.0215666274971, +0.0261856639248, \n    -0.0202399529965, -0.1034658049354, -0.1210662749706, -0.0300441833137, \n    +0.0768928319624, +0.1659710928320, +0.2350032902468, +0.2266836662750, \n    +0.1336893066980, +0.0007243243243, -0.1124740305523, -0.1539793184489, \n    -0.1287259694477, -0.0698928319624, -0.0160871915394, +0.0026681551116, \n    +0.0083052878966, +0.0236035252644, +0.0398843713278, +0.0491292596945, \n    +0.0443454759107, +0.0173278495887, -0.0154272620447, -0.0377471210341, \n    -0.0380627497062, -0.0175287896592, +0.0042601645123, +0.0149396004700, \n    +0.0137276145711, -0.0024528789659, -0.0160011750881, -0.0101055229142, \n    -0.0045901292597, -0.0075236192714, -0.0086855464160, -0.0066126909518, \n    -0.0025819036428, +0.0086065804935, +0.0185760282021, +0.0136556991774, \n    -0.0019149236193, -0.0162878965922, -0.0242634547591, -0.0263146886016, \n    -0.0233381903643, -0.0158792009401, -0.0041097532315, +0.0044467685076, \n    +0.0059386603995, +0.0008032902468, -0.0064907168038, -0.0114037602820, \n    -0.0178371327850, -0.0234028202115, -0.0192070505288, -0.0031915393655, \n    +0.0126157461810, +0.0178014101058, +0.0142152761457, +0.0099334900118, \n    +0.0054794359577, +0.0025388954172, +0.0040235017626, +0.0065913043478, \n    +0.0047264394830, -0.0047981198590, -0.0182387779083, -0.0285882491187, \n    -0.0299941245593, -0.0223125734430, -0.0112460634548, -0.0021515863690, \n    +0.0062110458284, +0.0113964747356, +0.0107654524089, +0.0061896592244, \n    -0.0007386603995, -0.0063546415981, -0.0092235017626, -0.0102491186839, \n    -0.0102274970623, -0.0104211515864, -0.0081762632197, -0.0005236192714, \n    +0.0060030552291, +0.0073945945946, +0.0050420681551, -0.0012049353702, \n    -0.0071146886016, -0.0116333725029, -0.0146455934195, -0.0123003525264, \n    -0.0065840188014, -0.0004446533490, +0.0060603995300, +0.0090512338425, \n    +0.0065913043478, +0.0006599294947, -0.0062183313749, -0.0120277320799, \n    -0.0167757931845, -0.0191856639248, -0.0157215041128, -0.0060820211516, \n    +0.0057950646298, +0.0149325499412, +0.0182747356052, +0.0156495887192, \n    +0.0074519388954, -0.0037654524089, -0.0128526439483, -0.0182387779083, \n    -0.0192430082256, -0.0148462984724, -0.0067419506463, +0.0027971797885, \n    +0.0110881316099, +0.0155205640423, +0.0145452408931, +0.0082839012926, \n    +0.0005736780259, -0.0043534665100, -0.0052500587544, -0.0025245593420, \n    +0.0032777908343, +0.0096178613396, +0.0129743830787, +0.0115327849589, \n    +0.0072509988249, +0.0012766157462, -0.0044970622797, -0.0076096357227, \n    -0.0088719153937, -0.0090942420682, -0.0079539365452, -0.0058667450059, \n    -0.0030481786134, -0.0009396004700, +0.0000502937720, +0.0013412455934, \n    +0.0020009400705, +0.0013913043478, -0.0002223266745, -0.0020942420682, \n    -0.0025318448884, -0.0022376028202, -0.0021945945946, -0.0002940070505, \n    +0.0020585193890, +0.0029764982374, +0.0032777908343, +0.0029478260870, \n    +0.0017499412456, +0.0006383078731, +0.0004232667450, +0.0022018801410, \n    +0.0053433607521, +0.0077459459459, +0.0082982373678, +0.0079466509988, \n    +0.0075666274971, +0.0064907168038, +0.0036721504113, -0.0004733254994, \n    -0.0045327849589, -0.0069786133960, -0.0068780258519, -0.0039374853114, \n    -0.0003156286722, +0.0025819036428, +0.0060603995300, +0.0090585193890, \n    +0.0100481786134, +0.0104284371328, +0.0109374853114, +0.0110737955347, \n    +0.0100768507638, +0.0071363102233, +0.0036291421857, +0.0005880141011, \n    -0.0005952996475, +0.0014559341951, +0.0050061104583, +0.0073873090482, \n    +0.0075163337250, +0.0053504112808, +0.0033278495887, +0.0024745005875, \n    +0.0017499412456, +0.0019365452409, +0.0024958871915, +0.0020871915394, \n    +0.0017212690952, +0.0013196239718, +0.0007529964747, +0.0008606345476, \n    +0.0008535840188, +0.0006669800235, +0.0009753231492, +0.0012265569918, \n    +0.0015849588719, +0.0022376028202, +0.0025748531140, +0.0025962397180, \n    +0.0031628672150, +0.0051424206816, +0.0069856639248, +0.0067130434783, \n    +0.0047767332550, +0.0030195064630, +0.0018002350176, +0.0003299647474, \n    -0.0019435957697, -0.0035287896592, -0.0030481786134, -0.0006239717979, \n    +0.0029334900118, +0.0069139835488, +0.0096752056404, +0.0094745005875, \n    +0.0055584018801, -0.0003156286722, -0.0046404230317, -0.0056230317274, \n    -0.0028258519389, +0.0024455934195, +0.0070286721504, +0.0089292596945, \n    +0.0074376028202, +0.0031271445358, -0.0009252643948, -0.0036578143361, \n    -0.0055010575793, -0.0053074030552, -0.0032058754407, -0.0003943595770, \n    +0.0023595769683, +0.0046474735605, +0.0064907168038, +0.0070286721504, \n    +0.0054364277321, +0.0032202115159, +0.0012192714454, -0.0005019976498, \n    -0.0010902467685, -0.0005236192714, -0.0002079905993, -0.0009179788484, \n    -0.0022808460635, -0.0033924794360, -0.0033135135135, -0.0019938895417, \n    -0.0003513513514, +0.0007316098707, +0.0009252643948, +0.0006383078731, \n    +0.0009396004700, +0.0012192714454, +0.0010686251469, +0.0003226792009, \n    -0.0010759106933, -0.0019722679201, -0.0023165687427, -0.0025675675676, \n    -0.0024601645123, -0.0023381903643, -0.0019222091657, -0.0010542890717, \n    -0.0002152761457, +0.0005880141011, +0.0007889541716, +0.0005306698002, \n    +0.0003083431257, +0.0000430082256, -0.0001863689777, -0.0006096357227, \n    -0.0013052878966, -0.0018359576968, -0.0022162162162, -0.0021588719154, \n    -0.0013125734430, -0.0000072855464, +0.0009753231492, +0.0011116333725, \n    +0.0004446533490, -0.0002796709753, -0.0009179788484, -0.0015992949471, \n    -0.0020728554642, -0.0024815511163, -0.0026968272620, -0.0020441833137, \n    -0.0009252643948, +0.0001506462985, +0.0009036427732, +0.0007172737955, \n    +0.0000860164512, +0.0000072855464, +0.0003656874266, +0.0006383078731, \n    -0.0000072855464, -0.0013913043478, -0.0026608695652, -0.0033995299647, \n    -0.0029908343126, -0.0016925969448, -0.0003800235018, +0.0005880141011, \n    +0.0011259694477, +0.0013913043478, +0.0008319623972, -0.0012839012926, \n    -0.0038371327850, -0.0058166862515, -0.0068709753231, -0.0066773207991, \n    -0.0048554641598, -0.0015349001175, +0.0019508813161, +0.0039518213866, \n    +0.0039374853114, +0.0024888366627, +0.0004806110458, -0.0015922444183, \n    -0.0030051703878, -0.0035717978848, -0.0033708578143, -0.0024745005875, \n    -0.0016425381904, -0.0009969447709, -0.0004159811986, -0.0006886016451, \n    -0.0016136310223, -0.0023668625147, -0.0027111633373, -0.0022735605170, \n    -0.0010542890717, +0.0003586368978, +0.0014632197415, +0.0018145710928, \n    +0.0014702702703, +0.0009539365452, +0.0003873090482, -0.0002007050529, \n    -0.0004016451234, -0.0001793184489, +0.0001363102233, +0.0002653349001, \n    -0.0000860164512, -0.0006669800235, -0.0006742655699, -0.0000789659224, \n    +0.0007816686251, +0.0018289071680, +0.0023882491187, +0.0020009400705, \n    +0.0011332549941, +0.0002366627497, -0.0003083431257, -0.0005092831962, \n    -0.0009682726204, -0.0016925969448, -0.0024169212691, -0.0029118683901, \n    -0.0027541715629, -0.0021085781434, -0.0014488836663, -0.0006169212691, \n    +0.0005236192714, +0.0020225616921, +0.0030051703878, +0.0030408930670, \n    +0.0024601645123, +0.0012839012926, -0.0000860164512, -0.0007172737955, \n    -0.0004876615746, +0.0003729729730, +0.0013913043478, +0.0018216216216, \n    +0.0016136310223, +0.0008176263220, -0.0003083431257, -0.0011905992949, \n    -0.0011976498237, -0.0004089306698, +0.0002869565217, +0.0004806110458, \n    +0.0005880141011, +0.0006455934195, +0.0004446533490, +0.0001649823737, \n    +0.0000430082256, +0.0003873090482, +0.0010399529965, +0.0014488836663, \n    +0.0014775558167, +0.0009252643948, -0.0003873090482, -0.0016712103408, \n    -0.0022232667450, -0.0019508813161, -0.0006383078731, +0.0012552291422, \n    +0.0029908343126, +0.0042314923619, +0.0041741480611, +0.0028329024677, \n    +0.0010615746181, -0.0008679200940, -0.0021515863690, -0.0020942420682, \n    -0.0011619271445, +0.0000573443008, +0.0009179788484, +0.0011546415981, \n    +0.0009539365452, +0.0000573443008, -0.0012909518214, -0.0020728554642, \n    -0.0020082256169, -0.0013052878966, -0.0001936545241, +0.0009323149236, \n    +0.0014989424207, +0.0012408930670, +0.0006526439483, +0.0002079905993, \n    -0.0000502937720, -0.0000716803760, +0.0000000000000, -0.0000789659224, \n    -0.0005809635723, -0.0012909518214, -0.0014488836663, -0.0009609870740, \n    -0.0001363102233, +0.0007316098707, +0.0013339600470, +0.0017285546416, \n    +0.0018648648649, +0.0014702702703, +0.0006813160987, -0.0001003525264, \n    -0.0004733254994, -0.0003943595770, -0.0001793184489, -0.0000933019976, \n    -0.0001290246769, -0.0000860164512, -0.0000072855464, +0.0000000000000, \n    +0.0001363102233, +0.0005593419506, +0.0009609870740, +0.0008535840188, \n    +0.0001076380729, -0.0007459459459, -0.0013482961222, -0.0016136310223, \n    -0.0011762632197, -0.0002079905993, +0.0006383078731, +0.0011259694477, \n    +0.0012049353702, +0.0004876615746, -0.0007243243243, -0.0016352526439, \n    -0.0018935370153, -0.0016279670975, -0.0011332549941, -0.0007243243243, \n    -0.0003656874266, -0.0000143360752, +0.0001433607521, +0.0002439482961, \n    +0.0003299647474, +0.0000286721504, -0.0006813160987, -0.0015992949471, \n    -0.0023882491187, -0.0025175088132, -0.0021301997650, -0.0015349001175, \n    -0.0006383078731, -0.0000216216216, +0.0001506462985, +0.0001793184489, \n    -0.0001219741481, -0.0004733254994, -0.0006312573443, -0.0010112808461, \n    -0.0016425381904, -0.0022665099882, -0.0024958871915, -0.0020512338425, \n    -0.0012192714454, -0.0003156286722, +0.0003800235018, +0.0006383078731, \n    +0.0004876615746, +0.0000000000000, -0.0005809635723, -0.0009396004700, \n    -0.0009969447709, -0.0008462984724, -0.0006312573443, -0.0004733254994, \n    -0.0004806110458, -0.0006383078731, -0.0007889541716, -0.0008893066980, \n    -0.0009826086957, -0.0012336075206, -0.0016712103408, -0.0018792009401, \n    -0.0018432432432, -0.0017212690952, -0.0013412455934, -0.0008606345476, \n    -0.0007029377203, -0.0008319623972, -0.0009109283196, -0.0008606345476, \n    -0.0011116333725, -0.0015349001175, -0.0016998824912, -0.0017642773208, \n    -0.0017499412456, -0.0015562867215, -0.0010686251469, -0.0004662749706, \n    -0.0001290246769, +0.0001506462985, +0.0004806110458, +0.0006813160987, \n    +0.0008893066980, +0.0007529964747, +0.0002582843713, -0.0002796709753, \n    -0.0009396004700, -0.0013482961222, -0.0012622796710, -0.0011116333725, \n    -0.0008965922444, -0.0007243243243, -0.0008893066980, -0.0011475910693, \n    -0.0013842538190, -0.0015492361927, -0.0013626321974, -0.0010183313749, \n    -0.0007099882491, -0.0002223266745, +0.0002223266745, +0.0005809635723, \n    +0.0007172737955, +0.0002582843713, -0.0007099882491, -0.0014632197415, \n    -0.0016568742656, -0.0015562867215, -0.0013913043478, -0.0009826086957, \n    -0.0003729729730, -0.0000430082256, +0.0000430082256, +0.0001290246769, \n    +0.0001720329025, +0.0003729729730, +0.0007673325499, +0.0006526439483, \n    +0.0000502937720, -0.0005809635723, -0.0010256169213, -0.0011259694477, \n    -0.0012336075206, -0.0014056404230, -0.0015062279671, -0.0016209165687, \n    -0.0015706227967, -0.0013052878966, -0.0011762632197, -0.0010615746181, \n    -0.0009753231492, -0.0009682726204, -0.0007889541716, -0.0003299647474, \n    +0.0001219741481, +0.0003656874266, +0.0005092831962, +0.0006383078731, \n    +0.0004089306698, -0.0001363102233, -0.0005379553467, -0.0005736780259, \n    -0.0004876615746, -0.0004949471210, -0.0004519388954, -0.0002509988249, \n    +0.0000716803760, +0.0003729729730, +0.0004806110458, +0.0004303172738, \n    +0.0002726204465, +0.0000646298472, -0.0001649823737, -0.0003083431257, \n    -0.0002439482961, -0.0001219741481, -0.0000933019976, -0.0001793184489, \n    -0.0003156286722, -0.0003586368978, -0.0003012925969, +0.0000359576968, \n    +0.0008176263220, +0.0014775558167, +0.0015706227967, +0.0010472385429, \n    +0.0002940070505, -0.0002439482961, -0.0005163337250, -0.0005736780259, \n    -0.0001863689777, +0.0004519388954, +0.0010399529965, +0.0014559341951, \n    +0.0015849588719, +0.0011762632197, +0.0003226792009, -0.0004519388954, \n    -0.0008176263220, -0.0007029377203, -0.0002582843713, +0.0002582843713, \n    +0.0006526439483, +0.0006383078731, +0.0003370152761, +0.0003156286722, \n    +0.0004446533490, +0.0003083431257, -0.0000072855464, -0.0003083431257, \n    -0.0004733254994, -0.0005092831962, -0.0002726204465, +0.0002796709753, \n    +0.0007602820212, +0.0009753231492, +0.0010686251469, +0.0009826086957, \n    +0.0009396004700, +0.0011833137485, +0.0012552291422, +0.0009179788484, \n    +0.0003943595770, -0.0001793184489, -0.0005952996475, -0.0006669800235, \n    -0.0003943595770, +0.0002152761457, +0.0009682726204, +0.0014918918919, \n    +0.0017642773208, +0.0018289071680, +0.0016209165687, +0.0012622796710, \n    +0.0009969447709, +0.0008606345476, +0.0007529964747, +0.0005880141011, \n    +0.0004232667450, +0.0003443008226, +0.0002726204465, +0.0002509988249, \n    +0.0003729729730, +0.0005092831962, +0.0006886016451, +0.0009896592244, \n    +0.0011546415981, +0.0010183313749, +0.0007029377203, +0.0003800235018, \n    +0.0003083431257, +0.0006455934195, +0.0011905992949, +0.0016568742656, \n    +0.0016712103408, +0.0012622796710, +0.0008319623972, +0.0006023501763, \n    +0.0005163337250, +0.0005092831962, +0.0005163337250, +0.0005809635723, \n    +0.0006239717979, +0.0006813160987, +0.0007172737955, +0.0005736780259, \n    +0.0004662749706, +0.0005952996475, +0.0007673325499, +0.0008392479436, \n    +0.0008679200940, +0.0008606345476, +0.0007816686251, +0.0005163337250, \n    +0.0001576968273, -0.0001720329025, -0.0003586368978, -0.0002366627497, \n    +0.0000860164512, +0.0004016451234, +0.0006669800235, +0.0008822561692, \n    +0.0009252643948, +0.0007960047004, +0.0007172737955, +0.0007386603995, \n    +0.0008535840188, +0.0011045828437, +0.0012479435958, +0.0011403055229, \n    +0.0009179788484, +0.0005593419506, +0.0002869565217, +0.0002152761457, \n    +0.0001720329025, +0.0002582843713, +0.0004089306698, +0.0003943595770, \n    +0.0002796709753, +0.0002582843713, +0.0003299647474, +0.0003299647474, \n    +0.0003083431257, +0.0003513513514, +0.0003800235018, +0.0003729729730, \n    +0.0003943595770, +0.0003729729730, +0.0003943595770, +0.0004806110458, \n    +0.0005522914219, +0.0003586368978, -0.0001146886016, -0.0004806110458, \n    -0.0004949471210, -0.0002509988249, +0.0001793184489, +0.0007029377203, \n    +0.0010829612221, +0.0012049353702, +0.0009826086957, +0.0005666274971, \n    +0.0002439482961, +0.0000286721504, -0.0000502937720, +0.0000072855464, \n    +0.0000430082256, -0.0000646298472, -0.0002796709753, -0.0005163337250, \n    -0.0006526439483, -0.0006669800235, -0.0005163337250, -0.0001793184489, \n    +0.0001576968273, +0.0003873090482, +0.0004662749706, +0.0002869565217, \n    -0.0000359576968, -0.0002439482961, -0.0003083431257, -0.0004446533490, \n    -0.0006383078731, -0.0007889541716, -0.0007529964747, -0.0002653349001, \n    +0.0005880141011, +0.0015205640423, +0.0021445358402, +0.0018862514689, \n    +0.0006526439483, -0.0009396004700, -0.0020942420682, -0.0022735605170, \n    -0.0015492361927, -0.0004016451234, +0.0006886016451, +0.0013626321974, \n    +0.0013842538190, +0.0008822561692, +0.0001146886016, -0.0006742655699, \n    -0.0011332549941, -0.0011546415981, -0.0009466509988, -0.0005163337250, \n    +0.0000072855464, +0.0004303172738, +0.0007029377203, +0.0006886016451, \n    +0.0003656874266, -0.0000430082256, -0.0004662749706, -0.0007243243243, \n    -0.0007602820212, -0.0006599294947, -0.0003873090482, -0.0002007050529, \n    -0.0002439482961, -0.0002079905993, -0.0001219741481, -0.0001290246769, \n    +0.0000000000000, +0.0001363102233, +0.0001506462985, +0.0001720329025, \n    +0.0000860164512, +0.0000646298472, +0.0002582843713, +0.0002007050529, \n    -0.0001649823737, -0.0006312573443, -0.0010183313749, -0.0008965922444, \n    -0.0005809635723, -0.0004303172738, -0.0001363102233, +0.0002582843713, \n    +0.0005092831962, +0.0005379553467, +0.0003370152761, +0.0003083431257, \n    +0.0003943595770, +0.0001003525264, -0.0002296122209, -0.0001290246769, \n    +0.0002223266745, +0.0005163337250, +0.0006599294947, +0.0006312573443, \n    +0.0004303172738, +0.0001146886016, -0.0003226792009, -0.0006239717979, \n    -0.0002726204465, +0.0004376028202, +0.0008032902468, +0.0008965922444, \n    +0.0009109283196, +0.0008319623972, +0.0006455934195, +0.0003083431257, \n    -0.0001576968273, -0.0006239717979, -0.0007816686251, -0.0005236192714, \n    -0.0000359576968, +0.0003083431257, +0.0004159811986, +0.0003729729730, \n    +0.0003156286722, +0.0003083431257, +0.0003586368978, +0.0004016451234, \n    +0.0004589894242, +0.0005809635723, +0.0007673325499, +0.0008535840188, \n    +0.0006813160987, +0.0004089306698, +0.0001076380729, -0.0001219741481, \n    -0.0000716803760, +0.0002509988249, +0.0006455934195, +0.0008535840188, \n    +0.0009179788484, +0.0009396004700, +0.0006813160987, +0.0002509988249, \n    +0.0000933019976, +0.0001863689777, +0.0003729729730, +0.0004806110458, \n    +0.0003943595770, +0.0004232667450, +0.0005163337250, +0.0004589894242, \n    +0.0003800235018, +0.0003226792009, +0.0001863689777, +0.0000430082256, \n    -0.0000286721504, +0.0000573443008, +0.0002653349001, +0.0004376028202, \n    +0.0007029377203, +0.0009609870740, +0.0010542890717, +0.0010615746181, \n    +0.0009109283196, +0.0006239717979, +0.0002796709753, -0.0000933019976, \n    -0.0002366627497, -0.0000789659224, +0.0001649823737, +0.0003943595770, \n    +0.0003943595770, +0.0002653349001, +0.0001936545241, +0.0001793184489, \n    +0.0002726204465, +0.0006169212691, +0.0009896592244, +0.0011332549941, \n    +0.0009252643948, +0.0005019976498, +0.0002152761457, +0.0001576968273, \n    +0.0001649823737, +0.0001219741481, +0.0000216216216, -0.0000646298472, \n    -0.0000789659224, -0.0000072855464, +0.0001720329025, +0.0002940070505, \n    +0.0002796709753, +0.0003083431257, +0.0004446533490, +0.0005666274971, \n    +0.0005952996475, +0.0004519388954, +0.0001793184489, -0.0001433607521, \n    -0.0004016451234, -0.0003443008226, -0.0000286721504, +0.0002509988249, \n    +0.0003800235018, +0.0002869565217, +0.0000573443008, -0.0001720329025, \n    -0.0003443008226, -0.0002940070505, -0.0000430082256, +0.0002439482961, \n    +0.0005236192714, +0.0006813160987, +0.0006239717979, +0.0004232667450, \n    +0.0001219741481, -0.0002869565217, -0.0006455934195, -0.0008032902468, \n    -0.0007243243243, -0.0004662749706, -0.0001793184489, +0.0000000000000, \n    +0.0000000000000, -0.0000860164512, -0.0001290246769, -0.0000716803760, \n    +0.0000789659224, +0.0002296122209, +0.0001863689777, -0.0000716803760, \n    -0.0004303172738, -0.0006096357227, -0.0005522914219, -0.0003656874266, \n    -0.0001290246769, -0.0000216216216, -0.0001433607521, -0.0003156286722, \n    -0.0003729729730, -0.0003226792009, -0.0003586368978, -0.0004589894242, \n    -0.0004232667450, -0.0003012925969, -0.0001936545241, -0.0000933019976, \n    -0.0001076380729, -0.0001863689777, -0.0002582843713, -0.0003443008226, \n    -0.0003656874266, -0.0002869565217, -0.0002079905993, -0.0002296122209, \n    -0.0003513513514, -0.0005163337250, -0.0005809635723, -0.0005019976498, \n    -0.0002940070505, +0.0000216216216, +0.0002726204465, +0.0003083431257, \n    +0.0002152761457, -0.0000216216216, -0.0003729729730, -0.0005809635723, \n    -0.0006096357227, -0.0005092831962, -0.0003443008226, -0.0002653349001, \n    -0.0002223266745, -0.0001649823737, -0.0001363102233, -0.0000789659224, \n    -0.0000430082256, -0.0001146886016, -0.0001863689777, -0.0002439482961, \n    -0.0002940070505, -0.0003513513514, -0.0004376028202, -0.0003656874266, \n    -0.0001290246769, +0.0000072855464, +0.0000286721504, +0.0001076380729, \n    +0.0001793184489, +0.0001506462985, -0.0000216216216, -0.0003586368978, \n    -0.0006886016451, -0.0009539365452, -0.0009969447709, -0.0007099882491, \n    -0.0003083431257, -0.0001146886016, -0.0002079905993, -0.0005306698002, \n    -0.0007316098707, -0.0006599294947, -0.0005019976498, -0.0003370152761, \n    -0.0002509988249, -0.0002940070505, -0.0003800235018, -0.0004662749706, \n    -0.0004016451234, -0.0000860164512, +0.0002152761457, +0.0001649823737, \n    -0.0002869565217, -0.0007386603995, -0.0008176263220, -0.0006383078731, \n    -0.0003513513514, -0.0000573443008, +0.0000286721504, -0.0001936545241, \n    -0.0005952996475, -0.0008103407756, -0.0007029377203, -0.0004376028202, \n    -0.0001793184489, -0.0001433607521, -0.0003299647474, -0.0005092831962, \n    -0.0005379553467, -0.0004016451234, -0.0002007050529, -0.0000573443008, \n    +0.0000716803760, +0.0001219741481, -0.0000216216216, -0.0002653349001, \n    -0.0004806110458, -0.0006742655699, -0.0008319623972, -0.0008103407756, \n    -0.0005809635723, -0.0003586368978, -0.0001793184489, -0.0000143360752, \n    +0.0000359576968, -0.0000286721504, -0.0002366627497, -0.0004589894242, \n    -0.0005593419506, -0.0005880141011, -0.0005306698002, -0.0004733254994, \n    -0.0005236192714, -0.0005019976498, -0.0003012925969, -0.0000143360752, \n    +0.0002079905993, +0.0002079905993, -0.0000216216216, -0.0003513513514, \n    -0.0006742655699, -0.0007960047004, -0.0006813160987, -0.0004159811986, \n    -0.0000430082256, +0.0001649823737, +0.0001433607521, +0.0000143360752, \n    -0.0003156286722, -0.0007673325499, -0.0009682726204, -0.0008749706228, \n    -0.0006239717979, -0.0002940070505, +0.0000716803760, +0.0003513513514, \n    +0.0003800235018, +0.0001793184489, -0.0001003525264, -0.0003370152761, \n    -0.0004589894242, -0.0005736780259, -0.0006599294947, -0.0006023501763, \n    -0.0005092831962, -0.0004949471210, -0.0005163337250, -0.0004876615746, \n    -0.0003443008226, -0.0001506462985, +0.0000143360752, +0.0001649823737, \n    +0.0002726204465, +0.0002509988249, +0.0000216216216, -0.0002366627497, \n    -0.0003443008226, -0.0003586368978, -0.0003226792009, -0.0002079905993, \n    -0.0001003525264, +0.0000000000000, +0.0000573443008, +0.0000000000000, \n    -0.0000716803760, -0.0001003525264, -0.0001219741481, -0.0001363102233, \n    -0.0001146886016, -0.0000573443008, -0.0000072855464, -0.0000216216216, \n    -0.0000860164512, -0.0001863689777, -0.0002726204465, -0.0002152761457, \n    -0.0001146886016, -0.0001363102233, -0.0002582843713, -0.0003226792009, \n    -0.0002726204465, -0.0002079905993, -0.0002509988249, -0.0002869565217, \n    -0.0002007050529, -0.0000716803760, +0.0001076380729, +0.0002869565217, \n    +0.0003370152761, +0.0002296122209, -0.0000286721504, -0.0003012925969, \n    -0.0003586368978, -0.0002796709753, -0.0001290246769, +0.0000359576968, \n    +0.0000502937720, -0.0001146886016, -0.0003443008226, -0.0004806110458, \n    -0.0004089306698, -0.0002152761457, -0.0000072855464, +0.0001076380729, \n    +0.0000072855464, -0.0001936545241, -0.0003729729730, -0.0004446533490, \n    -0.0003443008226, -0.0001433607521, +0.0000072855464, +0.0001003525264, \n    +0.0001506462985, +0.0001649823737, +0.0001146886016, +0.0000646298472, \n    +0.0000646298472, +0.0000860164512, +0.0001433607521, +0.0002509988249, \n    +0.0003873090482, +0.0004876615746, +0.0004876615746, +0.0003443008226, \n    +0.0000860164512, -0.0001720329025, -0.0003586368978, -0.0004733254994, \n    -0.0004876615746, -0.0003226792009, -0.0000646298472, +0.0000573443008, \n    +0.0000573443008, +0.0000430082256, +0.0000286721504, +0.0000502937720, \n    +0.0001219741481, +0.0001649823737, +0.0001576968273, +0.0000789659224, \n    -0.0000860164512, -0.0003012925969, -0.0004519388954, -0.0004159811986, \n    -0.0002152761457, -0.0000216216216, +0.0000430082256, +0.0000359576968, \n    -0.0000286721504, -0.0001433607521, -0.0002079905993, -0.0001649823737, \n    -0.0000646298472, +0.0000216216216, +0.0000072855464, -0.0001003525264, \n    -0.0002007050529, -0.0001720329025, -0.0000789659224, -0.0000143360752, \n    +0.0000072855464, -0.0000072855464, -0.0000573443008, -0.0000359576968, \n    +0.0000716803760, +0.0001649823737, +0.0001576968273, +0.0000286721504, \n    -0.0001290246769, -0.0002726204465, -0.0003586368978, -0.0002653349001, \n    -0.0000216216216, +0.0002007050529, +0.0003370152761, +0.0003299647474, \n    +0.0001793184489, +0.0000000000000, -0.0001146886016, -0.0000860164512, \n    +0.0000286721504, +0.0002079905993, +0.0003586368978, +0.0003656874266, \n    +0.0002509988249, +0.0000933019976, +0.0000143360752, +0.0000646298472, \n    +0.0001290246769, +0.0001720329025, +0.0001506462985, +0.0000143360752, \n    -0.0000860164512, -0.0001290246769, -0.0001506462985, -0.0000860164512, \n    +0.0000216216216, +0.0001433607521, +0.0002223266745, +0.0002079905993, \n    +0.0002079905993, +0.0002366627497, +0.0001793184489, +0.0000933019976, \n    +0.0000000000000, -0.0001146886016, -0.0001720329025, -0.0001363102233, \n    +0.0000359576968, +0.0002940070505, +0.0004519388954, +0.0005163337250, \n    +0.0005593419506, +0.0005593419506, +0.0005522914219, +0.0005092831962, \n    +0.0003586368978, +0.0001863689777, +0.0000286721504, -0.0001219741481, \n    -0.0002653349001, -0.0003370152761, -0.0002940070505, -0.0001793184489, \n    -0.0000716803760, +0.0000716803760, +0.0002296122209, +0.0003299647474, \n    +0.0003943595770, +0.0004232667450, +0.0004016451234, +0.0002869565217, \n    +0.0001076380729, +0.0000143360752, +0.0000716803760, +0.0001649823737, \n    +0.0002079905993, +0.0002152761457, +0.0002152761457, +0.0002653349001, \n    +0.0003083431257, +0.0001936545241, -0.0000286721504, -0.0002296122209, \n    -0.0003513513514, -0.0003656874266, -0.0002582843713, -0.0000502937720, \n    +0.0001720329025, +0.0003226792009, +0.0003800235018, +0.0003513513514, \n    +0.0002366627497, +0.0001076380729, -0.0000430082256, -0.0001720329025, \n    -0.0000789659224, +0.0002152761457, +0.0005019976498, +0.0006455934195, \n    +0.0005593419506, +0.0002869565217, -0.0000286721504, -0.0003226792009, \n    -0.0003943595770, -0.0001363102233, +0.0002366627497, +0.0005522914219, \n    +0.0006599294947, +0.0004662749706, +0.0000933019976, -0.0002366627497, \n    -0.0003800235018, -0.0002366627497, +0.0000000000000, +0.0001506462985, \n    +0.0002296122209, +0.0003226792009, +0.0004806110458, +0.0006383078731, \n    +0.0006383078731, +0.0005019976498, +0.0002869565217, +0.0000789659224, \n    +0.0000502937720, +0.0002366627497, +0.0005019976498, +0.0005809635723, \n    +0.0003800235018, +0.0001433607521, +0.0000286721504, -0.0000430082256, \n    -0.0000573443008, +0.0000716803760, +0.0002079905993, +0.0002439482961, \n    +0.0001936545241, +0.0000573443008, -0.0001003525264, -0.0001576968273, \n    -0.0000072855464, +0.0003370152761, +0.0007029377203, +0.0008392479436, \n    +0.0007243243243, +0.0004519388954, +0.0000860164512, -0.0001936545241, \n    -0.0003156286722, -0.0003299647474, -0.0002940070505, -0.0002007050529, \n    -0.0000789659224, +0.0000573443008, +0.0001433607521, +0.0001506462985, \n    +0.0001506462985, +0.0001649823737, +0.0001720329025, +0.0001076380729, \n    +0.0000000000000, -0.0001363102233, -0.0002079905993, -0.0001506462985, \n    +0.0000216216216, +0.0002007050529, +0.0002869565217, +0.0003226792009, \n    +0.0003586368978, +0.0003370152761, +0.0002079905993, +0.0000646298472, \n    +0.0000072855464, -0.0000143360752, -0.0001003525264, -0.0001506462985, \n    -0.0000502937720, +0.0001219741481, +0.0002796709753, +0.0004232667450, \n    +0.0005163337250, +0.0005163337250, +0.0004159811986, +0.0002366627497, \n    +0.0001219741481, +0.0001146886016, +0.0001363102233, +0.0001649823737, \n    +0.0002007050529, +0.0002079905993, +0.0001936545241, +0.0001863689777, \n    +0.0001576968273, +0.0001146886016, +0.0000860164512, +0.0000789659224, \n    +0.0001146886016, +0.0001793184489, +0.0002007050529, +0.0002726204465, \n    +0.0004446533490, +0.0006096357227, +0.0006669800235, +0.0005092831962, \n    +0.0001649823737, -0.0001720329025, -0.0003370152761, -0.0002223266745, \n    +0.0001363102233, +0.0005306698002, +0.0007602820212, +0.0007243243243, \n    +0.0004949471210, +0.0002439482961, +0.0000502937720, -0.0000789659224, \n    -0.0001219741481, -0.0000573443008, +0.0000216216216, +0.0000860164512, \n    +0.0001363102233, +0.0001936545241, +0.0002223266745, +0.0001936545241, \n    +0.0001863689777, +0.0002366627497, +0.0002509988249, +0.0001793184489, \n    +0.0000933019976, +0.0000286721504, +0.0000143360752, +0.0000502937720, \n    +0.0001290246769, +0.0002509988249, +0.0003226792009, +0.0003083431257, \n    +0.0002509988249, +0.0001649823737, +0.0001076380729, +0.0001076380729, \n    +0.0001290246769, +0.0001506462985, +0.0002223266745, +0.0002796709753, \n    +0.0002940070505, +0.0002439482961, +0.0001576968273, +0.0000502937720, \n    -0.0000216216216, -0.0000573443008, -0.0000286721504, +0.0000860164512, \n    +0.0002582843713, +0.0002869565217, +0.0001649823737, +0.0000716803760, \n    +0.0000430082256, +0.0000646298472, +0.0000933019976, +0.0001363102233, \n    +0.0002152761457, +0.0003083431257, +0.0003656874266, +0.0003299647474, \n    +0.0001936545241, +0.0000573443008, -0.0000716803760, -0.0001649823737, \n    -0.0001649823737, -0.0001363102233, -0.0001003525264, -0.0000216216216, \n    +0.0000000000000, -0.0000502937720, -0.0001649823737, -0.0002726204465, \n    -0.0002509988249, -0.0000933019976, +0.0000716803760, +0.0001720329025, \n    +0.0002152761457, +0.0002007050529, +0.0001506462985, +0.0001219741481, \n    +0.0001506462985, +0.0001506462985, +0.0001076380729, +0.0000359576968, \n    -0.0000359576968, -0.0000573443008, -0.0000072855464, +0.0000359576968, \n    +0.0000646298472, +0.0000359576968, -0.0000072855464, +0.0000143360752, \n    +0.0000789659224, +0.0000860164512, +0.0000430082256, +0.0000716803760, \n    +0.0001720329025, +0.0002726204465, +0.0002653349001, +0.0001363102233, \n    -0.0000430082256, -0.0002007050529, -0.0002296122209, -0.0001003525264, \n    +0.0000860164512, +0.0002439482961, +0.0002796709753, +0.0002079905993, \n    +0.0001290246769, +0.0000716803760, +0.0000573443008, +0.0000286721504, \n    -0.0000789659224, -0.0002007050529, -0.0002653349001, -0.0002366627497, \n    -0.0000789659224, +0.0000573443008, +0.0000789659224, +0.0000143360752, \n    -0.0001219741481, -0.0002223266745, -0.0001720329025, -0.0000286721504, \n    +0.0001076380729, +0.0001576968273, +0.0000646298472, -0.0000933019976, \n    -0.0002582843713, -0.0003586368978, -0.0003012925969, -0.0001433607521, \n    +0.0000143360752, +0.0000430082256, -0.0000716803760, -0.0001793184489, \n    -0.0002366627497, -0.0002439482961, -0.0001720329025, -0.0001290246769, \n    -0.0001003525264, -0.0000286721504, -0.0000072855464, -0.0000286721504, \n    -0.0000646298472, -0.0001506462985, -0.0002366627497, -0.0003012925969, \n    -0.0003370152761, -0.0003513513514, -0.0003156286722, -0.0002007050529, \n    -0.0000860164512, +0.0000143360752, +0.0001076380729, +0.0001003525264, \n    -0.0000072855464, -0.0001506462985, -0.0002439482961, -0.0002152761457, \n    -0.0001003525264, +0.0000286721504, +0.0001076380729, +0.0001290246769, \n    +0.0000716803760, -0.0000716803760, -0.0002296122209, -0.0002940070505, \n    -0.0003012925969, -0.0002223266745, -0.0000789659224, +0.0000143360752, \n    +0.0000646298472, +0.0001076380729, +0.0001290246769, +0.0000789659224, \n    -0.0000286721504, -0.0001506462985, -0.0002223266745, -0.0003012925969, \n    -0.0003443008226, -0.0002869565217, -0.0002296122209, -0.0002152761457, \n    -0.0002366627497, -0.0002796709753, -0.0002653349001, -0.0001863689777, \n    -0.0001003525264, -0.0000216216216, +0.0000000000000, -0.0000072855464, \n    -0.0000216216216, -0.0000933019976, -0.0001506462985, -0.0001863689777, \n    -0.0002007050529, -0.0001936545241, -0.0001863689777, -0.0001936545241, \n    -0.0001793184489, -0.0001076380729, +0.0000000000000, +0.0000789659224, \n    +0.0000933019976, +0.0000502937720, -0.0000502937720, -0.0001720329025, \n    -0.0002439482961, -0.0002940070505, -0.0002869565217, -0.0002007050529, \n    -0.0001146886016, -0.0000646298472, -0.0000502937720, -0.0000072855464, \n    +0.0001219741481, +0.0002152761457, +0.0001433607521, -0.0000286721504, \n    -0.0002509988249, -0.0004016451234, -0.0004446533490, -0.0004232667450, \n    -0.0003083431257, -0.0001576968273, -0.0000933019976, -0.0000646298472, \n    -0.0000359576968, +0.0000072855464, +0.0000646298472, +0.0000000000000, \n    -0.0001649823737, -0.0003083431257, -0.0003729729730, -0.0002940070505, \n    -0.0001219741481, +0.0000216216216, +0.0001146886016, +0.0001076380729, \n    -0.0000072855464, -0.0002079905993, -0.0004016451234, -0.0004446533490, \n    -0.0003012925969, -0.0000716803760, +0.0000716803760, +0.0000789659224, \n    +0.0000072855464, -0.0000646298472, -0.0001003525264, -0.0001433607521, \n    -0.0001649823737, -0.0001433607521, -0.0001363102233, -0.0001720329025, \n    -0.0002582843713, -0.0003083431257, -0.0002439482961, -0.0000933019976, \n    +0.0000430082256, +0.0001433607521, +0.0001793184489, +0.0001290246769, \n    +0.0000359576968, -0.0000286721504, -0.0000502937720, -0.0000860164512, \n    -0.0001506462985, -0.0002296122209, -0.0002940070505, -0.0003226792009, \n    -0.0003443008226, -0.0003156286722, -0.0002366627497, -0.0001433607521, \n    -0.0000359576968, +0.0001076380729, +0.0002869565217, +0.0004159811986, \n    +0.0003873090482, +0.0001936545241, -0.0000430082256, -0.0002296122209, \n    -0.0002653349001, -0.0001863689777, -0.0000646298472, +0.0000573443008, \n    +0.0000646298472, -0.0000860164512, -0.0002653349001, -0.0003299647474, \n    -0.0002582843713, -0.0001290246769, -0.0000430082256, -0.0000359576968, \n    -0.0001363102233, -0.0002940070505, -0.0003656874266, -0.0002796709753, \n    -0.0001076380729, -0.0000143360752, -0.0000573443008, -0.0001649823737, \n    -0.0002653349001, -0.0002582843713, -0.0001003525264, +0.0001076380729, \n    +0.0002726204465, +0.0003226792009, +0.0002366627497, +0.0001219741481, \n    +0.0000000000000, -0.0000860164512, -0.0001506462985, -0.0002582843713, \n    -0.0003729729730, -0.0004376028202, -0.0004446533490, -0.0003513513514, \n    -0.0002079905993, -0.0000573443008, +0.0001146886016, +0.0001793184489, \n    +0.0000789659224, -0.0000502937720, -0.0001290246769, -0.0001363102233, \n    -0.0000716803760, +0.0000000000000, +0.0000789659224, +0.0001506462985, \n    +0.0001576968273, +0.0000646298472, -0.0000646298472, -0.0001363102233, \n    -0.0001003525264, -0.0000216216216, +0.0000573443008, +0.0001219741481, \n    +0.0001363102233, +0.0000860164512, -0.0000286721504, -0.0001576968273, \n    -0.0002079905993, -0.0002296122209, -0.0002796709753, -0.0003226792009, \n    -0.0002796709753, -0.0001863689777, -0.0000573443008, +0.0000716803760, \n    +0.0001863689777, +0.0002439482961, +0.0002509988249, +0.0001793184489, \n    +0.0000860164512, +0.0000143360752, -0.0000716803760, -0.0001793184489, \n    -0.0001720329025, -0.0000646298472, +0.0000072855464, +0.0000072855464, \n    -0.0000216216216, -0.0000789659224, -0.0001649823737, -0.0002296122209, \n    -0.0002152761457, -0.0001003525264, +0.0001146886016, +0.0003513513514, \n    +0.0004376028202, +0.0003513513514, +0.0001290246769, -0.0001576968273, \n    -0.0003800235018, -0.0003943595770, -0.0002296122209, -0.0000072855464, \n    +0.0001146886016, +0.0000573443008, -0.0001219741481, -0.0002940070505, \n    -0.0003156286722, -0.0001720329025, +0.0000860164512, +0.0003299647474, \n    +0.0004159811986, +0.0003370152761, +0.0002007050529, +0.0000933019976, \n    +0.0000072855464, -0.0000716803760, -0.0001720329025, -0.0002653349001, \n    -0.0002869565217, -0.0002296122209, -0.0001219741481, +0.0000072855464, \n    +0.0001219741481, +0.0001936545241, +0.0001936545241, +0.0001076380729, \n    +0.0000573443008, +0.0000716803760, +0.0001219741481, +0.0001793184489, \n    +0.0001793184489, +0.0000933019976, -0.0000143360752, -0.0001219741481, \n    -0.0001720329025, -0.0001076380729, -0.0000216216216, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000286721504, \n    +0.0000286721504, +0.0000216216216, +0.0000072855464, -0.0000430082256, \n    -0.0000646298472, +0.0000000000000, +0.0000933019976, +0.0001720329025, \n    +0.0001863689777, +0.0001219741481, +0.0000000000000, -0.0001720329025, \n    -0.0002869565217, -0.0002653349001, -0.0001076380729, +0.0001219741481, \n    +0.0003443008226, +0.0004446533490, +0.0004016451234, +0.0002439482961, \n    +0.0000286721504, -0.0001363102233, -0.0002439482961, -0.0002582843713, \n    -0.0001720329025, -0.0000286721504, +0.0001219741481, +0.0002296122209, \n    +0.0002439482961, +0.0001649823737, +0.0000359576968, -0.0000933019976, \n    -0.0001793184489, -0.0001576968273, -0.0000716803760, +0.0000143360752, \n    +0.0001003525264, +0.0001863689777, +0.0002439482961, +0.0003012925969, \n    +0.0003370152761, +0.0003083431257, +0.0002079905993, +0.0000000000000, \n    -0.0002007050529, -0.0003370152761, -0.0003873090482, -0.0003012925969, \n    -0.0001219741481, +0.0000286721504, +0.0001146886016, +0.0001219741481, \n    +0.0000573443008, +0.0000000000000, -0.0000359576968, +0.0000000000000, \n    +0.0000716803760, +0.0001219741481, +0.0001720329025, +0.0001506462985, \n    +0.0000573443008, -0.0000216216216, -0.0000860164512, -0.0001363102233, \n    -0.0001433607521, -0.0001146886016, -0.0000430082256, +0.0000573443008, \n    +0.0001649823737, +0.0002439482961, +0.0002296122209, +0.0001793184489, \n    +0.0001649823737, +0.0001433607521, +0.0001146886016, +0.0000716803760, \n    +0.0000143360752, +0.0000000000000, +0.0000430082256, +0.0001363102233, \n    +0.0002582843713, +0.0003370152761, +0.0003299647474, +0.0002366627497, \n    +0.0001146886016, -0.0000286721504, -0.0001506462985, -0.0001649823737, \n    -0.0000573443008, +0.0000143360752, +0.0000143360752, -0.0000216216216, \n    -0.0000359576968, +0.0000072855464, +0.0000933019976, +0.0001793184489, \n    +0.0002509988249, +0.0002366627497, +0.0001363102233, +0.0000216216216, \n    -0.0000573443008, -0.0001003525264, -0.0001076380729, -0.0000646298472, \n    +0.0000000000000, +0.0000646298472, +0.0001146886016, +0.0001290246769, \n    +0.0001146886016, +0.0000933019976, +0.0000716803760, +0.0000933019976, \n    +0.0001506462985, +0.0001863689777, +0.0002152761457, +0.0002007050529, \n    +0.0001433607521, +0.0000860164512, +0.0000000000000, -0.0000502937720, \n    -0.0000359576968, -0.0000216216216, -0.0000359576968, -0.0000573443008, \n    -0.0000933019976, -0.0000716803760, -0.0000502937720, -0.0000646298472, \n    -0.0000646298472, -0.0000072855464, +0.0000933019976, +0.0002007050529, \n    +0.0002582843713, +0.0002366627497, +0.0001863689777, +0.0001649823737, \n    +0.0002079905993, +0.0002940070505, +0.0003943595770, +0.0004519388954, \n    +0.0004159811986, +0.0002439482961, +0.0000072855464, -0.0001433607521, \n    -0.0001290246769, +0.0000359576968, +0.0002223266745, +0.0002869565217, \n    +0.0001936545241, +0.0000716803760, +0.0000143360752, +0.0000359576968, \n    +0.0001003525264, +0.0001936545241, +0.0002726204465, +0.0002582843713, \n    +0.0001793184489, +0.0001219741481, +0.0001290246769, +0.0001433607521, \n    +0.0001649823737, +0.0001793184489, +0.0001433607521, +0.0001363102233, \n    +0.0001936545241, +0.0002509988249, +0.0002796709753, +0.0002869565217, \n    +0.0002940070505, +0.0002726204465, +0.0002152761457, +0.0001576968273, \n    +0.0001363102233, +0.0001576968273, +0.0002223266745, +0.0002439482961, \n    +0.0001793184489, +0.0000573443008, -0.0000716803760, -0.0001863689777, \n    -0.0002079905993, -0.0001290246769, +0.0000000000000, +0.0001433607521, \n    +0.0002509988249, +0.0002509988249, +0.0001363102233, +0.0000143360752, \n    -0.0000143360752, +0.0000502937720, +0.0001506462985, +0.0002296122209, \n    +0.0002079905993, +0.0000716803760, -0.0000646298472, -0.0000933019976, \n    +0.0000000000000, +0.0001863689777, +0.0003226792009, +0.0003012925969, \n    +0.0001793184489, +0.0000573443008, +0.0000000000000, -0.0000143360752, \n    -0.0000286721504, -0.0000430082256, -0.0000646298472, -0.0000716803760, \n    -0.0000646298472, -0.0000430082256, -0.0000359576968, -0.0000430082256, \n    -0.0000716803760, -0.0001003525264, -0.0001003525264, -0.0000573443008, \n    +0.0000286721504, +0.0001146886016, +0.0001003525264, -0.0000072855464, \n    -0.0001146886016, -0.0001433607521, -0.0000573443008, +0.0001076380729, \n    +0.0002653349001, +0.0003226792009, +0.0002439482961, +0.0000430082256, \n    -0.0001146886016, -0.0001649823737, -0.0001506462985, -0.0001219741481, \n    -0.0001290246769, -0.0001793184489, -0.0001793184489, -0.0000860164512, \n    +0.0000143360752, +0.0000573443008, +0.0000143360752, -0.0000646298472, \n    -0.0001219741481, -0.0001146886016, -0.0000430082256, +0.0000359576968, \n    +0.0000716803760, +0.0000430082256, -0.0000286721504, -0.0001290246769, \n    -0.0001863689777, -0.0001649823737, -0.0000789659224, +0.0000286721504, \n    +0.0001219741481, +0.0001720329025, +0.0001793184489, +0.0001433607521, \n    +0.0000789659224, +0.0000000000000, -0.0000573443008, -0.0000502937720, \n    +0.0000000000000, +0.0000216216216, -0.0000143360752, -0.0001003525264, \n    -0.0002007050529, -0.0002726204465, -0.0003083431257, -0.0003083431257, \n    -0.0002223266745, -0.0000646298472, +0.0000646298472, +0.0001290246769, \n    +0.0001003525264, +0.0000000000000, -0.0001219741481, -0.0002079905993, \n    -0.0002007050529, -0.0001649823737, -0.0001506462985, -0.0001290246769, \n    -0.0000789659224, -0.0000216216216, +0.0000000000000, +0.0000143360752, \n    +0.0000286721504, +0.0000430082256, +0.0000573443008, +0.0000286721504, \n    -0.0000286721504, -0.0000716803760, -0.0000789659224, -0.0000716803760, \n    -0.0000860164512, -0.0001146886016, -0.0001076380729, -0.0000789659224, \n    -0.0000860164512, -0.0001146886016, -0.0001219741481, -0.0000933019976, \n    -0.0000072855464, +0.0001003525264, +0.0001576968273, +0.0001433607521, \n    +0.0000716803760, -0.0000143360752, -0.0000646298472, -0.0000716803760, \n    -0.0000789659224, -0.0000430082256, -0.0000143360752, +0.0000000000000, \n    +0.0000430082256, +0.0001076380729, +0.0001936545241, +0.0002869565217, \n    +0.0003370152761, +0.0003226792009, +0.0002223266745, +0.0000573443008, \n    -0.0001003525264, -0.0002223266745, -0.0002366627497, -0.0001003525264, \n    +0.0000860164512, +0.0002007050529, +0.0001936545241, +0.0001076380729, \n    +0.0000573443008, +0.0000789659224, +0.0001290246769, +0.0001936545241, \n    +0.0002079905993, +0.0001649823737, +0.0000860164512, -0.0000216216216, \n    -0.0001219741481, -0.0001433607521, -0.0001146886016, -0.0000502937720, \n    +0.0000286721504, +0.0001076380729, +0.0001506462985, +0.0001433607521, \n    +0.0001076380729, +0.0000502937720, -0.0000216216216, -0.0000573443008, \n    -0.0000573443008, -0.0000216216216, +0.0000216216216, +0.0000573443008, \n    +0.0000502937720, +0.0000216216216, -0.0000359576968, -0.0000860164512, \n    -0.0000933019976, -0.0000716803760, -0.0000072855464, +0.0000216216216, \n    +0.0000143360752, -0.0000143360752, -0.0000573443008, -0.0000646298472, \n    +0.0000072855464, +0.0000933019976, +0.0001003525264, +0.0000502937720, \n    +0.0000000000000, -0.0000430082256, -0.0000933019976, -0.0001576968273, \n    -0.0001793184489, -0.0001506462985, -0.0000716803760, +0.0000143360752, \n    +0.0000860164512, +0.0001290246769, +0.0001146886016, +0.0000286721504, \n    -0.0000573443008, -0.0001363102233, -0.0001720329025, -0.0001506462985, \n    -0.0000860164512, -0.0000286721504, +0.0000000000000, -0.0000286721504, \n    -0.0000933019976, -0.0001146886016, -0.0000646298472, +0.0000000000000, \n    +0.0000430082256, +0.0000286721504, +0.0000000000000, -0.0000143360752, \n    -0.0000286721504, -0.0000286721504, -0.0000286721504, -0.0000359576968, \n    -0.0000216216216, +0.0000143360752, +0.0000430082256, +0.0000286721504, \n    -0.0000072855464, -0.0000430082256, -0.0000716803760, -0.0000716803760, \n    -0.0000502937720, -0.0000430082256, -0.0000860164512, -0.0001720329025, \n    -0.0002152761457, -0.0001793184489, -0.0000716803760, +0.0000430082256, \n    +0.0001219741481, +0.0001363102233, +0.0000716803760, -0.0000359576968, \n    -0.0001290246769, -0.0001793184489, -0.0001936545241, -0.0001649823737, \n    -0.0001219741481, -0.0000933019976, -0.0000716803760, -0.0000143360752, \n    +0.0000502937720, +0.0001003525264, +0.0000933019976, +0.0000216216216, \n    -0.0000716803760, -0.0001290246769, -0.0001290246769, -0.0000716803760, \n    -0.0000359576968, -0.0000789659224, -0.0001793184489, -0.0002653349001, \n    -0.0002796709753, -0.0002079905993, -0.0000789659224, +0.0000573443008, \n    +0.0001506462985, +0.0001720329025, +0.0001576968273, +0.0001363102233, \n    +0.0001003525264, +0.0000502937720, -0.0000286721504, -0.0001219741481, \n    -0.0001649823737, -0.0001433607521, -0.0000860164512, -0.0000072855464, \n    +0.0000430082256, +0.0000430082256, -0.0000143360752, -0.0000860164512, \n    -0.0001290246769, -0.0001290246769, -0.0000789659224, -0.0000286721504, \n    +0.0000000000000, -0.0000216216216, -0.0000860164512, -0.0001433607521, \n    -0.0001793184489, -0.0001649823737, -0.0000933019976, -0.0000072855464, \n    +0.0000573443008, +0.0001003525264, +0.0001003525264, +0.0000430082256, \n    -0.0000430082256, -0.0001576968273, -0.0002366627497, -0.0002653349001, \n    -0.0002079905993, -0.0000789659224, +0.0000789659224, +0.0002079905993, \n    +0.0002366627497, +0.0001720329025, +0.0000430082256, -0.0001003525264, \n    -0.0002223266745, -0.0002940070505, -0.0003012925969, -0.0002366627497, \n    -0.0001076380729, +0.0000072855464, +0.0000933019976, +0.0001219741481, \n    +0.0001076380729, +0.0000502937720, -0.0000430082256, -0.0001433607521, \n    -0.0001649823737, -0.0001003525264, +0.0000000000000, +0.0000646298472, \n    +0.0000789659224, +0.0000716803760, +0.0000573443008, +0.0000000000000, \n    -0.0000646298472, -0.0001219741481, -0.0001506462985, -0.0001649823737, \n    -0.0001576968273, -0.0001290246769, -0.0000789659224, -0.0000216216216, \n    +0.0000216216216, +0.0000216216216, -0.0000072855464, -0.0000502937720, \n    -0.0000646298472, -0.0000143360752, +0.0000286721504, +0.0000359576968, \n    +0.0000000000000, -0.0000216216216, -0.0000502937720, -0.0000789659224, \n    -0.0000789659224, -0.0000716803760, -0.0000286721504, +0.0000143360752, \n    +0.0000716803760, +0.0000933019976, +0.0000789659224, +0.0000430082256, \n    +0.0000000000000, -0.0000143360752, -0.0000286721504, -0.0000286721504, \n    -0.0000216216216, -0.0000286721504, -0.0000286721504, -0.0000216216216, \n    -0.0000072855464, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    -0.0000143360752, -0.0000143360752, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000\n};\n"
  },
  {
    "path": "impulses/10-fender-bassman-at4050.h",
    "content": "float fender_bassman_at4050[] = {\n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000075609756, +0.0000075609756, +0.0000075609756, \n    +0.0000000000000, +0.0000000000000, -0.0000148780488, -0.0000297560976, \n    -0.0000297560976, -0.0000224390244, +0.0000000000000, +0.0000224390244, \n    +0.0000595121951, +0.0000743902439, +0.0000670731707, +0.0000373170732, \n    +0.0000000000000, -0.0000373170732, -0.0000743902439, -0.0000819512195, \n    -0.0000521951220, -0.0000075609756, +0.0000297560976, +0.0000743902439, \n    +0.0000968292683, +0.0000819512195, +0.0000521951220, +0.0000000000000, \n    -0.0000224390244, -0.0000446341463, -0.0000373170732, -0.0000075609756, \n    +0.0000224390244, +0.0000670731707, +0.0001117073171, +0.0001339024390, \n    +0.0001414634146, +0.0001339024390, +0.0001265853659, +0.0001041463415, \n    +0.0000743902439, +0.0000521951220, +0.0000224390244, +0.0000075609756, \n    +0.0000000000000, +0.0000075609756, +0.0000297560976, +0.0000595121951, \n    +0.0000968292683, +0.0001265853659, +0.0001414634146, +0.0001414634146, \n    +0.0001190243902, +0.0000968292683, +0.0000743902439, +0.0000670731707, \n    +0.0000670731707, +0.0000892682927, +0.0001117073171, +0.0001339024390, \n    +0.0001339024390, +0.0001265853659, +0.0000968292683, +0.0000521951220, \n    +0.0000000000000, -0.0000148780488, -0.0000148780488, +0.0000000000000, \n    +0.0000297560976, +0.0000743902439, +0.0001117073171, +0.0001041463415, \n    +0.0000670731707, -0.0000148780488, -0.0001339024390, -0.0002456097561, \n    -0.0003200000000, -0.0003275609756, -0.0002456097561, -0.0000968292683, \n    +0.0000819512195, +0.0002680487805, +0.0003943902439, +0.0004317073171, \n    +0.0003573170732, +0.0002009756098, +0.0000075609756, -0.0001636585366, \n    -0.0002680487805, -0.0002829268293, -0.0002158536585, -0.0001041463415, \n    +0.0000000000000, +0.0000521951220, +0.0000446341463, -0.0000224390244, \n    -0.0001190243902, -0.0001860975610, -0.0001860975610, -0.0000892682927, \n    +0.0000743902439, +0.0002753658537, +0.0004392682927, +0.0005136585366, \n    +0.0004690243902, +0.0003051219512, +0.0000670731707, -0.0001785365854, \n    -0.0003573170732, -0.0004243902439, -0.0003573170732, -0.0001785365854, \n    +0.0000521951220, +0.0002829268293, +0.0004392682927, +0.0004912195122, \n    +0.0004317073171, +0.0003126829268, +0.0001712195122, +0.0000595121951, \n    +0.0000000000000, -0.0000075609756, +0.0000075609756, +0.0000373170732, \n    +0.0000521951220, +0.0000446341463, +0.0000224390244, +0.0000224390244, \n    +0.0000595121951, +0.0001487804878, +0.0002829268293, +0.0004243902439, \n    +0.0005285365854, +0.0005507317073, +0.0004614634146, +0.0002902439024, \n    +0.0000670731707, -0.0001265853659, -0.0002531707317, -0.0002531707317, \n    -0.0001414634146, +0.0000521951220, +0.0002680487805, +0.0004317073171, \n    +0.0005060975610, +0.0004690243902, +0.0003497560976, +0.0001860975610, \n    +0.0000297560976, -0.0000670731707, -0.0001117073171, -0.0001041463415, \n    -0.0000743902439, -0.0000446341463, -0.0000297560976, -0.0000373170732, \n    -0.0000521951220, -0.0000521951220, -0.0000297560976, +0.0000224390244, \n    +0.0000892682927, +0.0001487804878, +0.0001934146341, +0.0002082926829, \n    +0.0001785365854, +0.0001190243902, +0.0000148780488, -0.0001041463415, \n    -0.0002604878049, -0.0004092682927, -0.0005285365854, -0.0005731707317, \n    -0.0005434146341, -0.0004243902439, -0.0002382926829, -0.0000224390244, \n    +0.0001487804878, +0.0002680487805, +0.0002902439024, +0.0002234146341, \n    +0.0001117073171, +0.0000075609756, -0.0000373170732, -0.0000075609756, \n    +0.0000819512195, +0.0001860975610, +0.0002307317073, +0.0001712195122, \n    -0.0000148780488, -0.0003051219512, -0.0006102439024, -0.0008336585366, \n    -0.0009007317073, -0.0007814634146, -0.0004987804878, -0.0001339024390, \n    +0.0002158536585, +0.0004987804878, +0.0006848780488, +0.0007665853659, \n    +0.0007814634146, +0.0007741463415, +0.0007295121951, +0.0006402439024, \n    +0.0004763414634, +0.0002158536585, -0.0001117073171, -0.0004541463415, \n    -0.0007219512195, -0.0008409756098, -0.0007517073171, -0.0004763414634, \n    -0.0001041463415, +0.0002531707317, +0.0005060975610, +0.0005880487805, \n    +0.0004987804878, +0.0003126829268, +0.0001117073171, +0.0000000000000, \n    +0.0000297560976, +0.0001785365854, +0.0003870731707, +0.0005656097561, \n    +0.0006402439024, +0.0005731707317, +0.0004019512195, +0.0001860975610, \n    +0.0000000000000, -0.0001339024390, -0.0001860975610, -0.0001860975610, \n    -0.0001712195122, -0.0001487804878, -0.0001487804878, -0.0001414634146, \n    -0.0001041463415, -0.0000595121951, -0.0000297560976, -0.0000670731707, \n    -0.0002082926829, -0.0004690243902, -0.0007814634146, -0.0010346341463, \n    -0.0011017073171, -0.0008858536585, -0.0003721951220, +0.0003200000000, \n    +0.0010121951220, +0.0015036585366, +0.0015929268293, +0.0012653658537, \n    +0.0005656097561, -0.0003200000000, -0.0012058536585, -0.0018607317073, \n    -0.0022553658537, -0.0023000000000, -0.0020765853659, -0.0017863414634, \n    -0.0011834146341, -0.0007665853659, -0.0003573170732, +0.0001041463415, \n    +0.0005060975610, +0.0006402439024, +0.0005804878049, +0.0002604878049, \n    -0.0001563414634, -0.0006700000000, -0.0010197560976, -0.0011909756098, \n    -0.0011017073171, -0.0008187804878, -0.0004541463415, -0.0002082926829, \n    -0.0001860975610, -0.0005136585366, -0.0009526829268, -0.0014587804878, \n    -0.0017343902439, -0.0017046341463, -0.0012429268293, -0.0006921951220, \n    -0.0002456097561, -0.0001414634146, -0.0004690243902, -0.0011760975610, \n    -0.0021734146341, -0.0030070731707, -0.0038109756098, -0.0043914634146, \n    -0.0046446341463, -0.0060141463415, -0.0069968292683, -0.0061109756098, \n    -0.0112765853659, -0.0028880487805, -0.0133160975610, -0.0158468292683, \n    +0.0111129268293, +0.0523563414634, +0.0271829268293, -0.0940314634146, \n    -0.1121929268293, -0.0270787804878, -0.0056346341463, +0.0788768292683, \n    +0.2205675609756, +0.2438875609756, +0.2013341463415, +0.0987726829268, \n    -0.0169558536585, -0.0634765853659, -0.1072729268293, -0.1181478048780, \n    -0.0854714634146, -0.0759143902439, -0.0531675609756, -0.0438039024390, \n    -0.0118051219512, +0.0427692682927, +0.0578568292683, +0.0620697560976, \n    +0.0631565853659, +0.0263492682927, +0.0067734146341, +0.0035726829268, \n    -0.0035280487805, +0.0041309756098, -0.0034239024390, -0.0248382926829, \n    -0.0334651219512, -0.0292895121951, -0.0248382926829, -0.0094009756098, \n    +0.0009526829268, +0.0068702439024, +0.0107182926829, +0.0067360975610, \n    +0.0072795121951, +0.0015853658537, -0.0085970731707, -0.0055304878049, \n    -0.0116785365854, -0.0262004878049, -0.0176853658537, -0.0189507317073, \n    -0.0246968292683, -0.0144697560976, -0.0078900000000, -0.0042873170732, \n    -0.0071158536585, -0.0094231707317, -0.0066841463415, -0.0096539024390, \n    -0.0071678048780, +0.0035356097561, +0.0047041463415, +0.0074358536585, \n    +0.0050241463415, +0.0031187804878, +0.0093934146341, +0.0041160975610, \n    +0.0022851219512, +0.0048009756098, -0.0053741463415, -0.0188985365854, \n    -0.0271607317073, -0.0242131707317, -0.0158914634146, -0.0160329268293, \n    -0.0143953658537, -0.0037663414634, +0.0031409756098, +0.0113734146341, \n    +0.0114775609756, +0.0096168292683, +0.0090882926829, -0.0007592682927, \n    -0.0072573170732, -0.0109268292683, -0.0189953658537, -0.0182658536585, \n    -0.0130407317073, -0.0115148780488, -0.0068329268293, -0.0076814634146, \n    -0.0087534146341, -0.0070117073171, -0.0061853658537, -0.0031782926829, \n    +0.0008485365854, -0.0012653658537, -0.0034314634146, -0.0052773170732, \n    -0.0105768292683, -0.0125419512195, -0.0067809756098, +0.0012504878049, \n    +0.0084629268293, +0.0103982926829, +0.0069073170732, +0.0015407317073, \n    -0.0062821951220, -0.0092668292683, -0.0043170731707, +0.0008112195122, \n    +0.0006251219512, -0.0027317073171, -0.0044512195122, -0.0069668292683, \n    -0.0116860975610, -0.0127578048780, -0.0122963414634, -0.0119912195122, \n    -0.0087012195122, -0.0048829268293, -0.0025680487805, -0.0023892682927, \n    -0.0017641463415, +0.0001934146341, +0.0027019512195, +0.0068775609756, \n    +0.0097358536585, +0.0112617073171, +0.0144548780488, +0.0131673170732, \n    +0.0073019512195, +0.0018904878049, -0.0044809756098, -0.0090585365854, \n    -0.0136882926829, -0.0167921951220, -0.0142241463415, -0.0103536585366, \n    -0.0067063414634, -0.0028136585366, -0.0022329268293, -0.0010270731707, \n    +0.0002531707317, +0.0000743902439, +0.0016673170732, +0.0036770731707, \n    +0.0049348780488, +0.0060960975610, +0.0060663414634, +0.0067436585366, \n    +0.0074582926829, +0.0059770731707, +0.0046968292683, +0.0042278048780, \n    +0.0033792682927, +0.0030295121951, +0.0032378048780, +0.0029624390244, \n    +0.0029848780488, +0.0042724390244, +0.0060812195122, +0.0066246341463, \n    +0.0060068292683, +0.0058653658537, +0.0064458536585, +0.0062524390244, \n    +0.0051434146341, +0.0028804878049, +0.0017195121951, +0.0030814634146, \n    +0.0039375609756, +0.0037141463415, +0.0037960975610, +0.0044360975610, \n    +0.0045626829268, +0.0029400000000, +0.0006251219512, -0.0016151219512, \n    -0.0015929268293, +0.0024041463415, +0.0082621951220, +0.0125865853659, \n    +0.0135914634146, +0.0116041463415, +0.0093041463415, +0.0064160975610, \n    +0.0024563414634, -0.0001712195122, -0.0003795121951, -0.0000148780488, \n    +0.0014736585366, +0.0040417073171, +0.0056346341463, +0.0076814634146, \n    +0.0094380487805, +0.0103239024390, +0.0094456097561, +0.0069743902439, \n    +0.0068107317073, +0.0081429268293, +0.0061258536585, +0.0040565853659, \n    +0.0041682926829, +0.0057239024390, +0.0076143902439, +0.0057165853659, \n    +0.0016895121951, -0.0002829268293, -0.0009007317073, +0.0006029268293, \n    +0.0035951219512, +0.0057685365854, +0.0080612195122, +0.0092446341463, \n    +0.0073985365854, +0.0045775609756, +0.0025158536585, +0.0005285365854, \n    -0.0008187804878, -0.0009080487805, -0.0001934146341, +0.0021139024390, \n    +0.0047934146341, +0.0066990243902, +0.0076814634146, +0.0064309756098, \n    +0.0041012195122, +0.0027839024390, +0.0033717073171, +0.0041385365854, \n    +0.0036026829268, +0.0042278048780, +0.0050092682927, +0.0030368292683, \n    +0.0007295121951, -0.0008039024390, -0.0019873170732, -0.0030295121951, \n    -0.0038631707317, -0.0035356097561, -0.0015556097561, +0.0016895121951, \n    +0.0046743902439, +0.0056792682927, +0.0060217073171, +0.0066021951220, \n    +0.0069221951220, +0.0057165853659, +0.0025231707317, -0.0009304878049, \n    -0.0036100000000, -0.0051582926829, -0.0047041463415, -0.0021287804878, \n    +0.0001712195122, +0.0007517073171, +0.0013621951220, +0.0018682926829, \n    +0.0012131707317, +0.0010270731707, +0.0008336585366, -0.0002902439024, \n    -0.0005804878049, -0.0003051219512, -0.0000075609756, +0.0004839024390, \n    -0.0000373170732, -0.0007592682927, -0.0011239024390, -0.0013621951220, \n    -0.0019575609756, -0.0033270731707, -0.0036992682927, -0.0025158536585, \n    -0.0015853658537, -0.0010792682927, +0.0002680487805, +0.0010568292683, \n    +0.0005209756098, +0.0000670731707, -0.0013324390244, -0.0026721951220, \n    -0.0031409756098, -0.0039673170732, -0.0042053658537, -0.0045329268293, \n    -0.0057165853659, -0.0054634146341, -0.0046446341463, -0.0027690243902, \n    +0.0000968292683, +0.0020990243902, +0.0043692682927, +0.0052251219512, \n    +0.0027763414634, -0.0006326829268, -0.0040268292683, -0.0065426829268, \n    -0.0069446341463, -0.0065278048780, -0.0046743902439, -0.0016002439024, \n    +0.0013546341463, +0.0024636585366, +0.0011612195122, -0.0008709756098, \n    -0.0023670731707, -0.0038853658537, -0.0040641463415, -0.0028358536585, \n    -0.0028285365854, -0.0025531707317, -0.0014812195122, -0.0007814634146, \n    +0.0001712195122, +0.0005507317073, +0.0006178048780, -0.0002753658537, \n    -0.0027912195122, -0.0035802439024, -0.0030665853659, -0.0034982926829, \n    -0.0031858536585, -0.0026497560976, -0.0011760975610, +0.0012280487805, \n    +0.0015929268293, +0.0013919512195, -0.0002531707317, -0.0025456097561, \n    -0.0024934146341, -0.0028731707317, -0.0038780487805, -0.0035207317073, \n    -0.0037217073171, -0.0029029268293, -0.0014514634146, -0.0019651219512, \n    -0.0017195121951, -0.0009007317073, -0.0008187804878, -0.0000148780488, \n    +0.0002009756098, -0.0005582926829, -0.0002158536585, -0.0000373170732, \n    -0.0000521951220, +0.0005656097561, +0.0009900000000, +0.0013770731707, \n    +0.0009824390244, +0.0008782926829, +0.0017863414634, +0.0013992682927, \n    +0.0004912195122, -0.0002604878049, -0.0012802439024, -0.0018607317073, \n    -0.0023819512195, -0.0020914634146, -0.0017119512195, -0.0021512195122, \n    -0.0011017073171, +0.0007368292683, +0.0017268292683, +0.0022851219512, \n    +0.0015482926829, +0.0003573170732, -0.0003943902439, -0.0010419512195, \n    -0.0009229268293, -0.0008336585366, -0.0012653658537, -0.0012653658537, \n    -0.0012802439024, -0.0011909756098, -0.0003721951220, +0.0005731707317, \n    +0.0012429268293, +0.0016375609756, +0.0017268292683, +0.0018012195122, \n    +0.0015036585366, +0.0008782926829, +0.0008260975610, +0.0006402439024, \n    +0.0005285365854, +0.0012356097561, +0.0015185365854, +0.0010419512195, \n    +0.0002753658537, -0.0007443902439, -0.0011017073171, -0.0009602439024, \n    -0.0013770731707, -0.0018756097561, -0.0018012195122, -0.0013992682927, \n    -0.0006997560976, -0.0000373170732, +0.0005953658537, +0.0013026829268, \n    +0.0013175609756, +0.0012504878049, +0.0013843902439, +0.0007517073171, \n    +0.0001041463415, -0.0004690243902, -0.0005880487805, +0.0007592682927, \n    +0.0018607317073, +0.0023670731707, +0.0026424390244, +0.0021436585366, \n    +0.0020319512195, +0.0016300000000, +0.0005656097561, -0.0000968292683, \n    -0.0010868292683, -0.0013992682927, -0.0006402439024, +0.0003870731707, \n    +0.0012504878049, +0.0011536585366, +0.0010719512195, +0.0007443902439, \n    -0.0009229268293, -0.0014439024390, -0.0012356097561, -0.0019651219512, \n    -0.0022478048780, -0.0017417073171, -0.0010197560976, -0.0005136585366, \n    -0.0003275609756, +0.0001265853659, +0.0009602439024, +0.0014290243902, \n    +0.0022256097561, +0.0031039024390, +0.0027465853659, +0.0021660975610, \n    +0.0012951219512, -0.0002604878049, -0.0010792682927, -0.0013324390244, \n    -0.0013397560976, -0.0008336585366, -0.0007517073171, -0.0007665853659, \n    -0.0006624390244, -0.0009751219512, -0.0004541463415, +0.0003348780488, \n    +0.0006029268293, +0.0010419512195, +0.0013621951220, +0.0011387804878, \n    +0.0001117073171, -0.0012280487805, -0.0020914634146, -0.0022775609756, \n    -0.0020617073171, -0.0015258536585, -0.0006251219512, +0.0001190243902, \n    +0.0004317073171, +0.0004392682927, +0.0002009756098, -0.0003126829268, \n    -0.0007295121951, -0.0007665853659, -0.0005953658537, -0.0002082926829, \n    -0.0001712195122, -0.0004763414634, -0.0003275609756, -0.0004614634146, \n    -0.0007592682927, -0.0006773170732, -0.0011834146341, -0.0018458536585, \n    -0.0021660975610, -0.0021882926829, -0.0012729268293, -0.0007295121951, \n    -0.0010495121951, -0.0010568292683, -0.0012878048780, -0.0013546341463, \n    -0.0011314634146, -0.0013324390244, -0.0012802439024, -0.0012356097561, \n    -0.0017939024390, -0.0021734146341, -0.0024414634146, -0.0023297560976, \n    -0.0015334146341, -0.0006326829268, +0.0003721951220, +0.0010868292683, \n    +0.0008931707317, +0.0008039024390, +0.0009973170732, +0.0004839024390, \n    -0.0006848780488, -0.0017343902439, -0.0022180487805, -0.0027614634146, \n    -0.0032378048780, -0.0031558536585, -0.0031707317073, -0.0027241463415, \n    -0.0015258536585, -0.0007963414634, -0.0005434146341, -0.0010346341463, \n    -0.0016524390244, -0.0015929268293, -0.0016821951220, -0.0018236585366, \n    -0.0016448780488, -0.0019129268293, -0.0018534146341, -0.0014365853659, \n    -0.0012951219512, -0.0009080487805, -0.0005507317073, -0.0004690243902, \n    -0.0002680487805, -0.0002234146341, +0.0000743902439, +0.0005731707317, \n    +0.0003573170732, -0.0001041463415, -0.0007368292683, -0.0011387804878, \n    -0.0006178048780, -0.0002604878049, -0.0004392682927, -0.0005953658537, \n    -0.0011612195122, -0.0014217073171, -0.0012131707317, -0.0015185365854, \n    -0.0012356097561, -0.0005434146341, -0.0004392682927, -0.0002753658537, \n    -0.0002009756098, -0.0002307317073, -0.0003870731707, -0.0007517073171, \n    -0.0008634146341, -0.0011612195122, -0.0014887804878, -0.0006178048780, \n    +0.0003573170732, +0.0004019512195, +0.0003497560976, -0.0000148780488, \n    -0.0006773170732, -0.0007592682927, -0.0006326829268, -0.0007295121951, \n    -0.0007741463415, -0.0006551219512, -0.0005209756098, -0.0004465853659, \n    -0.0005285365854, -0.0003051219512, +0.0002009756098, +0.0001265853659, \n    -0.0001712195122, -0.0006102439024, -0.0012207317073, -0.0013100000000, \n    -0.0008485365854, -0.0004168292683, -0.0002234146341, -0.0006402439024, \n    -0.0011090243902, -0.0016226829268, -0.0021363414634, -0.0019948780488, \n    -0.0017790243902, -0.0015185365854, -0.0006624390244, +0.0000373170732, \n    -0.0000075609756, -0.0002531707317, -0.0003573170732, -0.0003646341463, \n    -0.0001563414634, +0.0002531707317, +0.0006848780488, +0.0010719512195, \n    +0.0012504878049, +0.0010197560976, +0.0000670731707, -0.0010048780488, \n    -0.0012729268293, -0.0010121951220, -0.0007517073171, -0.0004763414634, \n    -0.0006848780488, -0.0009675609756, -0.0007814634146, -0.0004614634146, \n    -0.0000148780488, +0.0000297560976, -0.0002680487805, -0.0003721951220, \n    -0.0004541463415, -0.0007295121951, -0.0008409756098, -0.0004019512195, \n    +0.0003348780488, +0.0003573170732, +0.0002829268293, +0.0006997560976, \n    +0.0005656097561, +0.0000595121951, -0.0007517073171, -0.0015853658537, \n    -0.0016970731707, -0.0010719512195, +0.0001487804878, +0.0010346341463, \n    +0.0013992682927, +0.0018904878049, +0.0015036585366, +0.0004019512195, \n    -0.0005434146341, -0.0010495121951, -0.0005656097561, -0.0000819512195, \n    +0.0002604878049, +0.0008709756098, +0.0005060975610, -0.0001563414634, \n    -0.0001041463415, -0.0000670731707, -0.0000743902439, +0.0002307317073, \n    +0.0006624390244, +0.0008260975610, +0.0002307317073, -0.0001712195122, \n    +0.0000075609756, -0.0000373170732, +0.0001117073171, +0.0007890243902, \n    +0.0009973170732, +0.0008782926829, +0.0010121951220, +0.0011314634146, \n    +0.0012653658537, +0.0016821951220, +0.0020468292683, +0.0018309756098, \n    +0.0009602439024, +0.0000373170732, -0.0004092682927, -0.0004987804878, \n    -0.0002531707317, -0.0001934146341, -0.0004763414634, -0.0002902439024, \n    +0.0004243902439, +0.0009751219512, +0.0011909756098, +0.0010719512195, \n    +0.0009751219512, +0.0009378048780, +0.0007963414634, +0.0005804878049, \n    +0.0003275609756, +0.0006102439024, +0.0010941463415, +0.0011909756098, \n    +0.0012878048780, +0.0012653658537, +0.0010719512195, +0.0012578048780, \n    +0.0014217073171, +0.0014439024390, +0.0013026829268, +0.0010048780488, \n    +0.0009304878049, +0.0010121951220, +0.0010792682927, +0.0013695121951, \n    +0.0018980487805, +0.0024860975610, +0.0025231707317, +0.0015704878049, \n    +0.0003573170732, -0.0002978048780, -0.0005434146341, -0.0007219512195, \n    -0.0003275609756, +0.0001712195122, +0.0004614634146, +0.0008485365854, \n    +0.0010792682927, +0.0012131707317, +0.0012578048780, +0.0010495121951, \n    +0.0010568292683, +0.0010568292683, +0.0009751219512, +0.0009824390244, \n    +0.0011165853659, +0.0015853658537, +0.0017939024390, +0.0016597560976, \n    +0.0014587804878, +0.0009751219512, +0.0006624390244, +0.0007368292683, \n    +0.0010643902439, +0.0016746341463, +0.0018087804878, +0.0016151219512, \n    +0.0015185365854, +0.0009973170732, +0.0005136585366, +0.0005507317073, \n    +0.0006251219512, +0.0007963414634, +0.0009824390244, +0.0006700000000, \n    +0.0001190243902, -0.0004317073171, -0.0006326829268, -0.0002307317073, \n    +0.0004019512195, +0.0010868292683, +0.0014736585366, +0.0013397560976, \n    +0.0012429268293, +0.0011239024390, +0.0006624390244, +0.0002902439024, \n    +0.0002680487805, +0.0006102439024, +0.0009675609756, +0.0011612195122, \n    +0.0012729268293, +0.0014587804878, +0.0015109756098, +0.0010197560976, \n    +0.0003200000000, +0.0000000000000, -0.0000743902439, +0.0001041463415, \n    +0.0003870731707, +0.0002680487805, +0.0001636585366, +0.0002680487805, \n    +0.0004690243902, +0.0008336585366, +0.0007814634146, +0.0003795121951, \n    +0.0002829268293, +0.0003497560976, +0.0001636585366, -0.0001563414634, \n    -0.0001712195122, +0.0000000000000, -0.0000670731707, -0.0003348780488, \n    -0.0005358536585, -0.0002082926829, +0.0004614634146, +0.0007592682927, \n    +0.0005582926829, +0.0002753658537, +0.0002307317073, +0.0001860975610, \n    -0.0001860975610, -0.0005731707317, -0.0008112195122, -0.0005582926829, \n    +0.0004912195122, +0.0013546341463, +0.0015407317073, +0.0010121951220, \n    -0.0000670731707, -0.0010346341463, -0.0014663414634, -0.0015185365854, \n    -0.0011536585366, -0.0004839024390, +0.0002531707317, +0.0007219512195, \n    +0.0006624390244, +0.0006251219512, +0.0007592682927, +0.0006029268293, \n    +0.0000968292683, -0.0005507317073, -0.0009602439024, -0.0006997560976, \n    -0.0001265853659, +0.0002158536585, +0.0003573170732, +0.0004763414634, \n    +0.0004839024390, +0.0002829268293, +0.0002382926829, +0.0001636585366, \n    -0.0001414634146, -0.0000148780488, +0.0001860975610, -0.0003573170732, \n    -0.0004763414634, -0.0003943902439, -0.0009080487805, -0.0008409756098, \n    -0.0007219512195, -0.0003795121951, +0.0000148780488, -0.0002009756098, \n    +0.0002234146341, +0.0001117073171, -0.0007517073171, -0.0004690243902, \n    -0.0003721951220, -0.0009304878049, -0.0005804878049, -0.0004168292683, \n    -0.0002829268293, +0.0001712195122, +0.0003348780488, +0.0004168292683, \n    +0.0002978048780, +0.0007368292683, +0.0010419512195, +0.0004763414634, \n    +0.0002009756098, +0.0001190243902, -0.0002829268293, +0.0000743902439, \n    +0.0004392682927, +0.0001636585366, -0.0003200000000, -0.0007890243902, \n    -0.0007146341463, -0.0001636585366, +0.0005285365854, +0.0012280487805, \n    +0.0016821951220, +0.0014439024390, +0.0008039024390, +0.0001712195122, \n    -0.0000819512195, -0.0002158536585, -0.0000148780488, +0.0006102439024, \n    +0.0007368292683, +0.0006251219512, +0.0004690243902, -0.0000521951220, \n    -0.0003051219512, -0.0001265853659, -0.0000670731707, +0.0003126829268, \n    +0.0011463414634, +0.0016078048780, +0.0015334146341, +0.0011536585366, \n    +0.0006551219512, +0.0002978048780, +0.0000595121951, -0.0000521951220, \n    +0.0001785365854, +0.0004168292683, +0.0006102439024, +0.0008634146341, \n    +0.0008709756098, +0.0010197560976, +0.0011982926829, +0.0008709756098, \n    +0.0006402439024, +0.0005136585366, +0.0000670731707, -0.0001934146341, \n    +0.0000000000000, +0.0003275609756, +0.0006102439024, +0.0007146341463, \n    +0.0008634146341, +0.0010419512195, +0.0011387804878, +0.0010346341463, \n    +0.0007741463415, +0.0004541463415, +0.0001041463415, -0.0001117073171, \n    -0.0001860975610, -0.0001487804878, +0.0000000000000, +0.0002456097561, \n    +0.0008409756098, +0.0013473170732, +0.0014290243902, +0.0014439024390, \n    +0.0013324390244, +0.0010197560976, +0.0005434146341, +0.0002382926829, \n    +0.0005582926829, +0.0010121951220, +0.0011165853659, +0.0011165853659, \n    +0.0008560975610, +0.0005285365854, +0.0003721951220, +0.0003497560976, \n    +0.0002978048780, +0.0002009756098, +0.0001563414634, +0.0002680487805, \n    +0.0006251219512, +0.0008112195122, +0.0006773170732, +0.0005656097561, \n    +0.0005136585366, +0.0003646341463, +0.0003348780488, +0.0003573170732, \n    +0.0007741463415, +0.0012729268293, +0.0013175609756, +0.0011834146341, \n    +0.0007741463415, +0.0002307317073, -0.0000224390244, -0.0002382926829, \n    -0.0003721951220, -0.0001636585366, +0.0000000000000, -0.0000148780488, \n    -0.0000892682927, -0.0002531707317, -0.0002753658537, -0.0001265853659, \n    +0.0000000000000, +0.0001117073171, +0.0000000000000, -0.0002978048780, \n    -0.0003573170732, -0.0003721951220, -0.0004541463415, -0.0002158536585, \n    +0.0000595121951, +0.0002382926829, +0.0002082926829, +0.0000000000000, \n    -0.0001414634146, -0.0001339024390, +0.0000521951220, +0.0001785365854, \n    +0.0000373170732, -0.0001339024390, -0.0002753658537, -0.0004987804878, \n    -0.0005209756098, -0.0004168292683, -0.0004317073171, -0.0004690243902, \n    -0.0003424390244, -0.0001934146341, -0.0001339024390, -0.0000670731707, \n    -0.0002158536585, -0.0005285365854, -0.0007665853659, -0.0006921951220, \n    -0.0003348780488, +0.0000446341463, +0.0002680487805, +0.0003126829268, \n    +0.0001636585366, -0.0002307317073, -0.0005358536585, -0.0005434146341, \n    -0.0004019512195, -0.0003126829268, -0.0002978048780, -0.0005209756098, \n    -0.0008782926829, -0.0009973170732, -0.0008560975610, -0.0006029268293, \n    -0.0004392682927, -0.0002978048780, -0.0001339024390, -0.0000224390244, \n    +0.0001041463415, +0.0001190243902, -0.0002978048780, -0.0006251219512, \n    -0.0005358536585, -0.0001934146341, +0.0000743902439, +0.0001785365854, \n    +0.0001860975610, +0.0000670731707, -0.0000968292683, -0.0002382926829, \n    -0.0004019512195, -0.0004614634146, -0.0002009756098, +0.0001934146341, \n    +0.0002902439024, +0.0000075609756, -0.0002158536585, -0.0004987804878, \n    -0.0008112195122, -0.0008039024390, -0.0006624390244, -0.0004912195122, \n    -0.0004243902439, -0.0006997560976, -0.0008187804878, -0.0006251219512, \n    -0.0003646341463, -0.0000892682927, +0.0000224390244, +0.0000297560976, \n    +0.0000595121951, -0.0000892682927, -0.0002829268293, -0.0004763414634, \n    -0.0006029268293, -0.0003646341463, -0.0002531707317, -0.0003424390244, \n    -0.0001636585366, -0.0001339024390, -0.0002082926829, -0.0002456097561, \n    -0.0005656097561, -0.0007741463415, -0.0008409756098, -0.0008560975610, \n    -0.0006773170732, -0.0007443902439, -0.0009007317073, -0.0005731707317, \n    -0.0004168292683, -0.0004987804878, -0.0005358536585, -0.0006624390244, \n    -0.0006326829268, -0.0005880487805, -0.0005731707317, -0.0004392682927, \n    -0.0004987804878, -0.0006029268293, -0.0005656097561, -0.0006178048780, \n    -0.0006624390244, -0.0005953658537, -0.0004614634146, -0.0002382926829, \n    -0.0001487804878, -0.0002382926829, -0.0004465853659, -0.0006997560976, \n    -0.0006551219512, -0.0004614634146, -0.0004690243902, -0.0005060975610, \n    -0.0005434146341, -0.0006997560976, -0.0007741463415, -0.0006029268293, \n    -0.0004465853659, -0.0005507317073, -0.0005582926829, -0.0005434146341, \n    -0.0006102439024, -0.0005582926829, -0.0005582926829, -0.0007219512195, \n    -0.0008112195122, -0.0008260975610, -0.0006326829268, -0.0003200000000, \n    -0.0001117073171, -0.0000148780488, -0.0001487804878, -0.0002234146341, \n    -0.0001487804878, -0.0002978048780, -0.0005285365854, -0.0007368292683, \n    -0.0009304878049, -0.0009900000000, -0.0011165853659, -0.0010792682927, \n    -0.0007146341463, -0.0005136585366, -0.0004839024390, -0.0004614634146, \n    -0.0006997560976, -0.0008336585366, -0.0008112195122, -0.0006102439024, \n    -0.0001414634146, +0.0000521951220, -0.0001117073171, -0.0002382926829, \n    -0.0004317073171, -0.0007517073171, -0.0008336585366, -0.0007368292683, \n    -0.0005434146341, -0.0004168292683, -0.0004092682927, -0.0004317073171, \n    -0.0005880487805, -0.0007368292683, -0.0008260975610, -0.0009304878049, \n    -0.0007665853659, -0.0004392682927, -0.0003870731707, -0.0004168292683, \n    -0.0003870731707, -0.0004987804878, -0.0005804878049, -0.0005731707317, \n    -0.0004839024390, -0.0003870731707, -0.0003870731707, -0.0004243902439, \n    -0.0004912195122, -0.0006475609756, -0.0006624390244, -0.0006402439024, \n    -0.0007295121951, -0.0006921951220, -0.0005582926829, -0.0003348780488, \n    -0.0001265853659, -0.0000446341463, +0.0000595121951, +0.0001265853659, \n    -0.0000670731707, -0.0003348780488, -0.0006178048780, -0.0007295121951, \n    -0.0005953658537, -0.0005582926829, -0.0007368292683, -0.0009751219512, \n    -0.0010419512195, -0.0008187804878, -0.0005880487805, -0.0004614634146, \n    -0.0003646341463, -0.0004465853659, -0.0005582926829, -0.0005507317073, \n    -0.0004092682927, -0.0001117073171, +0.0000224390244, -0.0001487804878, \n    -0.0003870731707, -0.0006700000000, -0.0006773170732, -0.0003497560976, \n    -0.0001339024390, -0.0000224390244, -0.0001636585366, -0.0004168292683, \n    -0.0004317073171, -0.0003573170732, -0.0002829268293, -0.0000819512195, \n    +0.0000373170732, -0.0000075609756, -0.0002234146341, -0.0004839024390, \n    -0.0006251219512, -0.0008260975610, -0.0008336585366, -0.0006029268293, \n    -0.0004019512195, -0.0002753658537, -0.0001712195122, -0.0001487804878, \n    -0.0001636585366, -0.0001636585366, -0.0000743902439, +0.0000224390244, \n    +0.0000892682927, +0.0002531707317, +0.0003275609756, +0.0002829268293, \n    +0.0002158536585, +0.0000892682927, -0.0001190243902, -0.0004690243902, \n    -0.0008409756098, -0.0010495121951, -0.0009751219512, -0.0006475609756, \n    -0.0002082926829, +0.0002680487805, +0.0006178048780, +0.0005434146341, \n    +0.0002604878049, -0.0000892682927, -0.0005060975610, -0.0007592682927, \n    -0.0007963414634, -0.0006773170732, -0.0005358536585, -0.0004317073171, \n    -0.0002307317073, -0.0000224390244, +0.0000521951220, +0.0002009756098, \n    +0.0002753658537, +0.0001785365854, +0.0001860975610, +0.0001414634146, \n    -0.0001563414634, -0.0003573170732, -0.0003721951220, -0.0004614634146, \n    -0.0004317073171, -0.0001563414634, +0.0001487804878, +0.0004317073171, \n    +0.0004839024390, +0.0003200000000, +0.0000595121951, -0.0003200000000, \n    -0.0004912195122, -0.0003870731707, -0.0002604878049, -0.0000743902439, \n    +0.0000595121951, +0.0000743902439, +0.0001563414634, +0.0002604878049, \n    +0.0003573170732, +0.0003497560976, +0.0002158536585, +0.0001860975610, \n    +0.0001265853659, +0.0000670731707, +0.0002604878049, +0.0005136585366, \n    +0.0006326829268, +0.0005582926829, +0.0004168292683, +0.0003348780488, \n    +0.0002456097561, +0.0002604878049, +0.0003573170732, +0.0003424390244, \n    +0.0002082926829, +0.0000521951220, -0.0000595121951, -0.0000968292683, \n    -0.0000595121951, +0.0000595121951, +0.0002531707317, +0.0003943902439, \n    +0.0004019512195, +0.0003721951220, +0.0004168292683, +0.0003870731707, \n    +0.0003348780488, +0.0003348780488, +0.0002531707317, +0.0002234146341, \n    +0.0003870731707, +0.0005953658537, +0.0006997560976, +0.0006326829268, \n    +0.0003943902439, +0.0001487804878, +0.0000521951220, +0.0001117073171, \n    +0.0002009756098, +0.0002680487805, +0.0003275609756, +0.0004392682927, \n    +0.0005731707317, +0.0006997560976, +0.0006251219512, +0.0003348780488, \n    +0.0001265853659, +0.0001190243902, +0.0001487804878, +0.0001785365854, \n    +0.0002082926829, +0.0002604878049, +0.0003943902439, +0.0005209756098, \n    +0.0006029268293, +0.0005434146341, +0.0003721951220, +0.0002978048780, \n    +0.0002604878049, +0.0002009756098, +0.0001636585366, +0.0001563414634, \n    +0.0000819512195, +0.0000000000000, +0.0000595121951, +0.0001487804878, \n    +0.0001041463415, +0.0000521951220, +0.0001487804878, +0.0003646341463, \n    +0.0005582926829, +0.0005434146341, +0.0002829268293, -0.0000819512195, \n    -0.0002753658537, -0.0001339024390, +0.0001414634146, +0.0003126829268, \n    +0.0003870731707, +0.0004168292683, +0.0004019512195, +0.0003870731707, \n    +0.0003573170732, +0.0003573170732, +0.0004392682927, +0.0004465853659, \n    +0.0002456097561, +0.0000595121951, +0.0000075609756, -0.0000373170732, \n    +0.0001414634146, +0.0004465853659, +0.0005582926829, +0.0005582926829, \n    +0.0003721951220, +0.0001563414634, +0.0001563414634, +0.0002604878049, \n    +0.0003573170732, +0.0004392682927, +0.0003721951220, +0.0003424390244, \n    +0.0004839024390, +0.0005136585366, +0.0003424390244, +0.0001563414634, \n    +0.0001265853659, +0.0002531707317, +0.0005731707317, +0.0008409756098, \n    +0.0007890243902, +0.0005507317073, +0.0003573170732, +0.0001563414634, \n    +0.0000075609756, -0.0000075609756, +0.0000819512195, +0.0003051219512, \n    +0.0004465853659, +0.0004168292683, +0.0004839024390, +0.0006402439024, \n    +0.0006402439024, +0.0004987804878, +0.0002978048780, +0.0000968292683, \n    +0.0000595121951, +0.0001563414634, +0.0002531707317, +0.0002902439024, \n    +0.0003424390244, +0.0003573170732, +0.0003126829268, +0.0002753658537, \n    +0.0002009756098, +0.0002158536585, +0.0002456097561, +0.0001190243902, \n    -0.0000148780488, -0.0001117073171, -0.0000892682927, +0.0001636585366, \n    +0.0004019512195, +0.0005880487805, +0.0006700000000, +0.0004019512195, \n    +0.0001712195122, +0.0001563414634, +0.0000595121951, -0.0000595121951, \n    +0.0000000000000, +0.0001785365854, +0.0002978048780, +0.0002082926829, \n    -0.0000148780488, -0.0001934146341, -0.0001636585366, +0.0001563414634, \n    +0.0006475609756, +0.0010346341463, +0.0011239024390, +0.0010643902439, \n    +0.0008858536585, +0.0005953658537, +0.0002902439024, +0.0000373170732, \n    +0.0000595121951, +0.0002234146341, +0.0002753658537, +0.0003424390244, \n    +0.0003795121951, +0.0002978048780, +0.0002158536585, +0.0001190243902, \n    +0.0000819512195, +0.0001041463415, +0.0000224390244, +0.0000892682927, \n    +0.0004168292683, +0.0006848780488, +0.0007295121951, +0.0004912195122, \n    +0.0002082926829, +0.0002009756098, +0.0003646341463, +0.0005804878049, \n    +0.0007741463415, +0.0006551219512, +0.0003424390244, +0.0002158536585, \n    +0.0002456097561, +0.0003424390244, +0.0004690243902, +0.0005804878049, \n    +0.0007368292683, +0.0008187804878, +0.0007295121951, +0.0005507317073, \n    +0.0004168292683, +0.0003424390244, +0.0001636585366, +0.0000148780488, \n    +0.0001414634146, +0.0003200000000, +0.0004243902439, +0.0006251219512, \n    +0.0008336585366, +0.0007741463415, +0.0005060975610, +0.0003051219512, \n    +0.0001712195122, +0.0000968292683, +0.0000373170732, +0.0000446341463, \n    +0.0002158536585, +0.0003424390244, +0.0002382926829, +0.0000297560976, \n    -0.0002082926829, -0.0002978048780, -0.0001785365854, -0.0000224390244, \n    +0.0002009756098, +0.0003424390244, +0.0004168292683, +0.0006624390244, \n    +0.0007741463415, +0.0005507317073, +0.0002829268293, +0.0000819512195, \n    -0.0000373170732, -0.0001117073171, -0.0001339024390, -0.0000521951220, \n    -0.0000224390244, -0.0000743902439, -0.0001190243902, -0.0000968292683, \n    +0.0000670731707, +0.0003200000000, +0.0004019512195, +0.0003497560976, \n    +0.0002604878049, +0.0001636585366, +0.0001041463415, +0.0000373170732, \n    +0.0000075609756, +0.0000373170732, +0.0001339024390, +0.0003497560976, \n    +0.0005804878049, +0.0006251219512, +0.0004317073171, +0.0001636585366, \n    +0.0000297560976, -0.0000743902439, -0.0001487804878, -0.0000595121951, \n    +0.0000892682927, +0.0002829268293, +0.0003424390244, +0.0002158536585, \n    +0.0000968292683, -0.0000148780488, -0.0001339024390, -0.0000819512195, \n    -0.0000224390244, -0.0000224390244, +0.0000968292683, +0.0002009756098, \n    +0.0002307317073, +0.0003051219512, +0.0003943902439, +0.0004392682927, \n    +0.0004317073171, +0.0003424390244, +0.0002829268293, +0.0000892682927, \n    -0.0001041463415, -0.0000521951220, +0.0000000000000, +0.0000373170732, \n    +0.0001636585366, +0.0002753658537, +0.0003943902439, +0.0004839024390, \n    +0.0004392682927, +0.0002753658537, +0.0000968292683, +0.0001487804878, \n    +0.0002753658537, +0.0001785365854, +0.0000148780488, -0.0001563414634, \n    -0.0002456097561, -0.0002234146341, -0.0002753658537, -0.0002978048780, \n    -0.0000892682927, +0.0001785365854, +0.0003126829268, +0.0003200000000, \n    +0.0002456097561, +0.0001636585366, +0.0000595121951, +0.0000224390244, \n    +0.0001265853659, +0.0001265853659, +0.0000373170732, +0.0000000000000, \n    -0.0001041463415, -0.0002456097561, -0.0002753658537, -0.0003051219512, \n    -0.0003051219512, -0.0001414634146, +0.0000743902439, +0.0002531707317, \n    +0.0003573170732, +0.0002456097561, +0.0000075609756, -0.0001636585366, \n    -0.0003943902439, -0.0005953658537, -0.0005507317073, -0.0002902439024, \n    -0.0000148780488, +0.0001117073171, +0.0001785365854, +0.0002234146341, \n    +0.0001339024390, -0.0000075609756, -0.0000446341463, -0.0000446341463, \n    -0.0000670731707, -0.0001117073171, -0.0001563414634, -0.0002829268293, \n    -0.0004019512195, -0.0003200000000, -0.0001860975610, -0.0001785365854, \n    -0.0002604878049, -0.0002978048780, -0.0002978048780, -0.0003348780488, \n    -0.0002753658537, -0.0000968292683, +0.0000000000000, +0.0000968292683, \n    +0.0002531707317, +0.0002680487805, +0.0001117073171, -0.0001190243902, \n    -0.0003275609756, -0.0004317073171, -0.0004392682927, -0.0003424390244, \n    -0.0003200000000, -0.0003646341463, -0.0002978048780, -0.0002158536585, \n    -0.0001636585366, -0.0001041463415, -0.0001414634146, -0.0002307317073, \n    -0.0002382926829, -0.0003051219512, -0.0003721951220, -0.0003051219512, \n    -0.0002382926829, -0.0001785365854, -0.0001117073171, -0.0000892682927, \n    -0.0000968292683, -0.0001265853659, -0.0000819512195, -0.0000373170732, \n    -0.0000670731707, -0.0000297560976, -0.0000819512195, -0.0003795121951, \n    -0.0007070731707, -0.0009007317073, -0.0008858536585, -0.0006475609756, \n    -0.0004690243902, -0.0002902439024, -0.0001414634146, -0.0001117073171, \n    -0.0000075609756, +0.0000670731707, -0.0000148780488, -0.0001339024390, \n    -0.0001860975610, -0.0001636585366, -0.0001785365854, -0.0002902439024, \n    -0.0003051219512, -0.0002604878049, -0.0002829268293, -0.0002234146341, \n    -0.0001041463415, -0.0001190243902, -0.0001041463415, -0.0000892682927, \n    -0.0003126829268, -0.0005358536585, -0.0006326829268, -0.0006700000000, \n    -0.0006326829268, -0.0005507317073, -0.0004541463415, -0.0004168292683, \n    -0.0004392682927, -0.0003870731707, -0.0002456097561, -0.0000595121951, \n    +0.0000892682927, +0.0000892682927, -0.0001041463415, -0.0004243902439, \n    -0.0006178048780, -0.0006102439024, -0.0005136585366, -0.0003200000000, \n    -0.0001339024390, -0.0001339024390, -0.0002307317073, -0.0002680487805, \n    -0.0002829268293, -0.0003126829268, -0.0003646341463, -0.0004243902439, \n    -0.0004987804878, -0.0005209756098, -0.0004243902439, -0.0003497560976, \n    -0.0002680487805, -0.0000595121951, +0.0000743902439, +0.0000000000000, \n    -0.0001265853659, -0.0002456097561, -0.0003348780488, -0.0004614634146, \n    -0.0005804878049, -0.0005731707317, -0.0004392682927, -0.0003200000000, \n    -0.0002978048780, -0.0002753658537, -0.0002234146341, -0.0001636585366, \n    -0.0001785365854, -0.0002307317073, -0.0001636585366, -0.0000595121951, \n    -0.0000595121951, -0.0000819512195, -0.0001190243902, -0.0002082926829, \n    -0.0003200000000, -0.0005060975610, -0.0006251219512, -0.0005953658537, \n    -0.0005953658537, -0.0005953658537, -0.0005434146341, -0.0004317073171, \n    -0.0002456097561, -0.0001265853659, -0.0001414634146, -0.0002082926829, \n    -0.0002978048780, -0.0003348780488, -0.0003051219512, -0.0001860975610, \n    -0.0000743902439, -0.0000521951220, -0.0000670731707, -0.0000968292683, \n    -0.0001712195122, -0.0002456097561, -0.0002902439024, -0.0003200000000, \n    -0.0003348780488, -0.0002829268293, -0.0001860975610, -0.0001414634146, \n    -0.0001563414634, -0.0002158536585, -0.0002978048780, -0.0003275609756, \n    -0.0003795121951, -0.0004168292683, -0.0004092682927, -0.0003200000000, \n    -0.0002009756098, -0.0001934146341, -0.0002382926829, -0.0002158536585, \n    -0.0000595121951, +0.0000892682927, +0.0000595121951, +0.0000075609756, \n    +0.0000373170732, +0.0000000000000, +0.0000000000000, +0.0000521951220, \n    +0.0000670731707, +0.0000819512195, +0.0000000000000, +0.0000075609756, \n    +0.0000670731707, -0.0000446341463, -0.0002382926829, -0.0004541463415, \n    -0.0006102439024, -0.0005209756098, -0.0003051219512, -0.0001041463415, \n    +0.0000892682927, +0.0002382926829, +0.0003200000000, +0.0002902439024, \n    +0.0002082926829, +0.0000743902439, -0.0000968292683, -0.0002009756098, \n    -0.0002307317073, -0.0002456097561, -0.0002307317073, -0.0001117073171, \n    +0.0001117073171, +0.0002531707317, +0.0002382926829, +0.0001785365854, \n    +0.0001265853659, +0.0000297560976, -0.0001414634146, -0.0002978048780, \n    -0.0003497560976, -0.0002753658537, -0.0001785365854, -0.0001414634146, \n    -0.0000670731707, +0.0000224390244, +0.0000521951220, +0.0001487804878, \n    +0.0001487804878, +0.0000075609756, -0.0000595121951, -0.0001712195122, \n    -0.0002158536585, -0.0001265853659, +0.0000000000000, +0.0002009756098, \n    +0.0002902439024, +0.0001785365854, +0.0000595121951, -0.0000446341463, \n    -0.0000892682927, -0.0001265853659, -0.0001487804878, +0.0000446341463, \n    +0.0002753658537, +0.0003348780488, +0.0003051219512, +0.0001563414634, \n    +0.0000224390244, -0.0000743902439, -0.0001487804878, -0.0000968292683, \n    -0.0000373170732, +0.0000000000000, +0.0000373170732, -0.0000148780488, \n    -0.0000743902439, -0.0000297560976, +0.0000743902439, +0.0001190243902, \n    +0.0000297560976, -0.0000521951220, -0.0000446341463, -0.0000595121951, \n    +0.0000075609756, +0.0001785365854, +0.0002604878049, +0.0002456097561, \n    +0.0002829268293, +0.0003200000000, +0.0002082926829, +0.0000595121951, \n    +0.0000148780488, +0.0000148780488, +0.0000000000000, +0.0000000000000, \n    +0.0000148780488, +0.0000446341463, +0.0000148780488, +0.0000892682927, \n    +0.0002307317073, +0.0002234146341, +0.0001414634146, +0.0000595121951, \n    -0.0000446341463, -0.0001265853659, -0.0002456097561, -0.0003348780488, \n    -0.0003275609756, -0.0002234146341, -0.0000446341463, +0.0001785365854, \n    +0.0003424390244, +0.0003943902439, +0.0003795121951, +0.0003497560976, \n    +0.0003348780488, +0.0002829268293, +0.0001265853659, +0.0000075609756, \n    -0.0000670731707, -0.0002753658537, -0.0004614634146, -0.0005060975610, \n    -0.0004541463415, -0.0002829268293, -0.0000446341463, +0.0001785365854, \n    +0.0003795121951, +0.0004987804878, +0.0005060975610, +0.0003424390244, \n    +0.0001487804878, +0.0000521951220, -0.0000297560976, -0.0000968292683, \n    -0.0001041463415, -0.0001339024390, -0.0001487804878, -0.0001190243902, \n    +0.0000000000000, +0.0002158536585, +0.0003721951220, +0.0004392682927, \n    +0.0004465853659, +0.0003795121951, +0.0002382926829, +0.0001041463415, \n    +0.0000743902439, +0.0000968292683, +0.0000521951220, -0.0000224390244, \n    -0.0000521951220, +0.0000000000000, +0.0000819512195, +0.0001117073171, \n    +0.0001117073171, +0.0000297560976, -0.0001041463415, -0.0001636585366, \n    -0.0001265853659, -0.0000075609756, +0.0001712195122, +0.0002829268293, \n    +0.0003275609756, +0.0003943902439, +0.0003348780488, +0.0002456097561, \n    +0.0001785365854, +0.0000000000000, -0.0000968292683, -0.0000743902439, \n    -0.0000224390244, +0.0000224390244, -0.0000373170732, -0.0001339024390, \n    -0.0001339024390, -0.0000968292683, -0.0000819512195, -0.0000075609756, \n    +0.0001190243902, +0.0002531707317, +0.0003275609756, +0.0002978048780, \n    +0.0001860975610, +0.0001339024390, +0.0001265853659, +0.0001265853659, \n    +0.0001117073171, +0.0000148780488, -0.0000075609756, +0.0000373170732, \n    +0.0000075609756, +0.0000075609756, -0.0000148780488, -0.0001636585366, \n    -0.0002604878049, -0.0002753658537, -0.0001041463415, +0.0001190243902, \n    +0.0002382926829, +0.0002680487805, +0.0001934146341, +0.0001117073171, \n    +0.0001414634146, +0.0001265853659, +0.0000521951220, +0.0000148780488, \n    -0.0000521951220, -0.0000148780488, +0.0001265853659, +0.0002158536585, \n    +0.0002680487805, +0.0003200000000, +0.0002829268293, +0.0001934146341, \n    +0.0000297560976, -0.0001265853659, -0.0001117073171, +0.0000224390244, \n    +0.0001860975610, +0.0002604878049, +0.0001860975610, +0.0001190243902, \n    +0.0000892682927, +0.0000892682927, +0.0001190243902, +0.0001563414634, \n    +0.0002680487805, +0.0003573170732, +0.0002604878049, +0.0001487804878, \n    +0.0001636585366, +0.0002604878049, +0.0003721951220, +0.0004019512195, \n    +0.0003646341463, +0.0002753658537, +0.0001563414634, +0.0000000000000, \n    -0.0001339024390, -0.0001934146341, -0.0001487804878, +0.0000446341463, \n    +0.0002753658537, +0.0003870731707, +0.0003943902439, +0.0003275609756, \n    +0.0002456097561, +0.0002456097561, +0.0002009756098, +0.0000670731707, \n    +0.0000075609756, +0.0000819512195, +0.0001934146341, +0.0003348780488, \n    +0.0004317073171, +0.0004541463415, +0.0003870731707, +0.0002753658537, \n    +0.0001860975610, +0.0001414634146, +0.0001712195122, +0.0002753658537, \n    +0.0003943902439, +0.0005358536585, +0.0005804878049, +0.0004092682927, \n    +0.0002158536585, +0.0000670731707, +0.0000373170732, +0.0001860975610, \n    +0.0003573170732, +0.0005507317073, +0.0006773170732, +0.0006402439024, \n    +0.0005804878049, +0.0005285365854, +0.0004317073171, +0.0002753658537, \n    +0.0000743902439, -0.0001117073171, -0.0002009756098, -0.0001636585366, \n    -0.0000373170732, +0.0000446341463, +0.0000670731707, +0.0001339024390, \n    +0.0002307317073, +0.0002456097561, +0.0002234146341, +0.0002456097561, \n    +0.0002753658537, +0.0003646341463, +0.0004092682927, +0.0003275609756, \n    +0.0002531707317, +0.0001636585366, +0.0000743902439, +0.0000297560976, \n    +0.0000075609756, +0.0000297560976, +0.0001117073171, +0.0001785365854, \n    +0.0001636585366, +0.0000297560976, -0.0000892682927, -0.0000968292683, \n    +0.0000000000000, +0.0001414634146, +0.0002456097561, +0.0003126829268, \n    +0.0003424390244, +0.0003126829268, +0.0002307317073, +0.0001636585366, \n    +0.0001712195122, +0.0001563414634, +0.0000075609756, -0.0001041463415, \n    -0.0001190243902, -0.0000892682927, +0.0000148780488, +0.0001636585366, \n    +0.0002680487805, +0.0003126829268, +0.0002978048780, +0.0002753658537, \n    +0.0002009756098, +0.0000521951220, -0.0001041463415, -0.0002234146341, \n    -0.0002680487805, -0.0002456097561, -0.0001563414634, -0.0000521951220, \n    -0.0000224390244, -0.0000373170732, -0.0000373170732, -0.0000670731707, \n    -0.0000819512195, -0.0000148780488, +0.0000446341463, +0.0000075609756, \n    -0.0000743902439, -0.0001190243902, -0.0001563414634, -0.0002082926829, \n    -0.0001785365854, -0.0000446341463, +0.0000595121951, +0.0000595121951, \n    -0.0000373170732, -0.0001712195122, -0.0001934146341, -0.0001265853659, \n    -0.0000743902439, -0.0000521951220, -0.0000670731707, -0.0000968292683, \n    -0.0001414634146, -0.0001860975610, -0.0001339024390, -0.0000373170732, \n    -0.0000446341463, -0.0001041463415, -0.0001414634146, -0.0001860975610, \n    -0.0001785365854, -0.0001117073171, -0.0000521951220, -0.0000148780488, \n    +0.0000000000000, -0.0000446341463, -0.0000521951220, -0.0000075609756, \n    +0.0000373170732, +0.0000521951220, -0.0000224390244, -0.0001487804878, \n    -0.0002680487805, -0.0003497560976, -0.0003424390244, -0.0002382926829, \n    -0.0000670731707, +0.0000521951220, +0.0000743902439, +0.0000743902439, \n    +0.0000297560976, -0.0000373170732, -0.0000670731707, -0.0000892682927, \n    -0.0001041463415, -0.0000892682927, -0.0000446341463, +0.0000000000000, \n    -0.0000670731707, -0.0002680487805, -0.0003943902439, -0.0004763414634, \n    -0.0005285365854, -0.0003870731707, -0.0000892682927, +0.0001563414634, \n    +0.0003275609756, +0.0004092682927, +0.0003795121951, +0.0002680487805, \n    +0.0001117073171, -0.0000297560976, -0.0000968292683, -0.0000595121951, \n    -0.0000670731707, -0.0001712195122, -0.0002456097561, -0.0002604878049, \n    -0.0002082926829, -0.0000595121951, +0.0001190243902, +0.0002531707317, \n    +0.0002531707317, +0.0000892682927, -0.0000595121951, -0.0001117073171, \n    -0.0001117073171, +0.0000075609756, +0.0002009756098, +0.0002680487805, \n    +0.0001563414634, +0.0000148780488, +0.0000000000000, +0.0000224390244, \n    -0.0000446341463, -0.0000968292683, -0.0000819512195, -0.0000670731707, \n    +0.0000446341463, +0.0001860975610, +0.0002158536585, +0.0002082926829, \n    +0.0001563414634, +0.0000892682927, +0.0000670731707, +0.0000148780488, \n    -0.0000373170732, -0.0000373170732, +0.0000224390244, +0.0001190243902, \n    +0.0001339024390, +0.0001190243902, +0.0001636585366, +0.0001339024390, \n    +0.0000373170732, -0.0000224390244, +0.0000000000000, +0.0000373170732, \n    +0.0000000000000, -0.0000521951220, -0.0000297560976, -0.0000075609756, \n    -0.0000373170732, -0.0000521951220, -0.0000373170732, -0.0000595121951, \n    -0.0000819512195, -0.0000224390244, +0.0000224390244, +0.0000446341463, \n    +0.0001265853659, +0.0002307317073, +0.0002604878049, +0.0002158536585, \n    +0.0000968292683, -0.0000297560976, -0.0000968292683, -0.0001339024390, \n    -0.0002009756098, -0.0002456097561, -0.0002082926829, -0.0000743902439, \n    +0.0000446341463, +0.0000968292683, +0.0001339024390, +0.0001414634146, \n    +0.0000892682927, +0.0000000000000, -0.0001339024390, -0.0002382926829, \n    -0.0002382926829, -0.0002082926829, -0.0000819512195, +0.0000148780488, \n    +0.0000000000000, +0.0000075609756, -0.0000075609756, -0.0000670731707, \n    -0.0001190243902, -0.0002082926829, -0.0002158536585, -0.0001414634146, \n    -0.0001041463415, -0.0000743902439, +0.0000148780488, +0.0000892682927, \n    +0.0001190243902, +0.0001117073171, +0.0000373170732, -0.0001041463415, \n    -0.0002382926829, -0.0002604878049, -0.0002680487805, -0.0002829268293, \n    -0.0002456097561, -0.0001041463415, +0.0000521951220, +0.0002009756098, \n    +0.0002680487805, +0.0002158536585, +0.0001041463415, -0.0000446341463, \n    -0.0002307317073, -0.0003424390244, -0.0003943902439, -0.0003721951220, \n    -0.0002680487805, -0.0001785365854, -0.0001414634146, -0.0001190243902, \n    -0.0000446341463, +0.0000297560976, -0.0000075609756, -0.0001117073171, \n    -0.0001860975610, -0.0002307317073, -0.0002531707317, -0.0002382926829, \n    -0.0002382926829, -0.0002456097561, -0.0002009756098, -0.0001117073171, \n    -0.0000521951220, -0.0000743902439, -0.0000892682927, -0.0000595121951, \n    -0.0000595121951, -0.0001041463415, -0.0001117073171, -0.0001041463415, \n    -0.0001339024390, -0.0001563414634, -0.0001487804878, -0.0001636585366, \n    -0.0002456097561, -0.0003348780488, -0.0003348780488, -0.0002829268293, \n    -0.0002234146341, -0.0001860975610, -0.0000819512195, +0.0001117073171, \n    +0.0002604878049, +0.0002604878049, +0.0001563414634, +0.0000224390244, \n    -0.0000148780488, +0.0000075609756, -0.0000297560976, -0.0001041463415, \n    -0.0001563414634, -0.0001339024390, -0.0000595121951, -0.0000224390244, \n    -0.0000446341463, -0.0000892682927, -0.0001339024390, -0.0001712195122, \n    -0.0002307317073, -0.0002978048780, -0.0002456097561, -0.0001265853659, \n    +0.0000000000000, +0.0000743902439, +0.0000819512195, +0.0000595121951, \n    +0.0000000000000, -0.0000297560976, -0.0000224390244, -0.0000075609756, \n    +0.0000000000000, -0.0000148780488, +0.0000000000000, +0.0000297560976, \n    -0.0000075609756, -0.0000446341463, -0.0000373170732, -0.0000297560976, \n    -0.0000373170732, -0.0001117073171, -0.0002307317073, -0.0002456097561, \n    -0.0001785365854, -0.0000892682927, -0.0000224390244, +0.0000075609756, \n    +0.0000595121951, +0.0000743902439, +0.0000297560976, -0.0000075609756, \n    -0.0000446341463, -0.0000670731707, -0.0000670731707, -0.0000892682927, \n    -0.0001190243902, -0.0001563414634, -0.0001487804878, -0.0000670731707, \n    -0.0000446341463, -0.0000743902439, -0.0001041463415, -0.0001117073171, \n    -0.0001117073171, -0.0001190243902, -0.0001265853659, -0.0001563414634, \n    -0.0001860975610, -0.0001785365854, -0.0001785365854, -0.0001563414634, \n    -0.0000595121951, +0.0000075609756, +0.0000000000000, -0.0000224390244, \n    -0.0000148780488, +0.0000000000000, -0.0000297560976, -0.0000595121951, \n    -0.0001117073171, -0.0001785365854, -0.0001712195122, -0.0001339024390, \n    -0.0001041463415, -0.0000595121951, -0.0000075609756, +0.0000297560976, \n    +0.0000297560976, -0.0000148780488, -0.0000373170732, +0.0000000000000, \n    +0.0000446341463, +0.0000670731707, +0.0000373170732, +0.0000148780488, \n    -0.0000521951220, -0.0001785365854, -0.0002382926829, -0.0002604878049, \n    -0.0001860975610, -0.0000297560976, +0.0000968292683, +0.0001860975610, \n    +0.0001860975610, +0.0000743902439, -0.0000148780488, -0.0000743902439, \n    -0.0001414634146, -0.0001265853659, -0.0000743902439, -0.0000297560976, \n    +0.0000075609756, +0.0000148780488, +0.0000075609756, +0.0000446341463, \n    +0.0000968292683, +0.0001117073171, +0.0001041463415, +0.0000968292683, \n    +0.0001265853659, +0.0001339024390, +0.0000743902439, +0.0000297560976, \n    -0.0000224390244, -0.0000670731707, -0.0000373170732, +0.0000224390244, \n    +0.0000446341463, +0.0000670731707, +0.0000670731707, +0.0000075609756, \n    -0.0000892682927, -0.0001487804878, -0.0001041463415, +0.0000148780488, \n    +0.0001190243902, +0.0001487804878, +0.0000968292683, +0.0000148780488, \n    -0.0000148780488, -0.0000373170732, -0.0000446341463, -0.0000446341463, \n    -0.0000743902439, -0.0000670731707, +0.0000000000000, +0.0000743902439, \n    +0.0001190243902, +0.0001041463415, +0.0000446341463, +0.0000075609756, \n    -0.0000148780488, -0.0000595121951, -0.0000819512195, -0.0000819512195, \n    -0.0000892682927, -0.0000446341463, +0.0000224390244, +0.0000224390244, \n    -0.0000297560976, -0.0000446341463, +0.0000148780488, +0.0001339024390, \n    +0.0001636585366, +0.0001265853659, +0.0000521951220, -0.0000297560976, \n    -0.0000819512195, -0.0001041463415, -0.0000892682927, -0.0000670731707, \n    -0.0000819512195, -0.0001041463415, -0.0000595121951, -0.0000148780488, \n    +0.0000446341463, +0.0001339024390, +0.0001414634146, +0.0000892682927, \n    +0.0000446341463, -0.0000148780488, -0.0000595121951, -0.0000670731707, \n    -0.0000224390244, +0.0000595121951, +0.0001117073171, +0.0000968292683, \n    +0.0000743902439, +0.0000297560976, -0.0000148780488, +0.0000075609756, \n    +0.0001041463415, +0.0001414634146, +0.0000819512195, +0.0000148780488, \n    -0.0000075609756, -0.0000446341463, -0.0000595121951, -0.0000968292683, \n    -0.0000819512195, -0.0000075609756, +0.0000373170732, +0.0000595121951, \n    +0.0000892682927, +0.0001265853659, +0.0001487804878, +0.0001414634146, \n    +0.0001414634146, +0.0001636585366, +0.0000819512195, -0.0000670731707, \n    -0.0001636585366, -0.0001636585366, -0.0001339024390, -0.0000968292683, \n    -0.0000148780488, +0.0000743902439, +0.0001414634146, +0.0001934146341, \n    +0.0001636585366, +0.0000521951220, +0.0000000000000, -0.0000075609756, \n    -0.0000075609756, +0.0000148780488, +0.0000892682927, +0.0001934146341, \n    +0.0002382926829, +0.0001785365854, +0.0000670731707, +0.0000000000000, \n    -0.0000595121951, -0.0000819512195, -0.0000075609756, +0.0001190243902, \n    +0.0002531707317, +0.0003348780488, +0.0002829268293, +0.0002009756098, \n    +0.0001339024390, +0.0000892682927, +0.0001041463415, +0.0000968292683, \n    +0.0000446341463, +0.0000075609756, +0.0000000000000, -0.0000148780488, \n    -0.0000297560976, -0.0000595121951, -0.0000670731707, -0.0000224390244, \n    +0.0000743902439, +0.0001414634146, +0.0001563414634, +0.0001487804878, \n    +0.0001041463415, +0.0000521951220, +0.0000000000000, -0.0000446341463, \n    -0.0000892682927, -0.0001190243902, -0.0000968292683, -0.0000297560976, \n    +0.0000373170732, +0.0001339024390, +0.0002082926829, +0.0001712195122, \n    +0.0000968292683, +0.0000148780488, -0.0000521951220, -0.0000373170732, \n    +0.0000297560976, +0.0000446341463, +0.0000521951220, +0.0000670731707, \n    +0.0000743902439, +0.0000743902439, +0.0001041463415, +0.0001414634146, \n    +0.0001712195122, +0.0001712195122, +0.0001487804878, +0.0001190243902, \n    +0.0000446341463, -0.0000075609756, -0.0000075609756, -0.0000075609756, \n    -0.0000075609756, +0.0000000000000, +0.0000075609756, +0.0000224390244, \n    +0.0000224390244, +0.0000075609756, +0.0000373170732, +0.0001414634146, \n    +0.0002753658537, +0.0003573170732, +0.0003051219512, +0.0001487804878, \n    +0.0000000000000, -0.0000968292683, -0.0001117073171, -0.0000595121951, \n    -0.0000148780488, +0.0000148780488, +0.0000595121951, +0.0000892682927, \n    +0.0001041463415, +0.0001414634146, +0.0001860975610, +0.0001712195122, \n    +0.0001117073171, +0.0000224390244, -0.0000373170732, -0.0000446341463, \n    -0.0000297560976, -0.0000148780488, -0.0000075609756, -0.0000373170732, \n    -0.0001117073171, -0.0001487804878, -0.0001117073171, -0.0000075609756, \n    +0.0001190243902, +0.0002307317073, +0.0002829268293, +0.0002382926829, \n    +0.0001414634146, +0.0000224390244, -0.0000373170732, -0.0000224390244, \n    +0.0000521951220, +0.0000892682927, +0.0000670731707, +0.0000297560976, \n    +0.0000148780488, +0.0000000000000, +0.0000075609756, +0.0000595121951, \n    +0.0000743902439, +0.0000819512195, +0.0000968292683, +0.0000446341463, \n    -0.0000224390244, -0.0000297560976, +0.0000670731707, +0.0001860975610, \n    +0.0002158536585, +0.0001117073171, -0.0000297560976, -0.0001265853659, \n    -0.0001487804878, -0.0001190243902, -0.0000446341463, +0.0000373170732, \n    +0.0001190243902, +0.0001712195122, +0.0001712195122, +0.0001339024390, \n    +0.0000373170732, -0.0000670731707, -0.0001339024390, -0.0001636585366, \n    -0.0001563414634, -0.0000743902439, +0.0000297560976, +0.0001414634146, \n    +0.0001860975610, +0.0001563414634, +0.0000968292683, +0.0000446341463, \n    +0.0000148780488, +0.0000148780488, +0.0000224390244, +0.0000224390244, \n    -0.0000075609756, -0.0000373170732, -0.0000521951220, -0.0000521951220, \n    -0.0000148780488, +0.0000000000000, -0.0000373170732, -0.0001117073171, \n    -0.0001414634146, -0.0000521951220, +0.0001265853659, +0.0002753658537, \n    +0.0003051219512, +0.0002382926829, +0.0001117073171, -0.0000297560976, \n    -0.0001117073171, -0.0000743902439, +0.0000148780488, +0.0001265853659, \n    +0.0001712195122, +0.0001636585366, +0.0001563414634, +0.0000968292683, \n    +0.0000373170732, +0.0000000000000, -0.0000595121951, -0.0001487804878, \n    -0.0002082926829, -0.0002009756098, -0.0001414634146, -0.0000224390244, \n    +0.0001190243902, +0.0001860975610, +0.0001636585366, +0.0001117073171, \n    +0.0000521951220, +0.0000224390244, +0.0000075609756, +0.0000000000000, \n    +0.0000000000000, -0.0000224390244, -0.0000670731707, -0.0000968292683, \n    -0.0000670731707, +0.0000224390244, +0.0000892682927, +0.0000521951220, \n    +0.0000075609756, +0.0000000000000, +0.0000075609756, +0.0000521951220, \n    +0.0000595121951, +0.0000446341463, +0.0000075609756, -0.0000595121951, \n    -0.0001265853659, -0.0001636585366, -0.0001636585366, -0.0001414634146, \n    -0.0001041463415, -0.0000521951220, +0.0000148780488, +0.0000595121951, \n    +0.0000670731707, +0.0000595121951, +0.0000670731707, +0.0001190243902, \n    +0.0001712195122, +0.0001636585366, +0.0000595121951, -0.0000521951220, \n    -0.0001265853659, -0.0001339024390, -0.0001414634146, -0.0001117073171, \n    -0.0000446341463, +0.0000297560976, +0.0000743902439, +0.0000968292683, \n    +0.0001041463415, +0.0001041463415, +0.0000670731707, +0.0000000000000, \n    -0.0000743902439, -0.0001487804878, -0.0001563414634, -0.0001265853659, \n    -0.0000595121951, +0.0000373170732, +0.0001339024390, +0.0001934146341, \n    +0.0002082926829, +0.0001934146341, +0.0001712195122, +0.0001339024390, \n    +0.0000743902439, +0.0000000000000, -0.0000968292683, -0.0001563414634, \n    -0.0001487804878, -0.0001117073171, -0.0000521951220, +0.0000000000000, \n    +0.0000521951220, +0.0000819512195, +0.0000968292683, +0.0001041463415, \n    +0.0000819512195, +0.0000373170732, +0.0000075609756, +0.0000000000000, \n    -0.0000224390244, -0.0000148780488, +0.0000000000000, +0.0000373170732, \n    +0.0000743902439, +0.0001041463415, +0.0000892682927, +0.0000743902439, \n    +0.0000521951220, +0.0000075609756, -0.0000148780488, -0.0000670731707, \n    -0.0000743902439, -0.0000521951220, -0.0000224390244, +0.0000000000000, \n    +0.0000224390244, +0.0000373170732, +0.0000446341463, +0.0000297560976, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000075609756, \n    +0.0000297560976, +0.0000297560976, +0.0000224390244, +0.0000148780488, \n    +0.0000148780488, +0.0000224390244, +0.0000148780488, +0.0000075609756, \n    +0.0000000000000, +0.0000075609756, +0.0000148780488, +0.0000148780488, \n    +0.0000075609756, +0.0000075609756, +0.0000000000000, -0.0000224390244, \n    -0.0000297560976, -0.0000297560976, -0.0000148780488, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, -0.0000075609756, \n    -0.0000075609756, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000075609756, +0.0000148780488, +0.0000148780488, \n    +0.0000075609756, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000\n};\n"
  },
  {
    "path": "impulses/11-fender-bassman-ui87.h",
    "content": "float fender_bassman_ui87[] = {\n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000062374245, \n    +0.0000122736419, +0.0000122736419, +0.0000122736419, +0.0000062374245, \n    +0.0000062374245, +0.0000062374245, +0.0000122736419, +0.0000122736419, \n    +0.0000122736419, +0.0000000000000, -0.0000185110664, -0.0000307847082, \n    -0.0000368209256, -0.0000185110664, +0.0000062374245, +0.0000430583501, \n    +0.0000859154930, +0.0001044265594, +0.0000981891348, +0.0000798792757, \n    +0.0000490945674, +0.0000185110664, +0.0000000000000, +0.0000000000000, \n    -0.0000062374245, -0.0000245472837, -0.0000430583501, -0.0000613682093, \n    -0.0000736418511, -0.0000553319920, -0.0000062374245, +0.0000676056338, \n    +0.0001535211268, +0.0002211267606, +0.0002394366197, +0.0002088531187, \n    +0.0001227364185, +0.0000000000000, -0.0001167002012, -0.0002026156942, \n    -0.0002211267606, -0.0001657947686, -0.0000368209256, +0.0001289738431, \n    +0.0002885311871, +0.0004052313883, +0.0004297786720, +0.0003561368209, \n    +0.0002026156942, +0.0000122736419, -0.0001535211268, -0.0002517102616, \n    -0.0002517102616, -0.0001535211268, +0.0000000000000, +0.0001535211268, \n    +0.0002579476861, +0.0002762575453, +0.0002088531187, +0.0001044265594, \n    +0.0000062374245, -0.0000307847082, -0.0000062374245, +0.0000736418511, \n    +0.0001718309859, +0.0002394366197, +0.0002334004024, +0.0001657947686, \n    +0.0000490945674, -0.0000613682093, -0.0001412474849, -0.0001657947686, \n    -0.0001167002012, -0.0000307847082, +0.0000613682093, +0.0001472837022, \n    +0.0001965794769, +0.0002088531187, +0.0001903420523, +0.0001472837022, \n    +0.0000921529175, +0.0000368209256, +0.0000000000000, -0.0000245472837, \n    -0.0000185110664, +0.0000122736419, +0.0000798792757, +0.0001595573441, \n    +0.0002271629779, +0.0002639839034, +0.0002579476861, +0.0001965794769, \n    +0.0001044265594, +0.0000000000000, -0.0000798792757, -0.0001289738431, \n    -0.0001350100604, -0.0000981891348, -0.0000245472837, +0.0000553319920, \n    +0.0001350100604, +0.0002026156942, +0.0002456740443, +0.0002702213280, \n    +0.0002762575453, +0.0002762575453, +0.0002762575453, +0.0002639839034, \n    +0.0002517102616, +0.0002026156942, +0.0001227364185, +0.0000062374245, \n    -0.0001167002012, -0.0002334004024, -0.0003008048290, -0.0002947686117, \n    -0.0002088531187, -0.0000676056338, +0.0000859154930, +0.0002088531187, \n    +0.0002824949698, +0.0002947686117, +0.0002702213280, +0.0002334004024, \n    +0.0002271629779, +0.0002517102616, +0.0002885311871, +0.0002947686117, \n    +0.0002456740443, +0.0001167002012, -0.0000553319920, -0.0002517102616, \n    -0.0003929577465, -0.0004482897384, -0.0003929577465, -0.0002517102616, \n    -0.0000676056338, +0.0001044265594, +0.0002334004024, +0.0003008048290, \n    +0.0003253521127, +0.0003315895372, +0.0003376257545, +0.0003623742455, \n    +0.0003991951710, +0.0004114688129, +0.0003746478873, +0.0002639839034, \n    +0.0000736418511, -0.0001780684105, -0.0004420523139, -0.0006569416499, \n    -0.0007553319920, -0.0006937625755, -0.0004605633803, -0.0001104627767, \n    +0.0002702213280, +0.0005832997988, +0.0007430583501, +0.0007185110664, \n    +0.0005404426559, +0.0002885311871, +0.0000613682093, -0.0000676056338, \n    -0.0000921529175, -0.0000613682093, -0.0000368209256, -0.0000676056338, \n    -0.0001535211268, -0.0002639839034, -0.0003193158954, -0.0002824949698, \n    -0.0001657947686, -0.0000185110664, +0.0000798792757, +0.0000859154930, \n    +0.0000122736419, -0.0000676056338, -0.0000798792757, +0.0000307847082, \n    +0.0002334004024, +0.0004114688129, +0.0004605633803, +0.0002947686117, \n    -0.0000613682093, -0.0004788732394, -0.0007798792757, -0.0008104627767, \n    -0.0005342052314, -0.0000430583501, +0.0004543259557, +0.0007859154930, \n    +0.0007981891348, +0.0005404426559, +0.0001044265594, -0.0002947686117, \n    -0.0006140845070, -0.0008044265594, -0.0007859154930, -0.0008595573441, \n    -0.0009148893360, -0.0008472837022, -0.0006323943662, -0.0002456740443, \n    +0.0002824949698, +0.0008350100604, +0.0012342052314, +0.0012955734406, \n    +0.0009639839034, +0.0004114688129, -0.0002026156942, -0.0006509054326, \n    -0.0008965794769, -0.0009026156942, -0.0008780684105, -0.0009026156942, \n    -0.0010623742455, -0.0012096579477, -0.0012895372233, -0.0011175050302, \n    -0.0007859154930, -0.0003008048290, +0.0000613682093, +0.0001657947686, \n    +0.0000122736419, -0.0002579476861, -0.0005342052314, -0.0007062374245, \n    -0.0005587525151, -0.0005404426559, -0.0005464788732, -0.0012404426559, \n    -0.0020323943662, -0.0035307847082, -0.0047955734406, -0.0061158953722, \n    -0.0070676056338, -0.0091921529175, -0.0070798792757, -0.0133553319920, \n    -0.0027569416499, -0.0126613682093, -0.0237386317907, +0.0033772635815, \n    +0.0536728370221, +0.0315122736419, -0.0922344064386, -0.1213824949698, \n    -0.0277605633803, +0.0047034205231, +0.0728983903421, +0.1977993963783, \n    +0.2011949698189, +0.1692529175050, +0.0937263581489, -0.0018665995976, \n    -0.0412631790744, -0.0820597585513, -0.1030229376258, -0.0709150905433, \n    -0.0684464788732, -0.0469000000000, -0.0155289738431, +0.0112859154930, \n    +0.0516587525151, +0.0585728370221, +0.0543668008048, +0.0577255533199, \n    +0.0324088531187, +0.0172543259557, +0.0068649899396, -0.0127780684105, \n    -0.0118816901408, -0.0237446680080, -0.0326605633803, -0.0255869215292, \n    -0.0184885311871, -0.0068034205231, -0.0002702213280, -0.0085044265594, \n    -0.0060360160966, +0.0026955734406, +0.0037394366197, +0.0108561368209, \n    +0.0087193158954, -0.0036167002012, -0.0076692152918, -0.0095237424547, \n    -0.0186482897384, -0.0095543259557, -0.0116543259557, -0.0237877263581, \n    -0.0116973843058, -0.0127167002012, -0.0158052313883, -0.0088114688129, \n    -0.0080746478873, -0.0066253521127, -0.0051026156942, -0.0084430583501, \n    +0.0024501006036, +0.0069018108652, +0.0081973843058, +0.0107639839034, \n    +0.0045376257545, +0.0050720321932, +0.0026832997988, +0.0038991951710, \n    +0.0074482897384, -0.0005464788732, -0.0069201207243, -0.0096404426559, \n    -0.0163271629779, -0.0202323943662, -0.0166772635815, -0.0099657947686, \n    -0.0006692152918, +0.0026772635815, +0.0057350100604, +0.0049122736419, \n    +0.0019649899396, +0.0010315895372, +0.0005342052314, -0.0041877263581, \n    -0.0106780684105, -0.0095665995976, -0.0106167002012, -0.0108684104628, \n    -0.0095973843058, -0.0097509054326, -0.0118877263581, -0.0138649899396, \n    -0.0116360160966, -0.0020877263581, +0.0010501006036, -0.0030702213280, \n    -0.0049798792757, -0.0084981891348, -0.0078472837022, -0.0058211267606, \n    -0.0040096579477, -0.0003684104628, +0.0004788732394, +0.0035368209256, \n    +0.0064289738431, -0.0011665995976, -0.0066929577465, -0.0074665995976, \n    -0.0091307847082, -0.0045130784708, -0.0005527162978, -0.0009824949698, \n    -0.0028490945674, -0.0072026156942, -0.0101561368209, -0.0114026156942, \n    -0.0127720321932, -0.0124281690141, -0.0128885311871, -0.0111386317907, \n    -0.0069877263581, -0.0066253521127, -0.0049185110664, -0.0006263581489, \n    +0.0023885311871, +0.0036289738431, +0.0033955734406, +0.0043780684105, \n    +0.0052376257545, +0.0032911468813, +0.0036657947686, +0.0046851106640, \n    +0.0035553319920, +0.0015903420523, -0.0024806841046, -0.0073193158954, \n    -0.0122193158954, -0.0149517102616, -0.0131895372233, -0.0104446680080, \n    -0.0078843058350, -0.0047955734406, -0.0020509054326, -0.0000307847082, \n    -0.0006140845070, -0.0014490945674, +0.0001044265594, +0.0020631790744, \n    +0.0039851106640, +0.0055201207243, +0.0051026156942, +0.0041263581489, \n    +0.0020692152918, -0.0005955734406, -0.0006692152918, -0.0000122736419, \n    +0.0001412474849, +0.0012895372233, +0.0025665995976, +0.0030762575453, \n    +0.0025728370221, +0.0020323943662, +0.0030211267606, +0.0039851106640, \n    +0.0052929577465, +0.0079211267606, +0.0073315895372, +0.0046788732394, \n    +0.0027446680080, +0.0014798792757, +0.0016579476861, +0.0008044265594, \n    -0.0001657947686, -0.0002211267606, -0.0013631790744, -0.0011114688129, \n    -0.0005527162978, -0.0002271629779, +0.0025175050302, +0.0051517102616, \n    +0.0066253521127, +0.0073561368209, +0.0066869215292, +0.0059684104628, \n    +0.0059869215292, +0.0059746478873, +0.0047832997988, +0.0030271629779, \n    +0.0005587525151, -0.0006509054326, +0.0007185110664, +0.0013814889336, \n    +0.0034446680080, +0.0066623742455, +0.0072088531187, +0.0077245472837, \n    +0.0084122736419, +0.0069323943662, +0.0049490945674, +0.0029535211268, \n    +0.0023334004024, +0.0027201207243, +0.0037947686117, +0.0061342052314, \n    +0.0077307847082, +0.0083569416499, +0.0071472837022, +0.0042553319920, \n    +0.0030639839034, +0.0009517102616, -0.0014736418511, +0.0005772635815, \n    +0.0030026156942, +0.0045684104628, +0.0062078470825, +0.0054342052314, \n    +0.0036720321932, +0.0021921529175, +0.0009334004024, +0.0012955734406, \n    +0.0015657947686, +0.0015350100604, +0.0019464788732, +0.0019527162978, \n    +0.0030517102616, +0.0063307847082, +0.0081788732394, +0.0074665995976, \n    +0.0066315895372, +0.0048692152918, +0.0015227364185, -0.0014676056338, \n    -0.0026281690141, -0.0018851106640, -0.0005832997988, -0.0000490945674, \n    -0.0005587525151, -0.0016334004024, -0.0020018108652, -0.0002148893360, \n    +0.0017438631791, +0.0023271629779, +0.0031623742455, +0.0037394366197, \n    +0.0021859154930, +0.0010869215292, +0.0014430583501, +0.0014490945674, \n    +0.0016394366197, +0.0018665995976, +0.0019342052314, +0.0028062374245, \n    +0.0042859154930, +0.0048569416499, +0.0037334004024, +0.0014185110664, \n    -0.0001472837022, -0.0005464788732, -0.0001472837022, +0.0011237424547, \n    +0.0017869215292, +0.0003991951710, -0.0015289738431, -0.0028490945674, \n    -0.0028736418511, -0.0017070422535, +0.0000000000000, +0.0014859154930, \n    +0.0020201207243, +0.0022350100604, +0.0027692152918, +0.0022657947686, \n    +0.0002824949698, -0.0016579476861, -0.0028000000000, -0.0032297786720, \n    -0.0022843058350, +0.0002702213280, +0.0010070422535, -0.0001412474849, \n    -0.0006754527163, -0.0014553319920, -0.0036720321932, -0.0038991951710, \n    -0.0029720321932, -0.0022843058350, -0.0009271629779, -0.0005832997988, \n    -0.0004973843058, -0.0006140845070, -0.0014981891348, -0.0016885311871, \n    -0.0011728370221, -0.0006386317907, +0.0007122736419, +0.0007185110664, \n    -0.0000736418511, -0.0011114688129, -0.0025543259557, -0.0032543259557, \n    -0.0035000000000, -0.0024253521127, -0.0001350100604, +0.0010561368209, \n    +0.0016148893360, +0.0013263581489, -0.0004543259557, -0.0007859154930, \n    -0.0009394366197, -0.0018175050302, -0.0017130784708, -0.0010070422535, \n    -0.0000981891348, +0.0009088531187, +0.0012772635815, +0.0012219315895, \n    +0.0004175050302, +0.0006018108652, +0.0008780684105, -0.0005034205231, \n    -0.0011114688129, -0.0010684104628, -0.0014185110664, -0.0019404426559, \n    -0.0031070422535, -0.0031376257545, -0.0022903420523, -0.0016271629779, \n    +0.0001167002012, +0.0011851106640, -0.0000122736419, -0.0012710261569, \n    -0.0020509054326, -0.0026649899396, -0.0027692152918, -0.0026342052314, \n    -0.0021859154930, -0.0011728370221, -0.0000245472837, +0.0007676056338, \n    +0.0011237424547, +0.0009088531187, +0.0009456740443, +0.0008535211268, \n    -0.0006078470825, -0.0017315895372, -0.0017929577465, -0.0023885311871, \n    -0.0025420523139, -0.0017070422535, -0.0001227364185, +0.0012404426559, \n    +0.0015044265594, +0.0025605633803, +0.0035613682093, +0.0033156941650, \n    +0.0027509054326, +0.0015289738431, +0.0003623742455, -0.0005342052314, \n    -0.0012955734406, -0.0007921529175, -0.0001843058350, +0.0002271629779, \n    +0.0008718309859, +0.0018175050302, +0.0029289738431, +0.0029412474849, \n    +0.0022720321932, +0.0009394366197, -0.0008289738431, -0.0008104627767, \n    -0.0005464788732, -0.0003315895372, +0.0005649899396, +0.0005219315895, \n    -0.0000368209256, -0.0004237424547, -0.0005464788732, -0.0001289738431, \n    -0.0003315895372, -0.0004297786720, +0.0007553319920, +0.0015044265594, \n    +0.0023211267606, +0.0032114688129, +0.0035307847082, +0.0033772635815, \n    +0.0020386317907, +0.0003929577465, -0.0003746478873, -0.0005895372233, \n    -0.0003806841046, -0.0002026156942, -0.0002702213280, +0.0001780684105, \n    +0.0004482897384, -0.0002639839034, -0.0009824949698, -0.0013446680080, \n    -0.0014921529175, -0.0011114688129, -0.0004052313883, +0.0001412474849, \n    +0.0004788732394, +0.0004605633803, +0.0008472837022, +0.0015903420523, \n    +0.0019587525151, +0.0022472837022, +0.0030026156942, +0.0033281690141, \n    +0.0028798792757, +0.0024253521127, +0.0014000000000, +0.0004851106640, \n    +0.0005895372233, +0.0008044265594, +0.0012464788732, +0.0017070422535, \n    +0.0019464788732, +0.0023702213280, +0.0017684104628, +0.0006631790744, \n    +0.0002088531187, -0.0005464788732, -0.0005527162978, -0.0001595573441, \n    -0.0003746478873, -0.0000613682093, -0.0004911468813, -0.0009026156942, \n    -0.0002579476861, -0.0002271629779, +0.0000245472837, +0.0005527162978, \n    +0.0007122736419, +0.0009088531187, +0.0007490945674, +0.0014613682093, \n    +0.0026772635815, +0.0029044265594, +0.0026464788732, +0.0014798792757, \n    +0.0000613682093, -0.0004237424547, -0.0004543259557, +0.0000000000000, \n    +0.0004911468813, +0.0004851106640, +0.0005156941650, +0.0007981891348, \n    +0.0010438631791, +0.0008227364185, +0.0008657947686, +0.0010193158954, \n    +0.0007736418511, +0.0004788732394, -0.0001044265594, -0.0004665995976, \n    -0.0009947686117, -0.0017684104628, -0.0022044265594, -0.0026096579477, \n    -0.0020323943662, -0.0005034205231, +0.0007798792757, +0.0022720321932, \n    +0.0033281690141, +0.0037211267606, +0.0033832997988, +0.0021307847082, \n    +0.0012832997988, +0.0005281690141, -0.0002148893360, -0.0005772635815, \n    -0.0009088531187, -0.0009211267606, -0.0008965794769, -0.0011237424547, \n    -0.0007798792757, -0.0003070422535, -0.0000981891348, -0.0001780684105, \n    +0.0001350100604, +0.0004360160966, -0.0005404426559, -0.0013569416499, \n    -0.0016394366197, -0.0014553319920, -0.0008657947686, -0.0007859154930, \n    -0.0009517102616, -0.0013018108652, -0.0023148893360, -0.0028490945674, \n    -0.0027140845070, -0.0019281690141, -0.0002639839034, +0.0013877263581, \n    +0.0024806841046, +0.0026587525151, +0.0019096579477, +0.0006263581489, \n    -0.0006877263581, -0.0015843058350, -0.0021981891348, -0.0025788732394, \n    -0.0026464788732, -0.0023088531187, -0.0014981891348, -0.0010130784708, \n    -0.0003561368209, +0.0002947686117, +0.0000553319920, -0.0000430583501, \n    -0.0002148893360, -0.0007307847082, -0.0009456740443, -0.0010315895372, \n    -0.0011420523139, -0.0013569416499, -0.0019955734406, -0.0021921529175, \n    -0.0018728370221, -0.0015412474849, -0.0005649899396, +0.0002334004024, \n    +0.0001044265594, -0.0001104627767, -0.0000245472837, +0.0002026156942, \n    +0.0009762575453, +0.0013877263581, +0.0014000000000, +0.0012710261569, \n    +0.0004297786720, -0.0002088531187, -0.0003991951710, -0.0007185110664, \n    -0.0005404426559, -0.0007798792757, -0.0013937625755, -0.0012772635815, \n    -0.0014245472837, -0.0014245472837, -0.0008104627767, -0.0007245472837, \n    -0.0005219315895, -0.0002211267606, +0.0001780684105, +0.0006754527163, \n    +0.0000859154930, -0.0005587525151, -0.0009762575453, -0.0018728370221, \n    -0.0021430583501, -0.0011360160966, -0.0002456740443, -0.0000613682093, \n    +0.0000921529175, +0.0003561368209, +0.0000798792757, -0.0003070422535, \n    -0.0008350100604, -0.0015412474849, -0.0016394366197, -0.0009947686117, \n    -0.0004114688129, -0.0003869215292, -0.0009639839034, -0.0014307847082, \n    -0.0014553319920, -0.0014368209256, -0.0009334004024, -0.0003008048290, \n    -0.0004360160966, -0.0007122736419, -0.0009517102616, -0.0014921529175, \n    -0.0017561368209, -0.0017070422535, -0.0014981891348, -0.0008780684105, \n    -0.0006263581489, -0.0009762575453, -0.0012281690141, -0.0014430583501, \n    -0.0016271629779, -0.0016271629779, -0.0016148893360, -0.0015657947686, \n    -0.0014000000000, -0.0011973843058, -0.0008843058350, -0.0004360160966, \n    -0.0001657947686, -0.0000245472837, +0.0001104627767, +0.0000000000000, \n    -0.0002211267606, -0.0003561368209, -0.0002394366197, -0.0002026156942, \n    -0.0004973843058, -0.0008412474849, -0.0011482897384, -0.0013263581489, \n    -0.0013323943662, -0.0011175050302, -0.0005034205231, -0.0003070422535, \n    -0.0006078470825, -0.0009639839034, -0.0013140845070, -0.0011360160966, \n    -0.0009579476861, -0.0004114688129, +0.0003991951710, -0.0001227364185, \n    -0.0010253521127, -0.0013018108652, -0.0014122736419, -0.0013569416499, \n    -0.0013814889336, -0.0012034205231, -0.0009148893360, -0.0010869215292, \n    -0.0010746478873, -0.0005587525151, -0.0003869215292, -0.0003253521127, \n    -0.0000430583501, -0.0000798792757, -0.0003623742455, -0.0006078470825, \n    -0.0008657947686, -0.0006018108652, -0.0002639839034, -0.0003315895372, \n    -0.0003315895372, -0.0007062374245, -0.0009334004024, -0.0006201207243, \n    -0.0007122736419, -0.0009762575453, -0.0010623742455, -0.0013754527163, \n    -0.0015535211268, -0.0013569416499, -0.0006877263581, +0.0000676056338, \n    +0.0001903420523, +0.0000122736419, -0.0001965794769, -0.0004114688129, \n    -0.0005772635815, -0.0005649899396, -0.0004420523139, -0.0002026156942, \n    +0.0001104627767, +0.0002211267606, +0.0001044265594, +0.0001289738431, \n    +0.0002271629779, +0.0002762575453, +0.0000798792757, -0.0001965794769, \n    -0.0004911468813, -0.0009517102616, -0.0009639839034, -0.0004665995976, \n    +0.0001903420523, +0.0005219315895, +0.0002579476861, -0.0001535211268, \n    -0.0001289738431, +0.0000553319920, +0.0000490945674, +0.0000430583501, \n    -0.0000981891348, -0.0003070422535, -0.0002148893360, +0.0000245472837, \n    +0.0004911468813, +0.0009394366197, +0.0008227364185, +0.0005955734406, \n    +0.0004237424547, +0.0003561368209, +0.0004788732394, +0.0004482897384, \n    +0.0002702213280, +0.0001903420523, +0.0000676056338, +0.0000553319920, \n    +0.0000430583501, -0.0002148893360, -0.0005034205231, -0.0008657947686, \n    -0.0010253521127, -0.0008167002012, -0.0004237424547, +0.0000368209256, \n    +0.0004605633803, +0.0007185110664, +0.0006754527163, +0.0004728370221, \n    +0.0005527162978, +0.0008472837022, +0.0008780684105, +0.0005527162978, \n    +0.0000676056338, -0.0001657947686, +0.0000122736419, +0.0003991951710, \n    +0.0007368209256, +0.0010130784708, +0.0011052313883, +0.0008843058350, \n    +0.0007245472837, +0.0007368209256, +0.0009824949698, +0.0009579476861, \n    +0.0006201207243, +0.0001412474849, -0.0004237424547, -0.0007185110664, \n    -0.0003991951710, +0.0004543259557, +0.0012281690141, +0.0012219315895, \n    +0.0007430583501, +0.0002456740443, -0.0003376257545, -0.0004973843058, \n    -0.0001903420523, +0.0000430583501, +0.0001718309859, +0.0000245472837, \n    -0.0003253521127, -0.0004911468813, -0.0003501006036, -0.0000981891348, \n    +0.0000798792757, -0.0000185110664, -0.0003253521127, -0.0004543259557, \n    -0.0004482897384, -0.0001843058350, +0.0004297786720, +0.0008657947686, \n    +0.0008412474849, +0.0006509054326, +0.0003438631791, +0.0001595573441, \n    -0.0000490945674, -0.0003130784708, -0.0002702213280, -0.0001718309859, \n    -0.0005832997988, -0.0009885311871, -0.0009639839034, -0.0007798792757, \n    -0.0002639839034, +0.0002947686117, +0.0003684104628, +0.0003193158954, \n    +0.0000859154930, -0.0003929577465, -0.0005342052314, -0.0003561368209, \n    -0.0002702213280, -0.0001843058350, -0.0002702213280, -0.0005527162978, \n    -0.0005096579477, -0.0002579476861, -0.0000245472837, +0.0002517102616, \n    +0.0001780684105, -0.0001044265594, -0.0001412474849, -0.0004237424547, \n    -0.0005219315895, -0.0003070422535, -0.0003561368209, -0.0002211267606, \n    +0.0000981891348, +0.0002088531187, +0.0002334004024, -0.0000921529175, \n    -0.0004851106640, -0.0008104627767, -0.0013631790744, -0.0011851106640, \n    -0.0006877263581, -0.0004420523139, +0.0000368209256, +0.0001289738431, \n    -0.0001044265594, -0.0001535211268, -0.0003376257545, -0.0003008048290, \n    -0.0002026156942, -0.0003130784708, -0.0002702213280, -0.0005034205231, \n    -0.0007613682093, -0.0008595573441, -0.0011728370221, -0.0011360160966, \n    -0.0006386317907, -0.0000185110664, +0.0005772635815, +0.0008227364185, \n    +0.0009088531187, +0.0004973843058, -0.0000736418511, -0.0004420523139, \n    -0.0010991951710, -0.0011360160966, -0.0004973843058, +0.0001104627767, \n    +0.0002639839034, +0.0001903420523, +0.0004297786720, -0.0001718309859, \n    -0.0006386317907, -0.0003315895372, -0.0002639839034, +0.0004175050302, \n    +0.0008167002012, +0.0006018108652, +0.0006323943662, -0.0003130784708, \n    -0.0012156941650, -0.0012710261569, -0.0018605633803, -0.0011851106640, \n    -0.0002394366197, +0.0000122736419, +0.0008718309859, +0.0008167002012, \n    -0.0003746478873, -0.0008104627767, -0.0008227364185, -0.0005219315895, \n    +0.0000921529175, +0.0004175050302, +0.0007490945674, +0.0009271629779, \n    +0.0009271629779, +0.0009885311871, +0.0008535211268, +0.0004420523139, \n    +0.0001535211268, -0.0002702213280, -0.0003684104628, -0.0001289738431, \n    -0.0001718309859, +0.0000613682093, +0.0003991951710, +0.0006201207243, \n    +0.0008227364185, +0.0009088531187, +0.0008780684105, +0.0009947686117, \n    +0.0008965794769, +0.0006814889336, +0.0007062374245, +0.0006386317907, \n    +0.0008044265594, +0.0008903420523, +0.0008167002012, +0.0006877263581, \n    +0.0006386317907, +0.0006814889336, +0.0007185110664, +0.0006446680080, \n    +0.0006692152918, +0.0010070422535, +0.0013692152918, +0.0015472837022, \n    +0.0014000000000, +0.0010561368209, +0.0007921529175, +0.0006386317907, \n    +0.0003253521127, -0.0000613682093, -0.0002824949698, -0.0003376257545, \n    +0.0000000000000, +0.0005404426559, +0.0007676056338, +0.0008903420523, \n    +0.0012281690141, +0.0014122736419, +0.0012464788732, +0.0010193158954, \n    +0.0007490945674, +0.0002702213280, +0.0000062374245, -0.0001167002012, \n    +0.0000122736419, +0.0005772635815, +0.0010070422535, +0.0014553319920, \n    +0.0015412474849, +0.0012096579477, +0.0010070422535, +0.0007921529175, \n    +0.0008104627767, +0.0012772635815, +0.0016211267606, +0.0017929577465, \n    +0.0015903420523, +0.0010684104628, +0.0007676056338, +0.0004911468813, \n    +0.0003869215292, +0.0006446680080, +0.0007981891348, +0.0009088531187, \n    +0.0011114688129, +0.0010929577465, +0.0007307847082, +0.0004605633803, \n    +0.0003869215292, +0.0003623742455, +0.0006018108652, +0.0008780684105, \n    +0.0010746478873, +0.0012404426559, +0.0013078470825, +0.0012895372233, \n    +0.0010315895372, +0.0006201207243, +0.0001780684105, -0.0002517102616, \n    -0.0003376257545, -0.0001167002012, +0.0001965794769, +0.0005649899396, \n    +0.0006754527163, +0.0006692152918, +0.0005955734406, +0.0003869215292, \n    +0.0002947686117, +0.0002762575453, +0.0004973843058, +0.0007430583501, \n    +0.0007430583501, +0.0006569416499, +0.0002334004024, -0.0001595573441, \n    -0.0001227364185, -0.0001227364185, -0.0000981891348, +0.0000000000000, \n    +0.0000921529175, +0.0002639839034, +0.0004052313883, +0.0006140845070, \n    +0.0007676056338, +0.0007490945674, +0.0008718309859, +0.0010253521127, \n    +0.0009824949698, +0.0007185110664, +0.0003684104628, +0.0001227364185, \n    -0.0000736418511, -0.0001780684105, -0.0001227364185, -0.0000798792757, \n    +0.0000798792757, +0.0003623742455, +0.0004420523139, +0.0003193158954, \n    +0.0004973843058, +0.0006263581489, +0.0005281690141, +0.0007122736419, \n    +0.0007736418511, +0.0007368209256, +0.0008843058350, +0.0008167002012, \n    +0.0005219315895, +0.0001412474849, -0.0002947686117, -0.0003746478873, \n    -0.0004788732394, -0.0003991951710, +0.0000921529175, +0.0002824949698, \n    +0.0003929577465, +0.0005832997988, +0.0005527162978, +0.0006631790744, \n    +0.0007859154930, +0.0006631790744, +0.0006814889336, +0.0006386317907, \n    +0.0004605633803, +0.0003008048290, +0.0001780684105, +0.0002088531187, \n    +0.0003193158954, +0.0003929577465, +0.0004052313883, +0.0002762575453, \n    +0.0001843058350, +0.0001167002012, +0.0001965794769, +0.0005772635815, \n    +0.0009026156942, +0.0012034205231, +0.0012404426559, +0.0007368209256, \n    +0.0001289738431, -0.0004665995976, -0.0006754527163, -0.0004052313883, \n    -0.0000736418511, +0.0001595573441, +0.0001780684105, +0.0001289738431, \n    +0.0002088531187, +0.0003561368209, +0.0005587525151, +0.0007490945674, \n    +0.0009394366197, +0.0011911468813, +0.0011851106640, +0.0012464788732, \n    +0.0012281690141, +0.0008104627767, +0.0003130784708, -0.0002394366197, \n    -0.0007185110664, -0.0007553319920, -0.0006140845070, -0.0004665995976, \n    -0.0001718309859, +0.0000613682093, +0.0002394366197, +0.0004728370221, \n    +0.0006018108652, +0.0006263581489, +0.0006140845070, +0.0002394366197, \n    -0.0000307847082, -0.0000798792757, -0.0003130784708, -0.0002271629779, \n    +0.0000613682093, +0.0000981891348, +0.0000368209256, -0.0001965794769, \n    -0.0004052313883, -0.0003070422535, -0.0000430583501, +0.0004543259557, \n    +0.0008903420523, +0.0009639839034, +0.0010561368209, +0.0008718309859, \n    +0.0003746478873, -0.0001289738431, -0.0006323943662, -0.0009088531187, \n    -0.0010501006036, -0.0010991951710, -0.0007676056338, -0.0002271629779, \n    +0.0001903420523, +0.0004175050302, +0.0004360160966, +0.0003438631791, \n    +0.0002026156942, +0.0001167002012, +0.0000613682093, -0.0000062374245, \n    -0.0000981891348, -0.0002271629779, -0.0003438631791, -0.0003130784708, \n    -0.0003561368209, -0.0005219315895, -0.0003684104628, -0.0001412474849, \n    -0.0001227364185, -0.0001227364185, -0.0001903420523, +0.0000000000000, \n    +0.0003991951710, +0.0003991951710, +0.0003806841046, +0.0003315895372, \n    -0.0000185110664, -0.0001903420523, -0.0002148893360, -0.0002088531187, \n    -0.0000676056338, -0.0000307847082, -0.0001412474849, -0.0003070422535, \n    -0.0004605633803, -0.0003253521127, +0.0000000000000, +0.0002148893360, \n    +0.0003623742455, +0.0004665995976, +0.0003438631791, +0.0001289738431, \n    -0.0000798792757, -0.0002762575453, -0.0003376257545, -0.0003070422535, \n    -0.0002885311871, -0.0003806841046, -0.0007000000000, -0.0009148893360, \n    -0.0008412474849, -0.0007185110664, -0.0004665995976, -0.0002211267606, \n    -0.0001843058350, -0.0002148893360, -0.0001412474849, -0.0001350100604, \n    -0.0002517102616, -0.0003991951710, -0.0005527162978, -0.0005955734406, \n    -0.0006263581489, -0.0006692152918, -0.0006323943662, -0.0004973843058, \n    -0.0002579476861, -0.0000307847082, +0.0000490945674, +0.0001595573441, \n    +0.0003315895372, +0.0002947686117, +0.0001289738431, -0.0000122736419, \n    -0.0002517102616, -0.0004297786720, -0.0004482897384, -0.0004175050302, \n    -0.0002702213280, -0.0002211267606, -0.0003253521127, -0.0004114688129, \n    -0.0004665995976, -0.0005527162978, -0.0005219315895, -0.0004851106640, \n    -0.0005281690141, -0.0003746478873, -0.0000859154930, -0.0000676056338, \n    -0.0002148893360, -0.0002148893360, -0.0002762575453, -0.0004052313883, \n    -0.0002947686117, -0.0001718309859, -0.0002334004024, -0.0003193158954, \n    -0.0004052313883, -0.0006386317907, -0.0007185110664, -0.0004482897384, \n    -0.0002639839034, -0.0001535211268, -0.0000553319920, -0.0002026156942, \n    -0.0004665995976, -0.0007062374245, -0.0008167002012, -0.0007613682093, \n    -0.0009026156942, -0.0011973843058, -0.0012649899396, -0.0011360160966, \n    -0.0007981891348, -0.0003623742455, -0.0001227364185, -0.0000921529175, \n    -0.0002026156942, -0.0004297786720, -0.0005772635815, -0.0005034205231, \n    -0.0003438631791, -0.0001472837022, +0.0000000000000, -0.0000430583501, \n    -0.0001780684105, -0.0003684104628, -0.0005281690141, -0.0004728370221, \n    -0.0004420523139, -0.0005649899396, -0.0006140845070, -0.0006446680080, \n    -0.0006386317907, -0.0004851106640, -0.0003315895372, -0.0002517102616, \n    -0.0002639839034, -0.0003991951710, -0.0005034205231, -0.0005342052314, \n    -0.0004973843058, -0.0004175050302, -0.0003070422535, -0.0000736418511, \n    +0.0000307847082, -0.0001412474849, -0.0003008048290, -0.0004114688129, \n    -0.0004605633803, -0.0002885311871, -0.0001227364185, -0.0000676056338, \n    -0.0001412474849, -0.0004543259557, -0.0006754527163, -0.0007307847082, \n    -0.0008227364185, -0.0007859154930, -0.0006754527163, -0.0005156941650, \n    -0.0003193158954, -0.0002456740443, -0.0002456740443, -0.0003070422535, \n    -0.0004788732394, -0.0005955734406, -0.0005464788732, -0.0004665995976, \n    -0.0003253521127, -0.0001843058350, -0.0002271629779, -0.0003315895372, \n    -0.0004788732394, -0.0006754527163, -0.0007122736419, -0.0004973843058, \n    -0.0003193158954, -0.0003130784708, -0.0003684104628, -0.0003991951710, \n    -0.0002148893360, +0.0000676056338, +0.0002579476861, +0.0003623742455, \n    +0.0002456740443, -0.0000430583501, -0.0002824949698, -0.0005281690141, \n    -0.0007613682093, -0.0008350100604, -0.0007185110664, -0.0003561368209, \n    +0.0000736418511, +0.0002334004024, +0.0001044265594, -0.0001350100604, \n    -0.0003193158954, -0.0003193158954, -0.0002394366197, -0.0001289738431, \n    -0.0000307847082, +0.0000000000000, +0.0000430583501, +0.0000798792757, \n    -0.0000307847082, -0.0001472837022, -0.0001535211268, -0.0000859154930, \n    -0.0000185110664, -0.0000062374245, +0.0000000000000, -0.0000245472837, \n    -0.0000185110664, +0.0000553319920, +0.0001044265594, +0.0001350100604, \n    +0.0001843058350, +0.0000368209256, -0.0003806841046, -0.0007921529175, \n    -0.0009334004024, -0.0009211267606, -0.0007062374245, -0.0002148893360, \n    +0.0002026156942, +0.0002517102616, +0.0000981891348, +0.0000062374245, \n    -0.0000553319920, +0.0000122736419, +0.0003008048290, +0.0005342052314, \n    +0.0005342052314, +0.0003130784708, -0.0000122736419, -0.0003561368209, \n    -0.0006754527163, -0.0007798792757, -0.0006078470825, -0.0003130784708, \n    -0.0000921529175, -0.0000676056338, -0.0001104627767, -0.0001535211268, \n    -0.0001535211268, -0.0000185110664, +0.0000490945674, -0.0000307847082, \n    -0.0001044265594, -0.0001535211268, -0.0001965794769, -0.0002271629779, \n    -0.0002148893360, -0.0001843058350, -0.0002026156942, -0.0003008048290, \n    -0.0004360160966, -0.0005219315895, -0.0004911468813, -0.0003684104628, \n    -0.0002334004024, -0.0001350100604, -0.0001167002012, -0.0001843058350, \n    -0.0001780684105, -0.0000553319920, -0.0000062374245, -0.0001227364185, \n    -0.0003008048290, -0.0003008048290, -0.0001412474849, -0.0000185110664, \n    +0.0000859154930, +0.0001044265594, -0.0000245472837, -0.0001535211268, \n    -0.0003008048290, -0.0003746478873, -0.0002824949698, -0.0002026156942, \n    -0.0001657947686, -0.0001535211268, -0.0001227364185, +0.0000307847082, \n    +0.0001227364185, +0.0001227364185, +0.0001350100604, +0.0001044265594, \n    +0.0000185110664, -0.0000676056338, -0.0000368209256, +0.0000921529175, \n    +0.0000553319920, -0.0000676056338, -0.0001412474849, -0.0001227364185, \n    +0.0000430583501, +0.0001350100604, +0.0001289738431, +0.0001104627767, \n    -0.0000736418511, -0.0003315895372, -0.0003929577465, -0.0003746478873, \n    -0.0002148893360, +0.0000676056338, +0.0002271629779, +0.0004052313883, \n    +0.0004911468813, +0.0002762575453, -0.0000185110664, -0.0002824949698, \n    -0.0004237424547, -0.0002947686117, -0.0003070422535, -0.0003253521127, \n    -0.0001412474849, -0.0001412474849, -0.0002088531187, -0.0002211267606, \n    -0.0001535211268, -0.0000307847082, -0.0001104627767, -0.0002947686117, \n    -0.0003501006036, -0.0004052313883, -0.0001535211268, +0.0002639839034, \n    +0.0004728370221, +0.0005096579477, +0.0002824949698, +0.0000185110664, \n    +0.0000307847082, +0.0000798792757, +0.0002148893360, +0.0003929577465, \n    +0.0001843058350, +0.0000062374245, +0.0001104627767, +0.0001289738431, \n    +0.0001289738431, +0.0002271629779, +0.0001657947686, -0.0000553319920, \n    -0.0002885311871, -0.0003684104628, -0.0003501006036, -0.0002148893360, \n    +0.0001167002012, +0.0002517102616, +0.0000676056338, -0.0001472837022, \n    -0.0001965794769, -0.0000736418511, +0.0001412474849, +0.0002579476861, \n    +0.0002824949698, +0.0003070422535, +0.0002026156942, +0.0002334004024, \n    +0.0004360160966, +0.0005281690141, +0.0005034205231, +0.0004114688129, \n    +0.0001718309859, +0.0000736418511, -0.0000921529175, -0.0001595573441, \n    +0.0000122736419, +0.0000553319920, +0.0001843058350, +0.0005219315895, \n    +0.0007245472837, +0.0008412474849, +0.0008718309859, +0.0007307847082, \n    +0.0005895372233, +0.0002885311871, -0.0000430583501, -0.0001718309859, \n    -0.0001535211268, -0.0000490945674, +0.0001104627767, +0.0003315895372, \n    +0.0004420523139, +0.0004360160966, +0.0005404426559, +0.0005710261569, \n    +0.0004420523139, +0.0004482897384, +0.0004911468813, +0.0003929577465, \n    +0.0003193158954, +0.0003008048290, +0.0002211267606, +0.0000490945674, \n    -0.0000736418511, -0.0000122736419, +0.0000122736419, -0.0000062374245, \n    +0.0000798792757, +0.0001289738431, +0.0000798792757, +0.0000676056338, \n    +0.0000490945674, +0.0000245472837, +0.0000307847082, +0.0000122736419, \n    +0.0001044265594, +0.0001718309859, +0.0001350100604, +0.0001350100604, \n    +0.0001167002012, +0.0000981891348, +0.0001289738431, +0.0001167002012, \n    +0.0001472837022, +0.0001843058350, +0.0000981891348, +0.0001535211268, \n    +0.0003193158954, +0.0004482897384, +0.0006569416499, +0.0008903420523, \n    +0.0008412474849, +0.0005034205231, +0.0001104627767, -0.0002088531187, \n    -0.0003193158954, -0.0002148893360, -0.0000307847082, +0.0000981891348, \n    +0.0001780684105, +0.0002334004024, +0.0003438631791, +0.0004482897384, \n    +0.0005527162978, +0.0006446680080, +0.0006201207243, +0.0004360160966, \n    +0.0001903420523, +0.0001227364185, +0.0001843058350, +0.0002456740443, \n    +0.0003623742455, +0.0003991951710, +0.0003561368209, +0.0004114688129, \n    +0.0004851106640, +0.0004543259557, +0.0003193158954, +0.0002885311871, \n    +0.0003130784708, +0.0002211267606, +0.0002271629779, +0.0004052313883, \n    +0.0005649899396, +0.0006078470825, +0.0005034205231, +0.0003253521127, \n    +0.0001350100604, -0.0000430583501, -0.0000613682093, +0.0000185110664, \n    +0.0000307847082, +0.0000798792757, +0.0002026156942, +0.0003315895372, \n    +0.0004360160966, +0.0005342052314, +0.0004788732394, +0.0004052313883, \n    +0.0002885311871, +0.0000613682093, +0.0000245472837, +0.0001044265594, \n    +0.0001044265594, +0.0002026156942, +0.0002456740443, +0.0002762575453, \n    +0.0005156941650, +0.0005832997988, +0.0005281690141, +0.0004728370221, \n    +0.0003684104628, +0.0003008048290, +0.0002885311871, +0.0002885311871, \n    +0.0003501006036, +0.0003376257545, +0.0001044265594, -0.0001167002012, \n    -0.0001903420523, -0.0001595573441, -0.0000307847082, +0.0002517102616, \n    +0.0004420523139, +0.0004543259557, +0.0003501006036, +0.0001104627767, \n    -0.0000553319920, -0.0001780684105, -0.0001350100604, +0.0000859154930, \n    +0.0002762575453, +0.0003193158954, +0.0002824949698, +0.0001535211268, \n    +0.0000676056338, -0.0000122736419, -0.0000981891348, -0.0000430583501, \n    +0.0000368209256, +0.0001104627767, +0.0001350100604, +0.0001044265594, \n    -0.0000553319920, -0.0002211267606, -0.0002026156942, -0.0001167002012, \n    -0.0000062374245, +0.0000921529175, +0.0001595573441, +0.0002334004024, \n    +0.0003008048290, +0.0003315895372, +0.0003008048290, +0.0001595573441, \n    +0.0000613682093, -0.0000122736419, -0.0001167002012, -0.0000798792757, \n    -0.0000307847082, +0.0000062374245, +0.0000921529175, +0.0000859154930, \n    +0.0000921529175, +0.0001965794769, +0.0003008048290, +0.0005034205231, \n    +0.0006631790744, +0.0006018108652, +0.0004297786720, +0.0002271629779, \n    +0.0001412474849, +0.0001718309859, +0.0001350100604, +0.0001104627767, \n    +0.0001903420523, +0.0001472837022, +0.0000490945674, -0.0000122736419, \n    +0.0000000000000, +0.0000062374245, -0.0000553319920, -0.0000736418511, \n    -0.0000676056338, -0.0000613682093, -0.0000613682093, -0.0001227364185, \n    -0.0001044265594, +0.0000122736419, +0.0002088531187, +0.0003623742455, \n    +0.0003623742455, +0.0003623742455, +0.0003438631791, +0.0001595573441, \n    +0.0000490945674, +0.0001044265594, +0.0002271629779, +0.0003376257545, \n    +0.0003253521127, +0.0002579476861, +0.0001104627767, -0.0000613682093, \n    -0.0001104627767, -0.0001167002012, -0.0001595573441, -0.0002517102616, \n    -0.0004052313883, -0.0004420523139, -0.0003684104628, -0.0002702213280, \n    -0.0000245472837, +0.0001595573441, +0.0001718309859, +0.0002271629779, \n    +0.0002947686117, +0.0002885311871, +0.0002271629779, +0.0001595573441, \n    +0.0001289738431, +0.0000000000000, -0.0001350100604, -0.0001412474849, \n    -0.0001472837022, -0.0001044265594, +0.0000000000000, +0.0000490945674, \n    +0.0000553319920, +0.0001350100604, +0.0002211267606, +0.0002334004024, \n    +0.0001350100604, -0.0000798792757, -0.0003746478873, -0.0006754527163, \n    -0.0008289738431, -0.0006323943662, -0.0002148893360, +0.0001289738431, \n    +0.0003253521127, +0.0003376257545, +0.0002334004024, +0.0000981891348, \n    -0.0000307847082, -0.0000553319920, -0.0000736418511, -0.0001227364185, \n    -0.0000430583501, +0.0000430583501, +0.0000430583501, +0.0000122736419, \n    -0.0001167002012, -0.0002824949698, -0.0003929577465, -0.0003806841046, \n    -0.0001843058350, +0.0000185110664, +0.0001535211268, +0.0001289738431, \n    -0.0001104627767, -0.0003438631791, -0.0003869215292, -0.0003193158954, \n    -0.0001104627767, +0.0000122736419, -0.0000859154930, -0.0002762575453, \n    -0.0004297786720, -0.0004728370221, -0.0005096579477, -0.0004728370221, \n    -0.0002639839034, -0.0000859154930, -0.0000122736419, +0.0000676056338, \n    +0.0000368209256, -0.0000981891348, -0.0001843058350, -0.0002579476861, \n    -0.0003501006036, -0.0004175050302, -0.0003869215292, -0.0002885311871, \n    -0.0002088531187, -0.0001657947686, -0.0001718309859, -0.0002517102616, \n    -0.0003070422535, -0.0002639839034, -0.0001595573441, -0.0001044265594, \n    -0.0000921529175, -0.0001780684105, -0.0003929577465, -0.0004911468813, \n    -0.0004175050302, -0.0003315895372, -0.0001965794769, -0.0000921529175, \n    -0.0000613682093, -0.0000490945674, -0.0001227364185, -0.0001350100604, \n    -0.0001104627767, -0.0001289738431, +0.0000307847082, +0.0002088531187, \n    +0.0002148893360, +0.0001965794769, +0.0001104627767, -0.0000062374245, \n    -0.0001350100604, -0.0003684104628, -0.0005156941650, -0.0006078470825, \n    -0.0006937625755, -0.0005587525151, -0.0003193158954, -0.0001472837022, \n    +0.0000613682093, +0.0002088531187, +0.0002394366197, +0.0003130784708, \n    +0.0002947686117, +0.0001780684105, +0.0000921529175, -0.0000553319920, \n    -0.0002702213280, -0.0004237424547, -0.0004973843058, -0.0004237424547, \n    -0.0002639839034, -0.0001412474849, +0.0000245472837, +0.0001718309859, \n    +0.0002088531187, +0.0002271629779, +0.0002334004024, +0.0001965794769, \n    +0.0000981891348, -0.0000368209256, -0.0001595573441, -0.0002885311871, \n    -0.0003623742455, -0.0002579476861, -0.0001350100604, -0.0000736418511, \n    -0.0000430583501, -0.0000859154930, -0.0001289738431, -0.0001167002012, \n    -0.0000921529175, -0.0000798792757, -0.0000921529175, -0.0000736418511, \n    -0.0000736418511, +0.0000000000000, +0.0001289738431, +0.0001595573441, \n    +0.0001780684105, +0.0001535211268, +0.0000490945674, +0.0000490945674, \n    +0.0001167002012, +0.0001167002012, -0.0000062374245, -0.0001412474849, \n    -0.0001780684105, -0.0001718309859, -0.0000736418511, +0.0000000000000, \n    -0.0000245472837, -0.0000185110664, -0.0001657947686, -0.0003806841046, \n    -0.0004297786720, -0.0002947686117, -0.0000368209256, +0.0001718309859, \n    +0.0002088531187, +0.0001595573441, +0.0000368209256, -0.0000185110664, \n    -0.0000490945674, -0.0001780684105, -0.0001843058350, -0.0000859154930, \n    -0.0001227364185, -0.0000676056338, +0.0001472837022, +0.0002947686117, \n    +0.0003315895372, +0.0002456740443, +0.0000981891348, -0.0000921529175, \n    -0.0003253521127, -0.0003869215292, -0.0003315895372, -0.0002456740443, \n    -0.0000736418511, -0.0000122736419, +0.0000185110664, +0.0001044265594, \n    +0.0000859154930, +0.0000981891348, +0.0000921529175, -0.0000613682093, \n    -0.0002088531187, -0.0002824949698, -0.0003130784708, -0.0002702213280, \n    -0.0002148893360, -0.0002148893360, -0.0002088531187, -0.0001903420523, \n    -0.0001167002012, -0.0000062374245, -0.0000062374245, -0.0000490945674, \n    -0.0000307847082, +0.0000000000000, +0.0000981891348, +0.0001718309859, \n    +0.0001104627767, +0.0000430583501, -0.0000613682093, -0.0002211267606, \n    -0.0003070422535, -0.0003315895372, -0.0002824949698, -0.0001227364185, \n    -0.0000185110664, -0.0000062374245, -0.0000921529175, -0.0002148893360, \n    -0.0002762575453, -0.0003376257545, -0.0003253521127, -0.0001843058350, \n    -0.0000859154930, -0.0000245472837, +0.0000307847082, +0.0000245472837, \n    +0.0000307847082, -0.0000122736419, -0.0000430583501, +0.0000185110664, \n    +0.0000368209256, +0.0000921529175, +0.0001535211268, +0.0000981891348, \n    +0.0000553319920, +0.0000245472837, -0.0000307847082, -0.0000185110664, \n    -0.0000430583501, -0.0001167002012, -0.0001350100604, -0.0001595573441, \n    -0.0002088531187, -0.0002211267606, -0.0002211267606, -0.0001780684105, \n    -0.0001535211268, -0.0001412474849, -0.0001289738431, -0.0001227364185, \n    -0.0001167002012, +0.0000062374245, +0.0002088531187, +0.0002579476861, \n    +0.0001965794769, +0.0000062374245, -0.0002394366197, -0.0003929577465, \n    -0.0004728370221, -0.0003869215292, -0.0001535211268, +0.0000430583501, \n    +0.0002026156942, +0.0001903420523, -0.0000062374245, -0.0001227364185, \n    -0.0002885311871, -0.0004605633803, -0.0004665995976, -0.0004360160966, \n    -0.0003623742455, -0.0002211267606, -0.0001167002012, -0.0000245472837, \n    +0.0000245472837, +0.0000368209256, +0.0000553319920, +0.0000430583501, \n    +0.0000368209256, +0.0000859154930, +0.0001535211268, +0.0001472837022, \n    +0.0000245472837, -0.0001104627767, -0.0002334004024, -0.0003376257545, \n    -0.0003929577465, -0.0004360160966, -0.0004728370221, -0.0003929577465, \n    -0.0001965794769, -0.0000245472837, +0.0000921529175, +0.0002026156942, \n    +0.0002456740443, +0.0001657947686, +0.0000859154930, -0.0000490945674, \n    -0.0001350100604, -0.0000798792757, +0.0000000000000, +0.0000368209256, \n    -0.0000062374245, -0.0000921529175, -0.0001227364185, -0.0001167002012, \n    -0.0000490945674, +0.0000368209256, +0.0000859154930, +0.0000859154930, \n    +0.0000122736419, -0.0001350100604, -0.0002334004024, -0.0001657947686, \n    +0.0000000000000, +0.0000736418511, +0.0001350100604, +0.0001535211268, \n    +0.0000798792757, +0.0000736418511, +0.0001595573441, +0.0002211267606, \n    +0.0001843058350, +0.0000430583501, -0.0000553319920, -0.0001044265594, \n    -0.0000859154930, +0.0000368209256, +0.0001657947686, +0.0002517102616, \n    +0.0002579476861, +0.0001535211268, +0.0000307847082, -0.0000798792757, \n    -0.0001289738431, -0.0000736418511, -0.0000185110664, +0.0000122736419, \n    +0.0000859154930, +0.0001167002012, +0.0001167002012, +0.0001965794769, \n    +0.0003130784708, +0.0004665995976, +0.0005096579477, +0.0003991951710, \n    +0.0002456740443, +0.0000859154930, +0.0000122736419, +0.0000553319920, \n    +0.0000676056338, +0.0001167002012, +0.0002088531187, +0.0002517102616, \n    +0.0002211267606, +0.0001350100604, +0.0001289738431, +0.0002271629779, \n    +0.0003623742455, +0.0004420523139, +0.0003438631791, +0.0002088531187, \n    +0.0001843058350, +0.0001965794769, +0.0002211267606, +0.0002026156942, \n    +0.0000981891348, +0.0000613682093, +0.0000736418511, +0.0000307847082, \n    -0.0000368209256, -0.0000613682093, +0.0000736418511, +0.0002947686117, \n    +0.0003376257545, +0.0002148893360, +0.0000553319920, -0.0000613682093, \n    -0.0001104627767, -0.0001780684105, -0.0002394366197, -0.0001595573441, \n    -0.0000245472837, +0.0001104627767, +0.0002271629779, +0.0002271629779, \n    +0.0002271629779, +0.0002456740443, +0.0001718309859, +0.0000490945674, \n    -0.0000185110664, -0.0000307847082, +0.0000000000000, +0.0000921529175, \n    +0.0002271629779, +0.0003561368209, +0.0004788732394, +0.0004851106640, \n    +0.0002579476861, -0.0000981891348, -0.0003561368209, -0.0003806841046, \n    -0.0002456740443, -0.0000245472837, +0.0002148893360, +0.0003253521127, \n    +0.0002947686117, +0.0002334004024, +0.0002026156942, +0.0001718309859, \n    +0.0001227364185, +0.0000553319920, -0.0000430583501, -0.0001412474849, \n    -0.0001595573441, -0.0001227364185, -0.0000185110664, +0.0001167002012, \n    +0.0002211267606, +0.0002271629779, +0.0001044265594, -0.0000368209256, \n    -0.0001535211268, -0.0002639839034, -0.0002824949698, -0.0001780684105, \n    -0.0000676056338, -0.0000430583501, -0.0001044265594, -0.0001044265594, \n    -0.0000185110664, +0.0000736418511, +0.0001412474849, +0.0001780684105, \n    +0.0001227364185, -0.0000185110664, -0.0001843058350, -0.0003253521127, \n    -0.0004297786720, -0.0003684104628, -0.0002026156942, -0.0000921529175, \n    -0.0000245472837, -0.0000245472837, -0.0001044265594, -0.0001595573441, \n    -0.0001289738431, -0.0000490945674, +0.0000307847082, +0.0000921529175, \n    +0.0001289738431, +0.0001167002012, +0.0000062374245, -0.0000553319920, \n    -0.0000185110664, +0.0000122736419, +0.0000307847082, +0.0001044265594, \n    +0.0000981891348, +0.0000430583501, +0.0000430583501, +0.0000185110664, \n    +0.0000430583501, +0.0001289738431, +0.0000736418511, -0.0000859154930, \n    -0.0002026156942, -0.0002579476861, -0.0002088531187, -0.0000553319920, \n    +0.0000307847082, +0.0000490945674, -0.0000062374245, -0.0001472837022, \n    -0.0001965794769, -0.0001289738431, -0.0000613682093, +0.0000490945674, \n    +0.0001227364185, +0.0000921529175, +0.0001167002012, +0.0001289738431, \n    +0.0000676056338, +0.0000553319920, +0.0000553319920, +0.0000307847082, \n    +0.0000000000000, +0.0000062374245, +0.0000676056338, +0.0001167002012, \n    +0.0001167002012, +0.0001289738431, +0.0001657947686, +0.0002088531187, \n    +0.0001718309859, +0.0000798792757, +0.0000613682093, +0.0000307847082, \n    +0.0000062374245, +0.0000613682093, +0.0001535211268, +0.0002211267606, \n    +0.0002271629779, +0.0002026156942, +0.0001657947686, +0.0001227364185, \n    +0.0001104627767, +0.0000859154930, +0.0000676056338, +0.0000613682093, \n    +0.0000368209256, +0.0001227364185, +0.0002334004024, +0.0002702213280, \n    +0.0003130784708, +0.0002702213280, +0.0002088531187, +0.0002026156942, \n    +0.0001780684105, +0.0002271629779, +0.0003315895372, +0.0003376257545, \n    +0.0003193158954, +0.0002456740443, +0.0001535211268, +0.0001289738431, \n    +0.0000921529175, +0.0000245472837, +0.0000062374245, +0.0000430583501, \n    +0.0000981891348, +0.0001535211268, +0.0001843058350, +0.0002148893360, \n    +0.0002211267606, +0.0001535211268, +0.0000736418511, +0.0000490945674, \n    +0.0000185110664, +0.0000185110664, +0.0000430583501, +0.0000430583501, \n    +0.0000307847082, +0.0000245472837, +0.0000368209256, +0.0001104627767, \n    +0.0002517102616, +0.0004114688129, +0.0005342052314, +0.0005649899396, \n    +0.0005096579477, +0.0003315895372, +0.0001167002012, -0.0000122736419, \n    -0.0000736418511, -0.0001167002012, -0.0001227364185, -0.0000859154930, \n    -0.0000921529175, -0.0001044265594, -0.0000553319920, +0.0000185110664, \n    +0.0001044265594, +0.0001903420523, +0.0002148893360, +0.0001780684105, \n    +0.0001104627767, +0.0000430583501, +0.0000062374245, -0.0000062374245, \n    +0.0000000000000, +0.0000245472837, -0.0000368209256, -0.0000676056338, \n    -0.0000122736419, -0.0000245472837, -0.0000368209256, -0.0000062374245, \n    -0.0000062374245, +0.0000245472837, +0.0000981891348, +0.0001595573441, \n    +0.0001843058350, +0.0001289738431, +0.0000676056338, +0.0000000000000, \n    -0.0001104627767, -0.0001595573441, -0.0001472837022, -0.0001167002012, \n    -0.0000122736419, +0.0000553319920, +0.0000430583501, -0.0000122736419, \n    -0.0000368209256, +0.0000000000000, +0.0000122736419, +0.0000000000000, \n    +0.0000245472837, +0.0000490945674, +0.0001044265594, +0.0001595573441, \n    +0.0001350100604, +0.0000307847082, -0.0000736418511, -0.0000859154930, \n    -0.0000921529175, -0.0001044265594, -0.0000490945674, -0.0000368209256, \n    -0.0000245472837, +0.0000000000000, -0.0000185110664, -0.0000859154930, \n    -0.0001472837022, -0.0001780684105, -0.0001227364185, -0.0000185110664, \n    +0.0000676056338, +0.0000798792757, -0.0000245472837, -0.0001780684105, \n    -0.0002824949698, -0.0003193158954, -0.0002947686117, -0.0002517102616, \n    -0.0002148893360, -0.0001657947686, -0.0001104627767, -0.0000245472837, \n    +0.0000613682093, +0.0001472837022, +0.0001843058350, +0.0001535211268, \n    +0.0000981891348, +0.0000307847082, -0.0000062374245, +0.0000062374245, \n    +0.0000000000000, -0.0000062374245, +0.0000000000000, -0.0000798792757, \n    -0.0001350100604, -0.0001227364185, -0.0001412474849, -0.0001657947686, \n    -0.0001657947686, -0.0001227364185, -0.0000307847082, +0.0000490945674, \n    +0.0000368209256, -0.0000122736419, -0.0000490945674, -0.0000307847082, \n    +0.0000430583501, +0.0000921529175, +0.0000613682093, +0.0000245472837, \n    +0.0000000000000, -0.0000122736419, -0.0000307847082, -0.0000676056338, \n    -0.0000553319920, +0.0000000000000, +0.0000185110664, +0.0000245472837, \n    -0.0000430583501, -0.0001412474849, -0.0001412474849, -0.0001044265594, \n    -0.0000368209256, +0.0000613682093, +0.0001227364185, +0.0001227364185, \n    +0.0000613682093, -0.0000307847082, -0.0001044265594, -0.0001535211268, \n    -0.0001289738431, -0.0000553319920, +0.0000000000000, +0.0000859154930, \n    +0.0002026156942, +0.0002702213280, +0.0002762575453, +0.0001595573441, \n    -0.0000245472837, -0.0001412474849, -0.0001780684105, -0.0002026156942, \n    -0.0001965794769, -0.0001412474849, -0.0000613682093, +0.0000490945674, \n    +0.0001412474849, +0.0001535211268, +0.0001472837022, +0.0001167002012, \n    +0.0000000000000, -0.0001044265594, -0.0001472837022, -0.0001535211268, \n    -0.0000798792757, -0.0000062374245, +0.0000062374245, +0.0000185110664, \n    +0.0000185110664, -0.0000368209256, -0.0000981891348, -0.0001289738431, \n    -0.0001843058350, -0.0001780684105, -0.0001044265594, -0.0000430583501, \n    +0.0000000000000, +0.0000122736419, -0.0000307847082, -0.0001104627767, \n    -0.0001227364185, -0.0001104627767, -0.0000859154930, -0.0000245472837, \n    -0.0000062374245, -0.0000185110664, -0.0000368209256, -0.0000245472837, \n    +0.0000430583501, +0.0001657947686, +0.0002148893360, +0.0002334004024, \n    +0.0001780684105, +0.0000553319920, -0.0000676056338, -0.0001843058350, \n    -0.0003130784708, -0.0003869215292, -0.0003008048290, -0.0001227364185, \n    +0.0000613682093, +0.0002088531187, +0.0002088531187, +0.0001289738431, \n    +0.0000245472837, -0.0000859154930, -0.0001843058350, -0.0001843058350, \n    -0.0001227364185, -0.0000676056338, -0.0000490945674, -0.0000245472837, \n    +0.0000062374245, +0.0000062374245, +0.0000245472837, +0.0001289738431, \n    +0.0002394366197, +0.0003130784708, +0.0003253521127, +0.0002702213280, \n    +0.0001843058350, +0.0000490945674, -0.0000921529175, -0.0001965794769, \n    -0.0002639839034, -0.0002211267606, -0.0000921529175, -0.0000185110664, \n    +0.0000368209256, +0.0000859154930, +0.0000981891348, +0.0001104627767, \n    +0.0001412474849, +0.0001595573441, +0.0001350100604, +0.0000245472837, \n    -0.0000490945674, -0.0001104627767, -0.0001535211268, -0.0000981891348, \n    -0.0000430583501, -0.0000613682093, -0.0000736418511, -0.0001289738431, \n    -0.0001965794769, -0.0001965794769, -0.0000981891348, +0.0000122736419, \n    +0.0000736418511, +0.0000981891348, +0.0001044265594, +0.0000798792757, \n    +0.0000553319920, +0.0000430583501, +0.0000490945674, +0.0000245472837, \n    -0.0000307847082, -0.0001227364185, -0.0002639839034, -0.0003253521127, \n    -0.0002456740443, -0.0001903420523, -0.0001167002012, +0.0000062374245, \n    +0.0001167002012, +0.0002026156942, +0.0002456740443, +0.0002394366197, \n    +0.0002271629779, +0.0001535211268, +0.0000307847082, -0.0000676056338, \n    -0.0001289738431, -0.0001412474849, -0.0001412474849, -0.0001780684105, \n    -0.0002639839034, -0.0003070422535, -0.0002639839034, -0.0001903420523, \n    -0.0000676056338, +0.0000798792757, +0.0001412474849, +0.0001412474849, \n    +0.0000921529175, +0.0000122736419, -0.0000307847082, -0.0000368209256, \n    -0.0000122736419, +0.0000368209256, -0.0000245472837, -0.0001843058350, \n    -0.0002824949698, -0.0003008048290, -0.0002211267606, -0.0000613682093, \n    +0.0000798792757, +0.0001843058350, +0.0001843058350, +0.0000921529175, \n    -0.0000245472837, -0.0001535211268, -0.0002579476861, -0.0002456740443, \n    -0.0001965794769, -0.0001472837022, -0.0001044265594, -0.0000798792757, \n    -0.0000676056338, -0.0000307847082, +0.0000430583501, +0.0001104627767, \n    +0.0001289738431, +0.0001167002012, +0.0000859154930, +0.0000490945674, \n    +0.0000307847082, -0.0000490945674, -0.0001965794769, -0.0002762575453, \n    -0.0002639839034, -0.0002026156942, -0.0000859154930, +0.0000245472837, \n    +0.0000553319920, +0.0000122736419, +0.0000000000000, +0.0000000000000, \n    -0.0000185110664, +0.0000000000000, +0.0000553319920, +0.0001104627767, \n    +0.0001227364185, +0.0000798792757, +0.0000185110664, -0.0000736418511, \n    -0.0001167002012, -0.0000553319920, -0.0000245472837, -0.0000613682093, \n    -0.0000981891348, -0.0001412474849, -0.0001472837022, -0.0001044265594, \n    -0.0000062374245, +0.0000921529175, +0.0001227364185, +0.0001472837022, \n    +0.0001412474849, +0.0000307847082, -0.0000613682093, -0.0000921529175, \n    -0.0000736418511, +0.0000000000000, +0.0000368209256, +0.0000490945674, \n    +0.0000613682093, +0.0000490945674, +0.0000245472837, -0.0000368209256, \n    -0.0001167002012, -0.0001104627767, -0.0000921529175, -0.0000613682093, \n    -0.0000307847082, -0.0000430583501, -0.0000245472837, +0.0000185110664, \n    +0.0000000000000, +0.0000062374245, +0.0000122736419, -0.0000185110664, \n    -0.0000676056338, -0.0001227364185, -0.0001350100604, -0.0000736418511, \n    +0.0000245472837, +0.0001535211268, +0.0001780684105, +0.0001044265594, \n    +0.0000430583501, +0.0000122736419, +0.0000185110664, +0.0000490945674, \n    +0.0000307847082, +0.0000000000000, -0.0000368209256, -0.0000798792757, \n    -0.0000798792757, -0.0000676056338, -0.0000430583501, -0.0000122736419, \n    +0.0000000000000, +0.0000307847082, +0.0000798792757, +0.0001104627767, \n    +0.0001412474849, +0.0001472837022, +0.0001412474849, +0.0001595573441, \n    +0.0001657947686, +0.0001044265594, +0.0000245472837, -0.0000245472837, \n    -0.0000490945674, -0.0000613682093, -0.0000430583501, -0.0000122736419, \n    +0.0000000000000, +0.0000122736419, +0.0000307847082, +0.0000368209256, \n    +0.0000430583501, +0.0000553319920, +0.0000859154930, +0.0000736418511, \n    +0.0000368209256, +0.0000307847082, +0.0000245472837, -0.0000122736419, \n    -0.0000553319920, -0.0000921529175, -0.0001227364185, -0.0001595573441, \n    -0.0001657947686, -0.0001227364185, -0.0000676056338, -0.0000368209256, \n    +0.0000062374245, +0.0000490945674, +0.0000307847082, +0.0000245472837, \n    +0.0000307847082, +0.0000062374245, +0.0000307847082, +0.0000676056338, \n    +0.0000981891348, +0.0001227364185, +0.0001104627767, +0.0000676056338, \n    +0.0000553319920, +0.0000798792757, +0.0001104627767, +0.0001472837022, \n    +0.0001657947686, +0.0001044265594, -0.0000062374245, -0.0000430583501, \n    -0.0000736418511, -0.0001350100604, -0.0001535211268, -0.0001227364185, \n    -0.0000430583501, +0.0000000000000, +0.0000000000000, -0.0000062374245, \n    -0.0000490945674, -0.0000859154930, -0.0000307847082, +0.0000490945674, \n    +0.0001104627767, +0.0001412474849, +0.0001104627767, +0.0000553319920, \n    +0.0000185110664, -0.0000062374245, -0.0000368209256, -0.0000185110664, \n    +0.0000307847082, +0.0000490945674, -0.0000122736419, -0.0001104627767, \n    -0.0002088531187, -0.0002456740443, -0.0001780684105, -0.0001044265594, \n    -0.0000553319920, -0.0000245472837, -0.0000122736419, -0.0000062374245, \n    -0.0000245472837, -0.0000676056338, -0.0000490945674, +0.0000062374245, \n    +0.0000430583501, +0.0000368209256, +0.0000368209256, +0.0000676056338, \n    +0.0000981891348, +0.0001289738431, +0.0001472837022, +0.0001044265594, \n    +0.0000185110664, -0.0000736418511, -0.0001350100604, -0.0001535211268, \n    -0.0001472837022, -0.0000921529175, +0.0000245472837, +0.0001227364185, \n    +0.0001595573441, +0.0001289738431, +0.0000553319920, +0.0000000000000, \n    -0.0000062374245, +0.0000185110664, +0.0000798792757, +0.0000736418511, \n    +0.0000000000000, -0.0000859154930, -0.0001718309859, -0.0002211267606, \n    -0.0002026156942, -0.0001167002012, -0.0000368209256, +0.0000000000000, \n    +0.0000185110664, +0.0000185110664, +0.0000122736419, +0.0000490945674, \n    +0.0000859154930, +0.0001044265594, +0.0001350100604, +0.0001167002012, \n    +0.0000490945674, -0.0000062374245, -0.0000490945674, -0.0000736418511, \n    -0.0001289738431, -0.0002148893360, -0.0002394366197, -0.0001903420523, \n    -0.0001167002012, +0.0000000000000, +0.0001104627767, +0.0001535211268, \n    +0.0001289738431, +0.0000921529175, +0.0000553319920, -0.0000062374245, \n    -0.0000736418511, -0.0001104627767, -0.0001104627767, -0.0000981891348, \n    -0.0000676056338, -0.0000430583501, -0.0000368209256, -0.0000430583501, \n    -0.0000490945674, -0.0000676056338, -0.0000859154930, -0.0000859154930, \n    -0.0000553319920, +0.0000062374245, +0.0001044265594, +0.0001903420523, \n    +0.0001965794769, +0.0001535211268, +0.0000798792757, -0.0000062374245, \n    -0.0000430583501, -0.0000245472837, +0.0000307847082, +0.0001104627767, \n    +0.0001350100604, +0.0000736418511, +0.0000185110664, +0.0000000000000, \n    +0.0000430583501, +0.0000921529175, +0.0001167002012, +0.0001167002012, \n    +0.0000676056338, +0.0000062374245, -0.0000307847082, -0.0000798792757, \n    -0.0000981891348, -0.0000613682093, +0.0000122736419, +0.0000798792757, \n    +0.0000859154930, +0.0000676056338, +0.0000553319920, +0.0000368209256, \n    +0.0000245472837, +0.0000185110664, +0.0000307847082, +0.0000245472837, \n    -0.0000062374245, -0.0000307847082, +0.0000000000000, +0.0000736418511, \n    +0.0001595573441, +0.0002026156942, +0.0001718309859, +0.0000553319920, \n    -0.0000859154930, -0.0001412474849, -0.0001104627767, -0.0000368209256, \n    +0.0000307847082, +0.0000859154930, +0.0001227364185, +0.0001535211268, \n    +0.0001657947686, +0.0001535211268, +0.0001289738431, +0.0001044265594, \n    +0.0000736418511, +0.0000430583501, +0.0000000000000, -0.0000185110664, \n    +0.0000368209256, +0.0001350100604, +0.0001780684105, +0.0001535211268, \n    +0.0000859154930, +0.0000553319920, +0.0001044265594, +0.0001535211268, \n    +0.0001718309859, +0.0001535211268, +0.0001104627767, +0.0000490945674, \n    -0.0000062374245, -0.0000245472837, -0.0000185110664, -0.0000122736419, \n    -0.0000245472837, -0.0000490945674, -0.0000553319920, -0.0000307847082, \n    +0.0000122736419, +0.0000798792757, +0.0001350100604, +0.0001289738431, \n    +0.0001044265594, +0.0000736418511, +0.0000185110664, -0.0000307847082, \n    -0.0000676056338, -0.0000736418511, +0.0000062374245, +0.0001104627767, \n    +0.0001289738431, +0.0000921529175, +0.0000062374245, -0.0000676056338, \n    -0.0001104627767, -0.0001350100604, -0.0001044265594, -0.0000307847082, \n    +0.0000185110664, +0.0000490945674, +0.0000490945674, +0.0000245472837, \n    +0.0000307847082, +0.0000676056338, +0.0000981891348, +0.0001167002012, \n    +0.0001167002012, +0.0000981891348, +0.0000676056338, +0.0000490945674, \n    +0.0000553319920, +0.0000676056338, +0.0000859154930, +0.0000981891348, \n    +0.0000245472837, -0.0000430583501, -0.0000613682093, -0.0000490945674, \n    -0.0000368209256, +0.0000000000000, +0.0000613682093, +0.0001167002012, \n    +0.0001167002012, +0.0000921529175, +0.0000368209256, -0.0000307847082, \n    -0.0000613682093, -0.0000307847082, +0.0000307847082, +0.0001227364185, \n    +0.0002026156942, +0.0002517102616, +0.0002334004024, +0.0001595573441, \n    +0.0000981891348, +0.0000490945674, +0.0000245472837, +0.0000185110664, \n    -0.0000185110664, -0.0000921529175, -0.0001718309859, -0.0002394366197, \n    -0.0002271629779, -0.0001535211268, -0.0000981891348, -0.0000245472837, \n    +0.0000613682093, +0.0000981891348, +0.0001044265594, +0.0000921529175, \n    +0.0000613682093, +0.0000307847082, +0.0000062374245, -0.0000185110664, \n    -0.0000368209256, -0.0000368209256, -0.0000490945674, -0.0000981891348, \n    -0.0001289738431, -0.0001350100604, -0.0000676056338, +0.0000122736419, \n    +0.0000490945674, +0.0000613682093, +0.0000430583501, -0.0000430583501, \n    -0.0001227364185, -0.0002026156942, -0.0002639839034, -0.0002334004024, \n    -0.0001657947686, -0.0000921529175, -0.0000430583501, -0.0000490945674, \n    -0.0000859154930, -0.0001167002012, -0.0001167002012, -0.0000613682093, \n    -0.0000122736419, +0.0000122736419, +0.0000368209256, +0.0000430583501, \n    +0.0000430583501, +0.0000185110664, -0.0000613682093, -0.0001412474849, \n    -0.0001780684105, -0.0001595573441, -0.0000921529175, -0.0000245472837, \n    +0.0000185110664, +0.0000553319920, +0.0000185110664, -0.0000553319920, \n    -0.0001167002012, -0.0001780684105, -0.0001843058350, -0.0001167002012, \n    -0.0000490945674, +0.0000000000000, +0.0000245472837, +0.0000307847082, \n    +0.0000000000000, -0.0000859154930, -0.0001780684105, -0.0001965794769, \n    -0.0001718309859, -0.0001227364185, -0.0000553319920, +0.0000062374245, \n    +0.0000490945674, +0.0000676056338, +0.0000676056338, +0.0000307847082, \n    +0.0000000000000, +0.0000245472837, +0.0000676056338, +0.0000676056338, \n    +0.0000368209256, -0.0000307847082, -0.0000981891348, -0.0001657947686, \n    -0.0002088531187, -0.0001718309859, -0.0001104627767, -0.0000798792757, \n    -0.0000307847082, -0.0000307847082, -0.0000676056338, -0.0000736418511, \n    -0.0000676056338, -0.0000430583501, +0.0000000000000, +0.0000368209256, \n    +0.0000368209256, +0.0000000000000, -0.0000368209256, -0.0000368209256, \n    -0.0000185110664, +0.0000122736419, +0.0000430583501, +0.0000185110664, \n    +0.0000000000000, -0.0000185110664, -0.0000185110664, +0.0000000000000, \n    +0.0000245472837, +0.0000430583501, +0.0000553319920, +0.0000368209256, \n    +0.0000245472837, +0.0000185110664, +0.0000000000000, -0.0000122736419, \n    -0.0000368209256, -0.0000553319920, -0.0000490945674, -0.0000245472837, \n    +0.0000000000000, +0.0000245472837, +0.0000490945674, +0.0000490945674, \n    +0.0000185110664, +0.0000000000000, -0.0000062374245, -0.0000122736419, \n    -0.0000122736419, -0.0000062374245, -0.0000062374245, +0.0000000000000, \n    +0.0000000000000, +0.0000062374245, +0.0000122736419, +0.0000122736419, \n    +0.0000062374245, +0.0000062374245, +0.0000000000000, +0.0000000000000\n};\n"
  },
  {
    "path": "impulses/12-fender-superchamp-sm57.h",
    "content": "float fender_superchamp_sm57[] = {\n    +0.0000000000000, -0.0000200000000, -0.0000530434783, -0.0000397826087, \n    +0.0000265217391, +0.0000928260870, +0.0001658695652, +0.0001458695652, \n    -0.0000067391304, -0.0001458695652, -0.0002786956522, -0.0004047826087, \n    -0.0003647826087, -0.0002786956522, -0.0001856521739, +0.0000067391304, \n    +0.0001128260870, +0.0001393478261, +0.0001856521739, +0.0001128260870, \n    +0.0000265217391, +0.0000000000000, -0.0001326086957, -0.0002056521739, \n    -0.0002056521739, -0.0002852173913, -0.0002654347826, -0.0002521739130, \n    -0.0003317391304, -0.0003117391304, -0.0002919565217, -0.0002984782609, \n    -0.0001458695652, +0.0000200000000, +0.0001458695652, +0.0003715217391, \n    +0.0003250000000, +0.0001658695652, -0.0000465217391, -0.0003515217391, \n    -0.0005904347826, -0.0006700000000, -0.0006236956522, -0.0003184782609, \n    +0.0000200000000, +0.0000863043478, +0.0001060869565, +0.0000000000000, \n    -0.0002919565217, -0.0004976086957, -0.0007297826087, -0.0010615217391, \n    -0.0011610869565, -0.0012671739130, -0.0013269565217, -0.0011145652174, \n    -0.0010747826087, -0.0010880434783, -0.0009752173913, -0.0011808695652, \n    -0.0015058695652, -0.0017382608696, -0.0023950000000, -0.0028593478261, \n    -0.0032308695652, -0.0046373913043, -0.0047965217391, -0.0050752173913, \n    -0.0067404347826, -0.0047169565217, -0.0074436956522, -0.0103428260870, \n    +0.0068532608696, +0.0241619565217, +0.0008426086957, -0.0764132608696, \n    -0.1174660869565, -0.0463336956522, +0.0499626086957, +0.1274373913043, \n    +0.2072806521739, +0.2173780434783, +0.1524086956522, +0.0598676086957, \n    -0.0573863043478, -0.1283728260870, -0.1224352173913, -0.0873797826087, \n    -0.0395069565217, -0.0204402173913, -0.0344052173913, -0.0300000000000, \n    +0.0007495652174, +0.0409532608696, +0.0674969565217, +0.0662097826087, \n    +0.0491002173913, +0.0154643478261, -0.0154313043478, -0.0201350000000, \n    -0.0179323913043, -0.0123000000000, -0.0078747826087, -0.0214352173913, \n    -0.0342726086957, -0.0254821739130, -0.0027134782609, +0.0226360869565, \n    +0.0315126086957, +0.0181778260870, +0.0039473913043, -0.0051217391304, \n    -0.0098850000000, -0.0113710869565, -0.0134476086957, -0.0153650000000, \n    -0.0203339130435, -0.0242482608696, -0.0183239130435, -0.0129036956522, \n    -0.0087771739130, +0.0026736956522, +0.0066541304348, +0.0001193478261, \n    -0.0074967391304, -0.0111521739130, -0.0129500000000, -0.0151858695652, \n    -0.0076558695652, +0.0070058695652, +0.0121739130435, +0.0095002173913, \n    +0.0024280434783, -0.0069991304348, -0.0090026086957, -0.0039673913043, \n    +0.0039141304348, +0.0099447826087, +0.0047767391304, -0.0068930434783, \n    -0.0150397826087, -0.0140978260870, -0.0088500000000, -0.0071450000000, \n    -0.0069526086957, -0.0080341304348, -0.0125586956522, -0.0104556521739, \n    -0.0010680434783, +0.0076956521739, +0.0145886956522, +0.0114839130435, \n    +0.0010017391304, -0.0077886956522, -0.0161410869565, -0.0173752173913, \n    -0.0094869565217, -0.0054997826087, -0.0030782608696, -0.0004578260870, \n    -0.0005571739130, +0.0007363043478, -0.0002454347826, -0.0030650000000, \n    -0.0037019565217, -0.0076956521739, -0.0126847826087, -0.0129102173913, \n    -0.0117956521739, -0.0090358695652, -0.0028128260870, +0.0051880434783, \n    +0.0124591304348, +0.0133945652174, +0.0064286956522, -0.0032641304348, \n    -0.0103163043478, -0.0108469565217, -0.0032971739130, +0.0067867391304, \n    +0.0107341304348, +0.0073043478261, +0.0008558695652, -0.0071915217391, \n    -0.0147147826087, -0.0174745652174, -0.0150795652174, -0.0105352173913, \n    -0.0058247826087, -0.0016386956522, +0.0013865217391, +0.0034697826087, \n    +0.0049293478261, +0.0050486956522, +0.0032441304348, +0.0007032608696, \n    +0.0007032608696, +0.0033569565217, +0.0057917391304, +0.0073506521739, \n    +0.0075565217391, +0.0063489130435, +0.0048495652174, +0.0020367391304, \n    -0.0018641304348, -0.0047302173913, -0.0066741304348, -0.0078947826087, \n    -0.0078019565217, -0.0069991304348, -0.0063158695652, -0.0058913043478, \n    -0.0040734782609, -0.0003715217391, +0.0025078260870, +0.0041730434783, \n    +0.0053339130435, +0.0040534782609, +0.0014130434783, +0.0008558695652, \n    +0.0028926086957, +0.0059641304348, +0.0074569565217, +0.0076493478261, \n    +0.0079013043478, +0.0064019565217, +0.0046506521739, +0.0043521739130, \n    +0.0026139130435, +0.0002719565217, -0.0013932608696, -0.0017580434783, \n    +0.0007165217391, +0.0030319565217, +0.0038943478261, +0.0058713043478, \n    +0.0076758695652, +0.0077886956522, +0.0070256521739, +0.0055793478261, \n    +0.0056058695652, +0.0062295652174, +0.0046639130435, +0.0026669565217, \n    +0.0016519565217, +0.0012073913043, +0.0010547826087, +0.0002719565217, \n    +0.0010017391304, +0.0039473913043, +0.0056989130435, +0.0061897826087, \n    +0.0058380434783, +0.0043386956522, +0.0036091304348, +0.0037019565217, \n    +0.0040204347826, +0.0048363043478, +0.0046041304348, +0.0033436956522, \n    +0.0020432608696, +0.0001658695652, -0.0003980434783, +0.0015326086957, \n    +0.0044450000000, +0.0072313043478, +0.0084386956522, +0.0076160869565, \n    +0.0066143478261, +0.0060704347826, +0.0053604347826, +0.0045510869565, \n    +0.0040800000000, +0.0039739130435, +0.0022091304348, -0.0013865217391, \n    -0.0026006521739, -0.0000597826087, +0.0022889130435, +0.0023219565217, \n    +0.0015856521739, +0.0013202173913, +0.0008093478261, +0.0005971739130, \n    +0.0027134782609, +0.0061897826087, +0.0075963043478, +0.0056856521739, \n    +0.0024347826087, +0.0002586956522, -0.0001791304348, +0.0000000000000, \n    +0.0000663043478, +0.0005904347826, +0.0018908695652, +0.0034100000000, \n    +0.0043719565217, +0.0037947826087, +0.0022756521739, +0.0004378260870, \n    -0.0018576086957, -0.0030782608696, -0.0016982608696, +0.0017647826087, \n    +0.0051680434783, +0.0061897826087, +0.0042260869565, +0.0006302173913, \n    -0.0030184782609, -0.0044647826087, -0.0026271739130, +0.0007960869565, \n    +0.0030517391304, +0.0030517391304, +0.0020965217391, +0.0014463043478, \n    +0.0008756521739, +0.0000597826087, -0.0003450000000, -0.0006369565217, \n    -0.0010482608696, -0.0006502173913, +0.0008756521739, +0.0028328260870, \n    +0.0039871739130, +0.0031247826087, +0.0008823913043, -0.0013732608696, \n    -0.0028793478261, -0.0030717391304, -0.0022954347826, -0.0022026086957, \n    -0.0031645652174, -0.0039141304348, -0.0034100000000, -0.0020965217391, \n    -0.0006634782609, +0.0005706521739, +0.0015921739130, +0.0012936956522, \n    -0.0007763043478, -0.0031047826087, -0.0042658695652, -0.0034167391304, \n    -0.0009354347826, +0.0012406521739, +0.0018773913043, +0.0008623913043, \n    -0.0011410869565, -0.0023950000000, -0.0021495652174, -0.0006700000000, \n    +0.0010217391304, +0.0016254347826, +0.0004908695652, -0.0017780434783, \n    -0.0042591304348, -0.0057717391304, -0.0061034782609, -0.0060902173913, \n    -0.0051747826087, -0.0025541304348, +0.0004113043478, +0.0023021739130, \n    +0.0027200000000, +0.0021097826087, +0.0013732608696, -0.0001991304348, \n    -0.0022356521739, -0.0027267391304, -0.0025010869565, -0.0024813043478, \n    -0.0022621739130, -0.0020034782609, -0.0010017391304, +0.0001393478261, \n    -0.0004313043478, -0.0017913043478, -0.0026802173913, -0.0032176086957, \n    -0.0028991304348, -0.0027797826087, -0.0027332608696, -0.0023817391304, \n    -0.0030517391304, -0.0041795652174, -0.0036819565217, -0.0020367391304, \n    -0.0002123913043, +0.0011345652174, +0.0011145652174, +0.0003715217391, \n    -0.0004510869565, -0.0012406521739, -0.0015789130435, -0.0014463043478, \n    -0.0008558695652, +0.0000995652174, +0.0003250000000, -0.0000597826087, \n    -0.0004578260870, -0.0013269565217, -0.0021560869565, -0.0026071739130, \n    -0.0031910869565, -0.0035558695652, -0.0028991304348, -0.0017713043478, \n    -0.0009884782609, -0.0005771739130, -0.0006634782609, -0.0010945652174, \n    -0.0007960869565, +0.0005839130435, +0.0020500000000, +0.0023086956522, \n    +0.0017382608696, +0.0017250000000, +0.0017050000000, +0.0009486956522, \n    +0.0001458695652, -0.0004843478261, -0.0005506521739, +0.0004180434783, \n    +0.0013600000000, +0.0017580434783, +0.0015789130435, +0.0004578260870, \n    -0.0009619565217, -0.0023419565217, -0.0033171739130, -0.0030850000000, \n    -0.0022091304348, -0.0008691304348, +0.0006832608696, +0.0008889130435, \n    +0.0000132608696, -0.0006104347826, -0.0006700000000, +0.0002123913043, \n    +0.0015591304348, +0.0025143478261, +0.0026336956522, +0.0015921739130, \n    -0.0002454347826, -0.0017580434783, -0.0021826086957, -0.0012869565217, \n    +0.0003715217391, +0.0019371739130, +0.0029058695652, +0.0030650000000, \n    +0.0019969565217, +0.0000132608696, -0.0014595652174, -0.0014860869565, \n    -0.0001856521739, +0.0012604347826, +0.0019306521739, +0.0015193478261, \n    +0.0004710869565, -0.0004976086957, -0.0011543478261, -0.0013800000000, \n    -0.0009089130435, +0.0001326086957, +0.0009686956522, +0.0011676086957, \n    +0.0012471739130, +0.0014130434783, +0.0010747826087, +0.0005241304348, \n    +0.0004776086957, +0.0008558695652, +0.0013997826087, +0.0016519565217, \n    +0.0013732608696, +0.0005771739130, -0.0002984782609, -0.0005373913043, \n    +0.0000663043478, +0.0010945652174, +0.0020500000000, +0.0022954347826, \n    +0.0015458695652, -0.0000795652174, -0.0019636956522, -0.0026536956522, \n    -0.0018443478261, -0.0003382608696, +0.0014793478261, +0.0026471739130, \n    +0.0024547826087, +0.0014130434783, -0.0000597826087, -0.0012804347826, \n    -0.0017050000000, -0.0014130434783, -0.0005904347826, +0.0002786956522, \n    +0.0009619565217, +0.0016850000000, +0.0019041304348, +0.0015523913043, \n    +0.0010350000000, +0.0006567391304, +0.0004245652174, -0.0001128260870, \n    -0.0011410869565, -0.0020167391304, -0.0023154347826, -0.0017913043478, \n    -0.0005108695652, +0.0010282608696, +0.0021628260870, +0.0024147826087, \n    +0.0020432608696, +0.0014065217391, +0.0008823913043, +0.0006036956522, \n    +0.0001193478261, -0.0007297826087, -0.0015523913043, -0.0016519565217, \n    -0.0005639130435, +0.0007430434783, +0.0015458695652, +0.0019371739130, \n    +0.0017780434783, +0.0010415217391, -0.0000067391304, -0.0010084782609, \n    -0.0013202173913, -0.0009286956522, -0.0001260869565, +0.0008093478261, \n    +0.0011808695652, +0.0006965217391, -0.0001723913043, -0.0009884782609, \n    -0.0015193478261, -0.0016584782609, -0.0014926086957, -0.0011676086957, \n    -0.0009554347826, -0.0009619565217, -0.0009154347826, -0.0008226086957, \n    -0.0006502173913, -0.0001856521739, +0.0001723913043, +0.0002719565217, \n    +0.0002919565217, +0.0002521739130, +0.0001923913043, -0.0000530434783, \n    -0.0005839130435, -0.0010282608696, -0.0015921739130, -0.0020500000000, \n    -0.0018641304348, -0.0013467391304, -0.0007430434783, -0.0003582608696, \n    -0.0005173913043, -0.0010547826087, -0.0014595652174, -0.0013134782609, \n    -0.0009554347826, -0.0007828260870, -0.0010282608696, -0.0018443478261, \n    -0.0024745652174, -0.0022889130435, -0.0014330434783, +0.0000000000000, \n    +0.0011941304348, +0.0014197826087, +0.0008426086957, -0.0001591304348, \n    -0.0007828260870, -0.0009554347826, -0.0012141304348, -0.0014463043478, \n    -0.0015458695652, -0.0015126086957, -0.0011210869565, -0.0010017391304, \n    -0.0012604347826, -0.0013134782609, -0.0015193478261, -0.0020167391304, \n    -0.0023219565217, -0.0023882608696, -0.0022689130435, -0.0020234782609, \n    -0.0015656521739, -0.0007230434783, -0.0000265217391, +0.0001856521739, \n    +0.0002056521739, -0.0000597826087, -0.0003782608696, -0.0003117391304, \n    -0.0001128260870, -0.0000597826087, -0.0002056521739, -0.0004976086957, \n    -0.0007895652174, -0.0009221739130, -0.0008358695652, -0.0005041304348, \n    +0.0000730434783, +0.0006634782609, +0.0008426086957, +0.0004313043478, \n    -0.0005306521739, -0.0012671739130, -0.0012073913043, -0.0009554347826, \n    -0.0008358695652, -0.0007097826087, -0.0005971739130, -0.0005639130435, \n    -0.0007297826087, -0.0008491304348, -0.0008491304348, -0.0009221739130, \n    -0.0008358695652, -0.0006634782609, -0.0007363043478, -0.0007763043478, \n    -0.0006434782609, -0.0005241304348, -0.0004245652174, -0.0002786956522, \n    -0.0001723913043, +0.0000000000000, +0.0004510869565, +0.0007032608696, \n    +0.0002852173913, -0.0004245652174, -0.0006767391304, -0.0003915217391, \n    -0.0003117391304, -0.0005306521739, -0.0004378260870, -0.0002654347826, \n    -0.0003515217391, -0.0006369565217, -0.0010217391304, -0.0011210869565, \n    -0.0008426086957, -0.0005971739130, -0.0004976086957, -0.0006236956522, \n    -0.0009486956522, -0.0011676086957, -0.0011278260870, -0.0007695652174, \n    -0.0001060869565, +0.0004908695652, +0.0007097826087, +0.0005241304348, \n    +0.0000332608696, -0.0003382608696, -0.0003317391304, -0.0000795652174, \n    +0.0001326086957, +0.0001658695652, -0.0000730434783, -0.0002852173913, \n    -0.0004843478261, -0.0007895652174, -0.0007763043478, -0.0002984782609, \n    +0.0002984782609, +0.0007097826087, +0.0007230434783, +0.0004578260870, \n    +0.0002189130435, -0.0002786956522, -0.0008226086957, -0.0008028260870, \n    -0.0001723913043, +0.0004710869565, +0.0004578260870, -0.0000332608696, \n    -0.0002123913043, -0.0000067391304, +0.0002919565217, +0.0004776086957, \n    +0.0002321739130, -0.0000067391304, +0.0000795652174, +0.0002056521739, \n    +0.0001791304348, -0.0000265217391, -0.0001458695652, +0.0001526086957, \n    +0.0004047826087, +0.0003382608696, +0.0002719565217, +0.0001856521739, \n    -0.0000132608696, -0.0002454347826, -0.0002654347826, +0.0000597826087, \n    +0.0004908695652, +0.0008028260870, +0.0008889130435, +0.0006236956522, \n    +0.0003847826087, +0.0003382608696, +0.0001791304348, +0.0001723913043, \n    +0.0004643478261, +0.0007363043478, +0.0005771739130, +0.0000067391304, \n    -0.0005108695652, -0.0005506521739, -0.0002189130435, +0.0002321739130, \n    +0.0006369565217, +0.0008956521739, +0.0009419565217, +0.0007828260870, \n    +0.0005041304348, +0.0003647826087, +0.0005108695652, +0.0008491304348, \n    +0.0012206521739, +0.0013269565217, +0.0009554347826, +0.0003052173913, \n    -0.0001326086957, -0.0000132608696, +0.0003117391304, +0.0003715217391, \n    +0.0004976086957, +0.0008756521739, +0.0011478260870, +0.0011078260870, \n    +0.0007430434783, +0.0004976086957, +0.0005506521739, +0.0005506521739, \n    +0.0004710869565, +0.0003184782609, +0.0001060869565, +0.0000995652174, \n    +0.0002719565217, +0.0006302173913, +0.0011145652174, +0.0013865217391, \n    +0.0013800000000, +0.0011013043478, +0.0006900000000, +0.0004643478261, \n    +0.0004643478261, +0.0005439130435, +0.0008889130435, +0.0013865217391, \n    +0.0018045652174, +0.0018841304348, +0.0016386956522, +0.0013202173913, \n    +0.0010150000000, +0.0007828260870, +0.0006236956522, +0.0003250000000, \n    +0.0000000000000, -0.0000928260870, +0.0000000000000, +0.0003052173913, \n    +0.0005506521739, +0.0005108695652, +0.0004776086957, +0.0005639130435, \n    +0.0005439130435, +0.0003715217391, +0.0002586956522, +0.0004047826087, \n    +0.0005904347826, +0.0005571739130, +0.0005439130435, +0.0005771739130, \n    +0.0004578260870, +0.0002786956522, +0.0002256521739, +0.0004180434783, \n    +0.0007695652174, +0.0011543478261, +0.0014660869565, +0.0013865217391, \n    +0.0009221739130, +0.0003647826087, -0.0001060869565, -0.0002123913043, \n    +0.0000597826087, +0.0005041304348, +0.0010150000000, +0.0012339130435, \n    +0.0010217391304, +0.0006832608696, +0.0003250000000, -0.0000995652174, \n    -0.0003647826087, -0.0001658695652, +0.0003317391304, +0.0006767391304, \n    +0.0007097826087, +0.0003382608696, -0.0002786956522, -0.0007763043478, \n    -0.0009021739130, -0.0005241304348, +0.0000730434783, +0.0004710869565, \n    +0.0006832608696, +0.0008491304348, +0.0008691304348, +0.0006832608696, \n    +0.0003782608696, +0.0002719565217, +0.0004245652174, +0.0005839130435, \n    +0.0005971739130, +0.0004378260870, +0.0000000000000, -0.0004445652174, \n    -0.0007363043478, -0.0009021739130, -0.0007960869565, -0.0004445652174, \n    -0.0000597826087, +0.0003052173913, +0.0003647826087, +0.0000530434783, \n    -0.0004113043478, -0.0007695652174, -0.0007495652174, -0.0003847826087, \n    +0.0000067391304, +0.0002852173913, +0.0002056521739, -0.0002919565217, \n    -0.0007165217391, -0.0006634782609, -0.0000730434783, +0.0006302173913, \n    +0.0009486956522, +0.0006302173913, -0.0001658695652, -0.0008226086957, \n    -0.0006302173913, +0.0002586956522, +0.0012671739130, +0.0016850000000, \n    +0.0011210869565, -0.0000265217391, -0.0011278260870, -0.0018178260870, \n    -0.0016917391304, -0.0008491304348, +0.0001260869565, +0.0008160869565, \n    +0.0009486956522, +0.0006369565217, +0.0001458695652, -0.0004643478261, \n    -0.0009884782609, -0.0010813043478, -0.0006634782609, -0.0001393478261, \n    -0.0000928260870, -0.0001923913043, +0.0000000000000, +0.0000730434783, \n    +0.0000200000000, +0.0001193478261, +0.0002852173913, +0.0002919565217, \n    -0.0001128260870, -0.0006900000000, -0.0008028260870, -0.0002454347826, \n    +0.0005306521739, +0.0008756521739, +0.0005971739130, +0.0000265217391, \n    -0.0004976086957, -0.0006832608696, -0.0004180434783, +0.0000132608696, \n    +0.0002056521739, -0.0000332608696, -0.0005839130435, -0.0010747826087, \n    -0.0012273913043, -0.0009619565217, -0.0005108695652, -0.0002389130435, \n    -0.0001723913043, -0.0000928260870, +0.0000000000000, -0.0000863043478, \n    -0.0002256521739, -0.0000863043478, +0.0004578260870, +0.0010680434783, \n    +0.0010945652174, +0.0005041304348, -0.0000332608696, +0.0000132608696, \n    +0.0003980434783, +0.0004843478261, +0.0001526086957, -0.0002189130435, \n    -0.0004776086957, -0.0006567391304, -0.0006502173913, -0.0001791304348, \n    +0.0006965217391, +0.0015126086957, +0.0017382608696, +0.0013134782609, \n    +0.0006369565217, +0.0000530434783, -0.0002256521739, -0.0000200000000, \n    +0.0005439130435, +0.0009619565217, +0.0008160869565, +0.0001193478261, \n    -0.0005771739130, -0.0007495652174, -0.0003715217391, +0.0000928260870, \n    +0.0003317391304, +0.0004643478261, +0.0008093478261, +0.0013202173913, \n    +0.0016121739130, +0.0015258695652, +0.0011145652174, +0.0004313043478, \n    -0.0002852173913, -0.0006900000000, -0.0005839130435, -0.0000530434783, \n    +0.0005373913043, +0.0008358695652, +0.0007630434783, +0.0005506521739, \n    +0.0004908695652, +0.0006502173913, +0.0006767391304, +0.0003980434783, \n    +0.0000663043478, +0.0000132608696, +0.0002919565217, +0.0006036956522, \n    +0.0007363043478, +0.0007828260870, +0.0006567391304, +0.0003184782609, \n    +0.0000530434783, -0.0001393478261, -0.0003382608696, -0.0003382608696, \n    +0.0000132608696, +0.0005904347826, +0.0010547826087, +0.0011941304348, \n    +0.0010150000000, +0.0006832608696, +0.0003382608696, +0.0000663043478, \n    +0.0000200000000, +0.0001591304348, +0.0002321739130, +0.0003184782609, \n    +0.0005306521739, +0.0006965217391, +0.0006567391304, +0.0005839130435, \n    +0.0007097826087, +0.0008623913043, +0.0008623913043, +0.0007097826087, \n    +0.0004245652174, +0.0000928260870, -0.0002056521739, -0.0002719565217, \n    -0.0000465217391, +0.0001658695652, +0.0002321739130, +0.0000928260870, \n    -0.0000663043478, -0.0000730434783, -0.0000995652174, -0.0000200000000, \n    +0.0003382608696, +0.0007165217391, +0.0008558695652, +0.0006965217391, \n    +0.0004047826087, +0.0001591304348, -0.0000863043478, -0.0002123913043, \n    -0.0000597826087, +0.0001991304348, +0.0003317391304, +0.0002654347826, \n    +0.0001393478261, +0.0000332608696, -0.0001526086957, -0.0003450000000, \n    -0.0003847826087, -0.0002786956522, -0.0002056521739, -0.0001658695652, \n    -0.0001723913043, -0.0001923913043, -0.0000863043478, +0.0000332608696, \n    +0.0000132608696, -0.0000265217391, -0.0001526086957, -0.0003647826087, \n    -0.0004843478261, -0.0004510869565, -0.0002454347826, -0.0000132608696, \n    +0.0001526086957, +0.0002321739130, +0.0000995652174, -0.0001128260870, \n    -0.0002521739130, -0.0003582608696, -0.0003382608696, -0.0002189130435, \n    -0.0001393478261, -0.0000730434783, -0.0000928260870, -0.0002586956522, \n    -0.0004843478261, -0.0005971739130, -0.0004908695652, -0.0002454347826, \n    +0.0000465217391, +0.0002654347826, +0.0002123913043, -0.0000597826087, \n    -0.0002852173913, -0.0003382608696, -0.0003382608696, -0.0003117391304, \n    -0.0001791304348, -0.0000863043478, -0.0001260869565, -0.0001393478261, \n    -0.0000663043478, +0.0000200000000, +0.0000067391304, -0.0001060869565, \n    -0.0002189130435, -0.0003250000000, -0.0004578260870, -0.0005173913043, \n    -0.0004180434783, -0.0002189130435, -0.0000465217391, +0.0000132608696, \n    -0.0001260869565, -0.0004313043478, -0.0006965217391, -0.0007097826087, \n    -0.0004445652174, -0.0000465217391, +0.0002852173913, +0.0004378260870, \n    +0.0003782608696, +0.0002189130435, +0.0000397826087, -0.0001591304348, \n    -0.0002984782609, -0.0004643478261, -0.0007430434783, -0.0008823913043, \n    -0.0007165217391, -0.0002984782609, +0.0002189130435, +0.0005241304348, \n    +0.0004976086957, +0.0001591304348, -0.0004445652174, -0.0009286956522, \n    -0.0009952173913, -0.0006302173913, -0.0000332608696, +0.0004180434783, \n    +0.0004245652174, +0.0001193478261, -0.0001791304348, -0.0002786956522, \n    -0.0001856521739, -0.0000995652174, -0.0000928260870, -0.0002786956522, \n    -0.0007563043478, -0.0010747826087, -0.0009021739130, -0.0004710869565, \n    +0.0000000000000, +0.0002984782609, +0.0001723913043, -0.0001658695652, \n    -0.0005639130435, -0.0008293478261, -0.0007430434783, -0.0005241304348, \n    -0.0002984782609, -0.0001458695652, -0.0001991304348, -0.0002189130435, \n    -0.0001060869565, -0.0000530434783, -0.0001658695652, -0.0004908695652, \n    -0.0007563043478, -0.0007695652174, -0.0007165217391, -0.0005904347826, \n    -0.0003847826087, -0.0001856521739, -0.0000265217391, +0.0000465217391, \n    +0.0001060869565, +0.0001856521739, +0.0000067391304, -0.0004445652174, \n    -0.0008491304348, -0.0009089130435, -0.0006767391304, -0.0003715217391, \n    -0.0001060869565, -0.0000067391304, -0.0000928260870, -0.0002984782609, \n    -0.0005706521739, -0.0007297826087, -0.0006036956522, -0.0002654347826, \n    +0.0000730434783, +0.0001526086957, -0.0000995652174, -0.0004776086957, \n    -0.0007363043478, -0.0007363043478, -0.0005506521739, -0.0003184782609, \n    -0.0001526086957, -0.0002123913043, -0.0004578260870, -0.0007430434783, \n    -0.0008491304348, -0.0006236956522, -0.0001658695652, +0.0001991304348, \n    +0.0002586956522, +0.0000597826087, -0.0001856521739, -0.0004378260870, \n    -0.0004843478261, -0.0002919565217, -0.0000730434783, +0.0000000000000, \n    -0.0001326086957, -0.0003515217391, -0.0004976086957, -0.0004976086957, \n    -0.0004378260870, -0.0004710869565, -0.0005571739130, -0.0006104347826, \n    -0.0005771739130, -0.0003184782609, +0.0000332608696, +0.0001723913043, \n    +0.0001060869565, -0.0000200000000, -0.0002521739130, -0.0005439130435, \n    -0.0007563043478, -0.0007230434783, -0.0003647826087, +0.0000265217391, \n    +0.0001193478261, -0.0000530434783, -0.0003515217391, -0.0006302173913, \n    -0.0007165217391, -0.0005971739130, -0.0002984782609, +0.0000597826087, \n    +0.0002389130435, +0.0002123913043, +0.0001060869565, -0.0000132608696, \n    -0.0001260869565, -0.0002454347826, -0.0004113043478, -0.0004776086957, \n    -0.0003915217391, -0.0001791304348, +0.0000067391304, +0.0000928260870, \n    +0.0000265217391, -0.0001591304348, -0.0003317391304, -0.0003647826087, \n    -0.0002786956522, -0.0000995652174, +0.0000597826087, +0.0001658695652, \n    +0.0001856521739, -0.0000067391304, -0.0002919565217, -0.0004776086957, \n    -0.0005706521739, -0.0004510869565, -0.0001526086957, +0.0001193478261, \n    +0.0001791304348, -0.0000397826087, -0.0003515217391, -0.0005639130435, \n    -0.0005706521739, -0.0002586956522, +0.0001856521739, +0.0004245652174, \n    +0.0003515217391, +0.0000928260870, -0.0002321739130, -0.0004445652174, \n    -0.0003382608696, +0.0000000000000, +0.0002984782609, +0.0003382608696, \n    +0.0001128260870, -0.0001526086957, -0.0003052173913, -0.0003052173913, \n    -0.0001723913043, -0.0000332608696, +0.0000132608696, -0.0000200000000, \n    -0.0001393478261, -0.0002056521739, -0.0001458695652, -0.0000465217391, \n    +0.0000332608696, +0.0000465217391, -0.0001060869565, -0.0003250000000, \n    -0.0003915217391, -0.0003250000000, -0.0001856521739, +0.0000132608696, \n    +0.0002654347826, +0.0004578260870, +0.0004908695652, +0.0003782608696, \n    +0.0003317391304, +0.0003647826087, +0.0003915217391, +0.0003847826087, \n    +0.0002654347826, +0.0000132608696, -0.0002389130435, -0.0003980434783, \n    -0.0003715217391, -0.0002521739130, -0.0001856521739, -0.0001393478261, \n    -0.0000530434783, -0.0000397826087, -0.0001193478261, -0.0001923913043, \n    -0.0002123913043, -0.0002056521739, -0.0001923913043, -0.0001658695652, \n    -0.0000730434783, +0.0000132608696, +0.0000067391304, -0.0000332608696, \n    -0.0000663043478, -0.0001128260870, -0.0000928260870, -0.0000132608696, \n    +0.0000397826087, +0.0000465217391, -0.0000465217391, -0.0001856521739, \n    -0.0002123913043, -0.0001060869565, +0.0000730434783, +0.0002123913043, \n    +0.0002389130435, +0.0001526086957, -0.0000530434783, -0.0002719565217, \n    -0.0002586956522, -0.0000863043478, +0.0000465217391, +0.0000928260870, \n    -0.0000132608696, -0.0001658695652, -0.0002454347826, -0.0002321739130, \n    -0.0000332608696, +0.0003052173913, +0.0005373913043, +0.0005173913043, \n    +0.0002984782609, +0.0000597826087, -0.0000730434783, -0.0001658695652, \n    -0.0001723913043, -0.0000200000000, +0.0000995652174, +0.0001326086957, \n    +0.0001923913043, +0.0002719565217, +0.0002719565217, +0.0002189130435, \n    +0.0002123913043, +0.0002256521739, +0.0001393478261, +0.0000332608696, \n    +0.0000000000000, -0.0000265217391, -0.0000067391304, +0.0000332608696, \n    +0.0000597826087, +0.0000597826087, +0.0000795652174, +0.0001923913043, \n    +0.0002786956522, +0.0002521739130, +0.0002454347826, +0.0002256521739, \n    +0.0001723913043, +0.0001326086957, +0.0001060869565, +0.0001393478261, \n    +0.0001991304348, +0.0001723913043, +0.0001658695652, +0.0002123913043, \n    +0.0002586956522, +0.0003250000000, +0.0003847826087, +0.0003915217391, \n    +0.0003382608696, +0.0002123913043, +0.0001591304348, +0.0002189130435, \n    +0.0002586956522, +0.0003184782609, +0.0003915217391, +0.0003052173913, \n    +0.0000863043478, -0.0000200000000, +0.0000265217391, +0.0001526086957, \n    +0.0002321739130, +0.0002256521739, +0.0001393478261, +0.0000397826087, \n    +0.0000000000000, +0.0000995652174, +0.0002521739130, +0.0003450000000, \n    +0.0003847826087, +0.0002852173913, +0.0000597826087, -0.0000663043478, \n    -0.0000863043478, -0.0000730434783, +0.0000332608696, +0.0001723913043, \n    +0.0002586956522, +0.0003052173913, +0.0003847826087, +0.0004378260870, \n    +0.0003847826087, +0.0002389130435, +0.0001128260870, +0.0000265217391, \n    +0.0000000000000, +0.0000863043478, +0.0001991304348, +0.0002321739130, \n    +0.0001458695652, -0.0000730434783, -0.0003250000000, -0.0003582608696, \n    -0.0001723913043, +0.0000663043478, +0.0003184782609, +0.0004908695652, \n    +0.0005506521739, +0.0005839130435, +0.0005639130435, +0.0004445652174, \n    +0.0002521739130, +0.0000000000000, -0.0002786956522, -0.0003980434783, \n    -0.0003184782609, -0.0000995652174, +0.0001193478261, +0.0002786956522, \n    +0.0004180434783, +0.0005241304348, +0.0005706521739, +0.0005971739130, \n    +0.0005506521739, +0.0003980434783, +0.0001923913043, -0.0000465217391, \n    -0.0002389130435, -0.0002919565217, -0.0002321739130, -0.0000530434783, \n    +0.0001526086957, +0.0002984782609, +0.0004113043478, +0.0004378260870, \n    +0.0003052173913, +0.0002189130435, +0.0002719565217, +0.0003647826087, \n    +0.0004578260870, +0.0004578260870, +0.0003052173913, +0.0000663043478, \n    -0.0001060869565, -0.0001128260870, +0.0000000000000, +0.0001723913043, \n    +0.0003052173913, +0.0002852173913, +0.0001856521739, +0.0001393478261, \n    +0.0001526086957, +0.0001458695652, +0.0000928260870, +0.0000597826087, \n    +0.0000265217391, -0.0000530434783, -0.0001060869565, -0.0000795652174, \n    +0.0000000000000, +0.0000995652174, +0.0000795652174, -0.0000863043478, \n    -0.0002786956522, -0.0003782608696, -0.0002654347826, +0.0000530434783, \n    +0.0004047826087, +0.0007032608696, +0.0008491304348, +0.0006900000000, \n    +0.0002123913043, -0.0003715217391, -0.0007430434783, -0.0006965217391, \n    -0.0003184782609, +0.0001260869565, +0.0004445652174, +0.0005706521739, \n    +0.0004908695652, +0.0002521739130, +0.0000397826087, +0.0000465217391, \n    +0.0001326086957, +0.0000995652174, +0.0000397826087, +0.0000730434783, \n    +0.0001458695652, +0.0002786956522, +0.0003847826087, +0.0003847826087, \n    +0.0003715217391, +0.0003184782609, +0.0001393478261, -0.0000397826087, \n    -0.0001193478261, -0.0000265217391, +0.0001723913043, +0.0003052173913, \n    +0.0002719565217, +0.0001326086957, +0.0000530434783, +0.0000795652174, \n    +0.0001128260870, +0.0000863043478, +0.0000928260870, +0.0002056521739, \n    +0.0003382608696, +0.0004047826087, +0.0004445652174, +0.0004510869565, \n    +0.0004313043478, +0.0004047826087, +0.0003117391304, +0.0001723913043, \n    +0.0000265217391, -0.0001326086957, -0.0002123913043, -0.0001723913043, \n    +0.0000132608696, +0.0003317391304, +0.0005771739130, +0.0006434782609, \n    +0.0005706521739, +0.0003715217391, +0.0001458695652, -0.0000332608696, \n    -0.0001856521739, -0.0002389130435, -0.0001856521739, -0.0000730434783, \n    +0.0001060869565, +0.0003515217391, +0.0005173913043, +0.0005173913043, \n    +0.0003515217391, +0.0001128260870, -0.0001458695652, -0.0003782608696, \n    -0.0004710869565, -0.0003515217391, -0.0001193478261, +0.0001326086957, \n    +0.0003382608696, +0.0004313043478, +0.0003450000000, +0.0001458695652, \n    +0.0000000000000, -0.0000332608696, -0.0000530434783, -0.0000730434783, \n    -0.0000928260870, -0.0000332608696, +0.0001458695652, +0.0002984782609, \n    +0.0002852173913, +0.0001591304348, +0.0000000000000, -0.0001658695652, \n    -0.0002786956522, -0.0002123913043, +0.0000000000000, +0.0001658695652, \n    +0.0003117391304, +0.0003782608696, +0.0002521739130, +0.0000132608696, \n    -0.0000995652174, +0.0000067391304, +0.0001923913043, +0.0002389130435, \n    +0.0001060869565, -0.0000795652174, -0.0002256521739, -0.0002056521739, \n    -0.0000132608696, +0.0001791304348, +0.0002586956522, +0.0001991304348, \n    +0.0000663043478, -0.0000132608696, -0.0000200000000, +0.0000200000000, \n    +0.0000928260870, +0.0001260869565, +0.0000863043478, +0.0000795652174, \n    +0.0001326086957, +0.0001591304348, +0.0000863043478, -0.0000465217391, \n    -0.0001458695652, -0.0001591304348, -0.0001260869565, -0.0000663043478, \n    +0.0000132608696, +0.0000795652174, +0.0001393478261, +0.0002256521739, \n    +0.0003184782609, +0.0003382608696, +0.0002521739130, +0.0001060869565, \n    +0.0000000000000, -0.0000730434783, -0.0001393478261, -0.0001591304348, \n    -0.0000928260870, +0.0000265217391, +0.0001856521739, +0.0003184782609, \n    +0.0003847826087, +0.0003782608696, +0.0002786956522, +0.0001193478261, \n    -0.0001260869565, -0.0003515217391, -0.0004180434783, -0.0003450000000, \n    -0.0001856521739, -0.0000132608696, +0.0000465217391, +0.0000465217391, \n    +0.0000000000000, -0.0001128260870, -0.0001991304348, -0.0001856521739, \n    -0.0000663043478, +0.0000863043478, +0.0001723913043, +0.0002189130435, \n    +0.0002123913043, +0.0000863043478, -0.0001128260870, -0.0002852173913, \n    -0.0003450000000, -0.0002654347826, -0.0001723913043, -0.0001128260870, \n    -0.0000465217391, +0.0000132608696, +0.0000663043478, +0.0001128260870, \n    +0.0000863043478, -0.0000332608696, -0.0001923913043, -0.0003647826087, \n    -0.0004710869565, -0.0004510869565, -0.0003052173913, -0.0000530434783, \n    +0.0001723913043, +0.0002454347826, +0.0002389130435, +0.0001658695652, \n    -0.0000067391304, -0.0002389130435, -0.0004245652174, -0.0005108695652, \n    -0.0004445652174, -0.0002521739130, -0.0000265217391, +0.0000995652174, \n    +0.0000332608696, -0.0001128260870, -0.0002586956522, -0.0003582608696, \n    -0.0003184782609, -0.0001723913043, -0.0000200000000, +0.0000663043478, \n    +0.0000397826087, -0.0000200000000, -0.0000397826087, -0.0000332608696, \n    -0.0000200000000, -0.0000928260870, -0.0002586956522, -0.0003915217391, \n    -0.0004245652174, -0.0003317391304, -0.0000928260870, +0.0001658695652, \n    +0.0002984782609, +0.0002189130435, -0.0000730434783, -0.0003847826087, \n    -0.0004643478261, -0.0003117391304, -0.0000928260870, +0.0000200000000, \n    +0.0000000000000, -0.0000795652174, -0.0001326086957, -0.0001856521739, \n    -0.0002256521739, -0.0002056521739, -0.0001591304348, -0.0001923913043, \n    -0.0002786956522, -0.0002919565217, -0.0001923913043, -0.0000597826087, \n    +0.0000200000000, +0.0000795652174, +0.0000597826087, -0.0000730434783, \n    -0.0002256521739, -0.0002786956522, -0.0002719565217, -0.0002654347826, \n    -0.0002321739130, -0.0001458695652, -0.0000730434783, -0.0000863043478, \n    -0.0001591304348, -0.0001923913043, -0.0001856521739, -0.0001326086957, \n    -0.0000530434783, +0.0000067391304, +0.0000397826087, +0.0000465217391, \n    +0.0000132608696, -0.0000928260870, -0.0002189130435, -0.0003184782609, \n    -0.0003715217391, -0.0003184782609, -0.0001723913043, +0.0000000000000, \n    +0.0000795652174, +0.0000332608696, -0.0000730434783, -0.0001658695652, \n    -0.0001923913043, -0.0001723913043, -0.0001591304348, -0.0001393478261, \n    -0.0000730434783, -0.0000265217391, -0.0000663043478, -0.0001591304348, \n    -0.0002056521739, -0.0001526086957, -0.0000663043478, -0.0000332608696, \n    -0.0000265217391, +0.0000000000000, +0.0000265217391, +0.0000397826087, \n    +0.0000465217391, +0.0000397826087, +0.0000332608696, +0.0000000000000, \n    -0.0000928260870, -0.0002321739130, -0.0003582608696, -0.0004180434783, \n    -0.0003515217391, -0.0001658695652, +0.0000265217391, +0.0001791304348, \n    +0.0002389130435, +0.0001326086957, -0.0000730434783, -0.0002321739130, \n    -0.0002454347826, -0.0001791304348, -0.0001260869565, -0.0001060869565, \n    -0.0001326086957, -0.0002056521739, -0.0002521739130, -0.0002389130435, \n    -0.0002056521739, -0.0001526086957, -0.0000795652174, +0.0000000000000, \n    +0.0000200000000, +0.0000265217391, +0.0000530434783, +0.0000795652174, \n    +0.0000265217391, -0.0001193478261, -0.0003117391304, -0.0004578260870, \n    -0.0005241304348, -0.0004776086957, -0.0003450000000, -0.0002321739130, \n    -0.0001526086957, -0.0000597826087, +0.0000200000000, +0.0000397826087, \n    -0.0000067391304, -0.0000597826087, -0.0000132608696, +0.0000597826087, \n    +0.0000663043478, +0.0000132608696, -0.0000530434783, -0.0000530434783, \n    -0.0000200000000, -0.0000332608696, -0.0000465217391, -0.0000530434783, \n    -0.0000530434783, -0.0000597826087, -0.0001393478261, -0.0002454347826, \n    -0.0003117391304, -0.0002719565217, -0.0001393478261, -0.0000795652174, \n    -0.0001326086957, -0.0001991304348, -0.0002056521739, -0.0001193478261, \n    -0.0000132608696, +0.0001260869565, +0.0003250000000, +0.0003715217391, \n    +0.0002321739130, +0.0000265217391, -0.0001260869565, -0.0001923913043, \n    -0.0001458695652, -0.0000530434783, +0.0000000000000, -0.0000265217391, \n    -0.0000730434783, -0.0000663043478, -0.0000530434783, -0.0000530434783, \n    -0.0000597826087, -0.0000730434783, -0.0001326086957, -0.0001856521739, \n    -0.0001723913043, -0.0001393478261, -0.0000928260870, +0.0000000000000, \n    +0.0000663043478, +0.0001060869565, +0.0001458695652, +0.0001591304348, \n    +0.0001723913043, +0.0001526086957, +0.0000863043478, +0.0000265217391, \n    +0.0000000000000, +0.0000067391304, +0.0000067391304, -0.0000465217391, \n    -0.0001260869565, -0.0001326086957, -0.0000928260870, -0.0000397826087, \n    +0.0000000000000, +0.0000265217391, +0.0000530434783, +0.0000663043478, \n    +0.0000397826087, -0.0000132608696, -0.0000928260870, -0.0001658695652, \n    -0.0001658695652, -0.0000995652174, -0.0000332608696, +0.0000132608696, \n    +0.0000200000000, -0.0000067391304, -0.0000200000000, -0.0000200000000, \n    +0.0000000000000, +0.0000067391304, -0.0000332608696, -0.0001128260870, \n    -0.0001723913043, -0.0001458695652, -0.0000397826087, +0.0000795652174, \n    +0.0001393478261, +0.0001326086957, +0.0000795652174, +0.0000397826087, \n    +0.0000530434783, +0.0000663043478, +0.0000597826087, +0.0000530434783, \n    +0.0000200000000, +0.0000000000000, +0.0000132608696, +0.0000397826087, \n    +0.0000995652174, +0.0001393478261, +0.0000795652174, -0.0000332608696, \n    -0.0001260869565, -0.0001458695652, -0.0000863043478, +0.0000200000000, \n    +0.0001260869565, +0.0001591304348, +0.0000663043478, -0.0000265217391, \n    +0.0000000000000, +0.0001060869565, +0.0002256521739, +0.0003117391304, \n    +0.0003184782609, +0.0001991304348, +0.0000265217391, -0.0000995652174, \n    -0.0001658695652, -0.0002321739130, -0.0002321739130, -0.0001393478261, \n    +0.0000000000000, +0.0000795652174, +0.0001060869565, +0.0000995652174, \n    +0.0000730434783, +0.0000730434783, +0.0000863043478, +0.0001060869565, \n    +0.0001193478261, +0.0001326086957, +0.0001060869565, +0.0000332608696, \n    +0.0000000000000, -0.0000132608696, -0.0000795652174, -0.0001526086957, \n    -0.0001326086957, -0.0000597826087, +0.0000132608696, +0.0000795652174, \n    +0.0000795652174, +0.0000663043478, +0.0000530434783, +0.0000530434783, \n    +0.0000863043478, +0.0001260869565, +0.0001260869565, +0.0000995652174, \n    +0.0000928260870, +0.0000928260870, +0.0000332608696, -0.0000795652174, \n    -0.0001393478261, -0.0001326086957, -0.0000863043478, +0.0000000000000, \n    +0.0001060869565, +0.0001856521739, +0.0002189130435, +0.0001723913043, \n    +0.0000863043478, +0.0000597826087, +0.0001193478261, +0.0001458695652, \n    +0.0001326086957, +0.0001260869565, +0.0001260869565, +0.0000863043478, \n    +0.0000597826087, +0.0000928260870, +0.0001723913043, +0.0002256521739, \n    +0.0002321739130, +0.0001591304348, +0.0000530434783, +0.0000397826087, \n    +0.0001260869565, +0.0001791304348, +0.0000995652174, -0.0000795652174, \n    -0.0002256521739, -0.0002189130435, -0.0000663043478, +0.0001591304348, \n    +0.0003117391304, +0.0002654347826, +0.0000863043478, -0.0000397826087, \n    -0.0000597826087, +0.0000000000000, +0.0000397826087, +0.0000597826087, \n    +0.0000397826087, -0.0000265217391, -0.0001128260870, -0.0001458695652, \n    -0.0000928260870, +0.0000000000000, +0.0000597826087, +0.0000663043478, \n    +0.0000465217391, +0.0000397826087, +0.0000530434783, +0.0001060869565, \n    +0.0001658695652, +0.0001791304348, +0.0001526086957, +0.0001591304348, \n    +0.0002056521739, +0.0002321739130, +0.0001991304348, +0.0001326086957, \n    +0.0000265217391, -0.0000863043478, -0.0001526086957, -0.0000995652174, \n    +0.0000000000000, +0.0000863043478, +0.0000795652174, +0.0000200000000, \n    +0.0000000000000, +0.0000000000000, -0.0000332608696, -0.0001193478261, \n    -0.0002256521739, -0.0002719565217, -0.0001856521739, +0.0000000000000, \n    +0.0002123913043, +0.0003117391304, +0.0002719565217, +0.0001591304348, \n    +0.0000067391304, -0.0001128260870, -0.0001526086957, -0.0000928260870, \n    +0.0000332608696, +0.0001723913043, +0.0002389130435, +0.0002321739130, \n    +0.0001791304348, +0.0001193478261, +0.0000597826087, +0.0000000000000, \n    -0.0000863043478, -0.0001526086957, -0.0001526086957, -0.0000795652174, \n    +0.0000397826087, +0.0001658695652, +0.0002454347826, +0.0002586956522, \n    +0.0001923913043, +0.0000663043478, +0.0000000000000, +0.0000132608696, \n    +0.0000863043478, +0.0001393478261, +0.0001526086957, +0.0001193478261, \n    +0.0000530434783, -0.0000132608696, -0.0000067391304, +0.0000332608696, \n    +0.0000332608696, -0.0000067391304, -0.0000132608696, +0.0000265217391, \n    +0.0001526086957, +0.0002984782609, +0.0003782608696, +0.0003515217391, \n    +0.0002454347826, +0.0000663043478, -0.0001128260870, -0.0001856521739, \n    -0.0000928260870, +0.0000928260870, +0.0002389130435, +0.0002521739130, \n    +0.0001591304348, +0.0000397826087, -0.0000200000000, +0.0000000000000, \n    +0.0001128260870, +0.0002454347826, +0.0003250000000, +0.0002919565217, \n    +0.0001723913043, +0.0000000000000, -0.0001260869565, -0.0000863043478, \n    +0.0000597826087, +0.0002389130435, +0.0003515217391, +0.0003515217391, \n    +0.0003052173913, +0.0002389130435, +0.0001791304348, +0.0001723913043, \n    +0.0001856521739, +0.0001791304348, +0.0001193478261, +0.0000132608696, \n    -0.0000597826087, -0.0000730434783, -0.0000265217391, +0.0000530434783, \n    +0.0001326086957, +0.0001923913043, +0.0001658695652, +0.0000200000000, \n    -0.0001591304348, -0.0002454347826, -0.0001856521739, +0.0000200000000, \n    +0.0002654347826, +0.0004245652174, +0.0003980434783, +0.0002189130435, \n    +0.0000067391304, -0.0000928260870, -0.0000730434783, -0.0000067391304, \n    +0.0000067391304, +0.0000067391304, +0.0000332608696, +0.0000863043478, \n    +0.0001791304348, +0.0002719565217, +0.0002984782609, +0.0002123913043, \n    +0.0000597826087, -0.0000597826087, -0.0000928260870, -0.0000200000000, \n    +0.0000863043478, +0.0001458695652, +0.0000928260870, +0.0000000000000, \n    -0.0000663043478, -0.0000397826087, +0.0000397826087, +0.0001060869565, \n    +0.0001060869565, +0.0000332608696, -0.0000863043478, -0.0001591304348, \n    -0.0001193478261, +0.0000067391304, +0.0001326086957, +0.0001526086957, \n    +0.0000928260870, +0.0000132608696, -0.0000265217391, -0.0000067391304, \n    +0.0000332608696, +0.0000332608696, -0.0000265217391, -0.0001128260870, \n    -0.0001591304348, -0.0001326086957, -0.0000730434783, +0.0000000000000, \n    +0.0000863043478, +0.0001260869565, +0.0000597826087, -0.0000265217391, \n    -0.0000995652174, -0.0001458695652, -0.0001658695652, -0.0001856521739, \n    -0.0001991304348, -0.0001856521739, -0.0001260869565, -0.0000265217391, \n    +0.0000265217391, +0.0000265217391, +0.0000132608696, -0.0000067391304, \n    -0.0000200000000, -0.0000132608696, +0.0000000000000, +0.0000067391304, \n    -0.0000200000000, -0.0001193478261, -0.0002056521739, -0.0002389130435, \n    -0.0001856521739, -0.0000597826087, +0.0000265217391, +0.0000530434783, \n    +0.0000200000000, -0.0000332608696, -0.0000863043478, -0.0000863043478, \n    -0.0000397826087, +0.0000067391304, +0.0000200000000, +0.0000000000000, \n    -0.0000730434783, -0.0001458695652, -0.0001393478261, -0.0000795652174, \n    -0.0000132608696, +0.0000067391304, -0.0000332608696, -0.0001060869565, \n    -0.0001723913043, -0.0002123913043, -0.0002123913043, -0.0001856521739, \n    -0.0001393478261, -0.0000730434783, -0.0000200000000, +0.0000000000000, \n    -0.0000132608696, -0.0000332608696, -0.0000200000000, +0.0000000000000, \n    -0.0000265217391, -0.0000995652174, -0.0001658695652, -0.0001591304348, \n    -0.0000597826087, +0.0000597826087, +0.0001193478261, +0.0001128260870, \n    +0.0000597826087, -0.0000200000000, -0.0001060869565, -0.0001060869565, \n    +0.0000067391304, +0.0001060869565, +0.0000928260870, +0.0000000000000, \n    -0.0001326086957, -0.0001991304348, -0.0001591304348, -0.0000200000000, \n    +0.0001193478261, +0.0002389130435, +0.0002786956522, +0.0001991304348, \n    +0.0000465217391, -0.0000200000000, -0.0000132608696, +0.0000000000000, \n    +0.0000067391304, +0.0000265217391, +0.0000332608696, +0.0000132608696, \n    +0.0000200000000, +0.0000530434783, +0.0000730434783, +0.0000597826087, \n    +0.0000332608696, +0.0000067391304, +0.0000200000000, +0.0000730434783, \n    +0.0001658695652, +0.0002321739130, +0.0001723913043, +0.0000465217391, \n    -0.0000730434783, -0.0001393478261, -0.0000863043478, +0.0000200000000, \n    +0.0000465217391, -0.0000265217391, -0.0001591304348, -0.0002189130435, \n    -0.0001193478261, +0.0000465217391, +0.0002056521739, +0.0003052173913, \n    +0.0002719565217, +0.0001260869565, -0.0000332608696, -0.0001193478261, \n    -0.0000730434783, +0.0000200000000, +0.0000597826087, +0.0000200000000, \n    -0.0000530434783, -0.0000995652174, -0.0000730434783, -0.0000132608696, \n    +0.0000530434783, +0.0001128260870, +0.0001128260870, +0.0000530434783, \n    -0.0000200000000, -0.0000597826087, -0.0000265217391, +0.0000332608696, \n    +0.0000730434783, +0.0000995652174, +0.0001060869565, +0.0000465217391, \n    -0.0000597826087, -0.0001791304348, -0.0002189130435, -0.0001260869565, \n    +0.0000530434783, +0.0002321739130, +0.0002654347826, +0.0001458695652, \n    -0.0000200000000, -0.0001791304348, -0.0002586956522, -0.0001991304348, \n    -0.0000795652174, +0.0000132608696, +0.0000397826087, +0.0000067391304, \n    -0.0000465217391, -0.0000863043478, -0.0000995652174, -0.0000863043478, \n    -0.0000597826087, -0.0000332608696, -0.0000132608696, -0.0000265217391, \n    -0.0000332608696, -0.0000132608696, -0.0000067391304, -0.0000265217391, \n    -0.0000200000000, +0.0000067391304, +0.0000200000000, +0.0000265217391, \n    +0.0000200000000, +0.0000000000000, -0.0000597826087, -0.0001326086957, \n    -0.0001723913043, -0.0001591304348, -0.0000928260870, +0.0000000000000, \n    +0.0000995652174, +0.0001326086957, +0.0000730434783, -0.0000332608696, \n    -0.0001128260870, -0.0000928260870, -0.0000132608696, +0.0000265217391, \n    +0.0000465217391, +0.0000332608696, -0.0000132608696, -0.0000863043478, \n    -0.0001193478261, -0.0000995652174, -0.0000663043478, -0.0000530434783, \n    -0.0000530434783, -0.0000663043478, -0.0000928260870, -0.0000863043478, \n    -0.0000332608696, +0.0000132608696, +0.0000200000000, +0.0000000000000, \n    -0.0000465217391, -0.0000795652174, -0.0001060869565, -0.0001193478261, \n    -0.0001393478261, -0.0001393478261, -0.0000730434783, +0.0000000000000, \n    +0.0000265217391, +0.0000067391304, -0.0000465217391, -0.0001260869565, \n    -0.0001591304348, -0.0001260869565, -0.0000663043478, -0.0000200000000, \n    +0.0000067391304, +0.0000265217391, +0.0000067391304, -0.0000397826087, \n    -0.0000795652174, -0.0000995652174, -0.0000928260870, -0.0000663043478, \n    +0.0000067391304, +0.0001060869565, +0.0001526086957, +0.0001326086957, \n    +0.0000465217391, -0.0000465217391, -0.0001060869565, -0.0000863043478, \n    -0.0000465217391, -0.0000530434783, -0.0000995652174, -0.0001393478261, \n    -0.0001393478261, -0.0000928260870, -0.0000265217391, +0.0000265217391, \n    +0.0000067391304, -0.0000663043478, -0.0001458695652, -0.0001658695652, \n    -0.0001193478261, -0.0000332608696, +0.0000332608696, +0.0000530434783, \n    +0.0000265217391, -0.0000200000000, -0.0000663043478, -0.0000863043478, \n    -0.0000863043478, -0.0000795652174, -0.0000928260870, -0.0000995652174, \n    -0.0000795652174, +0.0000000000000, +0.0001128260870, +0.0001723913043, \n    +0.0001393478261, +0.0000597826087, -0.0000332608696, -0.0001260869565, \n    -0.0001591304348, -0.0001193478261, -0.0000332608696, +0.0000332608696, \n    +0.0000265217391, -0.0000132608696, -0.0000530434783, -0.0000597826087, \n    -0.0000200000000, +0.0000332608696, +0.0000663043478, +0.0000597826087, \n    -0.0000067391304, -0.0001128260870, -0.0001923913043, -0.0002056521739, \n    -0.0001393478261, -0.0000132608696, +0.0000928260870, +0.0001193478261, \n    +0.0000465217391, -0.0000597826087, -0.0001458695652, -0.0001723913043, \n    -0.0001260869565, -0.0000200000000, +0.0000795652174, +0.0001128260870, \n    +0.0000465217391, -0.0000597826087, -0.0001393478261, -0.0001393478261, \n    -0.0000863043478, -0.0000265217391, +0.0000397826087, +0.0000795652174, \n    +0.0000332608696, +0.0000000000000, -0.0000132608696, -0.0000200000000, \n    -0.0000132608696, -0.0000265217391, -0.0000597826087, -0.0001128260870, \n    -0.0001723913043, -0.0001658695652, -0.0000928260870, +0.0000000000000, \n    +0.0000730434783, +0.0001060869565, +0.0001128260870, +0.0000863043478, \n    +0.0000265217391, -0.0000597826087, -0.0001526086957, -0.0002256521739, \n    -0.0002454347826, -0.0001991304348, -0.0000863043478, +0.0000397826087, \n    +0.0001326086957, +0.0001260869565, +0.0000200000000, -0.0000730434783, \n    -0.0000663043478, +0.0000132608696, +0.0001193478261, +0.0001791304348, \n    +0.0001326086957, +0.0000132608696, -0.0001128260870, -0.0001856521739, \n    -0.0001591304348, -0.0000465217391, +0.0000795652174, +0.0001856521739, \n    +0.0002056521739, +0.0001591304348, +0.0000928260870, +0.0000397826087, \n    +0.0000067391304, -0.0000132608696, -0.0000132608696, -0.0000067391304, \n    -0.0000200000000, -0.0000397826087, -0.0000067391304, +0.0000795652174, \n    +0.0001791304348, +0.0002123913043, +0.0001060869565, -0.0000795652174, \n    -0.0002256521739, -0.0002454347826, -0.0001393478261, +0.0000200000000, \n    +0.0001393478261, +0.0001658695652, +0.0001260869565, +0.0000597826087, \n    +0.0000397826087, +0.0000795652174, +0.0001128260870, +0.0001060869565, \n    +0.0000465217391, -0.0000132608696, -0.0000265217391, +0.0000000000000, \n    +0.0000332608696, +0.0000597826087, +0.0000465217391, +0.0000067391304, \n    +0.0000000000000, +0.0000200000000, +0.0000397826087, +0.0000397826087, \n    +0.0000000000000, -0.0000397826087, -0.0000465217391, -0.0000332608696, \n    -0.0000067391304, +0.0000200000000, +0.0000067391304, -0.0000132608696, \n    -0.0000332608696, -0.0000200000000, +0.0000067391304, +0.0000265217391, \n    +0.0000200000000, +0.0000132608696, -0.0000067391304, -0.0000397826087, \n    -0.0000663043478, -0.0000663043478, +0.0000000000000, +0.0001128260870, \n    +0.0001923913043, +0.0001856521739, +0.0000863043478, -0.0000332608696, \n    -0.0001128260870, -0.0001393478261, -0.0000663043478, +0.0000663043478, \n    +0.0001723913043, +0.0001923913043, +0.0001260869565, +0.0000530434783, \n    +0.0000200000000, +0.0000132608696, +0.0000132608696, -0.0000200000000, \n    -0.0000995652174, -0.0001591304348, -0.0001658695652, -0.0001193478261, \n    -0.0000265217391, +0.0000730434783, +0.0001326086957, +0.0001393478261, \n    +0.0000995652174, +0.0000730434783, +0.0000795652174, +0.0000928260870, \n    +0.0000730434783, +0.0000332608696, -0.0000200000000, -0.0000863043478, \n    -0.0001060869565, -0.0000730434783, +0.0000132608696, +0.0001193478261, \n    +0.0001591304348, +0.0001458695652, +0.0000795652174, -0.0000332608696, \n    -0.0001260869565, -0.0001393478261, -0.0001060869565, -0.0000530434783, \n    +0.0000000000000, +0.0000663043478, +0.0001326086957, +0.0001393478261, \n    +0.0001128260870, +0.0001128260870, +0.0001326086957, +0.0001393478261, \n    +0.0001128260870, +0.0000530434783, +0.0000000000000, -0.0000067391304, \n    +0.0000000000000, +0.0000265217391, +0.0000663043478, +0.0000663043478, \n    +0.0000465217391, +0.0000200000000, +0.0000132608696, +0.0000332608696, \n    +0.0000597826087, +0.0000863043478, +0.0000795652174, +0.0000200000000, \n    -0.0000265217391, -0.0000132608696, +0.0000200000000, +0.0000465217391, \n    +0.0000663043478, +0.0000397826087, -0.0000397826087, -0.0001591304348, \n    -0.0002521739130, -0.0002521739130, -0.0001393478261, +0.0000397826087, \n    +0.0002321739130, +0.0003317391304, +0.0003117391304, +0.0002189130435, \n    +0.0000863043478, -0.0000397826087, -0.0001326086957, -0.0001326086957, \n    -0.0000795652174, +0.0000000000000, +0.0000663043478, +0.0001060869565, \n    +0.0001060869565, +0.0000730434783, +0.0000067391304, -0.0000465217391, \n    -0.0000597826087, -0.0000465217391, +0.0000000000000, +0.0000863043478, \n    +0.0001723913043, +0.0002123913043, +0.0001526086957, +0.0000530434783, \n    -0.0000200000000, -0.0000730434783, -0.0000795652174, -0.0000397826087, \n    +0.0000200000000, +0.0000995652174, +0.0001260869565, +0.0000863043478, \n    +0.0000265217391, -0.0000332608696, -0.0000730434783, -0.0000530434783, \n    +0.0000000000000, +0.0000597826087, +0.0000795652174, +0.0000663043478, \n    +0.0000332608696, +0.0000000000000, -0.0000132608696, -0.0000067391304, \n    +0.0000000000000, +0.0000265217391, +0.0000397826087, +0.0000332608696, \n    +0.0000132608696, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000\n};\n"
  },
  {
    "path": "impulses/13-fender-superchamp-sm57-off.h",
    "content": "float fender_superchamp_sm57_off[] = {\n    +0.0000000000000, +0.0000657422902, +0.0001240736314, +0.0000874970117, \n    -0.0000437485059, -0.0002041596940, -0.0002918957686, -0.0002699019842, \n    -0.0001458283529, +0.0000291656706, +0.0002115706431, +0.0003136504901, \n    +0.0003136504901, +0.0001895768587, +0.0000000000000, -0.0001824049725, \n    -0.0003064786039, -0.0003136504901, -0.0001969878078, -0.0000074109491, \n    +0.0001969878078, +0.0003428161607, +0.0003719818312, +0.0002773129333, \n    +0.0000874970117, -0.0001166626823, -0.0002918957686, -0.0003573989959, \n    -0.0002918957686, -0.0001094907961, +0.0001094907961, +0.0003136504901, \n    +0.0004305522352, +0.0004085584509, +0.0002773129333, +0.0000657422902, \n    -0.0001458283529, -0.0003064786039, -0.0003573989959, -0.0002844848195, \n    -0.0001240736314, +0.0000729141764, +0.0002553191489, +0.0003502271097, \n    +0.0003428161607, +0.0002335644274, +0.0000729141764, -0.0000874970117, \n    -0.0002041596940, -0.0002407363137, -0.0001824049725, -0.0000657422902, \n    +0.0000657422902, +0.0001824049725, +0.0002335644274, +0.0002189815922, \n    +0.0001532393019, +0.0000657422902, -0.0000145828353, -0.0000583313411, \n    -0.0000583313411, -0.0000291656706, +0.0000074109491, +0.0000511594549, \n    +0.0000803251255, +0.0000874970117, +0.0000874970117, +0.0000874970117, \n    +0.0000949079608, +0.0001020798470, +0.0001020798470, +0.0000874970117, \n    +0.0000437485059, -0.0000074109491, -0.0000583313411, -0.0000729141764, \n    -0.0000365766197, +0.0000437485059, +0.0001678221372, +0.0002844848195, \n    +0.0003428161607, +0.0003064786039, +0.0001749940234, -0.0000074109491, \n    -0.0001895768587, -0.0002990676548, -0.0002918957686, -0.0001386564667, \n    +0.0000874970117, +0.0003356442744, +0.0005034664117, +0.0005180492470, \n    +0.0003573989959, +0.0000657422902, -0.0002407363137, -0.0004743007411, \n    -0.0005326320822, -0.0003719818312, -0.0000437485059, +0.0003356442744, \n    +0.0006492947645, +0.0007587855606, +0.0006201290940, +0.0002627300980, \n    -0.0001895768587, -0.0005909634234, -0.0007879512312, -0.0007004542195, \n    -0.0003428161607, +0.0001678221372, +0.0006638775998, +0.0009703562037, \n    +0.0009849390390, +0.0006858713842, +0.0001678221372, -0.0003865646665, \n    -0.0008097059527, -0.0009483624193, -0.0007513746115, -0.0002844848195, \n    +0.0002918957686, +0.0008097059527, +0.0010798469998, +0.0010141047095, \n    +0.0006421228783, +0.0000803251255, -0.0004668897920, -0.0008391106861, \n    -0.0009046139135, -0.0006492947645, -0.0001604111881, +0.0003939756156, \n    +0.0008242887880, +0.0009995218743, +0.0008536935214, +0.0004523069567, \n    -0.0000657422902, -0.0005398039684, -0.0007951231174, -0.0007659574468, \n    -0.0004597179058, +0.0000000000000, +0.0004743007411, +0.0007951231174, \n    +0.0008608654076, +0.0006567057136, +0.0002553191489, -0.0002041596940, \n    -0.0005835524743, -0.0007587855606, -0.0006784604351, -0.0003719818312, \n    +0.0000511594549, +0.0004597179058, +0.0007296198900, +0.0007879512312, \n    +0.0006275400430, +0.0003064786039, -0.0000657422902, -0.0003939756156, \n    -0.0005835524743, -0.0005835524743, -0.0004159694000, -0.0001166626823, \n    +0.0002115706431, +0.0004960554626, +0.0006638775998, +0.0006712885489, \n    +0.0005180492470, +0.0002407363137, -0.0000803251255, -0.0003719818312, \n    -0.0005617977528, -0.0005763805881, -0.0004159694000, -0.0001094907961, \n    +0.0002627300980, +0.0006127181449, +0.0008242887880, +0.0008242887880, \n    +0.0006055462587, +0.0002115706431, -0.0002481472627, -0.0006421228783, \n    -0.0008391106861, -0.0007733683959, -0.0004305522352, +0.0000874970117, \n    +0.0006421228783, +0.0010358594310, +0.0011307673918, +0.0008682763567, \n    +0.0002918957686, -0.0004085584509, -0.0010212765957, -0.0013205833134, \n    -0.0011745158977, -0.0005981353096, +0.0002189815922, +0.0010358594310, \n    +0.0015467367918, +0.0015830743486, +0.0010798469998, +0.0001969878078, \n    -0.0007733683959, -0.0015321539565, -0.0017946449916, -0.0014444178819, \n    -0.0005689696390, +0.0005398039684, +0.0015393258427, +0.0020719579249, \n    +0.0019187186230, +0.0011161845565, -0.0000949079608, -0.0013131723643, \n    -0.0021157064308, -0.0022032034425, -0.0015175711212, -0.0002699019842, \n    +0.0011090126703, +0.0021522830504, +0.0024731054267, +0.0019478842936, \n    +0.0007222089410, -0.0007733683959, -0.0020353813053, -0.0026337556777, \n    -0.0023346880230, -0.0012548410232, +0.0002553191489, +0.0016853932584, \n    +0.0025608415013, +0.0025825962228, +0.0017437245996, +0.0003210614392, \n    -0.0012110925173, -0.0023564427444, -0.0027504183600, -0.0022615347836, \n    -0.0010578532154, +0.0004305522352, +0.0017291417643, +0.0024001912503, \n    +0.0022397800622, +0.0013277551996, +0.0000000000000, -0.0012914176428, \n    -0.0021231173799, -0.0022469519484, -0.0016633994741, -0.0005909634234, \n    +0.0005835524743, +0.0014809945016, +0.0018238106622, +0.0015321539565, \n    +0.0007222089410, -0.0003064786039, -0.0012328472388, -0.0017583074349, \n    -0.0017437245996, -0.0011890987330, -0.0002918957686, +0.0006638775998, \n    +0.0014006693760, +0.0016708104231, +0.0014006693760, +0.0006858713842, \n    -0.0002481472627, -0.0011235955056, -0.0016925651446, -0.0018020559407, \n    -0.0014518288310, -0.0007805402821, +0.0000145828353, +0.0007222089410, \n    +0.0011890987330, +0.0013205833134, +0.0011307673918, +0.0006492947645, \n    +0.0000074109491, -0.0006858713842, -0.0012694238585, -0.0016342338035, \n    -0.0016196509682, -0.0012402581879, -0.0005252211332, +0.0003865646665, \n    +0.0009337795840, +0.0015976571838, +0.0014080803251, +0.0004743007411, \n    -0.0003719818312, -0.0011161845565, -0.0017874731054, -0.0021157064308, \n    -0.0019333014583, -0.0011965096820, -0.0002041596940, +0.0006201290940, \n    +0.0009629452546, +0.0004451350705, -0.0007076261057, -0.0023638536935, \n    -0.0038448481951, -0.0047786277791, -0.0047274683242, -0.0037499402343, \n    -0.0021377002152, -0.0005981353096, +0.0001458283529, -0.0004085584509, \n    -0.0021522830504, -0.0053695912025, -0.0061647143199, -0.0108995935931, \n    -0.0199244561320, -0.0062450394454, +0.0215075304805, +0.0279567296199, \n    -0.0194135787712, -0.1062459956969, -0.1249813530959, -0.0293210614392, \n    +0.0840016734401, +0.1751386564667, +0.2390482907005, +0.2214219459718, \n    +0.1214501553909, -0.0119136983027, -0.1176930432704, -0.1462553191489, \n    -0.1090621563471, -0.0459113076739, +0.0017071479799, +0.0067922543629, \n    -0.0007805402821, +0.0085868993545, +0.0275847477887, +0.0442699019842, \n    +0.0460133875209, +0.0215804446569, -0.0114979679656, -0.0345957446809, \n    -0.0343841740378, -0.0125484102319, +0.0092216112838, +0.0175094429835, \n    +0.0124754960555, -0.0068651685393, -0.0206538369591, -0.0117750418360, \n    -0.0023638536935, -0.0031006454698, -0.0048735357399, -0.0052309347358, \n    -0.0034872101363, +0.0066827635668, +0.0165902462348, +0.0116729619890, \n    -0.0040781735596, -0.0182756394932, -0.0250313172364, -0.0251479799187, \n    -0.0206758307435, -0.0131247908200, -0.0026191728425, +0.0038811857519, \n    +0.0033193879990, -0.0031955534306, -0.0107317714559, -0.0146569447765, \n    -0.0195158976811, -0.0236158259622, -0.0183923021755, -0.0017508964858, \n    +0.0140368156825, +0.0181879034186, +0.0127673918240, +0.0069234998805, \n    +0.0020719579249, +0.0000291656706, +0.0030203203443, +0.0068360028688, \n    +0.0054790819986, -0.0043409036577, -0.0183777193402, -0.0289782452785, \n    -0.0299923499880, -0.0216899354530, -0.0105933540521, -0.0025388477169, \n    +0.0041876643557, +0.0079813530959, +0.0069600765001, +0.0031152283050, \n    -0.0023638536935, -0.0062961989003, -0.0077989481234, -0.0082295003586, \n    -0.0085943103036, -0.0100241453502, -0.0092799426249, -0.0027066698542, \n    +0.0033779584031, +0.0048589529046, +0.0029548171169, -0.0025608415013, \n    -0.0073832177863, -0.0107901027970, -0.0131322017691, -0.0108778388716, \n    -0.0060846282572, -0.0013860865408, +0.0037133636146, +0.0057999043749, \n    +0.0032684676070, -0.0018166387760, -0.0072079847000, -0.0113227348793, \n    -0.0148611044705, -0.0170425531915, -0.0143287114511, -0.0060554625867, \n    +0.0043263208224, +0.0121910112360, +0.0147736074588, +0.0122201769065, \n    +0.0050267750418, -0.0044867320105, -0.0116875448243, -0.0157219698781, \n    -0.0164370069328, -0.0129278030122, -0.0065369352140, +0.0011307673918, \n    +0.0080396844370, +0.0120086062634, +0.0115562993067, +0.0065661008845, \n    +0.0005180492470, -0.0028087497012, -0.0026555103992, +0.0001749940234, \n    +0.0050922782692, +0.0098491513268, +0.0115562993067, +0.0089954578054, \n    +0.0046108056419, -0.0004085584509, -0.0045378914655, -0.0059313889553, \n    -0.0061063829787, -0.0062742051159, -0.0060626344729, -0.0054644991633, \n    -0.0040927563949, -0.0029693999522, -0.0022689457327, -0.0005543868037, \n    +0.0010212765957, +0.0015175711212, +0.0007951231174, -0.0006347119292, \n    -0.0011090126703, -0.0012768348076, -0.0019916327994, -0.0008828591920, \n    +0.0008900310782, +0.0015759024623, +0.0020719579249, +0.0022543628974, \n    +0.0017437245996, +0.0013060004781, +0.0015393258427, +0.0034508725795, \n    +0.0063908677982, +0.0082732488645, +0.0081274205116, +0.0071788190294, \n    +0.0065878556060, +0.0057635668181, +0.0035092039206, -0.0000511594549, \n    -0.0036332775520, -0.0057489839828, -0.0054716710495, -0.0025608415013, \n    +0.0007076261057, +0.0029619890031, +0.0057344011475, +0.0082220894095, \n    +0.0090903657662, +0.0097616543151, +0.0108778388716, +0.0117824527851, \n    +0.0114688022950, +0.0089005498446, +0.0054133397083, +0.0021231173799, \n    +0.0005763805881, +0.0022981114033, +0.0055300023906, +0.0075802055941, \n    +0.0074195553431, +0.0051580205594, +0.0034726273010, +0.0033633755678, \n    +0.0034434616304, +0.0041219220655, +0.0045670571360, +0.0034946210853, \n    +0.0022323691131, +0.0010432703801, +0.0000949079608, +0.0003136504901, \n    +0.0008171169017, +0.0013423380349, +0.0023272770739, +0.0030203203443, \n    +0.0034580444657, +0.0037936887401, +0.0034726273010, +0.0026920870189, \n    +0.0025971790581, +0.0043263208224, +0.0063908677982, +0.0066610088453, \n    +0.0053987568731, +0.0042825723165, +0.0035749462109, +0.0022761176189, \n    -0.0003136504901, -0.0026409275639, -0.0030203203443, -0.0012182644035, \n    +0.0021522830504, +0.0063545302415, +0.0096155868994, +0.0099949796797, \n    +0.0065369352140, +0.0009120248625, -0.0033122161128, -0.0043409036577, \n    -0.0017654793211, +0.0030640688501, +0.0070109968922, +0.0083024145350, \n    +0.0065149414296, +0.0024367678699, -0.0008462825723, -0.0025754243366, \n    -0.0036696151088, -0.0033267989481, -0.0017217308152, +0.0001678221372, \n    +0.0019916327994, +0.0036478603873, +0.0053695912025, +0.0062670332297, \n    +0.0053184317475, +0.0038010996892, +0.0023638536935, +0.0009120248625, \n    +0.0002773129333, +0.0004743007411, +0.0002041596940, -0.0011307673918, \n    -0.0029619890031, -0.0041876643557, -0.0038010996892, -0.0018969639015, \n    +0.0002844848195, +0.0016414056897, +0.0017145589290, +0.0010578532154, \n    +0.0009775280899, +0.0009703562037, +0.0006784604351, -0.0001094907961, \n    -0.0014809945016, -0.0022106143916, -0.0022909395171, -0.0022543628974, \n    -0.0019552952426, -0.0018458044466, -0.0015976571838, -0.0009775280899, \n    -0.0003939756156, +0.0002189815922, +0.0002918957686, +0.0000000000000, \n    -0.0001532393019, -0.0002407363137, -0.0002627300980, -0.0004814726273, \n    -0.0010798469998, -0.0015904852976, -0.0020282094191, -0.0020793688740, \n    -0.0013569208702, -0.0001969878078, +0.0006347119292, +0.0006201290940, \n    -0.0001240736314, -0.0007879512312, -0.0012036815683, -0.0015613196271, \n    -0.0017728902701, -0.0020719579249, -0.0023710255797, -0.0019333014583, \n    -0.0010944298350, -0.0002773129333, +0.0002627300980, -0.0000145828353, \n    -0.0005689696390, -0.0003648099450, +0.0004011475018, +0.0010578532154, \n    +0.0005617977528, -0.0009557733684, -0.0025680133875, -0.0036770260579, \n    -0.0035237867559, -0.0023272770739, -0.0009849390390, +0.0001094907961, \n    +0.0008536935214, +0.0013934974898, +0.0010724360507, -0.0009411905331, \n    -0.0036041118814, -0.0058438919436, -0.0072008128138, -0.0072517332058, \n    -0.0055591680612, -0.0021886206072, +0.0014664116663, +0.0036770260579, \n    +0.0038156825245, +0.0024585225914, +0.0005034664117, -0.0015684915133, \n    -0.0030568969639, -0.0037865168539, -0.0037865168539, -0.0030423141286, \n    -0.0022397800622, -0.0014664116663, -0.0006421228783, -0.0006712885489, \n    -0.0014518288310, -0.0022251972269, -0.0027358355247, -0.0025316758307, \n    -0.0015321539565, -0.0002773129333, +0.0007659574468, +0.0011890987330, \n    +0.0010432703801, +0.0008171169017, +0.0005398039684, +0.0001312455176, \n    -0.0000511594549, +0.0000074109491, +0.0000729141764, -0.0000657422902, \n    -0.0006055462587, -0.0012182644035, -0.0010798469998, -0.0001969878078, \n    +0.0009483624193, +0.0021740377719, +0.0027286636385, +0.0021740377719, \n    +0.0010798469998, +0.0000219937844, -0.0005617977528, -0.0006784604351, \n    -0.0010358594310, -0.0016853932584, -0.0023856084150, -0.0028670810423, \n    -0.0026775041836, -0.0020136265838, -0.0013715037055, -0.0006127181449, \n    +0.0004305522352, +0.0018603872819, +0.0028161606503, +0.0028379153717, \n    +0.0022543628974, +0.0010944298350, -0.0002041596940, -0.0006930432704, \n    -0.0002918957686, +0.0007150370547, +0.0017800621563, +0.0021231173799, \n    +0.0017363136505, +0.0007513746115, -0.0005034664117, -0.0014152522113, \n    -0.0013497489840, -0.0004305522352, +0.0003793927803, +0.0006201290940, \n    +0.0007442027253, +0.0008097059527, +0.0006347119292, +0.0003428161607, \n    +0.0001604111881, +0.0004011475018, +0.0009557733684, +0.0012914176428, \n    +0.0013131723643, +0.0008171169017, -0.0003719818312, -0.0014955773368, \n    -0.0018823810662, -0.0015101601721, -0.0002041596940, +0.0015247430074, \n    +0.0029985656228, +0.0039760937126, +0.0037427683481, +0.0024001912503, \n    +0.0008171169017, -0.0007951231174, -0.0017291417643, -0.0014226631604, \n    -0.0004377241214, +0.0005981353096, +0.0011090126703, +0.0009483624193, \n    +0.0004888835764, -0.0004523069567, -0.0016559885250, -0.0021448721014, \n    -0.0017583074349, -0.0008171169017, +0.0003428161607, +0.0013351661487, \n    +0.0016196509682, +0.0010432703801, +0.0002481472627, -0.0002335644274, \n    -0.0003502271097, -0.0001166626823, +0.0001824049725, +0.0002407363137, \n    -0.0002553191489, -0.0010578532154, -0.0013497489840, -0.0009703562037, \n    -0.0002261534784, +0.0005763805881, +0.0011307673918, +0.0015247430074, \n    +0.0017217308152, +0.0014372459957, +0.0007805402821, +0.0000729141764, \n    -0.0002553191489, -0.0001824049725, -0.0000365766197, -0.0000583313411, \n    -0.0001969878078, -0.0002261534784, -0.0001312455176, -0.0000437485059, \n    +0.0001824049725, +0.0006712885489, +0.0011090126703, +0.0009703562037, \n    +0.0001458283529, -0.0007879512312, -0.0014226631604, -0.0016488166388, \n    -0.0011381783409, -0.0001240736314, +0.0007222089410, +0.0011527611762, \n    +0.0011527611762, +0.0003719818312, -0.0008462825723, -0.0016999760937, \n    -0.0018603872819, -0.0015029882859, -0.0009849390390, -0.0006567057136, \n    -0.0004231412862, -0.0001895768587, -0.0000803251255, +0.0000437485059, \n    +0.0002041596940, -0.0000074109491, -0.0006784604351, -0.0015904852976, \n    -0.0023930193641, -0.0025388477169, -0.0021740377719, -0.0016122400191, \n    -0.0007805402821, -0.0002481472627, -0.0001240736314, -0.0000803251255, \n    -0.0003210614392, -0.0005763805881, -0.0006421228783, -0.0009921109252, \n    -0.0016708104231, -0.0024076021994, -0.0027286636385, -0.0023201051877, \n    -0.0014592397801, -0.0004960554626, +0.0002335644274, +0.0005034664117, \n    +0.0003428161607, -0.0001532393019, -0.0007367917762, -0.0010798469998, \n    -0.0011381783409, -0.0009921109252, -0.0007951231174, -0.0006567057136, \n    -0.0006638775998, -0.0007951231174, -0.0009046139135, -0.0009557733684, \n    -0.0010286875448, -0.0013131723643, -0.0018238106622, -0.0021011235955, \n    -0.0021085345446, -0.0019844609132, -0.0015613196271, -0.0010358594310, \n    -0.0008608654076, -0.0009921109252, -0.0010798469998, -0.0010358594310, \n    -0.0012985895290, -0.0017363136505, -0.0019261295721, -0.0020062156347, \n    -0.0019844609132, -0.0017800621563, -0.0012622519723, -0.0006492947645, \n    -0.0003136504901, -0.0000437485059, +0.0002627300980, +0.0004743007411, \n    +0.0007004542195, +0.0005909634234, +0.0001020798470, -0.0004305522352, \n    -0.0010944298350, -0.0014738226153, -0.0013497489840, -0.0011745158977, \n    -0.0009629452546, -0.0008242887880, -0.0010358594310, -0.0013277551996, \n    -0.0015759024623, -0.0017291417643, -0.0015101601721, -0.0011527611762, \n    -0.0008536935214, -0.0004011475018, +0.0000291656706, +0.0004011475018, \n    +0.0005689696390, +0.0001312455176, -0.0008242887880, -0.0015613196271, \n    -0.0017363136505, -0.0016050681329, -0.0014444178819, -0.0010944298350, \n    -0.0005472149175, -0.0002627300980, -0.0001749940234, -0.0000511594549, \n    +0.0000437485059, +0.0003136504901, +0.0007587855606, +0.0006421228783, \n    -0.0000219937844, -0.0007442027253, -0.0012182644035, -0.0012840066938, \n    -0.0013205833134, -0.0014444178819, -0.0015247430074, -0.0016633994741, \n    -0.0016342338035, -0.0013934974898, -0.0013060004781, -0.0012402581879, \n    -0.0012110925173, -0.0012328472388, -0.0010358594310, -0.0005252211332, \n    +0.0000074109491, +0.0002990676548, +0.0004668897920, +0.0005763805881, \n    +0.0003210614392, -0.0002627300980, -0.0006858713842, -0.0007150370547, \n    -0.0005909634234, -0.0005689696390, -0.0005180492470, -0.0003136504901, \n    +0.0000145828353, +0.0003282333254, +0.0004305522352, +0.0003573989959, \n    +0.0001749940234, -0.0000365766197, -0.0002773129333, -0.0003865646665, \n    -0.0002844848195, -0.0001312455176, -0.0000803251255, -0.0001749940234, \n    -0.0003428161607, -0.0003939756156, -0.0003356442744, +0.0000145828353, \n    +0.0008242887880, +0.0014955773368, +0.0015684915133, +0.0009921109252, \n    +0.0002041596940, -0.0003136504901, -0.0005106382979, -0.0004814726273, \n    -0.0000437485059, +0.0005981353096, +0.0011453502271, +0.0015029882859, \n    +0.0015759024623, +0.0011307673918, +0.0002627300980, -0.0004888835764, \n    -0.0007951231174, -0.0006055462587, -0.0000949079608, +0.0004231412862, \n    +0.0007805402821, +0.0006930432704, +0.0003282333254, +0.0002844848195, \n    +0.0004377241214, +0.0003428161607, +0.0000219937844, -0.0002773129333, \n    -0.0004597179058, -0.0004668897920, -0.0001895768587, +0.0004011475018, \n    +0.0008828591920, +0.0010652641645, +0.0010944298350, +0.0009483624193, \n    +0.0008974420273, +0.0011745158977, +0.0013131723643, +0.0010141047095, \n    +0.0005034664117, -0.0000729141764, -0.0004814726273, -0.0005398039684, \n    -0.0002553191489, +0.0003428161607, +0.0010578532154, +0.0015247430074, \n    +0.0017508964858, +0.0018092278269, +0.0016342338035, +0.0013497489840, \n    +0.0011599330624, +0.0010652641645, +0.0009775280899, +0.0007879512312, \n    +0.0005689696390, +0.0004451350705, +0.0003502271097, +0.0003502271097, \n    +0.0005034664117, +0.0006712885489, +0.0008682763567, +0.0011673440115, \n    +0.0012985895290, +0.0011307673918, +0.0007733683959, +0.0004305522352, \n    +0.0003865646665, +0.0007805402821, +0.0014006693760, +0.0019041357877, \n    +0.0018969639015, +0.0014226631604, +0.0009411905331, +0.0006930432704, \n    +0.0006421228783, +0.0006712885489, +0.0007004542195, +0.0007587855606, \n    +0.0007951231174, +0.0008462825723, +0.0008900310782, +0.0007442027253, \n    +0.0006201290940, +0.0007296198900, +0.0008900310782, +0.0009483624193, \n    +0.0009775280899, +0.0009775280899, +0.0009120248625, +0.0006784604351, \n    +0.0003356442744, +0.0000000000000, -0.0001969878078, -0.0000874970117, \n    +0.0002115706431, +0.0005034664117, +0.0007367917762, +0.0009411905331, \n    +0.0009849390390, +0.0008754482429, +0.0008391106861, +0.0008900310782, \n    +0.0010212765957, +0.0012694238585, +0.0013860865408, +0.0012402581879, \n    +0.0009775280899, +0.0006201290940, +0.0003793927803, +0.0003648099450, \n    +0.0003573989959, +0.0004668897920, +0.0005981353096, +0.0005326320822, \n    +0.0003648099450, +0.0003064786039, +0.0003719818312, +0.0003939756156, \n    +0.0003865646665, +0.0004597179058, +0.0004960554626, +0.0004960554626, \n    +0.0005180492470, +0.0004888835764, +0.0004960554626, +0.0005763805881, \n    +0.0006421228783, +0.0004305522352, -0.0000657422902, -0.0004451350705, \n    -0.0004451350705, -0.0001604111881, +0.0002918957686, +0.0008242887880, \n    +0.0011819268468, +0.0012622519723, +0.0009995218743, +0.0005689696390, \n    +0.0002627300980, +0.0000874970117, +0.0000365766197, +0.0001166626823, \n    +0.0001312455176, +0.0000000000000, -0.0002335644274, -0.0004743007411, \n    -0.0006055462587, -0.0005981353096, -0.0004377241214, -0.0001240736314, \n    +0.0001749940234, +0.0003573989959, +0.0003939756156, +0.0002041596940, \n    -0.0000949079608, -0.0002481472627, -0.0002481472627, -0.0003356442744, \n    -0.0005252211332, -0.0007296198900, -0.0007587855606, -0.0003210614392, \n    +0.0005252211332, +0.0014738226153, +0.0021085345446, +0.0018529763328, \n    +0.0005981353096, -0.0009849390390, -0.0020939517093, -0.0021740377719, \n    -0.0013643318193, -0.0002189815922, +0.0007733683959, +0.0012840066938, \n    +0.0011673440115, +0.0006347119292, -0.0000511594549, -0.0007150370547, \n    -0.0010286875448, -0.0009703562037, -0.0007659574468, -0.0004159694000, \n    -0.0000074109491, +0.0003064786039, +0.0005326320822, +0.0005252211332, \n    +0.0002627300980, -0.0000657422902, -0.0004231412862, -0.0006275400430, \n    -0.0006492947645, -0.0005835524743, -0.0003793927803, -0.0002773129333, \n    -0.0003793927803, -0.0003648099450, -0.0002481472627, -0.0001824049725, \n    +0.0000145828353, +0.0001969878078, +0.0002115706431, +0.0002041596940, \n    +0.0000583313411, +0.0000000000000, +0.0001749940234, +0.0001166626823, \n    -0.0002261534784, -0.0006858713842, -0.0010506813292, -0.0008754482429, \n    -0.0005180492470, -0.0003648099450, -0.0001094907961, +0.0002189815922, \n    +0.0004159694000, +0.0004159694000, +0.0002115706431, +0.0002189815922, \n    +0.0003648099450, +0.0001166626823, -0.0001969878078, -0.0000803251255, \n    +0.0002773129333, +0.0005763805881, +0.0007004542195, +0.0006275400430, \n    +0.0003865646665, +0.0000583313411, -0.0003793927803, -0.0006492947645, \n    -0.0002407363137, +0.0005180492470, +0.0009046139135, +0.0009629452546, \n    +0.0009337795840, +0.0008242887880, +0.0006492947645, +0.0003282333254, \n    -0.0001240736314, -0.0005981353096, -0.0007587855606, -0.0004814726273, \n    +0.0000219937844, +0.0003865646665, +0.0004888835764, +0.0004085584509, \n    +0.0003282333254, +0.0003210614392, +0.0003793927803, +0.0004305522352, \n    +0.0004743007411, +0.0005763805881, +0.0007733683959, +0.0008828591920, \n    +0.0007442027253, +0.0005034664117, +0.0002189815922, -0.0000074109491, \n    +0.0000291656706, +0.0003428161607, +0.0007076261057, +0.0008682763567, \n    +0.0008974420273, +0.0009191967487, +0.0006858713842, +0.0003210614392, \n    +0.0002261534784, +0.0003719818312, +0.0005689696390, +0.0006347119292, \n    +0.0004668897920, +0.0004159694000, +0.0004814726273, +0.0004377241214, \n    +0.0004159694000, +0.0004231412862, +0.0003282333254, +0.0002041596940, \n    +0.0001166626823, +0.0001824049725, +0.0003502271097, +0.0004743007411, \n    +0.0007076261057, +0.0009557733684, +0.0010652641645, +0.0011161845565, \n    +0.0010141047095, +0.0007659574468, +0.0004305522352, +0.0000437485059, \n    -0.0001094907961, +0.0000074109491, +0.0002407363137, +0.0004451350705, \n    +0.0004231412862, +0.0002844848195, +0.0002335644274, +0.0002553191489, \n    +0.0003939756156, +0.0007587855606, +0.0011235955056, +0.0012328472388, \n    +0.0009629452546, +0.0004888835764, +0.0002041596940, +0.0002041596940, \n    +0.0002844848195, +0.0002918957686, +0.0001824049725, +0.0000511594549, \n    +0.0000000000000, +0.0000365766197, +0.0002115706431, +0.0003282333254, \n    +0.0003064786039, +0.0003356442744, +0.0004814726273, +0.0006275400430, \n    +0.0006784604351, +0.0005398039684, +0.0002553191489, -0.0000949079608, \n    -0.0003573989959, -0.0002918957686, +0.0000365766197, +0.0003356442744, \n    +0.0004523069567, +0.0003210614392, +0.0000583313411, -0.0001824049725, \n    -0.0003356442744, -0.0002627300980, +0.0000145828353, +0.0003136504901, \n    +0.0005763805881, +0.0007076261057, +0.0006275400430, +0.0004231412862, \n    +0.0001240736314, -0.0002773129333, -0.0006127181449, -0.0007587855606, \n    -0.0006712885489, -0.0004159694000, -0.0001386564667, +0.0000000000000, \n    -0.0000291656706, -0.0001386564667, -0.0001824049725, -0.0001094907961, \n    +0.0000729141764, +0.0002407363137, +0.0001969878078, -0.0000874970117, \n    -0.0004668897920, -0.0006421228783, -0.0005617977528, -0.0003428161607, \n    -0.0000949079608, -0.0000145828353, -0.0001824049725, -0.0003939756156, \n    -0.0004523069567, -0.0003793927803, -0.0003865646665, -0.0004743007411, \n    -0.0004377241214, -0.0003356442744, -0.0002335644274, -0.0001386564667, \n    -0.0001604111881, -0.0002481472627, -0.0003210614392, -0.0004085584509, \n    -0.0004085584509, -0.0003136504901, -0.0002335644274, -0.0002627300980, \n    -0.0004011475018, -0.0005835524743, -0.0006567057136, -0.0005689696390, \n    -0.0003356442744, +0.0000000000000, +0.0002481472627, +0.0002627300980, \n    +0.0001386564667, -0.0001020798470, -0.0004523069567, -0.0006421228783, \n    -0.0006421228783, -0.0005180492470, -0.0003502271097, -0.0002918957686, \n    -0.0002699019842, -0.0002335644274, -0.0002115706431, -0.0001386564667, \n    -0.0000949079608, -0.0001604111881, -0.0002407363137, -0.0002918957686, \n    -0.0003428161607, -0.0003939756156, -0.0004743007411, -0.0003939756156, \n    -0.0001532393019, -0.0000145828353, +0.0000000000000, +0.0000583313411, \n    +0.0001166626823, +0.0000874970117, -0.0000803251255, -0.0004085584509, \n    -0.0007442027253, -0.0009921109252, -0.0010212765957, -0.0007076261057, \n    -0.0002990676548, -0.0001312455176, -0.0002773129333, -0.0006567057136, \n    -0.0008754482429, -0.0007805402821, -0.0005689696390, -0.0003648099450, \n    -0.0002773129333, -0.0003428161607, -0.0004523069567, -0.0005472149175, \n    -0.0004814726273, -0.0001386564667, +0.0001678221372, +0.0001094907961, \n    -0.0003865646665, -0.0008682763567, -0.0009337795840, -0.0006930432704, \n    -0.0003428161607, -0.0000291656706, +0.0000145828353, -0.0002773129333, \n    -0.0007367917762, -0.0009703562037, -0.0008242887880, -0.0005034664117, \n    -0.0002041596940, -0.0001678221372, -0.0003939756156, -0.0005981353096, \n    -0.0006275400430, -0.0004668897920, -0.0002481472627, -0.0001094907961, \n    +0.0000000000000, +0.0000219937844, -0.0001386564667, -0.0003648099450, \n    -0.0005472149175, -0.0007076261057, -0.0008391106861, -0.0008171169017, \n    -0.0006055462587, -0.0004159694000, -0.0002699019842, -0.0001312455176, \n    -0.0000874970117, -0.0001532393019, -0.0003282333254, -0.0005180492470, \n    -0.0005909634234, -0.0005981353096, -0.0005472149175, -0.0005106382979, \n    -0.0006055462587, -0.0006201290940, -0.0004231412862, -0.0001094907961, \n    +0.0001458283529, +0.0001604111881, -0.0000657422902, -0.0004159694000, \n    -0.0007442027253, -0.0008536935214, -0.0007296198900, -0.0004597179058, \n    -0.0000874970117, +0.0001020798470, +0.0000583313411, -0.0000729141764, \n    -0.0004011475018, -0.0008391106861, -0.0010212765957, -0.0008974420273, \n    -0.0006421228783, -0.0003282333254, +0.0000074109491, +0.0002627300980, \n    +0.0002699019842, +0.0000729141764, -0.0001895768587, -0.0003939756156, \n    -0.0004814726273, -0.0005835524743, -0.0006784604351, -0.0006421228783, \n    -0.0005689696390, -0.0005763805881, -0.0006055462587, -0.0005689696390, \n    -0.0004159694000, -0.0002041596940, -0.0000219937844, +0.0001094907961, \n    +0.0002041596940, +0.0001749940234, -0.0000437485059, -0.0003064786039, \n    -0.0003939756156, -0.0003865646665, -0.0003282333254, -0.0002115706431, \n    -0.0001240736314, -0.0000437485059, +0.0000000000000, -0.0000657422902, \n    -0.0001386564667, -0.0001458283529, -0.0001604111881, -0.0001532393019, \n    -0.0001312455176, -0.0000803251255, -0.0000365766197, -0.0000583313411, \n    -0.0001312455176, -0.0002335644274, -0.0003136504901, -0.0002335644274, \n    -0.0001166626823, -0.0001386564667, -0.0002773129333, -0.0003648099450, \n    -0.0003210614392, -0.0002627300980, -0.0002990676548, -0.0003282333254, \n    -0.0002407363137, -0.0000949079608, +0.0000949079608, +0.0002844848195, \n    +0.0003282333254, +0.0001969878078, -0.0000874970117, -0.0003648099450, \n    -0.0004085584509, -0.0002990676548, -0.0001094907961, +0.0000657422902, \n    +0.0000657422902, -0.0001312455176, -0.0003939756156, -0.0005398039684, \n    -0.0004523069567, -0.0002407363137, -0.0000219937844, +0.0000874970117, \n    -0.0000219937844, -0.0002481472627, -0.0004231412862, -0.0004743007411, \n    -0.0003502271097, -0.0001312455176, +0.0000074109491, +0.0000657422902, \n    +0.0000949079608, +0.0000949079608, +0.0000583313411, +0.0000365766197, \n    +0.0000583313411, +0.0001020798470, +0.0001604111881, +0.0002627300980, \n    +0.0003865646665, +0.0004743007411, +0.0004668897920, +0.0003210614392, \n    +0.0000657422902, -0.0001749940234, -0.0003502271097, -0.0004451350705, \n    -0.0004451350705, -0.0002918957686, -0.0000511594549, +0.0000511594549, \n    +0.0000219937844, +0.0000000000000, -0.0000074109491, +0.0000365766197, \n    +0.0001312455176, +0.0001895768587, +0.0001824049725, +0.0000874970117, \n    -0.0000949079608, -0.0003210614392, -0.0004743007411, -0.0004231412862, \n    -0.0001969878078, +0.0000000000000, +0.0000583313411, +0.0000219937844, \n    -0.0000657422902, -0.0001895768587, -0.0002553191489, -0.0001895768587, \n    -0.0000657422902, +0.0000219937844, +0.0000074109491, -0.0001166626823, \n    -0.0002261534784, -0.0001969878078, -0.0000949079608, -0.0000219937844, \n    +0.0000000000000, -0.0000291656706, -0.0000874970117, -0.0000657422902, \n    +0.0000583313411, +0.0001678221372, +0.0001604111881, +0.0000219937844, \n    -0.0001532393019, -0.0003064786039, -0.0003865646665, -0.0002773129333, \n    -0.0000145828353, +0.0002189815922, +0.0003502271097, +0.0003210614392, \n    +0.0001458283529, -0.0000365766197, -0.0001386564667, -0.0000949079608, \n    +0.0000437485059, +0.0002335644274, +0.0003793927803, +0.0003719818312, \n    +0.0002407363137, +0.0000803251255, +0.0000145828353, +0.0000803251255, \n    +0.0001604111881, +0.0002041596940, +0.0001678221372, +0.0000145828353, \n    -0.0000949079608, -0.0001240736314, -0.0001312455176, -0.0000511594549, \n    +0.0000511594549, +0.0001604111881, +0.0002335644274, +0.0001969878078, \n    +0.0001969878078, +0.0002335644274, +0.0001895768587, +0.0001166626823, \n    +0.0000291656706, -0.0000874970117, -0.0001532393019, -0.0001166626823, \n    +0.0000583313411, +0.0003210614392, +0.0004743007411, +0.0005326320822, \n    +0.0005689696390, +0.0005689696390, +0.0005763805881, +0.0005472149175, \n    +0.0004011475018, +0.0002189815922, +0.0000583313411, -0.0000949079608, \n    -0.0002335644274, -0.0002990676548, -0.0002407363137, -0.0001312455176, \n    -0.0000219937844, +0.0001020798470, +0.0002335644274, +0.0003210614392, \n    +0.0003793927803, +0.0004085584509, +0.0004011475018, +0.0003136504901, \n    +0.0001458283529, +0.0000729141764, +0.0001386564667, +0.0002335644274, \n    +0.0002699019842, +0.0002481472627, +0.0002189815922, +0.0002627300980, \n    +0.0003064786039, +0.0002115706431, +0.0000000000000, -0.0001824049725, \n    -0.0002990676548, -0.0003136504901, -0.0002115706431, -0.0000219937844, \n    +0.0001749940234, +0.0003064786039, +0.0003502271097, +0.0003282333254, \n    +0.0002261534784, +0.0001240736314, +0.0000000000000, -0.0001166626823, \n    -0.0000219937844, +0.0002627300980, +0.0005398039684, +0.0006567057136, \n    +0.0005398039684, +0.0002553191489, -0.0000511594549, -0.0003136504901, \n    -0.0003356442744, -0.0000437485059, +0.0003428161607, +0.0006275400430, \n    +0.0006858713842, +0.0004305522352, +0.0000219937844, -0.0002990676548, \n    -0.0003865646665, -0.0001824049725, +0.0001094907961, +0.0002553191489, \n    +0.0002918957686, +0.0003428161607, +0.0004743007411, +0.0006275400430, \n    +0.0006421228783, +0.0005106382979, +0.0003064786039, +0.0001020798470, \n    +0.0000949079608, +0.0003210614392, +0.0006055462587, +0.0006784604351, \n    +0.0004377241214, +0.0001532393019, +0.0000219937844, -0.0000365766197, \n    -0.0000219937844, +0.0001386564667, +0.0002773129333, +0.0002990676548, \n    +0.0002335644274, +0.0000729141764, -0.0000874970117, -0.0001312455176, \n    +0.0000291656706, +0.0004011475018, +0.0007659574468, +0.0008900310782, \n    +0.0007442027253, +0.0004451350705, +0.0000729141764, -0.0001749940234, \n    -0.0002553191489, -0.0002335644274, -0.0001969878078, -0.0001240736314, \n    -0.0000365766197, +0.0000657422902, +0.0001386564667, +0.0001312455176, \n    +0.0001312455176, +0.0001604111881, +0.0001824049725, +0.0001386564667, \n    +0.0000291656706, -0.0000949079608, -0.0001678221372, -0.0001166626823, \n    +0.0000583313411, +0.0002261534784, +0.0002918957686, +0.0003064786039, \n    +0.0003356442744, +0.0003282333254, +0.0002189815922, +0.0000949079608, \n    +0.0000511594549, +0.0000365766197, -0.0000511594549, -0.0001240736314, \n    -0.0000437485059, +0.0001166626823, +0.0002699019842, +0.0004231412862, \n    +0.0005252211332, +0.0005326320822, +0.0004523069567, +0.0002844848195, \n    +0.0001678221372, +0.0001678221372, +0.0001895768587, +0.0002041596940, \n    +0.0002189815922, +0.0002115706431, +0.0002041596940, +0.0002115706431, \n    +0.0002041596940, +0.0001824049725, +0.0001604111881, +0.0001386564667, \n    +0.0001604111881, +0.0002041596940, +0.0002041596940, +0.0002699019842, \n    +0.0004523069567, +0.0006347119292, +0.0007150370547, +0.0005763805881, \n    +0.0002261534784, -0.0001166626823, -0.0002844848195, -0.0001532393019, \n    +0.0002115706431, +0.0005909634234, +0.0007951231174, +0.0007296198900, \n    +0.0004743007411, +0.0002335644274, +0.0000874970117, +0.0000000000000, \n    -0.0000074109491, +0.0000437485059, +0.0000949079608, +0.0001166626823, \n    +0.0001386564667, +0.0001824049725, +0.0002189815922, +0.0002041596940, \n    +0.0002261534784, +0.0002990676548, +0.0003210614392, +0.0002481472627, \n    +0.0001458283529, +0.0000583313411, +0.0000291656706, +0.0000583313411, \n    +0.0001458283529, +0.0002773129333, +0.0003573989959, +0.0003502271097, \n    +0.0002918957686, +0.0002041596940, +0.0001532393019, +0.0001532393019, \n    +0.0001678221372, +0.0001824049725, +0.0002481472627, +0.0002990676548, \n    +0.0003064786039, +0.0002699019842, +0.0001895768587, +0.0000949079608, \n    +0.0000219937844, +0.0000000000000, +0.0000145828353, +0.0001312455176, \n    +0.0002990676548, +0.0003064786039, +0.0001678221372, +0.0000583313411, \n    +0.0000437485059, +0.0000874970117, +0.0001458283529, +0.0001969878078, \n    +0.0002699019842, +0.0003502271097, +0.0004011475018, +0.0003502271097, \n    +0.0001969878078, +0.0000583313411, -0.0000583313411, -0.0001458283529, \n    -0.0001312455176, -0.0000949079608, -0.0000511594549, +0.0000074109491, \n    +0.0000219937844, -0.0000437485059, -0.0001749940234, -0.0002918957686, \n    -0.0002699019842, -0.0000949079608, +0.0000803251255, +0.0001895768587, \n    +0.0002189815922, +0.0002041596940, +0.0001532393019, +0.0001386564667, \n    +0.0001678221372, +0.0001749940234, +0.0001240736314, +0.0000365766197, \n    -0.0000511594549, -0.0000657422902, -0.0000074109491, +0.0000583313411, \n    +0.0000949079608, +0.0000657422902, +0.0000074109491, +0.0000291656706, \n    +0.0000874970117, +0.0000803251255, +0.0000291656706, +0.0000511594549, \n    +0.0001604111881, +0.0002773129333, +0.0002844848195, +0.0001604111881, \n    -0.0000219937844, -0.0001824049725, -0.0002041596940, -0.0000729141764, \n    +0.0001094907961, +0.0002553191489, +0.0002699019842, +0.0001824049725, \n    +0.0001020798470, +0.0000729141764, +0.0000874970117, +0.0000803251255, \n    -0.0000291656706, -0.0001749940234, -0.0002627300980, -0.0002481472627, \n    -0.0000949079608, +0.0000511594549, +0.0000729141764, +0.0000074109491, \n    -0.0001312455176, -0.0002261534784, -0.0001604111881, +0.0000000000000, \n    +0.0001386564667, +0.0001678221372, +0.0000437485059, -0.0001386564667, \n    -0.0003064786039, -0.0003939756156, -0.0002990676548, -0.0001094907961, \n    +0.0000511594549, +0.0000657422902, -0.0000874970117, -0.0002189815922, \n    -0.0002918957686, -0.0002844848195, -0.0001969878078, -0.0001386564667, \n    -0.0001094907961, -0.0000437485059, -0.0000219937844, -0.0000437485059, \n    -0.0000803251255, -0.0001749940234, -0.0002627300980, -0.0003282333254, \n    -0.0003648099450, -0.0003793927803, -0.0003428161607, -0.0002261534784, \n    -0.0001020798470, +0.0000000000000, +0.0000803251255, +0.0000657422902, \n    -0.0000437485059, -0.0001895768587, -0.0002844848195, -0.0002407363137, \n    -0.0001094907961, +0.0000219937844, +0.0001020798470, +0.0001094907961, \n    +0.0000365766197, -0.0001094907961, -0.0002627300980, -0.0003136504901, \n    -0.0003064786039, -0.0002189815922, -0.0000803251255, +0.0000000000000, \n    +0.0000365766197, +0.0000729141764, +0.0000874970117, +0.0000511594549, \n    -0.0000511594549, -0.0001604111881, -0.0002261534784, -0.0003064786039, \n    -0.0003428161607, -0.0002990676548, -0.0002481472627, -0.0002407363137, \n    -0.0002699019842, -0.0003210614392, -0.0003064786039, -0.0002189815922, \n    -0.0001166626823, -0.0000365766197, -0.0000219937844, -0.0000365766197, \n    -0.0000583313411, -0.0001312455176, -0.0001895768587, -0.0002189815922, \n    -0.0002261534784, -0.0002115706431, -0.0002041596940, -0.0002115706431, \n    -0.0001969878078, -0.0001312455176, -0.0000219937844, +0.0000511594549, \n    +0.0000583313411, +0.0000074109491, -0.0000949079608, -0.0002115706431, \n    -0.0002699019842, -0.0003064786039, -0.0002918957686, -0.0001969878078, \n    -0.0001166626823, -0.0000874970117, -0.0000874970117, -0.0000511594549, \n    +0.0000803251255, +0.0001824049725, +0.0001166626823, -0.0000511594549, \n    -0.0002699019842, -0.0004159694000, -0.0004451350705, -0.0004231412862, \n    -0.0003064786039, -0.0001678221372, -0.0001240736314, -0.0001166626823, \n    -0.0000949079608, -0.0000365766197, +0.0000365766197, -0.0000074109491, \n    -0.0001749940234, -0.0003282333254, -0.0003939756156, -0.0003136504901, \n    -0.0001386564667, +0.0000074109491, +0.0000874970117, +0.0000657422902, \n    -0.0000583313411, -0.0002553191489, -0.0004377241214, -0.0004668897920, \n    -0.0002990676548, -0.0000657422902, +0.0000657422902, +0.0000511594549, \n    -0.0000437485059, -0.0001312455176, -0.0001532393019, -0.0001678221372, \n    -0.0001678221372, -0.0001386564667, -0.0001312455176, -0.0001895768587, \n    -0.0002844848195, -0.0003573989959, -0.0002844848195, -0.0001312455176, \n    +0.0000219937844, +0.0001240736314, +0.0001532393019, +0.0001020798470, \n    +0.0000074109491, -0.0000511594549, -0.0000657422902, -0.0000874970117, \n    -0.0001604111881, -0.0002481472627, -0.0003210614392, -0.0003502271097, \n    -0.0003719818312, -0.0003356442744, -0.0002481472627, -0.0001604111881, \n    -0.0000511594549, +0.0000803251255, +0.0002553191489, +0.0003865646665, \n    +0.0003573989959, +0.0001604111881, -0.0000803251255, -0.0002481472627, \n    -0.0002627300980, -0.0001604111881, -0.0000291656706, +0.0000803251255, \n    +0.0000583313411, -0.0001166626823, -0.0003136504901, -0.0003793927803, \n    -0.0002844848195, -0.0001240736314, -0.0000365766197, -0.0000365766197, \n    -0.0001604111881, -0.0003356442744, -0.0004085584509, -0.0003064786039, \n    -0.0001094907961, -0.0000145828353, -0.0000729141764, -0.0002041596940, \n    -0.0003210614392, -0.0003064786039, -0.0001240736314, +0.0001094907961, \n    +0.0002773129333, +0.0003136504901, +0.0002115706431, +0.0000803251255, \n    -0.0000291656706, -0.0001094907961, -0.0001604111881, -0.0002553191489, \n    -0.0003793927803, -0.0004523069567, -0.0004668897920, -0.0003719818312, \n    -0.0002189815922, -0.0000657422902, +0.0000949079608, +0.0001532393019, \n    +0.0000365766197, -0.0001020798470, -0.0001824049725, -0.0001749940234, \n    -0.0000803251255, +0.0000074109491, +0.0000949079608, +0.0001604111881, \n    +0.0001532393019, +0.0000511594549, -0.0000874970117, -0.0001604111881, \n    -0.0001240736314, -0.0000365766197, +0.0000511594549, +0.0001166626823, \n    +0.0001240736314, +0.0000803251255, -0.0000291656706, -0.0001604111881, \n    -0.0002041596940, -0.0002261534784, -0.0002844848195, -0.0003356442744, \n    -0.0003136504901, -0.0002189815922, -0.0000803251255, +0.0000657422902, \n    +0.0001824049725, +0.0002481472627, +0.0002481472627, +0.0001678221372, \n    +0.0000657422902, +0.0000000000000, -0.0000949079608, -0.0001969878078, \n    -0.0001824049725, -0.0000583313411, +0.0000291656706, +0.0000291656706, \n    -0.0000074109491, -0.0000803251255, -0.0001824049725, -0.0002553191489, \n    -0.0002481472627, -0.0001240736314, +0.0001020798470, +0.0003502271097, \n    +0.0004377241214, +0.0003502271097, +0.0001166626823, -0.0001678221372, \n    -0.0003793927803, -0.0003865646665, -0.0002041596940, +0.0000145828353, \n    +0.0001240736314, +0.0000365766197, -0.0001678221372, -0.0003428161607, \n    -0.0003428161607, -0.0001604111881, +0.0001240736314, +0.0003648099450, \n    +0.0004231412862, +0.0003064786039, +0.0001458283529, +0.0000437485059, \n    -0.0000074109491, -0.0000583313411, -0.0001386564667, -0.0002335644274, \n    -0.0002627300980, -0.0002189815922, -0.0001166626823, +0.0000074109491, \n    +0.0001094907961, +0.0001749940234, +0.0001678221372, +0.0000803251255, \n    +0.0000365766197, +0.0000729141764, +0.0001386564667, +0.0002041596940, \n    +0.0002041596940, +0.0001094907961, -0.0000145828353, -0.0001312455176, \n    -0.0001749940234, -0.0001020798470, -0.0000145828353, +0.0000074109491, \n    +0.0000000000000, -0.0000145828353, -0.0000074109491, +0.0000219937844, \n    +0.0000437485059, +0.0000365766197, +0.0000145828353, -0.0000365766197, \n    -0.0000657422902, -0.0000074109491, +0.0000874970117, +0.0001678221372, \n    +0.0001895768587, +0.0001240736314, +0.0000000000000, -0.0001678221372, \n    -0.0002773129333, -0.0002407363137, -0.0000803251255, +0.0001458283529, \n    +0.0003502271097, +0.0004231412862, +0.0003648099450, +0.0002115706431, \n    +0.0000074109491, -0.0001312455176, -0.0002041596940, -0.0002115706431, \n    -0.0001240736314, +0.0000000000000, +0.0001240736314, +0.0002115706431, \n    +0.0002041596940, +0.0001312455176, +0.0000145828353, -0.0000949079608, \n    -0.0001532393019, -0.0001166626823, -0.0000219937844, +0.0000437485059, \n    +0.0001094907961, +0.0001678221372, +0.0002115706431, +0.0002773129333, \n    +0.0003282333254, +0.0003210614392, +0.0002335644274, +0.0000365766197, \n    -0.0001678221372, -0.0003136504901, -0.0003648099450, -0.0002918957686, \n    -0.0001166626823, +0.0000219937844, +0.0001020798470, +0.0000949079608, \n    +0.0000365766197, -0.0000074109491, -0.0000219937844, +0.0000219937844, \n    +0.0001020798470, +0.0001458283529, +0.0001749940234, +0.0001386564667, \n    +0.0000291656706, -0.0000437485059, -0.0000874970117, -0.0001240736314, \n    -0.0001166626823, -0.0000803251255, -0.0000145828353, +0.0000657422902, \n    +0.0001604111881, +0.0002261534784, +0.0002041596940, +0.0001604111881, \n    +0.0001458283529, +0.0001458283529, +0.0001386564667, +0.0001020798470, \n    +0.0000511594549, +0.0000219937844, +0.0000583313411, +0.0001532393019, \n    +0.0002699019842, +0.0003502271097, +0.0003282333254, +0.0002335644274, \n    +0.0001166626823, -0.0000145828353, -0.0001312455176, -0.0001240736314, \n    -0.0000145828353, +0.0000583313411, +0.0000437485059, -0.0000219937844, \n    -0.0000437485059, +0.0000000000000, +0.0000874970117, +0.0001969878078, \n    +0.0002699019842, +0.0002553191489, +0.0001532393019, +0.0000365766197, \n    -0.0000437485059, -0.0000803251255, -0.0000803251255, -0.0000437485059, \n    +0.0000145828353, +0.0000657422902, +0.0001094907961, +0.0001240736314, \n    +0.0001094907961, +0.0001020798470, +0.0000949079608, +0.0001166626823, \n    +0.0001824049725, +0.0002115706431, +0.0002261534784, +0.0002041596940, \n    +0.0001386564667, +0.0000803251255, +0.0000074109491, -0.0000291656706, \n    +0.0000000000000, +0.0000074109491, +0.0000000000000, -0.0000365766197, \n    -0.0000803251255, -0.0000803251255, -0.0000583313411, -0.0000803251255, \n    -0.0000803251255, -0.0000074109491, +0.0001020798470, +0.0002261534784, \n    +0.0002844848195, +0.0002627300980, +0.0001969878078, +0.0001678221372, \n    +0.0002115706431, +0.0003064786039, +0.0004085584509, +0.0004743007411, \n    +0.0004377241214, +0.0002627300980, +0.0000219937844, -0.0001166626823, \n    -0.0000874970117, +0.0000949079608, +0.0002773129333, +0.0003210614392, \n    +0.0001969878078, +0.0000437485059, +0.0000000000000, +0.0000437485059, \n    +0.0001458283529, +0.0002553191489, +0.0003356442744, +0.0003064786039, \n    +0.0001969878078, +0.0001312455176, +0.0001386564667, +0.0001604111881, \n    +0.0001969878078, +0.0002115706431, +0.0001749940234, +0.0001678221372, \n    +0.0002261534784, +0.0002990676548, +0.0003282333254, +0.0003210614392, \n    +0.0003210614392, +0.0002990676548, +0.0002335644274, +0.0001824049725, \n    +0.0001604111881, +0.0001969878078, +0.0002699019842, +0.0002990676548, \n    +0.0002335644274, +0.0000949079608, -0.0000437485059, -0.0001678221372, \n    -0.0001895768587, -0.0001020798470, +0.0000291656706, +0.0001678221372, \n    +0.0002699019842, +0.0002627300980, +0.0001458283529, +0.0000291656706, \n    +0.0000000000000, +0.0000874970117, +0.0001969878078, +0.0002627300980, \n    +0.0002335644274, +0.0000729141764, -0.0000729141764, -0.0000949079608, \n    +0.0000219937844, +0.0002335644274, +0.0003793927803, +0.0003428161607, \n    +0.0001895768587, +0.0000511594549, -0.0000074109491, -0.0000145828353, \n    -0.0000074109491, -0.0000219937844, -0.0000365766197, -0.0000583313411, \n    -0.0000437485059, -0.0000219937844, -0.0000145828353, -0.0000291656706, \n    -0.0000657422902, -0.0001020798470, -0.0001094907961, -0.0000657422902, \n    +0.0000291656706, +0.0001166626823, +0.0001020798470, +0.0000000000000, \n    -0.0001166626823, -0.0001458283529, -0.0000511594549, +0.0001312455176, \n    +0.0002844848195, +0.0003356442744, +0.0002335644274, +0.0000145828353, \n    -0.0001458283529, -0.0001749940234, -0.0001312455176, -0.0000874970117, \n    -0.0000949079608, -0.0001678221372, -0.0001895768587, -0.0001020798470, \n    +0.0000000000000, +0.0000437485059, +0.0000000000000, -0.0000803251255, \n    -0.0001386564667, -0.0001240736314, -0.0000365766197, +0.0000511594549, \n    +0.0000874970117, +0.0000437485059, -0.0000365766197, -0.0001532393019, \n    -0.0002115706431, -0.0001749940234, -0.0000803251255, +0.0000291656706, \n    +0.0001240736314, +0.0001678221372, +0.0001678221372, +0.0001312455176, \n    +0.0000729141764, +0.0000000000000, -0.0000583313411, -0.0000511594549, \n    +0.0000000000000, +0.0000219937844, -0.0000145828353, -0.0001094907961, \n    -0.0002115706431, -0.0002773129333, -0.0003064786039, -0.0002990676548, \n    -0.0002115706431, -0.0000657422902, +0.0000511594549, +0.0001020798470, \n    +0.0000583313411, -0.0000365766197, -0.0001532393019, -0.0002189815922, \n    -0.0001895768587, -0.0001386564667, -0.0001386564667, -0.0001312455176, \n    -0.0000949079608, -0.0000511594549, -0.0000291656706, -0.0000145828353, \n    +0.0000000000000, +0.0000291656706, +0.0000511594549, +0.0000291656706, \n    -0.0000291656706, -0.0000729141764, -0.0000874970117, -0.0000874970117, \n    -0.0001094907961, -0.0001386564667, -0.0001312455176, -0.0000949079608, \n    -0.0000949079608, -0.0001240736314, -0.0001240736314, -0.0000949079608, \n    -0.0000074109491, +0.0000874970117, +0.0001386564667, +0.0001166626823, \n    +0.0000437485059, -0.0000437485059, -0.0000729141764, -0.0000729141764, \n    -0.0000657422902, -0.0000291656706, +0.0000000000000, +0.0000000000000, \n    +0.0000291656706, +0.0000874970117, +0.0001824049725, +0.0002773129333, \n    +0.0003356442744, +0.0003282333254, +0.0002261534784, +0.0000583313411, \n    -0.0000949079608, -0.0002115706431, -0.0002189815922, -0.0000729141764, \n    +0.0001166626823, +0.0002189815922, +0.0001969878078, +0.0000874970117, \n    +0.0000291656706, +0.0000657422902, +0.0001386564667, +0.0002189815922, \n    +0.0002407363137, +0.0001824049725, +0.0000949079608, -0.0000145828353, \n    -0.0001166626823, -0.0001312455176, -0.0000874970117, -0.0000291656706, \n    +0.0000437485059, +0.0001094907961, +0.0001458283529, +0.0001386564667, \n    +0.0001094907961, +0.0000583313411, +0.0000000000000, -0.0000365766197, \n    -0.0000365766197, -0.0000074109491, +0.0000291656706, +0.0000583313411, \n    +0.0000511594549, +0.0000145828353, -0.0000365766197, -0.0000729141764, \n    -0.0000803251255, -0.0000437485059, +0.0000000000000, +0.0000291656706, \n    +0.0000074109491, -0.0000365766197, -0.0000874970117, -0.0000874970117, \n    +0.0000074109491, +0.0001094907961, +0.0001312455176, +0.0000729141764, \n    +0.0000000000000, -0.0000511594549, -0.0001020798470, -0.0001749940234, \n    -0.0001969878078, -0.0001604111881, -0.0000729141764, +0.0000219937844, \n    +0.0001020798470, +0.0001386564667, +0.0001166626823, +0.0000219937844, \n    -0.0000729141764, -0.0001532393019, -0.0001969878078, -0.0001604111881, \n    -0.0000874970117, -0.0000291656706, +0.0000000000000, -0.0000291656706, \n    -0.0001020798470, -0.0001240736314, -0.0000729141764, +0.0000000000000, \n    +0.0000291656706, +0.0000074109491, -0.0000219937844, -0.0000365766197, \n    -0.0000365766197, -0.0000219937844, -0.0000145828353, -0.0000219937844, \n    -0.0000145828353, +0.0000145828353, +0.0000291656706, +0.0000074109491, \n    -0.0000291656706, -0.0000583313411, -0.0000803251255, -0.0000729141764, \n    -0.0000437485059, -0.0000365766197, -0.0000874970117, -0.0001824049725, \n    -0.0002335644274, -0.0001969878078, -0.0000803251255, +0.0000365766197, \n    +0.0001166626823, +0.0001240736314, +0.0000511594549, -0.0000583313411, \n    -0.0001458283529, -0.0001895768587, -0.0001895768587, -0.0001604111881, \n    -0.0001166626823, -0.0001020798470, -0.0000874970117, -0.0000365766197, \n    +0.0000291656706, +0.0000803251255, +0.0000729141764, +0.0000000000000, \n    -0.0000874970117, -0.0001458283529, -0.0001312455176, -0.0000657422902, \n    -0.0000291656706, -0.0000803251255, -0.0001969878078, -0.0002990676548, \n    -0.0003136504901, -0.0002335644274, -0.0000874970117, +0.0000583313411, \n    +0.0001532393019, +0.0001604111881, +0.0001386564667, +0.0001094907961, \n    +0.0000803251255, +0.0000365766197, -0.0000365766197, -0.0001312455176, \n    -0.0001749940234, -0.0001458283529, -0.0000803251255, +0.0000000000000, \n    +0.0000583313411, +0.0000437485059, -0.0000291656706, -0.0001094907961, \n    -0.0001604111881, -0.0001532393019, -0.0000949079608, -0.0000291656706, \n    +0.0000000000000, -0.0000219937844, -0.0000874970117, -0.0001458283529, \n    -0.0001824049725, -0.0001678221372, -0.0001020798470, -0.0000219937844, \n    +0.0000365766197, +0.0000803251255, +0.0000729141764, +0.0000291656706, \n    -0.0000511594549, -0.0001532393019, -0.0002261534784, -0.0002553191489, \n    -0.0002115706431, -0.0000874970117, +0.0000657422902, +0.0001824049725, \n    +0.0002115706431, +0.0001458283529, +0.0000219937844, -0.0001094907961, \n    -0.0002189815922, -0.0002773129333, -0.0002918957686, -0.0002335644274, \n    -0.0001094907961, +0.0000000000000, +0.0000437485059, +0.0000657422902, \n    +0.0000511594549, +0.0000219937844, -0.0000219937844, -0.0000729141764, \n    -0.0000657422902, -0.0000291656706, +0.0000000000000, +0.0000145828353, \n    +0.0000145828353, +0.0000074109491, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000\n};\n"
  },
  {
    "path": "impulses/14-fender-superchamp-at4050.h",
    "content": "float fender_superchamp_at4050[] = {\n    -0.0001856447689, -0.0002525547445, -0.0002525547445, -0.0001632603406, \n    -0.0000075425791, +0.0001484184915, +0.0002822384428, +0.0003340632603, \n    +0.0002822384428, +0.0001484184915, -0.0000148418491, -0.0001781021898, \n    -0.0002673965937, -0.0002598540146, -0.0001708029197, -0.0000296836983, \n    +0.0001114355231, +0.0002153284672, +0.0002450121655, +0.0002004866180, \n    +0.0001114355231, +0.0000000000000, -0.0000742092457, -0.0001114355231, \n    -0.0000817518248, -0.0000148418491, +0.0000742092457, +0.0001559610706, \n    +0.0002228710462, +0.0002598540146, +0.0002673965937, +0.0002598540146, \n    +0.0002301703163, +0.0001929440389, +0.0001559610706, +0.0001114355231, \n    +0.0000742092457, +0.0000445255474, +0.0000296836983, +0.0000372262774, \n    +0.0000669099757, +0.0001187347932, +0.0001632603406, +0.0002004866180, \n    +0.0002153284672, +0.0002077858881, +0.0001781021898, +0.0001484184915, \n    +0.0001187347932, +0.0001114355231, +0.0001187347932, +0.0001411192214, \n    +0.0001708029197, +0.0001856447689, +0.0001856447689, +0.0001632603406, \n    +0.0001262773723, +0.0000742092457, +0.0000296836983, +0.0000000000000, \n    +0.0000000000000, +0.0000148418491, +0.0000593673966, +0.0001038929440, \n    +0.0001335766423, +0.0001262773723, +0.0000742092457, -0.0000075425791, \n    -0.0001262773723, -0.0002377128954, -0.0003043795620, -0.0003043795620, \n    -0.0002301703163, -0.0000817518248, +0.0000965936740, +0.0002673965937, \n    +0.0003861313869, +0.0004158150852, +0.0003416058394, +0.0001929440389, \n    +0.0000075425791, -0.0001484184915, -0.0002450121655, -0.0002525547445, \n    -0.0001856447689, -0.0000817518248, +0.0000075425791, +0.0000445255474, \n    +0.0000223844282, -0.0000445255474, -0.0001411192214, -0.0002004866180, \n    -0.0001856447689, -0.0000817518248, +0.0000890510949, +0.0002822384428, \n    +0.0004381995134, +0.0005048661800, +0.0004530413625, +0.0002895377129, \n    +0.0000593673966, -0.0001708029197, -0.0003416058394, -0.0003934306569, \n    -0.0003192214112, -0.0001411192214, +0.0000742092457, +0.0002822384428, \n    +0.0004233576642, +0.0004603406326, +0.0004082725061, +0.0002970802920, \n    +0.0001708029197, +0.0000742092457, +0.0000223844282, +0.0000223844282, \n    +0.0000445255474, +0.0000669099757, +0.0000742092457, +0.0000520681265, \n    +0.0000296836983, +0.0000223844282, +0.0000669099757, +0.0001632603406, \n    +0.0003043795620, +0.0004454987835, +0.0005493917275, +0.0005642335766, \n    +0.0004751824818, +0.0003043795620, +0.0000890510949, -0.0000965936740, \n    -0.0002077858881, -0.0002004866180, -0.0000890510949, +0.0000965936740, \n    +0.0002970802920, +0.0004454987835, +0.0005048661800, +0.0004603406326, \n    +0.0003416058394, +0.0001929440389, +0.0000593673966, -0.0000223844282, \n    -0.0000593673966, -0.0000520681265, -0.0000223844282, -0.0000075425791, \n    -0.0000148418491, -0.0000296836983, -0.0000445255474, -0.0000445255474, \n    -0.0000148418491, +0.0000372262774, +0.0001038929440, +0.0001632603406, \n    +0.0002077858881, +0.0002153284672, +0.0001856447689, +0.0001262773723, \n    +0.0000296836983, -0.0000965936740, -0.0002450121655, -0.0003934306569, \n    -0.0005124087591, -0.0005642335766, -0.0005345498783, -0.0004233576642, \n    -0.0002450121655, -0.0000445255474, +0.0001262773723, +0.0002301703163, \n    +0.0002450121655, +0.0001856447689, +0.0000817518248, +0.0000000000000, \n    -0.0000372262774, +0.0000000000000, +0.0000965936740, +0.0002004866180, \n    +0.0002377128954, +0.0001632603406, -0.0000372262774, -0.0003340632603, \n    -0.0006311435523, -0.0008389294404, -0.0008909975669, -0.0007647201946, \n    -0.0004900243309, -0.0001411192214, +0.0001856447689, +0.0004454987835, \n    +0.0006163017032, +0.0006980535280, +0.0007350364964, +0.0007425790754, \n    +0.0007350364964, +0.0006608272506, +0.0005124087591, +0.0002525547445, \n    -0.0000817518248, -0.0004233576642, -0.0006905109489, -0.0008019464720, \n    -0.0007128953771, -0.0004454987835, -0.0000890510949, +0.0002450121655, \n    +0.0004751824818, +0.0005345498783, +0.0004454987835, +0.0002673965937, \n    +0.0000965936740, +0.0000223844282, +0.0000742092457, +0.0002377128954, \n    +0.0004454987835, +0.0006087591241, +0.0006608272506, +0.0005790754258, \n    +0.0004009732360, +0.0001929440389, +0.0000148418491, -0.0000890510949, \n    -0.0001335766423, -0.0001335766423, -0.0001187347932, -0.0001187347932, \n    -0.0001335766423, -0.0001335766423, -0.0001038929440, -0.0000520681265, \n    -0.0000223844282, -0.0000593673966, -0.0002077858881, -0.0004751824818, \n    -0.0007871046229, -0.0010394160584, -0.0010990267640, -0.0008688564477, \n    -0.0003564476886, +0.0003267639903, +0.0009948905109, +0.0014479318735, \n    +0.0015148418491, +0.0011732360097, +0.0004900243309, -0.0003637469586, \n    -0.0011953771290, -0.0018043795620, -0.0021681265207, -0.0022053527981, \n    -0.0020270072993, -0.0017968369830, -0.0012474452555, -0.0008909975669, \n    -0.0005124087591, -0.0000593673966, +0.0003416058394, +0.0004975669100, \n    +0.0004603406326, +0.0001632603406, -0.0002377128954, -0.0007277372263, \n    -0.0010469586375, -0.0012029197080, -0.0010990267640, -0.0008316301703, \n    -0.0004900243309, -0.0002895377129, -0.0003119221411, -0.0006683698297, \n    -0.0011211678832, -0.0016111922141, -0.0018489051095, -0.0017819951338, \n    -0.0012846715328, -0.0007425790754, -0.0003340632603, -0.0002895377129, \n    -0.0006683698297, -0.0013958637470, -0.0023834549878, -0.0031705596107, \n    -0.0039352798054, -0.0044849148418, -0.0047520681265, -0.0061927007299, \n    -0.0072545012165, -0.0064377128954, -0.0117391727494, -0.0032077858881, \n    -0.0139072992701, -0.0164839416058, +0.0107963503650, +0.0530009732360, \n    +0.0273693430657, -0.0973666666667, -0.1174815085158, -0.0292255474453, \n    -0.0016632603406, +0.0869343065693, +0.2263053527981, +0.2432941605839, \n    +0.1944883211679, +0.0872090024331, -0.0263075425791, -0.0628097323601, \n    -0.0949905109489, -0.0983318734793, -0.0663961070560, -0.0642503649635, \n    -0.0502686131387, -0.0482192214112, -0.0187262773723, +0.0372892944039, \n    +0.0546866180049, +0.0601218978102, +0.0607975669100, +0.0236715328467, \n    +0.0058583941606, +0.0056727493917, +0.0018413625304, +0.0113233576642, \n    +0.0026581508516, -0.0215182481752, -0.0327673965937, -0.0295447688564, \n    -0.0244289537713, -0.0080637469586, +0.0019454987835, +0.0065712895377, \n    +0.0089326034063, +0.0041581508516, +0.0051457420925, +0.0004900243309, \n    -0.0086355231144, -0.0047744525547, -0.0107815085158, -0.0255798053528, \n    -0.0173304136253, -0.0189936739659, -0.0248669099757, -0.0149321167883, \n    -0.0088063260341, -0.0054574209246, -0.0088211678832, -0.0115907542579, \n    -0.0088284671533, -0.0113827250608, -0.0082717761557, +0.0028513381995, \n    +0.0040094890511, +0.0065043795620, +0.0035270072993, +0.0014255474453, \n    +0.0080934306569, +0.0032892944039, +0.0018934306569, +0.0044552311436, \n    -0.0059180048662, -0.0196768856448, -0.0281340632603, -0.0248372262774, \n    -0.0158527980535, -0.0158900243309, -0.0149469586375, -0.0052941605839, \n    +0.0010618004866, +0.0094299270073, +0.0096452554745, +0.0079153284672, \n    +0.0075885644769, -0.0019527980535, -0.0079077858881, -0.0110931873479, \n    -0.0188452554745, -0.0179391727494, -0.0128454987835, -0.0116798053528, \n    -0.0075068126521, -0.0090958637470, -0.0106403892944, -0.0089771289538, \n    -0.0078708029197, -0.0043883211679, -0.0000593673966, -0.0022350364964, \n    -0.0046109489051, -0.0066454987835, -0.0118951338200, -0.0135435523114, \n    -0.0073805352798, +0.0009727493917, +0.0081973236010, +0.0096304136253, \n    +0.0054204379562, -0.0003637469586, -0.0080564476886, -0.0102839416058, \n    -0.0043734793187, +0.0013737226277, +0.0010693430657, -0.0030963503650, \n    -0.0056357664234, -0.0084126520681, -0.0128158150852, -0.0133727493917, \n    -0.0125931873479, -0.0122440389294, -0.0091403892944, -0.0056282238443, \n    -0.0035939172749, -0.0036309002433, -0.0030963503650, -0.0010245742092, \n    +0.0017598540146, +0.0062593673966, +0.0092815085158, +0.0107963503650, \n    +0.0139520681265, +0.0126377128954, +0.0068311435523, +0.0015369829684, \n    -0.0046184914842, -0.0088284671533, -0.0132094890511, -0.0162610705596, \n    -0.0138257907543, -0.0102245742092, -0.0069128953771, -0.0034379562044, \n    -0.0032968369830, -0.0023017031630, -0.0009579075426, -0.0008389294404, \n    +0.0011287104623, +0.0034155717762, +0.0048189781022, +0.0059922141119, \n    +0.0058956204380, +0.0065564476886, +0.0073583941606, +0.0059773722628, \n    +0.0047892944039, +0.0043734793187, +0.0035863746959, +0.0033041362530, \n    +0.0035566909976, +0.0032596107056, +0.0032447688564, +0.0045145985401, \n    +0.0063486618005, +0.0069277372263, +0.0062965936740, +0.0061406326034, \n    +0.0067866180049, +0.0067345498783, +0.0057620437956, +0.0035343065693, \n    +0.0023834549878, +0.0038313868613, +0.0047965936740, +0.0045961070560, \n    +0.0045664233577, +0.0050715328467, +0.0051309002433, +0.0035046228710, \n    +0.0012029197080, -0.0010245742092, -0.0009133819951, +0.0032671532847, \n    +0.0092815085158, +0.0135732360097, +0.0142637469586, +0.0118654501217, \n    +0.0093929440389, +0.0067124087591, +0.0032002433090, +0.0010024330900, \n    +0.0010321167883, +0.0014107055961, +0.0027474452555, +0.0050564476886, \n    +0.0063708029197, +0.0082270072993, +0.0099126520681, +0.0108260340633, \n    +0.0100313868613, +0.0076406326034, +0.0076257907543, +0.0091924574209, \n    +0.0073435523114, +0.0053017031630, +0.0053165450122, +0.0068386861314, \n    +0.0087914841849, +0.0068386861314, +0.0026063260341, +0.0004454987835, \n    -0.0001335766423, +0.0016335766423, +0.0048411192214, +0.0069871046229, \n    +0.0090437956204, +0.0099126520681, +0.0078484184915, +0.0050119221411, \n    +0.0031184914842, +0.0014107055961, +0.0003192214112, +0.0003340632603, \n    +0.0009800486618, +0.0031408759124, +0.0056357664234, +0.0073583941606, \n    +0.0081824817518, +0.0068014598540, +0.0044552311436, +0.0032523114355, \n    +0.0040987834550, +0.0051233576642, +0.0046705596107, +0.0051902676399, \n    +0.0057768856448, +0.0036457420925, +0.0012622871046, -0.0002746958637, \n    -0.0013661800487, -0.0023017031630, -0.0031184914842, -0.0028661800487, \n    -0.0010024330900, +0.0021608272506, +0.0050639902676, +0.0059328467153, \n    +0.0061182481752, +0.0066454987835, +0.0070836982968, +0.0060737226277, \n    +0.0030221411192, -0.0003934306569, -0.0030442822384, -0.0045145985401, \n    -0.0039725060827, -0.0013810218978, +0.0007871046229, +0.0010693430657, \n    +0.0013513381995, +0.0016484184915, +0.0010097323601, +0.0009875912409, \n    +0.0009727493917, -0.0000372262774, -0.0002895377129, -0.0000223844282, \n    +0.0002525547445, +0.0007277372263, +0.0001335766423, -0.0006683698297, \n    -0.0010841849148, -0.0013216545012, -0.0018858880779, -0.0032596107056, \n    -0.0036605839416, -0.0024948905109, -0.0015593673966, -0.0010766423358, \n    +0.0001929440389, +0.0008836982968, +0.0002895377129, -0.0001708029197, \n    -0.0015666666667, -0.0028289537713, -0.0032002433090, -0.0039725060827, \n    -0.0041878345499, -0.0045812652068, -0.0058956204380, -0.0057323600973, \n    -0.0049673965937, -0.0030739659367, -0.0001781021898, +0.0017671532847, \n    +0.0039576642336, +0.0047150851582, +0.0021978102190, -0.0011880778589, \n    -0.0044625304136, -0.0067345498783, -0.0068535279805, -0.0062965936740, \n    -0.0044922141119, -0.0016335766423, +0.0010394160584, +0.0018934306569, \n    +0.0004009732360, -0.0016929440389, -0.0030518248175, -0.0042992700730, \n    -0.0041802919708, -0.0027919708029, -0.0028141119221, -0.0027026763990, \n    -0.0018340632603, -0.0012399026764, -0.0002746958637, +0.0001411192214, \n    +0.0002377128954, -0.0006535279805, -0.0031854014599, -0.0039352798054, \n    -0.0033116788321, -0.0036236009732, -0.0032819951338, -0.0028437956204, \n    -0.0014700729927, +0.0008836982968, +0.0011953771290, +0.0009652068127, \n    -0.0007498783455, -0.0030369829684, -0.0028437956204, -0.0030369829684, \n    -0.0039131386861, -0.0035639902676, -0.0038982968370, -0.0031781021898, \n    -0.0017895377129, -0.0023537712895, -0.0021384428224, -0.0013440389294, \n    -0.0012399026764, -0.0003637469586, -0.0001038929440, -0.0008688564477, \n    -0.0005197080292, -0.0003192214112, -0.0002822384428, +0.0003861313869, \n    +0.0008240875912, +0.0012102189781, +0.0007795620438, +0.0006608272506, \n    +0.0016111922141, +0.0012698296837, +0.0004009732360, -0.0003564476886, \n    -0.0013885644769, -0.0019306569343, -0.0024131386861, -0.0020790754258, \n    -0.0017077858881, -0.0022053527981, -0.0012177615572, +0.0005866180049, \n    +0.0015890510949, +0.0021459854015, +0.0013588807786, +0.0001262773723, \n    -0.0005790754258, -0.0010990267640, -0.0008316301703, -0.0006756690998, \n    -0.0011435523114, -0.0012399026764, -0.0013588807786, -0.0013068126521, \n    -0.0004751824818, +0.0005048661800, +0.0011880778589, +0.0015518248175, \n    +0.0015890510949, +0.0016557177616, +0.0014034063260, +0.0008389294404, \n    +0.0008540145985, +0.0007201946472, +0.0006459854015, +0.0013588807786, \n    +0.0016260340633, +0.0011138686131, +0.0002895377129, -0.0007647201946, \n    -0.0010914841849, -0.0008761557178, -0.0012474452555, -0.0017598540146, \n    -0.0017523114355, -0.0013958637470, -0.0007128953771, -0.0000520681265, \n    +0.0005717761557, +0.0012474452555, +0.0012399026764, +0.0011656934307, \n    +0.0013291970803, +0.0007425790754, +0.0001411192214, -0.0004082725061, \n    -0.0004975669100, +0.0008985401460, +0.0020121654501, +0.0024873479319, \n    +0.0026729927007, +0.0020790754258, +0.0019603406326, +0.0016260340633, \n    +0.0006535279805, +0.0000593673966, -0.0009058394161, -0.0012102189781, \n    -0.0004381995134, +0.0005866180049, +0.0014182481752, +0.0012326034063, \n    +0.0010542579075, +0.0006832116788, -0.0009727493917, -0.0014107055961, \n    -0.0011063260341, -0.0017746958637, -0.0020642335766, -0.0016260340633, \n    -0.0009727493917, -0.0005124087591, -0.0003712895377, +0.0000445255474, \n    +0.0008688564477, +0.0013588807786, +0.0021905109489, +0.0031036496350, \n    +0.0027474452555, +0.0021608272506, +0.0012846715328, -0.0002377128954, \n    -0.0009800486618, -0.0011656934307, -0.0011211678832, -0.0006236009732, \n    -0.0006311435523, -0.0007574209246, -0.0007350364964, -0.0010841849148, \n    -0.0005345498783, +0.0003043795620, +0.0006163017032, +0.0010542579075, \n    +0.0013440389294, +0.0010990267640, +0.0000669099757, -0.0012698296837, \n    -0.0020863746959, -0.0022053527981, -0.0019306569343, -0.0013885644769, \n    -0.0005493917275, +0.0000965936740, +0.0003043795620, +0.0002525547445, \n    +0.0000000000000, -0.0004751824818, -0.0008240875912, -0.0007944038929, \n    -0.0005717761557, -0.0001781021898, -0.0001708029197, -0.0005345498783, \n    -0.0004233576642, -0.0005717761557, -0.0008464720195, -0.0007425790754, \n    -0.0012474452555, -0.0019231143552, -0.0022647201946, -0.0022868613139, \n    -0.0013364963504, -0.0007944038929, -0.0011508515815, -0.0012326034063, \n    -0.0015221411192, -0.0015815085158, -0.0013068126521, -0.0014627737226, \n    -0.0013958637470, -0.0013810218978, -0.0019751824818, -0.0023834549878, \n    -0.0026508515815, -0.0025245742092, -0.0017004866180, -0.0007795620438, \n    +0.0002004866180, +0.0008613138686, +0.0006014598540, +0.0004900243309, \n    +0.0007128953771, +0.0002822384428, -0.0008167883212, -0.0018413625304, \n    -0.0023092457421, -0.0028364963504, -0.0033041362530, -0.0032374695864, \n    -0.0033116788321, -0.0029180048662, -0.0017598540146, -0.0010618004866, \n    -0.0008389294404, -0.0013885644769, -0.0020270072993, -0.0019306569343, \n    -0.0019306569343, -0.0019900243309, -0.0017895377129, -0.0020939172749, \n    -0.0020863746959, -0.0017004866180, -0.0015593673966, -0.0011656934307, \n    -0.0008167883212, -0.0007425790754, -0.0005569343066, -0.0005048661800, \n    -0.0001708029197, +0.0003489051095, +0.0001559610706, -0.0003043795620, \n    -0.0009503649635, -0.0013440389294, -0.0007647201946, -0.0003489051095, \n    -0.0005197080292, -0.0007277372263, -0.0013661800487, -0.0016408759124, \n    -0.0014034063260, -0.0016632603406, -0.0013364963504, -0.0006535279805, \n    -0.0005790754258, -0.0004454987835, -0.0003934306569, -0.0004306569343, \n    -0.0005642335766, -0.0008985401460, -0.0009875912409, -0.0012622871046, \n    -0.0015890510949, -0.0006980535280, +0.0002822384428, +0.0003192214112, \n    +0.0002153284672, -0.0002153284672, -0.0008909975669, -0.0009206812652, \n    -0.0007201946472, -0.0007574209246, -0.0007944038929, -0.0007201946472, \n    -0.0006311435523, -0.0005717761557, -0.0006608272506, -0.0004233576642, \n    +0.0000965936740, +0.0000372262774, -0.0002746958637, -0.0007277372263, \n    -0.0013440389294, -0.0014107055961, -0.0008985401460, -0.0004306569343, \n    -0.0002525547445, -0.0007277372263, -0.0012698296837, -0.0018116788321, \n    -0.0022944038929, -0.0020939172749, -0.0018340632603, -0.0015742092457, \n    -0.0007574209246, -0.0001038929440, -0.0002004866180, -0.0004900243309, \n    -0.0006014598540, -0.0005642335766, -0.0002822384428, +0.0001856447689, \n    +0.0006311435523, +0.0010024330900, +0.0011508515815, +0.0008909975669, \n    -0.0000669099757, -0.0011360097324, -0.0013513381995, -0.0010172749392, \n    -0.0006980535280, -0.0004306569343, -0.0007201946472, -0.0010990267640, \n    -0.0009503649635, -0.0006014598540, -0.0000965936740, -0.0000148418491, \n    -0.0003416058394, -0.0004827250608, -0.0005717761557, -0.0008167883212, \n    -0.0008909975669, -0.0004233576642, +0.0003192214112, +0.0003267639903, \n    +0.0002153284672, +0.0005939172749, +0.0004603406326, -0.0000148418491, \n    -0.0008240875912, -0.0016408759124, -0.0017226277372, -0.0010542579075, \n    +0.0002077858881, +0.0010766423358, +0.0013588807786, +0.0017598540146, \n    +0.0013216545012, +0.0002377128954, -0.0006459854015, -0.0010618004866, \n    -0.0004678832117, +0.0000669099757, +0.0003934306569, +0.0009282238443, \n    +0.0004530413625, -0.0002746958637, -0.0002153284672, -0.0001038929440, \n    -0.0000296836983, +0.0003043795620, +0.0007277372263, +0.0008540145985, \n    +0.0002153284672, -0.0002153284672, -0.0000148418491, -0.0000148418491, \n    +0.0001856447689, +0.0008836982968, +0.0010618004866, +0.0008985401460, \n    +0.0010024330900, +0.0011287104623, +0.0012995133820, +0.0017598540146, \n    +0.0021532846715, +0.0019379562044, +0.0010394160584, +0.0000890510949, \n    -0.0003340632603, -0.0003637469586, -0.0000593673966, +0.0000075425791, \n    -0.0003267639903, -0.0002228710462, +0.0004530413625, +0.0010172749392, \n    +0.0012474452555, +0.0011211678832, +0.0010097323601, +0.0009727493917, \n    +0.0008688564477, +0.0006980535280, +0.0004678832117, +0.0007574209246, \n    +0.0012474452555, +0.0013364963504, +0.0014107055961, +0.0013513381995, \n    +0.0011435523114, +0.0013513381995, +0.0015518248175, +0.0015963503650, \n    +0.0014700729927, +0.0011508515815, +0.0010618004866, +0.0011583941606, \n    +0.0012547445255, +0.0015666666667, +0.0021012165450, +0.0026805352798, \n    +0.0026953771290, +0.0017153284672, +0.0004678832117, -0.0001632603406, \n    -0.0003340632603, -0.0004306569343, -0.0000075425791, +0.0004454987835, \n    +0.0006535279805, +0.0009579075426, +0.0011435523114, +0.0012698296837, \n    +0.0013513381995, +0.0011656934307, +0.0012029197080, +0.0012250608273, \n    +0.0011583941606, +0.0011732360097, +0.0012995133820, +0.0017819951338, \n    +0.0019824817518, +0.0018340632603, +0.0016111922141, +0.0011138686131, \n    +0.0008092457421, +0.0009206812652, +0.0012919708029, +0.0019306569343, \n    +0.0020345498783, +0.0017968369830, +0.0016557177616, +0.0011211678832, \n    +0.0006683698297, +0.0007574209246, +0.0008761557178, +0.0010693430657, \n    +0.0012250608273, +0.0008613138686, +0.0002673965937, -0.0003119221411, \n    -0.0004975669100, -0.0000445255474, +0.0006236009732, +0.0013143552311, \n    +0.0016408759124, +0.0014330900243, +0.0012846715328, +0.0011732360097, \n    +0.0007647201946, +0.0004530413625, +0.0004603406326, +0.0008240875912, \n    +0.0011732360097, +0.0013440389294, +0.0014107055961, +0.0015666666667, \n    +0.0016111922141, +0.0011287104623, +0.0004381995134, +0.0001335766423, \n    +0.0000817518248, +0.0003043795620, +0.0005939172749, +0.0004381995134, \n    +0.0002822384428, +0.0003416058394, +0.0005420924574, +0.0009282238443, \n    +0.0008985401460, +0.0004827250608, +0.0003712895377, +0.0004381995134, \n    +0.0002673965937, -0.0000372262774, -0.0000520681265, +0.0001114355231, \n    +0.0000296836983, -0.0002450121655, -0.0004751824818, -0.0001632603406, \n    +0.0005272506083, +0.0008389294404, +0.0006163017032, +0.0002822384428, \n    +0.0002153284672, +0.0002004866180, -0.0001335766423, -0.0004975669100, \n    -0.0007425790754, -0.0004975669100, +0.0005717761557, +0.0014403892944, \n    +0.0015890510949, +0.0009875912409, -0.0001632603406, -0.0011211678832, \n    -0.0014776155718, -0.0014255474453, -0.0009948905109, -0.0003340632603, \n    +0.0003267639903, +0.0006980535280, +0.0005642335766, +0.0004975669100, \n    +0.0006608272506, +0.0005717761557, +0.0001114355231, -0.0005197080292, \n    -0.0009282238443, -0.0006535279805, -0.0000593673966, +0.0002895377129, \n    +0.0003934306569, +0.0004454987835, +0.0004082725061, +0.0002077858881, \n    +0.0002004866180, +0.0001632603406, -0.0001114355231, +0.0000148418491, \n    +0.0002228710462, -0.0003340632603, -0.0004678832117, -0.0004009732360, \n    -0.0009206812652, -0.0008389294404, -0.0007201946472, -0.0003785888078, \n    +0.0000148418491, -0.0002301703163, +0.0001708029197, +0.0000372262774, \n    -0.0008316301703, -0.0005197080292, -0.0004009732360, -0.0009282238443, \n    -0.0005717761557, -0.0004306569343, -0.0003119221411, +0.0001262773723, \n    +0.0002746958637, +0.0003489051095, +0.0002228710462, +0.0006756690998, \n    +0.0010024330900, +0.0004530413625, +0.0001856447689, +0.0000965936740, \n    -0.0002895377129, +0.0001038929440, +0.0004900243309, +0.0002077858881, \n    -0.0003192214112, -0.0008389294404, -0.0007574209246, -0.0001632603406, \n    +0.0005790754258, +0.0012919708029, +0.0017004866180, +0.0014034063260, \n    +0.0007201946472, +0.0000965936740, -0.0000817518248, -0.0001262773723, \n    +0.0001335766423, +0.0007647201946, +0.0008464720195, +0.0006683698297, \n    +0.0004530413625, -0.0000890510949, -0.0003043795620, -0.0000742092457, \n    +0.0000223844282, +0.0004233576642, +0.0012399026764, +0.0016705596107, \n    +0.0015593673966, +0.0011508515815, +0.0006386861314, +0.0003267639903, \n    +0.0001484184915, +0.0000890510949, +0.0003489051095, +0.0005717761557, \n    +0.0007201946472, +0.0009355231144, +0.0009133819951, +0.0010542579075, \n    +0.0012547445255, +0.0009430656934, +0.0007277372263, +0.0006087591241, \n    +0.0001781021898, -0.0000742092457, +0.0001262773723, +0.0004678832117, \n    +0.0007425790754, +0.0008240875912, +0.0009282238443, +0.0010914841849, \n    +0.0011953771290, +0.0011138686131, +0.0008688564477, +0.0005569343066, \n    +0.0002077858881, +0.0000075425791, -0.0000520681265, -0.0000075425791, \n    +0.0001187347932, +0.0003564476886, +0.0009355231144, +0.0014182481752, \n    +0.0014851581509, +0.0014924574209, +0.0013737226277, +0.0010841849148, \n    +0.0006311435523, +0.0003712895377, +0.0007201946472, +0.0012029197080, \n    +0.0012995133820, +0.0012622871046, +0.0009503649635, +0.0005939172749, \n    +0.0004454987835, +0.0004678832117, +0.0004530413625, +0.0003637469586, \n    +0.0003043795620, +0.0003861313869, +0.0007350364964, +0.0009206812652, \n    +0.0007795620438, +0.0006535279805, +0.0005939172749, +0.0004603406326, \n    +0.0004454987835, +0.0004827250608, +0.0009133819951, +0.0014107055961, \n    +0.0014403892944, +0.0012771289538, +0.0008389294404, +0.0002895377129, \n    +0.0000669099757, -0.0001038929440, -0.0002077858881, +0.0000000000000, \n    +0.0001335766423, +0.0000742092457, -0.0000372262774, -0.0002301703163, \n    -0.0002525547445, -0.0000817518248, +0.0000669099757, +0.0001781021898, \n    +0.0000445255474, -0.0002746958637, -0.0003416058394, -0.0003564476886, \n    -0.0004158150852, -0.0001632603406, +0.0001038929440, +0.0002673965937, \n    +0.0002077858881, -0.0000223844282, -0.0001708029197, -0.0001559610706, \n    +0.0000593673966, +0.0002153284672, +0.0000593673966, -0.0001335766423, \n    -0.0002970802920, -0.0005272506083, -0.0005345498783, -0.0004082725061, \n    -0.0004158150852, -0.0004678832117, -0.0003712895377, -0.0002377128954, \n    -0.0001781021898, -0.0001038929440, -0.0002598540146, -0.0005717761557, \n    -0.0008167883212, -0.0007277372263, -0.0003489051095, +0.0000445255474, \n    +0.0002598540146, +0.0002673965937, +0.0000817518248, -0.0003267639903, \n    -0.0006163017032, -0.0005866180049, -0.0004009732360, -0.0002970802920, \n    -0.0002970802920, -0.0005642335766, -0.0009579075426, -0.0010914841849, \n    -0.0009206812652, -0.0006386861314, -0.0004678832117, -0.0003416058394, \n    -0.0002153284672, -0.0001262773723, +0.0000075425791, +0.0000372262774, \n    -0.0003712895377, -0.0006905109489, -0.0005939172749, -0.0002228710462, \n    +0.0000669099757, +0.0001559610706, +0.0001335766423, -0.0000075425791, \n    -0.0001929440389, -0.0003119221411, -0.0004454987835, -0.0004900243309, \n    -0.0002077858881, +0.0001856447689, +0.0002673965937, -0.0000372262774, \n    -0.0002970802920, -0.0005866180049, -0.0008688564477, -0.0008240875912, \n    -0.0006608272506, -0.0004900243309, -0.0004454987835, -0.0007647201946, \n    -0.0009133819951, -0.0007201946472, -0.0004306569343, -0.0001262773723, \n    -0.0000075425791, -0.0000223844282, -0.0000223844282, -0.0001781021898, \n    -0.0003637469586, -0.0005345498783, -0.0006386861314, -0.0003861313869, \n    -0.0002673965937, -0.0003712895377, -0.0002153284672, -0.0002077858881, \n    -0.0002895377129, -0.0003192214112, -0.0006386861314, -0.0008389294404, \n    -0.0008985401460, -0.0009058394161, -0.0007201946472, -0.0007944038929, \n    -0.0009727493917, -0.0006608272506, -0.0005124087591, -0.0005866180049, \n    -0.0006311435523, -0.0007647201946, -0.0007350364964, -0.0006832116788, \n    -0.0006535279805, -0.0005124087591, -0.0005790754258, -0.0006980535280, \n    -0.0006683698297, -0.0007277372263, -0.0007574209246, -0.0006905109489, \n    -0.0005493917275, -0.0003267639903, -0.0002450121655, -0.0003416058394, \n    -0.0005642335766, -0.0008240875912, -0.0007574209246, -0.0005420924574, \n    -0.0005272506083, -0.0005717761557, -0.0006311435523, -0.0008092457421, \n    -0.0008909975669, -0.0006980535280, -0.0005345498783, -0.0006311435523, \n    -0.0006535279805, -0.0006608272506, -0.0007277372263, -0.0006608272506, \n    -0.0006535279805, -0.0008167883212, -0.0009058394161, -0.0009282238443, \n    -0.0007350364964, -0.0004082725061, -0.0002004866180, -0.0001114355231, \n    -0.0002673965937, -0.0003489051095, -0.0002598540146, -0.0003934306569, \n    -0.0006014598540, -0.0008092457421, -0.0010024330900, -0.0010618004866, \n    -0.0011953771290, -0.0011583941606, -0.0007944038929, -0.0006087591241, \n    -0.0005939172749, -0.0005939172749, -0.0008464720195, -0.0009800486618, \n    -0.0009282238443, -0.0007053527981, -0.0002153284672, -0.0000148418491, \n    -0.0002153284672, -0.0003712895377, -0.0005790754258, -0.0008761557178, \n    -0.0009282238443, -0.0008019464720, -0.0005939172749, -0.0004827250608, \n    -0.0004975669100, -0.0005493917275, -0.0007277372263, -0.0008688564477, \n    -0.0009355231144, -0.0010245742092, -0.0008464720195, -0.0005197080292, \n    -0.0004751824818, -0.0005197080292, -0.0005197080292, -0.0006311435523, \n    -0.0006980535280, -0.0006756690998, -0.0005642335766, -0.0004603406326, \n    -0.0004678832117, -0.0005197080292, -0.0006014598540, -0.0007647201946, \n    -0.0007647201946, -0.0007350364964, -0.0008167883212, -0.0007795620438, \n    -0.0006535279805, -0.0004306569343, -0.0002228710462, -0.0001484184915, \n    -0.0000372262774, +0.0000148418491, -0.0001708029197, -0.0004306569343, \n    -0.0007053527981, -0.0007944038929, -0.0006459854015, -0.0005939172749, \n    -0.0007871046229, -0.0010542579075, -0.0011508515815, -0.0009206812652, \n    -0.0006683698297, -0.0005420924574, -0.0004530413625, -0.0005569343066, \n    -0.0006905109489, -0.0006756690998, -0.0005124087591, -0.0001856447689, \n    -0.0000372262774, -0.0002228710462, -0.0004900243309, -0.0007871046229, \n    -0.0007795620438, -0.0004082725061, -0.0001708029197, -0.0000593673966, \n    -0.0002450121655, -0.0005345498783, -0.0005493917275, -0.0004530413625, \n    -0.0003416058394, -0.0001187347932, -0.0000075425791, -0.0000742092457, \n    -0.0003119221411, -0.0005790754258, -0.0007128953771, -0.0008909975669, \n    -0.0008688564477, -0.0006311435523, -0.0004381995134, -0.0003267639903, \n    -0.0002525547445, -0.0002450121655, -0.0002598540146, -0.0002525547445, \n    -0.0001411192214, -0.0000223844282, +0.0000520681265, +0.0002153284672, \n    +0.0002822384428, +0.0002377128954, +0.0001632603406, +0.0000372262774, \n    -0.0001559610706, -0.0004975669100, -0.0008688564477, -0.0010766423358, \n    -0.0009875912409, -0.0006535279805, -0.0002228710462, +0.0002377128954, \n    +0.0005569343066, +0.0004530413625, +0.0001484184915, -0.0001929440389, \n    -0.0005717761557, -0.0007722627737, -0.0007795620438, -0.0006459854015, \n    -0.0005124087591, -0.0004454987835, -0.0002822384428, -0.0000965936740, \n    -0.0000148418491, +0.0001335766423, +0.0002077858881, +0.0001262773723, \n    +0.0001411192214, +0.0001038929440, -0.0001856447689, -0.0003785888078, \n    -0.0003861313869, -0.0004678832117, -0.0004306569343, -0.0001632603406, \n    +0.0001262773723, +0.0004082725061, +0.0004381995134, +0.0002598540146, \n    +0.0000000000000, -0.0003712895377, -0.0005124087591, -0.0003712895377, \n    -0.0002301703163, -0.0000445255474, +0.0000593673966, +0.0000445255474, \n    +0.0001114355231, +0.0002153284672, +0.0003267639903, +0.0003340632603, \n    +0.0002153284672, +0.0001781021898, +0.0001187347932, +0.0000742092457, \n    +0.0002822384428, +0.0005420924574, +0.0006608272506, +0.0005717761557, \n    +0.0004158150852, +0.0003340632603, +0.0002525547445, +0.0002895377129, \n    +0.0004158150852, +0.0003934306569, +0.0002525547445, +0.0000742092457, \n    -0.0000445255474, -0.0000669099757, -0.0000148418491, +0.0001114355231, \n    +0.0002970802920, +0.0004306569343, +0.0004233576642, +0.0003785888078, \n    +0.0004306569343, +0.0004082725061, +0.0003712895377, +0.0003861313869, \n    +0.0003119221411, +0.0002746958637, +0.0004454987835, +0.0006535279805, \n    +0.0007574209246, +0.0006756690998, +0.0004306569343, +0.0001781021898, \n    +0.0000890510949, +0.0001708029197, +0.0002895377129, +0.0003564476886, \n    +0.0003934306569, +0.0004900243309, +0.0006087591241, +0.0007350364964, \n    +0.0006683698297, +0.0003785888078, +0.0001708029197, +0.0001708029197, \n    +0.0002301703163, +0.0002673965937, +0.0002970802920, +0.0003340632603, \n    +0.0004530413625, +0.0005717761557, +0.0006459854015, +0.0005939172749, \n    +0.0004233576642, +0.0003416058394, +0.0003192214112, +0.0002746958637, \n    +0.0002450121655, +0.0002377128954, +0.0001484184915, +0.0000593673966, \n    +0.0001114355231, +0.0002004866180, +0.0001559610706, +0.0000965936740, \n    +0.0001929440389, +0.0004082725061, +0.0006087591241, +0.0005939172749, \n    +0.0003192214112, -0.0000593673966, -0.0002525547445, -0.0000817518248, \n    +0.0002228710462, +0.0004009732360, +0.0004530413625, +0.0004454987835, \n    +0.0004082725061, +0.0003934306569, +0.0003785888078, +0.0004009732360, \n    +0.0004975669100, +0.0005124087591, +0.0002970802920, +0.0000965936740, \n    +0.0000445255474, +0.0000075425791, +0.0002077858881, +0.0005124087591, \n    +0.0006163017032, +0.0005939172749, +0.0003861313869, +0.0001632603406, \n    +0.0001781021898, +0.0003119221411, +0.0004381995134, +0.0005197080292, \n    +0.0004381995134, +0.0003861313869, +0.0005124087591, +0.0005569343066, \n    +0.0003934306569, +0.0002153284672, +0.0001781021898, +0.0003192214112, \n    +0.0006459854015, +0.0009206812652, +0.0008540145985, +0.0005939172749, \n    +0.0003785888078, +0.0001929440389, +0.0000669099757, +0.0000742092457, \n    +0.0001856447689, +0.0004009732360, +0.0005272506083, +0.0004751824818, \n    +0.0005197080292, +0.0006756690998, +0.0006832116788, +0.0005569343066, \n    +0.0003564476886, +0.0001559610706, +0.0001262773723, +0.0002377128954, \n    +0.0003416058394, +0.0003785888078, +0.0004082725061, +0.0004009732360, \n    +0.0003489051095, +0.0003192214112, +0.0002525547445, +0.0002746958637, \n    +0.0003119221411, +0.0001856447689, +0.0000372262774, -0.0000593673966, \n    -0.0000445255474, +0.0002228710462, +0.0004678832117, +0.0006459854015, \n    +0.0007128953771, +0.0004233576642, +0.0001781021898, +0.0001781021898, \n    +0.0001114355231, +0.0000075425791, +0.0000742092457, +0.0002450121655, \n    +0.0003489051095, +0.0002450121655, +0.0000000000000, -0.0001856447689, \n    -0.0001484184915, +0.0002004866180, +0.0007128953771, +0.0010990267640, \n    +0.0011656934307, +0.0010766423358, +0.0008836982968, +0.0006014598540, \n    +0.0003416058394, +0.0001187347932, +0.0001708029197, +0.0003416058394, \n    +0.0003785888078, +0.0004158150852, +0.0004306569343, +0.0003340632603, \n    +0.0002450121655, +0.0001559610706, +0.0001335766423, +0.0001632603406, \n    +0.0000890510949, +0.0001559610706, +0.0004827250608, +0.0007425790754, \n    +0.0007871046229, +0.0005345498783, +0.0002377128954, +0.0002301703163, \n    +0.0004306569343, +0.0006756690998, +0.0008836982968, +0.0007425790754, \n    +0.0003934306569, +0.0002450121655, +0.0002895377129, +0.0004233576642, \n    +0.0005717761557, +0.0006832116788, +0.0008092457421, +0.0008761557178, \n    +0.0007722627737, +0.0006014598540, +0.0004751824818, +0.0004233576642, \n    +0.0002598540146, +0.0001187347932, +0.0002377128954, +0.0004158150852, \n    +0.0005124087591, +0.0006980535280, +0.0009058394161, +0.0008240875912, \n    +0.0005569343066, +0.0003489051095, +0.0002377128954, +0.0001929440389, \n    +0.0001411192214, +0.0001484184915, +0.0003119221411, +0.0004233576642, \n    +0.0003043795620, +0.0000742092457, -0.0001781021898, -0.0002525547445, \n    -0.0001187347932, +0.0000445255474, +0.0002822384428, +0.0004009732360, \n    +0.0004454987835, +0.0006756690998, +0.0007871046229, +0.0005717761557, \n    +0.0003119221411, +0.0001262773723, +0.0000075425791, -0.0000372262774, \n    -0.0000593673966, +0.0000148418491, +0.0000296836983, -0.0000445255474, \n    -0.0001038929440, -0.0000890510949, +0.0000817518248, +0.0003489051095, \n    +0.0004306569343, +0.0003712895377, +0.0002598540146, +0.0001708029197, \n    +0.0001187347932, +0.0000742092457, +0.0000520681265, +0.0000890510949, \n    +0.0001781021898, +0.0003861313869, +0.0006087591241, +0.0006459854015, \n    +0.0004454987835, +0.0001708029197, +0.0000372262774, -0.0000445255474, \n    -0.0000965936740, +0.0000000000000, +0.0001484184915, +0.0003267639903, \n    +0.0003712895377, +0.0002228710462, +0.0000965936740, -0.0000075425791, \n    -0.0001187347932, -0.0000445255474, +0.0000223844282, +0.0000148418491, \n    +0.0001335766423, +0.0002228710462, +0.0002450121655, +0.0003192214112, \n    +0.0004082725061, +0.0004603406326, +0.0004530413625, +0.0003637469586, \n    +0.0003119221411, +0.0001187347932, -0.0000669099757, -0.0000148418491, \n    +0.0000445255474, +0.0000890510949, +0.0002004866180, +0.0003043795620, \n    +0.0004158150852, +0.0004975669100, +0.0004530413625, +0.0002895377129, \n    +0.0001187347932, +0.0001781021898, +0.0003267639903, +0.0002377128954, \n    +0.0000593673966, -0.0001262773723, -0.0002228710462, -0.0002004866180, \n    -0.0002450121655, -0.0002598540146, -0.0000593673966, +0.0002004866180, \n    +0.0003267639903, +0.0003267639903, +0.0002301703163, +0.0001559610706, \n    +0.0000593673966, +0.0000445255474, +0.0001632603406, +0.0001708029197, \n    +0.0000742092457, +0.0000223844282, -0.0000965936740, -0.0002377128954, \n    -0.0002673965937, -0.0002895377129, -0.0002895377129, -0.0001262773723, \n    +0.0000890510949, +0.0002598540146, +0.0003489051095, +0.0002228710462, \n    -0.0000148418491, -0.0001856447689, -0.0004009732360, -0.0005790754258, \n    -0.0005272506083, -0.0002598540146, +0.0000000000000, +0.0001114355231, \n    +0.0001559610706, +0.0001781021898, +0.0000817518248, -0.0000445255474, \n    -0.0000593673966, -0.0000445255474, -0.0000520681265, -0.0001038929440, \n    -0.0001559610706, -0.0002895377129, -0.0004158150852, -0.0003416058394, \n    -0.0001929440389, -0.0001856447689, -0.0002822384428, -0.0003267639903, \n    -0.0003416058394, -0.0003712895377, -0.0003043795620, -0.0001187347932, \n    -0.0000148418491, +0.0000742092457, +0.0002153284672, +0.0002301703163, \n    +0.0000742092457, -0.0001559610706, -0.0003564476886, -0.0004530413625, \n    -0.0004381995134, -0.0003340632603, -0.0003192214112, -0.0003861313869, \n    -0.0003340632603, -0.0002673965937, -0.0002077858881, -0.0001484184915, \n    -0.0001856447689, -0.0002746958637, -0.0002822384428, -0.0003416058394, \n    -0.0004009732360, -0.0003340632603, -0.0002598540146, -0.0002077858881, \n    -0.0001484184915, -0.0001262773723, -0.0001411192214, -0.0001708029197, \n    -0.0001262773723, -0.0000669099757, -0.0000965936740, -0.0000593673966, \n    -0.0001114355231, -0.0004233576642, -0.0007498783455, -0.0009503649635, \n    -0.0009133819951, -0.0006608272506, -0.0004827250608, -0.0003267639903, \n    -0.0002004866180, -0.0001929440389, -0.0000965936740, -0.0000075425791, \n    -0.0000817518248, -0.0001856447689, -0.0002301703163, -0.0002004866180, \n    -0.0002077858881, -0.0003192214112, -0.0003416058394, -0.0002970802920, \n    -0.0003267639903, -0.0002673965937, -0.0001484184915, -0.0001708029197, \n    -0.0001484184915, -0.0001411192214, -0.0003712895377, -0.0005866180049, \n    -0.0006832116788, -0.0007053527981, -0.0006608272506, -0.0005790754258, \n    -0.0004975669100, -0.0004751824818, -0.0005124087591, -0.0004678832117, \n    -0.0003192214112, -0.0001187347932, +0.0000372262774, +0.0000372262774, \n    -0.0001708029197, -0.0004975669100, -0.0006905109489, -0.0006608272506, \n    -0.0005345498783, -0.0003340632603, -0.0001559610706, -0.0001929440389, \n    -0.0003119221411, -0.0003637469586, -0.0003637469586, -0.0003785888078, \n    -0.0004082725061, -0.0004678832117, -0.0005493917275, -0.0005790754258, \n    -0.0004827250608, -0.0004009732360, -0.0003267639903, -0.0001187347932, \n    +0.0000075425791, -0.0000593673966, -0.0002004866180, -0.0003192214112, \n    -0.0004009732360, -0.0005048661800, -0.0006163017032, -0.0006087591241, \n    -0.0004751824818, -0.0003637469586, -0.0003489051095, -0.0003416058394, \n    -0.0003043795620, -0.0002377128954, -0.0002525547445, -0.0002895377129, \n    -0.0002153284672, -0.0001114355231, -0.0001038929440, -0.0001262773723, \n    -0.0001708029197, -0.0002598540146, -0.0003637469586, -0.0005569343066, \n    -0.0006683698297, -0.0006386861314, -0.0006311435523, -0.0006386861314, \n    -0.0006014598540, -0.0004975669100, -0.0003192214112, -0.0001929440389, \n    -0.0002153284672, -0.0002895377129, -0.0003785888078, -0.0004082725061, \n    -0.0003564476886, -0.0002228710462, -0.0001114355231, -0.0000965936740, \n    -0.0001187347932, -0.0001632603406, -0.0002377128954, -0.0003043795620, \n    -0.0003340632603, -0.0003564476886, -0.0003712895377, -0.0003192214112, \n    -0.0002228710462, -0.0001929440389, -0.0002077858881, -0.0002746958637, \n    -0.0003564476886, -0.0003785888078, -0.0004233576642, -0.0004530413625, \n    -0.0004454987835, -0.0003637469586, -0.0002377128954, -0.0002377128954, \n    -0.0002970802920, -0.0002746958637, -0.0001114355231, +0.0000445255474, \n    +0.0000223844282, -0.0000223844282, -0.0000075425791, -0.0000445255474, \n    -0.0000296836983, +0.0000296836983, +0.0000520681265, +0.0000593673966, \n    -0.0000148418491, -0.0000148418491, +0.0000445255474, -0.0000669099757, \n    -0.0002598540146, -0.0004751824818, -0.0006311435523, -0.0005345498783, \n    -0.0003043795620, -0.0001038929440, +0.0000817518248, +0.0002004866180, \n    +0.0002673965937, +0.0002377128954, +0.0001632603406, +0.0000445255474, \n    -0.0001114355231, -0.0002004866180, -0.0002228710462, -0.0002301703163, \n    -0.0002228710462, -0.0001114355231, +0.0001038929440, +0.0002377128954, \n    +0.0002153284672, +0.0001411192214, +0.0000890510949, +0.0000000000000, \n    -0.0001484184915, -0.0002970802920, -0.0003416058394, -0.0002673965937, \n    -0.0001632603406, -0.0001411192214, -0.0000817518248, +0.0000000000000, \n    +0.0000223844282, +0.0001262773723, +0.0001262773723, -0.0000075425791, \n    -0.0000817518248, -0.0001781021898, -0.0002228710462, -0.0001187347932, \n    +0.0000075425791, +0.0002077858881, +0.0002895377129, +0.0001559610706, \n    +0.0000296836983, -0.0000742092457, -0.0001038929440, -0.0001187347932, \n    -0.0001335766423, +0.0000669099757, +0.0002895377129, +0.0003416058394, \n    +0.0002895377129, +0.0001335766423, +0.0000000000000, -0.0000817518248, \n    -0.0001335766423, -0.0000669099757, -0.0000075425791, +0.0000223844282, \n    +0.0000445255474, -0.0000223844282, -0.0000890510949, -0.0000372262774, \n    +0.0000742092457, +0.0001335766423, +0.0000372262774, -0.0000593673966, \n    -0.0000520681265, -0.0000593673966, +0.0000148418491, +0.0001929440389, \n    +0.0002746958637, +0.0002525547445, +0.0002746958637, +0.0003192214112, \n    +0.0002077858881, +0.0000669099757, +0.0000296836983, +0.0000296836983, \n    +0.0000296836983, +0.0000296836983, +0.0000372262774, +0.0000593673966, \n    +0.0000223844282, +0.0000890510949, +0.0002377128954, +0.0002377128954, \n    +0.0001484184915, +0.0000669099757, -0.0000445255474, -0.0001187347932, \n    -0.0002301703163, -0.0003119221411, -0.0003043795620, -0.0002004866180, \n    -0.0000296836983, +0.0001856447689, +0.0003416058394, +0.0003861313869, \n    +0.0003564476886, +0.0003340632603, +0.0003267639903, +0.0002970802920, \n    +0.0001484184915, +0.0000372262774, -0.0000372262774, -0.0002450121655, \n    -0.0004381995134, -0.0004900243309, -0.0004381995134, -0.0002673965937, \n    -0.0000372262774, +0.0001781021898, +0.0003564476886, +0.0004678832117, \n    +0.0004751824818, +0.0003192214112, +0.0001335766423, +0.0000520681265, \n    -0.0000075425791, -0.0000593673966, -0.0000669099757, -0.0001038929440, \n    -0.0001335766423, -0.0001114355231, +0.0000000000000, +0.0002153284672, \n    +0.0003785888078, +0.0004381995134, +0.0004381995134, +0.0003712895377, \n    +0.0002301703163, +0.0001114355231, +0.0000965936740, +0.0001335766423, \n    +0.0000965936740, +0.0000075425791, -0.0000296836983, +0.0000075425791, \n    +0.0000965936740, +0.0001262773723, +0.0001262773723, +0.0000445255474, \n    -0.0001038929440, -0.0001559610706, -0.0001114355231, +0.0000075425791, \n    +0.0002004866180, +0.0003043795620, +0.0003416058394, +0.0003934306569, \n    +0.0003267639903, +0.0002525547445, +0.0001929440389, +0.0000223844282, \n    -0.0000669099757, -0.0000445255474, +0.0000075425791, +0.0000520681265, \n    -0.0000148418491, -0.0001335766423, -0.0001335766423, -0.0000965936740, \n    -0.0000742092457, +0.0000000000000, +0.0001335766423, +0.0002673965937, \n    +0.0003340632603, +0.0002970802920, +0.0001781021898, +0.0001335766423, \n    +0.0001411192214, +0.0001484184915, +0.0001484184915, +0.0000445255474, \n    +0.0000075425791, +0.0000520681265, +0.0000223844282, +0.0000296836983, \n    -0.0000075425791, -0.0001559610706, -0.0002598540146, -0.0002673965937, \n    -0.0000890510949, +0.0001411192214, +0.0002525547445, +0.0002746958637, \n    +0.0001781021898, +0.0000890510949, +0.0001262773723, +0.0001335766423, \n    +0.0000817518248, +0.0000372262774, -0.0000372262774, +0.0000000000000, \n    +0.0001411192214, +0.0002301703163, +0.0002822384428, +0.0003267639903, \n    +0.0002822384428, +0.0001929440389, +0.0000372262774, -0.0001187347932, \n    -0.0000965936740, +0.0000520681265, +0.0002228710462, +0.0002895377129, \n    +0.0002004866180, +0.0001114355231, +0.0000817518248, +0.0000965936740, \n    +0.0001411192214, +0.0001929440389, +0.0002970802920, +0.0003861313869, \n    +0.0002746958637, +0.0001632603406, +0.0001781021898, +0.0002895377129, \n    +0.0004082725061, +0.0004454987835, +0.0003934306569, +0.0003043795620, \n    +0.0001708029197, +0.0000148418491, -0.0001038929440, -0.0001559610706, \n    -0.0000965936740, +0.0000965936740, +0.0003192214112, +0.0004233576642, \n    +0.0004082725061, +0.0003267639903, +0.0002450121655, +0.0002598540146, \n    +0.0002301703163, +0.0001114355231, +0.0000593673966, +0.0001262773723, \n    +0.0002377128954, +0.0003785888078, +0.0004751824818, +0.0004751824818, \n    +0.0004082725061, +0.0002895377129, +0.0002077858881, +0.0001781021898, \n    +0.0002228710462, +0.0003340632603, +0.0004530413625, +0.0005866180049, \n    +0.0006236009732, +0.0004381995134, +0.0002377128954, +0.0000965936740, \n    +0.0000890510949, +0.0002525547445, +0.0004381995134, +0.0006236009732, \n    +0.0007277372263, +0.0006683698297, +0.0006014598540, +0.0005569343066, \n    +0.0004827250608, +0.0003416058394, +0.0001484184915, -0.0000445255474, \n    -0.0001335766423, -0.0000965936740, +0.0000223844282, +0.0001114355231, \n    +0.0001114355231, +0.0001632603406, +0.0002525547445, +0.0002673965937, \n    +0.0002525547445, +0.0002746958637, +0.0003192214112, +0.0004158150852, \n    +0.0004530413625, +0.0003785888078, +0.0002895377129, +0.0002004866180, \n    +0.0001114355231, +0.0000742092457, +0.0000593673966, +0.0000817518248, \n    +0.0001559610706, +0.0002153284672, +0.0001929440389, +0.0000445255474, \n    -0.0000742092457, -0.0000817518248, +0.0000223844282, +0.0001856447689, \n    +0.0002895377129, +0.0003416058394, +0.0003564476886, +0.0003192214112, \n    +0.0002450121655, +0.0001781021898, +0.0002004866180, +0.0002004866180, \n    +0.0000520681265, -0.0000669099757, -0.0000890510949, -0.0000593673966, \n    +0.0000520681265, +0.0002004866180, +0.0002895377129, +0.0003267639903, \n    +0.0003043795620, +0.0002746958637, +0.0002077858881, +0.0000742092457, \n    -0.0000742092457, -0.0001856447689, -0.0002301703163, -0.0002077858881, \n    -0.0001262773723, -0.0000296836983, -0.0000148418491, -0.0000372262774, \n    -0.0000445255474, -0.0000742092457, -0.0000890510949, -0.0000075425791, \n    +0.0000593673966, +0.0000148418491, -0.0000742092457, -0.0001187347932, \n    -0.0001632603406, -0.0002077858881, -0.0001708029197, -0.0000372262774, \n    +0.0000593673966, +0.0000520681265, -0.0000593673966, -0.0001929440389, \n    -0.0002228710462, -0.0001335766423, -0.0000669099757, -0.0000520681265, \n    -0.0000742092457, -0.0001187347932, -0.0001632603406, -0.0002077858881, \n    -0.0001559610706, -0.0000445255474, -0.0000520681265, -0.0001187347932, \n    -0.0001632603406, -0.0002153284672, -0.0002004866180, -0.0001262773723, \n    -0.0000593673966, -0.0000223844282, -0.0000223844282, -0.0000742092457, \n    -0.0000817518248, -0.0000296836983, +0.0000223844282, +0.0000445255474, \n    -0.0000296836983, -0.0001708029197, -0.0002970802920, -0.0003712895377, \n    -0.0003564476886, -0.0002450121655, -0.0000669099757, +0.0000445255474, \n    +0.0000445255474, +0.0000372262774, -0.0000075425791, -0.0000742092457, \n    -0.0000890510949, -0.0000965936740, -0.0001038929440, -0.0000890510949, \n    -0.0000520681265, -0.0000075425791, -0.0000890510949, -0.0002895377129, \n    -0.0004233576642, -0.0005048661800, -0.0005420924574, -0.0003934306569, \n    -0.0000890510949, +0.0001484184915, +0.0003043795620, +0.0003712895377, \n    +0.0003267639903, +0.0002228710462, +0.0000817518248, -0.0000372262774, \n    -0.0000890510949, -0.0000445255474, -0.0000520681265, -0.0001632603406, \n    -0.0002525547445, -0.0002746958637, -0.0002228710462, -0.0000669099757, \n    +0.0001114355231, +0.0002450121655, +0.0002377128954, +0.0000593673966, \n    -0.0000965936740, -0.0001335766423, -0.0001114355231, +0.0000296836983, \n    +0.0002301703163, +0.0002895377129, +0.0001559610706, +0.0000000000000, \n    -0.0000148418491, +0.0000148418491, -0.0000372262774, -0.0000742092457, \n    -0.0000669099757, -0.0000593673966, +0.0000520681265, +0.0001856447689, \n    +0.0002153284672, +0.0002077858881, +0.0001484184915, +0.0000817518248, \n    +0.0000669099757, +0.0000223844282, -0.0000148418491, -0.0000148418491, \n    +0.0000372262774, +0.0001335766423, +0.0001484184915, +0.0001262773723, \n    +0.0001632603406, +0.0001335766423, +0.0000445255474, -0.0000148418491, \n    +0.0000000000000, +0.0000520681265, +0.0000223844282, -0.0000372262774, \n    -0.0000223844282, +0.0000000000000, -0.0000296836983, -0.0000445255474, \n    -0.0000372262774, -0.0000520681265, -0.0000742092457, -0.0000148418491, \n    +0.0000296836983, +0.0000520681265, +0.0001335766423, +0.0002301703163, \n    +0.0002598540146, +0.0002153284672, +0.0000965936740, -0.0000372262774, \n    -0.0000965936740, -0.0001187347932, -0.0001781021898, -0.0002301703163, \n    -0.0002004866180, -0.0000669099757, +0.0000520681265, +0.0000965936740, \n    +0.0001262773723, +0.0001262773723, +0.0000669099757, +0.0000000000000, \n    -0.0001411192214, -0.0002301703163, -0.0002301703163, -0.0001929440389, \n    -0.0000742092457, +0.0000148418491, +0.0000000000000, +0.0000000000000, \n    -0.0000296836983, -0.0000890510949, -0.0001335766423, -0.0002153284672, \n    -0.0002228710462, -0.0001411192214, -0.0001038929440, -0.0000742092457, \n    +0.0000000000000, +0.0000742092457, +0.0000965936740, +0.0000890510949, \n    +0.0000223844282, -0.0001262773723, -0.0002450121655, -0.0002673965937, \n    -0.0002598540146, -0.0002746958637, -0.0002450121655, -0.0001187347932, \n    +0.0000372262774, +0.0001781021898, +0.0002450121655, +0.0001856447689, \n    +0.0000742092457, -0.0000742092457, -0.0002450121655, -0.0003489051095, \n    -0.0003861313869, -0.0003637469586, -0.0002598540146, -0.0001856447689, \n    -0.0001632603406, -0.0001484184915, -0.0000817518248, +0.0000000000000, \n    -0.0000372262774, -0.0001411192214, -0.0002077858881, -0.0002525547445, \n    -0.0002673965937, -0.0002525547445, -0.0002525547445, -0.0002598540146, \n    -0.0002228710462, -0.0001335766423, -0.0000817518248, -0.0001038929440, \n    -0.0001262773723, -0.0000965936740, -0.0000890510949, -0.0001335766423, \n    -0.0001411192214, -0.0001262773723, -0.0001559610706, -0.0001781021898, \n    -0.0001708029197, -0.0001929440389, -0.0002746958637, -0.0003637469586, \n    -0.0003712895377, -0.0003119221411, -0.0002450121655, -0.0002153284672, \n    -0.0001114355231, +0.0000817518248, +0.0002301703163, +0.0002301703163, \n    +0.0001187347932, -0.0000148418491, -0.0000445255474, +0.0000000000000, \n    -0.0000223844282, -0.0001038929440, -0.0001632603406, -0.0001484184915, \n    -0.0000742092457, -0.0000372262774, -0.0000593673966, -0.0001038929440, \n    -0.0001632603406, -0.0001929440389, -0.0002525547445, -0.0003119221411, \n    -0.0002598540146, -0.0001335766423, +0.0000000000000, +0.0000593673966, \n    +0.0000593673966, +0.0000296836983, -0.0000296836983, -0.0000520681265, \n    -0.0000296836983, -0.0000148418491, +0.0000000000000, -0.0000148418491, \n    -0.0000075425791, +0.0000148418491, -0.0000223844282, -0.0000593673966, \n    -0.0000520681265, -0.0000445255474, -0.0000445255474, -0.0001187347932, \n    -0.0002450121655, -0.0002598540146, -0.0001929440389, -0.0000965936740, \n    -0.0000223844282, +0.0000000000000, +0.0000445255474, +0.0000520681265, \n    +0.0000075425791, -0.0000296836983, -0.0000593673966, -0.0000669099757, \n    -0.0000742092457, -0.0000890510949, -0.0001262773723, -0.0001632603406, \n    -0.0001559610706, -0.0000817518248, -0.0000520681265, -0.0000890510949, \n    -0.0001262773723, -0.0001262773723, -0.0001335766423, -0.0001335766423, \n    -0.0001411192214, -0.0001708029197, -0.0002004866180, -0.0001929440389, \n    -0.0001929440389, -0.0001708029197, -0.0000742092457, +0.0000000000000, \n    -0.0000148418491, -0.0000520681265, -0.0000372262774, -0.0000223844282, \n    -0.0000445255474, -0.0000742092457, -0.0001187347932, -0.0001929440389, \n    -0.0001856447689, -0.0001411192214, -0.0001187347932, -0.0000742092457, \n    -0.0000223844282, +0.0000075425791, +0.0000075425791, -0.0000372262774, \n    -0.0000593673966, -0.0000148418491, +0.0000372262774, +0.0000593673966, \n    +0.0000296836983, +0.0000000000000, -0.0000669099757, -0.0001929440389, \n    -0.0002525547445, -0.0002673965937, -0.0001856447689, -0.0000223844282, \n    +0.0000965936740, +0.0001708029197, +0.0001632603406, +0.0000445255474, \n    -0.0000445255474, -0.0000965936740, -0.0001484184915, -0.0001187347932, \n    -0.0000593673966, -0.0000223844282, +0.0000075425791, +0.0000000000000, \n    -0.0000075425791, +0.0000296836983, +0.0000890510949, +0.0001114355231, \n    +0.0001038929440, +0.0000890510949, +0.0001187347932, +0.0001335766423, \n    +0.0000817518248, +0.0000296836983, -0.0000148418491, -0.0000593673966, \n    -0.0000296836983, +0.0000372262774, +0.0000593673966, +0.0000669099757, \n    +0.0000669099757, +0.0000000000000, -0.0000965936740, -0.0001559610706, \n    -0.0001038929440, +0.0000223844282, +0.0001335766423, +0.0001632603406, \n    +0.0000965936740, +0.0000000000000, -0.0000296836983, -0.0000372262774, \n    -0.0000372262774, -0.0000296836983, -0.0000593673966, -0.0000593673966, \n    +0.0000000000000, +0.0000742092457, +0.0001187347932, +0.0001038929440, \n    +0.0000445255474, +0.0000000000000, -0.0000223844282, -0.0000520681265, \n    -0.0000742092457, -0.0000742092457, -0.0000817518248, -0.0000372262774, \n    +0.0000223844282, +0.0000148418491, -0.0000372262774, -0.0000520681265, \n    +0.0000075425791, +0.0001335766423, +0.0001708029197, +0.0001262773723, \n    +0.0000445255474, -0.0000372262774, -0.0000890510949, -0.0000965936740, \n    -0.0000817518248, -0.0000520681265, -0.0000742092457, -0.0001038929440, \n    -0.0000669099757, -0.0000223844282, +0.0000445255474, +0.0001335766423, \n    +0.0001411192214, +0.0000817518248, +0.0000296836983, -0.0000223844282, \n    -0.0000593673966, -0.0000593673966, -0.0000148418491, +0.0000742092457, \n    +0.0001187347932, +0.0000965936740, +0.0000669099757, +0.0000148418491, \n    -0.0000223844282, +0.0000075425791, +0.0001114355231, +0.0001559610706, \n    +0.0000890510949, +0.0000148418491, -0.0000148418491, -0.0000445255474, \n    -0.0000593673966, -0.0000817518248, -0.0000742092457, +0.0000000000000, \n    +0.0000445255474, +0.0000593673966, +0.0000890510949, +0.0001187347932, \n    +0.0001484184915, +0.0001411192214, +0.0001484184915, +0.0001708029197, \n    +0.0000890510949, -0.0000593673966, -0.0001632603406, -0.0001559610706, \n    -0.0001187347932, -0.0000817518248, -0.0000075425791, +0.0000742092457, \n    +0.0001335766423, +0.0001856447689, +0.0001559610706, +0.0000445255474, \n    -0.0000075425791, -0.0000075425791, +0.0000000000000, +0.0000296836983, \n    +0.0001038929440, +0.0002077858881, +0.0002450121655, +0.0001781021898, \n    +0.0000669099757, +0.0000000000000, -0.0000593673966, -0.0000669099757, \n    +0.0000075425791, +0.0001411192214, +0.0002746958637, +0.0003416058394, \n    +0.0002822384428, +0.0001929440389, +0.0001262773723, +0.0000965936740, \n    +0.0001335766423, +0.0001335766423, +0.0000742092457, +0.0000372262774, \n    +0.0000075425791, +0.0000000000000, -0.0000148418491, -0.0000445255474, \n    -0.0000520681265, -0.0000075425791, +0.0000817518248, +0.0001559610706, \n    +0.0001632603406, +0.0001559610706, +0.0001114355231, +0.0000520681265, \n    +0.0000075425791, -0.0000296836983, -0.0000669099757, -0.0000965936740, \n    -0.0000817518248, -0.0000148418491, +0.0000445255474, +0.0001411192214, \n    +0.0002077858881, +0.0001708029197, +0.0000890510949, +0.0000075425791, \n    -0.0000520681265, -0.0000223844282, +0.0000520681265, +0.0000669099757, \n    +0.0000669099757, +0.0000742092457, +0.0000669099757, +0.0000742092457, \n    +0.0001114355231, +0.0001559610706, +0.0001856447689, +0.0001856447689, \n    +0.0001559610706, +0.0001262773723, +0.0000520681265, +0.0000000000000, \n    +0.0000000000000, +0.0000075425791, +0.0000075425791, +0.0000148418491, \n    +0.0000223844282, +0.0000296836983, +0.0000296836983, +0.0000148418491, \n    +0.0000445255474, +0.0001559610706, +0.0002895377129, +0.0003785888078, \n    +0.0003192214112, +0.0001484184915, -0.0000075425791, -0.0000890510949, \n    -0.0000890510949, -0.0000223844282, +0.0000148418491, +0.0000372262774, \n    +0.0000742092457, +0.0000890510949, +0.0000965936740, +0.0001484184915, \n    +0.0001929440389, +0.0001856447689, +0.0001262773723, +0.0000296836983, \n    -0.0000296836983, -0.0000296836983, -0.0000148418491, +0.0000000000000, \n    +0.0000075425791, -0.0000296836983, -0.0001038929440, -0.0001484184915, \n    -0.0001038929440, +0.0000000000000, +0.0001335766423, +0.0002450121655, \n    +0.0002822384428, +0.0002301703163, +0.0001262773723, +0.0000148418491, \n    -0.0000372262774, +0.0000000000000, +0.0000817518248, +0.0001187347932, \n    +0.0000817518248, +0.0000372262774, +0.0000075425791, -0.0000075425791, \n    +0.0000148418491, +0.0000669099757, +0.0000890510949, +0.0000965936740, \n    +0.0000965936740, +0.0000445255474, -0.0000148418491, -0.0000223844282, \n    +0.0000742092457, +0.0002077858881, +0.0002377128954, +0.0001187347932, \n    -0.0000372262774, -0.0001335766423, -0.0001411192214, -0.0000965936740, \n    -0.0000148418491, +0.0000593673966, +0.0001335766423, +0.0001708029197, \n    +0.0001632603406, +0.0001187347932, +0.0000296836983, -0.0000669099757, \n    -0.0001262773723, -0.0001484184915, -0.0001335766423, -0.0000593673966, \n    +0.0000445255474, +0.0001484184915, +0.0001856447689, +0.0001484184915, \n    +0.0000817518248, +0.0000372262774, +0.0000148418491, +0.0000223844282, \n    +0.0000445255474, +0.0000372262774, +0.0000000000000, -0.0000296836983, \n    -0.0000520681265, -0.0000445255474, -0.0000148418491, +0.0000075425791, \n    -0.0000372262774, -0.0001187347932, -0.0001484184915, -0.0000520681265, \n    +0.0001262773723, +0.0002822384428, +0.0003119221411, +0.0002301703163, \n    +0.0000965936740, -0.0000372262774, -0.0001114355231, -0.0000593673966, \n    +0.0000445255474, +0.0001559610706, +0.0001856447689, +0.0001632603406, \n    +0.0001484184915, +0.0000890510949, +0.0000372262774, +0.0000148418491, \n    -0.0000445255474, -0.0001335766423, -0.0001929440389, -0.0001929440389, \n    -0.0001262773723, -0.0000148418491, +0.0001262773723, +0.0001856447689, \n    +0.0001559610706, +0.0000965936740, +0.0000445255474, +0.0000148418491, \n    +0.0000148418491, +0.0000223844282, +0.0000223844282, -0.0000075425791, \n    -0.0000669099757, -0.0000965936740, -0.0000669099757, +0.0000223844282, \n    +0.0000965936740, +0.0000520681265, +0.0000000000000, -0.0000075425791, \n    +0.0000075425791, +0.0000593673966, +0.0000742092457, +0.0000593673966, \n    +0.0000148418491, -0.0000669099757, -0.0001484184915, -0.0001781021898, \n    -0.0001781021898, -0.0001484184915, -0.0001187347932, -0.0000593673966, \n    +0.0000148418491, +0.0000593673966, +0.0000669099757, +0.0000593673966, \n    +0.0000669099757, +0.0001335766423, +0.0002153284672, +0.0002004866180, \n    +0.0000742092457, -0.0000742092457, -0.0001632603406, -0.0001708029197, \n    -0.0001632603406, -0.0001335766423, -0.0000445255474, +0.0000445255474, \n    +0.0000890510949, +0.0001114355231, +0.0001187347932, +0.0001262773723, \n    +0.0000890510949, +0.0000075425791, -0.0001114355231, -0.0002077858881, \n    -0.0002228710462, -0.0001781021898, -0.0000817518248, +0.0000669099757, \n    +0.0001929440389, +0.0002822384428, +0.0002970802920, +0.0002746958637, \n    +0.0002525547445, +0.0002077858881, +0.0001262773723, +0.0000075425791, \n    -0.0001484184915, -0.0002377128954, -0.0002301703163, -0.0001632603406, \n    -0.0000742092457, +0.0000148418491, +0.0000890510949, +0.0001262773723, \n    +0.0001559610706, +0.0001708029197, +0.0001411192214, +0.0000742092457, \n    +0.0000223844282, +0.0000000000000, -0.0000372262774, -0.0000296836983, \n    +0.0000223844282, +0.0000890510949, +0.0001708029197, +0.0002153284672, \n    +0.0001929440389, +0.0001484184915, +0.0001038929440, +0.0000372262774, \n    -0.0000445255474, -0.0001411192214, -0.0001708029197, -0.0001187347932, \n    -0.0000593673966, +0.0000000000000, +0.0000593673966, +0.0000965936740, \n    +0.0001114355231, +0.0000742092457, +0.0000148418491, -0.0000075425791, \n    -0.0000075425791, +0.0000372262774, +0.0001114355231, +0.0001187347932, \n    +0.0000817518248, +0.0000445255474, +0.0000520681265, +0.0000817518248, \n    +0.0000742092457, +0.0000445255474, +0.0000296836983, +0.0000445255474, \n    +0.0000742092457, +0.0000817518248, +0.0000593673966, +0.0000296836983, \n    -0.0000445255474, -0.0001262773723, -0.0001632603406, -0.0001411192214, \n    -0.0000817518248, -0.0000075425791, -0.0000075425791, -0.0000372262774, \n    -0.0000742092457, -0.0001038929440, -0.0000965936740, -0.0000593673966, \n    -0.0000148418491, +0.0000000000000, +0.0000075425791, -0.0000075425791, \n    -0.0000223844282, +0.0000000000000, +0.0000445255474, +0.0001038929440, \n    +0.0001411192214, +0.0001411192214, +0.0001038929440, +0.0000520681265, \n    +0.0000445255474, +0.0000372262774, +0.0000000000000, -0.0000075425791, \n    -0.0000075425791, -0.0000520681265, -0.0001114355231, -0.0001335766423, \n    -0.0001038929440, -0.0000223844282, +0.0000520681265, +0.0000817518248, \n    +0.0000890510949, +0.0000742092457, +0.0000669099757, +0.0000669099757, \n    +0.0000223844282, -0.0000445255474, -0.0001038929440, -0.0000890510949, \n    -0.0000075425791, +0.0000223844282, +0.0000223844282, +0.0000520681265, \n    +0.0000520681265, +0.0000223844282, +0.0000148418491, -0.0000075425791, \n    -0.0000593673966, -0.0000890510949, -0.0000890510949, -0.0000890510949, \n    -0.0001187347932, -0.0001038929440, -0.0000520681265, -0.0000296836983, \n    -0.0000296836983, -0.0000148418491, +0.0000148418491, +0.0000372262774, \n    +0.0000075425791, +0.0000000000000, -0.0000296836983, -0.0001038929440, \n    -0.0001632603406, -0.0001929440389, -0.0001335766423, -0.0000296836983, \n    +0.0000000000000, +0.0000000000000, -0.0000372262774, -0.0000593673966, \n    -0.0000593673966, -0.0000593673966, -0.0000669099757, -0.0000593673966, \n    -0.0000520681265, -0.0000520681265, -0.0001038929440, -0.0001708029197, \n    -0.0002153284672, -0.0002377128954, -0.0002377128954, -0.0001929440389, \n    -0.0001187347932, -0.0000669099757, -0.0000669099757, -0.0000817518248, \n    -0.0000890510949, -0.0001038929440, -0.0001187347932, -0.0001187347932, \n    -0.0001114355231, -0.0000965936740, -0.0000742092457, -0.0000890510949, \n    -0.0001262773723, -0.0001484184915, -0.0001411192214, -0.0001262773723, \n    -0.0001114355231, -0.0001262773723, -0.0001632603406, -0.0001632603406, \n    -0.0001484184915, -0.0001335766423, -0.0001038929440, -0.0000817518248, \n    -0.0000669099757, -0.0000520681265, -0.0000372262774, -0.0000520681265, \n    -0.0001187347932, -0.0001708029197, -0.0001632603406, -0.0001856447689, \n    -0.0002301703163, -0.0002228710462, -0.0001632603406, -0.0000742092457, \n    +0.0000223844282, +0.0000593673966, +0.0000669099757, +0.0000372262774, \n    -0.0000223844282, -0.0000445255474, -0.0000742092457, -0.0001708029197, \n    -0.0002228710462, -0.0002525547445, -0.0002746958637, -0.0002228710462, \n    -0.0001559610706, -0.0000593673966, +0.0000296836983, +0.0000223844282, \n    -0.0000148418491, -0.0000593673966, -0.0000742092457, -0.0000148418491, \n    +0.0000445255474, +0.0000593673966, +0.0000223844282, -0.0000669099757, \n    -0.0001484184915, -0.0001708029197, -0.0001856447689, -0.0001632603406, \n    -0.0001262773723, -0.0000817518248, -0.0000372262774, -0.0000372262774, \n    -0.0000372262774, +0.0000000000000\n};\n"
  },
  {
    "path": "impulses/15-fender-superchamp-ui87.h",
    "content": "float fender_superchamp_ui87[] = {\n    +0.0000000000000, +0.0000000000000, -0.0000124489796, -0.0000124489796, \n    +0.0000000000000, +0.0000373469388, +0.0001120408163, +0.0001869387755, \n    +0.0002428571429, +0.0002055102041, +0.0001183673469, +0.0000000000000, \n    -0.0001120408163, -0.0001869387755, -0.0002055102041, -0.0001432653061, \n    -0.0000124489796, +0.0001369387755, +0.0002926530612, +0.0003985714286, \n    +0.0004173469388, +0.0003487755102, +0.0001993877551, +0.0000124489796, \n    -0.0001369387755, -0.0002242857143, -0.0002179591837, -0.0001183673469, \n    +0.0000312244898, +0.0001742857143, +0.0002616326531, +0.0002616326531, \n    +0.0001930612245, +0.0000934693878, +0.0000063265306, -0.0000187755102, \n    +0.0000187755102, +0.0001059183673, +0.0002055102041, +0.0002553061224, \n    +0.0002428571429, +0.0001681632653, +0.0000497959184, -0.0000561224490, \n    -0.0001308163265, -0.0001369387755, -0.0000871428571, -0.0000063265306, \n    +0.0000810204082, +0.0001557142857, +0.0001993877551, +0.0002055102041, \n    +0.0001869387755, +0.0001493877551, +0.0000995918367, +0.0000497959184, \n    +0.0000124489796, +0.0000000000000, +0.0000000000000, +0.0000312244898, \n    +0.0000995918367, +0.0001742857143, +0.0002367346939, +0.0002740816327, \n    +0.0002616326531, +0.0002055102041, +0.0001120408163, +0.0000124489796, \n    -0.0000622448980, -0.0001059183673, -0.0001059183673, -0.0000685714286, \n    -0.0000063265306, +0.0000685714286, +0.0001432653061, +0.0002055102041, \n    +0.0002491836735, +0.0002740816327, +0.0002865306122, +0.0002926530612, \n    +0.0002926530612, +0.0002926530612, +0.0002740816327, +0.0002304081633, \n    +0.0001493877551, +0.0000312244898, -0.0000934693878, -0.0002118367347, \n    -0.0002802040816, -0.0002740816327, -0.0001806122449, -0.0000436734694, \n    +0.0000995918367, +0.0002118367347, +0.0002740816327, +0.0002802040816, \n    +0.0002616326531, +0.0002367346939, +0.0002428571429, +0.0002802040816, \n    +0.0003175510204, +0.0003300000000, +0.0002740816327, +0.0001432653061, \n    -0.0000436734694, -0.0002367346939, -0.0003800000000, -0.0004234693878, \n    -0.0003675510204, -0.0002242857143, -0.0000497959184, +0.0001059183673, \n    +0.0002179591837, +0.0002802040816, +0.0003051020408, +0.0003175510204, \n    +0.0003363265306, +0.0003800000000, +0.0004234693878, +0.0004422448980, \n    +0.0004048979592, +0.0002865306122, +0.0000934693878, -0.0001618367347, \n    -0.0004234693878, -0.0006353061224, -0.0007287755102, -0.0006602040816, \n    -0.0004359183673, -0.0000934693878, +0.0002677551020, +0.0005606122449, \n    +0.0007100000000, +0.0006787755102, +0.0005044897959, +0.0002677551020, \n    +0.0000746938776, -0.0000312244898, -0.0000312244898, +0.0000000000000, \n    +0.0000124489796, -0.0000373469388, -0.0001493877551, -0.0002740816327, \n    -0.0003363265306, -0.0002865306122, -0.0001557142857, -0.0000124489796, \n    +0.0000810204082, +0.0000746938776, -0.0000063265306, -0.0000934693878, \n    -0.0000934693878, +0.0000312244898, +0.0002491836735, +0.0004359183673, \n    +0.0004732653061, +0.0002926530612, -0.0000810204082, -0.0005044897959, \n    -0.0007910204082, -0.0007910204082, -0.0004920408163, +0.0000000000000, \n    +0.0004857142857, +0.0007785714286, +0.0007473469388, +0.0004608163265, \n    +0.0000312244898, -0.0003363265306, -0.0006040816327, -0.0007597959184, \n    -0.0007224489796, -0.0008159183673, -0.0009030612245, -0.0008718367347, \n    -0.0006787755102, -0.0002926530612, +0.0002428571429, +0.0007971428571, \n    +0.0011957142857, +0.0012330612245, +0.0008969387755, +0.0003424489796, \n    -0.0002367346939, -0.0006414285714, -0.0008344897959, -0.0008159183673, \n    -0.0008034693878, -0.0008718367347, -0.0010900000000, -0.0012891836735, \n    -0.0013826530612, -0.0012020408163, -0.0008532653061, -0.0003551020408, \n    +0.0000000000000, +0.0000746938776, -0.0000995918367, -0.0003861224490, \n    -0.0006477551020, -0.0007785714286, -0.0005855102041, -0.0005481632653, \n    -0.0005667346939, -0.0013140816327, -0.0021548979592, -0.0037057142857, \n    -0.0049824489796, -0.0062904081633, -0.0072308163265, -0.0094044897959, \n    -0.0072993877551, -0.0138075510204, -0.0030330612245, -0.0133281632653, \n    -0.0246942857143, +0.0027902040816, +0.0544459183673, +0.0320932653061, \n    -0.0956757142857, -0.1275697959184, -0.0306608163265, +0.0084016326531, \n    +0.0812826530612, +0.2040691836735, +0.2002326530612, +0.1623100000000, \n    +0.0831573469388, -0.0095226530612, -0.0398534693878, -0.0714795918367, \n    -0.0870561224490, -0.0555295918367, -0.0589487755102, -0.0438457142857, \n    -0.0178744897959, +0.0066951020408, +0.0477008163265, +0.0553800000000, \n    +0.0518300000000, +0.0558471428571, +0.0315763265306, +0.0187216326531, \n    +0.0105006122449, -0.0076106122449, -0.0059104081633, -0.0186220408163, \n    -0.0288795918367, -0.0231995918367, -0.0170836734694, -0.0058044897959, \n    +0.0000124489796, -0.0093920408163, -0.0076606122449, +0.0011832653061, \n    +0.0031202040816, +0.0112291836735, +0.0091677551020, -0.0036495918367, \n    -0.0080467346939, -0.0097344897959, -0.0183230612245, -0.0085075510204, \n    -0.0107993877551, -0.0236853061224, -0.0122320408163, -0.0138761224490, \n    -0.0169279591837, -0.0099463265306, -0.0093857142857, -0.0079469387755, \n    -0.0065581632653, -0.0100644897959, +0.0011397959184, +0.0058481632653, \n    +0.0073989795918, +0.0098340816327, +0.0032261224490, +0.0038426530612, \n    +0.0017438775510, +0.0035936734694, +0.0075981632653, -0.0005293877551, \n    -0.0072993877551, -0.0104008163265, -0.0171022448980, -0.0207083673469, \n    -0.0168781632653, -0.0100459183673, -0.0008283673469, +0.0019742857143, \n    +0.0043908163265, +0.0030704081633, +0.0001557142857, -0.0002367346939, \n    -0.0000124489796, -0.0042538775510, -0.0106873469388, -0.0096534693878, \n    -0.0108181632653, -0.0110673469388, -0.0099463265306, -0.0104008163265, \n    -0.0128920408163, -0.0151528571429, -0.0129357142857, -0.0030579591837, \n    +0.0002677551020, -0.0040793877551, -0.0064895918367, -0.0103324489796, \n    -0.0093295918367, -0.0066826530612, -0.0044218367347, -0.0007473469388, \n    -0.0002677551020, +0.0024600000000, +0.0052067346939, -0.0024851020408, \n    -0.0079593877551, -0.0085387755102, -0.0097906122449, -0.0046585714286, \n    -0.0005916326531, -0.0013577551020, -0.0038116326531, -0.0086881632653, \n    -0.0116714285714, -0.0125432653061, -0.0134587755102, -0.0128671428571, \n    -0.0134714285714, -0.0120014285714, -0.0080777551020, -0.0079034693878, \n    -0.0062716326531, -0.0019806122449, +0.0011334693878, +0.0024912244898, \n    +0.0022669387755, +0.0032946938776, +0.0043222448980, +0.0025722448980, \n    +0.0031575510204, +0.0043161224490, +0.0032697959184, +0.0012891836735, \n    -0.0029210204082, -0.0078597959184, -0.0127614285714, -0.0153771428571, \n    -0.0134028571429, -0.0105689795918, -0.0081587755102, -0.0054432653061, \n    -0.0031140816327, -0.0013140816327, -0.0019244897959, -0.0026095918367, \n    -0.0007661224490, +0.0015259183673, +0.0037244897959, +0.0053312244898, \n    +0.0048018367347, +0.0036932653061, +0.0015881632653, -0.0009777551020, \n    -0.0008283673469, +0.0000436734694, +0.0002989795918, +0.0013826530612, \n    +0.0024787755102, +0.0028336734694, +0.0022483673469, +0.0017126530612, \n    +0.0028336734694, +0.0039859183673, +0.0054681632653, +0.0081900000000, \n    +0.0075546938776, +0.0047957142857, +0.0027963265306, +0.0016442857143, \n    +0.0021051020408, +0.0014636734694, +0.0005106122449, +0.0003175510204, \n    -0.0010026530612, -0.0008344897959, -0.0002865306122, +0.0000622448980, \n    +0.0028648979592, +0.0055118367347, +0.0069442857143, +0.0075920408163, \n    +0.0068383673469, +0.0061532653061, +0.0063463265306, +0.0065644897959, \n    +0.0055306122449, +0.0037804081633, +0.0012144897959, -0.0000561224490, \n    +0.0013826530612, +0.0021236734694, +0.0042163265306, +0.0073428571429, \n    +0.0076979591837, +0.0080716326531, +0.0087069387755, +0.0072930612245, \n    +0.0054744897959, +0.0036310204082, +0.0031763265306, +0.0037057142857, \n    +0.0048579591837, +0.0071810204082, +0.0086444897959, +0.0091055102041, \n    +0.0077228571429, +0.0047395918367, +0.0036371428571, +0.0017126530612, \n    -0.0005230612245, +0.0016816326531, +0.0041291836735, +0.0056177551020, \n    +0.0070438775510, +0.0059665306122, +0.0040295918367, +0.0025597959184, \n    +0.0014885714286, +0.0021175510204, +0.0025473469388, +0.0024975510204, \n    +0.0027589795918, +0.0025722448980, +0.0035873469388, +0.0069257142857, \n    +0.0088563265306, +0.0081089795918, +0.0071622448980, +0.0053063265306, \n    +0.0019930612245, -0.0008408163265, -0.0018185714286, -0.0009218367347, \n    +0.0004173469388, +0.0007910204082, -0.0000248979592, -0.0014200000000, \n    -0.0019244897959, -0.0000373469388, +0.0021175510204, +0.0027902040816, \n    +0.0035500000000, +0.0039734693878, +0.0023106122449, +0.0012269387755, \n    +0.0017065306122, +0.0018808163265, +0.0021861224490, +0.0023791836735, \n    +0.0023355102041, +0.0031202040816, +0.0045775510204, +0.0051755102041, \n    +0.0040232653061, +0.0016318367347, +0.0000312244898, -0.0002677551020, \n    +0.0003051020408, +0.0017126530612, +0.0023355102041, +0.0007412244898, \n    -0.0014263265306, -0.0028587755102, -0.0027902040816, -0.0014263265306, \n    +0.0004234693878, +0.0018746938776, +0.0022171428571, +0.0022295918367, \n    +0.0026842857143, +0.0022359183673, +0.0003487755102, -0.0015134693878, \n    -0.0026032653061, -0.0029708163265, -0.0019557142857, +0.0006165306122, \n    +0.0012393877551, -0.0001369387755, -0.0008842857143, -0.0017438775510, \n    -0.0038863265306, -0.0039424489796, -0.0028836734694, -0.0021424489796, \n    -0.0008408163265, -0.0006663265306, -0.0007412244898, -0.0009467346939, \n    -0.0018310204082, -0.0019306122449, -0.0013016326531, -0.0006851020408, \n    +0.0006975510204, +0.0006289795918, -0.0002677551020, -0.0014012244898, \n    -0.0028587755102, -0.0034753061224, -0.0036122448980, -0.0024475510204, \n    -0.0001244897959, +0.0009840816327, +0.0013951020408, +0.0009467346939, \n    -0.0009218367347, -0.0011771428571, -0.0011522448980, -0.0018559183673, \n    -0.0016816326531, -0.0010026530612, -0.0001493877551, +0.0007971428571, \n    +0.0011024489796, +0.0009965306122, +0.0001681632653, +0.0003985714286, \n    +0.0007661224490, -0.0005418367347, -0.0011273469388, -0.0011024489796, \n    -0.0014512244898, -0.0019681632653, -0.0031824489796, -0.0032510204082, \n    -0.0024040816327, -0.0017189795918, +0.0000436734694, +0.0010587755102, \n    -0.0002491836735, -0.0016130612245, -0.0024102040816, -0.0029085714286, \n    -0.0028463265306, -0.0026157142857, -0.0021922448980, -0.0012642857143, \n    -0.0002118367347, +0.0005169387755, +0.0008344897959, +0.0005979591837, \n    +0.0006663265306, +0.0006353061224, -0.0007722448980, -0.0018559183673, \n    -0.0018871428571, -0.0024538775510, -0.0025846938776, -0.0017624489796, \n    -0.0001993877551, +0.0011210204082, +0.0013140816327, +0.0023044897959, \n    +0.0033008163265, +0.0031140816327, +0.0026281632653, +0.0014512244898, \n    +0.0003487755102, -0.0004732653061, -0.0011522448980, -0.0005916326531, \n    +0.0000124489796, +0.0003736734694, +0.0009218367347, +0.0017875510204, \n    +0.0028836734694, +0.0029022448980, +0.0022483673469, +0.0009155102041, \n    -0.0008220408163, -0.0006975510204, -0.0003114285714, -0.0000124489796, \n    +0.0008593877551, +0.0006912244898, -0.0000063265306, -0.0004732653061, \n    -0.0005855102041, -0.0000746938776, -0.0002118367347, -0.0002989795918, \n    +0.0008657142857, +0.0015881632653, +0.0024040816327, +0.0032822448980, \n    +0.0035873469388, +0.0034379591837, +0.0020863265306, +0.0004608163265, \n    -0.0002367346939, -0.0003424489796, -0.0000373469388, +0.0001308163265, \n    -0.0000248979592, +0.0003051020408, +0.0004920408163, -0.0002616326531, \n    -0.0009902040816, -0.0013328571429, -0.0014324489796, -0.0009965306122, \n    -0.0002616326531, +0.0002553061224, +0.0005293877551, +0.0004359183673, \n    +0.0008034693878, +0.0015757142857, +0.0020055102041, +0.0023355102041, \n    +0.0031140816327, +0.0034379591837, +0.0029832653061, +0.0025285714286, \n    +0.0015071428571, +0.0006353061224, +0.0008095918367, +0.0010900000000, \n    +0.0015569387755, +0.0019806122449, +0.0021424489796, +0.0024975510204, \n    +0.0018622448980, +0.0007597959184, +0.0003424489796, -0.0003612244898, \n    -0.0002865306122, +0.0001369387755, -0.0000934693878, +0.0001557142857, \n    -0.0003612244898, -0.0008283673469, -0.0001742857143, -0.0001120408163, \n    +0.0001681632653, +0.0006851020408, +0.0008159183673, +0.0009902040816, \n    +0.0008034693878, +0.0015383673469, +0.0028087755102, +0.0030704081633, \n    +0.0028026530612, +0.0015632653061, +0.0001059183673, -0.0003363265306, \n    -0.0002553061224, +0.0002926530612, +0.0008034693878, +0.0006975510204, \n    +0.0006104081633, +0.0008095918367, +0.0010651020408, +0.0008842857143, \n    +0.0009716326531, +0.0011459183673, +0.0009030612245, +0.0006165306122, \n    +0.0000124489796, -0.0003487755102, -0.0008718367347, -0.0016442857143, \n    -0.0020863265306, -0.0025224489796, -0.0019430612245, -0.0004110204082, \n    +0.0008532653061, +0.0023106122449, +0.0032883673469, +0.0036185714286, \n    +0.0032697959184, +0.0020428571429, +0.0012955102041, +0.0006602040816, \n    +0.0000248979592, -0.0002865306122, -0.0006414285714, -0.0007224489796, \n    -0.0007785714286, -0.0010712244898, -0.0007597959184, -0.0003051020408, \n    -0.0000934693878, -0.0001930612245, +0.0001120408163, +0.0004173469388, \n    -0.0005667346939, -0.0013887755102, -0.0016628571429, -0.0014324489796, \n    -0.0007785714286, -0.0007036734694, -0.0009404081633, -0.0013887755102, \n    -0.0024787755102, -0.0030081632653, -0.0028275510204, -0.0019742857143, \n    -0.0002616326531, +0.0013638775510, +0.0023728571429, +0.0024414285714, \n    +0.0016130612245, +0.0003363265306, -0.0008842857143, -0.0016318367347, \n    -0.0021175510204, -0.0024475510204, -0.0025597959184, -0.0023169387755, \n    -0.0015881632653, -0.0011771428571, -0.0005606122449, +0.0000622448980, \n    -0.0001869387755, -0.0002802040816, -0.0004297959184, -0.0008969387755, \n    -0.0010524489796, -0.0011024489796, -0.0011957142857, -0.0014263265306, \n    -0.0021112244898, -0.0023418367347, -0.0020304081633, -0.0016877551020, \n    -0.0006851020408, +0.0000934693878, -0.0000871428571, -0.0003612244898, \n    -0.0002989795918, -0.0000063265306, +0.0008593877551, +0.0013328571429, \n    +0.0013514285714, +0.0011832653061, +0.0002926530612, -0.0003363265306, \n    -0.0004732653061, -0.0007224489796, -0.0004920408163, -0.0007536734694, \n    -0.0014263265306, -0.0013638775510, -0.0015383673469, -0.0015259183673, \n    -0.0008906122449, -0.0007971428571, -0.0006165306122, -0.0003424489796, \n    +0.0000497959184, +0.0005667346939, -0.0000124489796, -0.0006663265306, \n    -0.0010836734694, -0.0019681632653, -0.0021922448980, -0.0011334693878, \n    -0.0002179591837, -0.0000746938776, -0.0000124489796, +0.0001557142857, \n    -0.0001369387755, -0.0004920408163, -0.0009653061224, -0.0016318367347, \n    -0.0016940816327, -0.0010214285714, -0.0004297959184, -0.0004359183673, \n    -0.0011024489796, -0.0016442857143, -0.0016691836735, -0.0016006122449, \n    -0.0010214285714, -0.0003551020408, -0.0005357142857, -0.0008718367347, \n    -0.0011708163265, -0.0017189795918, -0.0019306122449, -0.0018310204082, \n    -0.0015881632653, -0.0009653061224, -0.0007536734694, -0.0011708163265, \n    -0.0014761224490, -0.0017002040816, -0.0018497959184, -0.0018000000000, \n    -0.0017624489796, -0.0017189795918, -0.0015881632653, -0.0014075510204, \n    -0.0011085714286, -0.0006602040816, -0.0003861224490, -0.0002428571429, \n    -0.0000995918367, -0.0002118367347, -0.0004173469388, -0.0005357142857, \n    -0.0003800000000, -0.0003238775510, -0.0006104081633, -0.0009716326531, \n    -0.0013016326531, -0.0014822448980, -0.0014697959184, -0.0012393877551, \n    -0.0006165306122, -0.0004359183673, -0.0007785714286, -0.0011708163265, \n    -0.0015383673469, -0.0013204081633, -0.0010775510204, -0.0004857142857, \n    +0.0003300000000, -0.0002553061224, -0.0012206122449, -0.0015383673469, \n    -0.0016006122449, -0.0014636734694, -0.0014387755102, -0.0012706122449, \n    -0.0010338775510, -0.0012642857143, -0.0012830612245, -0.0007597959184, \n    -0.0005667346939, -0.0004795918367, -0.0001930612245, -0.0002428571429, \n    -0.0005293877551, -0.0007722448980, -0.0010214285714, -0.0007163265306, \n    -0.0003487755102, -0.0004110204082, -0.0004422448980, -0.0008593877551, \n    -0.0011024489796, -0.0007661224490, -0.0008220408163, -0.0010712244898, \n    -0.0011771428571, -0.0015195918367, -0.0017065306122, -0.0014946938776, \n    -0.0008034693878, -0.0000187755102, +0.0000810204082, -0.0001493877551, \n    -0.0004048979592, -0.0006165306122, -0.0007287755102, -0.0006538775510, \n    -0.0004920408163, -0.0002491836735, +0.0000436734694, +0.0001244897959, \n    -0.0000063265306, +0.0000000000000, +0.0001183673469, +0.0001930612245, \n    +0.0000187755102, -0.0002553061224, -0.0005542857143, -0.0010214285714, \n    -0.0010214285714, -0.0004981632653, +0.0001869387755, +0.0005106122449, \n    +0.0001869387755, -0.0002802040816, -0.0002616326531, -0.0000187755102, \n    +0.0000312244898, +0.0000622448980, -0.0000934693878, -0.0003363265306, \n    -0.0002616326531, +0.0000000000000, +0.0004920408163, +0.0009591836735, \n    +0.0008159183673, +0.0005542857143, +0.0003612244898, +0.0003238775510, \n    +0.0004981632653, +0.0005044897959, +0.0003363265306, +0.0002304081633, \n    +0.0000934693878, +0.0000746938776, +0.0000685714286, -0.0001869387755, \n    -0.0004795918367, -0.0008593877551, -0.0010214285714, -0.0008034693878, \n    -0.0003924489796, +0.0000685714286, +0.0004732653061, +0.0006912244898, \n    +0.0006228571429, +0.0004110204082, +0.0005169387755, +0.0008593877551, \n    +0.0009342857143, +0.0006165306122, +0.0001059183673, -0.0001493877551, \n    +0.0000497959184, +0.0004732653061, +0.0008344897959, +0.0010900000000, \n    +0.0011397959184, +0.0008781632653, +0.0007100000000, +0.0007536734694, \n    +0.0010524489796, +0.0010712244898, +0.0007287755102, +0.0002179591837, \n    -0.0003675510204, -0.0006602040816, -0.0002989795918, +0.0006040816327, \n    +0.0013887755102, +0.0013265306122, +0.0007597959184, +0.0001993877551, \n    -0.0003736734694, -0.0004546938776, -0.0000561224490, +0.0002179591837, \n    +0.0003300000000, +0.0001059183673, -0.0003238775510, -0.0005106122449, \n    -0.0003487755102, -0.0000436734694, +0.0001557142857, +0.0000312244898, \n    -0.0003175510204, -0.0004732653061, -0.0004671428571, -0.0001681632653, \n    +0.0004857142857, +0.0009218367347, +0.0008657142857, +0.0006228571429, \n    +0.0002926530612, +0.0001244897959, -0.0000312244898, -0.0002553061224, \n    -0.0001993877551, -0.0001120408163, -0.0005542857143, -0.0009965306122, \n    -0.0009902040816, -0.0008034693878, -0.0002553061224, +0.0003114285714, \n    +0.0003612244898, +0.0002677551020, +0.0000000000000, -0.0004795918367, \n    -0.0005791836735, -0.0003487755102, -0.0002242857143, -0.0001369387755, \n    -0.0002616326531, -0.0005916326531, -0.0005730612245, -0.0003114285714, \n    -0.0000436734694, +0.0002491836735, +0.0001493877551, -0.0001618367347, \n    -0.0002179591837, -0.0004920408163, -0.0005542857143, -0.0003114285714, \n    -0.0003487755102, -0.0002242857143, +0.0000685714286, +0.0001681632653, \n    +0.0001806122449, -0.0001557142857, -0.0005542857143, -0.0008718367347, \n    -0.0014075510204, -0.0012020408163, -0.0006851020408, -0.0004359183673, \n    +0.0000187755102, +0.0000497959184, -0.0002242857143, -0.0002865306122, \n    -0.0004483673469, -0.0003612244898, -0.0002242857143, -0.0003300000000, \n    -0.0002989795918, -0.0005542857143, -0.0008344897959, -0.0009404081633, \n    -0.0012457142857, -0.0011957142857, -0.0006851020408, -0.0000622448980, \n    +0.0005293877551, +0.0007412244898, +0.0007910204082, +0.0003551020408, \n    -0.0001993877551, -0.0005293877551, -0.0011397959184, -0.0011210204082, \n    -0.0004546938776, +0.0001557142857, +0.0002677551020, +0.0001183673469, \n    +0.0003051020408, -0.0003114285714, -0.0007412244898, -0.0003861224490, \n    -0.0002677551020, +0.0004546938776, +0.0008469387755, +0.0005855102041, \n    +0.0005606122449, -0.0004173469388, -0.0013079591837, -0.0013079591837, \n    -0.0018497959184, -0.0011210204082, -0.0001742857143, +0.0000312244898, \n    +0.0008283673469, +0.0006851020408, -0.0005542857143, -0.0009777551020, \n    -0.0009218367347, -0.0005106122449, +0.0001742857143, +0.0004857142857, \n    +0.0007536734694, +0.0008532653061, +0.0008283673469, +0.0009030612245, \n    +0.0008159183673, +0.0004483673469, +0.0001742857143, -0.0002428571429, \n    -0.0003300000000, -0.0000810204082, -0.0001183673469, +0.0001059183673, \n    +0.0004110204082, +0.0006165306122, +0.0008159183673, +0.0008969387755, \n    +0.0008781632653, +0.0010089795918, +0.0009342857143, +0.0007348979592, \n    +0.0007785714286, +0.0007224489796, +0.0009030612245, +0.0009902040816, \n    +0.0009155102041, +0.0007722448980, +0.0007163265306, +0.0007661224490, \n    +0.0008220408163, +0.0007536734694, +0.0007846938776, +0.0011148979592, \n    +0.0014885714286, +0.0016753061224, +0.0015195918367, +0.0011522448980, \n    +0.0008906122449, +0.0007597959184, +0.0004795918367, +0.0001059183673, \n    -0.0001120408163, -0.0001869387755, +0.0001493877551, +0.0006851020408, \n    +0.0008969387755, +0.0009840816327, +0.0012955102041, +0.0014761224490, \n    +0.0013265306122, +0.0011210204082, +0.0008657142857, +0.0004048979592, \n    +0.0001557142857, +0.0000373469388, +0.0001869387755, +0.0007473469388, \n    +0.0011646938776, +0.0015818367347, +0.0016318367347, +0.0012642857143, \n    +0.0010587755102, +0.0008718367347, +0.0009528571429, +0.0014697959184, \n    +0.0018373469388, +0.0019930612245, +0.0017438775510, +0.0011771428571, \n    +0.0008718367347, +0.0006289795918, +0.0005791836735, +0.0008781632653, \n    +0.0010275510204, +0.0011085714286, +0.0012706122449, +0.0012206122449, \n    +0.0008469387755, +0.0005791836735, +0.0005293877551, +0.0005357142857, \n    +0.0008034693878, +0.0010836734694, +0.0012581632653, +0.0013951020408, \n    +0.0014387755102, +0.0014200000000, +0.0011646938776, +0.0007661224490, \n    +0.0003363265306, -0.0000871428571, -0.0001557142857, +0.0000685714286, \n    +0.0003924489796, +0.0007348979592, +0.0008034693878, +0.0007473469388, \n    +0.0006477551020, +0.0004483673469, +0.0003800000000, +0.0003924489796, \n    +0.0006353061224, +0.0008906122449, +0.0008718367347, +0.0007597959184, \n    +0.0003051020408, -0.0000995918367, -0.0000436734694, -0.0000063265306, \n    +0.0000312244898, +0.0001183673469, +0.0001742857143, +0.0003175510204, \n    +0.0004483673469, +0.0006602040816, +0.0008159183673, +0.0008034693878, \n    +0.0009342857143, +0.0010961224490, +0.0010587755102, +0.0008034693878, \n    +0.0004483673469, +0.0002055102041, +0.0000124489796, -0.0000685714286, \n    -0.0000063265306, +0.0000187755102, +0.0001681632653, +0.0004234693878, \n    +0.0004857142857, +0.0003487755102, +0.0005293877551, +0.0006663265306, \n    +0.0005855102041, +0.0007846938776, +0.0008532653061, +0.0008159183673, \n    +0.0009653061224, +0.0008969387755, +0.0006040816327, +0.0002179591837, \n    -0.0002242857143, -0.0002926530612, -0.0003800000000, -0.0002865306122, \n    +0.0001930612245, +0.0003551020408, +0.0004359183673, +0.0005979591837, \n    +0.0005542857143, +0.0006787755102, +0.0008283673469, +0.0007224489796, \n    +0.0007597959184, +0.0007163265306, +0.0005418367347, +0.0003800000000, \n    +0.0002553061224, +0.0002989795918, +0.0004173469388, +0.0004857142857, \n    +0.0004857142857, +0.0003363265306, +0.0002304081633, +0.0001618367347, \n    +0.0002553061224, +0.0006538775510, +0.0009902040816, +0.0012955102041, \n    +0.0013079591837, +0.0007785714286, +0.0001493877551, -0.0004359183673, \n    -0.0005916326531, -0.0002740816327, +0.0000810204082, +0.0002989795918, \n    +0.0002491836735, +0.0001369387755, +0.0001869387755, +0.0003612244898, \n    +0.0006040816327, +0.0008159183673, +0.0010089795918, +0.0012581632653, \n    +0.0012457142857, +0.0013016326531, +0.0012955102041, +0.0008842857143, \n    +0.0004048979592, -0.0001493877551, -0.0006228571429, -0.0006353061224, \n    -0.0004795918367, -0.0003424489796, -0.0000810204082, +0.0001059183673, \n    +0.0002428571429, +0.0004671428571, +0.0005979591837, +0.0006414285714, \n    +0.0006414285714, +0.0002802040816, +0.0000063265306, -0.0000248979592, \n    -0.0002428571429, -0.0001369387755, +0.0001432653061, +0.0001618367347, \n    +0.0000685714286, -0.0001930612245, -0.0004234693878, -0.0003114285714, \n    -0.0000187755102, +0.0005106122449, +0.0009404081633, +0.0009902040816, \n    +0.0010524489796, +0.0008469387755, +0.0003612244898, -0.0001183673469, \n    -0.0005916326531, -0.0008344897959, -0.0009591836735, -0.0010214285714, \n    -0.0007100000000, -0.0001993877551, +0.0001869387755, +0.0003861224490, \n    +0.0003675510204, +0.0002677551020, +0.0001432653061, +0.0000934693878, \n    +0.0000746938776, +0.0000312244898, -0.0000622448980, -0.0001993877551, \n    -0.0003300000000, -0.0003051020408, -0.0003551020408, -0.0005293877551, \n    -0.0003736734694, -0.0001557142857, -0.0001432653061, -0.0001493877551, \n    -0.0002367346939, -0.0000312244898, +0.0003736734694, +0.0003924489796, \n    +0.0003675510204, +0.0003051020408, -0.0000497959184, -0.0002179591837, \n    -0.0002179591837, -0.0001869387755, -0.0000373469388, -0.0000124489796, \n    -0.0001493877551, -0.0003424489796, -0.0005044897959, -0.0003551020408, \n    +0.0000000000000, +0.0002242857143, +0.0003675510204, +0.0004483673469, \n    +0.0002989795918, +0.0000871428571, -0.0001120408163, -0.0002802040816, \n    -0.0003175510204, -0.0002740816327, -0.0002616326531, -0.0003736734694, \n    -0.0007224489796, -0.0009591836735, -0.0008842857143, -0.0007473469388, \n    -0.0004795918367, -0.0002367346939, -0.0002242857143, -0.0002865306122, \n    -0.0002242857143, -0.0002118367347, -0.0003051020408, -0.0004422448980, \n    -0.0005979591837, -0.0006353061224, -0.0006602040816, -0.0007100000000, \n    -0.0006787755102, -0.0005481632653, -0.0003175510204, -0.0000995918367, \n    -0.0000187755102, +0.0000810204082, +0.0002491836735, +0.0002179591837, \n    +0.0000622448980, -0.0000685714286, -0.0002989795918, -0.0004608163265, \n    -0.0004732653061, -0.0004297959184, -0.0002865306122, -0.0002491836735, \n    -0.0003800000000, -0.0004795918367, -0.0005418367347, -0.0006165306122, \n    -0.0005730612245, -0.0005293877551, -0.0005730612245, -0.0004297959184, \n    -0.0001432653061, -0.0001244897959, -0.0002802040816, -0.0002865306122, \n    -0.0003487755102, -0.0004671428571, -0.0003424489796, -0.0002055102041, \n    -0.0002677551020, -0.0003675510204, -0.0004671428571, -0.0007100000000, \n    -0.0007846938776, -0.0004981632653, -0.0002989795918, -0.0001930612245, \n    -0.0001183673469, -0.0002926530612, -0.0005667346939, -0.0007971428571, \n    -0.0008906122449, -0.0008095918367, -0.0009404081633, -0.0012518367347, \n    -0.0013453061224, -0.0012330612245, -0.0008906122449, -0.0004422448980, \n    -0.0002118367347, -0.0002055102041, -0.0003487755102, -0.0005791836735, \n    -0.0007100000000, -0.0005979591837, -0.0003985714286, -0.0001869387755, \n    -0.0000497959184, -0.0001244897959, -0.0002865306122, -0.0004857142857, \n    -0.0006289795918, -0.0005542857143, -0.0004981632653, -0.0006228571429, \n    -0.0006851020408, -0.0007348979592, -0.0007348979592, -0.0005791836735, \n    -0.0004110204082, -0.0003363265306, -0.0003551020408, -0.0004981632653, \n    -0.0006040816327, -0.0006289795918, -0.0005730612245, -0.0004795918367, \n    -0.0003675510204, -0.0001369387755, -0.0000312244898, -0.0002304081633, \n    -0.0003985714286, -0.0005106122449, -0.0005357142857, -0.0003424489796, \n    -0.0001557142857, -0.0001059183673, -0.0001993877551, -0.0005418367347, \n    -0.0007722448980, -0.0008159183673, -0.0008842857143, -0.0008283673469, \n    -0.0007163265306, -0.0005791836735, -0.0003924489796, -0.0003363265306, \n    -0.0003487755102, -0.0004110204082, -0.0005791836735, -0.0006787755102, \n    -0.0006165306122, -0.0005230612245, -0.0003800000000, -0.0002428571429, \n    -0.0003051020408, -0.0004234693878, -0.0005855102041, -0.0007722448980, \n    -0.0007910204082, -0.0005606122449, -0.0003736734694, -0.0003736734694, \n    -0.0004483673469, -0.0005044897959, -0.0003175510204, -0.0000063265306, \n    +0.0001993877551, +0.0003051020408, +0.0001742857143, -0.0001244897959, \n    -0.0003675510204, -0.0005916326531, -0.0007971428571, -0.0008532653061, \n    -0.0007348979592, -0.0003736734694, +0.0000373469388, +0.0001806122449, \n    +0.0000187755102, -0.0002491836735, -0.0004297959184, -0.0003924489796, \n    -0.0002677551020, -0.0001308163265, -0.0000373469388, -0.0000187755102, \n    +0.0000000000000, +0.0000187755102, -0.0000871428571, -0.0001930612245, \n    -0.0001869387755, -0.0001059183673, -0.0000373469388, -0.0000248979592, \n    -0.0000248979592, -0.0000622448980, -0.0000497959184, +0.0000248979592, \n    +0.0000871428571, +0.0001183673469, +0.0001681632653, +0.0000187755102, \n    -0.0004110204082, -0.0008283673469, -0.0009653061224, -0.0009279591837, \n    -0.0006975510204, -0.0001993877551, +0.0001993877551, +0.0002055102041, \n    +0.0000124489796, -0.0000934693878, -0.0001369387755, -0.0000124489796, \n    +0.0003114285714, +0.0005606122449, +0.0005418367347, +0.0002926530612, \n    -0.0000561224490, -0.0003985714286, -0.0006975510204, -0.0007661224490, \n    -0.0005730612245, -0.0002802040816, -0.0000810204082, -0.0000995918367, \n    -0.0001806122449, -0.0002304081633, -0.0002179591837, -0.0000497959184, \n    +0.0000373469388, -0.0000373469388, -0.0001183673469, -0.0001869387755, \n    -0.0002242857143, -0.0002491836735, -0.0002242857143, -0.0001930612245, \n    -0.0002179591837, -0.0003300000000, -0.0004732653061, -0.0005667346939, \n    -0.0005293877551, -0.0003985714286, -0.0002553061224, -0.0001681632653, \n    -0.0001618367347, -0.0002428571429, -0.0002428571429, -0.0001059183673, \n    -0.0000373469388, -0.0001557142857, -0.0003363265306, -0.0003424489796, \n    -0.0001806122449, -0.0000436734694, +0.0000685714286, +0.0000746938776, \n    -0.0000685714286, -0.0002055102041, -0.0003551020408, -0.0004110204082, \n    -0.0002989795918, -0.0002118367347, -0.0001742857143, -0.0001806122449, \n    -0.0001681632653, -0.0000063265306, +0.0000810204082, +0.0000934693878, \n    +0.0001059183673, +0.0000746938776, +0.0000000000000, -0.0000934693878, \n    -0.0000497959184, +0.0000934693878, +0.0000561224490, -0.0000685714286, \n    -0.0001618367347, -0.0001493877551, +0.0000312244898, +0.0001308163265, \n    +0.0001308163265, +0.0000995918367, -0.0000934693878, -0.0003612244898, \n    -0.0004173469388, -0.0003800000000, -0.0001993877551, +0.0000871428571, \n    +0.0002367346939, +0.0003924489796, +0.0004608163265, +0.0002367346939, \n    -0.0000561224490, -0.0003051020408, -0.0004234693878, -0.0002677551020, \n    -0.0002677551020, -0.0002989795918, -0.0001432653061, -0.0001618367347, \n    -0.0002428571429, -0.0002616326531, -0.0001869387755, -0.0000497959184, \n    -0.0001244897959, -0.0003114285714, -0.0003800000000, -0.0004359183673, \n    -0.0001681632653, +0.0002677551020, +0.0004732653061, +0.0004981632653, \n    +0.0002367346939, -0.0000373469388, -0.0000063265306, +0.0000746938776, \n    +0.0002491836735, +0.0004359183673, +0.0001993877551, +0.0000000000000, \n    +0.0000871428571, +0.0001183673469, +0.0001369387755, +0.0002553061224, \n    +0.0001869387755, -0.0000561224490, -0.0002989795918, -0.0003736734694, \n    -0.0003424489796, -0.0001869387755, +0.0001493877551, +0.0002740816327, \n    +0.0000622448980, -0.0001806122449, -0.0002367346939, -0.0000871428571, \n    +0.0001681632653, +0.0002926530612, +0.0003051020408, +0.0003051020408, \n    +0.0001869387755, +0.0002242857143, +0.0004422448980, +0.0005542857143, \n    +0.0005418367347, +0.0004359183673, +0.0001806122449, +0.0000810204082, \n    -0.0000685714286, -0.0001244897959, +0.0000622448980, +0.0001059183673, \n    +0.0002242857143, +0.0005418367347, +0.0007412244898, +0.0008593877551, \n    +0.0008842857143, +0.0007412244898, +0.0006165306122, +0.0003300000000, \n    +0.0000063265306, -0.0000995918367, -0.0000685714286, +0.0000312244898, \n    +0.0001869387755, +0.0003985714286, +0.0004795918367, +0.0004546938776, \n    +0.0005542857143, +0.0005979591837, +0.0004795918367, +0.0004981632653, \n    +0.0005542857143, +0.0004608163265, +0.0003924489796, +0.0003675510204, \n    +0.0002865306122, +0.0001120408163, -0.0000124489796, +0.0000373469388, \n    +0.0000685714286, +0.0000497959184, +0.0001308163265, +0.0001681632653, \n    +0.0001120408163, +0.0000934693878, +0.0000746938776, +0.0000561224490, \n    +0.0000685714286, +0.0000497959184, +0.0001432653061, +0.0002055102041, \n    +0.0001681632653, +0.0001618367347, +0.0001369387755, +0.0001244897959, \n    +0.0001557142857, +0.0001493877551, +0.0001806122449, +0.0002118367347, \n    +0.0001183673469, +0.0001742857143, +0.0003487755102, +0.0004795918367, \n    +0.0006912244898, +0.0009279591837, +0.0008718367347, +0.0005169387755, \n    +0.0001244897959, -0.0001869387755, -0.0002677551020, -0.0001369387755, \n    +0.0000561224490, +0.0001742857143, +0.0002242857143, +0.0002428571429, \n    +0.0003363265306, +0.0004546938776, +0.0005791836735, +0.0006851020408, \n    +0.0006663265306, +0.0004732653061, +0.0002304081633, +0.0001681632653, \n    +0.0002428571429, +0.0003300000000, +0.0004483673469, +0.0004671428571, \n    +0.0003985714286, +0.0004483673469, +0.0005230612245, +0.0004981632653, \n    +0.0003675510204, +0.0003424489796, +0.0003675510204, +0.0002865306122, \n    +0.0002926530612, +0.0004732653061, +0.0006353061224, +0.0006726530612, \n    +0.0005606122449, +0.0003675510204, +0.0001806122449, +0.0000063265306, \n    +0.0000000000000, +0.0000995918367, +0.0001183673469, +0.0001493877551, \n    +0.0002553061224, +0.0003675510204, +0.0004732653061, +0.0005730612245, \n    +0.0005169387755, +0.0004483673469, +0.0003300000000, +0.0001120408163, \n    +0.0000810204082, +0.0001742857143, +0.0001806122449, +0.0002740816327, \n    +0.0002989795918, +0.0003175510204, +0.0005542857143, +0.0006228571429, \n    +0.0005730612245, +0.0005169387755, +0.0004048979592, +0.0003487755102, \n    +0.0003487755102, +0.0003612244898, +0.0004234693878, +0.0004048979592, \n    +0.0001618367347, -0.0000746938776, -0.0001493877551, -0.0001120408163, \n    +0.0000312244898, +0.0003175510204, +0.0004981632653, +0.0004920408163, \n    +0.0003612244898, +0.0001120408163, -0.0000436734694, -0.0001432653061, \n    -0.0000746938776, +0.0001618367347, +0.0003424489796, +0.0003736734694, \n    +0.0003051020408, +0.0001557142857, +0.0000746938776, +0.0000000000000, \n    -0.0000622448980, +0.0000000000000, +0.0000871428571, +0.0001493877551, \n    +0.0001618367347, +0.0001183673469, -0.0000497959184, -0.0002179591837, \n    -0.0001930612245, -0.0000871428571, +0.0000187755102, +0.0001183673469, \n    +0.0001742857143, +0.0002304081633, +0.0002926530612, +0.0003300000000, \n    +0.0003051020408, +0.0001681632653, +0.0000746938776, +0.0000000000000, \n    -0.0000934693878, -0.0000497959184, +0.0000000000000, +0.0000373469388, \n    +0.0001059183673, +0.0000934693878, +0.0000871428571, +0.0001993877551, \n    +0.0003051020408, +0.0005169387755, +0.0006912244898, +0.0006228571429, \n    +0.0004422448980, +0.0002367346939, +0.0001618367347, +0.0002179591837, \n    +0.0001930612245, +0.0001742857143, +0.0002428571429, +0.0001869387755, \n    +0.0000685714286, +0.0000000000000, +0.0000187755102, +0.0000373469388, \n    -0.0000187755102, -0.0000436734694, -0.0000436734694, -0.0000373469388, \n    -0.0000436734694, -0.0001059183673, -0.0000871428571, +0.0000312244898, \n    +0.0002304081633, +0.0003861224490, +0.0003800000000, +0.0003736734694, \n    +0.0003487755102, +0.0001618367347, +0.0000622448980, +0.0001308163265, \n    +0.0002677551020, +0.0003861224490, +0.0003675510204, +0.0002740816327, \n    +0.0001120408163, -0.0000561224490, -0.0000934693878, -0.0000810204082, \n    -0.0001244897959, -0.0002179591837, -0.0003861224490, -0.0004422448980, \n    -0.0003675510204, -0.0002616326531, -0.0000124489796, +0.0001681632653, \n    +0.0001681632653, +0.0002118367347, +0.0002740816327, +0.0002740816327, \n    +0.0002242857143, +0.0001681632653, +0.0001493877551, +0.0000124489796, \n    -0.0001183673469, -0.0001308163265, -0.0001369387755, -0.0000871428571, \n    +0.0000124489796, +0.0000561224490, +0.0000497959184, +0.0001244897959, \n    +0.0002118367347, +0.0002304081633, +0.0001369387755, -0.0000810204082, \n    -0.0003800000000, -0.0006851020408, -0.0008283673469, -0.0006104081633, \n    -0.0001806122449, +0.0001557142857, +0.0003238775510, +0.0002926530612, \n    +0.0001681632653, +0.0000312244898, -0.0000622448980, -0.0000561224490, \n    -0.0000561224490, -0.0000934693878, -0.0000248979592, +0.0000436734694, \n    +0.0000373469388, +0.0000000000000, -0.0001369387755, -0.0003051020408, \n    -0.0004110204082, -0.0003924489796, -0.0001806122449, +0.0000248979592, \n    +0.0001493877551, +0.0001059183673, -0.0001557142857, -0.0003924489796, \n    -0.0004234693878, -0.0003300000000, -0.0000934693878, +0.0000312244898, \n    -0.0000871428571, -0.0003175510204, -0.0004857142857, -0.0005230612245, \n    -0.0005357142857, -0.0004795918367, -0.0002677551020, -0.0001059183673, \n    -0.0000497959184, +0.0000187755102, -0.0000187755102, -0.0001557142857, \n    -0.0002304081633, -0.0002926530612, -0.0003736734694, -0.0004359183673, \n    -0.0004048979592, -0.0003114285714, -0.0002367346939, -0.0002055102041, \n    -0.0002242857143, -0.0003051020408, -0.0003675510204, -0.0003175510204, \n    -0.0001930612245, -0.0001308163265, -0.0001244897959, -0.0002179591837, \n    -0.0004483673469, -0.0005418367347, -0.0004608163265, -0.0003612244898, \n    -0.0002179591837, -0.0001244897959, -0.0001059183673, -0.0001120408163, \n    -0.0001869387755, -0.0001930612245, -0.0001557142857, -0.0001557142857, \n    +0.0000063265306, +0.0001930612245, +0.0001869387755, +0.0001618367347, \n    +0.0000685714286, -0.0000497959184, -0.0001618367347, -0.0003861224490, \n    -0.0005293877551, -0.0006228571429, -0.0007036734694, -0.0005730612245, \n    -0.0003363265306, -0.0001742857143, +0.0000187755102, +0.0001557142857, \n    +0.0001806122449, +0.0002553061224, +0.0002491836735, +0.0001493877551, \n    +0.0000746938776, -0.0000622448980, -0.0002740816327, -0.0004297959184, \n    -0.0004981632653, -0.0004234693878, -0.0002677551020, -0.0001557142857, \n    +0.0000000000000, +0.0001308163265, +0.0001618367347, +0.0001806122449, \n    +0.0001993877551, +0.0001681632653, +0.0000871428571, -0.0000436734694, \n    -0.0001618367347, -0.0002865306122, -0.0003612244898, -0.0002553061224, \n    -0.0001308163265, -0.0000746938776, -0.0000622448980, -0.0001183673469, \n    -0.0001618367347, -0.0001493877551, -0.0001120408163, -0.0000871428571, \n    -0.0000995918367, -0.0000871428571, -0.0000871428571, -0.0000124489796, \n    +0.0001183673469, +0.0001493877551, +0.0001681632653, +0.0001369387755, \n    +0.0000312244898, +0.0000373469388, +0.0001120408163, +0.0001244897959, \n    +0.0000000000000, -0.0001432653061, -0.0001869387755, -0.0001742857143, \n    -0.0000685714286, +0.0000000000000, -0.0000248979592, -0.0000312244898, \n    -0.0001869387755, -0.0004048979592, -0.0004483673469, -0.0002989795918, \n    -0.0000248979592, +0.0001869387755, +0.0002055102041, +0.0001308163265, \n    +0.0000000000000, -0.0000561224490, -0.0000685714286, -0.0001742857143, \n    -0.0001681632653, -0.0000746938776, -0.0001183673469, -0.0000685714286, \n    +0.0001369387755, +0.0002865306122, +0.0003238775510, +0.0002304081633, \n    +0.0000746938776, -0.0001120408163, -0.0003424489796, -0.0003800000000, \n    -0.0003114285714, -0.0002179591837, -0.0000561224490, -0.0000124489796, \n    +0.0000000000000, +0.0000685714286, +0.0000561224490, +0.0000746938776, \n    +0.0000810204082, -0.0000685714286, -0.0002118367347, -0.0002926530612, \n    -0.0003175510204, -0.0002616326531, -0.0002118367347, -0.0002179591837, \n    -0.0002304081633, -0.0002179591837, -0.0001432653061, -0.0000312244898, \n    -0.0000248979592, -0.0000746938776, -0.0000561224490, -0.0000187755102, \n    +0.0000810204082, +0.0001618367347, +0.0000995918367, +0.0000248979592, \n    -0.0000810204082, -0.0002428571429, -0.0003238775510, -0.0003363265306, \n    -0.0002802040816, -0.0001244897959, -0.0000248979592, -0.0000312244898, \n    -0.0001308163265, -0.0002616326531, -0.0003175510204, -0.0003675510204, \n    -0.0003363265306, -0.0001869387755, -0.0000934693878, -0.0000373469388, \n    +0.0000063265306, -0.0000063265306, +0.0000000000000, -0.0000436734694, \n    -0.0000622448980, +0.0000000000000, +0.0000312244898, +0.0000871428571, \n    +0.0001432653061, +0.0000871428571, +0.0000373469388, +0.0000063265306, \n    -0.0000436734694, -0.0000248979592, -0.0000436734694, -0.0001183673469, \n    -0.0001369387755, -0.0001681632653, -0.0002179591837, -0.0002304081633, \n    -0.0002304081633, -0.0001869387755, -0.0001618367347, -0.0001557142857, \n    -0.0001493877551, -0.0001432653061, -0.0001369387755, +0.0000000000000, \n    +0.0001993877551, +0.0002491836735, +0.0001806122449, -0.0000124489796, \n    -0.0002740816327, -0.0004173469388, -0.0004795918367, -0.0003800000000, \n    -0.0001308163265, +0.0000497959184, +0.0001930612245, +0.0001493877551, \n    -0.0000622448980, -0.0001742857143, -0.0003300000000, -0.0004732653061, \n    -0.0004608163265, -0.0004297959184, -0.0003612244898, -0.0002367346939, \n    -0.0001432653061, -0.0000622448980, -0.0000124489796, +0.0000000000000, \n    +0.0000187755102, +0.0000063265306, +0.0000124489796, +0.0000685714286, \n    +0.0001432653061, +0.0001432653061, +0.0000063265306, -0.0001308163265, \n    -0.0002553061224, -0.0003551020408, -0.0003985714286, -0.0004422448980, \n    -0.0004857142857, -0.0004110204082, -0.0002242857143, -0.0000561224490, \n    +0.0000561224490, +0.0001681632653, +0.0002055102041, +0.0001244897959, \n    +0.0000497959184, -0.0000746938776, -0.0001432653061, -0.0000746938776, \n    +0.0000063265306, +0.0000436734694, -0.0000063265306, -0.0001120408163, \n    -0.0001493877551, -0.0001432653061, -0.0000622448980, +0.0000312244898, \n    +0.0000810204082, +0.0000746938776, +0.0000000000000, -0.0001618367347, \n    -0.0002553061224, -0.0001742857143, +0.0000000000000, +0.0000871428571, \n    +0.0001432653061, +0.0001432653061, +0.0000561224490, +0.0000497959184, \n    +0.0001493877551, +0.0002304081633, +0.0001993877551, +0.0000497959184, \n    -0.0000622448980, -0.0001120408163, -0.0000810204082, +0.0000561224490, \n    +0.0001869387755, +0.0002616326531, +0.0002616326531, +0.0001432653061, \n    +0.0000124489796, -0.0000871428571, -0.0001244897959, -0.0000497959184, \n    +0.0000000000000, +0.0000312244898, +0.0000995918367, +0.0001183673469, \n    +0.0001120408163, +0.0001930612245, +0.0003175510204, +0.0004857142857, \n    +0.0005293877551, +0.0004173469388, +0.0002553061224, +0.0000995918367, \n    +0.0000312244898, +0.0000934693878, +0.0001183673469, +0.0001618367347, \n    +0.0002428571429, +0.0002740816327, +0.0002367346939, +0.0001432653061, \n    +0.0001432653061, +0.0002553061224, +0.0003985714286, +0.0004857142857, \n    +0.0003800000000, +0.0002304081633, +0.0002055102041, +0.0002242857143, \n    +0.0002677551020, +0.0002553061224, +0.0001432653061, +0.0000995918367, \n    +0.0001059183673, +0.0000622448980, +0.0000000000000, -0.0000312244898, \n    +0.0001059183673, +0.0003363265306, +0.0003736734694, +0.0002367346939, \n    +0.0000685714286, -0.0000561224490, -0.0000934693878, -0.0001432653061, \n    -0.0001993877551, -0.0001183673469, +0.0000063265306, +0.0001308163265, \n    +0.0002367346939, +0.0002304081633, +0.0002242857143, +0.0002428571429, \n    +0.0001806122449, +0.0000685714286, +0.0000000000000, -0.0000063265306, \n    +0.0000312244898, +0.0001244897959, +0.0002553061224, +0.0003736734694, \n    +0.0004920408163, +0.0004920408163, +0.0002553061224, -0.0000995918367, \n    -0.0003551020408, -0.0003612244898, -0.0001930612245, +0.0000312244898, \n    +0.0002616326531, +0.0003424489796, +0.0002865306122, +0.0002118367347, \n    +0.0001869387755, +0.0001742857143, +0.0001493877551, +0.0000934693878, \n    -0.0000063265306, -0.0001183673469, -0.0001369387755, -0.0001059183673, \n    +0.0000000000000, +0.0001369387755, +0.0002367346939, +0.0002367346939, \n    +0.0000995918367, -0.0000497959184, -0.0001557142857, -0.0002553061224, \n    -0.0002616326531, -0.0001493877551, -0.0000373469388, -0.0000312244898, \n    -0.0001120408163, -0.0001183673469, -0.0000373469388, +0.0000622448980, \n    +0.0001432653061, +0.0001806122449, +0.0001183673469, -0.0000312244898, \n    -0.0001930612245, -0.0003300000000, -0.0004234693878, -0.0003612244898, \n    -0.0001869387755, -0.0000810204082, -0.0000312244898, -0.0000497959184, \n    -0.0001493877551, -0.0001993877551, -0.0001618367347, -0.0000622448980, \n    +0.0000312244898, +0.0000934693878, +0.0001183673469, +0.0000934693878, \n    -0.0000124489796, -0.0000810204082, -0.0000248979592, +0.0000124489796, \n    +0.0000373469388, +0.0001059183673, +0.0000934693878, +0.0000312244898, \n    +0.0000312244898, +0.0000063265306, +0.0000373469388, +0.0001369387755, \n    +0.0000746938776, -0.0000934693878, -0.0002118367347, -0.0002677551020, \n    -0.0002055102041, -0.0000436734694, +0.0000436734694, +0.0000561224490, \n    -0.0000187755102, -0.0001742857143, -0.0002242857143, -0.0001432653061, \n    -0.0000561224490, +0.0000622448980, +0.0001308163265, +0.0000810204082, \n    +0.0000934693878, +0.0001059183673, +0.0000561224490, +0.0000497959184, \n    +0.0000622448980, +0.0000373469388, +0.0000063265306, +0.0000063265306, \n    +0.0000685714286, +0.0001183673469, +0.0001183673469, +0.0001308163265, \n    +0.0001618367347, +0.0002118367347, +0.0001742857143, +0.0000871428571, \n    +0.0000622448980, +0.0000373469388, +0.0000248979592, +0.0000810204082, \n    +0.0001681632653, +0.0002367346939, +0.0002428571429, +0.0002055102041, \n    +0.0001742857143, +0.0001308163265, +0.0001308163265, +0.0001059183673, \n    +0.0000934693878, +0.0000871428571, +0.0000622448980, +0.0001432653061, \n    +0.0002553061224, +0.0002926530612, +0.0003363265306, +0.0002865306122, \n    +0.0002179591837, +0.0002242857143, +0.0001993877551, +0.0002616326531, \n    +0.0003675510204, +0.0003800000000, +0.0003551020408, +0.0002740816327, \n    +0.0001742857143, +0.0001557142857, +0.0001308163265, +0.0000685714286, \n    +0.0000436734694, +0.0000810204082, +0.0001369387755, +0.0001869387755, \n    +0.0002118367347, +0.0002367346939, +0.0002428571429, +0.0001742857143, \n    +0.0000995918367, +0.0000746938776, +0.0000497959184, +0.0000561224490, \n    +0.0000810204082, +0.0000746938776, +0.0000561224490, +0.0000436734694, \n    +0.0000561224490, +0.0001308163265, +0.0002802040816, +0.0004422448980, \n    +0.0005606122449, +0.0005855102041, +0.0005230612245, +0.0003487755102, \n    +0.0001369387755, +0.0000124489796, -0.0000312244898, -0.0000622448980, \n    -0.0000685714286, -0.0000373469388, -0.0000622448980, -0.0000871428571, \n    -0.0000436734694, +0.0000312244898, +0.0001183673469, +0.0002055102041, \n    +0.0002242857143, +0.0001869387755, +0.0001183673469, +0.0000497959184, \n    +0.0000248979592, +0.0000187755102, +0.0000312244898, +0.0000497959184, \n    -0.0000187755102, -0.0000561224490, -0.0000063265306, -0.0000124489796, \n    -0.0000312244898, +0.0000000000000, +0.0000000000000, +0.0000312244898, \n    +0.0001059183673, +0.0001681632653, +0.0001869387755, +0.0001308163265, \n    +0.0000685714286, +0.0000063265306, -0.0000995918367, -0.0001493877551, \n    -0.0001308163265, -0.0000995918367, +0.0000000000000, +0.0000685714286, \n    +0.0000436734694, -0.0000187755102, -0.0000497959184, -0.0000124489796, \n    +0.0000124489796, +0.0000124489796, +0.0000312244898, +0.0000561224490, \n    +0.0001059183673, +0.0001618367347, +0.0001369387755, +0.0000312244898, \n    -0.0000746938776, -0.0000871428571, -0.0000871428571, -0.0000871428571, \n    -0.0000373469388, -0.0000312244898, -0.0000248979592, -0.0000063265306, \n    -0.0000248979592, -0.0000934693878, -0.0001557142857, -0.0001806122449, \n    -0.0001244897959, -0.0000124489796, +0.0000746938776, +0.0000746938776, \n    -0.0000436734694, -0.0001993877551, -0.0003051020408, -0.0003300000000, \n    -0.0002926530612, -0.0002428571429, -0.0002118367347, -0.0001806122449, \n    -0.0001308163265, -0.0000561224490, +0.0000373469388, +0.0001308163265, \n    +0.0001618367347, +0.0001308163265, +0.0000746938776, +0.0000124489796, \n    -0.0000124489796, +0.0000063265306, +0.0000063265306, +0.0000000000000, \n    -0.0000063265306, -0.0000871428571, -0.0001493877551, -0.0001369387755, \n    -0.0001493877551, -0.0001681632653, -0.0001681632653, -0.0001369387755, \n    -0.0000436734694, +0.0000373469388, +0.0000248979592, -0.0000248979592, \n    -0.0000685714286, -0.0000436734694, +0.0000373469388, +0.0000934693878, \n    +0.0000622448980, +0.0000187755102, -0.0000063265306, -0.0000187755102, \n    -0.0000373469388, -0.0000685714286, -0.0000561224490, +0.0000000000000, \n    +0.0000187755102, +0.0000187755102, -0.0000497959184, -0.0001557142857, \n    -0.0001557142857, -0.0001120408163, -0.0000373469388, +0.0000685714286, \n    +0.0001183673469, +0.0001120408163, +0.0000436734694, -0.0000497959184, \n    -0.0001183673469, -0.0001557142857, -0.0001244897959, -0.0000436734694, \n    +0.0000063265306, +0.0000871428571, +0.0001930612245, +0.0002616326531, \n    +0.0002677551020, +0.0001493877551, -0.0000373469388, -0.0001493877551, \n    -0.0001681632653, -0.0001869387755, -0.0001742857143, -0.0001308163265, \n    -0.0000561224490, +0.0000436734694, +0.0001308163265, +0.0001432653061, \n    +0.0001369387755, +0.0000995918367, -0.0000063265306, -0.0001059183673, \n    -0.0001432653061, -0.0001432653061, -0.0000622448980, +0.0000000000000, \n    +0.0000124489796, +0.0000124489796, +0.0000000000000, -0.0000561224490, \n    -0.0001120408163, -0.0001369387755, -0.0001869387755, -0.0001806122449, \n    -0.0001059183673, -0.0000436734694, -0.0000063265306, +0.0000000000000, \n    -0.0000497959184, -0.0001308163265, -0.0001369387755, -0.0001183673469, \n    -0.0000871428571, -0.0000248979592, -0.0000124489796, -0.0000312244898, \n    -0.0000561224490, -0.0000436734694, +0.0000312244898, +0.0001618367347, \n    +0.0002179591837, +0.0002304081633, +0.0001681632653, +0.0000373469388, \n    -0.0000810204082, -0.0001869387755, -0.0003114285714, -0.0003736734694, \n    -0.0002926530612, -0.0001120408163, +0.0000685714286, +0.0001993877551, \n    +0.0001869387755, +0.0000934693878, +0.0000000000000, -0.0001120408163, \n    -0.0001930612245, -0.0001742857143, -0.0001059183673, -0.0000497959184, \n    -0.0000436734694, -0.0000373469388, -0.0000063265306, -0.0000063265306, \n    +0.0000124489796, +0.0001244897959, +0.0002367346939, +0.0003114285714, \n    +0.0003238775510, +0.0002677551020, +0.0001806122449, +0.0000436734694, \n    -0.0000871428571, -0.0001806122449, -0.0002428571429, -0.0002055102041, \n    -0.0000746938776, -0.0000063265306, +0.0000373469388, +0.0000746938776, \n    +0.0000810204082, +0.0000995918367, +0.0001308163265, +0.0001618367347, \n    +0.0001432653061, +0.0000312244898, -0.0000436734694, -0.0001059183673, \n    -0.0001432653061, -0.0000871428571, -0.0000248979592, -0.0000497959184, \n    -0.0000746938776, -0.0001369387755, -0.0002118367347, -0.0002118367347, \n    -0.0000995918367, +0.0000187755102, +0.0000746938776, +0.0000934693878, \n    +0.0000871428571, +0.0000622448980, +0.0000373469388, +0.0000373469388, \n    +0.0000497959184, +0.0000312244898, -0.0000248979592, -0.0001244897959, \n    -0.0002677551020, -0.0003300000000, -0.0002428571429, -0.0001869387755, \n    -0.0001120408163, +0.0000000000000, +0.0000995918367, +0.0001806122449, \n    +0.0002242857143, +0.0002242857143, +0.0002118367347, +0.0001493877551, \n    +0.0000312244898, -0.0000622448980, -0.0001183673469, -0.0001308163265, \n    -0.0001244897959, -0.0001681632653, -0.0002677551020, -0.0003175510204, \n    -0.0002802040816, -0.0002055102041, -0.0000746938776, +0.0000746938776, \n    +0.0001308163265, +0.0001183673469, +0.0000685714286, -0.0000063265306, \n    -0.0000436734694, -0.0000373469388, +0.0000000000000, +0.0000497959184, \n    -0.0000187755102, -0.0001930612245, -0.0002989795918, -0.0003175510204, \n    -0.0002304081633, -0.0000622448980, +0.0000810204082, +0.0001742857143, \n    +0.0001618367347, +0.0000561224490, -0.0000561224490, -0.0001806122449, \n    -0.0002616326531, -0.0002428571429, -0.0001869387755, -0.0001369387755, \n    -0.0001059183673, -0.0000995918367, -0.0000934693878, -0.0000561224490, \n    +0.0000187755102, +0.0000934693878, +0.0001183673469, +0.0001059183673, \n    +0.0000746938776, +0.0000373469388, +0.0000187755102, -0.0000561224490, \n    -0.0001993877551, -0.0002802040816, -0.0002677551020, -0.0002055102041, \n    -0.0000810204082, +0.0000248979592, +0.0000373469388, -0.0000124489796, \n    -0.0000312244898, -0.0000248979592, -0.0000312244898, +0.0000000000000, \n    +0.0000622448980, +0.0001120408163, +0.0001183673469, +0.0000746938776, \n    +0.0000063265306, -0.0000810204082, -0.0001244897959, -0.0000497959184, \n    -0.0000187755102, -0.0000561224490, -0.0001059183673, -0.0001493877551, \n    -0.0001618367347, -0.0001120408163, -0.0000124489796, +0.0000871428571, \n    +0.0001244897959, +0.0001369387755, +0.0001244897959, +0.0000124489796, \n    -0.0000746938776, -0.0000995918367, -0.0000622448980, +0.0000063265306, \n    +0.0000497959184, +0.0000497959184, +0.0000497959184, +0.0000373469388, \n    +0.0000124489796, -0.0000436734694, -0.0001183673469, -0.0001120408163, \n    -0.0000871428571, -0.0000561224490, -0.0000248979592, -0.0000497959184, \n    -0.0000373469388, +0.0000063265306, -0.0000063265306, +0.0000000000000, \n    +0.0000124489796, -0.0000187755102, -0.0000746938776, -0.0001244897959, \n    -0.0001369387755, -0.0000746938776, +0.0000248979592, +0.0001557142857, \n    +0.0001806122449, +0.0000871428571, +0.0000248979592, +0.0000000000000, \n    +0.0000187755102, +0.0000622448980, +0.0000436734694, +0.0000063265306, \n    -0.0000373469388, -0.0000871428571, -0.0000810204082, -0.0000685714286, \n    -0.0000436734694, -0.0000063265306, +0.0000000000000, +0.0000248979592, \n    +0.0000746938776, +0.0001059183673, +0.0001369387755, +0.0001493877551, \n    +0.0001432653061, +0.0001618367347, +0.0001681632653, +0.0001120408163, \n    +0.0000312244898, -0.0000187755102, -0.0000436734694, -0.0000497959184, \n    -0.0000248979592, +0.0000000000000, +0.0000063265306, +0.0000124489796, \n    +0.0000248979592, +0.0000373469388, +0.0000436734694, +0.0000561224490, \n    +0.0000934693878, +0.0000810204082, +0.0000436734694, +0.0000312244898, \n    +0.0000312244898, +0.0000000000000, -0.0000497959184, -0.0000810204082, \n    -0.0001183673469, -0.0001557142857, -0.0001618367347, -0.0001244897959, \n    -0.0000685714286, -0.0000373469388, +0.0000000000000, +0.0000436734694, \n    +0.0000248979592, +0.0000124489796, +0.0000187755102, +0.0000000000000, \n    +0.0000312244898, +0.0000746938776, +0.0001059183673, +0.0001308163265, \n    +0.0001059183673, +0.0000622448980, +0.0000497959184, +0.0000810204082, \n    +0.0001183673469, +0.0001618367347, +0.0001742857143, +0.0001120408163, \n    -0.0000063265306, -0.0000436734694, -0.0000685714286, -0.0001244897959, \n    -0.0001432653061, -0.0001059183673, -0.0000373469388, +0.0000000000000, \n    +0.0000000000000, -0.0000124489796, -0.0000561224490, -0.0000934693878, \n    -0.0000312244898, +0.0000561224490, +0.0001183673469, +0.0001493877551, \n    +0.0001120408163, +0.0000497959184, +0.0000124489796, -0.0000063265306, \n    -0.0000248979592, -0.0000063265306, +0.0000436734694, +0.0000561224490, \n    -0.0000063265306, -0.0001183673469, -0.0002179591837, -0.0002491836735, \n    -0.0001742857143, -0.0000934693878, -0.0000436734694, -0.0000248979592, \n    -0.0000248979592, -0.0000248979592, -0.0000436734694, -0.0000746938776, \n    -0.0000497959184, +0.0000063265306, +0.0000436734694, +0.0000373469388, \n    +0.0000312244898, +0.0000561224490, +0.0000934693878, +0.0001308163265, \n    +0.0001493877551, +0.0000995918367, +0.0000187755102, -0.0000810204082, \n    -0.0001369387755, -0.0001493877551, -0.0001432653061, -0.0000810204082, \n    +0.0000312244898, +0.0001244897959, +0.0001493877551, +0.0001120408163, \n    +0.0000373469388, -0.0000063265306, -0.0000124489796, +0.0000248979592, \n    +0.0000934693878, +0.0000871428571, +0.0000000000000, -0.0000934693878, \n    -0.0001806122449, -0.0002242857143, -0.0001930612245, -0.0001059183673, \n    -0.0000248979592, +0.0000000000000, +0.0000063265306, +0.0000000000000, \n    +0.0000000000000, +0.0000373469388, +0.0000810204082, +0.0001059183673, \n    +0.0001369387755, +0.0001183673469, +0.0000436734694, -0.0000063265306, \n    -0.0000497959184, -0.0000685714286, -0.0001183673469, -0.0002055102041, \n    -0.0002428571429, -0.0001930612245, -0.0001183673469, +0.0000000000000, \n    +0.0001059183673, +0.0001432653061, +0.0001120408163, +0.0000746938776, \n    +0.0000373469388, -0.0000124489796, -0.0000746938776, -0.0001059183673, \n    -0.0001059183673, -0.0000871428571, -0.0000685714286, -0.0000497959184, \n    -0.0000436734694, -0.0000561224490, -0.0000622448980, -0.0000746938776, \n    -0.0000934693878, -0.0000934693878, -0.0000622448980, +0.0000000000000, \n    +0.0001059183673, +0.0001869387755, +0.0001930612245, +0.0001432653061, \n    +0.0000685714286, -0.0000124489796, -0.0000436734694, -0.0000124489796, \n    +0.0000497959184, +0.0001244897959, +0.0001432653061, +0.0000685714286, \n    +0.0000063265306, -0.0000063265306, +0.0000373469388, +0.0000995918367, \n    +0.0001369387755, +0.0001244897959, +0.0000685714286, +0.0000063265306, \n    -0.0000312244898, -0.0000746938776, -0.0000871428571, -0.0000436734694, \n    +0.0000248979592, +0.0000871428571, +0.0000871428571, +0.0000622448980, \n    +0.0000497959184, +0.0000373469388, +0.0000248979592, +0.0000312244898, \n    +0.0000373469388, +0.0000373469388, +0.0000000000000, -0.0000248979592, \n    +0.0000000000000, +0.0000810204082, +0.0001681632653, +0.0002118367347, \n    +0.0001742857143, +0.0000561224490, -0.0000934693878, -0.0001432653061, \n    -0.0000995918367, -0.0000124489796, +0.0000497959184, +0.0000995918367, \n    +0.0001244897959, +0.0001493877551, +0.0001557142857, +0.0001493877551, \n    +0.0001308163265, +0.0001120408163, +0.0000871428571, +0.0000561224490, \n    +0.0000124489796, +0.0000000000000, +0.0000561224490, +0.0001493877551, \n    +0.0001993877551, +0.0001681632653, +0.0000871428571, +0.0000561224490, \n    +0.0001120408163, +0.0001742857143, +0.0001993877551, +0.0001742857143, \n    +0.0001244897959, +0.0000561224490, +0.0000000000000, -0.0000063265306, \n    +0.0000000000000, +0.0000000000000, -0.0000063265306, -0.0000373469388, \n    -0.0000436734694, -0.0000248979592, +0.0000248979592, +0.0000934693878, \n    +0.0001493877551, +0.0001369387755, +0.0001059183673, +0.0000810204082, \n    +0.0000248979592, -0.0000187755102, -0.0000561224490, -0.0000622448980, \n    +0.0000187755102, +0.0001244897959, +0.0001432653061, +0.0000934693878, \n    +0.0000000000000, -0.0000746938776, -0.0001120408163, -0.0001308163265, \n    -0.0000871428571, -0.0000124489796, +0.0000312244898, +0.0000497959184, \n    +0.0000436734694, +0.0000124489796, +0.0000248979592, +0.0000622448980, \n    +0.0000995918367, +0.0001244897959, +0.0001244897959, +0.0001059183673, \n    +0.0000685714286, +0.0000561224490, +0.0000622448980, +0.0000746938776, \n    +0.0000934693878, +0.0001059183673, +0.0000312244898, -0.0000436734694, \n    -0.0000561224490, -0.0000436734694, -0.0000248979592, +0.0000124489796, \n    +0.0000685714286, +0.0001244897959, +0.0001183673469, +0.0000934693878, \n    +0.0000312244898, -0.0000312244898, -0.0000561224490, -0.0000187755102, \n    +0.0000497959184, +0.0001432653061, +0.0002118367347, +0.0002553061224, \n    +0.0002367346939, +0.0001557142857, +0.0000995918367, +0.0000561224490, \n    +0.0000436734694, +0.0000436734694, +0.0000000000000, -0.0000746938776, \n    -0.0001618367347, -0.0002367346939, -0.0002242857143, -0.0001493877551, \n    -0.0000871428571, -0.0000187755102, +0.0000561224490, +0.0000871428571, \n    +0.0000934693878, +0.0000810204082, +0.0000561224490, +0.0000312244898, \n    +0.0000124489796, -0.0000063265306, -0.0000248979592, -0.0000312244898, \n    -0.0000436734694, -0.0000934693878, -0.0001308163265, -0.0001369387755, \n    -0.0000746938776, +0.0000124489796, +0.0000436734694, +0.0000561224490, \n    +0.0000312244898, -0.0000561224490, -0.0001308163265, -0.0002118367347, \n    -0.0002677551020, -0.0002304081633, -0.0001618367347, -0.0000934693878, \n    -0.0000497959184, -0.0000685714286, -0.0001120408163, -0.0001432653061, \n    -0.0001369387755, -0.0000685714286, -0.0000187755102\n};\n"
  },
  {
    "path": "impulses/16-marshall-jcm2000-sm57.h",
    "content": "float marshall_jcm2000_sm57[] = {\n    +0.0000000000000, -0.0000060311284, -0.0000178988327, -0.0000356031128, \n    -0.0000416342412, -0.0000712062257, -0.0000949416342, -0.0000653696498, \n    -0.0002138132296, +0.0000118677043, +0.0000060311284, -0.0004215953307, \n    -0.0001424124514, +0.0001484435798, +0.0000653696498, -0.0001068093385, \n    -0.0002315175097, -0.0002256809339, -0.0001840466926, -0.0001365758755, \n    -0.0000949416342, -0.0001009727626, -0.0001128404669, -0.0001247081712, \n    -0.0001840466926, -0.0001603112840, -0.0001959143969, -0.0001840466926, \n    -0.0001782101167, -0.0001782101167, -0.0001840466926, -0.0002077821012, \n    -0.0002196498054, -0.0002494163424, -0.0002433852140, -0.0002671206226, \n    -0.0002494163424, -0.0002731517510, -0.0002494163424, -0.0002433852140, \n    -0.0002256809339, -0.0002433852140, -0.0003027237354, -0.0003503891051, \n    -0.0003799610895, -0.0004867704280, -0.0004690661479, -0.0004392996109, \n    -0.0002968871595, +0.0008073929961, +0.0002731517510, +0.0017040856031, \n    +0.0059373540856, -0.0068457198444, -0.0352317120623, -0.0352910505837, \n    +0.0115599221790, +0.0720013618677, +0.1071202334630, +0.0965577821012, \n    +0.0392276264591, -0.0504490272374, -0.1408558365759, -0.1945346303502, \n    -0.1865371595331, -0.1197844357977, -0.0299772373541, +0.0433243190661, \n    +0.0822727626459, +0.0901040856031, +0.0776178988327, +0.0520817120623, \n    +0.0231019455253, +0.0037404669261, -0.0043935797665, -0.0072077821012, \n    -0.0082171206226, -0.0070951361868, -0.0022620622568, +0.0053850194553, \n    +0.0119694552529, +0.0103546692607, +0.0006649805447, -0.0104198443580, \n    -0.0168025291829, -0.0156743190661, -0.0098737354086, +0.0008252918288, \n    +0.0175624513619, +0.0316931906615, +0.0357245136187, +0.0299178988327, \n    +0.0180789883268, +0.0072850194553, +0.0024223735409, +0.0049280155642, \n    +0.0127472762646, +0.0196167315175, +0.0183758754864, +0.0108651750973, \n    +0.0062519455253, +0.0042926070039, -0.0001365758755, -0.0039719844358, \n    -0.0036394941634, -0.0006470817121, +0.0060797665370, +0.0174852140078, \n    +0.0276498054475, +0.0299595330739, +0.0247287937743, +0.0167194552529, \n    +0.0101408560311, +0.0065546692607, +0.0052900778210, +0.0042511673152, \n    +0.0001900778210, -0.0058066147860, -0.0098856031128, -0.0103190661479, \n    -0.0061747081712, +0.0010212062257, +0.0067626459144, +0.0094046692607, \n    +0.0107642023346, +0.0107048638132, +0.0093749027237, +0.0098202334630, \n    +0.0111145914397, +0.0093215953307, +0.0052782101167, +0.0023570038911, \n    +0.0018939688716, +0.0027490272374, +0.0044173151751, +0.0067863813230, \n    +0.0075463035019, +0.0046488326848, -0.0008608949416, -0.0058422178988, \n    -0.0085912451362, -0.0095826848249, -0.0087040856031, -0.0064894941634, \n    -0.0042986381323, -0.0022799610895, +0.0003978599222, +0.0043996108949, \n    +0.0083241245136, +0.0107583657588, +0.0113698443580, +0.0091315175097, \n    +0.0039601167315, -0.0024640077821, -0.0082350194553, -0.0118330739300, \n    -0.0131332684825, -0.0135369649805, -0.0141544747082, -0.0146768482490, \n    -0.0144690661479, -0.0132875486381, -0.0097015564202, -0.0031052529183, \n    +0.0040017509728, +0.0086743190661, +0.0093392996109, +0.0058303501946, \n    -0.0002612840467, -0.0065904669261, -0.0118507782101, -0.0155556420233, \n    -0.0173723735409, -0.0165947470817, -0.0128957198444, -0.0075819066148, \n    -0.0028379377432, +0.0000060311284, +0.0006708171206, -0.0002138132296, \n    -0.0006649805447, +0.0006056420233, +0.0024579766537, +0.0028202334630, \n    +0.0007480544747, -0.0030338521401, -0.0070474708171, -0.0104614785992, \n    -0.0125394941634, -0.0125157587549, -0.0111799610895, -0.0104258754864, \n    -0.0109126459144, -0.0117260700389, -0.0118626459144, -0.0111620622568, \n    -0.0097608949416, -0.0077599221790, -0.0059313229572, -0.0049754863813, \n    -0.0048270428016, -0.0048507782101, -0.0043105058366, -0.0030933852140, \n    -0.0022501945525, -0.0029507782101, -0.0052605058366, -0.0082289883268, \n    -0.0106038910506, -0.0114054474708, -0.0100340466926, -0.0066854085603, \n    -0.0024521400778, +0.0006470817121, +0.0009856031128, -0.0010686770428, \n    -0.0040671206226, -0.0067566147860, -0.0078015564202, -0.0064182879377, \n    -0.0035682879377, -0.0007778210117, +0.0009856031128, +0.0014011673152, \n    +0.0005344357977, -0.0015614785992, -0.0044470817121, -0.0067447470817, \n    -0.0073799610895, -0.0066556420233, -0.0057770428016, -0.0053317120623, \n    -0.0050287937743, -0.0047142023346, -0.0043163424125, -0.0036276264591, \n    -0.0025470817121, -0.0017159533074, -0.0020365758755, -0.0036692607004, \n    -0.0059610894942, -0.0078964980545, -0.0090186770428, -0.0097490272374, \n    -0.0102536964981, -0.0100754863813, -0.0088464980545, -0.0066616731518, \n    -0.0042332684825, -0.0021492217899, -0.0005165369650, +0.0007243190661, \n    +0.0016326848249, +0.0022501945525, +0.0025649805447, +0.0026243190661, \n    +0.0025531128405, +0.0025412451362, +0.0028379377432, +0.0033902723735, \n    +0.0038710116732, +0.0038889105058, +0.0031585603113, +0.0018227626459, \n    +0.0002612840467, -0.0013655642023, -0.0028558365759, -0.0038354085603, \n    -0.0040610894942, -0.0034852140078, -0.0024758754864, -0.0014428015564, \n    -0.0008311284047, -0.0009202334630, -0.0012408560311, -0.0011459143969, \n    -0.0006768482490, -0.0001840466926, +0.0001424124514, +0.0003680933852, \n    +0.0004630350195, +0.0002138132296, -0.0002077821012, -0.0002019455253, \n    +0.0003741245136, +0.0009737354086, +0.0010212062257, +0.0004097276265, \n    -0.0005463035019, -0.0013299610895, -0.0013180933852, -0.0000772373541, \n    +0.0022501945525, +0.0050110894942, +0.0071721789883, +0.0077124513619, \n    +0.0062579766537, +0.0033188715953, +0.0000356031128, -0.0022443579767, \n    -0.0025470817121, -0.0007778210117, +0.0022443579767, +0.0052723735409, \n    +0.0069466926070, +0.0068219844358, +0.0054503891051, +0.0036038910506, \n    +0.0019533073930, +0.0009143968872, +0.0005344357977, +0.0008371595331, \n    +0.0016326848249, +0.0024877431907, +0.0031822957198, +0.0036038910506, \n    +0.0037346303502, +0.0036455252918, +0.0035029182879, +0.0036336575875, \n    +0.0041027237354, +0.0045836575875, +0.0048745136187, +0.0049931906615, \n    +0.0050883268482, +0.0055215953307, +0.0066437743191, +0.0081103112840, \n    +0.0089474708171, +0.0085793774319, +0.0071426070039, +0.0053375486381, \n    +0.0039126459144, +0.0031585603113, +0.0031348249027, +0.0039424124514, \n    +0.0053079766537, +0.0064834630350, +0.0068931906615, +0.0063766536965, \n    +0.0050050583658, +0.0033011673152, +0.0019118677043, +0.0010865758755, \n    +0.0006412451362, +0.0004809338521, +0.0009143968872, +0.0020305447471, \n    +0.0035029182879, +0.0049754863813, +0.0060085603113, +0.0063112840467, \n    +0.0059729571984, +0.0052070038911, +0.0043935797665, +0.0039601167315, \n    +0.0040431906615, +0.0044173151751, +0.0046073929961, +0.0044410505837, \n    +0.0040552529183, +0.0035743190661, +0.0029982490272, +0.0024223735409, \n    +0.0020484435798, +0.0019533073930, +0.0020898832685, +0.0023095330739, \n    +0.0024105058366, +0.0024521400778, +0.0027964980545, +0.0036038910506, \n    +0.0045478599222, +0.0052128404669, +0.0053612840467, +0.0049813229572, \n    +0.0046013618677, +0.0047498054475, +0.0052782101167, +0.0058245136187, \n    +0.0060322957198, +0.0057591439689, +0.0052307392996, +0.0047081712062, \n    +0.0042867704280, +0.0041085603113, +0.0042867704280, +0.0048270428016, \n    +0.0055334630350, +0.0060678988327, +0.0060797665370, +0.0055334630350, \n    +0.0047616731518, +0.0041085603113, +0.0037642023346, +0.0038058365759, \n    +0.0040075875486, +0.0038058365759, +0.0028737354086, +0.0015675097276, \n    +0.0005581712062, +0.0002968871595, +0.0007422178988, +0.0015496108949, \n    +0.0024579766537, +0.0031941634241, +0.0032180933852, +0.0021433852140, \n    +0.0001365758755, -0.0020542801556, -0.0034198443580, -0.0033486381323, \n    -0.0019414396887, +0.0000772373541, +0.0018583657588, +0.0029924124514, \n    +0.0035266536965, +0.0035861867704, +0.0032357976654, +0.0025233463035, \n    +0.0015079766537, +0.0005877431907, +0.0003799610895, +0.0008252918288, \n    +0.0013062256809, +0.0015793774319, +0.0016980544747, +0.0016268482490, \n    +0.0014428015564, +0.0015852140078, +0.0022680933852, +0.0031822957198, \n    +0.0037702334630, +0.0035624513619, +0.0024996108949, +0.0009914396887, \n    -0.0004392996109, -0.0014011673152, -0.0017692607004, -0.0015852140078, \n    -0.0008192607004, +0.0003385214008, +0.0013299610895, +0.0017040856031, \n    +0.0013834630350, +0.0004630350195, -0.0007066147860, -0.0015793774319, \n    -0.0018702334630, -0.0016208171206, -0.0009262645914, +0.0000535019455, \n    +0.0010628404669, +0.0017990272374, +0.0020126459144, +0.0017692607004, \n    +0.0014723735409, +0.0013655642023, +0.0012645914397, +0.0009618677043, \n    +0.0004809338521, -0.0001247081712, -0.0008964980545, -0.0016268482490, \n    -0.0019651750973, -0.0017573929961, -0.0012645914397, -0.0009381322957, \n    -0.0011221789883, -0.0017692607004, -0.0024461089494, -0.0026894941634, \n    -0.0022976653696, -0.0014130350195, -0.0003503891051, +0.0004571984436, \n    +0.0005758754864, +0.0000060311284, -0.0008015564202, -0.0015258754864, \n    -0.0021077821012, -0.0025352140078, -0.0027192607004, -0.0026599221790, \n    -0.0024579766537, -0.0022443579767, -0.0022145914397, -0.0022680933852, \n    -0.0022324902724, -0.0022501945525, -0.0024640077821, -0.0027490272374, \n    -0.0029924124514, -0.0032951361868, -0.0037346303502, -0.0041027237354, \n    -0.0039898832685, -0.0033544747082, -0.0026599221790, -0.0023451361868, \n    -0.0025173151751, -0.0030933852140, -0.0037464980545, -0.0039482490272, \n    -0.0034733463035, -0.0026599221790, -0.0019593385214, -0.0015258754864, \n    -0.0014486381323, -0.0018346303502, -0.0025649805447, -0.0032239299611, \n    -0.0033070038911, -0.0026657587549, -0.0016031128405, -0.0007184824903, \n    -0.0005225680934, -0.0010628404669, -0.0021433852140, -0.0034317120623, \n    -0.0043756809339, -0.0045599221790, -0.0040908560311, -0.0034673151751, \n    -0.0031171206226, -0.0030992217899, -0.0032418287938, -0.0034910505837, \n    -0.0037879377432, -0.0039898832685, -0.0041322957198, -0.0044352140078, \n    -0.0048270428016, -0.0050764591440, -0.0050466926070, -0.0047081712062, \n    -0.0041383268482, -0.0035801556420, -0.0031822957198, -0.0028914396887, \n    -0.0026955252918, -0.0025887159533, -0.0024758754864, -0.0023392996109, \n    -0.0022443579767, -0.0023095330739, -0.0025470817121, -0.0028260700389, \n    -0.0029568093385, -0.0029389105058, -0.0028202334630, -0.0026538910506, \n    -0.0025531128405, -0.0026243190661, -0.0028795719844, -0.0032180933852, \n    -0.0034435797665, -0.0034079766537, -0.0031941634241, -0.0030042801556, \n    -0.0029924124514, -0.0031466926070, -0.0034140077821, -0.0037346303502, \n    -0.0039542801556, -0.0039424124514, -0.0037048638132, -0.0033961089494, \n    -0.0031171206226, -0.0027667315175, -0.0022443579767, -0.0016208171206, \n    -0.0010330739300, -0.0006470817121, -0.0005581712062, -0.0007184824903, \n    -0.0010628404669, -0.0015793774319, -0.0019889105058, -0.0019533073930, \n    -0.0015258754864, -0.0009083657588, -0.0002196498054, +0.0003145914397, \n    +0.0005521400778, +0.0003859922179, -0.0002138132296, -0.0010924124514, \n    -0.0019058365759, -0.0023451361868, -0.0023392996109, -0.0019295719844, \n    -0.0012645914397, -0.0005996108949, -0.0002138132296, -0.0001305447471, \n    -0.0002019455253, -0.0003324902724, -0.0004334630350, -0.0003741245136, \n    -0.0001900778210, -0.0000178988327, +0.0000237354086, -0.0000535019455, \n    -0.0001186770428, -0.0001128404669, +0.0000000000000, +0.0002552529183, \n    +0.0006352140078, +0.0010093385214, +0.0011754863813, +0.0009618677043, \n    +0.0004571984436, -0.0001484435798, -0.0007955252918, -0.0013357976654, \n    -0.0014902723735, -0.0011815175097, -0.0005937743191, +0.0000356031128, \n    +0.0004392996109, +0.0004274319066, +0.0000356031128, -0.0004334630350, \n    -0.0007066147860, -0.0007480544747, -0.0007243190661, -0.0007955252918, \n    -0.0009439688716, -0.0011459143969, -0.0013774319066, -0.0014784046693, \n    -0.0012350194553, -0.0007124513619, -0.0001424124514, +0.0003206225681, \n    +0.0005758754864, +0.0005877431907, +0.0004334630350, +0.0002433852140, \n    +0.0002552529183, +0.0005640077821, +0.0009143968872, +0.0011696498054, \n    +0.0013597276265, +0.0014486381323, +0.0013357976654, +0.0010330739300, \n    +0.0007778210117, +0.0007243190661, +0.0009143968872, +0.0012289883268, \n    +0.0014309338521, +0.0014249027237, +0.0013180933852, +0.0011398832685, \n    +0.0008727626459, +0.0006412451362, +0.0005700389105, +0.0006352140078, \n    +0.0006056420233, +0.0004511673152, +0.0004155642023, +0.0005640077821, \n    +0.0006947470817, +0.0007361867704, +0.0007480544747, +0.0006293774319, \n    +0.0003324902724, +0.0000178988327, -0.0001782101167, -0.0001900778210, \n    -0.0000297665370, +0.0001840466926, +0.0004334630350, +0.0006947470817, \n    +0.0008846303502, +0.0008550583658, +0.0005640077821, +0.0000891050584, \n    -0.0003978599222, -0.0007896887160, -0.0009381322957, -0.0006768482490, \n    -0.0000474708171, +0.0005877431907, +0.0008608949416, +0.0007243190661, \n    +0.0003622568093, -0.0001424124514, -0.0007005836576, -0.0009914396887, \n    -0.0007599221790, -0.0001424124514, +0.0005284046693, +0.0010330739300, \n    +0.0013180933852, +0.0013536964981, +0.0011280155642, +0.0008192607004, \n    +0.0006947470817, +0.0007955252918, +0.0009381322957, +0.0009856031128, \n    +0.0008906614786, +0.0006056420233, +0.0002256809339, +0.0000356031128, \n    +0.0001721789883, +0.0004809338521, +0.0006708171206, +0.0006233463035, \n    +0.0004274319066, +0.0002375486381, +0.0001247081712, +0.0000891050584, \n    +0.0001186770428, +0.0001186770428, +0.0000593385214, +0.0000712062257, \n    +0.0002612840467, +0.0006589494163, +0.0011280155642, +0.0014486381323, \n    +0.0015079766537, +0.0012943579767, +0.0008846303502, +0.0004928015564, \n    +0.0003978599222, +0.0007778210117, +0.0014902723735, +0.0021373540856, \n    +0.0023809338521, +0.0020780155642, +0.0014071984436, +0.0007540856031, \n    +0.0004453307393, +0.0005700389105, +0.0009321011673, +0.0012171206226, \n    +0.0011459143969, +0.0007303501946, +0.0002138132296, -0.0001365758755, \n    -0.0002315175097, -0.0000593385214, +0.0002552529183, +0.0004986381323, \n    +0.0004928015564, +0.0003027237354, +0.0001186770428, +0.0000474708171, \n    +0.0001424124514, +0.0003503891051, +0.0005463035019, +0.0006887159533, \n    +0.0007955252918, +0.0008727626459, +0.0009262645914, +0.0009558365759, \n    +0.0010330739300, +0.0011875486381, +0.0013418287938, +0.0013774319066, \n    +0.0012527237354, +0.0009856031128, +0.0006589494163, +0.0004749027237, \n    +0.0005877431907, +0.0009677042802, +0.0014486381323, +0.0019712062257, \n    +0.0024579766537, +0.0027785992218, +0.0028142023346, +0.0025768482490, \n    +0.0022027237354, +0.0018404669261, +0.0016149805447, +0.0015258754864, \n    +0.0015198443580, +0.0015675097276, +0.0015852140078, +0.0014784046693, \n    +0.0012468871595, +0.0009143968872, +0.0005640077821, +0.0002671206226, \n    +0.0001247081712, +0.0002196498054, +0.0004928015564, +0.0008192607004, \n    +0.0010865758755, +0.0012527237354, +0.0012527237354, +0.0011280155642, \n    +0.0010033073930, +0.0009618677043, +0.0009914396887, +0.0010153696498, \n    +0.0009974708171, +0.0008429961089, +0.0005463035019, +0.0002552529183, \n    +0.0001068093385, +0.0001603112840, +0.0004155642023, +0.0007778210117, \n    +0.0011042801556, +0.0013239299611, +0.0013953307393, +0.0013001945525, \n    +0.0010924124514, +0.0008550583658, +0.0006293774319, +0.0004986381323, \n    +0.0004334630350, +0.0003087548638, +0.0000593385214, -0.0002494163424, \n    -0.0004867704280, -0.0004867704280, -0.0001959143969, +0.0002494163424, \n    +0.0006828793774, +0.0010272373541, +0.0012052529183, +0.0011517509728, \n    +0.0009143968872, +0.0005996108949, +0.0002968871595, +0.0001365758755, \n    +0.0001959143969, +0.0004215953307, +0.0006470817121, +0.0007717898833, \n    +0.0007896887160, +0.0007361867704, +0.0006470817121, +0.0005937743191, \n    +0.0005700389105, +0.0005344357977, +0.0004809338521, +0.0004334630350, \n    +0.0003562256809, +0.0003145914397, +0.0003562256809, +0.0004155642023, \n    +0.0003918287938, +0.0003264591440, +0.0002850194553, +0.0002850194553, \n    +0.0002850194553, +0.0002196498054, +0.0000712062257, -0.0000830739300, \n    -0.0001900778210, -0.0002256809339, -0.0001959143969, -0.0001305447471, \n    -0.0000416342412, +0.0000891050584, +0.0002552529183, +0.0003443579767, \n    +0.0002850194553, +0.0000830739300, -0.0001424124514, -0.0002789883268, \n    -0.0002850194553, -0.0002256809339, -0.0001128404669, -0.0000060311284, \n    +0.0000237354086, +0.0000000000000, -0.0000712062257, -0.0001782101167, \n    -0.0002375486381, -0.0002968871595, -0.0004867704280, -0.0007599221790, \n    -0.0009321011673, -0.0008964980545, -0.0006470817121, -0.0002789883268, \n    +0.0000000000000, +0.0000000000000, -0.0002612840467, -0.0006887159533, \n    -0.0010984435798, -0.0013418287938, -0.0013299610895, -0.0011103112840, \n    -0.0008015564202, -0.0005402723735, -0.0003918287938, -0.0003145914397, \n    -0.0002908560311, -0.0002494163424, -0.0001305447471, +0.0000000000000, \n    +0.0000000000000, -0.0001247081712, -0.0002731517510, -0.0003264591440, \n    -0.0002494163424, -0.0000178988327, +0.0002315175097, +0.0003264591440, \n    +0.0002196498054, -0.0000416342412, -0.0003918287938, -0.0007361867704, \n    -0.0009262645914, -0.0009143968872, -0.0008134241245, -0.0007422178988, \n    -0.0007361867704, -0.0008134241245, -0.0008550583658, -0.0007659533074, \n    -0.0005996108949, -0.0004215953307, -0.0003324902724, -0.0004036964981, \n    -0.0006056420233, -0.0008073929961, -0.0009677042802, -0.0010449416342, \n    -0.0009856031128, -0.0008429961089, -0.0007243190661, -0.0006828793774, \n    -0.0007778210117, -0.0009025291829, -0.0008727626459, -0.0006649805447, \n    -0.0003918287938, -0.0002138132296, -0.0002375486381, -0.0004334630350, \n    -0.0006887159533, -0.0009262645914, -0.0010984435798, -0.0011815175097, \n    -0.0010865758755, -0.0007778210117, -0.0003680933852, -0.0000297665370, \n    +0.0001009727626, -0.0000118677043, -0.0003027237354, -0.0005344357977, \n    -0.0005640077821, -0.0004928015564, -0.0004036964981, -0.0003087548638, \n    -0.0001959143969, +0.0000000000000, +0.0003027237354, +0.0005937743191, \n    +0.0007480544747, +0.0007717898833, +0.0007066147860, +0.0006412451362, \n    +0.0006412451362, +0.0006589494163, +0.0005463035019, +0.0002908560311, \n    +0.0000356031128, -0.0000712062257, -0.0000297665370, +0.0000891050584, \n    +0.0001959143969, +0.0001900778210, +0.0000237354086, -0.0002019455253, \n    -0.0003859922179, -0.0004571984436, -0.0003206225681, -0.0000237354086, \n    +0.0002612840467, +0.0004392996109, +0.0004928015564, +0.0004392996109, \n    +0.0003027237354, +0.0001365758755, +0.0000237354086, -0.0000297665370, \n    -0.0001186770428, -0.0002433852140, -0.0002731517510, -0.0001900778210, \n    -0.0001068093385, -0.0000891050584, -0.0000712062257, +0.0000593385214, \n    +0.0003264591440, +0.0005877431907, +0.0006470817121, +0.0004392996109, \n    +0.0000416342412, -0.0004036964981, -0.0007778210117, -0.0009677042802, \n    -0.0009677042802, -0.0008015564202, -0.0005581712062, -0.0004274319066, \n    -0.0005225680934, -0.0008192607004, -0.0011994163424, -0.0014902723735, \n    -0.0015733463035, -0.0014486381323, -0.0011994163424, -0.0008669260700, \n    -0.0005521400778, -0.0002671206226, +0.0000830739300, +0.0003918287938, \n    +0.0004571984436, +0.0002612840467, -0.0000535019455, -0.0002968871595, \n    -0.0003443579767, -0.0002908560311, -0.0002433852140, -0.0002019455253, \n    -0.0001661478599, -0.0002138132296, -0.0002968871595, -0.0002552529183, \n    -0.0000237354086, +0.0003978599222, +0.0008727626459, +0.0011517509728, \n    +0.0011875486381, +0.0010153696498, +0.0006352140078, +0.0000772373541, \n    -0.0004453307393, -0.0007124513619, -0.0006828793774, -0.0004334630350, \n    +0.0000000000000, +0.0004274319066, +0.0005819066148, +0.0002968871595, \n    -0.0002850194553, -0.0008608949416, -0.0011577821012, -0.0010984435798, \n    -0.0007659533074, -0.0002789883268, +0.0002019455253, +0.0005284046693, \n    +0.0006175097276, +0.0004630350195, +0.0001247081712, -0.0004097276265, \n    -0.0010330739300, -0.0014605058366, -0.0014605058366, -0.0010924124514, \n    -0.0005463035019, +0.0000060311284, +0.0004630350195, +0.0007243190661, \n    +0.0007422178988, +0.0005521400778, +0.0002494163424, -0.0000297665370, \n    -0.0002138132296, -0.0003385214008, -0.0004453307393, -0.0004986381323, \n    -0.0005225680934, -0.0005107003891, -0.0004036964981, -0.0001603112840, \n    +0.0001603112840, +0.0003918287938, +0.0003027237354, -0.0001128404669, \n    -0.0006175097276, -0.0009381322957, -0.0009439688716, -0.0006114785992, \n    -0.0000237354086, +0.0006352140078, +0.0010984435798, +0.0012052529183, \n    +0.0010449416342, +0.0008192607004, +0.0007066147860, +0.0007124513619, \n    +0.0005819066148, +0.0001068093385, -0.0006828793774, -0.0015198443580, \n    -0.0019949416342, -0.0018821011673, -0.0013062256809, -0.0004749027237, \n    +0.0003206225681, +0.0008311284047, +0.0009500000000, +0.0007717898833, \n    +0.0004867704280, +0.0002552529183, +0.0001068093385, +0.0000772373541, \n    +0.0002494163424, +0.0006056420233, +0.0009618677043, +0.0011042801556, \n    +0.0009618677043, +0.0006233463035, +0.0002552529183, -0.0000535019455, \n    -0.0003562256809, -0.0006887159533, -0.0009677042802, -0.0010805447471, \n    -0.0010330739300, -0.0008608949416, -0.0005107003891, -0.0000297665370, \n    +0.0004571984436, +0.0008252918288, +0.0009262645914, +0.0007836575875, \n    +0.0006233463035, +0.0006175097276, +0.0007124513619, +0.0007066147860, \n    +0.0004986381323, +0.0000891050584, -0.0004334630350, -0.0008192607004, \n    -0.0008311284047, -0.0004274319066, +0.0002375486381, +0.0008371595331, \n    +0.0011280155642, +0.0011517509728, +0.0009914396887, +0.0006589494163, \n    +0.0001900778210, -0.0003264591440, -0.0007955252918, -0.0012171206226, \n    -0.0015556420233, -0.0016505836576, -0.0014071984436, -0.0008964980545, \n    -0.0001603112840, +0.0008073929961, +0.0019770428016, +0.0032060311284, \n    +0.0042688715953, +0.0049161478599, +0.0048151750973, +0.0038116731518, \n    +0.0021789883268, +0.0005107003891, -0.0008015564202, -0.0016564202335, \n    -0.0019712062257, -0.0018346303502, -0.0015140077821, -0.0011161478599, \n    -0.0006531128405, -0.0002375486381, +0.0000830739300, +0.0003799610895, \n    +0.0006887159533, +0.0009618677043, +0.0011340466926, +0.0011815175097, \n    +0.0010509727626, +0.0006828793774, +0.0001900778210, -0.0001068093385, \n    +0.0001186770428, +0.0007717898833, +0.0012824902724, +0.0012527237354, \n    +0.0007480544747, +0.0000118677043, -0.0007480544747, -0.0014011673152, \n    -0.0018108949416, -0.0019414396887, -0.0018464980545, -0.0015319066148, \n    -0.0010212062257, -0.0004274319066, +0.0000772373541, +0.0004690661479, \n    +0.0007422178988, +0.0008608949416, +0.0008015564202, +0.0004274319066, \n    -0.0002850194553, -0.0011221789883, -0.0017515564202, -0.0019533073930, \n    -0.0016149805447, -0.0008964980545, -0.0001247081712, +0.0004334630350, \n    +0.0006352140078, +0.0005165369650, +0.0003087548638, +0.0002731517510, \n    +0.0005165369650, +0.0008964980545, +0.0012408560311, +0.0013655642023, \n    +0.0010747081712, +0.0003385214008, -0.0006114785992, -0.0014665369650, \n    -0.0020365758755, -0.0022145914397, -0.0019889105058, -0.0014546692607, \n    -0.0007243190661, +0.0000712062257, +0.0007659533074, +0.0011815175097, \n    +0.0012171206226, +0.0009795719844, +0.0006947470817, +0.0004867704280, \n    +0.0003859922179, +0.0004215953307, +0.0005996108949, +0.0008550583658, \n    +0.0010686770428, +0.0011280155642, +0.0009500000000, +0.0005996108949, \n    +0.0002138132296, -0.0000297665370, -0.0000416342412, +0.0000178988327, \n    -0.0000356031128, -0.0001840466926, -0.0002375486381, -0.0000060311284, \n    +0.0005640077821, +0.0013180933852, +0.0019058365759, +0.0020186770428, \n    +0.0016268482490, +0.0010033073930, +0.0004215953307, +0.0001009727626, \n    +0.0002077821012, +0.0006470817121, +0.0010924124514, +0.0012231517510, \n    +0.0008669260700, +0.0001782101167, -0.0004630350195, -0.0007896887160, \n    -0.0007422178988, -0.0003799610895, +0.0001959143969, +0.0007659533074, \n    +0.0009974708171, +0.0007659533074, +0.0002196498054, -0.0003443579767, \n    -0.0008015564202, -0.0011398832685, -0.0012943579767, -0.0012408560311, \n    -0.0010449416342, -0.0007717898833, -0.0005225680934, -0.0003087548638, \n    +0.0000060311284, +0.0004334630350, +0.0008429961089, +0.0011696498054, \n    +0.0013239299611, +0.0012171206226, +0.0008608949416, +0.0003622568093, \n    -0.0000653696498, -0.0002789883268, -0.0003859922179, -0.0005344357977, \n    -0.0007599221790, -0.0010212062257, -0.0012645914397, -0.0013953307393, \n    -0.0013834630350, -0.0013299610895, -0.0012764591440, -0.0011696498054, \n    -0.0010033073930, -0.0008311284047, -0.0007480544747, -0.0007303501946, \n    -0.0006293774319, -0.0004097276265, -0.0001484435798, +0.0000830739300, \n    +0.0002552529183, +0.0003324902724, +0.0002671206226, +0.0000653696498, \n    -0.0001424124514, -0.0002552529183, -0.0002433852140, -0.0001128404669, \n    +0.0000891050584, +0.0003264591440, +0.0005107003891, +0.0005344357977, \n    +0.0003324902724, +0.0000118677043, -0.0002433852140, -0.0003799610895, \n    -0.0004215953307, -0.0003503891051, -0.0001186770428, +0.0002494163424, \n    +0.0006412451362, +0.0008846303502, +0.0008550583658, +0.0005521400778, \n    +0.0001365758755, -0.0002196498054, -0.0004215953307, -0.0004453307393, \n    -0.0002850194553, +0.0000535019455, +0.0005284046693, +0.0009262645914, \n    +0.0010391050584, +0.0007836575875, +0.0002552529183, -0.0002968871595, \n    -0.0006233463035, -0.0006114785992, -0.0003799610895, -0.0001186770428, \n    +0.0000356031128, +0.0000178988327, -0.0001186770428, -0.0003443579767, \n    -0.0006293774319, -0.0008550583658, -0.0008964980545, -0.0007124513619, \n    -0.0003264591440, +0.0000830739300, +0.0003680933852, +0.0004749027237, \n    +0.0003978599222, +0.0001959143969, +0.0000416342412, +0.0000772373541, \n    +0.0003264591440, +0.0006768482490, +0.0009321011673, +0.0009618677043, \n    +0.0007361867704, +0.0002671206226, -0.0002968871595, -0.0008073929961, \n    -0.0011577821012, -0.0013239299611, -0.0013001945525, -0.0011280155642, \n    -0.0007836575875, -0.0002671206226, +0.0003385214008, +0.0008846303502, \n    +0.0011517509728, +0.0010391050584, +0.0006293774319, +0.0000178988327, \n    -0.0006768482490, -0.0012706225681, -0.0015793774319, -0.0014784046693, \n    -0.0009677042802, -0.0002968871595, +0.0002019455253, +0.0004453307393, \n    +0.0004155642023, +0.0001247081712, -0.0002850194553, -0.0006768482490, \n    -0.0009202334630, -0.0009025291829, -0.0006649805447, -0.0003741245136, \n    -0.0001186770428, +0.0000653696498, +0.0001603112840, +0.0000772373541, \n    -0.0001661478599, -0.0004036964981, -0.0005046692607, -0.0005463035019, \n    -0.0005996108949, -0.0005700389105, -0.0004334630350, -0.0002789883268, \n    -0.0002315175097, -0.0003087548638, -0.0003918287938, -0.0004036964981, \n    -0.0004334630350, -0.0005463035019, -0.0006589494163, -0.0007303501946, \n    -0.0007778210117, -0.0007480544747, -0.0005877431907, -0.0003680933852, \n    -0.0002138132296, -0.0001305447471, -0.0001365758755, -0.0002494163424, \n    -0.0004690661479, -0.0007066147860, -0.0008964980545, -0.0009795719844, \n    -0.0009025291829, -0.0006352140078, -0.0002315175097, +0.0001782101167, \n    +0.0004749027237, +0.0005521400778, +0.0004215953307, +0.0001603112840, \n    -0.0001365758755, -0.0003859922179, -0.0004749027237, -0.0004215953307, \n    -0.0002731517510, -0.0000712062257, +0.0001365758755, +0.0003264591440, \n    +0.0004749027237, +0.0005581712062, +0.0005402723735, +0.0003859922179, \n    +0.0000891050584, -0.0002196498054, -0.0004867704280, -0.0006352140078, \n    -0.0005819066148, -0.0002850194553, +0.0001128404669, +0.0004630350195, \n    +0.0007422178988, +0.0008846303502, +0.0008192607004, +0.0006412451362, \n    +0.0004392996109, +0.0002908560311, +0.0002375486381, +0.0002375486381, \n    +0.0002315175097, +0.0002196498054, +0.0001900778210, +0.0001247081712, \n    +0.0000891050584, +0.0001247081712, +0.0001959143969, +0.0002671206226, \n    +0.0002968871595, +0.0001959143969, +0.0000000000000, -0.0002375486381, \n    -0.0004334630350, -0.0004215953307, -0.0002019455253, +0.0000000000000, \n    +0.0000891050584, +0.0001365758755, +0.0001424124514, +0.0000830739300, \n    -0.0000593385214, -0.0002196498054, -0.0002612840467, -0.0001782101167, \n    -0.0000474708171, +0.0000653696498, +0.0001603112840, +0.0002789883268, \n    +0.0005107003891, +0.0008192607004, +0.0011577821012, +0.0014367704280, \n    +0.0015496108949, +0.0014309338521, +0.0011696498054, +0.0008906614786, \n    +0.0006531128405, +0.0004511673152, +0.0002789883268, +0.0001661478599, \n    +0.0001484435798, +0.0001542801556, +0.0001484435798, +0.0001782101167, \n    +0.0002612840467, +0.0003859922179, +0.0005284046693, +0.0005996108949, \n    +0.0004690661479, +0.0001603112840, -0.0001424124514, -0.0003027237354, \n    -0.0002671206226, -0.0000891050584, +0.0001424124514, +0.0003741245136, \n    +0.0005225680934, +0.0005521400778, +0.0005463035019, +0.0005284046693, \n    +0.0004274319066, +0.0002731517510, +0.0001247081712, -0.0000060311284, \n    -0.0000830739300, -0.0000772373541, -0.0000237354086, +0.0001009727626, \n    +0.0004036964981, +0.0008252918288, +0.0011042801556, +0.0010984435798, \n    +0.0008429961089, +0.0004630350195, +0.0001247081712, -0.0000772373541, \n    -0.0001186770428, -0.0000712062257, -0.0000297665370, -0.0000178988327, \n    -0.0000356031128, -0.0000772373541, -0.0001305447471, -0.0001840466926, \n    -0.0002671206226, -0.0004097276265, -0.0005344357977, -0.0005937743191, \n    -0.0006352140078, -0.0006828793774, -0.0007184824903, -0.0006828793774, \n    -0.0005225680934, -0.0002494163424, +0.0000060311284, +0.0002019455253, \n    +0.0003324902724, +0.0003264591440, +0.0001424124514, -0.0001782101167, \n    -0.0005700389105, -0.0008311284047, -0.0008371595331, -0.0006233463035, \n    -0.0003145914397, -0.0000178988327, +0.0001661478599, +0.0001840466926, \n    +0.0000118677043, -0.0002494163424, -0.0004809338521, -0.0006175097276, \n    -0.0006056420233, -0.0004215953307, -0.0001900778210, -0.0000416342412, \n    -0.0000653696498, -0.0002850194553, -0.0005758754864, -0.0007243190661, \n    -0.0006768482490, -0.0005344357977, -0.0003443579767, -0.0001186770428, \n    +0.0000830739300, +0.0001900778210, +0.0001782101167, +0.0000712062257, \n    -0.0000416342412, -0.0001247081712, -0.0001424124514, -0.0000949416342, \n    -0.0000237354086, +0.0000237354086, +0.0000891050584, +0.0001484435798, \n    +0.0001782101167, +0.0001840466926, +0.0001542801556, +0.0001009727626, \n    +0.0000356031128, -0.0000593385214, -0.0001840466926, -0.0002433852140, \n    -0.0002256809339, -0.0000830739300, +0.0002433852140, +0.0006233463035, \n    +0.0008311284047, +0.0008311284047, +0.0006708171206, +0.0004334630350, \n    +0.0002375486381, +0.0001365758755, +0.0001542801556, +0.0002671206226, \n    +0.0003622568093, +0.0003443579767, +0.0002256809339, +0.0000237354086, \n    -0.0001959143969, -0.0003799610895, -0.0004571984436, -0.0004036964981, \n    -0.0002494163424, -0.0001128404669, -0.0000593385214, -0.0000772373541, \n    -0.0001484435798, -0.0002552529183, -0.0003206225681, -0.0002789883268, \n    -0.0001840466926, -0.0000535019455, +0.0001128404669, +0.0002494163424, \n    +0.0003206225681, +0.0003443579767, +0.0003145914397, +0.0002552529183, \n    +0.0001900778210, +0.0001186770428, +0.0000593385214, +0.0000772373541, \n    +0.0001661478599, +0.0002612840467, +0.0003385214008, +0.0003385214008, \n    +0.0002433852140, +0.0001603112840, +0.0002256809339, +0.0004511673152, \n    +0.0007243190661, +0.0008846303502, +0.0008134241245, +0.0005344357977, \n    +0.0001959143969, -0.0000653696498, -0.0001186770428, +0.0000356031128, \n    +0.0002552529183, +0.0003978599222, +0.0004215953307, +0.0003680933852, \n    +0.0002433852140, +0.0000891050584, -0.0000653696498, -0.0001840466926, \n    -0.0002138132296, -0.0001721789883, -0.0001128404669, -0.0001128404669, \n    -0.0001603112840, -0.0002433852140, -0.0003503891051, -0.0004155642023, \n    -0.0003145914397, -0.0000356031128, +0.0003206225681, +0.0005937743191, \n    +0.0006708171206, +0.0005284046693, +0.0002077821012, -0.0001068093385, \n    -0.0002671206226, -0.0002196498054, -0.0000178988327, +0.0002256809339, \n    +0.0003978599222, +0.0004392996109, +0.0003918287938, +0.0002494163424, \n    +0.0000000000000, -0.0002908560311, -0.0005225680934, -0.0005937743191, \n    -0.0004867704280, -0.0002612840467, -0.0000535019455, +0.0001186770428, \n    +0.0002552529183, +0.0003145914397, +0.0003324902724, +0.0003443579767, \n    +0.0002850194553, +0.0001661478599, +0.0000891050584, +0.0000830739300, \n    +0.0001068093385, +0.0001305447471, +0.0001542801556, +0.0001782101167, \n    +0.0002612840467, +0.0004215953307, +0.0006293774319, +0.0008134241245, \n    +0.0009381322957, +0.0009618677043, +0.0008134241245, +0.0004809338521, \n    +0.0000356031128, -0.0003799610895, -0.0006649805447, -0.0006947470817, \n    -0.0004392996109, -0.0000535019455, +0.0002375486381, +0.0003622568093, \n    +0.0003443579767, +0.0001721789883, -0.0001186770428, -0.0004274319066, \n    -0.0005758754864, -0.0004690661479, -0.0001721789883, +0.0001128404669, \n    +0.0002138132296, +0.0001128404669, -0.0001305447471, -0.0004453307393, \n    -0.0007124513619, -0.0007896887160, -0.0006589494163, -0.0003799610895, \n    -0.0000712062257, +0.0001484435798, +0.0002077821012, +0.0000535019455, \n    -0.0002375486381, -0.0005402723735, -0.0007422178988, -0.0008311284047, \n    -0.0008015564202, -0.0006589494163, -0.0004453307393, -0.0002196498054, \n    -0.0000237354086, +0.0000830739300, +0.0000474708171, -0.0000891050584, \n    -0.0002552529183, -0.0003978599222, -0.0004809338521, -0.0004392996109, \n    -0.0003206225681, -0.0002196498054, -0.0001959143969, -0.0002968871595, \n    -0.0004928015564, -0.0007243190661, -0.0008846303502, -0.0008669260700, \n    -0.0006887159533, -0.0004453307393, -0.0002019455253, -0.0000593385214, \n    -0.0000772373541, -0.0001959143969, -0.0003027237354, -0.0003918287938, \n    -0.0004453307393, -0.0004511673152, -0.0004392996109, -0.0004392996109, \n    -0.0004334630350, -0.0004036964981, -0.0003324902724, -0.0002138132296, \n    -0.0000118677043, +0.0002612840467, +0.0005046692607, +0.0005640077821, \n    +0.0004453307393, +0.0002256809339, -0.0000297665370, -0.0002494163424, \n    -0.0003443579767, -0.0003145914397, -0.0002138132296, -0.0001128404669, \n    -0.0000474708171, -0.0000474708171, -0.0000593385214, -0.0000118677043, \n    +0.0001009727626, +0.0002494163424, +0.0004097276265, +0.0005463035019, \n    +0.0005877431907, +0.0004809338521, +0.0002494163424, -0.0000297665370, \n    -0.0002375486381, -0.0003264591440, -0.0003385214008, -0.0003087548638, \n    -0.0002612840467, -0.0002256809339, -0.0002315175097, -0.0002671206226, \n    -0.0002671206226, -0.0001840466926, -0.0000593385214, +0.0000297665370, \n    +0.0000535019455, -0.0000356031128, -0.0002375486381, -0.0004215953307, \n    -0.0005046692607, -0.0004749027237, -0.0003622568093, -0.0002433852140, \n    -0.0002196498054, -0.0002789883268, -0.0003443579767, -0.0003324902724, \n    -0.0001900778210, +0.0000830739300, +0.0004097276265, +0.0006708171206, \n    +0.0007778210117, +0.0006708171206, +0.0003680933852, +0.0000237354086, \n    -0.0001721789883, -0.0001484435798, +0.0000593385214, +0.0003562256809, \n    +0.0006175097276, +0.0007717898833, +0.0008311284047, +0.0008192607004, \n    +0.0007124513619, +0.0005284046693, +0.0003503891051, +0.0002494163424, \n    +0.0001959143969, +0.0001542801556, +0.0001365758755, +0.0001603112840, \n    +0.0002019455253, +0.0002375486381, +0.0002789883268, +0.0003264591440, \n    +0.0003206225681, +0.0002196498054, +0.0000356031128, -0.0001661478599, \n    -0.0002908560311, -0.0003145914397, -0.0002789883268, -0.0002077821012, \n    -0.0001186770428, -0.0000593385214, -0.0000772373541, -0.0001305447471, \n    -0.0001542801556, -0.0001542801556, -0.0001721789883, -0.0001959143969, \n    -0.0002138132296, -0.0002612840467, -0.0003324902724, -0.0003918287938, \n    -0.0003680933852, -0.0002494163424, -0.0000949416342, +0.0000297665370, \n    +0.0001305447471, +0.0001900778210, +0.0001721789883, +0.0000949416342, \n    +0.0000118677043, -0.0000297665370, +0.0000000000000, +0.0000772373541, \n    +0.0001484435798, +0.0002375486381, +0.0003918287938, +0.0005402723735, \n    +0.0005819066148, +0.0005046692607, +0.0003680933852, +0.0002375486381, \n    +0.0001128404669, +0.0000178988327, -0.0000178988327, +0.0000237354086, \n    +0.0001305447471, +0.0002612840467, +0.0003562256809, +0.0004036964981, \n    +0.0003680933852, +0.0002375486381, +0.0001068093385, +0.0000356031128, \n    +0.0000474708171, +0.0001247081712, +0.0002433852140, +0.0003087548638, \n    +0.0002908560311, +0.0002019455253, +0.0000593385214, -0.0000712062257, \n    -0.0001424124514, -0.0001186770428, -0.0000416342412, +0.0000653696498, \n    +0.0001603112840, +0.0001721789883, +0.0001247081712, +0.0000712062257, \n    +0.0000060311284, -0.0000772373541, -0.0001603112840, -0.0001840466926, \n    -0.0001782101167, -0.0001424124514, -0.0000535019455, +0.0000949416342, \n    +0.0002494163424, +0.0003264591440, +0.0003324902724, +0.0002908560311, \n    +0.0002077821012, +0.0001247081712, +0.0000712062257, +0.0000653696498, \n    +0.0000891050584, +0.0000593385214, -0.0000356031128, -0.0001661478599, \n    -0.0002433852140, -0.0002552529183, -0.0002138132296, -0.0001186770428, \n    +0.0000000000000, +0.0001128404669, +0.0002315175097, +0.0002908560311, \n    +0.0002908560311, +0.0002433852140, +0.0001603112840, +0.0000474708171, \n    -0.0000535019455, -0.0001186770428, -0.0001484435798, -0.0001365758755, \n    -0.0000830739300, -0.0000356031128, +0.0000000000000, +0.0000237354086, \n    +0.0000891050584, +0.0001603112840, +0.0001900778210, +0.0001603112840, \n    +0.0000772373541, -0.0000356031128, -0.0002019455253, -0.0003859922179, \n    -0.0005225680934, -0.0005284046693, -0.0003622568093, -0.0000891050584, \n    +0.0001424124514, +0.0002494163424, +0.0001840466926, -0.0000297665370, \n    -0.0003027237354, -0.0005107003891, -0.0006175097276, -0.0006293774319, \n    -0.0005165369650, -0.0002671206226, +0.0000416342412, +0.0003324902724, \n    +0.0005521400778, +0.0006233463035, +0.0004809338521, +0.0001959143969, \n    -0.0001365758755, -0.0004274319066, -0.0006233463035, -0.0006828793774, \n    -0.0005996108949, -0.0004097276265, -0.0002375486381, -0.0001959143969, \n    -0.0002433852140, -0.0002552529183, -0.0001721789883, -0.0000118677043, \n    +0.0001782101167, +0.0003622568093, +0.0004749027237, +0.0004392996109, \n    +0.0002850194553, +0.0000830739300, -0.0001247081712, -0.0002494163424, \n    -0.0001959143969, +0.0000060311284, +0.0002731517510, +0.0005107003891, \n    +0.0005877431907, +0.0004630350195, +0.0002315175097, -0.0000237354086, \n    -0.0002433852140, -0.0003680933852, -0.0003680933852, -0.0002433852140, \n    -0.0000712062257, +0.0000356031128, +0.0000653696498, +0.0000060311284, \n    -0.0001128404669, -0.0002552529183, -0.0004036964981, -0.0005284046693, \n    -0.0005937743191, -0.0006293774319, -0.0005937743191, -0.0004511673152, \n    -0.0002433852140, -0.0000535019455, +0.0000772373541, +0.0001661478599, \n    +0.0001959143969, +0.0001424124514, +0.0000356031128, -0.0000653696498, \n    -0.0001603112840, -0.0001900778210, -0.0001186770428, +0.0000000000000, \n    +0.0001365758755, +0.0002375486381, +0.0002494163424, +0.0001365758755, \n    -0.0000416342412, -0.0002494163424, -0.0003859922179, -0.0003741245136, \n    -0.0001661478599, +0.0001603112840, +0.0004571984436, +0.0005877431907, \n    +0.0005165369650, +0.0002789883268, +0.0000178988327, -0.0001305447471, \n    -0.0001186770428, +0.0000356031128, +0.0002671206226, +0.0004334630350, \n    +0.0004334630350, +0.0002850194553, +0.0000474708171, -0.0002019455253, \n    -0.0003918287938, -0.0004511673152, -0.0003918287938, -0.0002968871595, \n    -0.0001840466926, -0.0000474708171, +0.0001305447471, +0.0003324902724, \n    +0.0004571984436, +0.0004690661479, +0.0003918287938, +0.0002552529183, \n    +0.0000535019455, -0.0002138132296, -0.0004690661479, -0.0005819066148, \n    -0.0005046692607, -0.0002375486381, +0.0001484435798, +0.0004986381323, \n    +0.0006947470817, +0.0007124513619, +0.0005402723735, +0.0001900778210, \n    -0.0002612840467, -0.0007717898833, -0.0012645914397, -0.0015675097276, \n    -0.0014367704280, -0.0007540856031, +0.0003978599222, +0.0016922178988, \n    +0.0026182879377, +0.0027192607004, +0.0018583657588, +0.0003027237354, \n    -0.0013597276265, -0.0024877431907, -0.0026717898833, -0.0019237354086, \n    -0.0006352140078, +0.0006531128405, +0.0015140077821, +0.0016743190661, \n    +0.0011696498054, +0.0002789883268, -0.0006352140078, -0.0013180933852, \n    -0.0016326848249, -0.0015496108949, -0.0011103112840, -0.0003562256809, \n    +0.0005165369650, +0.0011994163424, +0.0014902723735, +0.0013536964981, \n    +0.0008371595331, +0.0001186770428, -0.0005521400778, -0.0009321011673, \n    -0.0009202334630, -0.0005700389105, -0.0000416342412, +0.0004215953307, \n    +0.0006293774319, +0.0005284046693, +0.0002731517510, +0.0000474708171, \n    -0.0000535019455, -0.0000712062257, -0.0000356031128, -0.0000118677043, \n    -0.0000237354086, -0.0000712062257, -0.0001009727626, -0.0000474708171, \n    +0.0001186770428, +0.0003859922179, +0.0006470817121, +0.0007480544747, \n    +0.0006233463035, +0.0003680933852, +0.0001128404669, -0.0000653696498, \n    -0.0001661478599, -0.0002138132296, -0.0002138132296, -0.0001365758755, \n    -0.0000118677043, +0.0000593385214, +0.0000178988327, -0.0000949416342, \n    -0.0001365758755, +0.0000060311284, +0.0003324902724, +0.0007303501946, \n    +0.0010153696498, +0.0009677042802, +0.0005640077821, +0.0000297665370, \n    -0.0003918287938, -0.0005402723735, -0.0003799610895, +0.0000000000000, \n    +0.0004453307393, +0.0008134241245, +0.0009381322957, +0.0007659533074, \n    +0.0004155642023, +0.0000653696498, -0.0001542801556, -0.0002196498054, \n    -0.0001721789883, -0.0001128404669, -0.0000772373541, -0.0000416342412, \n    +0.0000118677043, +0.0000891050584, +0.0001840466926, +0.0002315175097, \n    +0.0002138132296, +0.0001484435798, +0.0000535019455, -0.0000535019455, \n    -0.0001128404669, -0.0000891050584, +0.0000118677043, +0.0001782101167, \n    +0.0003562256809, +0.0004690661479, +0.0004392996109, +0.0002552529183, \n    +0.0000297665370, -0.0001424124514, -0.0002196498054, -0.0002256809339, \n    -0.0001661478599, -0.0000535019455, +0.0001068093385, +0.0003443579767, \n    +0.0006114785992, +0.0008015564202, +0.0008429961089, +0.0006947470817, \n    +0.0003859922179, +0.0000356031128, -0.0002256809339, -0.0003087548638, \n    -0.0002256809339, -0.0000772373541, +0.0000297665370, +0.0000830739300, \n    +0.0001009727626, +0.0000772373541, +0.0000237354086, +0.0000000000000, \n    +0.0000830739300, +0.0002315175097, +0.0003443579767, +0.0003978599222, \n    +0.0003918287938, +0.0002789883268, +0.0000593385214, -0.0001305447471, \n    -0.0001424124514, +0.0000356031128, +0.0002850194553, +0.0004809338521, \n    +0.0005402723735, +0.0003741245136, +0.0000060311284, -0.0004215953307, \n    -0.0007659533074, -0.0008371595331, -0.0005284046693, +0.0000593385214, \n    +0.0007243190661, +0.0011815175097, +0.0012350194553, +0.0009381322957, \n    +0.0004867704280, +0.0000356031128, -0.0003206225681, -0.0005344357977, \n    -0.0006114785992, -0.0005344357977, -0.0003324902724, -0.0001186770428, \n    +0.0000297665370, +0.0001661478599, +0.0002731517510, +0.0002850194553, \n    +0.0002375486381, +0.0001900778210, +0.0001186770428, +0.0000000000000, \n    -0.0001186770428, -0.0002256809339, -0.0003324902724, -0.0004690661479, \n    -0.0005937743191, -0.0006056420233, -0.0004928015564, -0.0002494163424, \n    +0.0000593385214, +0.0003027237354, +0.0003503891051, +0.0001959143969, \n    -0.0000772373541, -0.0003680933852, -0.0005521400778, -0.0005640077821, \n    -0.0003918287938, -0.0000830739300, +0.0002315175097, +0.0004274319066, \n    +0.0004749027237, +0.0004334630350, +0.0003680933852, +0.0002908560311, \n    +0.0002494163424, +0.0002731517510, +0.0002671206226, +0.0001840466926, \n    +0.0001009727626, +0.0000772373541, +0.0000949416342, +0.0001128404669, \n    +0.0001186770428, +0.0001484435798, +0.0002375486381, +0.0003562256809, \n    +0.0004511673152, +0.0004690661479, +0.0003503891051, +0.0000891050584, \n    -0.0002789883268, -0.0007480544747, -0.0011517509728, -0.0013001945525, \n    -0.0011636186770, -0.0008490272374, -0.0005107003891, -0.0002671206226, \n    -0.0001782101167, -0.0002433852140, -0.0004155642023, -0.0006175097276, \n    -0.0007717898833, -0.0008429961089, -0.0008490272374, -0.0007955252918, \n    -0.0006768482490, -0.0004928015564, -0.0002908560311, -0.0001365758755, \n    -0.0000297665370, +0.0000653696498, +0.0001424124514, +0.0001603112840, \n    +0.0001247081712, +0.0000535019455, -0.0000593385214, -0.0002196498054, \n    -0.0003859922179, -0.0004749027237, -0.0004453307393, -0.0002789883268, \n    +0.0000000000000, +0.0003324902724, +0.0005700389105, +0.0006412451362, \n    +0.0006114785992, +0.0005107003891, +0.0004215953307, +0.0003859922179, \n    +0.0003562256809, +0.0002789883268, +0.0001721789883, +0.0000712062257, \n    +0.0000118677043, -0.0000178988327, -0.0000535019455, -0.0000830739300, \n    -0.0000653696498, +0.0000118677043, +0.0000712062257, +0.0000178988327, \n    -0.0001661478599, -0.0003859922179, -0.0005463035019, -0.0006056420233, \n    -0.0005107003891, -0.0002375486381, +0.0001068093385, +0.0003622568093, \n    +0.0004392996109, +0.0003741245136, +0.0003027237354, +0.0003087548638, \n    +0.0003622568093, +0.0003859922179, +0.0003503891051, +0.0002789883268, \n    +0.0001247081712, -0.0001247081712, -0.0003741245136, -0.0005046692607, \n    -0.0004630350195, -0.0003027237354, -0.0001186770428, +0.0000474708171, \n    +0.0002196498054, +0.0003918287938, +0.0005402723735, +0.0006470817121, \n    +0.0006708171206, +0.0005758754864, +0.0003859922179, +0.0001542801556, \n    -0.0000712062257, -0.0002789883268, -0.0003859922179, -0.0003385214008, \n    -0.0001721789883, -0.0000060311284, +0.0000653696498, +0.0000178988327, \n    -0.0001009727626, -0.0002315175097, -0.0002433852140, -0.0001305447471, \n    +0.0000178988327, +0.0001424124514, +0.0001900778210, +0.0001484435798, \n    +0.0000237354086, -0.0001247081712, -0.0002433852140, -0.0002968871595, \n    -0.0002968871595, -0.0002433852140, -0.0001603112840, -0.0001128404669, \n    -0.0001247081712, -0.0001721789883, -0.0002196498054, -0.0002552529183, \n    -0.0002731517510, -0.0002552529183, -0.0001959143969, -0.0001068093385, \n    -0.0000356031128, -0.0000178988327, -0.0000237354086, -0.0000535019455, \n    -0.0000949416342, -0.0001542801556, -0.0002256809339, -0.0003264591440, \n    -0.0004392996109, -0.0005344357977, -0.0005758754864, -0.0005640077821, \n    -0.0004809338521, -0.0003324902724, -0.0001603112840, +0.0000000000000, \n    +0.0001542801556, +0.0002850194553, +0.0003799610895, +0.0003918287938, \n    +0.0003027237354, +0.0001840466926, +0.0001186770428, +0.0001186770428, \n    +0.0001068093385, +0.0000416342412, -0.0000416342412, -0.0001128404669, \n    -0.0001424124514, -0.0000949416342, +0.0000118677043, +0.0001247081712, \n    +0.0001484435798, +0.0000297665370, -0.0001424124514, -0.0003027237354, \n    -0.0003741245136, -0.0003145914397, -0.0001365758755, +0.0000237354086, \n    +0.0000593385214, -0.0000653696498, -0.0003443579767, -0.0006649805447, \n    -0.0009143968872, -0.0009914396887, -0.0009025291829, -0.0007066147860, \n    -0.0004749027237, -0.0002494163424, -0.0000891050584, -0.0000653696498, \n    -0.0001542801556, -0.0002731517510, -0.0003443579767, -0.0003562256809, \n    -0.0003562256809, -0.0003741245136, -0.0004097276265, -0.0004097276265, \n    -0.0003264591440, -0.0001603112840, +0.0000593385214, +0.0002850194553, \n    +0.0004571984436, +0.0005284046693, +0.0004867704280, +0.0003622568093, \n    +0.0002196498054, +0.0001305447471, +0.0001186770428, +0.0001721789883, \n    +0.0002612840467, +0.0003443579767, +0.0003503891051, +0.0002612840467, \n    +0.0001661478599, +0.0001721789883, +0.0002908560311, +0.0004453307393, \n    +0.0005284046693, +0.0004928015564, +0.0003622568093, +0.0001900778210, \n    +0.0000118677043, -0.0001305447471, -0.0002375486381, -0.0003264591440, \n    -0.0003859922179, -0.0003799610895, -0.0003087548638, -0.0002019455253, \n    -0.0000830739300, +0.0000118677043, +0.0000653696498, +0.0000653696498, \n    +0.0000237354086, -0.0000593385214, -0.0001900778210, -0.0003087548638, \n    -0.0003562256809, -0.0002850194553, -0.0001186770428, +0.0000830739300, \n    +0.0002494163424, +0.0002671206226, +0.0001128404669, -0.0001484435798, \n    -0.0004334630350, -0.0006589494163, -0.0007659533074, -0.0007480544747, \n    -0.0006352140078, -0.0004571984436, -0.0002256809339, +0.0000178988327, \n    +0.0002077821012, +0.0003264591440, +0.0003918287938, +0.0003978599222, \n    +0.0003324902724, +0.0001959143969, +0.0000000000000, -0.0002019455253, \n    -0.0003264591440, -0.0002908560311, -0.0001128404669, +0.0001009727626, \n    +0.0002850194553, +0.0003859922179, +0.0004215953307, +0.0004334630350, \n    +0.0004809338521, +0.0005758754864, +0.0006531128405, +0.0006470817121, \n    +0.0005344357977, +0.0003859922179, +0.0002731517510, +0.0001959143969, \n    +0.0001484435798, +0.0001603112840, +0.0002256809339, +0.0002671206226, \n    +0.0002433852140, +0.0001542801556, +0.0000653696498, +0.0000535019455, \n    +0.0001305447471, +0.0002138132296, +0.0002315175097, +0.0001721789883, \n    +0.0000416342412, -0.0000772373541, -0.0001068093385, -0.0000237354086, \n    +0.0001068093385, +0.0002612840467, +0.0003978599222, +0.0004392996109, \n    +0.0003443579767, +0.0001424124514, -0.0001128404669, -0.0003562256809, \n    -0.0005107003891, -0.0005344357977, -0.0004097276265, -0.0001721789883, \n    +0.0000830739300, +0.0003027237354, +0.0004334630350, +0.0004809338521, \n    +0.0004630350195, +0.0003799610895, +0.0002612840467, +0.0001305447471, \n    +0.0000416342412, -0.0000118677043, -0.0000653696498, -0.0001009727626, \n    -0.0000535019455, +0.0000712062257, +0.0001959143969, +0.0002196498054, \n    +0.0001247081712, -0.0000356031128, -0.0001782101167, -0.0002196498054, \n    -0.0001661478599, -0.0000653696498, +0.0000772373541, +0.0002494163424, \n    +0.0003799610895, +0.0004274319066, +0.0003622568093, +0.0001840466926, \n    -0.0000178988327, -0.0001661478599, -0.0002315175097, -0.0002019455253, \n    -0.0001068093385, +0.0000000000000, +0.0001068093385, +0.0001603112840, \n    +0.0001424124514, +0.0000772373541, +0.0000000000000, -0.0000593385214, \n    -0.0000949416342, -0.0000772373541, +0.0000000000000, +0.0001186770428, \n    +0.0002077821012, +0.0002196498054, +0.0001484435798, +0.0000474708171, \n    -0.0000178988327, -0.0000416342412, -0.0000118677043, +0.0000535019455, \n    +0.0001186770428, +0.0001424124514, +0.0001009727626, +0.0000178988327, \n    -0.0000416342412, -0.0000474708171, +0.0000118677043, +0.0001186770428, \n    +0.0002138132296, +0.0002256809339, +0.0001424124514, +0.0000000000000, \n    -0.0001603112840, -0.0002850194553, -0.0003562256809, -0.0003562256809, \n    -0.0003027237354, -0.0001959143969, -0.0000416342412, +0.0001186770428, \n    +0.0002612840467, +0.0003385214008, +0.0003918287938, +0.0004392996109, \n    +0.0004690661479, +0.0004334630350, +0.0003443579767, +0.0002494163424, \n    +0.0002077821012, +0.0002077821012, +0.0002138132296, +0.0001782101167, \n    +0.0000891050584, -0.0000237354086, -0.0000891050584, -0.0000416342412, \n    +0.0001128404669, +0.0002850194553, +0.0003622568093, +0.0002731517510, \n    +0.0000416342412, -0.0002375486381, -0.0004511673152, -0.0004690661479, \n    -0.0002433852140, +0.0001068093385, +0.0004097276265, +0.0005107003891, \n    +0.0004036964981, +0.0001484435798, -0.0001247081712, -0.0003324902724, \n    -0.0003978599222, -0.0003206225681, -0.0001603112840, -0.0000060311284, \n    +0.0000712062257, +0.0001128404669, +0.0001661478599, +0.0002671206226, \n    +0.0004036964981, +0.0005046692607, +0.0004867704280, +0.0003087548638, \n    +0.0000297665370, -0.0002433852140, -0.0004215953307, -0.0004453307393, \n    -0.0003503891051, -0.0002077821012, -0.0000772373541, +0.0000237354086, \n    +0.0000830739300, +0.0000949416342, +0.0000772373541, +0.0000712062257, \n    +0.0000949416342, +0.0001009727626, +0.0000416342412, -0.0000712062257, \n    -0.0002077821012, -0.0003324902724, -0.0003918287938, -0.0003622568093, \n    -0.0002552529183, -0.0001484435798, -0.0000949416342, -0.0001009727626, \n    -0.0001484435798, -0.0002315175097, -0.0003443579767, -0.0004690661479, \n    -0.0005640077821, -0.0005521400778, -0.0004215953307, -0.0001721789883, \n    +0.0001068093385, +0.0003443579767, +0.0004867704280, +0.0005344357977, \n    +0.0004928015564, +0.0003859922179, +0.0002077821012, +0.0000118677043, \n    -0.0001424124514, -0.0002433852140, -0.0002850194553, -0.0002850194553, \n    -0.0002552529183, -0.0002019455253, -0.0001186770428, -0.0000356031128, \n    +0.0000000000000, -0.0000474708171, -0.0001721789883, -0.0003206225681, \n    -0.0003978599222, -0.0003562256809, -0.0001900778210, +0.0000297665370, \n    +0.0002315175097, +0.0003206225681, +0.0002789883268, +0.0001424124514, \n    -0.0000178988327, -0.0001128404669, -0.0001009727626, +0.0000000000000, \n    +0.0001186770428, +0.0002196498054, +0.0002671206226, +0.0002671206226, \n    +0.0002077821012, +0.0000712062257, -0.0000772373541, -0.0001542801556, \n    -0.0001128404669, +0.0000297665370, +0.0002077821012, +0.0003264591440, \n    +0.0003145914397, +0.0001721789883, -0.0000237354086, -0.0001840466926, \n    -0.0002433852140, -0.0002196498054, -0.0001542801556, -0.0000772373541, \n    -0.0000118677043, +0.0000118677043, +0.0000178988327, +0.0000060311284, \n    +0.0000000000000, +0.0000000000000, -0.0000237354086, -0.0000474708171, \n    -0.0000474708171, -0.0000653696498, -0.0001186770428, -0.0001900778210, \n    -0.0002671206226, -0.0003385214008, -0.0003680933852, -0.0003562256809, \n    -0.0003027237354, -0.0002375486381, -0.0001603112840, -0.0000949416342, \n    -0.0000593385214, -0.0000593385214, -0.0000653696498, -0.0000297665370, \n    +0.0000356031128, +0.0000949416342, +0.0001128404669, +0.0000949416342, \n    +0.0000712062257, +0.0000891050584, +0.0001484435798, +0.0002256809339, \n    +0.0002908560311, +0.0002908560311, +0.0002196498054, +0.0000891050584, \n    -0.0000653696498, -0.0001900778210, -0.0002196498054, -0.0001365758755, \n    +0.0000118677043, +0.0001782101167, +0.0002789883268, +0.0002612840467, \n    +0.0001186770428, -0.0000949416342, -0.0002671206226, -0.0003264591440, \n    -0.0003027237354, -0.0002256809339, -0.0001247081712, -0.0000178988327, \n    +0.0000416342412, +0.0000593385214, +0.0000535019455, +0.0000474708171, \n    +0.0000474708171, +0.0000416342412, +0.0000000000000, -0.0000535019455, \n    -0.0001009727626, -0.0001365758755, -0.0001603112840, -0.0001424124514, \n    -0.0000653696498, +0.0000474708171, +0.0001661478599, +0.0002375486381, \n    +0.0002256809339, +0.0001661478599, +0.0001186770428, +0.0000891050584, \n    +0.0000474708171, -0.0000060311284, -0.0000830739300, -0.0001542801556, \n    -0.0001840466926, -0.0001484435798, -0.0000356031128, +0.0000891050584, \n    +0.0001721789883, +0.0001840466926, +0.0001247081712, +0.0000060311284, \n    -0.0001305447471, -0.0002612840467, -0.0003264591440, -0.0003385214008, \n    -0.0002908560311, -0.0001840466926, -0.0000474708171, +0.0001068093385, \n    +0.0002433852140, +0.0003145914397, +0.0003027237354, +0.0002315175097, \n    +0.0001009727626, -0.0000535019455, -0.0001782101167, -0.0002077821012, \n    -0.0001424124514, -0.0000178988327, +0.0001068093385, +0.0001721789883, \n    +0.0001484435798, +0.0000593385214, +0.0000000000000, +0.0000178988327, \n    +0.0000949416342, +0.0001603112840, +0.0001840466926, +0.0001840466926, \n    +0.0001782101167, +0.0001603112840, +0.0001305447471, +0.0000891050584, \n    +0.0000593385214, +0.0000237354086, -0.0000356031128, -0.0001365758755, \n    -0.0002433852140, -0.0003145914397, -0.0003385214008, -0.0003206225681, \n    -0.0002552529183, -0.0001661478599, -0.0000891050584, -0.0000416342412, \n    -0.0000178988327, +0.0000060311284, +0.0000416342412, +0.0000772373541, \n    +0.0000891050584, +0.0000593385214, +0.0000000000000, -0.0000474708171, \n    -0.0000593385214, -0.0000356031128, -0.0000178988327, -0.0000474708171, \n    -0.0001365758755, -0.0002671206226, -0.0004215953307, -0.0005107003891, \n    -0.0004630350195, -0.0002612840467, +0.0000237354086, +0.0002968871595, \n    +0.0004571984436, +0.0004571984436, +0.0003145914397, +0.0001068093385, \n    -0.0000593385214, -0.0001484435798, -0.0001247081712, -0.0000593385214, \n    -0.0000060311284, -0.0000060311284, -0.0000593385214, -0.0001186770428, \n    -0.0001424124514, -0.0000891050584, +0.0000356031128, +0.0002077821012, \n    +0.0003443579767, +0.0004036964981, +0.0003741245136, +0.0002908560311, \n    +0.0001721789883, +0.0000535019455, +0.0000060311284, +0.0000772373541, \n    +0.0002077821012, +0.0003324902724, +0.0004097276265, +0.0003918287938, \n    +0.0002789883268, +0.0001186770428, -0.0000118677043, -0.0000593385214, \n    +0.0000060311284, +0.0001365758755, +0.0002612840467, +0.0003206225681, \n    +0.0002908560311, +0.0001900778210, +0.0000593385214, -0.0000060311284, \n    +0.0000000000000, +0.0000535019455, +0.0001128404669, +0.0001542801556, \n    +0.0001603112840, +0.0001305447471, +0.0000772373541, +0.0000060311284, \n    -0.0000416342412, -0.0000891050584, -0.0001484435798, -0.0001959143969, \n    -0.0001900778210, -0.0001009727626, +0.0000474708171, +0.0002375486381, \n    +0.0004334630350, +0.0005758754864, +0.0005937743191, +0.0004690661479, \n    +0.0002433852140, +0.0000178988327, -0.0001247081712, -0.0001424124514, \n    -0.0000416342412, +0.0000949416342, +0.0001900778210, +0.0001782101167, \n    +0.0000653696498, -0.0000830739300, -0.0001840466926, -0.0001959143969, \n    -0.0001128404669, +0.0000178988327, +0.0001424124514, +0.0001959143969, \n    +0.0001840466926, +0.0001365758755, +0.0000949416342, +0.0000653696498, \n    +0.0000356031128, +0.0000060311284, -0.0000297665370, -0.0000593385214, \n    -0.0000653696498, -0.0000535019455, -0.0000356031128, -0.0000118677043, \n    +0.0000000000000, -0.0000118677043, -0.0000535019455, -0.0001305447471, \n    -0.0002315175097, -0.0003145914397, -0.0003562256809, -0.0003027237354, \n    -0.0001365758755, +0.0000712062257, +0.0002315175097, +0.0002850194553, \n    +0.0002375486381, +0.0001365758755, +0.0000535019455, +0.0000118677043, \n    +0.0000060311284, -0.0000060311284, -0.0000949416342, -0.0002196498054, \n    -0.0003145914397, -0.0002968871595, -0.0001721789883, +0.0000178988327, \n    +0.0002019455253, +0.0002968871595, +0.0002494163424, +0.0000891050584, \n    -0.0000949416342, -0.0002375486381, -0.0003027237354, -0.0002789883268, \n    -0.0001900778210, -0.0000949416342, -0.0000416342412, -0.0000535019455, \n    -0.0001128404669, -0.0001721789883, -0.0002077821012, -0.0002077821012, \n    -0.0001542801556, -0.0000535019455, +0.0000593385214, +0.0001305447471, \n    +0.0001603112840, +0.0001721789883, +0.0001782101167, +0.0001542801556, \n    +0.0001128404669, +0.0000474708171, -0.0000416342412, -0.0001365758755, \n    -0.0002315175097, -0.0002908560311, -0.0003324902724, -0.0003443579767, \n    -0.0003087548638, -0.0002196498054, -0.0000891050584, +0.0000416342412, \n    +0.0001484435798, +0.0001900778210, +0.0001484435798, +0.0000474708171, \n    -0.0000237354086, -0.0000474708171, -0.0000237354086, +0.0000000000000, \n    -0.0000060311284, -0.0000535019455, -0.0001186770428, -0.0001603112840, \n    -0.0001900778210, -0.0001840466926, -0.0001603112840, -0.0001365758755, \n    -0.0001305447471, -0.0001484435798, -0.0001959143969, -0.0002612840467, \n    -0.0002968871595, -0.0002671206226, -0.0001661478599, -0.0000297665370, \n    +0.0000712062257, +0.0001009727626, +0.0000474708171, -0.0000653696498, \n    -0.0001840466926, -0.0002433852140, -0.0001900778210, -0.0000178988327, \n    +0.0002019455253, +0.0003562256809, +0.0003562256809, +0.0001900778210, \n    -0.0000712062257, -0.0003027237354, -0.0003978599222, -0.0003087548638, \n    -0.0000830739300, +0.0001661478599, +0.0003385214008, +0.0003741245136, \n    +0.0002850194553, +0.0001128404669, -0.0000712062257, -0.0002315175097, \n    -0.0003206225681, -0.0003206225681, -0.0002077821012, +0.0000000000000, \n    +0.0002196498054, +0.0004097276265, +0.0005046692607, +0.0005107003891, \n    +0.0004155642023, +0.0002375486381, +0.0000297665370, -0.0001068093385, \n    -0.0001247081712, -0.0000178988327, +0.0001424124514, +0.0002315175097, \n    +0.0001840466926, +0.0000356031128, -0.0001305447471, -0.0002671206226, \n    -0.0003385214008, -0.0003443579767, -0.0002968871595, -0.0002315175097, \n    -0.0001484435798, -0.0000535019455, +0.0000297665370, +0.0001068093385, \n    +0.0001840466926, +0.0002494163424, +0.0002552529183, +0.0001782101167, \n    +0.0000356031128, -0.0001009727626, -0.0001900778210, -0.0002019455253, \n    -0.0001305447471, -0.0000237354086, +0.0000653696498, +0.0001128404669, \n    +0.0001009727626, +0.0000653696498, +0.0000297665370, +0.0000060311284, \n    -0.0000118677043, -0.0000356031128, -0.0000593385214, -0.0000712062257, \n    -0.0000712062257, -0.0000772373541, -0.0000830739300, -0.0000712062257, \n    -0.0000356031128, +0.0000000000000, +0.0000118677043, +0.0000060311284, \n    +0.0000000000000, -0.0000118677043, -0.0000178988327, +0.0000000000000, \n    +0.0000891050584, +0.0002315175097, +0.0003799610895, +0.0004334630350, \n    +0.0003622568093, +0.0001542801556, -0.0001128404669, -0.0003443579767, \n    -0.0004215953307, -0.0003027237354, -0.0000653696498, +0.0001721789883, \n    +0.0002968871595, +0.0002789883268, +0.0001542801556, +0.0000060311284, \n    -0.0000949416342, -0.0001128404669, -0.0000356031128, +0.0000772373541, \n    +0.0001900778210, +0.0002433852140, +0.0002375486381, +0.0001900778210, \n    +0.0001247081712, +0.0000653696498, +0.0000297665370, +0.0000178988327, \n    +0.0000000000000, -0.0000237354086, -0.0000891050584, -0.0001721789883, \n    -0.0002433852140, -0.0002908560311, -0.0002731517510, -0.0001782101167, \n    -0.0000118677043, +0.0001840466926, +0.0003799610895, +0.0004928015564, \n    +0.0004690661479, +0.0003087548638, +0.0000712062257, -0.0001424124514, \n    -0.0002375486381, -0.0001782101167, -0.0000178988327, +0.0001603112840, \n    +0.0002968871595, +0.0003680933852, +0.0003385214008, +0.0002196498054, \n    +0.0000830739300, +0.0000000000000, +0.0000000000000, +0.0000237354086, \n    +0.0000474708171, +0.0000474708171, +0.0000356031128, +0.0000237354086, \n    +0.0000000000000, -0.0000593385214, -0.0001661478599, -0.0002789883268, \n    -0.0003622568093, -0.0003622568093, -0.0002731517510, -0.0001128404669, \n    +0.0000712062257, +0.0002256809339, +0.0002968871595, +0.0002789883268, \n    +0.0001721789883, +0.0000297665370, -0.0001068093385, -0.0002019455253, \n    -0.0002494163424, -0.0002315175097, -0.0001661478599, -0.0000712062257, \n    +0.0000060311284, +0.0000593385214, +0.0000653696498, +0.0000297665370, \n    +0.0000000000000, -0.0000237354086, -0.0000416342412, -0.0000416342412, \n    -0.0000237354086, +0.0000118677043, +0.0000712062257, +0.0001603112840, \n    +0.0002612840467, +0.0003145914397, +0.0002671206226, +0.0001424124514, \n    +0.0000178988327, -0.0000416342412, -0.0000237354086, +0.0000712062257, \n    +0.0002138132296, +0.0003324902724, +0.0003562256809, +0.0002612840467, \n    +0.0001068093385, -0.0000474708171, -0.0001721789883, -0.0002138132296, \n    -0.0001365758755, +0.0000118677043, +0.0001603112840, +0.0002375486381, \n    +0.0002494163424, +0.0001959143969, +0.0000891050584, -0.0000178988327, \n    -0.0000891050584, -0.0001186770428, -0.0001424124514, -0.0001603112840, \n    -0.0001424124514, -0.0001009727626, -0.0000593385214, -0.0000474708171, \n    -0.0000416342412, -0.0000356031128, -0.0000297665370, -0.0000237354086, \n    +0.0000000000000, +0.0000474708171, +0.0001068093385, +0.0001365758755, \n    +0.0001365758755, +0.0001009727626, +0.0000297665370, -0.0000535019455, \n    -0.0001365758755, -0.0002019455253, -0.0002315175097, -0.0002196498054, \n    -0.0001661478599, -0.0000830739300, -0.0000474708171, -0.0000772373541, \n    -0.0001661478599, -0.0002850194553, -0.0003918287938, -0.0004215953307, \n    -0.0003324902724, -0.0001484435798, +0.0000356031128, +0.0001840466926, \n    +0.0002552529183, +0.0002612840467, +0.0002077821012, +0.0001365758755, \n    +0.0000474708171, -0.0000297665370, -0.0001247081712, -0.0001959143969, \n    -0.0001959143969, -0.0001305447471, -0.0000416342412, +0.0000297665370, \n    +0.0000593385214, +0.0000060311284, -0.0001186770428, -0.0002731517510, \n    -0.0003918287938, -0.0004274319066, -0.0003443579767, -0.0001484435798, \n    +0.0000830739300, +0.0002731517510, +0.0003562256809, +0.0003087548638, \n    +0.0001542801556, -0.0000356031128, -0.0001959143969, -0.0002552529183, \n    -0.0002019455253, -0.0000416342412, +0.0001484435798, +0.0003027237354, \n    +0.0003443579767, +0.0002612840467, +0.0000891050584, -0.0000830739300, \n    -0.0001782101167, -0.0001900778210, -0.0001484435798, -0.0000653696498, \n    +0.0000178988327, +0.0000593385214, +0.0000416342412, +0.0000000000000, \n    -0.0000416342412, -0.0000830739300, -0.0001247081712, -0.0001721789883, \n    -0.0002256809339, -0.0002612840467, -0.0002375486381, -0.0001305447471, \n    +0.0000237354086, +0.0001721789883, +0.0002494163424, +0.0002375486381, \n    +0.0001484435798, +0.0000237354086, -0.0000891050584, -0.0001721789883, \n    -0.0002315175097, -0.0002731517510, -0.0003027237354, -0.0002850194553, \n    -0.0002138132296, -0.0001247081712, -0.0000474708171, -0.0000060311284, \n    -0.0000118677043, -0.0000712062257, -0.0001484435798, -0.0001900778210, \n    -0.0001840466926, -0.0001484435798, -0.0000712062257, +0.0000297665370, \n    +0.0001186770428, +0.0001542801556, +0.0001365758755, +0.0000891050584, \n    +0.0000535019455, +0.0000474708171, +0.0000535019455, +0.0000772373541, \n    +0.0001128404669, +0.0001305447471, +0.0001068093385, +0.0000060311284, \n    -0.0001305447471, -0.0002552529183, -0.0003145914397, -0.0003087548638, \n    -0.0002196498054, -0.0000712062257, +0.0000772373541, +0.0001721789883, \n    +0.0002077821012, +0.0001959143969, +0.0001721789883, +0.0001542801556, \n    +0.0001424124514, +0.0001365758755, +0.0001484435798, +0.0001661478599, \n    +0.0001782101167, +0.0001424124514, +0.0000712062257, -0.0000297665370, \n    -0.0001365758755, -0.0002315175097, -0.0002731517510, -0.0002433852140, \n    -0.0001603112840, -0.0000653696498, +0.0000000000000, +0.0000297665370, \n    +0.0000237354086, -0.0000178988327, -0.0000772373541, -0.0001186770428, \n    -0.0001128404669, -0.0000772373541, -0.0000297665370, +0.0000178988327, \n    +0.0000712062257, +0.0001128404669, +0.0001424124514, +0.0001661478599, \n    +0.0001840466926, +0.0001959143969, +0.0001840466926, +0.0001424124514, \n    +0.0000593385214, -0.0000237354086, -0.0000830739300, -0.0001009727626, \n    -0.0000891050584, -0.0000593385214, -0.0000356031128, -0.0000118677043, \n    +0.0000118677043, +0.0000653696498, +0.0001365758755, +0.0002077821012, \n    +0.0002552529183, +0.0002256809339, +0.0001305447471, +0.0000060311284, \n    -0.0000830739300, -0.0001305447471, -0.0001305447471, -0.0000949416342, \n    -0.0000118677043, +0.0001068093385, +0.0002196498054, +0.0002671206226, \n    +0.0002433852140, +0.0001782101167, +0.0001068093385, +0.0000653696498, \n    +0.0000474708171, +0.0000535019455, +0.0000535019455, +0.0000297665370, \n    -0.0000118677043, -0.0000593385214, -0.0000891050584, -0.0001186770428, \n    -0.0001424124514, -0.0001484435798, -0.0001247081712, -0.0000772373541, \n    -0.0000297665370, -0.0000178988327, -0.0000178988327, -0.0000060311284, \n    +0.0000178988327, +0.0000535019455, +0.0000772373541, +0.0001009727626, \n    +0.0001186770428, +0.0001186770428, +0.0000949416342, +0.0000653696498, \n    +0.0000474708171, +0.0000356031128, +0.0000178988327, -0.0000060311284, \n    -0.0000297665370, -0.0000118677043, +0.0000356031128, +0.0000949416342, \n    +0.0001424124514, +0.0001603112840, +0.0001305447471, +0.0000535019455, \n    -0.0000474708171, -0.0001186770428, -0.0001247081712, -0.0000653696498, \n    +0.0000237354086, +0.0001186770428, +0.0001840466926, +0.0001959143969, \n    +0.0001721789883, +0.0001365758755, +0.0000949416342, +0.0000772373541, \n    +0.0000712062257, +0.0000535019455, -0.0000060311284, -0.0000830739300, \n    -0.0001365758755, -0.0001424124514, -0.0001068093385, -0.0000772373541, \n    -0.0000653696498, -0.0000593385214, -0.0000535019455, -0.0000474708171, \n    -0.0000237354086, +0.0000000000000, +0.0000416342412, +0.0000772373541, \n    +0.0001009727626, +0.0001186770428, +0.0001186770428, +0.0000949416342, \n    +0.0000653696498, +0.0000356031128, +0.0000297665370, +0.0000474708171, \n    +0.0000712062257, +0.0000830739300, +0.0000830739300, +0.0000653696498, \n    +0.0000474708171, +0.0000535019455, +0.0000891050584, +0.0001365758755, \n    +0.0001840466926, +0.0001900778210, +0.0001603112840, +0.0001186770428, \n    +0.0000891050584, +0.0000772373541, +0.0000949416342, +0.0001305447471, \n    +0.0001661478599, +0.0001900778210, +0.0001900778210, +0.0001661478599, \n    +0.0001305447471, +0.0000891050584, +0.0000535019455, +0.0000237354086, \n    +0.0000118677043, +0.0000178988327, +0.0000356031128, +0.0000712062257, \n    +0.0001009727626, +0.0001068093385, +0.0000830739300, +0.0000474708171, \n    +0.0000297665370, +0.0000178988327, +0.0000000000000, -0.0000535019455, \n    -0.0001247081712, -0.0001900778210, -0.0002315175097, -0.0002433852140, \n    -0.0002196498054, -0.0001424124514, -0.0000237354086, +0.0000830739300, \n    +0.0001603112840, +0.0002077821012, +0.0001900778210, +0.0001068093385, \n    +0.0000060311284, -0.0000712062257, -0.0000830739300, -0.0000474708171, \n    +0.0000060311284, +0.0000712062257, +0.0001186770428, +0.0001186770428, \n    +0.0000593385214, -0.0000237354086, -0.0001128404669, -0.0001603112840, \n    -0.0001840466926, -0.0001840466926, -0.0001542801556, -0.0000891050584, \n    -0.0000178988327, +0.0000237354086, +0.0000474708171, +0.0000474708171, \n    +0.0000356031128, +0.0000237354086, +0.0000000000000, -0.0000060311284, \n    -0.0000118677043, -0.0000178988327, -0.0000118677043, +0.0000237354086, \n    +0.0001068093385, +0.0002138132296, +0.0002908560311, +0.0003027237354, \n    +0.0002552529183, +0.0001840466926, +0.0001068093385, +0.0000535019455, \n    +0.0000118677043, +0.0000000000000, -0.0000060311284, -0.0000118677043, \n    -0.0000356031128, -0.0000593385214, -0.0000653696498, -0.0000474708171, \n    -0.0000118677043, +0.0000297665370, +0.0000712062257, +0.0000949416342, \n    +0.0000949416342, +0.0000593385214, +0.0000178988327, -0.0000178988327, \n    -0.0000593385214, -0.0000891050584, -0.0001128404669, -0.0001247081712, \n    -0.0001542801556, -0.0001959143969, -0.0002256809339, -0.0002375486381, \n    -0.0002256809339, -0.0002138132296, -0.0001959143969, -0.0001840466926, \n    -0.0001603112840, -0.0001305447471, -0.0000949416342, -0.0000772373541, \n    -0.0000653696498, -0.0000535019455, -0.0000297665370, -0.0000060311284, \n    -0.0000178988327, -0.0000593385214, -0.0001305447471, -0.0001959143969, \n    -0.0002196498054, -0.0002077821012, -0.0001661478599, -0.0001128404669, \n    -0.0000593385214, -0.0000297665370, -0.0000297665370, -0.0000593385214, \n    -0.0000949416342, -0.0000949416342, -0.0000474708171, +0.0000297665370, \n    +0.0001009727626, +0.0001365758755, +0.0001247081712, +0.0000949416342, \n    +0.0000712062257, +0.0000593385214, +0.0000535019455, +0.0000474708171, \n    +0.0000356031128, +0.0000297665370, +0.0000237354086, +0.0000000000000, \n    -0.0000416342412, -0.0000949416342, -0.0001186770428, -0.0001068093385, \n    -0.0000830739300, -0.0000416342412, +0.0000118677043, +0.0000830739300, \n    +0.0001424124514, +0.0001484435798, +0.0000949416342, +0.0000000000000, \n    -0.0001305447471, -0.0002494163424, -0.0003264591440, -0.0003443579767, \n    -0.0003027237354, -0.0002315175097, -0.0001424124514, -0.0000474708171, \n    +0.0000356031128, +0.0000830739300, +0.0000772373541, +0.0000356031128, \n    +0.0000000000000, -0.0000416342412, -0.0000593385214, -0.0000653696498, \n    -0.0000712062257, -0.0000891050584, -0.0001009727626, -0.0000830739300, \n    -0.0000297665370, +0.0000535019455, +0.0001484435798, +0.0001959143969, \n    +0.0001721789883, +0.0000830739300, -0.0000416342412, -0.0001484435798, \n    -0.0001959143969, -0.0001603112840, -0.0000772373541, +0.0000000000000, \n    +0.0000416342412, +0.0000178988327, -0.0000474708171, -0.0001186770428, \n    -0.0001186770428, -0.0000356031128, +0.0001305447471, +0.0003087548638, \n    +0.0004215953307, +0.0004215953307, +0.0003027237354, +0.0001305447471, \n    -0.0000297665370, -0.0001365758755, -0.0001603112840, -0.0001068093385, \n    -0.0000178988327, +0.0000593385214, +0.0001068093385, +0.0001068093385, \n    +0.0000891050584, +0.0000535019455, +0.0000237354086, +0.0000060311284, \n    +0.0000118677043, +0.0000356031128, +0.0000653696498, +0.0001009727626, \n    +0.0001365758755, +0.0001542801556, +0.0001305447471, +0.0000712062257, \n    -0.0000118677043, -0.0000949416342, -0.0001305447471, -0.0001186770428, \n    -0.0000653696498, +0.0000060311284, +0.0000772373541, +0.0001186770428, \n    +0.0001305447471, +0.0001068093385, +0.0000653696498, +0.0000356031128, \n    +0.0000297665370, +0.0000416342412, +0.0000593385214, +0.0000593385214, \n    +0.0000237354086, -0.0000237354086, -0.0000772373541, -0.0001186770428, \n    -0.0001365758755, -0.0001365758755, -0.0001128404669, -0.0000653696498, \n    +0.0000000000000, +0.0000474708171, +0.0000772373541, +0.0000712062257, \n    +0.0000535019455, +0.0000416342412, +0.0000416342412, +0.0000535019455, \n    +0.0000593385214, +0.0000416342412, +0.0000237354086, +0.0000178988327, \n    +0.0000416342412, +0.0000772373541, +0.0000949416342, +0.0000830739300, \n    +0.0000474708171, -0.0000060311284, -0.0000535019455, -0.0000653696498, \n    -0.0000535019455, -0.0000178988327, +0.0000060311284, +0.0000118677043, \n    +0.0000000000000, -0.0000297665370, -0.0000593385214, -0.0000593385214, \n    -0.0000237354086, +0.0000474708171, +0.0001424124514, +0.0002138132296, \n    +0.0002315175097, +0.0001840466926, +0.0001009727626, +0.0000000000000, \n    -0.0000772373541, -0.0001247081712, -0.0001128404669, -0.0000653696498, \n    -0.0000118677043, +0.0000000000000, -0.0000178988327, -0.0000416342412, \n    -0.0000593385214, -0.0000535019455, -0.0000356031128, +0.0000000000000, \n    +0.0000593385214, +0.0001365758755, +0.0001840466926, +0.0002019455253, \n    +0.0001840466926, +0.0001484435798, +0.0000830739300, +0.0000178988327, \n    -0.0000178988327, -0.0000118677043, +0.0000416342412, +0.0001247081712, \n    +0.0002077821012, +0.0002552529183, +0.0002433852140, +0.0001603112840, \n    +0.0000297665370, -0.0001009727626, -0.0001959143969, -0.0002315175097, \n    -0.0002256809339, -0.0002077821012, -0.0001782101167, -0.0001424124514, \n    -0.0000830739300, +0.0000000000000, +0.0000830739300, +0.0001424124514, \n    +0.0001484435798, +0.0001068093385, +0.0000416342412, -0.0000118677043, \n    -0.0000416342412, -0.0000356031128, -0.0000060311284, +0.0000356031128, \n    +0.0000593385214, +0.0000535019455, +0.0000178988327, -0.0000297665370, \n    -0.0000593385214, -0.0000712062257, -0.0000593385214, -0.0000356031128, \n    +0.0000000000000, +0.0000416342412, +0.0000772373541, +0.0001009727626, \n    +0.0001068093385, +0.0000949416342, +0.0000474708171, -0.0000118677043, \n    -0.0000712062257, -0.0001128404669, -0.0001128404669, -0.0000653696498, \n    +0.0000118677043, +0.0001068093385, +0.0001721789883, +0.0001782101167, \n    +0.0001305447471, +0.0000653696498, +0.0000118677043, +0.0000000000000, \n    +0.0000237354086, +0.0000772373541, +0.0001247081712, +0.0001247081712, \n    +0.0000772373541, +0.0000118677043, -0.0000356031128, -0.0000772373541, \n    -0.0000891050584, -0.0000830739300, -0.0000712062257, -0.0000653696498, \n    -0.0000653696498, -0.0000772373541, -0.0000830739300, -0.0000772373541, \n    -0.0000712062257, -0.0000712062257, -0.0000712062257, -0.0000653696498, \n    -0.0000593385214, -0.0000416342412, +0.0000000000000, +0.0000593385214, \n    +0.0001128404669, +0.0001247081712, +0.0000772373541, +0.0000060311284, \n    -0.0000772373541, -0.0001484435798, -0.0001721789883, -0.0001484435798, \n    -0.0001009727626, -0.0000712062257, -0.0000653696498, -0.0001009727626, \n    -0.0001542801556, -0.0002077821012, -0.0002256809339, -0.0001900778210, \n    -0.0001247081712, -0.0000593385214, -0.0000237354086, -0.0000237354086, \n    -0.0000535019455, -0.0000772373541, -0.0000712062257, -0.0000593385214, \n    -0.0000474708171, -0.0000535019455, -0.0000772373541, -0.0001068093385, \n    -0.0001305447471, -0.0001247081712, -0.0000891050584, -0.0000356031128, \n    +0.0000297665370, +0.0001068093385, +0.0001603112840, +0.0001782101167, \n    +0.0001305447471, +0.0000535019455, -0.0000237354086, -0.0000712062257, \n    -0.0000712062257, -0.0000297665370, +0.0000237354086, +0.0000474708171, \n    +0.0000356031128, -0.0000118677043, -0.0000593385214, -0.0000653696498, \n    -0.0000237354086, +0.0000474708171, +0.0001068093385, +0.0001247081712, \n    +0.0000830739300, +0.0000000000000, -0.0000949416342, -0.0001542801556, \n    -0.0001542801556, -0.0001068093385, -0.0000416342412, +0.0000000000000, \n    +0.0000060311284, -0.0000118677043, -0.0000712062257, -0.0001305447471, \n    -0.0001661478599, -0.0001840466926, -0.0001900778210, -0.0001900778210, \n    -0.0001782101167, -0.0001484435798, -0.0000949416342, -0.0000474708171, \n    +0.0000000000000, +0.0000416342412, +0.0000474708171, +0.0000237354086, \n    -0.0000060311284, -0.0000356031128, -0.0000593385214, -0.0000830739300, \n    -0.0001009727626, -0.0001009727626, -0.0000891050584, -0.0000772373541, \n    -0.0000891050584, -0.0001068093385, -0.0001068093385, -0.0000712062257, \n    -0.0000060311284, +0.0000474708171, +0.0000772373541, +0.0000712062257, \n    +0.0000474708171, +0.0000060311284, -0.0000356031128, -0.0000772373541, \n    -0.0001009727626, -0.0000949416342, -0.0000593385214, -0.0000118677043, \n    +0.0000356031128, +0.0000653696498, +0.0000593385214, +0.0000237354086, \n    +0.0000000000000, -0.0000060311284, +0.0000060311284, +0.0000474708171, \n    +0.0001068093385, +0.0001661478599, +0.0001959143969, +0.0001840466926, \n    +0.0001484435798, +0.0001009727626, +0.0000535019455, +0.0000237354086, \n    +0.0000000000000, -0.0000060311284, -0.0000178988327, -0.0000297665370, \n    -0.0000535019455, -0.0000712062257, -0.0000772373541, -0.0000772373541, \n    -0.0000653696498, -0.0000653696498, -0.0000830739300, -0.0000830739300, \n    -0.0000535019455, +0.0000060311284, +0.0001009727626, +0.0001840466926, \n    +0.0002375486381, +0.0002315175097, +0.0001484435798, +0.0000356031128, \n    -0.0000653696498, -0.0001365758755, -0.0001484435798, -0.0001247081712, \n    -0.0000593385214, +0.0000000000000, +0.0000535019455, +0.0000772373541, \n    +0.0000949416342, +0.0000949416342, +0.0000712062257, +0.0000237354086, \n    -0.0000237354086, -0.0000653696498, -0.0000830739300, -0.0000712062257, \n    -0.0000416342412, +0.0000000000000, +0.0000356031128, +0.0000593385214, \n    +0.0000772373541, +0.0001009727626, +0.0001247081712, +0.0001365758755, \n    +0.0001128404669, +0.0000474708171, -0.0000297665370, -0.0001128404669, \n    -0.0001721789883, -0.0001900778210, -0.0001603112840, -0.0000949416342, \n    -0.0000237354086, +0.0000356031128, +0.0000830739300, +0.0001009727626, \n    +0.0000891050584, +0.0000712062257, +0.0000772373541, +0.0001068093385, \n    +0.0001247081712, +0.0001186770428, +0.0000712062257, +0.0000118677043, \n    -0.0000297665370, -0.0000416342412, -0.0000178988327, +0.0000118677043, \n    +0.0000535019455, +0.0000949416342, +0.0001186770428, +0.0001247081712, \n    +0.0001186770428, +0.0001009727626, +0.0000653696498, +0.0000237354086, \n    -0.0000118677043, -0.0000237354086, +0.0000000000000, +0.0000474708171, \n    +0.0000891050584, +0.0001009727626, +0.0000830739300, +0.0000356031128, \n    -0.0000237354086, -0.0000772373541, -0.0000891050584, -0.0000593385214, \n    +0.0000060311284, +0.0000830739300, +0.0001424124514, +0.0001782101167, \n    +0.0001840466926, +0.0001721789883, +0.0001305447471, +0.0000830739300, \n    +0.0000237354086, -0.0000178988327, -0.0000474708171, -0.0000653696498, \n    -0.0000772373541, -0.0000830739300, -0.0000653696498, -0.0000356031128, \n    +0.0000118677043, +0.0000593385214, +0.0000891050584, +0.0001068093385, \n    +0.0001247081712, +0.0001365758755, +0.0001424124514, +0.0001305447471, \n    +0.0000891050584, +0.0000356031128, -0.0000060311284, -0.0000297665370, \n    -0.0000297665370, -0.0000118677043, +0.0000000000000, +0.0000118677043, \n    +0.0000060311284, +0.0000000000000, +0.0000118677043, +0.0000593385214, \n    +0.0001247081712, +0.0001840466926, +0.0002138132296, +0.0002138132296, \n    +0.0001840466926, +0.0001365758755, +0.0001068093385, +0.0001068093385, \n    +0.0001305447471, +0.0001603112840, +0.0001721789883, +0.0001424124514, \n    +0.0000772373541, -0.0000178988327, -0.0001247081712, -0.0001840466926, \n    -0.0001661478599, -0.0000830739300, +0.0000297665370, +0.0001542801556, \n    +0.0002433852140, +0.0002731517510, +0.0002433852140, +0.0001840466926, \n    +0.0001186770428, +0.0000712062257, +0.0000178988327, -0.0000297665370, \n    -0.0000772373541, -0.0001009727626, -0.0000949416342, -0.0000593385214, \n    -0.0000118677043, +0.0000237354086, +0.0000356031128, +0.0000178988327, \n    -0.0000118677043, -0.0000416342412, -0.0000474708171, -0.0000178988327, \n    +0.0000237354086, +0.0000653696498, +0.0000712062257, +0.0000593385214, \n    +0.0000474708171, +0.0000416342412, +0.0000356031128, +0.0000178988327, \n    +0.0000000000000, -0.0000237354086, -0.0000416342412, -0.0000474708171, \n    -0.0000356031128, -0.0000178988327, +0.0000000000000, +0.0000178988327, \n    +0.0000118677043, -0.0000118677043, -0.0000535019455, -0.0000891050584, \n    -0.0000949416342, -0.0000593385214, +0.0000178988327, +0.0001365758755, \n    +0.0002433852140, +0.0002850194553, +0.0002552529183, +0.0001782101167, \n    +0.0000891050584, +0.0000060311284, -0.0000474708171, -0.0000830739300, \n    -0.0000830739300, -0.0000474708171, +0.0000000000000, +0.0000535019455, \n    +0.0001068093385, +0.0001247081712, +0.0001068093385, +0.0000535019455, \n    +0.0000000000000, -0.0000356031128, -0.0000416342412, -0.0000297665370, \n    +0.0000000000000, +0.0000237354086, +0.0000535019455, +0.0000772373541, \n    +0.0000772373541, +0.0000593385214, +0.0000416342412, +0.0000237354086, \n    +0.0000000000000, -0.0000297665370, -0.0000772373541, -0.0001128404669, \n    -0.0001247081712, -0.0001186770428, -0.0000830739300, -0.0000297665370, \n    +0.0000000000000, +0.0000000000000, -0.0000237354086, -0.0000830739300, \n    -0.0001484435798, -0.0001782101167, -0.0001603112840, -0.0000891050584, \n    +0.0000000000000, +0.0000593385214, +0.0000653696498, +0.0000297665370, \n    -0.0000297665370, -0.0000830739300, -0.0001068093385, -0.0000891050584, \n    -0.0000297665370, +0.0000356031128, +0.0000891050584, +0.0000891050584, \n    +0.0000474708171, -0.0000118677043, -0.0000712062257, -0.0000891050584, \n    -0.0000830739300, -0.0000712062257, -0.0000653696498, -0.0000712062257, \n    -0.0000891050584, -0.0001068093385, -0.0000949416342, -0.0000356031128, \n    +0.0000237354086, +0.0000593385214, +0.0000416342412, -0.0000178988327, \n    -0.0000891050584, -0.0001424124514, -0.0001542801556, -0.0001128404669, \n    -0.0000237354086, +0.0000772373541, +0.0001603112840, +0.0002019455253, \n    +0.0001840466926, +0.0001068093385, +0.0000000000000, -0.0000891050584, \n    -0.0001365758755, -0.0001365758755, -0.0001068093385, -0.0000653696498, \n    -0.0000356031128, -0.0000237354086, -0.0000297665370, -0.0000237354086, \n    -0.0000060311284, +0.0000237354086, +0.0000653696498, +0.0001068093385, \n    +0.0001305447471, +0.0001068093385, +0.0000416342412, -0.0000237354086, \n    -0.0000830739300, -0.0001128404669, -0.0000949416342, -0.0000356031128, \n    +0.0000297665370, +0.0001009727626, +0.0001484435798, +0.0001484435798, \n    +0.0001068093385, +0.0000356031128, -0.0000356031128, -0.0000949416342, \n    -0.0001305447471, -0.0001305447471, -0.0001068093385, -0.0000772373541, \n    -0.0000535019455, -0.0000297665370, +0.0000000000000, +0.0000237354086, \n    +0.0000178988327, -0.0000118677043, -0.0000653696498, -0.0001128404669, \n    -0.0001424124514, -0.0001424124514, -0.0001009727626, -0.0000178988327, \n    +0.0000830739300, +0.0001661478599, +0.0002077821012, +0.0001840466926, \n    +0.0001009727626, -0.0000237354086, -0.0001424124514, -0.0002138132296, \n    -0.0002315175097, -0.0002019455253, -0.0001542801556, -0.0001009727626, \n    -0.0000535019455, -0.0000060311284, +0.0000237354086, +0.0000416342412, \n    +0.0000535019455, +0.0000416342412, +0.0000237354086, +0.0000000000000, \n    -0.0000297665370, -0.0000416342412, -0.0000356031128, -0.0000178988327, \n    -0.0000060311284, -0.0000118677043, -0.0000416342412, -0.0000593385214, \n    -0.0000535019455, -0.0000178988327, +0.0000237354086, +0.0000593385214, \n    +0.0000653696498, +0.0000356031128, -0.0000178988327, -0.0000830739300, \n    -0.0001186770428, -0.0001247081712, -0.0001068093385, -0.0000712062257, \n    -0.0000416342412, -0.0000118677043, +0.0000000000000, +0.0000118677043, \n    +0.0000237354086, +0.0000356031128, +0.0000593385214, +0.0000772373541, \n    +0.0000830739300, +0.0000593385214, +0.0000000000000, -0.0000772373541, \n    -0.0001542801556, -0.0001840466926, -0.0001484435798, -0.0000653696498, \n    +0.0000178988327, +0.0000891050584, +0.0001186770428, +0.0001128404669, \n    +0.0000653696498, +0.0000000000000, -0.0000712062257, -0.0001068093385, \n    -0.0001068093385, -0.0000891050584, -0.0000653696498, -0.0000593385214, \n    -0.0000593385214, -0.0000653696498, -0.0000653696498, -0.0000474708171, \n    -0.0000237354086, -0.0000060311284, +0.0000060311284, +0.0000000000000, \n    -0.0000237354086, -0.0000772373541, -0.0001247081712, -0.0001542801556, \n    -0.0001365758755, -0.0000653696498, +0.0000297665370, +0.0001128404669, \n    +0.0001542801556, +0.0001365758755, +0.0000891050584, +0.0000474708171, \n    +0.0000237354086, +0.0000000000000, -0.0000178988327, -0.0000237354086, \n    -0.0000178988327, +0.0000060311284, +0.0000416342412, +0.0000949416342, \n    +0.0001365758755, +0.0001484435798, +0.0001305447471, +0.0000891050584, \n    +0.0000474708171, +0.0000000000000, -0.0000356031128, -0.0000474708171, \n    -0.0000356031128, +0.0000000000000, +0.0000416342412, +0.0001009727626, \n    +0.0001484435798, +0.0001782101167, +0.0001603112840, +0.0001128404669, \n    +0.0000416342412, -0.0000060311284, -0.0000356031128, -0.0000237354086, \n    -0.0000060311284, -0.0000118677043, -0.0000416342412, -0.0000830739300, \n    -0.0001068093385, -0.0001009727626, -0.0000593385214, +0.0000060311284, \n    +0.0000891050584, +0.0001484435798, +0.0001603112840, +0.0001305447471, \n    +0.0000535019455, -0.0000535019455, -0.0001542801556, -0.0002077821012, \n    -0.0001840466926, -0.0001068093385, -0.0000060311284, +0.0000593385214, \n    +0.0000891050584, +0.0000891050584, +0.0000653696498, +0.0000416342412, \n    +0.0000297665370, +0.0000237354086, +0.0000118677043, +0.0000000000000, \n    -0.0000178988327, -0.0000416342412, -0.0000535019455, -0.0000416342412, \n    -0.0000060311284, +0.0000356031128, +0.0000772373541, +0.0000712062257, \n    +0.0000297665370, -0.0000297665370, -0.0000712062257, -0.0000772373541, \n    -0.0000474708171, +0.0000000000000, +0.0000416342412, +0.0000653696498, \n    +0.0000593385214, +0.0000356031128, +0.0000237354086, +0.0000118677043, \n    +0.0000060311284, -0.0000118677043, -0.0000297665370, -0.0000416342412, \n    -0.0000474708171, -0.0000416342412, -0.0000297665370, -0.0000297665370, \n    -0.0000297665370, -0.0000356031128, -0.0000416342412, -0.0000237354086, \n    +0.0000178988327, +0.0000891050584, +0.0001484435798, +0.0001721789883, \n    +0.0001305447471, +0.0000356031128, -0.0000712062257, -0.0001603112840, \n    -0.0001782101167, -0.0001186770428, +0.0000000000000, +0.0001305447471, \n    +0.0002138132296, +0.0002256809339, +0.0001661478599, +0.0000653696498, \n    -0.0000474708171, -0.0001424124514, -0.0001959143969, -0.0001959143969, \n    -0.0001542801556, -0.0000949416342, -0.0000297665370, +0.0000237354086, \n    +0.0000712062257, +0.0000891050584, +0.0000772373541, +0.0000416342412, \n    -0.0000237354086, -0.0001128404669, -0.0001959143969, -0.0002375486381, \n    -0.0002196498054, -0.0001305447471, -0.0000178988327, +0.0000830739300, \n    +0.0001365758755, +0.0001186770428, +0.0000593385214, -0.0000118677043, \n    -0.0000535019455, -0.0000416342412, +0.0000178988327, +0.0000949416342, \n    +0.0001365758755, +0.0001128404669, +0.0000297665370, -0.0000653696498, \n    -0.0001603112840, -0.0001900778210, -0.0001661478599, -0.0000949416342, \n    -0.0000178988327, +0.0000237354086, +0.0000416342412, +0.0000356031128, \n    +0.0000237354086, +0.0000060311284, +0.0000060311284, +0.0000118677043, \n    +0.0000118677043, +0.0000118677043, +0.0000060311284, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000\n};\n"
  },
  {
    "path": "impulses/17-marshall-jcm2000-sm57-off.h",
    "content": "float marshall_jcm2000_sm57_off[] = {\n    +0.0000000000000, -0.0000263793103, -0.0000684482759, -0.0000946551724, \n    -0.0001579310345, -0.0001789655172, -0.0002000000000, -0.0001894827586, \n    -0.0002000000000, -0.0002051724138, -0.0001946551724, -0.0002210344828, \n    -0.0001946551724, -0.0002472413793, -0.0002105172414, -0.0002893103448, \n    -0.0002315517241, -0.0003105172414, -0.0002315517241, -0.0003105172414, \n    -0.0002472413793, -0.0003051724138, -0.0003367241379, -0.0001684482759, \n    -0.0006734482759, +0.0000631034483, -0.0002000000000, -0.0010996551724, \n    -0.0003105172414, +0.0001684482759, -0.0000789655172, -0.0004787931034, \n    -0.0007629310345, -0.0007470689655, -0.0006367241379, -0.0005367241379, \n    -0.0003841379310, -0.0004525862069, -0.0003787931034, -0.0004367241379, \n    -0.0004946551724, -0.0004577586207, -0.0005734482759, -0.0005629310345, \n    -0.0006682758621, -0.0007524137931, -0.0007313793103, -0.0007103448276, \n    -0.0005156896552, -0.0002472413793, +0.0002262068966, -0.0001262068966, \n    -0.0031832758621, -0.0043934482759, -0.0014522413793, -0.0059403448276, \n    -0.0157375862069, -0.0040777586207, +0.0346217241379, +0.0692696551724, \n    +0.0783565517241, +0.0612034482759, +0.0107443103448, -0.0608246551724, \n    -0.1221439655172, -0.1615853448276, -0.1723979310345, -0.1466053448276, \n    -0.0943098275862, -0.0352425862069, +0.0136277586207, +0.0395570689655, \n    +0.0450344827586, +0.0405041379310, +0.0266396551724, +0.0094236206897, \n    +0.0041936206897, +0.0126122413793, +0.0275605172414, +0.0389310344828, \n    +0.0339429310345, +0.0154903448276, -0.0024834482759, -0.0138434482759, \n    -0.0174529310345, -0.0073768965517, +0.0138486206897, +0.0317436206897, \n    +0.0383468965517, +0.0365422413793, +0.0338798275862, +0.0332536206897, \n    +0.0303544827586, +0.0269396551724, +0.0240615517241, +0.0170529310345, \n    +0.0119701724138, +0.0168110344828, +0.0295651724138, +0.0424982758621, \n    +0.0459079310345, +0.0374998275862, +0.0234037931034, +0.0070874137931, \n    -0.0074874137931, -0.0145643103448, -0.0140591379310, -0.0082924137931, \n    +0.0015889655172, +0.0138329310345, +0.0257768965517, +0.0342850000000, \n    +0.0367684482759, +0.0339165517241, +0.0279603448276, +0.0196417241379, \n    +0.0083924137931, -0.0026150000000, -0.0071243103448, -0.0039620689655, \n    +0.0021310344828, +0.0059824137931, +0.0057351724138, +0.0023256896552, \n    -0.0005208620690, +0.0014258620690, +0.0087081034483, +0.0179053448276, \n    +0.0251348275862, +0.0274184482759, +0.0245824137931, +0.0205887931034, \n    +0.0176581034483, +0.0133856896552, +0.0078293103448, +0.0046250000000, \n    +0.0036725862069, +0.0027939655172, +0.0003315517241, -0.0035515517241, \n    -0.0055774137931, -0.0041987931034, -0.0015679310345, +0.0019836206897, \n    +0.0057772413793, +0.0054563793103, +0.0007998275862, -0.0033674137931, \n    -0.0036884482759, +0.0008103448276, +0.0102496551724, +0.0214727586207, \n    +0.0293600000000, +0.0309753448276, +0.0257346551724, +0.0155693103448, \n    +0.0040936206897, -0.0074505172414, -0.0180053448276, -0.0232091379310, \n    -0.0215727586207, -0.0168162068966, -0.0119439655172, -0.0080082758621, \n    -0.0061403448276, -0.0060087931034, -0.0058615517241, -0.0043144827586, \n    -0.0015574137931, +0.0006787931034, +0.0001210344828, -0.0041513793103, \n    -0.0111284482759, -0.0185789655172, -0.0234196551724, -0.0241982758621, \n    -0.0220463793103, -0.0192313793103, -0.0175950000000, -0.0178001724138, \n    -0.0188051724138, -0.0187210344828, -0.0161796551724, -0.0114651724138, \n    -0.0065455172414, -0.0037146551724, -0.0039305172414, -0.0067560344828, \n    -0.0110863793103, -0.0148220689655, -0.0171372413793, -0.0186525862069, \n    -0.0190577586207, -0.0181212068966, -0.0170741379310, -0.0173529310345, \n    -0.0191260344828, -0.0207624137931, -0.0205362068966, -0.0177737931034, \n    -0.0127594827586, -0.0066296551724, -0.0008998275862, +0.0028360344828, \n    +0.0036831034483, +0.0014048275862, -0.0035305172414, -0.0099393103448, \n    -0.0162479310345, -0.0210255172414, -0.0236932758621, -0.0246824137931, \n    -0.0242825862069, -0.0224041379310, -0.0190156896552, -0.0144222413793, \n    -0.0098550000000, -0.0072715517241, -0.0082555172414, -0.0123858620690, \n    -0.0173581034483, -0.0202520689655, -0.0195155172414, -0.0154167241379, \n    -0.0100075862069, -0.0061087931034, -0.0048460344828, -0.0059718965517, \n    -0.0090079310345, -0.0125912068966, -0.0149746551724, -0.0154955172414, \n    -0.0144063793103, -0.0125017241379, -0.0104391379310, -0.0085765517241, \n    -0.0071768965517, -0.0065086206897, -0.0062665517241, -0.0057562068966, \n    -0.0050932758621, -0.0052617241379, -0.0068137931034, -0.0094289655172, \n    -0.0129436206897, -0.0168636206897, -0.0201258620690, -0.0219831034483, \n    -0.0221884482759, -0.0204836206897, -0.0168898275862, -0.0118860344828, \n    -0.0066927586207, -0.0029201724138, -0.0010365517241, -0.0003946551724, \n    -0.0002841379310, -0.0001210344828, +0.0005734482759, +0.0014784482759, \n    +0.0022362068966, +0.0026150000000, +0.0021046551724, +0.0003420689655, \n    -0.0026150000000, -0.0060298275862, -0.0080924137931, -0.0075610344828, \n    -0.0049617241379, -0.0013153448276, +0.0021046551724, +0.0039515517241, \n    +0.0037305172414, +0.0019889655172, -0.0004313793103, -0.0028412068966, \n    -0.0045144827586, -0.0046091379310, -0.0032253448276, -0.0016468965517, \n    -0.0011206896552, -0.0022625862069, -0.0046513793103, -0.0067243103448, \n    -0.0072768965517, -0.0063613793103, -0.0040462068966, -0.0005472413793, \n    +0.0029939655172, +0.0056720689655, +0.0073348275862, +0.0076820689655, \n    +0.0068558620690, +0.0057931034483, +0.0053194827586, +0.0055089655172, \n    +0.0060929310345, +0.0067875862069, +0.0072032758621, +0.0073979310345, \n    +0.0076662068966, +0.0079556896552, +0.0081398275862, +0.0083186206897, \n    +0.0084134482759, +0.0080398275862, +0.0071505172414, +0.0063244827586, \n    +0.0060456896552, +0.0062982758621, +0.0069558620690, +0.0077556896552, \n    +0.0083660344828, +0.0087553448276, +0.0088343103448, +0.0076346551724, \n    +0.0045934482759, +0.0008050000000, -0.0018679310345, -0.0022520689655, \n    -0.0007944827586, +0.0009208620690, +0.0018468965517, +0.0019100000000, \n    +0.0015627586207, +0.0016153448276, +0.0028412068966, +0.0056667241379, \n    +0.0096813793103, +0.0133908620690, +0.0155534482759, +0.0160058620690, \n    +0.0149377586207, +0.0126753448276, +0.0102760344828, +0.0092551724138, \n    +0.0102234482759, +0.0124227586207, +0.0144589655172, +0.0155324137931, \n    +0.0156218965517, +0.0146063793103, +0.0124753448276, +0.0103286206897, \n    +0.0094867241379, +0.0098655172414, +0.0105443103448, +0.0106968965517, \n    +0.0102181034483, +0.0094762068966, +0.0088027586207, +0.0086817241379, \n    +0.0095498275862, +0.0112967241379, +0.0131593103448, +0.0141012068966, \n    +0.0134329310345, +0.0114651724138, +0.0091500000000, +0.0074136206897, \n    +0.0068191379310, +0.0076505172414, +0.0094182758621, +0.0108653448276, \n    +0.0108548275862, +0.0093289655172, +0.0071715517241, +0.0051617241379, \n    +0.0039410344828, +0.0041777586207, +0.0057562068966, +0.0075451724138, \n    +0.0085344827586, +0.0084450000000, +0.0079608620690, +0.0080818965517, \n    +0.0087974137931, +0.0094920689655, +0.0100498275862, +0.0104970689655, \n    +0.0106653448276, +0.0106232758621, +0.0105127586207, +0.0104286206897, \n    +0.0103444827586, +0.0101760344828, +0.0099287931034, +0.0097129310345, \n    +0.0096182758621, +0.0097446551724, +0.0099760344828, +0.0102496551724, \n    +0.0105232758621, +0.0104496551724, +0.0099444827586, +0.0094077586207, \n    +0.0090868965517, +0.0086553448276, +0.0075610344828, +0.0058405172414, \n    +0.0043250000000, +0.0037463793103, +0.0041724137931, +0.0053194827586, \n    +0.0067875862069, +0.0080977586207, +0.0086237931034, +0.0078977586207, \n    +0.0059087931034, +0.0033358620690, +0.0011101724138, -0.0000894827586, \n    -0.0001420689655, +0.0006893103448, +0.0019784482759, +0.0032306896552, \n    +0.0043829310345, +0.0057036206897, +0.0071979310345, +0.0083818965517, \n    +0.0087291379310, +0.0080660344828, +0.0065506896552, +0.0046565517241, \n    +0.0032306896552, +0.0030781034483, +0.0042724137931, +0.0059982758621, \n    +0.0073610344828, +0.0077713793103, +0.0069822413793, +0.0052143103448, \n    +0.0029991379310, +0.0009996551724, -0.0001156896552, +0.0002000000000, \n    +0.0020046551724, +0.0043567241379, +0.0059718965517, +0.0061139655172, \n    +0.0046250000000, +0.0019520689655, -0.0009839655172, -0.0031727586207, \n    -0.0039725862069, -0.0031622413793, -0.0012155172414, +0.0006787931034, \n    +0.0013363793103, +0.0005262068966, -0.0008575862069, -0.0016205172414, \n    -0.0010575862069, +0.0006103448276, +0.0024518965517, +0.0034148275862, \n    +0.0030044827586, +0.0013891379310, -0.0005367241379, -0.0016627586207, \n    -0.0015048275862, -0.0005418965517, +0.0004841379310, +0.0010050000000, \n    +0.0007577586207, -0.0000263793103, -0.0009313793103, -0.0016100000000, \n    -0.0018468965517, -0.0016205172414, -0.0013312068966, -0.0014889655172, \n    -0.0023046551724, -0.0034463793103, -0.0041777586207, -0.0038777586207, \n    -0.0024677586207, -0.0004682758621, +0.0012312068966, +0.0017889655172, \n    +0.0009944827586, -0.0008050000000, -0.0027675862069, -0.0038936206897, \n    -0.0036884482759, -0.0024413793103, -0.0008050000000, +0.0004841379310, \n    +0.0010417241379, +0.0007470689655, -0.0004787931034, -0.0023518965517, \n    -0.0041936206897, -0.0054668965517, -0.0060246551724, -0.0059351724138, \n    -0.0053668965517, -0.0047039655172, -0.0044039655172, -0.0047196551724, \n    -0.0055300000000, -0.0063560344828, -0.0067927586207, -0.0068558620690, \n    -0.0065875862069, -0.0058667241379, -0.0046565517241, -0.0033622413793, \n    -0.0026729310345, -0.0030306896552, -0.0042251724138, -0.0056931034483, \n    -0.0068243103448, -0.0071453448276, -0.0065350000000, -0.0053774137931, \n    -0.0043724137931, -0.0039356896552, -0.0039094827586, -0.0040777586207, \n    -0.0043618965517, -0.0047301724138, -0.0052248275862, -0.0056984482759, \n    -0.0060667241379, -0.0064981034483, -0.0070558620690, -0.0074874137931, \n    -0.0076556896552, -0.0077136206897, -0.0079293103448, -0.0084660344828, \n    -0.0092762068966, -0.0102550000000, -0.0111600000000, -0.0114651724138, \n    -0.0109863793103, -0.0101129310345, -0.0093079310345, -0.0088868965517, \n    -0.0090658620690, -0.0097708620690, -0.0104758620690, -0.0105391379310, \n    -0.0095498275862, -0.0076977586207, -0.0055720689655, -0.0038305172414, \n    -0.0030886206897, -0.0034779310345, -0.0044250000000, -0.0052089655172, \n    -0.0054353448276, -0.0051774137931, -0.0048881034483, -0.0049143103448, \n    -0.0052512068966, -0.0056089655172, -0.0056667241379, -0.0053458620690, \n    -0.0047722413793, -0.0042198275862, -0.0040303448276, -0.0044618965517, \n    -0.0054931034483, -0.0068717241379, -0.0081344827586, -0.0088396551724, \n    -0.0087186206897, -0.0078031034483, -0.0063403448276, -0.0048406896552, \n    -0.0038989655172, -0.0038094827586, -0.0044093103448, -0.0051512068966, \n    -0.0054774137931, -0.0052143103448, -0.0047565517241, -0.0044618965517, \n    -0.0044355172414, -0.0046250000000, -0.0048512068966, -0.0048512068966, \n    -0.0046618965517, -0.0044250000000, -0.0040303448276, -0.0033989655172, \n    -0.0028096551724, -0.0026308620690, -0.0029255172414, -0.0035305172414, \n    -0.0040462068966, -0.0041356896552, -0.0037831034483, -0.0031991379310, \n    -0.0027624137931, -0.0028518965517, -0.0033832758621, -0.0040831034483, \n    -0.0047881034483, -0.0051932758621, -0.0050091379310, -0.0043724137931, \n    -0.0037410344828, -0.0034937931034, -0.0037200000000, -0.0040356896552, \n    -0.0037831034483, -0.0025677586207, -0.0005682758621, +0.0016468965517, \n    +0.0031991379310, +0.0033306896552, +0.0020046551724, -0.0002105172414, \n    -0.0024939655172, -0.0039672413793, -0.0041724137931, -0.0033568965517, \n    -0.0020677586207, -0.0008155172414, +0.0000000000000, +0.0002000000000, \n    +0.0000525862069, -0.0000053448276, +0.0000736206897, +0.0001631034483, \n    +0.0001631034483, -0.0000736206897, -0.0007418965517, -0.0017048275862, \n    -0.0025729310345, -0.0029517241379, -0.0026834482759, -0.0019362068966, \n    -0.0011627586207, -0.0006313793103, -0.0002787931034, +0.0000000000000, \n    +0.0001210344828, +0.0000105172414, -0.0002736206897, -0.0006472413793, \n    -0.0010260344828, -0.0012312068966, -0.0010629310345, -0.0004472413793, \n    +0.0007893103448, +0.0026570689655, +0.0045460344828, +0.0055351724138, \n    +0.0052248275862, +0.0038567241379, +0.0021467241379, +0.0009418965517, \n    +0.0005208620690, +0.0006472413793, +0.0010524137931, +0.0013312068966, \n    +0.0010575862069, +0.0003577586207, -0.0002577586207, -0.0004208620690, \n    -0.0000736206897, +0.0005944827586, +0.0011943103448, +0.0013627586207, \n    +0.0010524137931, +0.0003420689655, -0.0005208620690, -0.0011837931034, \n    -0.0014206896552, -0.0012575862069, -0.0008681034483, -0.0006103448276, \n    -0.0006944827586, -0.0009944827586, -0.0012312068966, -0.0012681034483, \n    -0.0010786206897, -0.0006893103448, -0.0002841379310, -0.0001315517241, \n    -0.0003736206897, -0.0008944827586, -0.0013837931034, -0.0014101724138, \n    -0.0008365517241, +0.0002156896552, +0.0016258620690, +0.0030360344828, \n    +0.0039094827586, +0.0039620689655, +0.0032727586207, +0.0021415517241, \n    +0.0010206896552, +0.0003156896552, +0.0002420689655, +0.0007839655172, \n    +0.0017415517241, +0.0027518965517, +0.0033937931034, +0.0034517241379, \n    +0.0030727586207, +0.0025360344828, +0.0021572413793, +0.0021256896552, \n    +0.0023308620690, +0.0024362068966, +0.0020782758621, +0.0012522413793, \n    +0.0003367241379, -0.0001789655172, -0.0001051724138, +0.0003420689655, \n    +0.0007998275862, +0.0010575862069, +0.0010312068966, +0.0007734482759, \n    +0.0004472413793, +0.0003210344828, +0.0006418965517, +0.0013048275862, \n    +0.0019889655172, +0.0024624137931, +0.0026413793103, +0.0025413793103, \n    +0.0023467241379, +0.0022572413793, +0.0023362068966, +0.0024624137931, \n    +0.0024887931034, +0.0024413793103, +0.0023834482759, +0.0022993103448, \n    +0.0021887931034, +0.0019889655172, +0.0015363793103, +0.0009524137931, \n    +0.0004946551724, +0.0004313793103, +0.0008103448276, +0.0013627586207, \n    +0.0017153448276, +0.0017310344828, +0.0014679310345, +0.0011365517241, \n    +0.0009103448276, +0.0007787931034, +0.0007524137931, +0.0007787931034, \n    +0.0006208620690, +0.0001894827586, -0.0002315517241, -0.0003420689655, \n    +0.0000105172414, +0.0007944827586, +0.0017100000000, +0.0023677586207, \n    +0.0025308620690, +0.0022362068966, +0.0017520689655, +0.0015206896552, \n    +0.0016889655172, +0.0019679310345, +0.0020625862069, +0.0019784482759, \n    +0.0018310344828, +0.0017784482759, +0.0019731034483, +0.0025782758621, \n    +0.0035725862069, +0.0046565517241, +0.0054194827586, +0.0056456896552, \n    +0.0054720689655, +0.0051248275862, +0.0048039655172, +0.0045513793103, \n    +0.0043567241379, +0.0042462068966, +0.0041513793103, +0.0039777586207, \n    +0.0037515517241, +0.0035884482759, +0.0034253448276, +0.0030937931034, \n    +0.0025150000000, +0.0018153448276, +0.0012155172414, +0.0009155172414, \n    +0.0008260344828, +0.0008629310345, +0.0010470689655, +0.0012575862069, \n    +0.0013312068966, +0.0013048275862, +0.0013206896552, +0.0013786206897, \n    +0.0013627586207, +0.0012732758621, +0.0011996551724, +0.0011101724138, \n    +0.0009734482759, +0.0008891379310, +0.0009944827586, +0.0013258620690, \n    +0.0017468965517, +0.0020362068966, +0.0020887931034, +0.0019994827586, \n    +0.0019256896552, +0.0019625862069, +0.0020782758621, +0.0021731034483, \n    +0.0021993103448, +0.0021677586207, +0.0020782758621, +0.0018625862069, \n    +0.0015574137931, +0.0014153448276, +0.0015574137931, +0.0018153448276, \n    +0.0019574137931, +0.0019205172414, +0.0017836206897, +0.0015837931034, \n    +0.0014206896552, +0.0014627586207, +0.0016889655172, +0.0018994827586, \n    +0.0019625862069, +0.0017625862069, +0.0013312068966, +0.0009208620690, \n    +0.0007365517241, +0.0007524137931, +0.0008839655172, +0.0009996551724, \n    +0.0010839655172, +0.0012206896552, +0.0014312068966, +0.0016889655172, \n    +0.0019625862069, +0.0021467241379, +0.0021782758621, +0.0020415517241, \n    +0.0017415517241, +0.0013837931034, +0.0010470689655, +0.0007893103448, \n    +0.0007155172414, +0.0009365517241, +0.0014468965517, +0.0020625862069, \n    +0.0025360344828, +0.0025993103448, +0.0021310344828, +0.0013101724138, \n    +0.0004787931034, -0.0000946551724, -0.0002577586207, -0.0000946551724, \n    +0.0000631034483, -0.0000158620690, -0.0002893103448, -0.0005577586207, \n    -0.0006629310345, -0.0005103448276, -0.0002315517241, -0.0002262068966, \n    -0.0006944827586, -0.0012732758621, -0.0014363793103, -0.0010417241379, \n    -0.0003367241379, +0.0003682758621, +0.0008998275862, +0.0011050000000, \n    +0.0009313793103, +0.0005103448276, +0.0001105172414, -0.0001841379310, \n    -0.0003682758621, -0.0004787931034, -0.0006103448276, -0.0008050000000, \n    -0.0010050000000, -0.0011837931034, -0.0011837931034, -0.0009103448276, \n    -0.0005367241379, -0.0003105172414, -0.0003946551724, -0.0007682758621, \n    -0.0011312068966, -0.0011365517241, -0.0007155172414, -0.0000420689655, \n    +0.0005313793103, +0.0007050000000, +0.0003787931034, -0.0002472413793, \n    -0.0009260344828, -0.0014732758621, -0.0016889655172, -0.0014468965517, \n    -0.0009470689655, -0.0006839655172, -0.0009524137931, -0.0015837931034, \n    -0.0020941379310, -0.0020572413793, -0.0013837931034, -0.0003946551724, \n    +0.0005418965517, +0.0011522413793, +0.0011837931034, +0.0005629310345, \n    -0.0003998275862, -0.0012050000000, -0.0015627586207, -0.0014574137931, \n    -0.0010575862069, -0.0006103448276, -0.0003682758621, -0.0004841379310, \n    -0.0008944827586, -0.0013522413793, -0.0016837931034, -0.0017889655172, \n    -0.0017100000000, -0.0015679310345, -0.0014574137931, -0.0014312068966, \n    -0.0014889655172, -0.0014837931034, -0.0012260344828, -0.0007313793103, \n    -0.0003262068966, -0.0003156896552, -0.0008103448276, -0.0017153448276, \n    -0.0028044827586, -0.0037146551724, -0.0039672413793, -0.0034094827586, \n    -0.0023993103448, -0.0014627586207, -0.0008629310345, -0.0006682758621, \n    -0.0008998275862, -0.0014153448276, -0.0018731034483, -0.0019468965517, \n    -0.0016627586207, -0.0011891379310, -0.0006577586207, -0.0002631034483, \n    -0.0000946551724, -0.0000579310345, -0.0000684482759, -0.0001315517241, \n    -0.0002893103448, -0.0005156896552, -0.0006524137931, -0.0005524137931, \n    -0.0002051724138, +0.0002841379310, +0.0007313793103, +0.0010050000000, \n    +0.0011365517241, +0.0010944827586, +0.0008260344828, +0.0003472413793, \n    -0.0002577586207, -0.0008050000000, -0.0010365517241, -0.0008470689655, \n    -0.0003841379310, -0.0000158620690, -0.0000474137931, -0.0004577586207, \n    -0.0010206896552, -0.0013681034483, -0.0012891379310, -0.0008470689655, \n    -0.0002051724138, +0.0004262068966, +0.0009050000000, +0.0011786206897, \n    +0.0012786206897, +0.0011312068966, +0.0006367241379, -0.0000789655172, \n    -0.0006787931034, -0.0010050000000, -0.0010101724138, -0.0006998275862, \n    -0.0002420689655, +0.0001315517241, +0.0003367241379, +0.0004208620690, \n    +0.0004418965517, +0.0003787931034, +0.0000841379310, -0.0004525862069, \n    -0.0011417241379, -0.0018153448276, -0.0023046551724, -0.0024729310345, \n    -0.0022993103448, -0.0018205172414, -0.0011470689655, -0.0005524137931, \n    -0.0003000000000, -0.0004841379310, -0.0011522413793, -0.0022625862069, \n    -0.0034884482759, -0.0043618965517, -0.0044355172414, -0.0035043103448, \n    -0.0018258620690, +0.0000263793103, +0.0015784482759, +0.0023677586207, \n    +0.0021993103448, +0.0014784482759, +0.0007470689655, +0.0001946551724, \n    -0.0002472413793, -0.0005629310345, -0.0006208620690, -0.0003420689655, \n    +0.0001420689655, +0.0005944827586, +0.0008208620690, +0.0007418965517, \n    +0.0004313793103, +0.0001789655172, +0.0002156896552, +0.0004313793103, \n    +0.0006998275862, +0.0009629310345, +0.0011627586207, +0.0011417241379, \n    +0.0008470689655, +0.0004262068966, +0.0000000000000, -0.0005051724138, \n    -0.0011260344828, -0.0016468965517, -0.0018415517241, -0.0017310344828, \n    -0.0014574137931, -0.0011206896552, -0.0008313793103, -0.0006524137931, \n    -0.0005629310345, -0.0004577586207, -0.0002946551724, -0.0002156896552, \n    -0.0003631034483, -0.0007682758621, -0.0012681034483, -0.0016415517241, \n    -0.0017310344828, -0.0014417241379, -0.0007944827586, -0.0000158620690, \n    +0.0005629310345, +0.0008681034483, +0.0010206896552, +0.0010206896552, \n    +0.0007524137931, +0.0002946551724, -0.0001051724138, -0.0003105172414, \n    -0.0003577586207, -0.0003787931034, -0.0005051724138, -0.0007893103448, \n    -0.0010734482759, -0.0010260344828, -0.0004631034483, +0.0005367241379, \n    +0.0016048275862, +0.0022413793103, +0.0020887931034, +0.0011996551724, \n    +0.0000263793103, -0.0008891379310, -0.0012996551724, -0.0012417241379, \n    -0.0008575862069, -0.0003105172414, +0.0002210344828, +0.0006682758621, \n    +0.0011050000000, +0.0016468965517, +0.0022941379310, +0.0028412068966, \n    +0.0030044827586, +0.0025939655172, +0.0015679310345, +0.0001210344828, \n    -0.0012681034483, -0.0020836206897, -0.0021100000000, -0.0014468965517, \n    -0.0003893103448, +0.0006156896552, +0.0011417241379, +0.0010260344828, \n    +0.0005682758621, +0.0002156896552, +0.0001210344828, +0.0002367241379, \n    +0.0005313793103, +0.0008681034483, +0.0010944827586, +0.0009996551724, \n    +0.0003577586207, -0.0007629310345, -0.0018889655172, -0.0026518965517, \n    -0.0029727586207, -0.0028096551724, -0.0021256896552, -0.0010417241379, \n    +0.0001210344828, +0.0011155172414, +0.0016784482759, +0.0017363793103, \n    +0.0014468965517, +0.0010470689655, +0.0007839655172, +0.0008681034483, \n    +0.0012837931034, +0.0018363793103, +0.0023098275862, +0.0025360344828, \n    +0.0023782758621, +0.0018100000000, +0.0010575862069, +0.0004631034483, \n    +0.0001789655172, +0.0001367241379, +0.0001946551724, +0.0002262068966, \n    +0.0002105172414, +0.0001579310345, +0.0001579310345, +0.0004262068966, \n    +0.0011365517241, +0.0021887931034, +0.0030991379310, +0.0031465517241, \n    +0.0020046551724, +0.0001262068966, -0.0015048275862, -0.0020362068966, \n    -0.0012470689655, +0.0004736206897, +0.0024308620690, +0.0038094827586, \n    +0.0039936206897, +0.0029622413793, +0.0013627586207, +0.0000684482759, \n    -0.0002946551724, +0.0002367241379, +0.0011786206897, +0.0020887931034, \n    +0.0024993103448, +0.0019046551724, +0.0005051724138, -0.0008524137931, \n    -0.0014574137931, -0.0011522413793, -0.0002262068966, +0.0008839655172, \n    +0.0017258620690, +0.0018994827586, +0.0013837931034, +0.0006103448276, \n    +0.0003105172414, +0.0009629310345, +0.0022677586207, +0.0033358620690, \n    +0.0034622413793, +0.0025255172414, +0.0008155172414, -0.0011470689655, \n    -0.0027255172414, -0.0035253448276, -0.0032622413793, -0.0020205172414, \n    -0.0006472413793, -0.0000263793103, -0.0001946551724, -0.0008103448276, \n    -0.0016943103448, -0.0024782758621, -0.0025729310345, -0.0018836206897, \n    -0.0009944827586, -0.0003998275862, -0.0000736206897, +0.0002051724138, \n    +0.0004208620690, +0.0004631034483, +0.0003998275862, +0.0004787931034, \n    +0.0006577586207, +0.0005472413793, -0.0000263793103, -0.0007998275862, \n    -0.0013048275862, -0.0011786206897, -0.0004682758621, +0.0005156896552, \n    +0.0013943103448, +0.0015732758621, +0.0007524137931, -0.0004893103448, \n    -0.0012470689655, -0.0011050000000, -0.0001105172414, +0.0012365517241, \n    +0.0021572413793, +0.0022677586207, +0.0015889655172, +0.0002420689655, \n    -0.0013627586207, -0.0025098275862, -0.0026675862069, -0.0019100000000, \n    -0.0008103448276, +0.0001051724138, +0.0006734482759, +0.0009260344828, \n    +0.0009629310345, +0.0008891379310, +0.0007524137931, +0.0005944827586, \n    +0.0004367241379, +0.0001894827586, -0.0001684482759, -0.0005262068966, \n    -0.0008103448276, -0.0010260344828, -0.0011050000000, -0.0009786206897, \n    -0.0006734482759, -0.0002787931034, +0.0001684482759, +0.0008418965517, \n    +0.0017836206897, +0.0028044827586, +0.0037251724138, +0.0043093103448, \n    +0.0043408620690, +0.0037725862069, +0.0026729310345, +0.0013732758621, \n    +0.0002682758621, -0.0005367241379, -0.0009418965517, -0.0008575862069, \n    -0.0005367241379, -0.0003105172414, -0.0004156896552, -0.0009103448276, \n    -0.0016258620690, -0.0023572413793, -0.0028201724138, -0.0027150000000, \n    -0.0019256896552, -0.0007103448276, +0.0004736206897, +0.0012050000000, \n    +0.0012943103448, +0.0009260344828, +0.0002946551724, -0.0004631034483, \n    -0.0011417241379, -0.0016048275862, -0.0019151724138, -0.0021625862069, \n    -0.0023203448276, -0.0021415517241, -0.0013101724138, +0.0001156896552, \n    +0.0017205172414, +0.0029781034483, +0.0035410344828, +0.0033358620690, \n    +0.0024834482759, +0.0010891379310, -0.0005418965517, -0.0019100000000, \n    -0.0027413793103, -0.0031622413793, -0.0033201724138, -0.0033253448276, \n    -0.0031412068966, -0.0026993103448, -0.0020994827586, -0.0014889655172, \n    -0.0009629310345, -0.0006682758621, -0.0006682758621, -0.0009103448276, \n    -0.0012837931034, -0.0014732758621, -0.0012943103448, -0.0009681034483, \n    -0.0006051724138, -0.0001367241379, +0.0002525862069, +0.0002472413793, \n    -0.0002315517241, -0.0010050000000, -0.0017363793103, -0.0021677586207, \n    -0.0022256896552, -0.0018836206897, -0.0011206896552, -0.0002156896552, \n    +0.0004367241379, +0.0006944827586, +0.0007524137931, +0.0008313793103, \n    +0.0009365517241, +0.0010206896552, +0.0010524137931, +0.0010575862069, \n    +0.0010260344828, +0.0009155172414, +0.0007734482759, +0.0005734482759, \n    +0.0001841379310, -0.0003998275862, -0.0010681034483, -0.0015574137931, \n    -0.0015943103448, -0.0011837931034, -0.0005998275862, -0.0000789655172, \n    +0.0003472413793, +0.0007313793103, +0.0010206896552, +0.0010839655172, \n    +0.0008681034483, +0.0004418965517, -0.0000105172414, -0.0003893103448, \n    -0.0007577586207, -0.0011522413793, -0.0013522413793, -0.0011522413793, \n    -0.0006262068966, -0.0000525862069, +0.0003472413793, +0.0006367241379, \n    +0.0007734482759, +0.0006156896552, +0.0003051724138, +0.0001420689655, \n    +0.0001894827586, +0.0003841379310, +0.0005944827586, +0.0005682758621, \n    +0.0002156896552, -0.0003736206897, -0.0010944827586, -0.0016627586207, \n    -0.0018363793103, -0.0017468965517, -0.0015784482759, -0.0012681034483, \n    -0.0008155172414, -0.0003367241379, -0.0000474137931, -0.0001315517241, \n    -0.0004841379310, -0.0008629310345, -0.0011101724138, -0.0010417241379, \n    -0.0005839655172, -0.0000210344828, +0.0002946551724, +0.0002577586207, \n    -0.0000841379310, -0.0006208620690, -0.0012155172414, -0.0017100000000, \n    -0.0019889655172, -0.0019046551724, -0.0013996551724, -0.0006208620690, \n    +0.0001579310345, +0.0007577586207, +0.0010734482759, +0.0010417241379, \n    +0.0007418965517, +0.0003472413793, +0.0001000000000, +0.0000158620690, \n    +0.0000105172414, +0.0001315517241, +0.0002367241379, +0.0000263793103, \n    -0.0005156896552, -0.0011312068966, -0.0016522413793, -0.0019836206897, \n    -0.0021151724138, -0.0020151724138, -0.0016679310345, -0.0012837931034, \n    -0.0010891379310, -0.0009944827586, -0.0007577586207, -0.0003420689655, \n    +0.0000736206897, +0.0002631034483, +0.0001315517241, -0.0001894827586, \n    -0.0005734482759, -0.0009524137931, -0.0013048275862, -0.0015522413793, \n    -0.0016153448276, -0.0014522413793, -0.0010524137931, -0.0004156896552, \n    +0.0003156896552, +0.0009260344828, +0.0011943103448, +0.0010312068966, \n    +0.0006208620690, +0.0002577586207, +0.0002156896552, +0.0005051724138, \n    +0.0008891379310, +0.0012206896552, +0.0014101724138, +0.0012891379310, \n    +0.0008260344828, +0.0001894827586, -0.0004208620690, -0.0009839655172, \n    -0.0015994827586, -0.0020941379310, -0.0020941379310, -0.0016048275862, \n    -0.0009681034483, -0.0004525862069, -0.0001156896552, +0.0001156896552, \n    +0.0003105172414, +0.0004418965517, +0.0004577586207, +0.0003577586207, \n    +0.0001367241379, -0.0001946551724, -0.0006051724138, -0.0009208620690, \n    -0.0008891379310, -0.0003525862069, +0.0005577586207, +0.0014837931034, \n    +0.0019941379310, +0.0018994827586, +0.0013101724138, +0.0005682758621, \n    +0.0001315517241, +0.0002631034483, +0.0008418965517, +0.0014837931034, \n    +0.0018363793103, +0.0017520689655, +0.0012996551724, +0.0006313793103, \n    +0.0000053448276, -0.0003525862069, -0.0005051724138, -0.0006156896552, \n    -0.0007470689655, -0.0008998275862, -0.0010155172414, -0.0009629310345, \n    -0.0007734482759, -0.0005418965517, -0.0002841379310, -0.0000736206897, \n    -0.0000105172414, -0.0000105172414, +0.0000525862069, +0.0002577586207, \n    +0.0006682758621, +0.0012575862069, +0.0017415517241, +0.0017994827586, \n    +0.0015101724138, +0.0011470689655, +0.0009155172414, +0.0009786206897, \n    +0.0014153448276, +0.0020205172414, +0.0024834482759, +0.0026413793103, \n    +0.0025098275862, +0.0022887931034, +0.0020941379310, +0.0019046551724, \n    +0.0017574137931, +0.0016732758621, +0.0015784482759, +0.0013837931034, \n    +0.0010944827586, +0.0008734482759, +0.0008524137931, +0.0009575862069, \n    +0.0009734482759, +0.0007418965517, +0.0003105172414, -0.0001631034483, \n    -0.0005472413793, -0.0007208620690, -0.0005998275862, -0.0002315517241, \n    +0.0002000000000, +0.0005156896552, +0.0006367241379, +0.0006103448276, \n    +0.0005472413793, +0.0005103448276, +0.0004577586207, +0.0004525862069, \n    +0.0005524137931, +0.0007155172414, +0.0008944827586, +0.0011365517241, \n    +0.0013312068966, +0.0013681034483, +0.0012522413793, +0.0010734482759, \n    +0.0009365517241, +0.0008470689655, +0.0007103448276, +0.0005051724138, \n    +0.0003315517241, +0.0002893103448, +0.0004103448276, +0.0005524137931, \n    +0.0005944827586, +0.0005524137931, +0.0004313793103, +0.0001736206897, \n    -0.0001841379310, -0.0004525862069, -0.0005156896552, -0.0004631034483, \n    -0.0003051724138, -0.0000263793103, +0.0002682758621, +0.0005787931034, \n    +0.0008681034483, +0.0008786206897, +0.0005682758621, +0.0002841379310, \n    +0.0002000000000, +0.0001736206897, +0.0001156896552, +0.0000263793103, \n    -0.0000579310345, -0.0001051724138, -0.0001000000000, -0.0000579310345, \n    +0.0000315517241, +0.0001789655172, +0.0002841379310, +0.0002105172414, \n    -0.0000789655172, -0.0004525862069, -0.0007524137931, -0.0009208620690, \n    -0.0009260344828, -0.0008155172414, -0.0006998275862, -0.0005156896552, \n    -0.0002105172414, +0.0001262068966, +0.0003631034483, +0.0004313793103, \n    +0.0003000000000, -0.0000368965517, -0.0005682758621, -0.0011206896552, \n    -0.0014574137931, -0.0014468965517, -0.0010312068966, -0.0003682758621, \n    +0.0002262068966, +0.0005472413793, +0.0005367241379, +0.0002156896552, \n    -0.0002472413793, -0.0005893103448, -0.0005998275862, -0.0003210344828, \n    +0.0001051724138, +0.0005418965517, +0.0007998275862, +0.0008208620690, \n    +0.0007787931034, +0.0008944827586, +0.0011312068966, +0.0012943103448, \n    +0.0013153448276, +0.0011891379310, +0.0008839655172, +0.0004472413793, \n    +0.0000315517241, -0.0001631034483, -0.0000579310345, +0.0002736206897, \n    +0.0005998275862, +0.0007155172414, +0.0005577586207, +0.0002105172414, \n    -0.0001579310345, -0.0003787931034, -0.0003946551724, -0.0003156896552, \n    -0.0001684482759, +0.0000000000000, +0.0001051724138, +0.0002000000000, \n    +0.0003367241379, +0.0004156896552, +0.0004051724138, +0.0003736206897, \n    +0.0003367241379, +0.0002472413793, +0.0000684482759, -0.0001841379310, \n    -0.0004208620690, -0.0004893103448, -0.0003472413793, -0.0000841379310, \n    +0.0001631034483, +0.0003420689655, +0.0004156896552, +0.0003736206897, \n    +0.0002841379310, +0.0002210344828, +0.0001894827586, +0.0001841379310, \n    +0.0001684482759, +0.0001525862069, +0.0002000000000, +0.0003577586207, \n    +0.0005472413793, +0.0006629310345, +0.0006313793103, +0.0005051724138, \n    +0.0003631034483, +0.0002156896552, +0.0000789655172, +0.0000525862069, \n    +0.0001262068966, +0.0001420689655, +0.0000158620690, -0.0001631034483, \n    -0.0002736206897, -0.0002525862069, -0.0001000000000, +0.0001525862069, \n    +0.0003787931034, +0.0003367241379, -0.0000158620690, -0.0005734482759, \n    -0.0011575862069, -0.0014889655172, -0.0013417241379, -0.0008260344828, \n    -0.0002315517241, +0.0002787931034, +0.0006051724138, +0.0006944827586, \n    +0.0006313793103, +0.0005577586207, +0.0005418965517, +0.0005682758621, \n    +0.0004998275862, +0.0002631034483, -0.0000525862069, -0.0002893103448, \n    -0.0003315517241, -0.0001631034483, +0.0001946551724, +0.0005524137931, \n    +0.0006787931034, +0.0005367241379, +0.0002525862069, -0.0000789655172, \n    -0.0003577586207, -0.0004525862069, -0.0003367241379, -0.0001631034483, \n    -0.0000474137931, -0.0000684482759, -0.0002315517241, -0.0004472413793, \n    -0.0006103448276, -0.0007260344828, -0.0007787931034, -0.0007418965517, \n    -0.0005998275862, -0.0002787931034, +0.0001946551724, +0.0006893103448, \n    +0.0010155172414, +0.0011155172414, +0.0010101724138, +0.0006998275862, \n    +0.0001736206897, -0.0004156896552, -0.0008208620690, -0.0008418965517, \n    -0.0005156896552, -0.0001210344828, +0.0000946551724, +0.0001736206897, \n    +0.0001789655172, +0.0001472413793, +0.0001367241379, +0.0001789655172, \n    +0.0002210344828, +0.0001894827586, +0.0000368965517, -0.0002262068966, \n    -0.0005367241379, -0.0008208620690, -0.0011417241379, -0.0014732758621, \n    -0.0016468965517, -0.0015101724138, -0.0010996551724, -0.0006682758621, \n    -0.0004262068966, -0.0003998275862, -0.0004787931034, -0.0005839655172, \n    -0.0007577586207, -0.0009996551724, -0.0012050000000, -0.0013101724138, \n    -0.0013153448276, -0.0011732758621, -0.0008470689655, -0.0004367241379, \n    -0.0000946551724, +0.0001210344828, +0.0001841379310, +0.0000000000000, \n    -0.0004156896552, -0.0008839655172, -0.0011417241379, -0.0010629310345, \n    -0.0008050000000, -0.0006051724138, -0.0005418965517, -0.0005472413793, \n    -0.0005472413793, -0.0004998275862, -0.0004262068966, -0.0003946551724, \n    -0.0004841379310, -0.0007260344828, -0.0010312068966, -0.0013153448276, \n    -0.0014943103448, -0.0014784482759, -0.0012260344828, -0.0008629310345, \n    -0.0005472413793, -0.0003682758621, -0.0003420689655, -0.0004103448276, \n    -0.0004946551724, -0.0005313793103, -0.0005472413793, -0.0006103448276, \n    -0.0007208620690, -0.0008050000000, -0.0007682758621, -0.0006418965517, \n    -0.0005629310345, -0.0005893103448, -0.0006524137931, -0.0007313793103, \n    -0.0008103448276, -0.0008313793103, -0.0007524137931, -0.0005998275862, \n    -0.0003998275862, -0.0002315517241, -0.0001684482759, -0.0002472413793, \n    -0.0004262068966, -0.0005524137931, -0.0005577586207, -0.0004787931034, \n    -0.0004262068966, -0.0004787931034, -0.0005682758621, -0.0005418965517, \n    -0.0003946551724, -0.0002156896552, -0.0001000000000, -0.0001367241379, \n    -0.0003998275862, -0.0008944827586, -0.0014206896552, -0.0017048275862, \n    -0.0016415517241, -0.0012627586207, -0.0006682758621, -0.0000525862069, \n    +0.0003841379310, +0.0005208620690, +0.0003315517241, -0.0000474137931, \n    -0.0004103448276, -0.0006313793103, -0.0007944827586, -0.0009734482759, \n    -0.0010734482759, -0.0009786206897, -0.0007208620690, -0.0003105172414, \n    +0.0001525862069, +0.0004367241379, +0.0003893103448, +0.0001000000000, \n    -0.0002420689655, -0.0004998275862, -0.0005472413793, -0.0003000000000, \n    +0.0002210344828, +0.0008155172414, +0.0011312068966, +0.0010155172414, \n    +0.0005893103448, +0.0000158620690, -0.0005734482759, -0.0009839655172, \n    -0.0009891379310, -0.0005787931034, +0.0000053448276, +0.0005208620690, \n    +0.0008103448276, +0.0008260344828, +0.0005524137931, +0.0001631034483, \n    -0.0001210344828, -0.0001525862069, +0.0000946551724, +0.0005734482759, \n    +0.0011101724138, +0.0014889655172, +0.0015153448276, +0.0011417241379, \n    +0.0004577586207, -0.0003105172414, -0.0007944827586, -0.0007629310345, \n    -0.0003315517241, +0.0002156896552, +0.0006998275862, +0.0010524137931, \n    +0.0011522413793, +0.0009260344828, +0.0004841379310, +0.0000841379310, \n    -0.0001210344828, -0.0001367241379, -0.0000263793103, +0.0001367241379, \n    +0.0002736206897, +0.0003367241379, +0.0003210344828, +0.0002210344828, \n    +0.0001472413793, +0.0001579310345, +0.0001631034483, +0.0000579310345, \n    -0.0001210344828, -0.0002367241379, -0.0002051724138, -0.0000525862069, \n    +0.0001262068966, +0.0002631034483, +0.0003631034483, +0.0004367241379, \n    +0.0004472413793, +0.0003736206897, +0.0003000000000, +0.0003525862069, \n    +0.0005103448276, +0.0006262068966, +0.0006208620690, +0.0005472413793, \n    +0.0003946551724, +0.0001789655172, +0.0000420689655, +0.0001315517241, \n    +0.0003577586207, +0.0005367241379, +0.0005734482759, +0.0005367241379, \n    +0.0005472413793, +0.0005893103448, +0.0005998275862, +0.0005524137931, \n    +0.0004682758621, +0.0003105172414, +0.0001156896552, +0.0000053448276, \n    +0.0000894827586, +0.0002893103448, +0.0004262068966, +0.0004367241379, \n    +0.0003156896552, +0.0001525862069, +0.0000053448276, -0.0001315517241, \n    -0.0002525862069, -0.0002787931034, -0.0001579310345, +0.0001051724138, \n    +0.0004525862069, +0.0007313793103, +0.0008786206897, +0.0009050000000, \n    +0.0008155172414, +0.0005998275862, +0.0003210344828, +0.0000894827586, \n    -0.0000841379310, -0.0002051724138, -0.0002156896552, -0.0001210344828, \n    +0.0000000000000, +0.0001210344828, +0.0002420689655, +0.0003472413793, \n    +0.0004736206897, +0.0006103448276, +0.0006472413793, +0.0004682758621, \n    +0.0001156896552, -0.0002105172414, -0.0003841379310, -0.0003787931034, \n    -0.0002682758621, -0.0001420689655, -0.0000263793103, +0.0000263793103, \n    -0.0000053448276, -0.0001420689655, -0.0002946551724, -0.0003577586207, \n    -0.0002946551724, -0.0001210344828, +0.0001525862069, +0.0004682758621, \n    +0.0007208620690, +0.0007998275862, +0.0006629310345, +0.0003893103448, \n    +0.0001262068966, -0.0000105172414, +0.0000210344828, +0.0002051724138, \n    +0.0003998275862, +0.0004998275862, +0.0004736206897, +0.0002946551724, \n    -0.0000158620690, -0.0003577586207, -0.0005682758621, -0.0005682758621, \n    -0.0003631034483, -0.0000105172414, +0.0003525862069, +0.0005629310345, \n    +0.0005682758621, +0.0004156896552, +0.0001946551724, -0.0000579310345, \n    -0.0003210344828, -0.0005208620690, -0.0005893103448, -0.0005577586207, \n    -0.0004893103448, -0.0003998275862, -0.0003000000000, -0.0002051724138, \n    -0.0001367241379, -0.0000841379310, +0.0000000000000, +0.0001525862069, \n    +0.0003787931034, +0.0006262068966, +0.0007787931034, +0.0007313793103, \n    +0.0004787931034, +0.0001051724138, -0.0001684482759, -0.0001420689655, \n    +0.0001631034483, +0.0005262068966, +0.0007577586207, +0.0007629310345, \n    +0.0005208620690, +0.0001105172414, -0.0002946551724, -0.0005313793103, \n    -0.0004893103448, -0.0002105172414, +0.0001420689655, +0.0004262068966, \n    +0.0005629310345, +0.0005156896552, +0.0002946551724, +0.0000105172414, \n    -0.0001841379310, -0.0002420689655, -0.0002367241379, -0.0002682758621, \n    -0.0003156896552, -0.0002841379310, -0.0001579310345, +0.0000525862069, \n    +0.0003420689655, +0.0005998275862, +0.0005944827586, +0.0002262068966, \n    -0.0003156896552, -0.0007208620690, -0.0007998275862, -0.0005208620690, \n    +0.0000579310345, +0.0007734482759, +0.0012996551724, +0.0013786206897, \n    +0.0010260344828, +0.0004472413793, -0.0001105172414, -0.0004841379310, \n    -0.0005787931034, -0.0004051724138, -0.0000525862069, +0.0002946551724, \n    +0.0004893103448, +0.0005262068966, +0.0004787931034, +0.0003525862069, \n    +0.0002000000000, +0.0000894827586, +0.0000105172414, -0.0000525862069, \n    -0.0000158620690, +0.0001631034483, +0.0004156896552, +0.0006629310345, \n    +0.0008839655172, +0.0010629310345, +0.0011101724138, +0.0009629310345, \n    +0.0006208620690, +0.0001472413793, -0.0003525862069, -0.0007893103448, \n    -0.0010312068966, -0.0009524137931, -0.0005893103448, -0.0001367241379, \n    +0.0002736206897, +0.0006367241379, +0.0008944827586, +0.0009470689655, \n    +0.0007893103448, +0.0005629310345, +0.0003787931034, +0.0002472413793, \n    +0.0002051724138, +0.0002893103448, +0.0004208620690, +0.0004525862069, \n    +0.0003893103448, +0.0003631034483, +0.0004156896552, +0.0004893103448, \n    +0.0005472413793, +0.0006208620690, +0.0006156896552, +0.0003946551724, \n    -0.0000631034483, -0.0006787931034, -0.0012155172414, -0.0014206896552, \n    -0.0011206896552, -0.0002682758621, +0.0009470689655, +0.0020467241379, \n    +0.0024046551724, +0.0017468965517, +0.0003262068966, -0.0013101724138, \n    -0.0024782758621, -0.0024834482759, -0.0011365517241, +0.0009418965517, \n    +0.0027308620690, +0.0033937931034, +0.0027255172414, +0.0010365517241, \n    -0.0010996551724, -0.0028939655172, -0.0035463793103, -0.0028360344828, \n    -0.0013101724138, +0.0001631034483, +0.0009681034483, +0.0009734482759, \n    +0.0004367241379, -0.0002736206897, -0.0008734482759, -0.0010734482759, \n    -0.0007893103448, -0.0002472413793, +0.0002000000000, +0.0003631034483, \n    +0.0002210344828, -0.0001210344828, -0.0005103448276, -0.0007787931034, \n    -0.0008365517241, -0.0007208620690, -0.0005629310345, -0.0004893103448, \n    -0.0005051724138, -0.0004946551724, -0.0003736206897, -0.0002000000000, \n    -0.0000474137931, +0.0001051724138, +0.0003156896552, +0.0005262068966, \n    +0.0006418965517, +0.0005944827586, +0.0003367241379, -0.0000894827586, \n    -0.0004631034483, -0.0005998275862, -0.0004682758621, -0.0000946551724, \n    +0.0003736206897, +0.0007734482759, +0.0009575862069, +0.0008629310345, \n    +0.0005262068966, +0.0000841379310, -0.0002682758621, -0.0003736206897, \n    -0.0001894827586, +0.0001210344828, +0.0003420689655, +0.0004631034483, \n    +0.0004841379310, +0.0003367241379, +0.0000053448276, -0.0003051724138, \n    -0.0004313793103, -0.0003841379310, -0.0002631034483, -0.0001420689655, \n    -0.0000684482759, -0.0000736206897, -0.0001525862069, -0.0002841379310, \n    -0.0003262068966, -0.0001051724138, +0.0003262068966, +0.0007998275862, \n    +0.0011470689655, +0.0011996551724, +0.0007944827586, +0.0001156896552, \n    -0.0004313793103, -0.0005524137931, -0.0002736206897, +0.0001367241379, \n    +0.0003736206897, +0.0003315517241, +0.0001105172414, -0.0001210344828, \n    -0.0002156896552, -0.0001156896552, +0.0001472413793, +0.0004946551724, \n    +0.0007365517241, +0.0006418965517, +0.0001472413793, -0.0005524137931, \n    -0.0011365517241, -0.0013206896552, -0.0009629310345, -0.0002051724138, \n    +0.0005629310345, +0.0009891379310, +0.0009470689655, +0.0005682758621, \n    +0.0001105172414, -0.0001472413793, -0.0000158620690, +0.0004631034483, \n    +0.0010101724138, +0.0013837931034, +0.0014784482759, +0.0013312068966, \n    +0.0010470689655, +0.0007050000000, +0.0003367241379, +0.0000210344828, \n    -0.0001472413793, -0.0002262068966, -0.0002420689655, -0.0001367241379, \n    +0.0001420689655, +0.0005367241379, +0.0008786206897, +0.0010786206897, \n    +0.0011101724138, +0.0009313793103, +0.0005682758621, +0.0001946551724, \n    -0.0000053448276, -0.0000315517241, +0.0000263793103, +0.0000894827586, \n    +0.0000841379310, -0.0000579310345, -0.0003105172414, -0.0005472413793, \n    -0.0006103448276, -0.0004103448276, -0.0000789655172, +0.0001841379310, \n    +0.0003315517241, +0.0003787931034, +0.0003367241379, +0.0003051724138, \n    +0.0004103448276, +0.0005313793103, +0.0004998275862, +0.0002893103448, \n    -0.0000579310345, -0.0004893103448, -0.0008944827586, -0.0011050000000, \n    -0.0009050000000, -0.0003051724138, +0.0003893103448, +0.0009365517241, \n    +0.0011996551724, +0.0010681034483, +0.0005893103448, +0.0000420689655, \n    -0.0002736206897, -0.0002631034483, -0.0000579310345, +0.0001156896552, \n    +0.0001736206897, +0.0000894827586, -0.0001789655172, -0.0005524137931, \n    -0.0008260344828, -0.0008629310345, -0.0006734482759, -0.0003420689655, \n    +0.0000368965517, +0.0003946551724, +0.0005839655172, +0.0005787931034, \n    +0.0004998275862, +0.0004208620690, +0.0002946551724, +0.0001525862069, \n    +0.0001105172414, +0.0001472413793, +0.0001262068966, -0.0000053448276, \n    -0.0002105172414, -0.0003736206897, -0.0004525862069, -0.0004682758621, \n    -0.0004313793103, -0.0003315517241, -0.0001684482759, +0.0000736206897, \n    +0.0004367241379, +0.0007998275862, +0.0009944827586, +0.0009208620690, \n    +0.0006262068966, +0.0002051724138, -0.0002472413793, -0.0006524137931, \n    -0.0008734482759, -0.0008418965517, -0.0006524137931, -0.0004208620690, \n    -0.0002420689655, -0.0001946551724, -0.0003841379310, -0.0008050000000, \n    -0.0012575862069, -0.0015417241379, -0.0015784482759, -0.0012996551724, \n    -0.0007524137931, -0.0001631034483, +0.0002631034483, +0.0004577586207, \n    +0.0004208620690, +0.0001631034483, -0.0002631034483, -0.0007524137931, \n    -0.0011732758621, -0.0014679310345, -0.0016100000000, -0.0015837931034, \n    -0.0014784482759, -0.0013837931034, -0.0012943103448, -0.0010944827586, \n    -0.0007260344828, -0.0002682758621, +0.0001315517241, +0.0004262068966, \n    +0.0005944827586, +0.0005682758621, +0.0003946551724, +0.0002210344828, \n    +0.0001894827586, +0.0002736206897, +0.0003577586207, +0.0003787931034, \n    +0.0003315517241, +0.0002315517241, +0.0000315517241, -0.0002262068966, \n    -0.0003787931034, -0.0002787931034, -0.0000105172414, +0.0002472413793, \n    +0.0003787931034, +0.0003051724138, +0.0000315517241, -0.0002946551724, \n    -0.0005103448276, -0.0004525862069, -0.0001156896552, +0.0002841379310, \n    +0.0005208620690, +0.0005262068966, +0.0004051724138, +0.0002210344828, \n    +0.0000105172414, -0.0001841379310, -0.0003367241379, -0.0003420689655, \n    -0.0001579310345, +0.0000631034483, +0.0001105172414, -0.0001367241379, \n    -0.0005893103448, -0.0009839655172, -0.0010839655172, -0.0007787931034, \n    -0.0001315517241, +0.0005577586207, +0.0009575862069, +0.0009050000000, \n    +0.0004631034483, -0.0001525862069, -0.0006839655172, -0.0009155172414, \n    -0.0007629310345, -0.0002787931034, +0.0003262068966, +0.0008208620690, \n    +0.0010470689655, +0.0009839655172, +0.0006839655172, +0.0002893103448, \n    -0.0000420689655, -0.0002631034483, -0.0003420689655, -0.0003000000000, \n    -0.0002051724138, -0.0001684482759, -0.0002262068966, -0.0003682758621, \n    -0.0005524137931, -0.0007208620690, -0.0008103448276, -0.0007734482759, \n    -0.0005682758621, -0.0001841379310, +0.0002682758621, +0.0005577586207, \n    +0.0005524137931, +0.0003051724138, -0.0000368965517, -0.0003367241379, \n    -0.0005051724138, -0.0005367241379, -0.0004841379310, -0.0004367241379, \n    -0.0004313793103, -0.0003998275862, -0.0003262068966, -0.0002315517241, \n    -0.0001156896552, +0.0000263793103, +0.0000841379310, -0.0000525862069, \n    -0.0003682758621, -0.0006944827586, -0.0008944827586, -0.0009524137931, \n    -0.0009103448276, -0.0007208620690, -0.0004156896552, -0.0001894827586, \n    -0.0001841379310, -0.0003577586207, -0.0005472413793, -0.0006577586207, \n    -0.0006577586207, -0.0005156896552, -0.0002736206897, -0.0000474137931, \n    +0.0000315517241, -0.0000579310345, -0.0002051724138, -0.0002946551724, \n    -0.0002787931034, -0.0001684482759, +0.0000105172414, +0.0001525862069, \n    +0.0001262068966, -0.0000525862069, -0.0002420689655, -0.0003156896552, \n    -0.0002210344828, +0.0000053448276, +0.0002210344828, +0.0002841379310, \n    +0.0001156896552, -0.0002315517241, -0.0006103448276, -0.0008365517241, \n    -0.0008418965517, -0.0006682758621, -0.0003841379310, -0.0001105172414, \n    -0.0000158620690, -0.0001789655172, -0.0005418965517, -0.0009313793103, \n    -0.0011206896552, -0.0010312068966, -0.0007839655172, -0.0005682758621, \n    -0.0004841379310, -0.0005208620690, -0.0005944827586, -0.0006051724138, \n    -0.0005367241379, -0.0004051724138, -0.0002577586207, -0.0001210344828, \n    -0.0000210344828, +0.0000053448276, -0.0000420689655, -0.0001367241379, \n    -0.0001894827586, -0.0001684482759, -0.0000841379310, +0.0000210344828, \n    +0.0001051724138, +0.0001105172414, +0.0000631034483, +0.0000368965517, \n    +0.0001000000000, +0.0002893103448, +0.0005472413793, +0.0007577586207, \n    +0.0008103448276, +0.0006787931034, +0.0004367241379, +0.0001789655172, \n    -0.0000158620690, -0.0001367241379, -0.0002105172414, -0.0002841379310, \n    -0.0003893103448, -0.0004736206897, -0.0004841379310, -0.0004156896552, \n    -0.0003367241379, -0.0002787931034, -0.0002682758621, -0.0002736206897, \n    -0.0002946551724, -0.0003525862069, -0.0004262068966, -0.0004156896552, \n    -0.0002736206897, -0.0000579310345, +0.0001579310345, +0.0003841379310, \n    +0.0005839655172, +0.0006472413793, +0.0005156896552, +0.0002736206897, \n    +0.0000368965517, -0.0002156896552, -0.0005367241379, -0.0008470689655, \n    -0.0010260344828, -0.0009629310345, -0.0006367241379, -0.0001105172414, \n    +0.0004262068966, +0.0007682758621, +0.0008050000000, +0.0006051724138, \n    +0.0003210344828, +0.0000946551724, -0.0000105172414, +0.0000105172414, \n    +0.0001579310345, +0.0003631034483, +0.0004998275862, +0.0004946551724, \n    +0.0003841379310, +0.0002682758621, +0.0002367241379, +0.0002420689655, \n    +0.0001789655172, -0.0000158620690, -0.0002946551724, -0.0005208620690, \n    -0.0005313793103, -0.0002367241379, +0.0002420689655, +0.0006734482759, \n    +0.0009260344828, +0.0009313793103, +0.0007155172414, +0.0003946551724, \n    +0.0001262068966, +0.0000263793103, +0.0001156896552, +0.0002841379310, \n    +0.0003893103448, +0.0004156896552, +0.0004472413793, +0.0004946551724, \n    +0.0005262068966, +0.0005472413793, +0.0005787931034, +0.0005787931034, \n    +0.0004472413793, +0.0002000000000, +0.0000158620690, +0.0000525862069, \n    +0.0002946551724, +0.0005577586207, +0.0006839655172, +0.0005839655172, \n    +0.0002367241379, -0.0002472413793, -0.0006577586207, -0.0007734482759, \n    -0.0004946551724, +0.0000579310345, +0.0006577586207, +0.0010629310345, \n    +0.0011732758621, +0.0010470689655, +0.0007787931034, +0.0004631034483, \n    +0.0002156896552, +0.0001315517241, +0.0002051724138, +0.0003682758621, \n    +0.0005472413793, +0.0006629310345, +0.0006944827586, +0.0006682758621, \n    +0.0006208620690, +0.0005051724138, +0.0003000000000, +0.0000789655172, \n    -0.0000263793103, +0.0000053448276, +0.0001736206897, +0.0003998275862, \n    +0.0005734482759, +0.0006313793103, +0.0005577586207, +0.0004051724138, \n    +0.0002736206897, +0.0002472413793, +0.0002893103448, +0.0003156896552, \n    +0.0002787931034, +0.0001841379310, +0.0001210344828, +0.0001315517241, \n    +0.0001894827586, +0.0002315517241, +0.0002577586207, +0.0002525862069, \n    +0.0001789655172, +0.0000315517241, -0.0001105172414, -0.0001525862069, \n    -0.0000631034483, +0.0000946551724, +0.0002472413793, +0.0002946551724, \n    +0.0002315517241, +0.0001367241379, +0.0000841379310, +0.0000789655172, \n    +0.0001000000000, +0.0001262068966, +0.0001051724138, +0.0000315517241, \n    -0.0000525862069, -0.0000525862069, +0.0000684482759, +0.0003156896552, \n    +0.0006313793103, +0.0008839655172, +0.0009524137931, +0.0008208620690, \n    +0.0005629310345, +0.0002682758621, +0.0000263793103, -0.0000631034483, \n    +0.0000000000000, +0.0001525862069, +0.0002841379310, +0.0003262068966, \n    +0.0003156896552, +0.0003367241379, +0.0003525862069, +0.0003105172414, \n    +0.0002420689655, +0.0002051724138, +0.0002210344828, +0.0002577586207, \n    +0.0003000000000, +0.0003525862069, +0.0004631034483, +0.0006472413793, \n    +0.0008575862069, +0.0009944827586, +0.0010101724138, +0.0009260344828, \n    +0.0007629310345, +0.0005262068966, +0.0002472413793, +0.0000000000000, \n    -0.0001841379310, -0.0002893103448, -0.0003000000000, -0.0002105172414, \n    -0.0000105172414, +0.0002787931034, +0.0006262068966, +0.0009260344828, \n    +0.0010524137931, +0.0009470689655, +0.0006682758621, +0.0003051724138, \n    -0.0000420689655, -0.0002787931034, -0.0003577586207, -0.0003262068966, \n    -0.0002631034483, -0.0002262068966, -0.0002210344828, -0.0002367241379, \n    -0.0002525862069, -0.0002420689655, -0.0001579310345, +0.0000000000000, \n    +0.0001472413793, +0.0001684482759, +0.0000420689655, -0.0001000000000, \n    -0.0002210344828, -0.0003210344828, -0.0003736206897, -0.0003315517241, \n    -0.0001684482759, +0.0000736206897, +0.0003210344828, +0.0004841379310, \n    +0.0005577586207, +0.0005472413793, +0.0004525862069, +0.0002736206897, \n    +0.0000579310345, -0.0001000000000, -0.0001210344828, -0.0000420689655, \n    +0.0000525862069, +0.0001579310345, +0.0002577586207, +0.0002631034483, \n    +0.0001210344828, -0.0001210344828, -0.0003631034483, -0.0005103448276, \n    -0.0005577586207, -0.0005472413793, -0.0004946551724, -0.0004208620690, \n    -0.0003051724138, -0.0001684482759, -0.0000210344828, +0.0001105172414, \n    +0.0001684482759, +0.0000946551724, -0.0000789655172, -0.0002315517241, \n    -0.0002736206897, -0.0002210344828, -0.0001367241379, -0.0000525862069, \n    +0.0000474137931, +0.0001472413793, +0.0002000000000, +0.0001736206897, \n    +0.0000631034483, -0.0001210344828, -0.0003420689655, -0.0004998275862, \n    -0.0005418965517, -0.0005208620690, -0.0004631034483, -0.0003525862069, \n    -0.0001736206897, +0.0000420689655, +0.0002105172414, +0.0002210344828, \n    +0.0000368965517, -0.0002736206897, -0.0005629310345, -0.0007260344828, \n    -0.0007208620690, -0.0005524137931, -0.0002787931034, +0.0000368965517, \n    +0.0002946551724, +0.0003893103448, +0.0002787931034, +0.0000420689655, \n    -0.0002262068966, -0.0004208620690, -0.0004682758621, -0.0004051724138, \n    -0.0002682758621, -0.0000789655172, +0.0001210344828, +0.0002841379310, \n    +0.0003893103448, +0.0004577586207, +0.0004418965517, +0.0003210344828, \n    +0.0001525862069, +0.0000210344828, -0.0000158620690, +0.0000000000000, \n    +0.0000420689655, +0.0001262068966, +0.0002051724138, +0.0001579310345, \n    +0.0000000000000, -0.0001631034483, -0.0002315517241, -0.0002156896552, \n    -0.0001894827586, -0.0001367241379, -0.0000420689655, +0.0000210344828, \n    -0.0000368965517, -0.0002156896552, -0.0004262068966, -0.0005893103448, \n    -0.0006577586207, -0.0006262068966, -0.0004998275862, -0.0003262068966, \n    -0.0001684482759, -0.0000736206897, -0.0000210344828, +0.0000315517241, \n    +0.0000946551724, +0.0001000000000, +0.0000000000000, -0.0001315517241, \n    -0.0002472413793, -0.0003210344828, -0.0003682758621, -0.0003577586207, \n    -0.0002631034483, -0.0001736206897, -0.0001525862069, -0.0001946551724, \n    -0.0002787931034, -0.0003787931034, -0.0004103448276, -0.0003787931034, \n    -0.0003315517241, -0.0002841379310, -0.0002841379310, -0.0003682758621, \n    -0.0004893103448, -0.0005262068966, -0.0003998275862, -0.0001736206897, \n    +0.0000315517241, +0.0001367241379, +0.0001156896552, -0.0000053448276, \n    -0.0001789655172, -0.0003736206897, -0.0005524137931, -0.0006577586207, \n    -0.0006577586207, -0.0005998275862, -0.0005313793103, -0.0004577586207, \n    -0.0003577586207, -0.0002051724138, -0.0000210344828, +0.0001472413793, \n    +0.0002736206897, +0.0003000000000, +0.0002315517241, +0.0001105172414, \n    -0.0000263793103, -0.0001472413793, -0.0002051724138, -0.0001841379310, \n    -0.0001262068966, -0.0000736206897, -0.0000579310345, -0.0000684482759, \n    -0.0001051724138, -0.0001789655172, -0.0002787931034, -0.0003577586207, \n    -0.0003736206897, -0.0003156896552, -0.0001894827586, -0.0000105172414, \n    +0.0001631034483, +0.0002525862069, +0.0002000000000, +0.0000684482759, \n    -0.0000368965517, -0.0001000000000, -0.0000946551724, +0.0000210344828, \n    +0.0002105172414, +0.0003156896552, +0.0002577586207, +0.0000789655172, \n    -0.0001105172414, -0.0002682758621, -0.0003525862069, -0.0003420689655, \n    -0.0002525862069, -0.0001684482759, -0.0001789655172, -0.0002946551724, \n    -0.0004051724138, -0.0004262068966, -0.0003262068966, -0.0001156896552, \n    +0.0001262068966, +0.0003000000000, +0.0003156896552, +0.0001684482759, \n    -0.0000579310345, -0.0002631034483, -0.0003105172414, -0.0001525862069, \n    +0.0000789655172, +0.0002262068966, +0.0002156896552, +0.0001000000000, \n    -0.0000474137931, -0.0001841379310, -0.0002631034483, -0.0002315517241, \n    -0.0001051724138, +0.0000210344828, +0.0001000000000, +0.0001156896552, \n    +0.0000789655172, -0.0000263793103, -0.0001894827586, -0.0003315517241, \n    -0.0003893103448, -0.0003367241379, -0.0002051724138, -0.0000420689655, \n    +0.0000579310345, +0.0000579310345, -0.0000105172414, -0.0001156896552, \n    -0.0002262068966, -0.0003262068966, -0.0003525862069, -0.0002525862069, \n    -0.0000420689655, +0.0002000000000, +0.0003841379310, +0.0004736206897, \n    +0.0004156896552, +0.0001525862069, -0.0002210344828, -0.0005472413793, \n    -0.0007103448276, -0.0007103448276, -0.0005944827586, -0.0003998275862, \n    -0.0001579310345, +0.0000525862069, +0.0001579310345, +0.0000946551724, \n    -0.0000841379310, -0.0002841379310, -0.0003841379310, -0.0003420689655, \n    -0.0001472413793, +0.0001789655172, +0.0005577586207, +0.0008524137931, \n    +0.0009418965517, +0.0007839655172, +0.0004208620690, -0.0000158620690, \n    -0.0003525862069, -0.0004577586207, -0.0003577586207, -0.0001472413793, \n    +0.0000789655172, +0.0002631034483, +0.0003420689655, +0.0003420689655, \n    +0.0003262068966, +0.0003472413793, +0.0003841379310, +0.0003893103448, \n    +0.0003156896552, +0.0001841379310, +0.0000946551724, +0.0001156896552, \n    +0.0002367241379, +0.0004103448276, +0.0005524137931, +0.0005787931034, \n    +0.0004472413793, +0.0002210344828, +0.0000158620690, -0.0000631034483, \n    -0.0000053448276, +0.0001525862069, +0.0003210344828, +0.0004103448276, \n    +0.0003736206897, +0.0002156896552, +0.0000000000000, -0.0002262068966, \n    -0.0004208620690, -0.0004998275862, -0.0004313793103, -0.0002525862069, \n    -0.0000210344828, +0.0001946551724, +0.0003315517241, +0.0003315517241, \n    +0.0001841379310, +0.0000000000000, -0.0001262068966, -0.0001367241379, \n    -0.0000525862069, +0.0000789655172, +0.0002051724138, +0.0003262068966, \n    +0.0004103448276, +0.0004367241379, +0.0004262068966, +0.0004156896552, \n    +0.0003631034483, +0.0002420689655, +0.0000789655172, -0.0000684482759, \n    -0.0001789655172, -0.0002577586207, -0.0002841379310, -0.0001841379310, \n    +0.0000105172414, +0.0002051724138, +0.0003262068966, +0.0003577586207, \n    +0.0003000000000, +0.0001736206897, +0.0000420689655, -0.0000263793103, \n    -0.0000105172414, +0.0000474137931, +0.0000525862069, -0.0000158620690, \n    -0.0000894827586, -0.0000894827586, +0.0000000000000, +0.0001579310345, \n    +0.0002893103448, +0.0002893103448, +0.0001631034483, -0.0000210344828, \n    -0.0001946551724, -0.0003051724138, -0.0003262068966, -0.0002682758621, \n    -0.0001841379310, -0.0001315517241, -0.0001367241379, -0.0001789655172, \n    -0.0002051724138, -0.0002000000000, -0.0001472413793, -0.0000579310345, \n    +0.0000158620690, +0.0000000000000, -0.0001315517241, -0.0003577586207, \n    -0.0005944827586, -0.0007524137931, -0.0007893103448, -0.0007103448276, \n    -0.0005262068966, -0.0002682758621, +0.0000053448276, +0.0002525862069, \n    +0.0004051724138, +0.0003998275862, +0.0002315517241, -0.0000420689655, \n    -0.0003472413793, -0.0005944827586, -0.0006944827586, -0.0006051724138, \n    -0.0003525862069, -0.0000525862069, +0.0002105172414, +0.0003736206897, \n    +0.0003998275862, +0.0002787931034, +0.0000684482759, -0.0001156896552, \n    -0.0001841379310, -0.0001051724138, +0.0000684482759, +0.0002367241379, \n    +0.0002787931034, +0.0001684482759, -0.0000158620690, -0.0001789655172, \n    -0.0002315517241, -0.0001367241379, +0.0000579310345, +0.0002577586207, \n    +0.0003472413793, +0.0002841379310, +0.0001105172414, -0.0001051724138, \n    -0.0003156896552, -0.0004103448276, -0.0003472413793, -0.0001420689655, \n    +0.0000841379310, +0.0001946551724, +0.0001315517241, -0.0000263793103, \n    -0.0002420689655, -0.0004577586207, -0.0006103448276, -0.0006524137931, \n    -0.0005944827586, -0.0004736206897, -0.0003315517241, -0.0002000000000, \n    -0.0000841379310, +0.0000210344828, +0.0001105172414, +0.0001894827586, \n    +0.0002472413793, +0.0002577586207, +0.0002262068966, +0.0001946551724, \n    +0.0002156896552, +0.0002893103448, +0.0003420689655, +0.0003105172414, \n    +0.0001631034483, -0.0000579310345, -0.0003156896552, -0.0005524137931, \n    -0.0007260344828, -0.0007470689655, -0.0005682758621, -0.0002577586207, \n    +0.0000894827586, +0.0004156896552, +0.0006418965517, +0.0007050000000, \n    +0.0005839655172, +0.0003105172414, -0.0000263793103, -0.0002893103448, \n    -0.0003472413793, -0.0001841379310, +0.0001210344828, +0.0004313793103, \n    +0.0006208620690, +0.0006208620690, +0.0004367241379, +0.0001525862069, \n    -0.0001105172414, -0.0002787931034, -0.0003156896552, -0.0002051724138, \n    +0.0000000000000, +0.0002000000000, +0.0003367241379, +0.0003893103448, \n    +0.0003946551724, +0.0003631034483, +0.0003210344828, +0.0002367241379, \n    +0.0000894827586, -0.0000841379310, -0.0002051724138, -0.0002156896552, \n    -0.0001367241379, -0.0000158620690, +0.0001105172414, +0.0001841379310, \n    +0.0001579310345, +0.0000684482759, +0.0000053448276, +0.0000105172414, \n    +0.0000684482759, +0.0001684482759, +0.0002736206897, +0.0003472413793, \n    +0.0003525862069, +0.0002893103448, +0.0002000000000, +0.0001367241379, \n    +0.0001051724138, +0.0000789655172, +0.0000158620690, -0.0001210344828, \n    -0.0003156896552, -0.0004787931034, -0.0004946551724, -0.0002841379310, \n    +0.0001105172414, +0.0005418965517, +0.0008470689655, +0.0009155172414, \n    +0.0007208620690, +0.0003682758621, +0.0000579310345, -0.0000736206897, \n    -0.0000263793103, +0.0001000000000, +0.0002210344828, +0.0003051724138, \n    +0.0003420689655, +0.0002946551724, +0.0001841379310, +0.0000525862069, \n    -0.0000894827586, -0.0002420689655, -0.0003420689655, -0.0002787931034, \n    -0.0000315517241, +0.0003367241379, +0.0006893103448, +0.0009050000000, \n    +0.0008944827586, +0.0006787931034, +0.0003472413793, +0.0000158620690, \n    -0.0002262068966, -0.0003210344828, -0.0002472413793, -0.0000315517241, \n    +0.0002577586207, +0.0005524137931, +0.0007682758621, +0.0008786206897, \n    +0.0008944827586, +0.0008524137931, +0.0007682758621, +0.0006682758621, \n    +0.0005313793103, +0.0003682758621, +0.0001841379310, +0.0000105172414, \n    -0.0000946551724, -0.0001315517241, -0.0001051724138, +0.0000000000000, \n    +0.0001841379310, +0.0004051724138, +0.0005682758621, +0.0006103448276, \n    +0.0004946551724, +0.0002841379310, +0.0000579310345, -0.0000946551724, \n    -0.0001579310345, -0.0000841379310, +0.0000894827586, +0.0002631034483, \n    +0.0003315517241, +0.0002946551724, +0.0002210344828, +0.0001367241379, \n    +0.0000210344828, -0.0001156896552, -0.0002262068966, -0.0002682758621, \n    -0.0002472413793, -0.0002000000000, -0.0001472413793, -0.0000736206897, \n    +0.0000105172414, +0.0000946551724, +0.0001315517241, +0.0001156896552, \n    +0.0000263793103, -0.0001210344828, -0.0002841379310, -0.0003841379310, \n    -0.0003841379310, -0.0002787931034, -0.0001051724138, +0.0000474137931, \n    +0.0001210344828, +0.0000946551724, +0.0000000000000, -0.0000579310345, \n    -0.0000368965517, +0.0000368965517, +0.0001525862069, +0.0002577586207, \n    +0.0002841379310, +0.0001841379310, +0.0000158620690, -0.0001579310345, \n    -0.0002787931034, -0.0003420689655, -0.0003210344828, -0.0002000000000, \n    +0.0000053448276, +0.0002156896552, +0.0003472413793, +0.0003893103448, \n    +0.0003841379310, +0.0003631034483, +0.0003525862069, +0.0003787931034, \n    +0.0004525862069, +0.0005472413793, +0.0006103448276, +0.0006103448276, \n    +0.0005472413793, +0.0004472413793, +0.0003000000000, +0.0001367241379, \n    -0.0000053448276, -0.0001000000000, -0.0001841379310, -0.0002841379310, \n    -0.0003946551724, -0.0004736206897, -0.0004631034483, -0.0003525862069, \n    -0.0001894827586, -0.0000420689655, +0.0000525862069, +0.0001262068966, \n    +0.0002000000000, +0.0002787931034, +0.0003210344828, +0.0002893103448, \n    +0.0001684482759, -0.0000105172414, -0.0002156896552, -0.0003631034483, \n    -0.0004208620690, -0.0003841379310, -0.0002841379310, -0.0001736206897, \n    -0.0001051724138, -0.0000684482759, -0.0000579310345, -0.0000841379310, \n    -0.0001789655172, -0.0003420689655, -0.0004998275862, -0.0005734482759, \n    -0.0005262068966, -0.0003787931034, -0.0001736206897, +0.0000105172414, \n    +0.0000841379310, -0.0000053448276, -0.0002156896552, -0.0004051724138, \n    -0.0004787931034, -0.0003946551724, -0.0001894827586, +0.0000315517241, \n    +0.0001525862069, +0.0001525862069, +0.0000684482759, -0.0000263793103, \n    -0.0001051724138, -0.0001579310345, -0.0001894827586, -0.0002262068966, \n    -0.0002631034483, -0.0002525862069, -0.0001631034483, -0.0000474137931, \n    +0.0000105172414, -0.0000158620690, -0.0001367241379, -0.0003105172414, \n    -0.0004787931034, -0.0005629310345, -0.0004946551724, -0.0002787931034, \n    +0.0000263793103, +0.0003420689655, +0.0005893103448, +0.0006682758621, \n    +0.0005577586207, +0.0003210344828, +0.0000736206897, -0.0001210344828, \n    -0.0002525862069, -0.0003105172414, -0.0003051724138, -0.0002577586207, \n    -0.0002051724138, -0.0001684482759, -0.0001367241379, -0.0000946551724, \n    -0.0000474137931, -0.0000368965517, -0.0000684482759, -0.0001262068966, \n    -0.0001736206897, -0.0002051724138, -0.0002262068966, -0.0002367241379, \n    -0.0002051724138, -0.0001210344828, -0.0000210344828, +0.0000368965517, \n    +0.0000105172414, -0.0001000000000, -0.0002631034483, -0.0004262068966, \n    -0.0005103448276, -0.0004525862069, -0.0002631034483, -0.0000315517241, \n    +0.0001210344828, +0.0001631034483, +0.0001210344828, +0.0000420689655, \n    -0.0000210344828, -0.0000684482759, -0.0001051724138, -0.0001525862069, \n    -0.0002210344828, -0.0002577586207, -0.0002577586207, -0.0002420689655, \n    -0.0002210344828, -0.0001946551724, -0.0001789655172, -0.0001894827586, \n    -0.0002156896552, -0.0002000000000, -0.0001051724138, +0.0000525862069, \n    +0.0001946551724, +0.0002420689655, +0.0001684482759, +0.0000053448276, \n    -0.0002000000000, -0.0004156896552, -0.0005629310345, -0.0006262068966, \n    -0.0005944827586, -0.0004841379310, -0.0003315517241, -0.0001946551724, \n    -0.0001051724138, -0.0000894827586, -0.0001420689655, -0.0002420689655, \n    -0.0002841379310, -0.0002156896552, -0.0000631034483, +0.0000736206897, \n    +0.0001105172414, +0.0000105172414, -0.0001472413793, -0.0002525862069, \n    -0.0002315517241, -0.0001051724138, +0.0000579310345, +0.0001684482759, \n    +0.0001472413793, +0.0000000000000, -0.0002367241379, -0.0004418965517, \n    -0.0004841379310, -0.0003420689655, -0.0000946551724, +0.0001315517241, \n    +0.0002420689655, +0.0002156896552, +0.0001210344828, +0.0000420689655, \n    +0.0000315517241, +0.0000736206897, +0.0001315517241, +0.0001472413793, \n    +0.0000841379310, -0.0000210344828, -0.0001262068966, -0.0001684482759, \n    -0.0001367241379, -0.0000525862069, +0.0000210344828, +0.0000525862069, \n    +0.0000315517241, -0.0000105172414, -0.0000368965517, +0.0000000000000, \n    +0.0000894827586, +0.0001841379310, +0.0002105172414, +0.0001525862069, \n    +0.0000315517241, -0.0001051724138, -0.0002156896552, -0.0002631034483, \n    -0.0002367241379, -0.0001579310345, -0.0000736206897, -0.0000368965517, \n    -0.0000525862069, -0.0000579310345, +0.0000000000000, +0.0000946551724, \n    +0.0001472413793, +0.0001472413793, +0.0001210344828, +0.0000841379310, \n    +0.0000315517241, -0.0000210344828, -0.0000894827586, -0.0001684482759, \n    -0.0002210344828, -0.0002262068966, -0.0001579310345, -0.0000474137931, \n    +0.0000474137931, +0.0000894827586, +0.0000579310345, +0.0000000000000, \n    -0.0000368965517, -0.0000315517241, +0.0000000000000, +0.0000474137931, \n    +0.0001051724138, +0.0001472413793, +0.0001736206897, +0.0001946551724, \n    +0.0002000000000, +0.0001684482759, +0.0001051724138, +0.0000315517241, \n    +0.0000000000000, +0.0000368965517, +0.0001156896552, +0.0001736206897, \n    +0.0001789655172, +0.0001315517241, +0.0000420689655, -0.0000579310345, \n    -0.0001525862069, -0.0002105172414, -0.0002051724138, -0.0001420689655, \n    -0.0000368965517, +0.0000789655172, +0.0001946551724, +0.0002631034483, \n    +0.0002525862069, +0.0001684482759, +0.0000525862069, -0.0000631034483, \n    -0.0001684482759, -0.0002051724138, -0.0001262068966, +0.0000263793103, \n    +0.0002051724138, +0.0003210344828, +0.0003156896552, +0.0001631034483, \n    -0.0000579310345, -0.0002841379310, -0.0004313793103, -0.0004682758621, \n    -0.0004367241379, -0.0003946551724, -0.0003315517241, -0.0002210344828, \n    -0.0000946551724, +0.0000000000000, +0.0000315517241, +0.0000525862069, \n    +0.0000631034483, +0.0000684482759, +0.0000579310345, +0.0000474137931, \n    +0.0000263793103, -0.0000105172414, -0.0000368965517, -0.0000263793103, \n    -0.0000053448276, -0.0000105172414, -0.0000684482759, -0.0001156896552, \n    -0.0001156896552, -0.0000684482759, -0.0000105172414, +0.0000368965517, \n    +0.0000946551724, +0.0001631034483, +0.0002525862069, +0.0003631034483, \n    +0.0004631034483, +0.0004946551724, +0.0004262068966, +0.0002682758621, \n    +0.0000841379310, -0.0000210344828, -0.0000158620690, +0.0000841379310, \n    +0.0002051724138, +0.0002787931034, +0.0002893103448, +0.0002420689655, \n    +0.0001262068966, +0.0000000000000, -0.0000736206897, -0.0000315517241, \n    +0.0001315517241, +0.0003525862069, +0.0005262068966, +0.0005893103448, \n    +0.0004998275862, +0.0003000000000, +0.0000579310345, -0.0001315517241, \n    -0.0002315517241, -0.0002420689655, -0.0002210344828, -0.0001894827586, \n    -0.0001472413793, -0.0001051724138, -0.0000789655172, -0.0000684482759, \n    -0.0000631034483, -0.0000579310345, -0.0000525862069, -0.0000631034483, \n    -0.0000789655172, -0.0000474137931, +0.0000525862069, +0.0001841379310, \n    +0.0002893103448, +0.0003210344828, +0.0002525862069, +0.0001105172414, \n    -0.0000474137931, -0.0001841379310, -0.0002736206897, -0.0003000000000, \n    -0.0002367241379, -0.0001000000000, +0.0000684482759, +0.0002000000000, \n    +0.0002262068966, +0.0001684482759, +0.0000736206897, +0.0000000000000, \n    -0.0000368965517, -0.0000579310345, -0.0000474137931, +0.0000053448276, \n    +0.0000946551724, +0.0001841379310, +0.0002682758621, +0.0003000000000, \n    +0.0002525862069, +0.0001472413793, +0.0000420689655, -0.0000053448276, \n    -0.0000053448276, +0.0000263793103, +0.0000789655172, +0.0001156896552, \n    +0.0001051724138, +0.0000263793103, -0.0000474137931, -0.0000736206897, \n    -0.0000210344828, +0.0000894827586, +0.0002315517241, +0.0003262068966, \n    +0.0003262068966, +0.0002472413793, +0.0001631034483, +0.0001367241379, \n    +0.0001367241379, +0.0001367241379, +0.0001315517241, +0.0001105172414, \n    +0.0000579310345, +0.0000000000000, -0.0000210344828, +0.0000158620690, \n    +0.0001105172414, +0.0002000000000, +0.0002156896552, +0.0001472413793, \n    +0.0000158620690, -0.0001000000000, -0.0001420689655, -0.0001000000000, \n    -0.0000263793103, +0.0000210344828, +0.0000053448276, -0.0000684482759, \n    -0.0001736206897, -0.0002736206897, -0.0003315517241, -0.0003367241379, \n    -0.0003156896552, -0.0002631034483, -0.0001684482759, -0.0000474137931, \n    +0.0000315517241, +0.0000263793103, -0.0000315517241, -0.0001156896552, \n    -0.0001894827586, -0.0002420689655, -0.0002736206897, -0.0002787931034, \n    -0.0002420689655, -0.0001631034483, -0.0000579310345, +0.0000315517241, \n    +0.0000946551724, +0.0001000000000, +0.0000420689655, -0.0000579310345, \n    -0.0001525862069, -0.0001894827586, -0.0001472413793, -0.0000315517241, \n    +0.0001000000000, +0.0001894827586, +0.0001789655172, +0.0000894827586, \n    +0.0000000000000, -0.0000315517241, -0.0000263793103, +0.0000000000000, \n    +0.0000368965517, +0.0000631034483, +0.0000946551724, +0.0001472413793, \n    +0.0002315517241, +0.0002893103448, +0.0002841379310, +0.0002367241379, \n    +0.0001684482759, +0.0000894827586, +0.0000105172414, -0.0000263793103, \n    -0.0000263793103, -0.0000053448276, +0.0000000000000, +0.0000000000000, \n    -0.0000158620690, -0.0000210344828, -0.0000105172414, +0.0000158620690, \n    +0.0000684482759, +0.0001262068966, +0.0001525862069, +0.0001472413793, \n    +0.0001420689655, +0.0001684482759, +0.0001894827586, +0.0001631034483, \n    +0.0000946551724, +0.0000000000000, -0.0000894827586, -0.0001472413793, \n    -0.0001684482759, -0.0001631034483, -0.0001579310345, -0.0001579310345, \n    -0.0001579310345, -0.0001736206897, -0.0001684482759, -0.0001315517241, \n    -0.0000474137931, +0.0000684482759, +0.0001736206897, +0.0002210344828, \n    +0.0002156896552, +0.0001579310345, +0.0000736206897, +0.0000000000000, \n    -0.0000158620690, +0.0000000000000, +0.0000474137931, +0.0001000000000, \n    +0.0001367241379, +0.0001472413793, +0.0001525862069, +0.0001736206897, \n    +0.0002156896552, +0.0002682758621, +0.0003051724138, +0.0002893103448, \n    +0.0002210344828, +0.0001210344828, +0.0000525862069, +0.0000420689655, \n    +0.0000894827586, +0.0001579310345, +0.0001894827586, +0.0001420689655, \n    +0.0000525862069, -0.0000263793103, -0.0000789655172, -0.0000946551724, \n    -0.0000684482759, -0.0000105172414, +0.0000420689655, +0.0000789655172, \n    +0.0000789655172, +0.0000368965517, -0.0000053448276, -0.0000158620690, \n    +0.0000420689655, +0.0001315517241, +0.0001789655172, +0.0001472413793, \n    +0.0000368965517, -0.0001000000000, -0.0002156896552, -0.0002472413793, \n    -0.0001789655172, -0.0000631034483, +0.0000158620690, +0.0000105172414, \n    -0.0000631034483, -0.0001472413793, -0.0001789655172, -0.0001262068966, \n    +0.0000000000000, +0.0001367241379, +0.0002367241379, +0.0002472413793, \n    +0.0001631034483, +0.0000263793103, -0.0000841379310, -0.0001525862069, \n    -0.0001684482759, -0.0001367241379, -0.0000631034483, +0.0000105172414, \n    +0.0000474137931, +0.0000474137931, +0.0000420689655, +0.0000684482759, \n    +0.0001000000000, +0.0001000000000, +0.0000631034483, +0.0000158620690, \n    +0.0000000000000, +0.0000105172414, +0.0000631034483, +0.0001420689655, \n    +0.0002420689655, +0.0002946551724, +0.0002682758621, +0.0001946551724, \n    +0.0001105172414, +0.0000420689655, -0.0000053448276, -0.0000158620690, \n    -0.0000210344828, -0.0000579310345, -0.0001051724138, -0.0001156896552, \n    -0.0000684482759, +0.0000263793103, +0.0001631034483, +0.0003000000000, \n    +0.0004103448276, +0.0004682758621, +0.0004472413793, +0.0003631034483, \n    +0.0002577586207, +0.0001579310345, +0.0000474137931, -0.0000684482759, \n    -0.0001631034483, -0.0001841379310, -0.0001262068966, -0.0000105172414, \n    +0.0001262068966, +0.0002472413793, +0.0002946551724, +0.0002472413793, \n    +0.0001472413793, +0.0000315517241, -0.0000263793103, +0.0000000000000, \n    +0.0001051724138, +0.0002525862069, +0.0003420689655, +0.0003051724138, \n    +0.0001789655172, +0.0000684482759, +0.0000368965517, +0.0000894827586, \n    +0.0001841379310, +0.0002577586207, +0.0002736206897, +0.0002105172414, \n    +0.0000684482759, -0.0001472413793, -0.0003787931034, -0.0005208620690, \n    -0.0005208620690, -0.0003787931034, -0.0001367241379, +0.0001210344828, \n    +0.0003000000000, +0.0003472413793, +0.0002787931034, +0.0001684482759, \n    +0.0000684482759, -0.0000053448276, -0.0000946551724, -0.0001946551724, \n    -0.0002893103448, -0.0003472413793, -0.0003525862069, -0.0002946551724, \n    -0.0001841379310, -0.0000579310345, +0.0000263793103, +0.0000525862069, \n    +0.0000368965517, +0.0000000000000, -0.0000210344828, -0.0000158620690, \n    +0.0000210344828, +0.0000946551724, +0.0001472413793, +0.0001579310345, \n    +0.0001156896552, +0.0000158620690, -0.0000894827586, -0.0001841379310, \n    -0.0002315517241, -0.0001946551724, -0.0000684482759, +0.0001051724138, \n    +0.0002682758621, +0.0003577586207, +0.0003525862069, +0.0002577586207, \n    +0.0001210344828, +0.0000000000000, -0.0000736206897, -0.0001210344828, \n    -0.0001420689655, -0.0001367241379, -0.0001000000000, -0.0000315517241, \n    +0.0000420689655, +0.0001051724138, +0.0001262068966, +0.0001000000000, \n    +0.0000263793103, -0.0000525862069, -0.0001105172414, -0.0001367241379, \n    -0.0001472413793, -0.0001579310345, -0.0002000000000, -0.0002577586207, \n    -0.0002893103448, -0.0002631034483, -0.0001789655172, -0.0000631034483, \n    +0.0000579310345, +0.0001420689655, +0.0001315517241, +0.0000315517241, \n    -0.0001000000000, -0.0002000000000, -0.0002315517241, -0.0002051724138, \n    -0.0001525862069, -0.0000894827586, -0.0000579310345, -0.0000946551724, \n    -0.0001946551724, -0.0003051724138, -0.0003577586207, -0.0003000000000, \n    -0.0001420689655, +0.0000315517241, +0.0001367241379, +0.0000946551724, \n    -0.0000736206897, -0.0002682758621, -0.0003736206897, -0.0003472413793, \n    -0.0002262068966, -0.0000684482759, +0.0000525862069, +0.0001156896552, \n    +0.0001156896552, +0.0000631034483, +0.0000053448276, -0.0000315517241, \n    -0.0000579310345, -0.0000684482759, -0.0000579310345, -0.0000263793103, \n    +0.0000105172414, +0.0000736206897, +0.0001262068966, +0.0001420689655, \n    +0.0001156896552, +0.0000579310345, -0.0000105172414, -0.0000946551724, \n    -0.0001631034483, -0.0001894827586, -0.0001684482759, -0.0001000000000, \n    -0.0000315517241, -0.0000105172414, -0.0000474137931, -0.0001105172414, \n    -0.0001420689655, -0.0001156896552, -0.0000525862069, +0.0000210344828, \n    +0.0000789655172, +0.0000789655172, +0.0000105172414, -0.0001051724138, \n    -0.0002105172414, -0.0002736206897, -0.0003051724138, -0.0003315517241, \n    -0.0003577586207, -0.0003631034483, -0.0003577586207, -0.0003210344828, \n    -0.0002682758621, -0.0002000000000, -0.0001472413793, -0.0001105172414, \n    -0.0001051724138, -0.0001262068966, -0.0001684482759, -0.0002156896552, \n    -0.0002631034483, -0.0002787931034, -0.0002525862069, -0.0002105172414, \n    -0.0001841379310, -0.0001789655172, -0.0002051724138, -0.0002262068966, \n    -0.0002051724138, -0.0001420689655, -0.0000525862069, +0.0000053448276, \n    +0.0000158620690, -0.0000158620690, -0.0000631034483, -0.0001210344828, \n    -0.0001946551724, -0.0002577586207, -0.0002736206897, -0.0002367241379, \n    -0.0001579310345, -0.0000525862069, +0.0000263793103, +0.0000525862069, \n    -0.0000158620690, -0.0001631034483, -0.0003210344828, -0.0004208620690, \n    -0.0004472413793, -0.0004051724138, -0.0003156896552, -0.0002210344828, \n    -0.0001156896552, -0.0000105172414, +0.0000789655172, +0.0001315517241, \n    +0.0001262068966, +0.0001051724138, +0.0001105172414, +0.0001472413793, \n    +0.0001841379310, +0.0001789655172, +0.0001051724138, +0.0000000000000, \n    -0.0001105172414, -0.0001894827586, -0.0002156896552, -0.0001841379310, \n    -0.0001156896552, -0.0000368965517, +0.0000210344828, +0.0000474137931, \n    +0.0000315517241, -0.0000210344828, -0.0001000000000, -0.0001789655172, \n    -0.0002420689655, -0.0002841379310, -0.0003051724138, -0.0002787931034, \n    -0.0001946551724, -0.0000579310345, +0.0000736206897, +0.0001210344828, \n    +0.0000684482759, -0.0000210344828, -0.0001000000000, -0.0001315517241, \n    -0.0001051724138, -0.0000525862069, -0.0000158620690, -0.0000315517241, \n    -0.0000894827586, -0.0001525862069, -0.0001736206897, -0.0001262068966, \n    -0.0000263793103, +0.0000946551724, +0.0001894827586, +0.0001946551724, \n    +0.0001051724138, -0.0000210344828, -0.0001315517241, -0.0001894827586, \n    -0.0001736206897, -0.0001051724138, -0.0000263793103, +0.0000105172414, \n    +0.0000158620690, -0.0000105172414, -0.0000736206897, -0.0001579310345, \n    -0.0002472413793, -0.0003000000000, -0.0003051724138, -0.0002367241379, \n    -0.0001315517241, -0.0000210344828, +0.0000368965517, +0.0000525862069, \n    +0.0000315517241, +0.0000158620690, +0.0000210344828, +0.0000684482759, \n    +0.0001315517241, +0.0002000000000, +0.0002156896552, +0.0001579310345, \n    +0.0000631034483, +0.0000000000000, -0.0000263793103, -0.0000263793103, \n    -0.0000053448276, +0.0000474137931, +0.0001156896552, +0.0001631034483, \n    +0.0001736206897, +0.0001420689655, +0.0000894827586, +0.0000315517241, \n    +0.0000053448276, +0.0000474137931, +0.0001525862069, +0.0002946551724, \n    +0.0003998275862, +0.0004313793103, +0.0003420689655, +0.0001736206897, \n    -0.0000053448276, -0.0001315517241, -0.0001736206897, -0.0001472413793, \n    -0.0000684482759, +0.0000210344828, +0.0000841379310, +0.0000736206897, \n    +0.0000210344828, -0.0000210344828, -0.0000368965517, -0.0000105172414, \n    +0.0000525862069, +0.0001420689655, +0.0002156896552, +0.0002525862069, \n    +0.0002472413793, +0.0002210344828, +0.0002051724138, +0.0001946551724, \n    +0.0001684482759, +0.0001156896552, +0.0000420689655, -0.0000210344828, \n    -0.0000579310345, -0.0000631034483, -0.0000263793103, +0.0000474137931, \n    +0.0001262068966, +0.0001789655172, +0.0001946551724, +0.0001841379310, \n    +0.0001894827586, +0.0002262068966, +0.0002893103448, +0.0003315517241, \n    +0.0003525862069, +0.0003472413793, +0.0003210344828, +0.0002787931034, \n    +0.0002210344828, +0.0001789655172, +0.0001472413793, +0.0001315517241, \n    +0.0001105172414, +0.0000841379310, +0.0000368965517, -0.0000158620690, \n    -0.0000631034483, -0.0000474137931, +0.0000420689655, +0.0001841379310, \n    +0.0003105172414, +0.0003525862069, +0.0003051724138, +0.0001894827586, \n    +0.0000736206897, +0.0000000000000, +0.0000000000000, +0.0000631034483, \n    +0.0001579310345, +0.0002262068966, +0.0002420689655, +0.0002105172414, \n    +0.0001684482759, +0.0001262068966, +0.0001051724138, +0.0001105172414, \n    +0.0001262068966, +0.0001472413793, +0.0001525862069, +0.0001156896552, \n    +0.0000684482759, +0.0000368965517, +0.0000525862069, +0.0001156896552, \n    +0.0002000000000, +0.0002682758621, +0.0003105172414, +0.0003210344828, \n    +0.0002946551724, +0.0002472413793, +0.0002000000000, +0.0001789655172, \n    +0.0001631034483, +0.0001367241379, +0.0000841379310, +0.0000210344828, \n    -0.0000053448276, +0.0000053448276, +0.0000684482759, +0.0001579310345, \n    +0.0002525862069, +0.0003156896552, +0.0003315517241, +0.0003051724138, \n    +0.0002315517241, +0.0001420689655, +0.0000420689655, -0.0000474137931, \n    -0.0001210344828, -0.0001579310345, -0.0001367241379, -0.0000684482759, \n    +0.0000263793103, +0.0001315517241, +0.0002105172414, +0.0002315517241, \n    +0.0001789655172, +0.0000841379310, +0.0000000000000, -0.0000684482759, \n    -0.0000946551724, -0.0000684482759, -0.0000105172414, +0.0000210344828, \n    +0.0000158620690, -0.0000158620690, -0.0000579310345, -0.0000736206897, \n    -0.0000525862069, +0.0000105172414, +0.0001105172414, +0.0002156896552, \n    +0.0002841379310, +0.0002787931034, +0.0002000000000, +0.0000789655172, \n    -0.0000368965517, -0.0001210344828, -0.0001736206897, -0.0002210344828, \n    -0.0002420689655, -0.0002156896552, -0.0001472413793, -0.0000579310345, \n    +0.0000263793103, +0.0000946551724, +0.0001210344828, +0.0001105172414, \n    +0.0000789655172, +0.0000474137931, +0.0000315517241, +0.0000315517241, \n    +0.0000263793103, +0.0000053448276, -0.0000474137931, -0.0001262068966, \n    -0.0001946551724, -0.0002156896552, -0.0001789655172, -0.0000894827586, \n    +0.0000105172414, +0.0000894827586, +0.0001105172414, +0.0000736206897, \n    +0.0000210344828, -0.0000105172414, -0.0000105172414, +0.0000210344828, \n    +0.0000631034483, +0.0000894827586, +0.0000736206897, +0.0000053448276, \n    -0.0000894827586, -0.0001472413793, -0.0001315517241, -0.0000525862069, \n    +0.0000474137931, +0.0001367241379, +0.0001894827586, +0.0001841379310, \n    +0.0001051724138, -0.0000210344828, -0.0001315517241, -0.0001841379310, \n    -0.0001736206897, -0.0001315517241, -0.0000736206897, -0.0000158620690, \n    +0.0000263793103, +0.0000631034483, +0.0001000000000, +0.0001420689655, \n    +0.0001736206897, +0.0001579310345, +0.0000894827586, -0.0000263793103, \n    -0.0001525862069, -0.0002472413793, -0.0002682758621, -0.0002156896552, \n    -0.0001315517241, -0.0000368965517, +0.0000263793103, +0.0000684482759, \n    +0.0000841379310, +0.0001000000000, +0.0001210344828, +0.0001684482759, \n    +0.0002051724138, +0.0002156896552, +0.0001841379310, +0.0001105172414, \n    +0.0000105172414, -0.0000684482759, -0.0001156896552, -0.0001051724138, \n    -0.0000368965517, +0.0000525862069, +0.0001579310345, +0.0002420689655, \n    +0.0002631034483, +0.0002105172414, +0.0000946551724, -0.0000525862069, \n    -0.0001789655172, -0.0002367241379, -0.0001894827586, -0.0000736206897, \n    +0.0000474137931, +0.0001000000000, +0.0000736206897, -0.0000053448276, \n    -0.0000946551724, -0.0001684482759, -0.0001946551724, -0.0001736206897, \n    -0.0001315517241, -0.0000841379310, -0.0000315517241, +0.0000210344828, \n    +0.0000631034483, +0.0000736206897, +0.0000420689655, -0.0000105172414, \n    -0.0000579310345, -0.0000946551724, -0.0001315517241, -0.0001841379310, \n    -0.0002262068966, -0.0002420689655, -0.0002210344828, -0.0001684482759, \n    -0.0000841379310, +0.0000158620690, +0.0001262068966, +0.0001894827586, \n    +0.0001736206897, +0.0001000000000, +0.0000105172414, -0.0000368965517, \n    -0.0000579310345, -0.0000525862069, -0.0000263793103, -0.0000105172414, \n    -0.0000105172414, -0.0000315517241, -0.0000631034483, -0.0000894827586, \n    -0.0000946551724, -0.0000684482759, -0.0000158620690, +0.0000210344828, \n    +0.0000210344828, -0.0000263793103, -0.0000894827586, -0.0001156896552, \n    -0.0001051724138, -0.0000684482759, -0.0000158620690, +0.0000368965517, \n    +0.0000789655172, +0.0000841379310, +0.0000631034483, +0.0000210344828, \n    -0.0000210344828, -0.0000684482759, -0.0001051724138, -0.0001210344828, \n    -0.0001156896552, -0.0001105172414, -0.0001051724138, -0.0001000000000, \n    -0.0000894827586, -0.0000684482759, -0.0000474137931, -0.0000263793103, \n    +0.0000000000000, +0.0000263793103, +0.0000841379310, +0.0001472413793, \n    +0.0001789655172, +0.0001684482759, +0.0001210344828, +0.0000684482759, \n    +0.0000210344828, -0.0000158620690, -0.0000579310345, -0.0001262068966, \n    -0.0002051724138, -0.0002631034483, -0.0002472413793, -0.0001420689655, \n    +0.0000263793103, +0.0002000000000, +0.0003156896552, +0.0003367241379, \n    +0.0002472413793, +0.0000946551724, -0.0000631034483, -0.0001684482759, \n    -0.0001841379310, -0.0001262068966, -0.0000368965517, +0.0000474137931, \n    +0.0001105172414, +0.0001315517241, +0.0001105172414, +0.0000474137931, \n    -0.0000315517241, -0.0001051724138, -0.0001420689655, -0.0001210344828, \n    -0.0000579310345, +0.0000105172414, +0.0000579310345, +0.0000736206897, \n    +0.0000631034483, +0.0000420689655, +0.0000315517241, +0.0000525862069, \n    +0.0000946551724, +0.0001367241379, +0.0001315517241, +0.0000789655172, \n    +0.0000053448276, -0.0000579310345, -0.0000841379310, -0.0000684482759, \n    -0.0000158620690, +0.0000420689655, +0.0000841379310, +0.0001000000000, \n    +0.0000946551724, +0.0000684482759, +0.0000315517241, +0.0000053448276, \n    -0.0000105172414, -0.0000315517241, -0.0000474137931, -0.0000631034483, \n    -0.0000579310345, -0.0000210344828, +0.0000263793103, +0.0000736206897, \n    +0.0000789655172, +0.0000631034483, +0.0000053448276, -0.0000736206897, \n    -0.0001579310345, -0.0002000000000, -0.0001736206897, -0.0001210344828, \n    -0.0000684482759, -0.0000210344828, +0.0000420689655, +0.0001156896552, \n    +0.0001684482759, +0.0001736206897, +0.0001156896552, +0.0000210344828, \n    -0.0000841379310, -0.0001736206897, -0.0002210344828, -0.0002262068966, \n    -0.0002105172414, -0.0001789655172, -0.0001472413793, -0.0001156896552, \n    -0.0000946551724, -0.0000789655172, -0.0000684482759, -0.0000525862069, \n    -0.0000263793103, +0.0000105172414, +0.0000631034483, +0.0001105172414, \n    +0.0001420689655, +0.0001579310345, +0.0001420689655, +0.0000841379310, \n    -0.0000053448276, -0.0001051724138, -0.0001841379310, -0.0002156896552, \n    -0.0001894827586, -0.0001210344828, -0.0000368965517, +0.0000263793103, \n    +0.0000525862069, +0.0000315517241, -0.0000315517241, -0.0001156896552, \n    -0.0001789655172, -0.0001841379310, -0.0001315517241, -0.0000579310345, \n    +0.0000105172414, +0.0000579310345, +0.0000894827586, +0.0001000000000, \n    +0.0001000000000, +0.0000841379310, +0.0000684482759, +0.0000368965517, \n    -0.0000158620690, -0.0000894827586, -0.0001525862069, -0.0001631034483, \n    -0.0001051724138, +0.0000000000000, +0.0001051724138, +0.0001631034483, \n    +0.0001420689655, +0.0000474137931, -0.0000684482759, -0.0001525862069, \n    -0.0001631034483, -0.0001051724138, -0.0000315517241, +0.0000000000000, \n    -0.0000158620690, -0.0000894827586, -0.0001894827586, -0.0002682758621, \n    -0.0003051724138, -0.0002893103448, -0.0002262068966, -0.0001472413793, \n    -0.0000579310345, +0.0000263793103, +0.0000789655172, +0.0000789655172, \n    +0.0000420689655, -0.0000105172414, -0.0000684482759, -0.0001262068966, \n    -0.0001736206897, -0.0001946551724, -0.0001736206897, -0.0001156896552, \n    -0.0000525862069, -0.0000053448276, +0.0000000000000, -0.0000053448276, \n    -0.0000420689655, -0.0000894827586, -0.0001472413793, -0.0001946551724, \n    -0.0002000000000, -0.0001472413793, -0.0000525862069, +0.0000315517241, \n    +0.0000894827586, +0.0000946551724, +0.0000525862069, +0.0000000000000, \n    -0.0000263793103, -0.0000263793103, -0.0000158620690, -0.0000053448276, \n    -0.0000158620690, -0.0000158620690, +0.0000000000000, +0.0000263793103, \n    +0.0000474137931, +0.0000684482759, +0.0000789655172, +0.0000684482759, \n    +0.0000105172414, -0.0000841379310, -0.0001841379310, -0.0002472413793, \n    -0.0002420689655, -0.0001841379310, -0.0001105172414, -0.0000525862069, \n    -0.0000420689655, -0.0000684482759, -0.0001000000000, -0.0001156896552, \n    -0.0001051724138, -0.0000579310345, +0.0000158620690, +0.0000946551724, \n    +0.0001210344828, +0.0000736206897, -0.0000368965517, -0.0001736206897, \n    -0.0002577586207, -0.0002682758621, -0.0002210344828, -0.0001525862069, \n    -0.0000946551724, -0.0000525862069, -0.0000368965517, -0.0000368965517, \n    -0.0000579310345, -0.0000684482759, -0.0000579310345, -0.0000210344828, \n    +0.0000210344828, +0.0000631034483, +0.0000736206897, +0.0000525862069, \n    +0.0000105172414, -0.0000368965517, -0.0000789655172, -0.0001105172414, \n    -0.0001156896552, -0.0000841379310, -0.0000315517241, +0.0000263793103, \n    +0.0000684482759, +0.0000684482759, +0.0000105172414, -0.0000579310345, \n    -0.0001156896552, -0.0001210344828, -0.0000946551724, -0.0000525862069, \n    +0.0000000000000, +0.0000684482759, +0.0001156896552, +0.0001000000000, \n    +0.0000210344828, -0.0000841379310, -0.0001631034483, -0.0001841379310, \n    -0.0001472413793, -0.0000579310345, +0.0000368965517, +0.0001105172414, \n    +0.0001315517241, +0.0000789655172, -0.0000105172414, -0.0001262068966, \n    -0.0002210344828, -0.0002577586207, -0.0002000000000, -0.0000736206897, \n    +0.0000736206897, +0.0001841379310, +0.0002210344828, +0.0001684482759, \n    +0.0000525862069, -0.0000684482759, -0.0001789655172, -0.0002315517241, \n    -0.0002367241379, -0.0002105172414, -0.0001684482759, -0.0001315517241, \n    -0.0000894827586, -0.0000525862069, -0.0000105172414, +0.0000315517241, \n    +0.0000736206897, +0.0000894827586, +0.0000631034483, +0.0000053448276, \n    -0.0000474137931, -0.0000631034483, -0.0000263793103, +0.0000420689655, \n    +0.0001210344828, +0.0001789655172, +0.0001894827586, +0.0001420689655, \n    +0.0000525862069, -0.0000420689655, -0.0001156896552, -0.0001367241379, \n    -0.0000894827586, +0.0000000000000, +0.0000946551724, +0.0001525862069, \n    +0.0001684482759, +0.0001367241379, +0.0000736206897, -0.0000053448276, \n    -0.0000789655172, -0.0001156896552, -0.0000789655172, +0.0000158620690, \n    +0.0001367241379, +0.0002156896552, +0.0002262068966, +0.0001525862069, \n    +0.0000368965517, -0.0000579310345, -0.0001000000000, -0.0000736206897, \n    +0.0000000000000, +0.0000841379310, +0.0001315517241, +0.0001315517241, \n    +0.0000894827586, +0.0000368965517, -0.0000053448276, -0.0000053448276, \n    +0.0000420689655, +0.0001262068966, +0.0001841379310, +0.0001736206897, \n    +0.0000946551724, -0.0000158620690, -0.0001051724138, -0.0001315517241, \n    -0.0000894827586, -0.0000158620690, +0.0000684482759, +0.0001420689655, \n    +0.0001736206897, +0.0001789655172, +0.0001525862069, +0.0001156896552, \n    +0.0000736206897, +0.0000368965517, +0.0000158620690, +0.0000315517241, \n    +0.0000789655172, +0.0001262068966, +0.0001420689655, +0.0001262068966, \n    +0.0000789655172, +0.0000210344828, -0.0000263793103, -0.0000420689655, \n    -0.0000368965517, -0.0000263793103, -0.0000420689655, -0.0000684482759, \n    -0.0000631034483, -0.0000158620690, +0.0000736206897, +0.0001684482759, \n    +0.0002315517241, +0.0002315517241, +0.0001894827586, +0.0001210344828, \n    +0.0000631034483, +0.0000315517241, +0.0000474137931, +0.0001000000000, \n    +0.0001579310345, +0.0001894827586, +0.0001736206897, +0.0001367241379, \n    +0.0000841379310, +0.0000368965517, +0.0000000000000, -0.0000053448276, \n    +0.0000158620690, +0.0000474137931, +0.0000684482759, +0.0000631034483, \n    +0.0000315517241, +0.0000053448276, +0.0000053448276, +0.0000474137931, \n    +0.0001210344828, +0.0002000000000, +0.0002631034483, +0.0003000000000, \n    +0.0003210344828, +0.0003367241379, +0.0003367241379, +0.0003262068966, \n    +0.0003051724138, +0.0002577586207, +0.0002105172414, +0.0001684482759, \n    +0.0001525862069, +0.0001684482759, +0.0002051724138, +0.0002315517241, \n    +0.0002000000000, +0.0001262068966, +0.0000420689655, -0.0000158620690, \n    -0.0000263793103, +0.0000105172414, +0.0000841379310, +0.0001579310345, \n    +0.0002105172414, +0.0002210344828, +0.0001946551724, +0.0001525862069, \n    +0.0001105172414, +0.0000894827586, +0.0000894827586, +0.0001156896552, \n    +0.0001525862069, +0.0001894827586, +0.0002105172414, +0.0002051724138, \n    +0.0001684482759, +0.0000946551724, +0.0000000000000, -0.0001105172414, \n    -0.0001736206897, -0.0001736206897, -0.0000841379310, +0.0000631034483, \n    +0.0002210344828, +0.0003156896552, +0.0003210344828, +0.0002367241379, \n    +0.0001156896552, +0.0000053448276, -0.0000525862069, -0.0000579310345, \n    -0.0000263793103, +0.0000105172414, +0.0000315517241, +0.0000315517241, \n    +0.0000105172414, -0.0000053448276, -0.0000210344828, -0.0000105172414, \n    +0.0000053448276, +0.0000368965517, +0.0000579310345, +0.0000684482759, \n    +0.0000736206897, +0.0000841379310, +0.0001000000000, +0.0001156896552, \n    +0.0001156896552, +0.0000946551724, +0.0000579310345, +0.0000210344828, \n    +0.0000000000000, -0.0000105172414, -0.0000053448276, +0.0000053448276, \n    +0.0000210344828, +0.0000368965517, +0.0000368965517, +0.0000315517241, \n    +0.0000420689655, +0.0000736206897, +0.0001105172414, +0.0001472413793, \n    +0.0001736206897, +0.0001894827586, +0.0001946551724, +0.0002000000000, \n    +0.0001946551724, +0.0001789655172, +0.0001579310345, +0.0001262068966, \n    +0.0000946551724, +0.0000631034483, +0.0000315517241, +0.0000000000000, \n    -0.0000105172414, +0.0000000000000, +0.0000368965517, +0.0000894827586, \n    +0.0001472413793, +0.0001789655172, +0.0001841379310, +0.0001631034483, \n    +0.0001315517241, +0.0000946551724, +0.0000474137931, +0.0000000000000, \n    -0.0000525862069, -0.0000841379310, -0.0000894827586, -0.0000684482759, \n    -0.0000263793103, +0.0000210344828, +0.0000736206897, +0.0001156896552, \n    +0.0001315517241, +0.0001156896552, +0.0000684482759, +0.0000210344828, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000158620690, +0.0000105172414, -0.0000158620690, \n    -0.0000684482759, -0.0001105172414, -0.0001315517241, -0.0001105172414, \n    -0.0000579310345, +0.0000053448276, +0.0000579310345, +0.0000789655172, \n    +0.0000736206897, +0.0000525862069, +0.0000263793103, +0.0000000000000, \n    -0.0000263793103, -0.0000315517241, -0.0000053448276, +0.0000263793103, \n    +0.0000474137931, +0.0000368965517, +0.0000000000000, -0.0000525862069, \n    -0.0000894827586, -0.0001051724138, -0.0000841379310, -0.0000368965517, \n    +0.0000315517241, +0.0001051724138, +0.0001684482759, +0.0002051724138, \n    +0.0002156896552, +0.0002051724138, +0.0001684482759, +0.0001051724138, \n    +0.0000210344828, -0.0000579310345, -0.0001105172414, -0.0001105172414, \n    -0.0000736206897, -0.0000210344828, +0.0000158620690, +0.0000158620690, \n    -0.0000053448276, -0.0000368965517, -0.0000525862069, -0.0000631034483, \n    -0.0000684482759, -0.0000684482759, -0.0000631034483, -0.0000579310345, \n    -0.0000579310345, -0.0000474137931, -0.0000420689655, -0.0000315517241, \n    -0.0000315517241, -0.0000368965517, -0.0000579310345, -0.0000946551724, \n    -0.0001420689655, -0.0001841379310, -0.0001946551724, -0.0001684482759, \n    -0.0001051724138, -0.0000315517241, +0.0000210344828, +0.0000420689655, \n    +0.0000263793103, -0.0000053448276, -0.0000420689655, -0.0000474137931, \n    -0.0000210344828, +0.0000263793103, +0.0000789655172, +0.0000841379310, \n    +0.0000315517241, -0.0000631034483, -0.0001631034483, -0.0002262068966, \n    -0.0002367241379, -0.0002051724138, -0.0001472413793, -0.0000684482759, \n    -0.0000053448276, +0.0000315517241, +0.0000315517241, +0.0000000000000, \n    -0.0000368965517, -0.0000631034483, -0.0000631034483, -0.0000474137931, \n    -0.0000263793103, -0.0000053448276, +0.0000000000000, -0.0000105172414, \n    -0.0000474137931, -0.0000946551724, -0.0001367241379, -0.0001631034483, \n    -0.0001684482759, -0.0001525862069, -0.0001210344828, -0.0000841379310, \n    -0.0000420689655, +0.0000000000000, +0.0000315517241, +0.0000579310345, \n    +0.0000631034483, +0.0000368965517, -0.0000053448276, -0.0000736206897, \n    -0.0001367241379, -0.0001841379310, -0.0002105172414, -0.0002105172414, \n    -0.0002105172414, -0.0002105172414, -0.0002262068966, -0.0002367241379, \n    -0.0002367241379, -0.0002156896552, -0.0001736206897, -0.0001262068966, \n    -0.0000894827586, -0.0000736206897, -0.0000684482759, -0.0000684482759, \n    -0.0000684482759, -0.0000789655172, -0.0001051724138, -0.0001420689655, \n    -0.0001736206897, -0.0001736206897, -0.0001472413793, -0.0001156896552, \n    -0.0001105172414, -0.0001262068966, -0.0001579310345, -0.0001789655172, \n    -0.0001684482759, -0.0001156896552, -0.0000368965517, +0.0000263793103, \n    +0.0000631034483, +0.0000368965517, -0.0000263793103, -0.0000946551724, \n    -0.0001472413793, -0.0001789655172, -0.0002051724138, -0.0002262068966, \n    -0.0002315517241, -0.0002156896552, -0.0001894827586, -0.0001525862069, \n    -0.0001105172414, -0.0000789655172, -0.0000631034483, -0.0000684482759, \n    -0.0000946551724, -0.0001262068966, -0.0001367241379, -0.0001156896552, \n    -0.0000631034483, +0.0000053448276, +0.0000579310345, +0.0000736206897, \n    +0.0000210344828, -0.0000579310345, -0.0001525862069, -0.0002156896552, \n    -0.0002315517241, -0.0001946551724, -0.0001262068966, -0.0000631034483, \n    -0.0000315517241, -0.0000368965517, -0.0000631034483, -0.0001051724138, \n    -0.0001262068966, -0.0001156896552, -0.0000736206897, -0.0000105172414, \n    +0.0000525862069, +0.0000946551724, +0.0000894827586, +0.0000420689655, \n    -0.0000263793103, -0.0000894827586, -0.0001262068966, -0.0001262068966, \n    -0.0001000000000, -0.0000789655172, -0.0000684482759, -0.0000841379310, \n    -0.0001105172414, -0.0001210344828, -0.0001156896552, -0.0001105172414, \n    -0.0001156896552, -0.0001367241379, -0.0001579310345, -0.0001631034483, \n    -0.0001420689655, -0.0000894827586, -0.0000263793103, +0.0000315517241, \n    +0.0000579310345, +0.0000263793103, -0.0000420689655, -0.0001210344828, \n    -0.0001789655172, -0.0002000000000, -0.0001736206897, -0.0001051724138, \n    -0.0000158620690, +0.0000525862069, +0.0001000000000, +0.0000946551724, \n    +0.0000525862069, -0.0000105172414, -0.0000789655172, -0.0001105172414, \n    -0.0000946551724, -0.0000474137931, +0.0000210344828, +0.0001000000000, \n    +0.0001579310345, +0.0001841379310, +0.0001789655172, +0.0001420689655, \n    +0.0000841379310, +0.0000420689655, +0.0000053448276, -0.0000158620690, \n    -0.0000315517241, -0.0000420689655, -0.0000315517241, -0.0000158620690, \n    +0.0000000000000, +0.0000315517241, +0.0000579310345, +0.0000894827586, \n    +0.0001051724138, +0.0001105172414, +0.0001051724138, +0.0000841379310, \n    +0.0000420689655, +0.0000000000000, -0.0000105172414, -0.0000105172414, \n    +0.0000000000000, +0.0000053448276, +0.0000210344828, +0.0000315517241, \n    +0.0000263793103, +0.0000053448276, -0.0000053448276, -0.0000263793103, \n    -0.0000368965517, -0.0000368965517, -0.0000210344828, -0.0000053448276, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000\n};\n"
  },
  {
    "path": "impulses/18-marshall-plexi-sm57.h",
    "content": "float marshall_plexi_sm57[] = {\n    +0.0000000000000, +0.0000000000000, -0.0000201754386, -0.0000401315789, \n    -0.0000469298246, -0.0000401315789, -0.0000067982456, +0.0000133771930, \n    +0.0000335526316, +0.0000401315789, +0.0000201754386, +0.0000000000000, \n    -0.0000469298246, -0.0001004385965, -0.0001605263158, -0.0002208333333, \n    -0.0002677631579, -0.0002945175439, -0.0002677631579, -0.0001940789474, \n    -0.0000736842105, +0.0000535087719, +0.0001739035088, +0.0002276315789, \n    +0.0001872807018, +0.0000469298246, -0.0001539473684, -0.0003614035088, \n    -0.0004951754386, -0.0004951754386, -0.0003412280702, -0.0001070175439, \n    +0.0001271929825, +0.0002743421053, +0.0002743421053, +0.0001405701754, \n    -0.0000469298246, -0.0002074561404, -0.0002677631579, -0.0002008771930, \n    -0.0000668859649, +0.0000535087719, +0.0001004385965, +0.0000401315789, \n    -0.0000936403509, -0.0002410087719, -0.0003144736842, -0.0002877192982, \n    -0.0001539473684, +0.0000267543860, +0.0001940789474, +0.0003010964912, \n    +0.0003144736842, +0.0002475877193, +0.0001405701754, +0.0000067982456, \n    -0.0000936403509, -0.0001739035088, -0.0002008771930, -0.0001673245614, \n    -0.0000802631579, +0.0000335526316, +0.0001673245614, +0.0002677631579, \n    +0.0003010964912, +0.0002609649123, +0.0001539473684, +0.0000267543860, \n    -0.0000668859649, -0.0001138157895, -0.0000736842105, +0.0000067982456, \n    +0.0001138157895, +0.0002074561404, +0.0002475877193, +0.0002410087719, \n    +0.0001940789474, +0.0001271929825, +0.0000802631579, +0.0000668859649, \n    +0.0001004385965, +0.0001673245614, +0.0002543859649, +0.0003212719298, \n    +0.0003346491228, +0.0002811403509, +0.0001807017544, +0.0000535087719, \n    -0.0000469298246, -0.0000936403509, -0.0000936403509, -0.0000469298246, \n    +0.0000000000000, +0.0000267543860, +0.0000469298246, +0.0000802631579, \n    +0.0001739035088, +0.0003278508772, +0.0005287280702, +0.0006960526316, \n    +0.0007361842105, +0.0005890350877, +0.0002677631579, -0.0001405701754, \n    -0.0005019736842, -0.0006892543860, -0.0006157894737, -0.0003278508772, \n    +0.0000535087719, +0.0003815789474, +0.0005421052632, +0.0004951754386, \n    +0.0003078947368, +0.0001004385965, -0.0000067982456, +0.0000000000000, \n    +0.0001070175439, +0.0002208333333, +0.0002543859649, +0.0001673245614, \n    +0.0000067982456, -0.0001471491228, -0.0002410087719, -0.0002276315789, \n    -0.0001673245614, -0.0001070175439, -0.0001004385965, -0.0001471491228, \n    -0.0001807017544, -0.0001337719298, +0.0000267543860, +0.0002609649123, \n    +0.0004618421053, +0.0005085526316, +0.0003480263158, +0.0000000000000, \n    -0.0003815789474, -0.0006491228070, -0.0006892543860, -0.0004752192982, \n    -0.0001271929825, +0.0001940789474, +0.0003480263158, +0.0002743421053, \n    +0.0000201754386, -0.0002811403509, -0.0004951754386, -0.0005421052632, \n    -0.0004149122807, -0.0002008771930, +0.0000133771930, +0.0001539473684, \n    +0.0002008771930, +0.0001673245614, +0.0000936403509, +0.0000000000000, \n    -0.0000936403509, -0.0002008771930, -0.0002945175439, -0.0003614035088, \n    -0.0003614035088, -0.0002811403509, -0.0001271929825, +0.0000335526316, \n    +0.0001471491228, +0.0001605263158, +0.0000535087719, -0.0001203947368, \n    -0.0003078947368, -0.0004282894737, -0.0004416666667, -0.0003412280702, \n    -0.0001673245614, +0.0000201754386, +0.0001739035088, +0.0002609649123, \n    +0.0002743421053, +0.0002142543860, +0.0001203947368, +0.0000067982456, \n    -0.0000802631579, -0.0001203947368, -0.0001138157895, -0.0000603070175, \n    +0.0000067982456, +0.0000668859649, +0.0000870614035, +0.0000401315789, \n    -0.0000469298246, -0.0001739035088, -0.0002945175439, -0.0003679824561, \n    -0.0003614035088, -0.0002609649123, -0.0000668859649, +0.0001807017544, \n    +0.0004550438596, +0.0006692982456, +0.0007831140351, +0.0007495614035, \n    +0.0005890350877, +0.0003480263158, +0.0001004385965, -0.0000870614035, \n    -0.0001872807018, -0.0002008771930, -0.0001739035088, -0.0001405701754, \n    -0.0001337719298, -0.0001271929825, -0.0001138157895, -0.0000535087719, \n    +0.0000401315789, +0.0001539473684, +0.0002475877193, +0.0003010964912, \n    +0.0003212719298, +0.0003278508772, +0.0003747807018, +0.0004550438596, \n    +0.0005554824561, +0.0006157894737, +0.0005822368421, +0.0004416666667, \n    +0.0002142543860, -0.0000335526316, -0.0002410087719, -0.0003614035088, \n    -0.0004015350877, -0.0003815789474, -0.0003346491228, -0.0002811403509, \n    -0.0001872807018, -0.0000469298246, +0.0001405701754, +0.0003614035088, \n    +0.0005421052632, +0.0006291666667, +0.0005822368421, +0.0004550438596, \n    +0.0003010964912, +0.0001940789474, +0.0001605263158, +0.0001539473684, \n    +0.0000936403509, -0.0000802631579, -0.0003815789474, -0.0007361842105, \n    -0.0009837719298, -0.0009971491228, -0.0007293859649, -0.0002410087719, \n    +0.0002877192982, +0.0006960526316, +0.0008298245614, +0.0007160087719, \n    +0.0004350877193, +0.0001605263158, +0.0000000000000, -0.0000668859649, \n    -0.0001203947368, -0.0003010964912, -0.0006692982456, -0.0011578947368, \n    -0.0015861842105, -0.0017131578947, -0.0013787280702, -0.0006089912281, \n    +0.0003815789474, +0.0013050438596, +0.0018403508772, +0.0018403508772, \n    +0.0013317982456, +0.0005085526316, -0.0003747807018, -0.0011243421053, \n    -0.0016396929825, -0.0019208333333, -0.0019877192982, -0.0018671052632, \n    -0.0015392543860, -0.0009905701754, -0.0002677631579, +0.0004752192982, \n    +0.0010708333333, +0.0013519736842, +0.0012649122807, +0.0009368421053, \n    +0.0005421052632, +0.0002609649123, +0.0001271929825, +0.0000335526316, \n    -0.0002074561404, -0.0007561403509, -0.0015594298246, -0.0023690789474, \n    -0.0028309210526, -0.0026234649123, -0.0016664473684, -0.0001807017544, \n    +0.0013921052632, +0.0025432017544, +0.0029447368421, +0.0025096491228, \n    +0.0014723684211, +0.0002008771930, -0.0008366228070, -0.0014054824561, \n    -0.0013451754386, -0.0008366228070, -0.0000335526316, +0.0006491228070, \n    +0.0009638157895, +0.0009771929825, -0.0002208333333, -0.0003747807018, \n    -0.0018203947368, -0.0026234649123, -0.0020278508772, -0.0007427631579, \n    +0.0005620614035, +0.0019074561404, +0.0027774122807, +0.0033061403509, \n    +0.0032660087719, +0.0029513157895, +0.0025631578947, +0.0018804824561, \n    +0.0012515350877, +0.0000401315789, -0.0012114035088, -0.0025765350877, \n    -0.0033596491228, -0.0033260964912, -0.0022085526316, -0.0005085526316, \n    +0.0012714912281, +0.0023824561404, +0.0026234649123, +0.0020478070175, \n    +0.0013116228070, +0.0009234649123, +0.0012848684211, +0.0022017543860, \n    +0.0032993421053, +0.0040289473684, +0.0041962719298, +0.0037811403509, \n    +0.0030383771930, +0.0020210526316, +0.0007697368421, -0.0008901315789, \n    -0.0027171052632, -0.0043567982456, -0.0048721491228, -0.0037276315789, \n    -0.0013787280702, +0.0010907894737, +0.0026567982456, +0.0004618421053, \n    -0.0032725877193, -0.0044706140351, -0.0067861842105, -0.0001271929825, \n    +0.0271712719298, +0.0275728070175, -0.0296006578947, -0.0846192982456, \n    -0.0746208333333, -0.0039885964912, +0.0946513157895, +0.1792372807018, \n    +0.2192848684211, +0.1940410087719, +0.1078554824561, -0.0104469298246, \n    -0.1053458333333, -0.1385471491228, -0.1215015350877, -0.0807109649123, \n    -0.0396394736842, -0.0055480263158, +0.0227945175439, +0.0308320175439, \n    +0.0169989035088, +0.0033127192982, -0.0035870614035, +0.0024627192982, \n    +0.0147032894737, +0.0147100877193, +0.0049993421053, -0.0009100877193, \n    -0.0007361842105, +0.0010975877193, +0.0006826754386, -0.0076293859649, \n    -0.0168649122807, -0.0225267543860, -0.0285232456140, -0.0296407894737, \n    -0.0201508771930, -0.0106745614035, -0.0066991228070, -0.0105473684211, \n    -0.0177015350877, -0.0207063596491, -0.0222993421053, -0.0246482456140, \n    -0.0224396929825, -0.0147635964912, -0.0121870614035, -0.0134853070175, \n    -0.0078903508772, -0.0003679824561, -0.0027973684211, -0.0111361842105, \n    -0.0187789473684, -0.0254714912281, -0.0287574561404, -0.0222791666667, \n    -0.0128896929825, -0.0096839912281, -0.0100653508772, -0.0087804824561, \n    -0.0072679824561, -0.0048252192982, +0.0017535087719, +0.0089478070175, \n    +0.0076763157895, -0.0018002192982, -0.0115510964912, -0.0170791666667, \n    -0.0174739035088, -0.0151315789474, -0.0128962719298, -0.0119526315789, \n    -0.0100519736842, -0.0080576754386, -0.0094497807018, -0.0108820175439, \n    -0.0089410087719, -0.0087067982456, -0.0113035087719, -0.0136458333333, \n    -0.0124614035088, -0.0068396929825, +0.0027640350877, +0.0127826754386, \n    +0.0181098684211, +0.0168449561404, +0.0106410087719, +0.0020813596491, \n    -0.0060633771930, -0.0099315789474, -0.0070940789474, -0.0025765350877, \n    -0.0031120614035, -0.0061504385965, -0.0072747807018, -0.0056684210526, \n    -0.0032324561404, +0.0008565789474, +0.0069600877193, +0.0118991228070, \n    +0.0136725877193, +0.0125951754386, +0.0103934210526, +0.0097039473684, \n    +0.0108015350877, +0.0102394736842, +0.0058625000000, -0.0002677631579, \n    -0.0058024122807, -0.0105206140351, -0.0120866228070, -0.0085730263158, \n    -0.0012381578947, +0.0067392543860, +0.0123342105263, +0.0142280701754, \n    +0.0129030701754, +0.0103063596491, +0.0075155701754, +0.0038682017544, \n    +0.0003480263158, -0.0020679824561, -0.0028175438596, -0.0016462719298, \n    +0.0000133771930, +0.0010907894737, +0.0022552631579, +0.0034800438596, \n    +0.0043701754386, +0.0056282894737, +0.0083186403509, +0.0116916666667, \n    +0.0143353070175, +0.0156938596491, +0.0157271929825, +0.0141010964912, \n    +0.0116247807018, +0.0105339912281, +0.0110089912281, +0.0118188596491, \n    +0.0125282894737, +0.0120464912281, +0.0097175438596, +0.0064179824561, \n    +0.0037677631579, +0.0029245614035, +0.0033394736842, +0.0041962719298, \n    +0.0047515350877, +0.0046578947368, +0.0051532894737, +0.0066254385965, \n    +0.0073015350877, +0.0069000000000, +0.0068328947368, +0.0066589912281, \n    +0.0056217105263, +0.0046712719298, +0.0042497807018, +0.0036339912281, \n    +0.0029982456140, +0.0025631578947, +0.0028508771930, +0.0041157894737, \n    +0.0055682017544, +0.0060232456140, +0.0053339912281, +0.0038750000000, \n    +0.0027907894737, +0.0030182017544, +0.0045508771930, +0.0066188596491, \n    +0.0081513157895, +0.0085932017544, +0.0082719298246, +0.0078100877193, \n    +0.0078302631579, +0.0089478070175, +0.0107078947368, +0.0119326754386, \n    +0.0115712719298, +0.0098311403509, +0.0078234649123, +0.0072278508772, \n    +0.0083789473684, +0.0102864035088, +0.0114039473684, +0.0113703947368, \n    +0.0105741228070, +0.0096171052632, +0.0091083333333, +0.0087872807018, \n    +0.0075557017544, +0.0048118421053, +0.0009771929825, -0.0025298245614, \n    -0.0040622807018, -0.0036072368421, -0.0030048245614, -0.0032392543860, \n    -0.0034131578947, -0.0034063596491, -0.0035671052632, -0.0034265350877, \n    -0.0023690789474, -0.0007293859649, +0.0011175438596, +0.0030853070175, \n    +0.0047785087719, +0.0058223684211, +0.0063578947368, +0.0066456140351, \n    +0.0064114035088, +0.0054475877193, +0.0039885964912, +0.0027572368421, \n    +0.0024225877193, +0.0028175438596, +0.0035537280702, +0.0044037280702, \n    +0.0050796052632, +0.0056618421053, +0.0061905701754, +0.0059697368421, \n    +0.0053940789474, +0.0052133771930, +0.0047048245614, +0.0033864035088, \n    +0.0019475877193, +0.0004550438596, -0.0008500000000, -0.0009837719298, \n    +0.0000000000000, +0.0011041666667, +0.0014456140351, +0.0005085526316, \n    -0.0013853070175, -0.0032859649123, -0.0049122807018, -0.0056550438596, \n    -0.0048519736842, -0.0031120614035, -0.0012982456140, +0.0006291666667, \n    +0.0020010964912, +0.0016328947368, -0.0005554824561, -0.0033730263158, \n    -0.0052000000000, -0.0053405701754, -0.0042497807018, -0.0029245614035, \n    -0.0018002192982, -0.0010975877193, -0.0012381578947, -0.0024427631579, \n    -0.0038081140351, -0.0044304824561, -0.0040622807018, -0.0035403508772, \n    -0.0035201754386, -0.0036607456140, -0.0034131578947, -0.0032793859649, \n    -0.0036741228070, -0.0044370614035, -0.0051666666667, -0.0056015350877, \n    -0.0057622807018, -0.0066254385965, -0.0084526315789, -0.0099449561404, \n    -0.0099717105263, -0.0086600877193, -0.0061837719298, -0.0029513157895, \n    -0.0002743421053, +0.0004282894737, -0.0011041666667, -0.0035938596491, \n    -0.0057956140351, -0.0069600877193, -0.0065451754386, -0.0048118421053, \n    -0.0028375000000, -0.0012114035088, -0.0004885964912, -0.0004951754386, \n    -0.0010506578947, -0.0018872807018, -0.0025699561404, -0.0032526315789, \n    -0.0042765350877, -0.0050528508772, -0.0053004385965, -0.0054743421053, \n    -0.0056817982456, -0.0054743421053, -0.0047984649123, -0.0041157894737, \n    -0.0037745614035, -0.0038616228070, -0.0037879385965, -0.0030986842105, \n    -0.0022085526316, -0.0016263157895, -0.0014589912281, -0.0014589912281, \n    -0.0012515350877, -0.0012848684211, -0.0020745614035, -0.0031587719298, \n    -0.0037076754386, -0.0039686403509, -0.0044103070175, -0.0049456140351, \n    -0.0054208333333, -0.0058758771930, -0.0062506578947, -0.0064381578947, \n    -0.0062774122807, -0.0061771929825, -0.0067326754386, -0.0075155701754, \n    -0.0076092105263, -0.0070135964912, -0.0064984649123, -0.0062910087719, \n    -0.0063912280702, -0.0069333333333, -0.0077497807018, -0.0081379385965, \n    -0.0076629385965, -0.0065719298246, -0.0054342105263, -0.0045375000000, \n    -0.0040824561404, -0.0042364035088, -0.0048721491228, -0.0056951754386, \n    -0.0061236842105, -0.0055144736842, -0.0037142543860, -0.0014456140351, \n    +0.0000736842105, +0.0002208333333, -0.0005822368421, -0.0016061403509, \n    -0.0024493421053, -0.0027706140351, -0.0021015350877, -0.0003212719298, \n    +0.0018471491228, +0.0034399122807, +0.0036607456140, +0.0021684210526, \n    -0.0005219298246, -0.0033127192982, -0.0048385964912, -0.0045574561404, \n    -0.0037142543860, -0.0037811403509, -0.0044236842105, -0.0045910087719, \n    -0.0039752192982, -0.0027973684211, -0.0017333333333, -0.0015861842105, \n    -0.0023491228070, -0.0032324561404, -0.0038750000000, -0.0044438596491, \n    -0.0047984649123, -0.0046311403509, -0.0041092105263, -0.0036004385965, \n    -0.0031923245614, -0.0028778508772, -0.0024493421053, -0.0016730263158, \n    -0.0009100877193, -0.0005353070175, -0.0005287280702, -0.0009570175439, \n    -0.0015258771930, -0.0017668859649, -0.0015526315789, -0.0009771929825, \n    -0.0004951754386, -0.0007228070175, -0.0013250000000, -0.0017868421053, \n    -0.0022486842105, -0.0026032894737, -0.0024828947368, -0.0021015350877, \n    -0.0021015350877, -0.0026903508772, -0.0033929824561, -0.0035135964912, \n    -0.0029046052632, -0.0020879385965, -0.0015460526316, -0.0013653508772, \n    -0.0011578947368, -0.0006960526316, -0.0002609649123, -0.0001673245614, \n    -0.0001539473684, +0.0000469298246, +0.0002811403509, +0.0003679824561, \n    +0.0003144736842, +0.0003346491228, +0.0005890350877, +0.0004885964912, \n    -0.0003679824561, -0.0012649122807, -0.0013921052632, -0.0006758771930, \n    +0.0003010964912, +0.0009905701754, +0.0014589912281, +0.0016396929825, \n    +0.0012381578947, +0.0005287280702, +0.0002074561404, +0.0006625000000, \n    +0.0016798245614, +0.0028912280702, +0.0039083333333, +0.0044370614035, \n    +0.0043500000000, +0.0039686403509, +0.0038013157895, +0.0039017543860, \n    +0.0038348684211, +0.0034131578947, +0.0030585526316, +0.0030383771930, \n    +0.0032190789474, +0.0035135964912, +0.0038548245614, +0.0038414473684, \n    +0.0033997807018, +0.0029581140351, +0.0026300438596, +0.0023423245614, \n    +0.0018938596491, +0.0011175438596, +0.0003881578947, +0.0002475877193, \n    +0.0003480263158, +0.0002410087719, +0.0002008771930, +0.0005822368421, \n    +0.0011846491228, +0.0016932017544, +0.0020611842105, +0.0022151315789, \n    +0.0020879385965, +0.0019877192982, +0.0022620614035, +0.0028710526316, \n    +0.0034197368421, +0.0034131578947, +0.0030585526316, +0.0028912280702, \n    +0.0030986842105, +0.0036407894737, +0.0043434210526, +0.0048653508772, \n    +0.0049925438596, +0.0048587719298, +0.0047182017544, +0.0045173245614, \n    +0.0042429824561, +0.0042364035088, +0.0044304824561, +0.0043835526316, \n    +0.0039686403509, +0.0033864035088, +0.0027304824561, +0.0021282894737, \n    +0.0017868421053, +0.0018938596491, +0.0023557017544, +0.0029046052632, \n    +0.0032256578947, +0.0030986842105, +0.0027572368421, +0.0026971491228, \n    +0.0030449561404, +0.0035938596491, +0.0041493421053, +0.0045107456140, \n    +0.0044638157895, +0.0041760964912, +0.0040355263158, +0.0040423245614, \n    +0.0042096491228, +0.0045574561404, +0.0047449561404, +0.0044839912281, \n    +0.0040690789474, +0.0038750000000, +0.0042162280702, +0.0048320175439, \n    +0.0051732456140, +0.0050260964912, +0.0044839912281, +0.0035804824561, \n    +0.0025497807018, +0.0018872807018, +0.0017199561404, +0.0017267543860, \n    +0.0014923245614, +0.0012114035088, +0.0011912280702, +0.0013853070175, \n    +0.0015660087719, +0.0019140350877, +0.0023625000000, +0.0026502192982, \n    +0.0024962719298, +0.0016596491228, +0.0004350877193, -0.0005756578947, \n    -0.0008699561404, -0.0002074561404, +0.0010105263158, +0.0019407894737, \n    +0.0020679824561, +0.0014789473684, +0.0007896929825, +0.0004817982456, \n    +0.0006291666667, +0.0010173245614, +0.0013519736842, +0.0012381578947, \n    +0.0005756578947, -0.0001673245614, -0.0004817982456, -0.0003815789474, \n    -0.0001070175439, +0.0001940789474, +0.0002743421053, +0.0000603070175, \n    -0.0003346491228, -0.0006223684211, -0.0005756578947, -0.0001138157895, \n    +0.0004083333333, +0.0005287280702, +0.0000802631579, -0.0005486842105, \n    -0.0008967105263, -0.0007427631579, -0.0002074561404, +0.0004951754386, \n    +0.0012247807018, +0.0016798245614, +0.0015125000000, +0.0008967105263, \n    +0.0004282894737, +0.0003278508772, +0.0004618421053, +0.0008164473684, \n    +0.0012313596491, +0.0015460526316, +0.0018537280702, +0.0022552631579, \n    +0.0027171052632, +0.0029046052632, +0.0023625000000, +0.0012581140351, \n    +0.0002074561404, -0.0005486842105, -0.0010708333333, -0.0012515350877, \n    -0.0009638157895, -0.0002410087719, +0.0005287280702, +0.0009368421053, \n    +0.0008833333333, +0.0004618421053, -0.0002142543860, -0.0009168859649, \n    -0.0013986842105, -0.0017734649123, -0.0021214912281, -0.0022888157895, \n    -0.0020879385965, -0.0017333333333, -0.0014254385965, -0.0012916666667, \n    -0.0013050438596, -0.0013116228070, -0.0011510964912, -0.0007896929825, \n    -0.0003679824561, -0.0001807017544, -0.0004149122807, -0.0009570175439, \n    -0.0015728070175, -0.0019407894737, -0.0018070175439, -0.0012581140351, \n    -0.0006758771930, -0.0003010964912, -0.0002342105263, -0.0003144736842, \n    -0.0003546052632, -0.0004083333333, -0.0004817982456, -0.0002342105263, \n    +0.0003212719298, +0.0008565789474, +0.0009771929825, +0.0006223684211, \n    +0.0002543859649, +0.0003078947368, +0.0006559210526, +0.0009638157895, \n    +0.0010239035088, +0.0008298245614, +0.0004885964912, +0.0000936403509, \n    -0.0001539473684, -0.0002074561404, -0.0001004385965, +0.0000535087719, \n    +0.0001872807018, +0.0001539473684, -0.0000067982456, -0.0000802631579, \n    +0.0000936403509, +0.0003346491228, +0.0003144736842, -0.0001203947368, \n    -0.0008699561404, -0.0016396929825, -0.0021081140351, -0.0020478070175, \n    -0.0014923245614, -0.0006425438596, +0.0002208333333, +0.0008633771930, \n    +0.0010574561404, +0.0008500000000, +0.0005890350877, +0.0005756578947, \n    +0.0006960526316, +0.0007293859649, +0.0007561403509, +0.0009035087719, \n    +0.0010239035088, +0.0009302631579, +0.0006692982456, +0.0004484649123, \n    +0.0002276315789, -0.0000201754386, -0.0002276315789, -0.0003546052632, \n    -0.0004416666667, -0.0006223684211, -0.0009638157895, -0.0014120614035, \n    -0.0018537280702, -0.0021149122807, -0.0021883771930, -0.0021684210526, \n    -0.0021883771930, -0.0021482456140, -0.0019541666667, -0.0018203947368, \n    -0.0018002192982, -0.0015057017544, -0.0008232456140, -0.0001004385965, \n    +0.0003480263158, +0.0005486842105, +0.0004817982456, +0.0000870614035, \n    -0.0003679824561, -0.0004684210526, -0.0000335526316, +0.0007293859649, \n    +0.0014254385965, +0.0017936403509, +0.0016864035088, +0.0011778508772, \n    +0.0005219298246, +0.0000133771930, -0.0001940789474, -0.0001739035088, \n    -0.0000870614035, -0.0001673245614, -0.0005688596491, -0.0010440789474, \n    -0.0012447368421, -0.0011778508772, -0.0011377192982, -0.0012381578947, \n    -0.0013585526316, -0.0014857456140, -0.0015526315789, -0.0013184210526, \n    -0.0007896929825, -0.0002677631579, -0.0000668859649, -0.0003747807018, \n    -0.0010708333333, -0.0018671052632, -0.0024359649123, -0.0026769736842, \n    -0.0027105263158, -0.0026434210526, -0.0025230263158, -0.0023089912281, \n    -0.0019609649123, -0.0015526315789, -0.0011846491228, -0.0009905701754, \n    -0.0009771929825, -0.0010506578947, -0.0012381578947, -0.0014521929825, \n    -0.0015258771930, -0.0012848684211, -0.0007561403509, -0.0002877192982, \n    -0.0002208333333, -0.0006223684211, -0.0013317982456, -0.0020947368421, \n    -0.0025096491228, -0.0023625000000, -0.0019609649123, -0.0016061403509, \n    -0.0012447368421, -0.0009436403509, -0.0009436403509, -0.0011309210526, \n    -0.0012247807018, -0.0011644736842, -0.0011712719298, -0.0013116228070, \n    -0.0015326754386, -0.0017131578947, -0.0018269736842, -0.0018403508772, \n    -0.0015861842105, -0.0009638157895, -0.0001739035088, +0.0004083333333, \n    +0.0005756578947, +0.0003144736842, -0.0001271929825, -0.0005554824561, \n    -0.0007561403509, -0.0007228070175, -0.0006223684211, -0.0005688596491, \n    -0.0005085526316, -0.0005019736842, -0.0005688596491, -0.0006491228070, \n    -0.0007561403509, -0.0009302631579, -0.0011846491228, -0.0015190789474, \n    -0.0018471491228, -0.0020611842105, -0.0020611842105, -0.0018002192982, \n    -0.0013787280702, -0.0010372807018, -0.0008366228070, -0.0007964912281, \n    -0.0008967105263, -0.0009771929825, -0.0009436403509, -0.0009703947368, \n    -0.0010574561404, -0.0010372807018, -0.0008833333333, -0.0006960526316, \n    -0.0005353070175, -0.0004217105263, -0.0003949561404, -0.0004083333333, \n    -0.0004484649123, -0.0004817982456, -0.0002410087719, +0.0003412280702, \n    +0.0008699561404, +0.0009302631579, +0.0006157894737, +0.0003078947368, \n    +0.0000335526316, -0.0003679824561, -0.0006491228070, -0.0004951754386, \n    -0.0001471491228, +0.0001539473684, +0.0004350877193, +0.0007094298246, \n    +0.0009234649123, +0.0010774122807, +0.0011912280702, +0.0011309210526, \n    +0.0009168859649, +0.0005756578947, +0.0001203947368, -0.0002543859649, \n    -0.0003412280702, +0.0000201754386, +0.0007361842105, +0.0013116228070, \n    +0.0014120614035, +0.0011243421053, +0.0006892543860, +0.0003881578947, \n    +0.0003881578947, +0.0006223684211, +0.0008098684211, +0.0007697368421, \n    +0.0006491228070, +0.0005620614035, +0.0006024122807, +0.0008366228070, \n    +0.0011778508772, +0.0014655701754, +0.0016530701754, +0.0016664473684, \n    +0.0015190789474, +0.0012447368421, +0.0010173245614, +0.0008565789474, \n    +0.0006892543860, +0.0005019736842, +0.0002877192982, -0.0000201754386, \n    -0.0003346491228, -0.0003949561404, -0.0001070175439, +0.0003010964912, \n    +0.0005421052632, +0.0005756578947, +0.0004618421053, +0.0002945175439, \n    +0.0001807017544, +0.0001471491228, +0.0002609649123, +0.0006425438596, \n    +0.0011712719298, +0.0014120614035, +0.0011578947368, +0.0007228070175, \n    +0.0003881578947, +0.0003078947368, +0.0005890350877, +0.0010039473684, \n    +0.0012848684211, +0.0013585526316, +0.0013519736842, +0.0013519736842, \n    +0.0013184210526, +0.0011778508772, +0.0009638157895, +0.0007427631579, \n    +0.0005956140351, +0.0005085526316, +0.0004684210526, +0.0005287280702, \n    +0.0007293859649, +0.0010574561404, +0.0012515350877, +0.0010774122807, \n    +0.0007763157895, +0.0005822368421, +0.0004149122807, +0.0003881578947, \n    +0.0005956140351, +0.0008699561404, +0.0009638157895, +0.0007228070175, \n    +0.0003078947368, +0.0000401315789, -0.0001070175439, -0.0003480263158, \n    -0.0005756578947, -0.0005688596491, -0.0003078947368, +0.0000067982456, \n    +0.0001271929825, +0.0000067982456, -0.0001271929825, -0.0000335526316, \n    +0.0002142543860, +0.0003278508772, +0.0000267543860, -0.0006625000000, \n    -0.0014054824561, -0.0016864035088, -0.0014054824561, -0.0008565789474, \n    -0.0004282894737, -0.0004083333333, -0.0007495614035, -0.0010239035088, \n    -0.0008901315789, -0.0004416666667, +0.0000000000000, +0.0002074561404, \n    +0.0002342105263, +0.0002342105263, +0.0001739035088, +0.0000535087719, \n    -0.0000736842105, -0.0002543859649, -0.0004817982456, -0.0006223684211, \n    -0.0006692982456, -0.0006425438596, -0.0005486842105, -0.0004416666667, \n    -0.0004217105263, -0.0003480263158, -0.0002074561404, -0.0001337719298, \n    -0.0001337719298, -0.0003078947368, -0.0007697368421, -0.0011912280702, \n    -0.0012581140351, -0.0011243421053, -0.0008967105263, -0.0005756578947, \n    -0.0002609649123, +0.0000133771930, +0.0001337719298, +0.0000067982456, \n    -0.0000870614035, +0.0000736842105, +0.0004083333333, +0.0006960526316, \n    +0.0007495614035, +0.0006024122807, +0.0004484649123, +0.0004484649123, \n    +0.0006892543860, +0.0011041666667, +0.0015057017544, +0.0018471491228, \n    +0.0020478070175, +0.0018872807018, +0.0013519736842, +0.0008432017544, \n    +0.0006491228070, +0.0007427631579, +0.0008833333333, +0.0008232456140, \n    +0.0004817982456, -0.0001940789474, -0.0010239035088, -0.0014322368421, \n    -0.0010239035088, +0.0000201754386, +0.0012247807018, +0.0021081140351, \n    +0.0024160087719, +0.0020344298246, +0.0010173245614, -0.0003010964912, \n    -0.0014054824561, -0.0017467105263, -0.0013184210526, -0.0006157894737, \n    +0.0000000000000, +0.0004951754386, +0.0007763157895, +0.0007361842105, \n    +0.0004618421053, +0.0002276315789, +0.0001138157895, +0.0000000000000, \n    -0.0002475877193, -0.0006357456140, -0.0008432017544, -0.0005085526316, \n    +0.0001605263158, +0.0006089912281, +0.0006089912281, +0.0003949561404, \n    +0.0002342105263, +0.0000936403509, -0.0000870614035, -0.0001807017544, \n    -0.0000067982456, +0.0003010964912, +0.0006559210526, +0.0009771929825, \n    +0.0011578947368, +0.0011712719298, +0.0010842105263, +0.0008432017544, \n    +0.0005822368421, +0.0003346491228, +0.0000802631579, -0.0001337719298, \n    -0.0002677631579, -0.0003212719298, -0.0001807017544, +0.0000870614035, \n    +0.0003480263158, +0.0004684210526, +0.0005554824561, +0.0007228070175, \n    +0.0007361842105, +0.0005353070175, +0.0003881578947, +0.0002677631579, \n    -0.0001138157895, -0.0005620614035, -0.0006491228070, -0.0002743421053, \n    +0.0003480263158, +0.0008699561404, +0.0010239035088, +0.0007697368421, \n    +0.0001872807018, -0.0004149122807, -0.0007427631579, -0.0007561403509, \n    -0.0004416666667, -0.0000668859649, -0.0000469298246, -0.0003614035088, \n    -0.0006758771930, -0.0007896929825, -0.0005956140351, +0.0000000000000, \n    +0.0007361842105, +0.0012114035088, +0.0012714912281, +0.0008967105263, \n    +0.0001605263158, -0.0006491228070, -0.0011712719298, -0.0012247807018, \n    -0.0008232456140, -0.0002743421053, +0.0000335526316, +0.0001004385965, \n    +0.0001138157895, +0.0000603070175, -0.0001471491228, -0.0003346491228, \n    -0.0002208333333, +0.0000802631579, +0.0002410087719, +0.0000802631579, \n    -0.0002543859649, -0.0004149122807, -0.0001673245614, +0.0004015350877, \n    +0.0009502192982, +0.0011445175439, +0.0008967105263, +0.0002342105263, \n    -0.0005019736842, -0.0008901315789, -0.0008164473684, -0.0005153508772, \n    -0.0000936403509, +0.0002342105263, +0.0003212719298, +0.0001872807018, \n    +0.0000335526316, +0.0001337719298, +0.0005153508772, +0.0010173245614, \n    +0.0014655701754, +0.0015728070175, +0.0011175438596, +0.0002276315789, \n    -0.0008164473684, -0.0015660087719, -0.0016997807018, -0.0012714912281, \n    -0.0006357456140, +0.0000000000000, +0.0007361842105, +0.0015728070175, \n    +0.0021616228070, +0.0024160087719, +0.0022151315789, +0.0013184210526, \n    -0.0003010964912, -0.0022151315789, -0.0040289473684, -0.0054543859649, \n    -0.0061771929825, -0.0060164473684, -0.0050662280702, -0.0034532894737, \n    -0.0014655701754, +0.0004282894737, +0.0018739035088, +0.0025230263158, \n    +0.0023690789474, +0.0016932017544, +0.0008901315789, +0.0002743421053, \n    -0.0000535087719, -0.0001070175439, +0.0000401315789, +0.0002410087719, \n    +0.0003278508772, +0.0001138157895, -0.0005219298246, -0.0015125000000, \n    -0.0024962719298, -0.0030651315789, -0.0029780701754, -0.0020412280702, \n    -0.0004083333333, +0.0010975877193, +0.0015728070175, +0.0010774122807, \n    +0.0004885964912, +0.0003679824561, +0.0004550438596, +0.0004885964912, \n    +0.0006491228070, +0.0009638157895, +0.0011041666667, +0.0008232456140, \n    +0.0001940789474, -0.0004083333333, -0.0005956140351, -0.0003881578947, \n    -0.0001271929825, +0.0000201754386, +0.0000535087719, -0.0000936403509, \n    -0.0002074561404, +0.0001539473684, +0.0011846491228, +0.0024293859649, \n    +0.0029646929825, +0.0024627192982, +0.0013787280702, +0.0002142543860, \n    -0.0005756578947, -0.0007896929825, -0.0006559210526, -0.0004282894737, \n    -0.0003010964912, -0.0005219298246, -0.0009905701754, -0.0012247807018, \n    -0.0009638157895, -0.0002208333333, +0.0008767543860, +0.0020010964912, \n    +0.0027706140351, +0.0028844298246, +0.0022085526316, +0.0010372807018, \n    -0.0002543859649, -0.0013787280702, -0.0019743421053, -0.0019274122807, \n    -0.0014188596491, -0.0006559210526, +0.0000936403509, +0.0005890350877, \n    +0.0007361842105, +0.0006625000000, +0.0005085526316, +0.0002475877193, \n    -0.0002208333333, -0.0009771929825, -0.0018002192982, -0.0022686403509, \n    -0.0021883771930, -0.0015660087719, -0.0006357456140, +0.0001807017544, \n    +0.0007831140351, +0.0010708333333, +0.0008432017544, +0.0000936403509, \n    -0.0010440789474, -0.0021817982456, -0.0028107456140, -0.0027438596491, \n    -0.0020210526316, -0.0008500000000, +0.0002609649123, +0.0007160087719, \n    +0.0004083333333, -0.0002677631579, -0.0009570175439, -0.0014254385965, \n    -0.0015258771930, -0.0012782894737, -0.0007361842105, -0.0002074561404, \n    -0.0000267543860, -0.0001872807018, -0.0004618421053, -0.0006826754386, \n    -0.0005822368421, -0.0003144736842, -0.0000401315789, +0.0003881578947, \n    +0.0010307017544, +0.0016263157895, +0.0019877192982, +0.0020010964912, \n    +0.0016730263158, +0.0011846491228, +0.0006491228070, -0.0000668859649, \n    -0.0010173245614, -0.0019743421053, -0.0027105263158, -0.0030250000000, \n    -0.0026769736842, -0.0015190789474, +0.0000335526316, +0.0011980263158, \n    +0.0015927631579, +0.0015190789474, +0.0013116228070, +0.0010640350877, \n    +0.0009100877193, +0.0010574561404, +0.0014589912281, +0.0017734649123, \n    +0.0017535087719, +0.0013853070175, +0.0009638157895, +0.0006892543860, \n    +0.0005486842105, +0.0004618421053, +0.0002877192982, +0.0000401315789, \n    -0.0001070175439, -0.0001405701754, -0.0002008771930, -0.0002475877193, \n    -0.0001471491228, +0.0000133771930, +0.0000469298246, -0.0001138157895, \n    -0.0004752192982, -0.0007561403509, -0.0006157894737, -0.0000668859649, \n    +0.0005085526316, +0.0006826754386, +0.0002743421053, -0.0004282894737, \n    -0.0009703947368, -0.0010708333333, -0.0006157894737, +0.0001539473684, \n    +0.0007763157895, +0.0008432017544, +0.0004217105263, -0.0000335526316, \n    -0.0002410087719, -0.0003144736842, -0.0003212719298, -0.0001605263158, \n    +0.0000133771930, -0.0000335526316, -0.0002677631579, -0.0005890350877, \n    -0.0008901315789, -0.0010307017544, -0.0010173245614, -0.0009168859649, \n    -0.0008232456140, -0.0006024122807, -0.0000535087719, +0.0006692982456, \n    +0.0012179824561, +0.0014521929825, +0.0013921052632, +0.0011175438596, \n    +0.0006692982456, +0.0001807017544, -0.0001673245614, -0.0003346491228, \n    -0.0004083333333, -0.0004618421053, -0.0004885964912, -0.0004885964912, \n    -0.0005153508772, -0.0005085526316, -0.0003546052632, -0.0001539473684, \n    -0.0002208333333, -0.0005822368421, -0.0009502192982, -0.0010239035088, \n    -0.0007293859649, -0.0003679824561, -0.0002475877193, -0.0002410087719, \n    -0.0001539473684, +0.0000133771930, +0.0002543859649, +0.0005153508772, \n    +0.0007026315789, +0.0007629385965, +0.0006960526316, +0.0006024122807, \n    +0.0004217105263, -0.0000067982456, -0.0006024122807, -0.0009837719298, \n    -0.0008767543860, -0.0003546052632, +0.0003679824561, +0.0010907894737, \n    +0.0015190789474, +0.0014188596491, +0.0010372807018, +0.0006625000000, \n    +0.0003412280702, +0.0000802631579, -0.0001605263158, -0.0003815789474, \n    -0.0004282894737, -0.0001539473684, +0.0003747807018, +0.0010307017544, \n    +0.0016664473684, +0.0020478070175, +0.0020679824561, +0.0017600877193, \n    +0.0011578947368, +0.0003747807018, -0.0003144736842, -0.0007094298246, \n    -0.0007160087719, -0.0003815789474, +0.0000668859649, +0.0005219298246, \n    +0.0008366228070, +0.0008232456140, +0.0006024122807, +0.0004149122807, \n    +0.0003815789474, +0.0005620614035, +0.0008366228070, +0.0009703947368, \n    +0.0009168859649, +0.0007629385965, +0.0006491228070, +0.0007160087719, \n    +0.0009302631579, +0.0011175438596, +0.0011778508772, +0.0009837719298, \n    +0.0005287280702, +0.0000401315789, -0.0002342105263, -0.0001872807018, \n    +0.0001539473684, +0.0006692982456, +0.0010907894737, +0.0011578947368, \n    +0.0009168859649, +0.0005688596491, +0.0002074561404, -0.0000936403509, \n    -0.0002208333333, -0.0001138157895, +0.0001004385965, +0.0002342105263, \n    +0.0001673245614, -0.0000133771930, -0.0001739035088, -0.0001739035088, \n    -0.0000267543860, +0.0001070175439, +0.0001872807018, +0.0001605263158, \n    +0.0000201754386, -0.0001940789474, -0.0004752192982, -0.0006892543860, \n    -0.0006960526316, -0.0004752192982, -0.0001605263158, +0.0001070175439, \n    +0.0002543859649, +0.0001940789474, -0.0000668859649, -0.0004484649123, \n    -0.0007094298246, -0.0006425438596, -0.0004217105263, -0.0003078947368, \n    -0.0002276315789, -0.0000870614035, -0.0000133771930, -0.0001004385965, \n    -0.0003546052632, -0.0006089912281, -0.0006559210526, -0.0004282894737, \n    -0.0000067982456, +0.0003546052632, +0.0004484649123, +0.0003278508772, \n    +0.0001004385965, -0.0001739035088, -0.0003815789474, -0.0003679824561, \n    -0.0001271929825, +0.0002543859649, +0.0006692982456, +0.0010239035088, \n    +0.0011309210526, +0.0009302631579, +0.0006024122807, +0.0002811403509, \n    +0.0000000000000, -0.0002074561404, -0.0004015350877, -0.0005956140351, \n    -0.0007697368421, -0.0008767543860, -0.0007964912281, -0.0006024122807, \n    -0.0004752192982, -0.0005219298246, -0.0007561403509, -0.0011377192982, \n    -0.0015594298246, -0.0018471491228, -0.0018471491228, -0.0015660087719, \n    -0.0010574561404, -0.0004015350877, +0.0001138157895, +0.0002276315789, \n    -0.0000067982456, -0.0003412280702, -0.0005688596491, -0.0006357456140, \n    -0.0005956140351, -0.0005219298246, -0.0004684210526, -0.0004752192982, \n    -0.0004885964912, -0.0004416666667, -0.0004083333333, -0.0004618421053, \n    -0.0004752192982, -0.0004015350877, -0.0004149122807, -0.0005822368421, \n    -0.0007561403509, -0.0007629385965, -0.0006089912281, -0.0003614035088, \n    -0.0000936403509, -0.0000870614035, -0.0004083333333, -0.0007697368421, \n    -0.0009100877193, -0.0007561403509, -0.0004416666667, -0.0002877192982, \n    -0.0004149122807, -0.0006758771930, -0.0008967105263, -0.0010842105263, \n    -0.0011309210526, -0.0009234649123, -0.0004550438596, +0.0000736842105, \n    +0.0004618421053, +0.0005756578947, +0.0005421052632, +0.0004484649123, \n    +0.0003412280702, +0.0003546052632, +0.0005287280702, +0.0007896929825, \n    +0.0011309210526, +0.0014723684211, +0.0017065789474, +0.0017535087719, \n    +0.0015125000000, +0.0010173245614, +0.0005019736842, +0.0001539473684, \n    -0.0000067982456, -0.0000668859649, -0.0000603070175, +0.0000401315789, \n    +0.0002475877193, +0.0004752192982, +0.0006826754386, +0.0008633771930, \n    +0.0009168859649, +0.0007160087719, +0.0004015350877, +0.0002074561404, \n    +0.0002609649123, +0.0004416666667, +0.0005620614035, +0.0004885964912, \n    +0.0003346491228, +0.0002475877193, +0.0002276315789, +0.0001539473684, \n    +0.0000603070175, +0.0000936403509, +0.0003144736842, +0.0005756578947, \n    +0.0007697368421, +0.0008030701754, +0.0007094298246, +0.0006157894737, \n    +0.0006089912281, +0.0006157894737, +0.0005353070175, +0.0002945175439, \n    -0.0000736842105, -0.0004484649123, -0.0006425438596, -0.0005486842105, \n    -0.0002410087719, +0.0000870614035, +0.0003144736842, +0.0003412280702, \n    +0.0002410087719, +0.0001271929825, +0.0000736842105, +0.0001337719298, \n    +0.0002276315789, +0.0002945175439, +0.0004282894737, +0.0006291666667, \n    +0.0006960526316, +0.0005554824561, +0.0002142543860, -0.0002074561404, \n    -0.0005486842105, -0.0007160087719, -0.0007629385965, -0.0006357456140, \n    -0.0003278508772, +0.0000201754386, +0.0002743421053, +0.0004350877193, \n    +0.0004484649123, +0.0002410087719, -0.0001539473684, -0.0005287280702, \n    -0.0006625000000, -0.0005019736842, -0.0001271929825, +0.0003212719298, \n    +0.0005956140351, +0.0006157894737, +0.0005085526316, +0.0004817982456, \n    +0.0005486842105, +0.0006692982456, +0.0008565789474, +0.0010372807018, \n    +0.0011377192982, +0.0010907894737, +0.0008164473684, +0.0004282894737, \n    +0.0000870614035, -0.0002276315789, -0.0006024122807, -0.0009168859649, \n    -0.0010307017544, -0.0009368421053, -0.0007427631579, -0.0005486842105, \n    -0.0004282894737, -0.0003480263158, -0.0003480263158, -0.0004885964912, \n    -0.0006024122807, -0.0005287280702, -0.0004083333333, -0.0003546052632, \n    -0.0003480263158, -0.0003144736842, -0.0001405701754, +0.0000469298246, \n    +0.0000067982456, -0.0002342105263, -0.0004618421053, -0.0005421052632, \n    -0.0005019736842, -0.0004951754386, -0.0005890350877, -0.0006223684211, \n    -0.0005085526316, -0.0003346491228, -0.0001940789474, -0.0000469298246, \n    +0.0001539473684, +0.0002945175439, +0.0002208333333, +0.0000267543860, \n    -0.0001004385965, -0.0000401315789, +0.0001337719298, +0.0001807017544, \n    +0.0000267543860, -0.0001673245614, -0.0002677631579, -0.0002945175439, \n    -0.0002342105263, -0.0001807017544, -0.0002342105263, -0.0004350877193, \n    -0.0006157894737, -0.0006357456140, -0.0004484649123, -0.0003144736842, \n    -0.0003679824561, -0.0005153508772, -0.0005688596491, -0.0004618421053, \n    -0.0001872807018, +0.0000870614035, +0.0002609649123, +0.0003144736842, \n    +0.0003010964912, +0.0002475877193, +0.0002074561404, +0.0002074561404, \n    +0.0003212719298, +0.0005287280702, +0.0007763157895, +0.0009436403509, \n    +0.0009971491228, +0.0008901315789, +0.0005688596491, +0.0000736842105, \n    -0.0003747807018, -0.0006559210526, -0.0007896929825, -0.0007697368421, \n    -0.0006692982456, -0.0006223684211, -0.0006892543860, -0.0007697368421, \n    -0.0007228070175, -0.0005756578947, -0.0003949561404, -0.0003078947368, \n    -0.0004416666667, -0.0007228070175, -0.0008833333333, -0.0007561403509, \n    -0.0004618421053, -0.0001739035088, +0.0000469298246, +0.0002543859649, \n    +0.0003614035088, +0.0002609649123, -0.0000201754386, -0.0003010964912, \n    -0.0004484649123, -0.0004550438596, -0.0003949561404, -0.0003010964912, \n    -0.0002008771930, -0.0001203947368, -0.0001605263158, -0.0003412280702, \n    -0.0005890350877, -0.0006892543860, -0.0004885964912, -0.0000802631579, \n    +0.0003078947368, +0.0005421052632, +0.0005554824561, +0.0004015350877, \n    +0.0001203947368, -0.0001605263158, -0.0002609649123, -0.0000802631579, \n    +0.0003078947368, +0.0007561403509, +0.0010307017544, +0.0010640350877, \n    +0.0008833333333, +0.0006089912281, +0.0003815789474, +0.0002609649123, \n    +0.0001605263158, +0.0000469298246, -0.0000401315789, -0.0000267543860, \n    +0.0001271929825, +0.0004217105263, +0.0007896929825, +0.0011041666667, \n    +0.0012114035088, +0.0010975877193, +0.0008432017544, +0.0005085526316, \n    +0.0002142543860, +0.0001605263158, +0.0003815789474, +0.0007293859649, \n    +0.0009638157895, +0.0009905701754, +0.0008633771930, +0.0006223684211, \n    +0.0003546052632, +0.0001539473684, +0.0000335526316, -0.0000267543860, \n    -0.0000603070175, -0.0000870614035, -0.0000603070175, -0.0000201754386, \n    -0.0000133771930, -0.0000201754386, -0.0000603070175, -0.0001337719298, \n    -0.0001807017544, -0.0002074561404, -0.0002945175439, -0.0003881578947, \n    -0.0003815789474, -0.0001807017544, +0.0001539473684, +0.0004083333333, \n    +0.0004550438596, +0.0003881578947, +0.0002877192982, +0.0001605263158, \n    +0.0000603070175, -0.0000401315789, -0.0001605263158, -0.0002743421053, \n    -0.0004350877193, -0.0006223684211, -0.0007160087719, -0.0006291666667, \n    -0.0003881578947, -0.0001203947368, +0.0001070175439, +0.0003010964912, \n    +0.0004951754386, +0.0006425438596, +0.0006692982456, +0.0005085526316, \n    +0.0001872807018, -0.0001004385965, -0.0002008771930, -0.0001203947368, \n    +0.0000802631579, +0.0003546052632, +0.0006223684211, +0.0007831140351, \n    +0.0008098684211, +0.0007763157895, +0.0007293859649, +0.0006692982456, \n    +0.0005421052632, +0.0004083333333, +0.0003144736842, +0.0002008771930, \n    +0.0000469298246, -0.0001203947368, -0.0002877192982, -0.0003815789474, \n    -0.0003412280702, -0.0002543859649, -0.0002543859649, -0.0003480263158, \n    -0.0004817982456, -0.0006024122807, -0.0006559210526, -0.0006892543860, \n    -0.0007094298246, -0.0006223684211, -0.0004416666667, -0.0003212719298, \n    -0.0003546052632, -0.0004885964912, -0.0006491228070, -0.0007964912281, \n    -0.0008901315789, -0.0008432017544, -0.0005822368421, -0.0002074561404, \n    +0.0000469298246, +0.0000736842105, -0.0001070175439, -0.0003747807018, \n    -0.0006625000000, -0.0008298245614, -0.0006892543860, -0.0002945175439, \n    +0.0000802631579, +0.0002142543860, +0.0000535087719, -0.0001940789474, \n    -0.0003747807018, -0.0004550438596, -0.0004217105263, -0.0002342105263, \n    +0.0000401315789, +0.0003278508772, +0.0005019736842, +0.0004752192982, \n    +0.0003614035088, +0.0002877192982, +0.0002008771930, +0.0000469298246, \n    -0.0000802631579, -0.0001337719298, -0.0000936403509, -0.0000401315789, \n    +0.0000000000000, +0.0000267543860, +0.0000000000000, -0.0000936403509, \n    -0.0001539473684, -0.0001070175439, +0.0000668859649, +0.0003412280702, \n    +0.0005956140351, +0.0006758771930, +0.0005019736842, +0.0001203947368, \n    -0.0002677631579, -0.0005421052632, -0.0006826754386, -0.0007293859649, \n    -0.0006758771930, -0.0005956140351, -0.0005085526316, -0.0004083333333, \n    -0.0002677631579, -0.0001138157895, -0.0000401315789, -0.0000668859649, \n    -0.0001070175439, -0.0001203947368, -0.0000535087719, +0.0000401315789, \n    +0.0001004385965, +0.0000802631579, -0.0000603070175, -0.0002811403509, \n    -0.0003679824561, -0.0002677631579, -0.0001203947368, +0.0000000000000, \n    +0.0001070175439, +0.0002008771930, +0.0001807017544, +0.0000469298246, \n    -0.0000603070175, -0.0000870614035, -0.0001138157895, -0.0001405701754, \n    -0.0000802631579, +0.0000668859649, +0.0001739035088, +0.0001004385965, \n    -0.0000870614035, -0.0002475877193, -0.0003278508772, -0.0003010964912, \n    -0.0001605263158, +0.0000000000000, +0.0000267543860, -0.0000736842105, \n    -0.0002208333333, -0.0003412280702, -0.0003144736842, -0.0000870614035, \n    +0.0002008771930, +0.0003815789474, +0.0004752192982, +0.0005019736842, \n    +0.0005287280702, +0.0006291666667, +0.0006960526316, +0.0006223684211, \n    +0.0004618421053, +0.0002743421053, +0.0000201754386, -0.0002677631579, \n    -0.0005085526316, -0.0005153508772, -0.0003212719298, -0.0000936403509, \n    +0.0000201754386, +0.0000603070175, +0.0000870614035, +0.0001203947368, \n    +0.0001070175439, +0.0000802631579, +0.0001004385965, +0.0001605263158, \n    +0.0002276315789, +0.0002677631579, +0.0002074561404, +0.0001138157895, \n    +0.0000936403509, +0.0001872807018, +0.0002945175439, +0.0002609649123, \n    +0.0000401315789, -0.0002342105263, -0.0004752192982, -0.0005756578947, \n    -0.0004149122807, -0.0000335526316, +0.0003480263158, +0.0005688596491, \n    +0.0006223684211, +0.0006625000000, +0.0007361842105, +0.0007763157895, \n    +0.0006960526316, +0.0005019736842, +0.0002609649123, +0.0000335526316, \n    -0.0001405701754, -0.0002208333333, -0.0001203947368, +0.0001271929825, \n    +0.0002945175439, +0.0002142543860, +0.0000335526316, -0.0000802631579, \n    -0.0001004385965, +0.0000469298246, +0.0003010964912, +0.0005153508772, \n    +0.0006559210526, +0.0006559210526, +0.0004817982456, +0.0002008771930, \n    -0.0000603070175, -0.0002743421053, -0.0004350877193, -0.0005153508772, \n    -0.0004684210526, -0.0003747807018, -0.0002743421053, -0.0001337719298, \n    +0.0000335526316, +0.0001739035088, +0.0002945175439, +0.0003881578947, \n    +0.0004282894737, +0.0004282894737, +0.0004217105263, +0.0003278508772, \n    +0.0001070175439, -0.0000936403509, -0.0001471491228, -0.0000736842105, \n    +0.0000335526316, +0.0001539473684, +0.0003278508772, +0.0004684210526, \n    +0.0003815789474, +0.0000936403509, -0.0000802631579, +0.0000201754386, \n    +0.0002276315789, +0.0002811403509, +0.0002008771930, +0.0002208333333, \n    +0.0003546052632, +0.0004149122807, +0.0004149122807, +0.0004752192982, \n    +0.0005688596491, +0.0004752192982, +0.0000469298246, -0.0004550438596, \n    -0.0006223684211, -0.0004217105263, -0.0000936403509, +0.0001807017544, \n    +0.0003614035088, +0.0004015350877, +0.0003144736842, +0.0001203947368, \n    -0.0000870614035, -0.0002008771930, -0.0001271929825, +0.0001070175439, \n    +0.0004484649123, +0.0007561403509, +0.0007964912281, +0.0004684210526, \n    -0.0000469298246, -0.0004416666667, -0.0004951754386, -0.0002342105263, \n    +0.0001138157895, +0.0003815789474, +0.0003881578947, +0.0000870614035, \n    -0.0003679824561, -0.0007094298246, -0.0007427631579, -0.0004684210526, \n    -0.0000335526316, +0.0004015350877, +0.0007361842105, +0.0008967105263, \n    +0.0007361842105, +0.0002677631579, -0.0002410087719, -0.0004885964912, \n    -0.0005153508772, -0.0004684210526, -0.0003480263158, -0.0001471491228, \n    -0.0000201754386, -0.0000603070175, -0.0001337719298, -0.0000067982456, \n    +0.0003614035088, +0.0006625000000, +0.0006357456140, +0.0005085526316, \n    +0.0003881578947, +0.0001940789474, +0.0000133771930, -0.0000133771930, \n    +0.0000133771930, -0.0000067982456, -0.0002276315789, -0.0005219298246, \n    -0.0005421052632, -0.0001940789474, +0.0002743421053, +0.0006826754386, \n    +0.0011175438596, +0.0016864035088, +0.0020344298246, +0.0015793859649, \n    +0.0002475877193, -0.0013653508772, -0.0025631578947, -0.0028844298246, \n    -0.0022151315789, -0.0008030701754, +0.0008232456140, +0.0019809210526, \n    +0.0021015350877, +0.0011912280702, -0.0002008771930, -0.0013853070175, \n    -0.0018403508772, -0.0014991228070, -0.0005620614035, +0.0004817982456, \n    +0.0011445175439, +0.0012714912281, +0.0012046052632, +0.0011445175439, \n    +0.0009638157895, +0.0004817982456, -0.0002677631579, -0.0010506578947, \n    -0.0014723684211, -0.0013787280702, -0.0008500000000, -0.0000668859649, \n    +0.0007293859649, +0.0011712719298, +0.0010440789474, +0.0004752192982, \n    -0.0002677631579, -0.0009100877193, -0.0011644736842, -0.0009035087719, \n    -0.0002142543860, +0.0005085526316, +0.0008699561404, +0.0007361842105, \n    +0.0003010964912, -0.0001405701754, -0.0004350877193, -0.0004951754386, \n    -0.0003346491228, -0.0002208333333, -0.0004484649123, -0.0009168859649, \n    -0.0011980263158, -0.0010105263158, -0.0004752192982, +0.0001739035088, \n    +0.0008633771930, +0.0014589912281, +0.0016530701754, +0.0013250000000, \n    +0.0007094298246, +0.0000936403509, -0.0004217105263, -0.0006826754386, \n    -0.0005353070175, -0.0001337719298, +0.0001070175439, -0.0000267543860, \n    -0.0004752192982, -0.0009703947368, -0.0012782894737, -0.0012782894737, \n    -0.0009368421053, -0.0003078947368, +0.0003078947368, +0.0005890350877, \n    +0.0004015350877, -0.0001337719298, -0.0007427631579, -0.0010774122807, \n    -0.0009638157895, -0.0005085526316, -0.0000335526316, +0.0002008771930, \n    +0.0001337719298, -0.0000870614035, -0.0002811403509, -0.0003346491228, \n    -0.0002543859649, -0.0001673245614, -0.0002074561404, -0.0003212719298, \n    -0.0003881578947, -0.0002743421053, -0.0000201754386, +0.0001471491228, \n    +0.0001605263158, +0.0001337719298, +0.0001807017544, +0.0002410087719, \n    +0.0002208333333, +0.0000201754386, -0.0002945175439, -0.0004752192982, \n    -0.0003278508772, -0.0000067982456, +0.0002475877193, +0.0003815789474, \n    +0.0004350877193, +0.0003546052632, +0.0001271929825, -0.0001203947368, \n    -0.0002945175439, -0.0004684210526, -0.0007094298246, -0.0009368421053, \n    -0.0009570175439, -0.0007094298246, -0.0003546052632, -0.0000603070175, \n    +0.0000936403509, +0.0000267543860, -0.0003078947368, -0.0008098684211, \n    -0.0012381578947, -0.0013317982456, -0.0010506578947, -0.0006625000000, \n    -0.0004015350877, -0.0002543859649, -0.0001138157895, -0.0000067982456, \n    +0.0000267543860, +0.0000335526316, -0.0000469298246, -0.0002208333333, \n    -0.0003278508772, -0.0003278508772, -0.0003412280702, -0.0004550438596, \n    -0.0006024122807, -0.0005620614035, -0.0001872807018, +0.0003546052632, \n    +0.0007561403509, +0.0007629385965, +0.0003614035088, -0.0002475877193, \n    -0.0008098684211, -0.0011309210526, -0.0011578947368, -0.0008901315789, \n    -0.0003815789474, +0.0002276315789, +0.0007094298246, +0.0009035087719, \n    +0.0007896929825, +0.0004618421053, +0.0000870614035, -0.0001271929825, \n    -0.0001337719298, -0.0000469298246, -0.0000736842105, -0.0002811403509, \n    -0.0005153508772, -0.0005620614035, -0.0004015350877, -0.0001872807018, \n    -0.0000535087719, +0.0000067982456, +0.0000603070175, +0.0001138157895, \n    +0.0001539473684, +0.0002276315789, +0.0003546052632, +0.0005153508772, \n    +0.0006024122807, +0.0005688596491, +0.0004416666667, +0.0002543859649, \n    +0.0000603070175, +0.0000133771930, +0.0000936403509, +0.0001940789474, \n    +0.0001872807018, +0.0000067982456, -0.0002743421053, -0.0004951754386, \n    -0.0005353070175, -0.0004217105263, -0.0003144736842, -0.0002543859649, \n    -0.0001940789474, -0.0001605263158, -0.0002410087719, -0.0004618421053, \n    -0.0006425438596, -0.0005956140351, -0.0003881578947, -0.0001807017544, \n    -0.0000401315789, +0.0000736842105, +0.0002208333333, +0.0002677631579, \n    +0.0001673245614, +0.0000469298246, +0.0000335526316, +0.0001471491228, \n    +0.0003747807018, +0.0006357456140, +0.0009771929825, +0.0013451754386, \n    +0.0016129385965, +0.0016730263158, +0.0014589912281, +0.0009771929825, \n    +0.0004484649123, +0.0001271929825, +0.0000802631579, +0.0002543859649, \n    +0.0005756578947, +0.0009436403509, +0.0012046052632, +0.0012313596491, \n    +0.0010708333333, +0.0008500000000, +0.0005421052632, +0.0001471491228, \n    -0.0002008771930, -0.0003881578947, -0.0003815789474, -0.0002677631579, \n    -0.0001271929825, +0.0000401315789, +0.0002074561404, +0.0003546052632, \n    +0.0004951754386, +0.0006223684211, +0.0006960526316, +0.0007293859649, \n    +0.0006960526316, +0.0005822368421, +0.0003278508772, -0.0000668859649, \n    -0.0005287280702, -0.0009100877193, -0.0010574561404, -0.0009502192982, \n    -0.0007629385965, -0.0006758771930, -0.0007228070175, -0.0008164473684, \n    -0.0008901315789, -0.0008967105263, -0.0008098684211, -0.0006157894737, \n    -0.0003346491228, +0.0000000000000, +0.0003480263158, +0.0005756578947, \n    +0.0005554824561, +0.0003346491228, +0.0001004385965, +0.0000535087719, \n    +0.0001940789474, +0.0003212719298, +0.0002208333333, -0.0001004385965, \n    -0.0004951754386, -0.0007561403509, -0.0008298245614, -0.0007561403509, \n    -0.0005890350877, -0.0003747807018, -0.0001138157895, +0.0001337719298, \n    +0.0003278508772, +0.0004350877193, +0.0004618421053, +0.0004282894737, \n    +0.0003278508772, +0.0002074561404, +0.0001138157895, +0.0000267543860, \n    -0.0001004385965, -0.0003144736842, -0.0005153508772, -0.0006157894737, \n    -0.0006692982456, -0.0007160087719, -0.0007026315789, -0.0006089912281, \n    -0.0005019736842, -0.0004015350877, -0.0002543859649, -0.0000936403509, \n    +0.0000000000000, -0.0000603070175, -0.0002208333333, -0.0003747807018, \n    -0.0004752192982, -0.0004885964912, -0.0003679824561, -0.0001605263158, \n    +0.0000668859649, +0.0002543859649, +0.0004083333333, +0.0006089912281, \n    +0.0008500000000, +0.0010239035088, +0.0010440789474, +0.0009302631579, \n    +0.0008232456140, +0.0007896929825, +0.0007763157895, +0.0007495614035, \n    +0.0007561403509, +0.0007763157895, +0.0006892543860, +0.0004484649123, \n    +0.0001070175439, -0.0001070175439, -0.0000335526316, +0.0002609649123, \n    +0.0004885964912, +0.0004752192982, +0.0003078947368, +0.0000870614035, \n    -0.0001405701754, -0.0002811403509, -0.0003010964912, -0.0002743421053, \n    -0.0002945175439, -0.0003010964912, -0.0002543859649, -0.0002142543860, \n    -0.0002609649123, -0.0003212719298, -0.0002677631579, -0.0000668859649, \n    +0.0002142543860, +0.0004282894737, +0.0004752192982, +0.0003480263158, \n    +0.0001203947368, -0.0000535087719, -0.0001405701754, -0.0001539473684, \n    -0.0001004385965, +0.0000067982456, +0.0001004385965, +0.0001471491228, \n    +0.0001337719298, +0.0000335526316, -0.0001138157895, -0.0002276315789, \n    -0.0002743421053, -0.0002609649123, -0.0001138157895, +0.0002475877193, \n    +0.0007629385965, +0.0011846491228, +0.0013050438596, +0.0010842105263, \n    +0.0006758771930, +0.0003010964912, +0.0001739035088, +0.0003278508772, \n    +0.0005890350877, +0.0007896929825, +0.0008833333333, +0.0008565789474, \n    +0.0007361842105, +0.0005421052632, +0.0003212719298, +0.0001203947368, \n    +0.0000067982456, +0.0000469298246, +0.0002475877193, +0.0004885964912, \n    +0.0006357456140, +0.0005890350877, +0.0003679824561, +0.0000469298246, \n    -0.0002410087719, -0.0003747807018, -0.0002609649123, -0.0000067982456, \n    +0.0001807017544, +0.0001807017544, -0.0000401315789, -0.0004350877193, \n    -0.0008164473684, -0.0009703947368, -0.0008098684211, -0.0004550438596, \n    -0.0001337719298, -0.0000133771930, -0.0001471491228, -0.0004817982456, \n    -0.0008366228070, -0.0009905701754, -0.0008901315789, -0.0006291666667, \n    -0.0003614035088, -0.0002342105263, -0.0002342105263, -0.0002475877193, \n    -0.0002074561404, -0.0000668859649, +0.0001471491228, +0.0003480263158, \n    +0.0004817982456, +0.0005688596491, +0.0005421052632, +0.0003614035088, \n    +0.0001004385965, -0.0001004385965, -0.0001337719298, +0.0000267543860, \n    +0.0002543859649, +0.0004149122807, +0.0004752192982, +0.0004684210526, \n    +0.0004350877193, +0.0003881578947, +0.0002811403509, +0.0001539473684, \n    -0.0000067982456, -0.0001807017544, -0.0002743421053, -0.0001405701754, \n    +0.0002008771930, +0.0005956140351, +0.0008500000000, +0.0008901315789, \n    +0.0007293859649, +0.0004684210526, +0.0001872807018, -0.0000267543860, \n    -0.0001271929825, -0.0001271929825, -0.0001138157895, -0.0001605263158, \n    -0.0003212719298, -0.0005085526316, -0.0005353070175, -0.0003278508772, \n    +0.0000000000000, +0.0002677631579, +0.0003346491228, +0.0001739035088, \n    -0.0001807017544, -0.0005756578947, -0.0007964912281, -0.0007629385965, \n    -0.0005822368421, -0.0004217105263, -0.0003747807018, -0.0004149122807, \n    -0.0004350877193, -0.0003815789474, -0.0002475877193, -0.0000736842105, \n    +0.0000736842105, +0.0001070175439, -0.0000668859649, -0.0003949561404, \n    -0.0006758771930, -0.0007361842105, -0.0004951754386, -0.0000802631579, \n    +0.0003010964912, +0.0004282894737, +0.0002008771930, -0.0002609649123, \n    -0.0006425438596, -0.0007427631579, -0.0005890350877, -0.0002945175439, \n    +0.0000000000000, +0.0001872807018, +0.0001872807018, +0.0000936403509, \n    +0.0000335526316, +0.0000802631579, +0.0001471491228, +0.0001539473684, \n    +0.0001004385965, +0.0000535087719, +0.0001004385965, +0.0001940789474, \n    +0.0002410087719, +0.0002208333333, +0.0001739035088, +0.0000603070175, \n    -0.0001203947368, -0.0003078947368, -0.0004350877193, -0.0004350877193, \n    -0.0003144736842, -0.0001673245614, -0.0000603070175, -0.0000133771930, \n    -0.0000802631579, -0.0002410087719, -0.0004350877193, -0.0005219298246, \n    -0.0004484649123, -0.0002677631579, -0.0000870614035, +0.0000267543860, \n    +0.0000668859649, +0.0000535087719, +0.0000000000000, -0.0001539473684, \n    -0.0003815789474, -0.0005554824561, -0.0005688596491, -0.0004083333333, \n    -0.0001539473684, +0.0001203947368, +0.0003747807018, +0.0005554824561, \n    +0.0005756578947, +0.0004484649123, +0.0002475877193, +0.0000668859649, \n    -0.0000535087719, -0.0000870614035, -0.0000133771930, +0.0001004385965, \n    +0.0002008771930, +0.0001872807018, +0.0000668859649, -0.0000201754386, \n    +0.0000000000000, +0.0000802631579, +0.0001739035088, +0.0002811403509, \n    +0.0003747807018, +0.0003881578947, +0.0002811403509, +0.0001004385965, \n    -0.0000668859649, -0.0002142543860, -0.0002811403509, -0.0002609649123, \n    -0.0001940789474, -0.0001004385965, -0.0000401315789, -0.0001138157895, \n    -0.0003010964912, -0.0004618421053, -0.0005353070175, -0.0005421052632, \n    -0.0004817982456, -0.0003412280702, -0.0001004385965, +0.0001405701754, \n    +0.0003078947368, +0.0003881578947, +0.0003815789474, +0.0002877192982, \n    +0.0001004385965, -0.0000870614035, -0.0001673245614, -0.0001070175439, \n    -0.0000067982456, -0.0000067982456, -0.0001471491228, -0.0003546052632, \n    -0.0004885964912, -0.0005019736842, -0.0004083333333, -0.0002410087719, \n    -0.0000335526316, +0.0001271929825, +0.0002142543860, +0.0002276315789, \n    +0.0001539473684, -0.0000335526316, -0.0002945175439, -0.0004885964912, \n    -0.0005287280702, -0.0003278508772, +0.0000401315789, +0.0003815789474, \n    +0.0004684210526, +0.0002877192982, -0.0000201754386, -0.0002945175439, \n    -0.0004484649123, -0.0004350877193, -0.0003078947368, -0.0001405701754, \n    -0.0000469298246, -0.0000535087719, -0.0001337719298, -0.0002410087719, \n    -0.0002743421053, -0.0001605263158, +0.0000267543860, +0.0001940789474, \n    +0.0002609649123, +0.0001940789474, +0.0000469298246, -0.0000802631579, \n    -0.0001337719298, -0.0000870614035, +0.0000535087719, +0.0002475877193, \n    +0.0004217105263, +0.0005287280702, +0.0005219298246, +0.0003949561404, \n    +0.0002276315789, +0.0000936403509, +0.0000133771930, +0.0000000000000, \n    +0.0000267543860, +0.0000603070175, +0.0000668859649, +0.0000603070175, \n    +0.0000401315789, +0.0000067982456, +0.0000067982456, +0.0000736842105, \n    +0.0002410087719, +0.0004416666667, +0.0006425438596, +0.0007763157895, \n    +0.0008164473684, +0.0007495614035, +0.0005822368421, +0.0002945175439, \n    -0.0000201754386, -0.0002142543860, -0.0002074561404, -0.0001004385965, \n    -0.0000067982456, +0.0000469298246, +0.0000870614035, +0.0001203947368, \n    +0.0001271929825, +0.0001070175439, +0.0001203947368, +0.0001539473684, \n    +0.0001807017544, +0.0002142543860, +0.0002811403509, +0.0003212719298, \n    +0.0003346491228, +0.0003212719298, +0.0003010964912, +0.0002811403509, \n    +0.0002677631579, +0.0002276315789, +0.0001673245614, +0.0001337719298, \n    +0.0001405701754, +0.0001605263158, +0.0001673245614, +0.0001337719298, \n    +0.0000802631579, +0.0000201754386, -0.0000335526316, -0.0000668859649, \n    -0.0000736842105, -0.0000736842105, -0.0001070175439, -0.0001471491228, \n    -0.0001271929825, -0.0000603070175, -0.0000469298246, -0.0000736842105, \n    -0.0000535087719, +0.0000067982456, +0.0000335526316, -0.0000335526316, \n    -0.0001605263158, -0.0002811403509, -0.0003815789474, -0.0004149122807, \n    -0.0003412280702, -0.0001605263158, +0.0000603070175, +0.0002342105263, \n    +0.0003614035088, +0.0004282894737, +0.0003747807018, +0.0001739035088, \n    -0.0000736842105, -0.0002677631579, -0.0003412280702, -0.0003346491228, \n    -0.0002677631579, -0.0001539473684, +0.0000401315789, +0.0002945175439, \n    +0.0005019736842, +0.0005620614035, +0.0004618421053, +0.0002609649123, \n    +0.0000535087719, -0.0001070175439, -0.0001673245614, -0.0000936403509, \n    +0.0000936403509, +0.0003278508772, +0.0005153508772, +0.0006024122807, \n    +0.0005620614035, +0.0004217105263, +0.0002074561404, -0.0000067982456, \n    -0.0001070175439, -0.0000603070175, +0.0000133771930, +0.0000267543860, \n    -0.0000267543860, -0.0000936403509, -0.0001138157895, -0.0000870614035, \n    -0.0000802631579, -0.0001271929825, -0.0001739035088, -0.0001673245614, \n    -0.0001203947368, -0.0000936403509, -0.0001271929825, -0.0001807017544, \n    -0.0002008771930, -0.0001739035088, -0.0001405701754, -0.0001203947368, \n    -0.0000936403509, -0.0000133771930, +0.0001673245614, +0.0003546052632, \n    +0.0004217105263, +0.0003078947368, +0.0000736842105, -0.0001872807018, \n    -0.0003949561404, -0.0004817982456, -0.0004282894737, -0.0002475877193, \n    -0.0000067982456, +0.0002208333333, +0.0003949561404, +0.0005019736842, \n    +0.0004885964912, +0.0003747807018, +0.0002208333333, +0.0000603070175, \n    -0.0000802631579, -0.0002074561404, -0.0002743421053, -0.0002945175439, \n    -0.0003144736842, -0.0003278508772, -0.0003010964912, -0.0002008771930, \n    -0.0000936403509, -0.0000401315789, -0.0000335526316, -0.0000802631579, \n    -0.0001807017544, -0.0002877192982, -0.0003278508772, -0.0002475877193, \n    -0.0000133771930, +0.0003010964912, +0.0005822368421, +0.0007361842105, \n    +0.0006892543860, +0.0003881578947, -0.0000335526316, -0.0003614035088, \n    -0.0004484649123, -0.0003480263158, -0.0001605263158, +0.0000469298246, \n    +0.0002342105263, +0.0003144736842, +0.0002410087719, +0.0000469298246, \n    -0.0001739035088, -0.0003212719298, -0.0003679824561, -0.0003412280702, \n    -0.0002609649123, -0.0001405701754, -0.0000936403509, -0.0001605263158, \n    -0.0002543859649, -0.0002609649123, -0.0001138157895, +0.0001070175439, \n    +0.0003078947368, +0.0003747807018, +0.0002811403509, +0.0000668859649, \n    -0.0001807017544, -0.0004282894737, -0.0006425438596, -0.0007964912281, \n    -0.0007964912281, -0.0006157894737, -0.0003144736842, +0.0000000000000, \n    +0.0002677631579, +0.0004550438596, +0.0005153508772, +0.0004484649123, \n    +0.0003346491228, +0.0002276315789, +0.0001203947368, +0.0000000000000, \n    -0.0001605263158, -0.0002677631579, -0.0002811403509, -0.0002008771930, \n    -0.0000335526316, +0.0002008771930, +0.0004217105263, +0.0005688596491, \n    +0.0006089912281, +0.0005219298246, +0.0003412280702, +0.0001405701754, \n    +0.0000000000000, -0.0000201754386, +0.0000535087719, +0.0002276315789, \n    +0.0004282894737, +0.0005353070175, +0.0004885964912, +0.0002877192982, \n    +0.0000067982456, -0.0002342105263, -0.0003679824561, -0.0003815789474, \n    -0.0002811403509, -0.0001070175439, +0.0000469298246, +0.0000936403509, \n    +0.0000335526316, -0.0000535087719, -0.0001070175439, -0.0000802631579, \n    +0.0000133771930, +0.0000936403509, +0.0000870614035, -0.0000133771930, \n    -0.0001872807018, -0.0003949561404, -0.0005486842105, -0.0005688596491, \n    -0.0004885964912, -0.0004282894737, -0.0004282894737, -0.0004752192982, \n    -0.0005353070175, -0.0006024122807, -0.0006758771930, -0.0007026315789, \n    -0.0006291666667, -0.0004416666667, -0.0002208333333, -0.0000469298246, \n    +0.0000000000000, -0.0000535087719, -0.0001605263158, -0.0002342105263, \n    -0.0002475877193, -0.0001673245614, +0.0000000000000, +0.0001337719298, \n    +0.0001605263158, +0.0000736842105, -0.0000469298246, -0.0001739035088, \n    -0.0002677631579, -0.0002945175439, -0.0002945175439, -0.0003078947368, \n    -0.0003614035088, -0.0003614035088, -0.0002945175439, -0.0001539473684, \n    -0.0000335526316, +0.0000133771930, -0.0000133771930, -0.0000736842105, \n    -0.0001739035088, -0.0003010964912, -0.0004282894737, -0.0004684210526, \n    -0.0003881578947, -0.0002410087719, -0.0000401315789, +0.0001807017544, \n    +0.0003679824561, +0.0004149122807, +0.0003212719298, +0.0001605263158, \n    +0.0000000000000, -0.0001203947368, -0.0001337719298, -0.0000401315789, \n    +0.0000603070175, +0.0000870614035, +0.0000401315789, -0.0000267543860, \n    -0.0000870614035, -0.0001138157895, -0.0001004385965, -0.0000802631579, \n    -0.0000668859649, -0.0000401315789, +0.0000736842105, +0.0002543859649, \n    +0.0003949561404, +0.0003815789474, +0.0002142543860, +0.0000000000000, \n    -0.0001605263158, -0.0002543859649, -0.0002811403509, -0.0002342105263, \n    -0.0001271929825, -0.0000133771930, +0.0000469298246, +0.0000401315789, \n    -0.0000201754386, -0.0001337719298, -0.0002276315789, -0.0002475877193, \n    -0.0002008771930, -0.0000736842105, +0.0001405701754, +0.0003614035088, \n    +0.0004752192982, +0.0004951754386, +0.0004684210526, +0.0004350877193, \n    +0.0003679824561, +0.0002877192982, +0.0002543859649, +0.0002945175439, \n    +0.0003480263158, +0.0003278508772, +0.0002208333333, +0.0001203947368, \n    +0.0000802631579, +0.0000668859649, +0.0000401315789, +0.0000335526316, \n    +0.0000603070175, +0.0001004385965, +0.0001539473684, +0.0001807017544, \n    +0.0001673245614, +0.0001203947368, +0.0000870614035, +0.0001004385965, \n    +0.0001203947368, +0.0000870614035, -0.0000335526316, -0.0001872807018, \n    -0.0003144736842, -0.0004217105263, -0.0004550438596, -0.0003546052632, \n    -0.0001739035088, +0.0000000000000, +0.0001405701754, +0.0002342105263, \n    +0.0002475877193, +0.0002008771930, +0.0001605263158, +0.0001807017544, \n    +0.0002945175439, +0.0004484649123, +0.0005085526316, +0.0004149122807, \n    +0.0002276315789, +0.0000133771930, -0.0001471491228, -0.0002074561404, \n    -0.0001471491228, -0.0000401315789, +0.0001070175439, +0.0002743421053, \n    +0.0003747807018, +0.0003614035088, +0.0002677631579, +0.0001673245614, \n    +0.0001004385965, +0.0000802631579, +0.0000802631579, +0.0000802631579, \n    +0.0001070175439, +0.0001271929825, +0.0001203947368, +0.0001271929825, \n    +0.0001605263158, +0.0002276315789, +0.0002877192982, +0.0003144736842, \n    +0.0002743421053, +0.0001539473684, -0.0000267543860, -0.0001940789474, \n    -0.0002342105263, -0.0001539473684, -0.0000603070175, -0.0000267543860, \n    -0.0000335526316, -0.0000535087719, -0.0001004385965, -0.0001807017544, \n    -0.0002142543860, -0.0001138157895, +0.0000603070175, +0.0002410087719, \n    +0.0003949561404, +0.0004951754386, +0.0004817982456, +0.0003278508772, \n    +0.0000736842105, -0.0000936403509, -0.0001138157895, +0.0000000000000, \n    +0.0002008771930, +0.0004282894737, +0.0005287280702, +0.0004350877193, \n    +0.0002342105263, +0.0000133771930, -0.0001673245614, -0.0002877192982, \n    -0.0003412280702, -0.0003346491228, -0.0002743421053, -0.0001337719298, \n    +0.0000201754386, +0.0001203947368, +0.0001070175439, +0.0000000000000, \n    -0.0001271929825, -0.0001673245614, -0.0000603070175, +0.0001471491228, \n    +0.0003614035088, +0.0004282894737, +0.0002945175439, +0.0000535087719, \n    -0.0001337719298, -0.0001872807018, -0.0001070175439, -0.0000067982456, \n    +0.0000335526316, -0.0000201754386, -0.0001673245614, -0.0003346491228, \n    -0.0004149122807, -0.0003346491228, -0.0001271929825, +0.0000802631579, \n    +0.0002208333333, +0.0002475877193, +0.0001739035088, +0.0000401315789, \n    -0.0000936403509, -0.0001405701754, -0.0000401315789, +0.0001471491228, \n    +0.0003010964912, +0.0003144736842, +0.0001940789474, +0.0000469298246, \n    +0.0000000000000, +0.0000802631579, +0.0002342105263, +0.0002945175439, \n    +0.0002008771930, +0.0000401315789, -0.0001070175439, -0.0001872807018, \n    -0.0001271929825, +0.0000535087719, +0.0002609649123, +0.0003747807018, \n    +0.0003212719298, +0.0001337719298, -0.0001138157895, -0.0003346491228, \n    -0.0004282894737, -0.0003546052632, -0.0001337719298, +0.0001203947368, \n    +0.0003144736842, +0.0003881578947, +0.0003679824561, +0.0002811403509, \n    +0.0001337719298, -0.0000335526316, -0.0001673245614, -0.0002342105263, \n    -0.0002475877193, -0.0002543859649, -0.0002743421053, -0.0002945175439, \n    -0.0002342105263, -0.0000870614035, +0.0000469298246, +0.0000535087719, \n    -0.0000201754386, -0.0001004385965, -0.0001940789474, -0.0003010964912, \n    -0.0003546052632, -0.0003144736842, -0.0001940789474, -0.0000401315789, \n    +0.0001138157895, +0.0002342105263, +0.0002609649123, +0.0001872807018, \n    +0.0000668859649, -0.0000603070175, -0.0001471491228, -0.0002008771930, \n    -0.0002609649123, -0.0003346491228, -0.0003480263158, -0.0002410087719, \n    -0.0000736842105, +0.0000535087719, +0.0001070175439, +0.0001138157895, \n    +0.0000870614035, +0.0000133771930, -0.0001004385965, -0.0002276315789, \n    -0.0003078947368, -0.0003480263158, -0.0003614035088, -0.0002945175439, \n    -0.0001605263158, -0.0000133771930, +0.0000870614035, +0.0000870614035, \n    +0.0000133771930, -0.0000335526316, -0.0000335526316, +0.0000067982456, \n    +0.0001138157895, +0.0002811403509, +0.0004015350877, +0.0003815789474, \n    +0.0002008771930, -0.0000469298246, -0.0002410087719, -0.0002877192982, \n    -0.0001807017544, +0.0000133771930, +0.0002008771930, +0.0002945175439, \n    +0.0003144736842, +0.0002743421053, +0.0001605263158, +0.0000201754386, \n    -0.0000603070175, -0.0000802631579, -0.0000802631579, -0.0001070175439, \n    -0.0001271929825, -0.0001405701754, -0.0001807017544, -0.0002609649123, \n    -0.0003346491228, -0.0003480263158, -0.0002811403509, -0.0001872807018, \n    -0.0001203947368, -0.0000603070175, +0.0000000000000, +0.0000535087719, \n    +0.0000870614035, +0.0000936403509, +0.0001070175439, +0.0001271929825, \n    +0.0000870614035, -0.0000267543860, -0.0001539473684, -0.0002609649123, \n    -0.0003480263158, -0.0003881578947, -0.0003346491228, -0.0001739035088, \n    +0.0000133771930, +0.0001405701754, +0.0000936403509, -0.0000802631579, \n    -0.0003212719298, -0.0005019736842, -0.0005421052632, -0.0004416666667, \n    -0.0002543859649, -0.0000535087719, +0.0000936403509, +0.0001539473684, \n    +0.0001337719298, +0.0000870614035, +0.0000802631579, +0.0001004385965, \n    +0.0000936403509, +0.0000603070175, +0.0000201754386, +0.0000133771930, \n    +0.0000267543860, +0.0000067982456, -0.0000802631579, -0.0002276315789, \n    -0.0003412280702, -0.0003546052632, -0.0002609649123, -0.0001337719298, \n    +0.0000133771930, +0.0001940789474, +0.0003480263158, +0.0004350877193, \n    +0.0004282894737, +0.0003412280702, +0.0001807017544, +0.0000335526316, \n    -0.0000067982456, +0.0000802631579, +0.0002811403509, +0.0004951754386, \n    +0.0006089912281, +0.0006223684211, +0.0005554824561, +0.0004083333333, \n    +0.0001807017544, -0.0000736842105, -0.0002811403509, -0.0003881578947, \n    -0.0003815789474, -0.0002811403509, -0.0001004385965, +0.0000802631579, \n    +0.0001940789474, +0.0001605263158, +0.0000000000000, -0.0001673245614, \n    -0.0002410087719, -0.0002074561404, -0.0001203947368, -0.0000267543860, \n    +0.0000668859649, +0.0001405701754, +0.0001673245614, +0.0001673245614, \n    +0.0001605263158, +0.0001138157895, +0.0000401315789, -0.0000067982456, \n    -0.0000201754386, -0.0000469298246, -0.0001070175439, -0.0001739035088, \n    -0.0002142543860, -0.0002074561404, -0.0001739035088, -0.0001673245614, \n    -0.0001940789474, -0.0002475877193, -0.0003212719298, -0.0003614035088, \n    -0.0002877192982, -0.0000802631579, +0.0001739035088, +0.0003881578947, \n    +0.0004550438596, +0.0003815789474, +0.0002543859649, +0.0001539473684, \n    +0.0001203947368, +0.0001739035088, +0.0003010964912, +0.0004282894737, \n    +0.0005019736842, +0.0005019736842, +0.0004350877193, +0.0002945175439, \n    +0.0001271929825, +0.0000000000000, -0.0000335526316, -0.0000067982456, \n    +0.0000133771930, +0.0000133771930, +0.0000201754386, +0.0000133771930, \n    +0.0000000000000, +0.0000133771930, +0.0000870614035, +0.0001673245614, \n    +0.0002142543860, +0.0001940789474, +0.0001471491228, +0.0001271929825, \n    +0.0001605263158, +0.0002475877193, +0.0003412280702, +0.0004015350877, \n    +0.0003881578947, +0.0003144736842, +0.0002342105263, +0.0001605263158, \n    +0.0000736842105, -0.0000335526316, -0.0001271929825, -0.0001673245614, \n    -0.0001337719298, -0.0000603070175, -0.0000067982456, -0.0000067982456, \n    -0.0000469298246, -0.0001070175439, -0.0001673245614, -0.0001807017544, \n    -0.0001271929825, -0.0000335526316, +0.0000535087719, +0.0001405701754, \n    +0.0001940789474, +0.0002142543860, +0.0002074561404, +0.0001605263158, \n    +0.0000936403509, +0.0000067982456, -0.0000936403509, -0.0001539473684, \n    -0.0001807017544, -0.0001872807018, -0.0001673245614, -0.0001070175439, \n    -0.0000133771930, +0.0000870614035, +0.0001605263158, +0.0001940789474, \n    +0.0001673245614, +0.0000603070175, -0.0001004385965, -0.0002342105263, \n    -0.0002342105263, -0.0001070175439, +0.0000603070175, +0.0001807017544, \n    +0.0002142543860, +0.0001807017544, +0.0001138157895, +0.0000870614035, \n    +0.0001070175439, +0.0001605263158, +0.0002008771930, +0.0001739035088, \n    +0.0000802631579, -0.0000401315789, -0.0001673245614, -0.0002475877193, \n    -0.0002609649123, -0.0002142543860, -0.0001337719298, -0.0000736842105, \n    -0.0000535087719, -0.0000603070175, -0.0000802631579, -0.0001004385965, \n    -0.0001004385965, -0.0000603070175, +0.0000067982456, +0.0000870614035, \n    +0.0001070175439, +0.0000668859649, -0.0000067982456, -0.0001004385965, \n    -0.0001739035088, -0.0001872807018, -0.0001739035088, -0.0001539473684, \n    -0.0001138157895, -0.0000267543860, +0.0001070175439, +0.0002475877193, \n    +0.0003412280702, +0.0003546052632, +0.0002677631579, +0.0001337719298, \n    +0.0000201754386, -0.0000335526316, -0.0000201754386, +0.0000133771930, \n    +0.0000133771930, -0.0000535087719, -0.0001605263158, -0.0002475877193, \n    -0.0002877192982, -0.0002945175439, -0.0002543859649, -0.0001337719298, \n    +0.0000133771930, +0.0001471491228, +0.0001940789474, +0.0001673245614, \n    +0.0000936403509, +0.0000000000000, -0.0001070175439, -0.0001940789474, \n    -0.0001940789474, -0.0001004385965, -0.0000067982456, +0.0000000000000, \n    -0.0000736842105, -0.0001739035088, -0.0002543859649, -0.0003010964912, \n    -0.0003078947368, -0.0002276315789, -0.0001203947368, -0.0000603070175, \n    -0.0000535087719, -0.0000401315789, +0.0000000000000, +0.0000401315789, \n    +0.0000668859649, +0.0000802631579, +0.0000936403509, +0.0001203947368, \n    +0.0001739035088, +0.0002609649123, +0.0003412280702, +0.0003546052632, \n    +0.0002877192982, +0.0001673245614, +0.0000067982456, -0.0001138157895, \n    -0.0001271929825, -0.0000267543860, +0.0001004385965, +0.0002008771930, \n    +0.0002475877193, +0.0002342105263, +0.0001739035088, +0.0000936403509, \n    +0.0000535087719, +0.0000668859649, +0.0000936403509, +0.0000870614035, \n    +0.0000401315789, +0.0000000000000, -0.0000067982456, +0.0000067982456, \n    +0.0000000000000, -0.0000267543860, -0.0000469298246, -0.0000335526316, \n    -0.0000201754386, -0.0000267543860, -0.0000535087719, -0.0000870614035, \n    -0.0000936403509, -0.0000870614035, -0.0000603070175, +0.0000067982456, \n    +0.0000936403509, +0.0001337719298, +0.0000802631579, -0.0000201754386, \n    -0.0001203947368, -0.0002475877193, -0.0003881578947, -0.0004752192982, \n    -0.0004416666667, -0.0003212719298, -0.0001940789474, -0.0000936403509, \n    -0.0000469298246, -0.0000535087719, -0.0001070175439, -0.0001605263158, \n    -0.0001872807018, -0.0002008771930, -0.0001673245614, -0.0000936403509, \n    +0.0000000000000, +0.0000603070175, +0.0000802631579, +0.0000535087719, \n    -0.0000133771930, -0.0001337719298, -0.0002410087719, -0.0002677631579, \n    -0.0002543859649, -0.0002410087719, -0.0002074561404, -0.0001271929825, \n    -0.0000133771930, +0.0001004385965, +0.0001739035088, +0.0001807017544, \n    +0.0001203947368, +0.0000201754386, -0.0000736842105, -0.0001138157895, \n    -0.0000870614035, -0.0000201754386, +0.0000201754386, +0.0000067982456, \n    -0.0000668859649, -0.0001673245614, -0.0002342105263, -0.0002543859649, \n    -0.0002342105263, -0.0001739035088, -0.0001203947368, -0.0000870614035, \n    -0.0001203947368, -0.0001872807018, -0.0002276315789, -0.0001807017544, \n    -0.0000936403509, -0.0000201754386, -0.0000067982456, -0.0000335526316, \n    -0.0000335526316, -0.0000067982456, +0.0000335526316, +0.0001004385965, \n    +0.0001872807018, +0.0002543859649, +0.0002811403509, +0.0002410087719, \n    +0.0001405701754, +0.0000201754386, -0.0000736842105, -0.0000870614035, \n    +0.0000000000000, +0.0001138157895, +0.0001539473684, +0.0000335526316, \n    -0.0001739035088, -0.0003815789474, -0.0005219298246, -0.0005620614035, \n    -0.0004817982456, -0.0003078947368, -0.0001405701754, -0.0000469298246, \n    -0.0000603070175, -0.0001337719298, -0.0001940789474, -0.0001739035088, \n    -0.0000668859649, +0.0000936403509, +0.0002276315789, +0.0002543859649, \n    +0.0001539473684, +0.0000267543860, -0.0000335526316, -0.0000401315789, \n    -0.0000335526316, -0.0000469298246, -0.0000469298246, -0.0000067982456, \n    +0.0000335526316, +0.0000668859649, +0.0000936403509, +0.0001271929825, \n    +0.0001605263158, +0.0001739035088, +0.0001739035088, +0.0001471491228, \n    +0.0000870614035, +0.0000267543860, +0.0000133771930, +0.0000603070175, \n    +0.0001539473684, +0.0002811403509, +0.0003949561404, +0.0004416666667, \n    +0.0004015350877, +0.0002743421053, +0.0001203947368, +0.0000000000000, \n    -0.0000267543860, +0.0000469298246, +0.0001605263158, +0.0002410087719, \n    +0.0002743421053, +0.0002743421053, +0.0002208333333, +0.0001138157895, \n    +0.0000133771930, -0.0000469298246, -0.0000603070175, -0.0000401315789, \n    +0.0000000000000, +0.0000267543860, +0.0000201754386, -0.0000201754386, \n    -0.0000936403509, -0.0001203947368, -0.0001138157895, -0.0001070175439, \n    -0.0001337719298, -0.0001872807018, -0.0002342105263, -0.0002410087719, \n    -0.0001940789474, -0.0001203947368, -0.0000469298246, +0.0000000000000, \n    +0.0000133771930, +0.0000067982456, -0.0000267543860, -0.0000736842105, \n    -0.0001070175439, -0.0001138157895, -0.0001004385965, -0.0000736842105, \n    -0.0000133771930, +0.0000870614035, +0.0002142543860, +0.0002877192982, \n    +0.0002609649123, +0.0001807017544, +0.0001070175439, +0.0000802631579, \n    +0.0001271929825, +0.0002410087719, +0.0003480263158, +0.0003614035088, \n    +0.0002475877193, +0.0000802631579, -0.0000802631579, -0.0002142543860, \n    -0.0002877192982, -0.0002543859649, -0.0001070175439, +0.0000870614035, \n    +0.0002543859649, +0.0003278508772, +0.0002743421053, +0.0001405701754, \n    +0.0000133771930, -0.0000469298246, -0.0000401315789, -0.0000201754386, \n    -0.0000469298246, -0.0001271929825, -0.0002074561404, -0.0002475877193, \n    -0.0002074561404, -0.0000870614035, +0.0000535087719, +0.0001539473684, \n    +0.0001673245614, +0.0001271929825, +0.0000668859649, +0.0000067982456, \n    -0.0000067982456, +0.0000335526316, +0.0001271929825, +0.0001673245614, \n    +0.0001070175439, -0.0000267543860, -0.0001605263158, -0.0002208333333, \n    -0.0001940789474, -0.0001203947368, -0.0000401315789, +0.0000201754386, \n    +0.0000469298246, +0.0000267543860, -0.0000201754386, -0.0000603070175, \n    -0.0000335526316, +0.0000535087719, +0.0001605263158, +0.0002410087719, \n    +0.0002342105263, +0.0001471491228, +0.0000267543860, -0.0000736842105, \n    -0.0001539473684, -0.0002008771930, -0.0002008771930, -0.0001673245614, \n    -0.0001070175439, -0.0000401315789, +0.0000335526316, +0.0001471491228, \n    +0.0002543859649, +0.0003078947368, +0.0002945175439, +0.0002208333333, \n    +0.0000936403509, -0.0000133771930, -0.0000736842105, -0.0000736842105, \n    -0.0000267543860, +0.0000335526316, +0.0001138157895, +0.0001673245614, \n    +0.0001739035088, +0.0001471491228, +0.0001070175439, +0.0000603070175, \n    +0.0000267543860, +0.0000267543860, +0.0000603070175, +0.0001337719298, \n    +0.0002008771930, +0.0002142543860, +0.0001271929825, -0.0000335526316, \n    -0.0001807017544, -0.0002342105263, -0.0001539473684, +0.0000000000000, \n    +0.0001337719298, +0.0001739035088, +0.0001138157895, +0.0000000000000, \n    -0.0000936403509, -0.0001405701754, -0.0001337719298, -0.0000936403509, \n    -0.0000401315789, -0.0000133771930, -0.0000067982456, +0.0000000000000, \n    +0.0000401315789, +0.0000870614035, +0.0001070175439, +0.0000802631579, \n    +0.0000335526316, -0.0000267543860, -0.0000736842105, -0.0000802631579, \n    -0.0000335526316, -0.0000067982456, -0.0000267543860, -0.0000668859649, \n    -0.0000802631579, -0.0000469298246, +0.0000133771930, +0.0000870614035, \n    +0.0001539473684, +0.0002008771930, +0.0002410087719, +0.0002276315789, \n    +0.0001605263158, +0.0000535087719, -0.0000535087719, -0.0001539473684, \n    -0.0002008771930, -0.0001807017544, -0.0001070175439, -0.0000267543860, \n    +0.0000000000000, -0.0000201754386, -0.0000936403509, -0.0001807017544, \n    -0.0002609649123, -0.0003412280702, -0.0003815789474, -0.0003346491228, \n    -0.0002208333333, -0.0001138157895, -0.0000535087719, -0.0000535087719, \n    -0.0000936403509, -0.0001405701754, -0.0001271929825, -0.0000603070175, \n    +0.0000000000000, +0.0000201754386, +0.0000133771930, +0.0000469298246, \n    +0.0001271929825, +0.0002208333333, +0.0002743421053, +0.0002543859649, \n    +0.0001940789474, +0.0001138157895, +0.0000335526316, -0.0000133771930, \n    -0.0000133771930, +0.0000267543860, +0.0000802631579, +0.0001070175439, \n    +0.0001004385965, +0.0001004385965, +0.0001138157895, +0.0001271929825, \n    +0.0001004385965, +0.0000401315789, -0.0000267543860, -0.0000802631579, \n    -0.0000936403509, -0.0000469298246, +0.0000469298246, +0.0001471491228, \n    +0.0002208333333, +0.0002142543860, +0.0001004385965, -0.0000535087719, \n    -0.0001940789474, -0.0002677631579, -0.0002410087719, -0.0001271929825, \n    +0.0000335526316, +0.0001940789474, +0.0002543859649, +0.0001872807018, \n    +0.0000469298246, -0.0001004385965, -0.0002074561404, -0.0002475877193, \n    -0.0002410087719, -0.0002208333333, -0.0001739035088, -0.0000870614035, \n    +0.0000133771930, +0.0001138157895, +0.0001539473684, +0.0001203947368, \n    +0.0000603070175, +0.0000067982456, -0.0000133771930, +0.0000067982456, \n    +0.0000335526316, +0.0000469298246, +0.0000469298246, +0.0000603070175, \n    +0.0000736842105, +0.0000469298246, -0.0000267543860, -0.0001203947368, \n    -0.0001807017544, -0.0001739035088, -0.0001070175439, +0.0000000000000, \n    +0.0001203947368, +0.0001940789474, +0.0002142543860, +0.0001739035088, \n    +0.0000870614035, +0.0000000000000, -0.0000603070175, -0.0000668859649, \n    -0.0000267543860, +0.0000201754386, +0.0000535087719, +0.0000535087719, \n    +0.0000668859649, +0.0001138157895, +0.0001539473684, +0.0001673245614, \n    +0.0001405701754, +0.0001203947368, +0.0001203947368, +0.0001405701754, \n    +0.0001739035088, +0.0002074561404, +0.0002276315789, +0.0002142543860, \n    +0.0001807017544, +0.0001605263158, +0.0001471491228, +0.0001004385965, \n    +0.0000335526316, -0.0000267543860, -0.0000802631579, -0.0001004385965, \n    -0.0000870614035, -0.0000267543860, +0.0000335526316, +0.0000535087719, \n    +0.0000201754386, -0.0000535087719, -0.0001673245614, -0.0002609649123, \n    -0.0003010964912, -0.0002877192982, -0.0002276315789, -0.0001539473684, \n    -0.0000736842105, -0.0000067982456, +0.0000469298246, +0.0000870614035, \n    +0.0000802631579, +0.0000201754386, -0.0000603070175, -0.0001539473684, \n    -0.0002142543860, -0.0002208333333, -0.0001471491228, -0.0000267543860, \n    +0.0000870614035, +0.0001337719298, +0.0000870614035, -0.0000201754386, \n    -0.0001337719298, -0.0002074561404, -0.0001940789474, -0.0000870614035, \n    +0.0000736842105, +0.0001940789474, +0.0002142543860, +0.0001405701754, \n    +0.0000469298246, -0.0000067982456, +0.0000000000000, +0.0000335526316, \n    +0.0000936403509, +0.0001739035088, +0.0002276315789, +0.0002342105263, \n    +0.0001872807018, +0.0001405701754, +0.0000936403509, +0.0000469298246, \n    +0.0000133771930, +0.0000067982456, +0.0000401315789, +0.0000736842105, \n    +0.0000802631579, +0.0000870614035, +0.0000936403509, +0.0001337719298, \n    +0.0001872807018, +0.0002475877193, +0.0002811403509, +0.0002543859649, \n    +0.0001739035088, +0.0000535087719, -0.0000401315789, -0.0000736842105, \n    -0.0000267543860, +0.0000603070175, +0.0001471491228, +0.0001673245614, \n    +0.0001203947368, +0.0000469298246, -0.0000133771930, -0.0000535087719, \n    -0.0000603070175, -0.0000603070175, -0.0000736842105, -0.0001070175439, \n    -0.0001138157895, -0.0000603070175, +0.0000267543860, +0.0001138157895, \n    +0.0001471491228, +0.0001203947368, +0.0000335526316, -0.0000668859649, \n    -0.0001605263158, -0.0002342105263, -0.0002475877193, -0.0001739035088, \n    -0.0000267543860, +0.0001070175439, +0.0001739035088, +0.0001539473684, \n    +0.0000469298246, -0.0000668859649, -0.0001605263158, -0.0002008771930, \n    -0.0001872807018, -0.0001203947368, -0.0000469298246, +0.0000000000000, \n    +0.0000000000000, -0.0000201754386, -0.0000401315789, -0.0000535087719, \n    -0.0000802631579, -0.0001337719298, -0.0001872807018, -0.0002342105263, \n    -0.0002677631579, -0.0002543859649, -0.0002008771930, -0.0001138157895, \n    -0.0000201754386, +0.0000267543860, +0.0000535087719, +0.0000535087719, \n    +0.0000469298246, +0.0000603070175, +0.0000870614035, +0.0001271929825, \n    +0.0001070175439, +0.0000267543860, -0.0000469298246, -0.0000603070175, \n    +0.0000133771930, +0.0001070175439, +0.0001539473684, +0.0001138157895, \n    +0.0000133771930, -0.0000802631579, -0.0001337719298, -0.0001138157895, \n    -0.0000401315789, +0.0000401315789, +0.0000936403509, +0.0001070175439, \n    +0.0000936403509, +0.0000603070175, +0.0000401315789, +0.0000401315789, \n    +0.0000335526316, +0.0000067982456, -0.0000469298246, -0.0001271929825, \n    -0.0002008771930, -0.0002475877193, -0.0002543859649, -0.0002342105263, \n    -0.0001940789474, -0.0001405701754, -0.0001070175439, -0.0001004385965, \n    -0.0000936403509, -0.0000603070175, -0.0000267543860, -0.0000067982456, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, -0.0000133771930, \n    -0.0000201754386, +0.0000000000000, +0.0000469298246, +0.0000802631579, \n    +0.0000668859649, +0.0000401315789, +0.0000267543860, +0.0000668859649, \n    +0.0001337719298, +0.0002074561404, +0.0002342105263, +0.0001872807018, \n    +0.0000736842105, -0.0000267543860, -0.0000870614035, -0.0000603070175, \n    +0.0000469298246, +0.0001739035088, +0.0002475877193, +0.0002074561404, \n    +0.0000603070175, -0.0001405701754, -0.0003278508772, -0.0004282894737, \n    -0.0003949561404, -0.0002410087719, -0.0000335526316, +0.0001337719298, \n    +0.0002276315789, +0.0002543859649, +0.0002475877193, +0.0002208333333, \n    +0.0002008771930, +0.0001807017544, +0.0001673245614, +0.0001539473684, \n    +0.0001203947368, +0.0000603070175, -0.0000335526316, -0.0001337719298, \n    -0.0002008771930, -0.0002208333333, -0.0002008771930, -0.0001539473684, \n    -0.0001004385965, -0.0000401315789, +0.0000000000000, +0.0000133771930, \n    +0.0000000000000, -0.0000469298246, -0.0001004385965, -0.0001271929825, \n    -0.0001070175439, -0.0000535087719, -0.0000267543860, -0.0000668859649, \n    -0.0001539473684, -0.0002342105263, -0.0002677631579, -0.0002276315789, \n    -0.0001203947368, -0.0000067982456, +0.0000535087719, +0.0000335526316, \n    -0.0000335526316, -0.0000802631579, -0.0000469298246, +0.0000603070175, \n    +0.0001872807018, +0.0002410087719, +0.0001940789474, +0.0000603070175, \n    -0.0001004385965, -0.0002410087719, -0.0003212719298, -0.0003346491228, \n    -0.0003010964912, -0.0002475877193, -0.0001872807018, -0.0001271929825, \n    -0.0000736842105, -0.0000067982456, +0.0000535087719, +0.0001271929825, \n    +0.0001872807018, +0.0002008771930, +0.0001872807018, +0.0001337719298, \n    +0.0000267543860, -0.0000936403509, -0.0001940789474, -0.0002410087719, \n    -0.0002276315789, -0.0001807017544, -0.0001405701754, -0.0001070175439, \n    -0.0000736842105, -0.0000335526316, +0.0000000000000, +0.0000668859649, \n    +0.0001405701754, +0.0002008771930, +0.0002074561404, +0.0001605263158, \n    +0.0000802631579, +0.0000133771930, -0.0000201754386, -0.0000335526316, \n    -0.0000201754386, +0.0000000000000, +0.0000067982456, +0.0000000000000, \n    -0.0000401315789, -0.0000603070175, -0.0000335526316, +0.0000267543860, \n    +0.0000870614035, +0.0000870614035, +0.0000335526316, -0.0000603070175, \n    -0.0001605263158, -0.0002074561404, -0.0001539473684, -0.0000067982456, \n    +0.0001471491228, +0.0002410087719, +0.0002410087719, +0.0001539473684, \n    +0.0000267543860, -0.0001004385965, -0.0001872807018, -0.0002074561404, \n    -0.0001539473684, -0.0000535087719, +0.0000201754386, +0.0000603070175, \n    +0.0000535087719, +0.0000401315789, +0.0000401315789, +0.0000335526316, \n    +0.0000401315789, +0.0000469298246, +0.0000802631579, +0.0001070175439, \n    +0.0001070175439, +0.0000736842105, +0.0000267543860, -0.0000067982456, \n    -0.0000401315789, -0.0000668859649, -0.0000736842105, -0.0000469298246, \n    +0.0000000000000, +0.0000870614035, +0.0001673245614, +0.0002142543860, \n    +0.0002142543860, +0.0001673245614, +0.0001271929825, +0.0001070175439, \n    +0.0001138157895, +0.0001271929825, +0.0001203947368, +0.0000668859649, \n    +0.0000000000000, -0.0000736842105, -0.0001271929825, -0.0001004385965, \n    -0.0000335526316, +0.0000335526316, +0.0000668859649, +0.0000668859649, \n    +0.0000401315789, +0.0000267543860, +0.0000201754386, +0.0000267543860, \n    +0.0000335526316, +0.0000335526316, +0.0000535087719, +0.0001070175439, \n    +0.0001739035088, +0.0002208333333, +0.0002276315789, +0.0001940789474, \n    +0.0001138157895, +0.0000133771930, -0.0000335526316, -0.0000133771930, \n    +0.0000469298246, +0.0001138157895, +0.0001739035088, +0.0002142543860, \n    +0.0002074561404, +0.0001471491228, +0.0000469298246, -0.0000401315789, \n    -0.0001203947368, -0.0001872807018, -0.0002342105263, -0.0002410087719, \n    -0.0002142543860, -0.0001807017544, -0.0001337719298, -0.0000603070175, \n    +0.0000067982456, +0.0000535087719, +0.0000401315789, -0.0000133771930, \n    -0.0000736842105, -0.0001004385965, -0.0001004385965, -0.0000870614035, \n    -0.0000736842105, -0.0001004385965, -0.0001539473684, -0.0002074561404, \n    -0.0002208333333, -0.0001807017544, -0.0000870614035, +0.0000000000000, \n    +0.0000736842105, +0.0000802631579, +0.0000401315789, -0.0000267543860, \n    -0.0000936403509, -0.0001405701754, -0.0001539473684, -0.0001337719298, \n    -0.0001070175439, -0.0000802631579, -0.0000401315789, -0.0000067982456, \n    +0.0000201754386, +0.0000267543860, +0.0000133771930, -0.0000067982456, \n    -0.0000267543860, -0.0000401315789, -0.0000401315789, -0.0000267543860, \n    +0.0000133771930, +0.0000736842105, +0.0001271929825, +0.0001471491228, \n    +0.0001471491228, +0.0001337719298, +0.0000802631579, -0.0000067982456, \n    -0.0001337719298, -0.0002475877193, -0.0002677631579, -0.0001539473684, \n    +0.0000335526316, +0.0002074561404, +0.0003010964912, +0.0003010964912, \n    +0.0002410087719, +0.0001673245614, +0.0001138157895, +0.0001004385965, \n    +0.0001004385965, +0.0000802631579, +0.0000067982456, -0.0000802631579, \n    -0.0001203947368, -0.0000870614035, +0.0000000000000, +0.0001004385965, \n    +0.0001471491228, +0.0001337719298, +0.0000668859649, +0.0000000000000, \n    -0.0000401315789, -0.0000401315789, -0.0000133771930, +0.0000067982456, \n    +0.0000067982456, -0.0000335526316, -0.0001004385965, -0.0001271929825, \n    -0.0000668859649, +0.0000401315789, +0.0001605263158, +0.0002410087719, \n    +0.0002543859649, +0.0001807017544, +0.0000469298246, -0.0000736842105, \n    -0.0001271929825, -0.0000736842105, +0.0000201754386, +0.0001138157895, \n    +0.0001539473684, +0.0001271929825, +0.0000535087719, -0.0000067982456, \n    -0.0000067982456, +0.0000603070175, +0.0001539473684, +0.0001872807018, \n    +0.0001405701754, +0.0000401315789, -0.0000802631579, -0.0001872807018, \n    -0.0002475877193, -0.0002276315789, -0.0001539473684, -0.0000603070175, \n    +0.0000067982456, +0.0000668859649, +0.0001271929825, +0.0001872807018, \n    +0.0002276315789, +0.0002543859649, +0.0002677631579, +0.0002342105263, \n    +0.0001471491228, +0.0000267543860, -0.0000668859649, -0.0001138157895, \n    -0.0001070175439, -0.0000401315789, +0.0000469298246, +0.0001471491228, \n    +0.0001940789474, +0.0001739035088, +0.0000936403509, +0.0000133771930, \n    -0.0000267543860, -0.0000335526316, -0.0000401315789, -0.0000870614035, \n    -0.0001539473684, -0.0002142543860, -0.0002276315789, -0.0001872807018, \n    -0.0001203947368, -0.0000201754386, +0.0000535087719, +0.0000736842105, \n    +0.0000201754386, -0.0000802631579, -0.0001739035088, -0.0002074561404, \n    -0.0001673245614, -0.0000936403509, -0.0000401315789, -0.0000201754386, \n    -0.0000401315789, -0.0000668859649, -0.0000802631579, -0.0000802631579, \n    -0.0000870614035, -0.0001203947368, -0.0001539473684, -0.0001872807018, \n    -0.0002074561404, -0.0002208333333, -0.0002342105263, -0.0002208333333, \n    -0.0001605263158, -0.0000603070175, +0.0000668859649, +0.0001872807018, \n    +0.0002677631579, +0.0002945175439, +0.0002811403509, +0.0002410087719, \n    +0.0001605263158, +0.0000603070175, -0.0000335526316, -0.0001004385965, \n    -0.0001203947368, -0.0000870614035, -0.0000133771930, +0.0000668859649, \n    +0.0001471491228, +0.0002008771930, +0.0002276315789, +0.0002074561404, \n    +0.0001471491228, +0.0000535087719, -0.0000401315789, -0.0001203947368, \n    -0.0001471491228, -0.0001203947368, -0.0000603070175, +0.0000201754386, \n    +0.0000936403509, +0.0001337719298, +0.0001138157895, +0.0000668859649, \n    +0.0000401315789, +0.0000469298246, +0.0000535087719, +0.0000401315789, \n    +0.0000201754386, +0.0000267543860, +0.0000668859649, +0.0000936403509, \n    +0.0000870614035, +0.0000603070175, +0.0000201754386, -0.0000201754386, \n    -0.0000469298246, -0.0000535087719, -0.0000133771930, +0.0000401315789, \n    +0.0000668859649, +0.0000335526316, -0.0000267543860, -0.0000870614035, \n    -0.0001138157895, -0.0000936403509, -0.0000201754386, +0.0000603070175, \n    +0.0001337719298, +0.0001673245614, +0.0001539473684, +0.0001138157895, \n    +0.0000401315789, -0.0000401315789, -0.0001203947368, -0.0001471491228, \n    -0.0001203947368, -0.0000736842105, -0.0000401315789, -0.0000201754386, \n    +0.0000000000000, +0.0000401315789, +0.0000802631579, +0.0001070175439, \n    +0.0000802631579, +0.0000133771930, -0.0000535087719, -0.0000870614035, \n    -0.0000736842105, -0.0000067982456, +0.0000668859649, +0.0001271929825, \n    +0.0001471491228, +0.0001203947368, +0.0000736842105, +0.0000133771930, \n    -0.0000201754386, -0.0000267543860, +0.0000201754386, +0.0001271929825, \n    +0.0002208333333, +0.0002410087719, +0.0001739035088, +0.0000936403509, \n    +0.0000335526316, +0.0000067982456, +0.0000000000000, -0.0000067982456, \n    -0.0000267543860, -0.0000535087719, -0.0000802631579, -0.0000936403509, \n    -0.0001070175439, -0.0001070175439, -0.0000936403509, -0.0000870614035, \n    -0.0000870614035, -0.0000802631579, -0.0000736842105, -0.0000603070175, \n    -0.0000267543860, +0.0000133771930, +0.0000802631579, +0.0001471491228, \n    +0.0002142543860, +0.0002475877193, +0.0002342105263, +0.0001539473684, \n    +0.0000335526316, -0.0000603070175, -0.0001138157895, -0.0000936403509, \n    -0.0000133771930, +0.0000668859649, +0.0000936403509, +0.0000401315789, \n    -0.0000603070175, -0.0001337719298, -0.0001271929825, -0.0000469298246, \n    +0.0000603070175, +0.0001605263158, +0.0002008771930, +0.0001739035088, \n    +0.0000870614035, -0.0000133771930, -0.0001138157895, -0.0001471491228, \n    -0.0001203947368, -0.0000469298246, +0.0000000000000, +0.0000201754386, \n    -0.0000067982456, -0.0000535087719, -0.0000870614035, -0.0001070175439, \n    -0.0000936403509, -0.0000603070175, -0.0000067982456, +0.0000469298246, \n    +0.0000870614035, +0.0001004385965, +0.0001070175439, +0.0001138157895, \n    +0.0001271929825, +0.0001337719298, +0.0001471491228, +0.0001405701754, \n    +0.0001070175439, +0.0000668859649, +0.0000401315789, +0.0000469298246, \n    +0.0000936403509, +0.0001337719298, +0.0001673245614, +0.0001739035088, \n    +0.0001471491228, +0.0001004385965, +0.0000535087719, +0.0000201754386, \n    +0.0000133771930, +0.0000133771930, +0.0000201754386, +0.0000335526316, \n    +0.0000469298246, +0.0000603070175, +0.0000736842105, +0.0000736842105, \n    +0.0000668859649, +0.0000469298246, +0.0000000000000, -0.0000469298246, \n    -0.0000870614035, -0.0000870614035, -0.0000469298246, +0.0000133771930, \n    +0.0000736842105, +0.0001070175439, +0.0001004385965, +0.0000736842105, \n    +0.0000469298246, +0.0000401315789, +0.0000401315789, +0.0000469298246, \n    +0.0000535087719, +0.0000335526316, +0.0000067982456, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, -0.0000067982456, +0.0000000000000, \n    +0.0000133771930, +0.0000469298246, +0.0000802631579, +0.0001070175439, \n    +0.0001070175439, +0.0000802631579, +0.0000267543860, -0.0000201754386, \n    -0.0000469298246, -0.0000335526316, +0.0000000000000, +0.0000335526316, \n    +0.0000603070175, +0.0000603070175, +0.0000469298246, +0.0000133771930, \n    -0.0000201754386, -0.0000668859649, -0.0000870614035, -0.0000870614035, \n    -0.0000668859649, -0.0000469298246, -0.0000335526316, -0.0000201754386, \n    +0.0000000000000, +0.0000067982456, +0.0000201754386, +0.0000469298246, \n    +0.0000802631579, +0.0001070175439, +0.0001070175439, +0.0000736842105, \n    +0.0000267543860, -0.0000267543860, -0.0000802631579, -0.0000870614035, \n    -0.0000401315789, +0.0000201754386, +0.0000736842105, +0.0000936403509, \n    +0.0000802631579, +0.0000469298246, +0.0000267543860, +0.0000335526316, \n    +0.0000535087719, +0.0000469298246, +0.0000067982456, -0.0000535087719, \n    -0.0001203947368, -0.0001471491228, -0.0001138157895, -0.0000401315789, \n    +0.0000335526316, +0.0000870614035, +0.0001004385965, +0.0000668859649, \n    +0.0000000000000, -0.0000603070175, -0.0000936403509, -0.0000603070175, \n    +0.0000000000000, +0.0000335526316, +0.0000067982456, -0.0000736842105, \n    -0.0001872807018, -0.0002609649123, -0.0002743421053, -0.0002208333333, \n    -0.0001405701754, -0.0000603070175, -0.0000133771930, -0.0000067982456, \n    -0.0000335526316, -0.0000603070175, -0.0000736842105, -0.0000802631579, \n    -0.0000870614035, -0.0001004385965, -0.0001203947368, -0.0001605263158, \n    -0.0001940789474, -0.0002074561404, -0.0001872807018, -0.0001271929825, \n    -0.0000535087719, +0.0000067982456, +0.0000469298246, +0.0000335526316, \n    -0.0000133771930, -0.0000870614035, -0.0001605263158, -0.0002074561404, \n    -0.0002142543860, -0.0001807017544, -0.0001004385965, -0.0000133771930, \n    +0.0000535087719, +0.0000936403509, +0.0000870614035, +0.0000335526316, \n    -0.0000133771930, -0.0000469298246, -0.0000401315789, +0.0000000000000, \n    +0.0000469298246, +0.0000870614035, +0.0000936403509, +0.0000736842105, \n    +0.0000535087719, +0.0000335526316, +0.0000133771930, +0.0000067982456, \n    +0.0000000000000, -0.0000067982456, -0.0000335526316, -0.0000668859649, \n    -0.0000936403509, -0.0001138157895, -0.0001138157895, -0.0001070175439, \n    -0.0001004385965, -0.0000870614035, -0.0000736842105, -0.0000668859649, \n    -0.0000535087719, -0.0000535087719, -0.0000535087719, -0.0000535087719, \n    -0.0000535087719, -0.0000668859649, -0.0000668859649, -0.0000603070175, \n    -0.0000668859649, -0.0001070175439, -0.0001673245614, -0.0002208333333, \n    -0.0002410087719, -0.0002276315789, -0.0001940789474, -0.0001539473684, \n    -0.0001004385965, -0.0000535087719, -0.0000335526316, -0.0000469298246, \n    -0.0000870614035, -0.0001271929825, -0.0001405701754, -0.0001271929825, \n    -0.0000870614035, -0.0000267543860, +0.0000335526316, +0.0000870614035, \n    +0.0001138157895, +0.0001070175439, +0.0000668859649, +0.0000133771930, \n    -0.0000335526316, -0.0000668859649, -0.0000802631579, -0.0000668859649, \n    -0.0000401315789, -0.0000133771930, +0.0000000000000, +0.0000067982456, \n    -0.0000067982456, -0.0000401315789, -0.0000736842105, -0.0000870614035, \n    -0.0000870614035, -0.0000736842105, -0.0000603070175, -0.0000535087719, \n    -0.0000401315789, -0.0000267543860, -0.0000267543860, -0.0000133771930, \n    +0.0000000000000, +0.0000133771930, +0.0000267543860, +0.0000469298246, \n    +0.0000469298246, +0.0000201754386, -0.0000201754386, -0.0000469298246, \n    -0.0000535087719, -0.0000335526316, +0.0000000000000, +0.0000335526316, \n    +0.0000736842105, +0.0000668859649, +0.0000201754386, -0.0000469298246, \n    -0.0001070175439, -0.0001337719298, -0.0001138157895, -0.0000469298246, \n    +0.0000668859649, +0.0001739035088, +0.0002342105263, +0.0002208333333, \n    +0.0001539473684, +0.0000603070175, -0.0000335526316, -0.0000936403509, \n    -0.0001138157895, -0.0001070175439, -0.0000736842105, -0.0000201754386, \n    +0.0000133771930, +0.0000133771930, -0.0000133771930, -0.0000736842105, \n    -0.0001203947368, -0.0001271929825, -0.0001070175439, -0.0000668859649, \n    -0.0000267543860, +0.0000000000000, +0.0000000000000, -0.0000267543860, \n    -0.0000469298246, -0.0000469298246, -0.0000267543860, +0.0000067982456, \n    +0.0000469298246, +0.0000668859649, +0.0000603070175, +0.0000133771930, \n    -0.0000267543860, -0.0000469298246, -0.0000401315789, -0.0000133771930, \n    -0.0000067982456, -0.0000067982456, -0.0000201754386, -0.0000267543860, \n    -0.0000201754386, +0.0000000000000, +0.0000335526316, +0.0000535087719, \n    +0.0000469298246, +0.0000000000000, -0.0000535087719, -0.0000802631579, \n    -0.0000535087719, +0.0000000000000, +0.0000736842105, +0.0001203947368, \n    +0.0001271929825, +0.0000936403509, +0.0000603070175, +0.0000469298246, \n    +0.0000469298246, +0.0000603070175, +0.0000603070175, +0.0000603070175, \n    +0.0000469298246, +0.0000133771930, -0.0000133771930, -0.0000267543860, \n    +0.0000000000000, +0.0000668859649, +0.0001203947368, +0.0001271929825, \n    +0.0000936403509, +0.0000668859649, +0.0000469298246, +0.0000401315789, \n    +0.0000401315789, +0.0000267543860, +0.0000000000000, -0.0000267543860, \n    -0.0000469298246, -0.0000401315789, +0.0000000000000, +0.0000736842105, \n    +0.0001471491228, +0.0001673245614, +0.0001203947368, +0.0000401315789, \n    -0.0000267543860, -0.0000736842105, -0.0000802631579, -0.0000736842105, \n    -0.0000535087719, -0.0000201754386, +0.0000201754386, +0.0000535087719, \n    +0.0000668859649, +0.0000469298246, +0.0000201754386, -0.0000067982456, \n    -0.0000201754386, -0.0000267543860, -0.0000201754386, +0.0000067982456, \n    +0.0000535087719, +0.0000936403509, +0.0001070175439, +0.0000936403509, \n    +0.0000469298246, +0.0000000000000, -0.0000133771930, +0.0000000000000, \n    +0.0000401315789, +0.0000668859649, +0.0000603070175, +0.0000267543860, \n    +0.0000000000000, -0.0000067982456, +0.0000000000000, +0.0000201754386, \n    +0.0000535087719, +0.0000802631579, +0.0000870614035, +0.0000802631579, \n    +0.0000401315789, +0.0000000000000, -0.0000335526316, -0.0000133771930, \n    +0.0000401315789, +0.0001203947368, +0.0001872807018, +0.0002008771930, \n    +0.0001739035088, +0.0001203947368, +0.0000668859649, +0.0000401315789, \n    +0.0000401315789, +0.0000603070175, +0.0000668859649, +0.0000469298246, \n    +0.0000000000000, -0.0000535087719, -0.0000802631579, -0.0000535087719, \n    +0.0000067982456, +0.0001004385965, +0.0001673245614, +0.0002008771930, \n    +0.0001739035088, +0.0001203947368, +0.0000668859649, +0.0000335526316, \n    +0.0000067982456, +0.0000000000000, +0.0000000000000, -0.0000067982456, \n    -0.0000267543860, -0.0000401315789, -0.0000469298246, -0.0000267543860, \n    +0.0000000000000, +0.0000335526316, +0.0000603070175, +0.0000603070175, \n    +0.0000401315789, +0.0000000000000, -0.0000201754386, -0.0000133771930, \n    +0.0000133771930, +0.0000335526316, +0.0000267543860, +0.0000000000000, \n    -0.0000133771930, -0.0000267543860, -0.0000133771930, +0.0000000000000, \n    +0.0000335526316, +0.0000603070175, +0.0000870614035, +0.0001004385965, \n    +0.0001070175439, +0.0000936403509, +0.0000668859649, +0.0000267543860, \n    +0.0000000000000, -0.0000201754386, -0.0000267543860, -0.0000133771930, \n    +0.0000067982456, +0.0000535087719, +0.0001070175439, +0.0001539473684, \n    +0.0001673245614, +0.0001539473684, +0.0001271929825, +0.0001004385965, \n    +0.0000668859649, +0.0000335526316, +0.0000000000000, -0.0000267543860, \n    -0.0000469298246, -0.0000603070175, -0.0000469298246, -0.0000067982456, \n    +0.0000469298246, +0.0001004385965, +0.0001271929825, +0.0001203947368, \n    +0.0000802631579, +0.0000267543860, -0.0000067982456, -0.0000267543860, \n    -0.0000067982456, +0.0000133771930, +0.0000335526316, +0.0000267543860, \n    +0.0000000000000, -0.0000133771930, -0.0000067982456, +0.0000201754386, \n    +0.0000603070175, +0.0000802631579, +0.0000802631579, +0.0000469298246, \n    -0.0000067982456, -0.0000936403509, -0.0001673245614, -0.0002008771930, \n    -0.0001673245614, -0.0000870614035, +0.0000000000000, +0.0000469298246, \n    +0.0000668859649, +0.0000335526316, +0.0000000000000, -0.0000401315789, \n    -0.0000469298246, -0.0000267543860, -0.0000067982456, +0.0000000000000, \n    +0.0000067982456, +0.0000267543860, +0.0000469298246, +0.0000603070175, \n    +0.0000603070175, +0.0000401315789, +0.0000201754386, +0.0000000000000, \n    -0.0000133771930, -0.0000267543860, -0.0000201754386, -0.0000067982456, \n    +0.0000000000000, +0.0000133771930, +0.0000267543860, +0.0000335526316, \n    +0.0000267543860, +0.0000201754386, +0.0000201754386, +0.0000201754386, \n    +0.0000267543860, +0.0000201754386, +0.0000133771930, +0.0000067982456, \n    +0.0000067982456, +0.0000067982456, +0.0000067982456, +0.0000067982456, \n    +0.0000133771930, +0.0000201754386, +0.0000201754386, +0.0000133771930, \n    +0.0000000000000, -0.0000067982456, -0.0000201754386, -0.0000267543860, \n    -0.0000201754386, -0.0000133771930, -0.0000067982456, -0.0000067982456, \n    -0.0000133771930, -0.0000201754386, -0.0000267543860, -0.0000335526316, \n    -0.0000267543860, -0.0000133771930, +0.0000000000000, +0.0000000000000, \n    +0.0000067982456, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000\n};\n"
  },
  {
    "path": "impulses/19-marshall-plexi-sm57-off.h",
    "content": "float marshall_plexi_sm57_off[] = {\n    +0.0000000000000, +0.0000239215686, +0.0000478431373, +0.0000778431373, \n    +0.0001076470588, +0.0001376470588, +0.0001615686275, +0.0002094117647, \n    +0.0002333333333, +0.0002572549020, +0.0002452941176, +0.0002872549020, \n    +0.0002752941176, +0.0003170588235, +0.0002811764706, +0.0003470588235, \n    +0.0002872549020, +0.0003770588235, +0.0002811764706, +0.0004188235294, \n    +0.0002692156863, +0.0004905882353, +0.0001974509804, +0.0006162745098, \n    +0.0000180392157, +0.0008137254902, +0.0001017647059, +0.0000956862745, \n    +0.0014421568627, -0.0002452941176, +0.0000419607843, +0.0004727450980, \n    +0.0010531372549, +0.0006641176471, +0.0007180392157, +0.0001256862745, \n    +0.0004547058824, -0.0000239215686, +0.0004666666667, +0.0001376470588, \n    +0.0004188235294, +0.0003650980392, +0.0003770588235, +0.0004368627451, \n    +0.0004368627451, +0.0003949019608, +0.0003829411765, +0.0004009803922, \n    +0.0003709803922, +0.0002094117647, +0.0001915686275, +0.0001915686275, \n    +0.0002572549020, +0.0005864705882, +0.0011309803922, +0.0018609803922, \n    +0.0011488235294, -0.0056607843137, -0.0101545098039, -0.0078807843137, \n    -0.0183823529412, -0.0470031372549, -0.0563917647059, -0.0222119607843, \n    +0.0368545098039, +0.1011209803922, +0.1648068627451, +0.1960664705882, \n    +0.1808735294118, +0.1334815686275, +0.0625250980392, -0.0097476470588, \n    -0.0588629411765, -0.0769221568627, -0.0688021568627, -0.0461294117647, \n    -0.0298594117647, -0.0227745098039, -0.0156837254902, -0.0146245098039, \n    -0.0251021568627, -0.0281060784314, -0.0170658823529, +0.0061933333333, \n    +0.0285727450980, +0.0305474509804, +0.0142654901961, -0.0073841176471, \n    -0.0306552941176, -0.0475117647059, -0.0517123529412, -0.0441427450980, \n    -0.0331862745098, -0.0291174509804, -0.0298174509804, -0.0287223529412, \n    -0.0231754901961, -0.0191064705882, -0.0147621568627, -0.0120274509804, \n    -0.0188311764706, -0.0317203921569, -0.0380452941176, -0.0333358823529, \n    -0.0184960784314, -0.0019686274510, +0.0121711764706, +0.0229539215686, \n    +0.0218649019608, +0.0108307843137, -0.0035064705882, -0.0196209803922, \n    -0.0345986274510, -0.0420245098039, -0.0393378431373, -0.0290096078431, \n    -0.0167847058824, -0.0053315686275, +0.0032311764706, +0.0068454901961, \n    +0.0050982352941, -0.0015498039216, -0.0085449019608, -0.0101486274510, \n    -0.0048409803922, +0.0039074509804, +0.0068694117647, -0.0014062745098, \n    -0.0196688235294, -0.0371596078431, -0.0437956862745, -0.0393976470588, \n    -0.0289139215686, -0.0154382352941, -0.0057803921569, -0.0027945098039, \n    -0.0026329411765, -0.0011129411765, +0.0003650980392, +0.0009752941176, \n    +0.0025790196078, +0.0051580392157, +0.0072403921569, +0.0056427450980, \n    -0.0009513725490, -0.0085209803922, -0.0126917647059, -0.0135174509804, \n    -0.0101425490196, -0.0046435294118, -0.0030576470588, -0.0096758823529, \n    -0.0203988235294, -0.0300927450980, -0.0358133333333, -0.0338205882353, \n    -0.0228762745098, -0.0070668627451, +0.0105974509804, +0.0254672549020, \n    +0.0334915686275, +0.0334615686275, +0.0239294117647, +0.0085090196078, \n    -0.0017174509804, -0.0033749019608, -0.0009872549020, +0.0034527450980, \n    +0.0064564705882, +0.0043621568627, -0.0001017647059, -0.0029260784314, \n    -0.0019268627451, +0.0042903921569, +0.0142952941176, +0.0240011764706, \n    +0.0293149019608, +0.0287582352941, +0.0230737254902, +0.0155460784314, \n    +0.0104956862745, +0.0088621568627, +0.0085807843137, +0.0083054901961, \n    +0.0063309803922, +0.0029978431373, +0.0004966666667, +0.0002811764706, \n    +0.0035962745098, +0.0102623529412, +0.0165094117647, +0.0206203921569, \n    +0.0220803921569, +0.0202911764706, +0.0162282352941, +0.0117882352941, \n    +0.0085270588235, +0.0085688235294, +0.0115966666667, +0.0149296078431, \n    +0.0155221568627, +0.0120813725490, +0.0054992156863, -0.0015617647059, \n    -0.0062531372549, -0.0066780392157, -0.0032911764706, +0.0024294117647, \n    +0.0083952941176, +0.0131286274510, +0.0168145098039, +0.0197107843137, \n    +0.0216315686275, +0.0227386274510, +0.0227745098039, +0.0207700000000, \n    +0.0158392156863, +0.0090835294118, +0.0037519607843, +0.0021362745098, \n    +0.0046852941176, +0.0109803921569, +0.0183164705882, +0.0218050980392, \n    +0.0192619607843, +0.0120274509804, +0.0039013725490, -0.0009215686275, \n    -0.0005745098039, +0.0032072549020, +0.0085509803922, +0.0132182352941, \n    +0.0148039215686, +0.0124882352941, +0.0084909803922, +0.0053256862745, \n    +0.0041049019608, +0.0044460784314, +0.0055768627451, +0.0063368627451, \n    +0.0058103921569, +0.0048409803922, +0.0048768627451, +0.0061035294118, \n    +0.0093527450980, +0.0147560784314, +0.0196988235294, +0.0223496078431, \n    +0.0226068627451, +0.0207339215686, +0.0178437254902, +0.0141158823529, \n    +0.0087843137255, +0.0027525490196, -0.0019805882353, -0.0044998039216, \n    -0.0048050980392, -0.0038954901961, -0.0026866666667, -0.0018070588235, \n    -0.0014121568627, -0.0010592156863, -0.0006821568627, -0.0003709803922, \n    +0.0004307843137, +0.0022798039216, +0.0049786274510, +0.0077550980392, \n    +0.0090835294118, +0.0075098039216, +0.0030996078431, -0.0020464705882, \n    -0.0056307843137, -0.0064984313725, -0.0044878431373, -0.0004249019608, \n    +0.0037039215686, +0.0063190196078, +0.0074258823529, +0.0075874509804, \n    +0.0068635294118, +0.0054513725490, +0.0042425490196, +0.0040629411765, \n    +0.0049786274510, +0.0060615686275, +0.0059358823529, +0.0047570588235, \n    +0.0029500000000, +0.0002513725490, -0.0030456862745, -0.0058941176471, \n    -0.0077192156863, -0.0083594117647, -0.0075994117647, -0.0055829411765, \n    -0.0035423529412, -0.0025250980392, -0.0023156862745, -0.0026209803922, \n    -0.0035603921569, -0.0050682352941, -0.0065941176471, -0.0077490196078, \n    -0.0078927450980, -0.0067258823529, -0.0050562745098, -0.0039613725490, \n    -0.0038774509804, -0.0046913725490, -0.0058223529412, -0.0066600000000, \n    -0.0065223529412, -0.0055529411765, -0.0039133333333, -0.0019805882353, \n    -0.0006582352941, +0.0001915686275, +0.0020464705882, +0.0048349019608, \n    +0.0065523529412, +0.0060556862745, +0.0042964705882, +0.0025790196078, \n    +0.0010472549020, -0.0004966666667, -0.0021482352941, -0.0035543137255, \n    -0.0049725490196, -0.0068994117647, -0.0093227450980, -0.0113752941176, \n    -0.0119796078431, -0.0112915686275, -0.0105554901961, -0.0101127450980, \n    -0.0097117647059, -0.0098733333333, -0.0106392156863, -0.0113513725490, \n    -0.0113154901961, -0.0103400000000, -0.0090535294118, -0.0077609803922, \n    -0.0064564705882, -0.0055111764706, -0.0052000000000, -0.0058701960784, \n    -0.0073062745098, -0.0082158823529, -0.0079464705882, -0.0070429411765, \n    -0.0061992156863, -0.0059658823529, -0.0066839215686, -0.0082098039216, \n    -0.0097954901961, -0.0100947058824, -0.0086764705882, -0.0063727450980, \n    -0.0044998039216, -0.0038715686275, -0.0042845098039, -0.0052178431373, \n    -0.0066121568627, -0.0075098039216, -0.0066480392157, -0.0042066666667, \n    -0.0014001960784, +0.0005025490196, +0.0009096078431, -0.0001137254902, \n    -0.0021182352941, -0.0042186274510, -0.0057445098039, -0.0065941176471, \n    -0.0065701960784, -0.0062650980392, -0.0064386274510, -0.0069592156863, \n    -0.0073660784314, -0.0073182352941, -0.0067617647059, -0.0062411764706, \n    -0.0063368627451, -0.0073001960784, -0.0090894117647, -0.0107290196078, \n    -0.0110341176471, -0.0098015686275, -0.0079047058824, -0.0063847058824, \n    -0.0059060784314, -0.0063429411765, -0.0070429411765, -0.0072345098039, \n    -0.0068396078431, -0.0061694117647, -0.0055649019608, -0.0051880392157, \n    -0.0047033333333, -0.0038415686275, -0.0031774509804, -0.0034945098039, \n    -0.0045058823529, -0.0052956862745, -0.0055170588235, -0.0049366666667, \n    -0.0034825490196, -0.0014660784314, +0.0005505882353, +0.0020645098039, \n    +0.0023935294118, +0.0012925490196, -0.0008617647059, -0.0031654901961, \n    -0.0045298039216, -0.0044400000000, -0.0035962745098, -0.0033449019608, \n    -0.0044280392157, -0.0063129411765, -0.0076174509804, -0.0072403921569, \n    -0.0053854901961, -0.0031056862745, -0.0013703921569, -0.0011129411765, \n    -0.0026986274510, -0.0052417647059, -0.0071386274510, -0.0072045098039, \n    -0.0052956862745, -0.0026568627451, -0.0004786274510, +0.0008617647059, \n    +0.0008198039216, -0.0014541176471, -0.0051282352941, -0.0078449019608, \n    -0.0077670588235, -0.0048170588235, -0.0004488235294, +0.0036441176471, \n    +0.0061574509804, +0.0064266666667, +0.0045656862745, +0.0015976470588, \n    -0.0010650980392, -0.0021660784314, -0.0014780392157, +0.0000658823529, \n    +0.0011727450980, +0.0011607843137, +0.0001137254902, -0.0015078431373, \n    -0.0031894117647, -0.0039911764706, -0.0031952941176, -0.0013643137255, \n    +0.0000837254902, +0.0003050980392, -0.0005025490196, -0.0017113725490, \n    -0.0025072549020, -0.0024235294118, -0.0014958823529, -0.0001554901961, \n    +0.0009154901961, +0.0012625490196, +0.0012505882353, +0.0010472549020, \n    +0.0006701960784, +0.0004666666667, +0.0008376470588, +0.0013284313725, \n    +0.0012925490196, +0.0004488235294, -0.0009694117647, -0.0025011764706, \n    -0.0033629411765, -0.0029858823529, -0.0013943137255, +0.0007898039216, \n    +0.0023576470588, +0.0026090196078, +0.0018370588235, +0.0004786274510, \n    -0.0012745098039, -0.0026029411765, -0.0026688235294, -0.0015976470588, \n    +0.0000478431373, +0.0018490196078, +0.0032792156863, +0.0041349019608, \n    +0.0045476470588, +0.0045715686275, +0.0042305882353, +0.0037458823529, \n    +0.0031713725490, +0.0028901960784, +0.0031474509804, +0.0035784313725, \n    +0.0037998039216, +0.0038774509804, +0.0038954901961, +0.0036382352941, \n    +0.0027047058824, +0.0014062745098, +0.0009813725490, +0.0020284313725, \n    +0.0038774509804, +0.0054152941176, +0.0060735294118, +0.0055050980392, \n    +0.0038356862745, +0.0016874509804, +0.0000060784314, -0.0005803921569, \n    -0.0000898039216, +0.0011429411765, +0.0028482352941, +0.0044160784314, \n    +0.0053496078431, +0.0056188235294, +0.0054272549020, +0.0052478431373, \n    +0.0054213725490, +0.0059600000000, +0.0065582352941, +0.0069472549020, \n    +0.0072943137255, +0.0077011764706, +0.0081439215686, +0.0085449019608, \n    +0.0089039215686, +0.0089458823529, +0.0084192156863, +0.0076294117647, \n    +0.0072225490196, +0.0071327450980, +0.0069770588235, +0.0065403921569, \n    +0.0058941176471, +0.0048409803922, +0.0034586274510, +0.0020645098039, \n    +0.0010950980392, +0.0010592156863, +0.0019447058824, +0.0031713725490, \n    +0.0041766666667, +0.0044400000000, +0.0037339215686, +0.0026149019608, \n    +0.0018909803922, +0.0021243137255, +0.0030098039216, +0.0036860784314, \n    +0.0035903921569, +0.0032372549020, +0.0031176470588, +0.0033688235294, \n    +0.0039133333333, +0.0046076470588, +0.0053615686275, +0.0061933333333, \n    +0.0067796078431, +0.0066839215686, +0.0058880392157, +0.0044700000000, \n    +0.0027705882353, +0.0015198039216, +0.0013343137255, +0.0021243137255, \n    +0.0032672549020, +0.0041647058824, +0.0042186274510, +0.0033688235294, \n    +0.0023156862745, +0.0017711764706, +0.0018729411765, +0.0026507843137, \n    +0.0036023529412, +0.0038954901961, +0.0033270588235, +0.0024354901961, \n    +0.0015078431373, +0.0005564705882, -0.0000956862745, +0.0001196078431, \n    +0.0011009803922, +0.0021301960784, +0.0028482352941, +0.0031654901961, \n    +0.0030278431373, +0.0025970588235, +0.0022619607843, +0.0024294117647, \n    +0.0029441176471, +0.0033988235294, +0.0036082352941, +0.0033988235294, \n    +0.0026507843137, +0.0016874509804, +0.0010233333333, +0.0010352941176, \n    +0.0015317647059, +0.0018968627451, +0.0014421568627, -0.0001315686275, \n    -0.0023876470588, -0.0042784313725, -0.0049905882353, -0.0041886274510, \n    -0.0020764705882, +0.0006223529412, +0.0027945098039, +0.0035723529412, \n    +0.0027586274510, +0.0008796078431, -0.0009335294118, -0.0019268627451, \n    -0.0021301960784, -0.0019447058824, -0.0016454901961, -0.0014121568627, \n    -0.0011907843137, -0.0008556862745, -0.0001974509804, +0.0008556862745, \n    +0.0021721568627, +0.0033807843137, +0.0040031372549, +0.0036501960784, \n    +0.0022319607843, +0.0002633333333, -0.0014001960784, -0.0020403921569, \n    -0.0015976470588, -0.0005266666667, +0.0007719607843, +0.0019088235294, \n    +0.0022319607843, +0.0016754901961, +0.0006162745098, -0.0006162745098, \n    -0.0018790196078, -0.0031235294118, -0.0042845098039, -0.0051700000000, \n    -0.0055290196078, -0.0050264705882, -0.0037158823529, -0.0021062745098, \n    -0.0007360784314, +0.0000478431373, +0.0002154901961, -0.0000300000000, \n    -0.0003111764706, -0.0005205882353, -0.0006882352941, -0.0005984313725, \n    -0.0002872549020, -0.0000898039216, -0.0001076470588, -0.0004009803922, \n    -0.0008317647059, -0.0010472549020, -0.0008137254902, -0.0002213725490, \n    +0.0005984313725, +0.0013462745098, +0.0018370588235, +0.0022619607843, \n    +0.0025670588235, +0.0023696078431, +0.0017892156863, +0.0011009803922, \n    +0.0005625490196, +0.0005147058824, +0.0011190196078, +0.0020525490196, \n    +0.0027047058824, +0.0026329411765, +0.0017592156863, +0.0003770588235, \n    -0.0008796078431, -0.0015078431373, -0.0017950980392, -0.0021362745098, \n    -0.0023815686275, -0.0023754901961, -0.0022500000000, -0.0020943137255, \n    -0.0018729411765, -0.0014301960784, -0.0006760784314, +0.0000478431373, \n    +0.0002633333333, -0.0003650980392, -0.0017711764706, -0.0033509803922, \n    -0.0042545098039, -0.0040450980392, -0.0028721568627, -0.0012925490196, \n    +0.0000000000000, +0.0005386274510, +0.0004307843137, +0.0001017647059, \n    -0.0000419607843, +0.0002333333333, +0.0007241176471, +0.0010111764706, \n    +0.0008915686275, +0.0003111764706, -0.0004905882353, -0.0010831372549, \n    -0.0012745098039, -0.0010531372549, -0.0004427450980, +0.0001315686275, \n    +0.0001735294118, -0.0003111764706, -0.0010770588235, -0.0018729411765, \n    -0.0022319607843, -0.0019327450980, -0.0012925490196, -0.0007060784314, \n    -0.0003829411765, -0.0003290196078, -0.0005386274510, -0.0010292156863, \n    -0.0015976470588, -0.0020045098039, -0.0020045098039, -0.0014001960784, \n    -0.0004488235294, +0.0001496078431, +0.0002931372549, +0.0003709803922, \n    +0.0004786274510, +0.0003770588235, +0.0000598039216, -0.0003531372549, \n    -0.0007001960784, -0.0008017647059, -0.0004966666667, +0.0000180392157, \n    +0.0004666666667, +0.0008676470588, +0.0013164705882, +0.0016215686275, \n    +0.0015678431373, +0.0011429411765, +0.0004068627451, -0.0003890196078, \n    -0.0009454901961, -0.0011070588235, -0.0008556862745, -0.0004368627451, \n    -0.0001915686275, -0.0002274509804, -0.0003949019608, -0.0005684313725, \n    -0.0008017647059, -0.0011907843137, -0.0016215686275, -0.0020703921569, \n    -0.0025370588235, -0.0030698039216, -0.0036680392157, -0.0041588235294, \n    -0.0043203921569, -0.0042545098039, -0.0042245098039, -0.0043860784314, \n    -0.0045417647059, -0.0044219607843, -0.0038835294118, -0.0029619607843, \n    -0.0018429411765, -0.0009394117647, -0.0005386274510, -0.0007300000000, \n    -0.0012686274510, -0.0017772549020, -0.0018370588235, -0.0012984313725, \n    -0.0005266666667, -0.0001554901961, -0.0004786274510, -0.0012505882353, \n    -0.0019566666667, -0.0021900000000, -0.0018070588235, -0.0010292156863, \n    -0.0003170588235, +0.0000478431373, +0.0000717647059, -0.0002872549020, \n    -0.0007778431373, -0.0009752941176, -0.0008737254902, -0.0007180392157, \n    -0.0005984313725, -0.0007898039216, -0.0014719607843, -0.0023935294118, \n    -0.0031296078431, -0.0032731372549, -0.0026627450980, -0.0015856862745, \n    -0.0005505882353, +0.0000060784314, +0.0000300000000, -0.0001854901961, \n    -0.0004847058824, -0.0009335294118, -0.0014541176471, -0.0020045098039, \n    -0.0024354901961, -0.0024833333333, -0.0021301960784, -0.0015917647059, \n    -0.0009633333333, -0.0002572549020, +0.0004905882353, +0.0010770588235, \n    +0.0012505882353, +0.0009813725490, +0.0005205882353, +0.0001615686275, \n    -0.0001076470588, -0.0003231372549, -0.0003050980392, -0.0001017647059, \n    +0.0000000000000, -0.0001974509804, -0.0006760784314, -0.0011907843137, \n    -0.0016335294118, -0.0020464705882, -0.0021182352941, -0.0017472549020, \n    -0.0012266666667, -0.0008915686275, -0.0009035294118, -0.0012147058824, \n    -0.0016813725490, -0.0020403921569, -0.0020703921569, -0.0017113725490, \n    -0.0012447058824, -0.0009633333333, -0.0008437254902, -0.0007180392157, \n    -0.0005745098039, -0.0003050980392, +0.0002094117647, +0.0008676470588, \n    +0.0012386274510, +0.0011368627451, +0.0006641176471, +0.0000898039216, \n    -0.0003411764706, -0.0004786274510, -0.0003231372549, +0.0001915686275, \n    +0.0008556862745, +0.0013103921569, +0.0013223529412, +0.0009154901961, \n    +0.0003949019608, +0.0000837254902, +0.0000000000000, +0.0000956862745, \n    +0.0002213725490, +0.0001915686275, +0.0000180392157, -0.0002035294118, \n    -0.0004607843137, -0.0005325490196, -0.0002154901961, +0.0003231372549, \n    +0.0008078431373, +0.0010890196078, +0.0011607843137, +0.0010233333333, \n    +0.0007658823529, +0.0006641176471, +0.0009096078431, +0.0014600000000, \n    +0.0019088235294, +0.0020584313725, +0.0017831372549, +0.0009933333333, \n    -0.0000239215686, -0.0006941176471, -0.0006521568627, +0.0002274509804, \n    +0.0015617647059, +0.0026329411765, +0.0030398039216, +0.0027825490196, \n    +0.0020764705882, +0.0011429411765, +0.0002692156863, -0.0001554901961, \n    -0.0000539215686, +0.0003650980392, +0.0008256862745, +0.0010950980392, \n    +0.0008796078431, +0.0002333333333, -0.0005205882353, -0.0009454901961, \n    -0.0007600000000, -0.0001137254902, +0.0005803921569, +0.0011129411765, \n    +0.0012447058824, +0.0008317647059, +0.0001435294118, -0.0004188235294, \n    -0.0006343137255, -0.0002333333333, +0.0007241176471, +0.0017054901961, \n    +0.0021960784314, +0.0021123529412, +0.0015798039216, +0.0008796078431, \n    +0.0001735294118, -0.0003650980392, -0.0005564705882, -0.0004188235294, \n    -0.0002692156863, -0.0001854901961, +0.0000717647059, +0.0006521568627, \n    +0.0013582352941, +0.0020225490196, +0.0023996078431, +0.0022798039216, \n    +0.0016694117647, +0.0008198039216, +0.0001615686275, +0.0001137254902, \n    +0.0007539215686, +0.0017652941176, +0.0025790196078, +0.0027225490196, \n    +0.0020884313725, +0.0010052941176, -0.0000239215686, -0.0006343137255, \n    -0.0007539215686, -0.0006701960784, -0.0005984313725, -0.0005325490196, \n    -0.0005147058824, -0.0005564705882, -0.0006701960784, -0.0008796078431, \n    -0.0010770588235, -0.0011368627451, -0.0011309803922, -0.0011607843137, \n    -0.0013882352941, -0.0016994117647, -0.0017892156863, -0.0013403921569, \n    -0.0002931372549, +0.0010411764706, +0.0021362745098, +0.0026388235294, \n    +0.0025072549020, +0.0019268627451, +0.0011788235294, +0.0004488235294, \n    -0.0001017647059, -0.0004666666667, -0.0006343137255, -0.0005386274510, \n    -0.0002394117647, +0.0000119607843, +0.0000658823529, -0.0001796078431, \n    -0.0006941176471, -0.0011249019608, -0.0011668627451, -0.0007419607843, \n    +0.0002035294118, +0.0014480392157, +0.0022500000000, +0.0020525490196, \n    +0.0009813725490, -0.0005386274510, -0.0020645098039, -0.0030337254902, \n    -0.0029619607843, -0.0018070588235, -0.0000478431373, +0.0014241176471, \n    +0.0020584313725, +0.0019149019608, +0.0013045098039, +0.0004905882353, \n    -0.0000898039216, -0.0002452941176, +0.0000837254902, +0.0007778431373, \n    +0.0015737254902, +0.0022500000000, +0.0028362745098, +0.0032850980392, \n    +0.0035245098039, +0.0034586274510, +0.0029260784314, +0.0018011764706, \n    +0.0004307843137, -0.0006882352941, -0.0011070588235, -0.0007658823529, \n    -0.0001315686275, +0.0002633333333, +0.0003890196078, +0.0003949019608, \n    +0.0004905882353, +0.0005325490196, +0.0003770588235, +0.0000717647059, \n    -0.0001915686275, -0.0003590196078, -0.0003650980392, -0.0004068627451, \n    -0.0007060784314, -0.0012805882353, -0.0018909803922, -0.0021362745098, \n    -0.0017831372549, -0.0010950980392, -0.0003949019608, +0.0000717647059, \n    +0.0003411764706, +0.0004727450980, +0.0005864705882, +0.0007958823529, \n    +0.0012088235294, +0.0017592156863, +0.0020884313725, +0.0019327450980, \n    +0.0014719607843, +0.0009454901961, +0.0004786274510, +0.0001315686275, \n    +0.0001315686275, +0.0005325490196, +0.0010650980392, +0.0015258823529, \n    +0.0019268627451, +0.0021900000000, +0.0022798039216, +0.0020703921569, \n    +0.0014062745098, +0.0004307843137, -0.0004368627451, -0.0009694117647, \n    -0.0011968627451, -0.0012207843137, -0.0012805882353, -0.0014062745098, \n    -0.0012207843137, -0.0005564705882, +0.0003290196078, +0.0011668627451, \n    +0.0017711764706, +0.0018729411765, +0.0014182352941, +0.0005386274510, \n    -0.0005266666667, -0.0014719607843, -0.0020943137255, -0.0023156862745, \n    -0.0020345098039, -0.0012984313725, -0.0003170588235, +0.0005684313725, \n    +0.0012386274510, +0.0016635294118, +0.0015198039216, +0.0007658823529, \n    -0.0002035294118, -0.0011368627451, -0.0019149019608, -0.0023396078431, \n    -0.0022978431373, -0.0018729411765, -0.0012505882353, -0.0005923529412, \n    +0.0000778431373, +0.0006223529412, +0.0008376470588, +0.0008017647059, \n    +0.0007300000000, +0.0005025490196, -0.0000060784314, -0.0007839215686, \n    -0.0016215686275, -0.0021182352941, -0.0018909803922, -0.0009215686275, \n    +0.0004129411765, +0.0016276470588, +0.0023337254902, +0.0023515686275, \n    +0.0018490196078, +0.0011009803922, +0.0003411764706, -0.0001796078431, \n    -0.0003411764706, -0.0000837254902, +0.0003890196078, +0.0008796078431, \n    +0.0011309803922, +0.0008796078431, +0.0001554901961, -0.0005025490196, \n    -0.0007658823529, -0.0006401960784, -0.0003770588235, -0.0002633333333, \n    -0.0004727450980, -0.0010233333333, -0.0017831372549, -0.0024594117647, \n    -0.0026688235294, -0.0021182352941, -0.0010411764706, +0.0000539215686, \n    +0.0008137254902, +0.0010411764706, +0.0007539215686, +0.0001974509804, \n    -0.0003890196078, -0.0007719607843, -0.0010292156863, -0.0014062745098, \n    -0.0019986274510, -0.0026090196078, -0.0028123529412, -0.0020823529412, \n    -0.0005864705882, +0.0010711764706, +0.0020045098039, +0.0014780392157, \n    -0.0004427450980, -0.0026927450980, -0.0042066666667, -0.0044700000000, \n    -0.0034466666667, -0.0016037254902, +0.0002752941176, +0.0015558823529, \n    +0.0019268627451, +0.0014301960784, +0.0003111764706, -0.0009574509804, \n    -0.0018309803922, -0.0019447058824, -0.0011727450980, +0.0003050980392, \n    +0.0014719607843, +0.0013643137255, +0.0001554901961, -0.0014241176471, \n    -0.0027525490196, -0.0031415686275, -0.0024054901961, -0.0009454901961, \n    +0.0005266666667, +0.0010831372549, +0.0002872549020, -0.0009633333333, \n    -0.0015856862745, -0.0010890196078, +0.0004307843137, +0.0022619607843, \n    +0.0034466666667, +0.0034766666667, +0.0024413725490, +0.0008676470588, \n    -0.0006282352941, -0.0013284313725, -0.0007658823529, +0.0005505882353, \n    +0.0017174509804, +0.0022558823529, +0.0021721568627, +0.0016994117647, \n    +0.0011309803922, +0.0008078431373, +0.0010770588235, +0.0016933333333, \n    +0.0019805882353, +0.0015378431373, +0.0004607843137, -0.0007300000000, \n    -0.0015976470588, -0.0018370588235, -0.0010770588235, +0.0005864705882, \n    +0.0021601960784, +0.0023876470588, +0.0009813725490, -0.0011249019608, \n    -0.0027764705882, -0.0033509803922, -0.0027347058824, -0.0013284313725, \n    +0.0001017647059, +0.0008617647059, +0.0005147058824, -0.0005803921569, \n    -0.0015258823529, -0.0016156862745, -0.0009335294118, -0.0000539215686, \n    +0.0005745098039, +0.0007958823529, +0.0003770588235, -0.0005684313725, \n    -0.0015498039216, -0.0020943137255, -0.0019686274510, -0.0012386274510, \n    -0.0001796078431, +0.0008556862745, +0.0016933333333, +0.0020403921569, \n    +0.0018011764706, +0.0013582352941, +0.0010472549020, +0.0007539215686, \n    +0.0004068627451, -0.0001196078431, -0.0007658823529, -0.0013643137255, \n    -0.0018490196078, -0.0022439215686, -0.0024652941176, -0.0025192156863, \n    -0.0023876470588, -0.0022678431373, -0.0022439215686, -0.0023456862745, \n    -0.0025370588235, -0.0026927450980, -0.0025550980392, -0.0020225490196, \n    -0.0012147058824, -0.0004847058824, -0.0002154901961, -0.0005325490196, \n    -0.0011249019608, -0.0014062745098, -0.0010052941176, +0.0000837254902, \n    +0.0014600000000, +0.0024772549020, +0.0026747058824, +0.0020464705882, \n    +0.0009335294118, -0.0001376470588, -0.0006103921569, -0.0002394117647, \n    +0.0005684313725, +0.0012925490196, +0.0018131372549, +0.0021301960784, \n    +0.0022978431373, +0.0024533333333, +0.0025131372549, +0.0022558823529, \n    +0.0016037254902, +0.0004607843137, -0.0010352941176, -0.0024115686275, \n    -0.0033090196078, -0.0037339215686, -0.0035843137255, -0.0027347058824, \n    -0.0014660784314, -0.0000898039216, +0.0012625490196, +0.0024833333333, \n    +0.0034107843137, +0.0038356862745, +0.0035603921569, +0.0026149019608, \n    +0.0014062745098, +0.0004188235294, -0.0001496078431, -0.0003829411765, \n    -0.0002633333333, +0.0002692156863, +0.0009872549020, +0.0016096078431, \n    +0.0020345098039, +0.0023396078431, +0.0024652941176, +0.0023876470588, \n    +0.0020884313725, +0.0015678431373, +0.0009035294118, +0.0003470588235, \n    +0.0001017647059, +0.0002872549020, +0.0007839215686, +0.0011968627451, \n    +0.0010770588235, +0.0004488235294, -0.0004009803922, -0.0011309803922, \n    -0.0014541176471, -0.0012984313725, -0.0008556862745, -0.0004666666667, \n    -0.0004607843137, -0.0007778431373, -0.0010770588235, -0.0010352941176, \n    -0.0007958823529, -0.0005745098039, -0.0002394117647, +0.0003350980392, \n    +0.0009872549020, +0.0014480392157, +0.0013762745098, +0.0007060784314, \n    -0.0002154901961, -0.0009274509804, -0.0012447058824, -0.0012386274510, \n    -0.0010111764706, -0.0007180392157, -0.0004547058824, -0.0001256862745, \n    +0.0003411764706, +0.0007839215686, +0.0010472549020, +0.0012027450980, \n    +0.0011070588235, +0.0007241176471, +0.0003231372549, -0.0000300000000, \n    -0.0003111764706, -0.0003949019608, -0.0003890196078, -0.0003411764706, \n    -0.0002035294118, -0.0002154901961, -0.0005564705882, -0.0009872549020, \n    -0.0011847058824, -0.0009872549020, -0.0004129411765, +0.0004249019608, \n    +0.0013343137255, +0.0020584313725, +0.0023996078431, +0.0020943137255, \n    +0.0011190196078, +0.0000000000000, -0.0008317647059, -0.0011788235294, \n    -0.0010292156863, -0.0005086274510, +0.0002692156863, +0.0010592156863, \n    +0.0015678431373, +0.0017352941176, +0.0015737254902, +0.0010233333333, \n    +0.0003470588235, -0.0000300000000, +0.0000717647059, +0.0005625490196, \n    +0.0012327450980, +0.0018909803922, +0.0022739215686, +0.0022260784314, \n    +0.0017831372549, +0.0009872549020, +0.0000180392157, -0.0007480392157, \n    -0.0011968627451, -0.0013103921569, -0.0010831372549, -0.0008256862745, \n    -0.0007241176471, -0.0007121568627, -0.0007958823529, -0.0008676470588, \n    -0.0005923529412, -0.0000358823529, +0.0004488235294, +0.0007719607843, \n    +0.0010650980392, +0.0013045098039, +0.0013762745098, +0.0012088235294, \n    +0.0008915686275, +0.0005266666667, +0.0000239215686, -0.0006343137255, \n    -0.0011009803922, -0.0011488235294, -0.0007839215686, -0.0001076470588, \n    +0.0007778431373, +0.0016694117647, +0.0022917647059, +0.0024054901961, \n    +0.0019566666667, +0.0011907843137, +0.0005684313725, +0.0003350980392, \n    +0.0003770588235, +0.0004188235294, +0.0002692156863, -0.0000837254902, \n    -0.0004547058824, -0.0006462745098, -0.0006103921569, -0.0003829411765, \n    -0.0000837254902, +0.0000000000000, -0.0003470588235, -0.0011249019608, \n    -0.0019088235294, -0.0021482352941, -0.0017113725490, -0.0007241176471, \n    +0.0006043137255, +0.0018370588235, +0.0024772549020, +0.0023576470588, \n    +0.0015976470588, +0.0005564705882, -0.0003770588235, -0.0009513725490, \n    -0.0010292156863, -0.0006462745098, +0.0000119607843, +0.0007001960784, \n    +0.0011309803922, +0.0013403921569, +0.0014719607843, +0.0015439215686, \n    +0.0016037254902, +0.0016813725490, +0.0014900000000, +0.0009215686275, \n    +0.0000956862745, -0.0008017647059, -0.0015078431373, -0.0016994117647, \n    -0.0013523529412, -0.0008198039216, -0.0004129411765, -0.0001796078431, \n    -0.0002452941176, -0.0006882352941, -0.0012566666667, -0.0015976470588, \n    -0.0014719607843, -0.0008078431373, +0.0001017647059, +0.0007958823529, \n    +0.0009035294118, +0.0005505882353, +0.0001974509804, +0.0002633333333, \n    +0.0007001960784, +0.0011309803922, +0.0013164705882, +0.0012566666667, \n    +0.0009394117647, +0.0004727450980, +0.0000119607843, -0.0002633333333, \n    -0.0002633333333, -0.0001076470588, +0.0000239215686, +0.0000300000000, \n    -0.0001674509804, -0.0005325490196, -0.0008796078431, -0.0009933333333, \n    -0.0008017647059, -0.0005325490196, -0.0005745098039, -0.0010831372549, \n    -0.0017472549020, -0.0022500000000, -0.0024952941176, -0.0024772549020, \n    -0.0023037254902, -0.0022439215686, -0.0022798039216, -0.0021841176471, \n    -0.0018968627451, -0.0014780392157, -0.0009096078431, -0.0003590196078, \n    -0.0001196078431, -0.0003709803922, -0.0008437254902, -0.0011488235294, \n    -0.0010411764706, -0.0005745098039, +0.0000419607843, +0.0005505882353, \n    +0.0006701960784, +0.0004009803922, -0.0000478431373, -0.0004129411765, \n    -0.0004427450980, -0.0001554901961, +0.0001554901961, +0.0002333333333, \n    +0.0000180392157, -0.0003170588235, -0.0005984313725, -0.0007719607843, \n    -0.0008198039216, -0.0007778431373, -0.0007180392157, -0.0006582352941, \n    -0.0005803921569, -0.0005803921569, -0.0006521568627, -0.0006941176471, \n    -0.0006223529412, -0.0005025490196, -0.0004188235294, -0.0003829411765, \n    -0.0003350980392, -0.0001796078431, +0.0001376470588, +0.0004368627451, \n    +0.0005684313725, +0.0005205882353, +0.0003531372549, +0.0000898039216, \n    -0.0001615686275, -0.0003650980392, -0.0005025490196, -0.0005266666667, \n    -0.0003470588235, +0.0000358823529, +0.0004009803922, +0.0005325490196, \n    +0.0005386274510, +0.0004966666667, +0.0003531372549, +0.0001376470588, \n    -0.0001615686275, -0.0005445098039, -0.0007839215686, -0.0007480392157, \n    -0.0004249019608, +0.0001017647059, +0.0007241176471, +0.0012447058824, \n    +0.0014541176471, +0.0012505882353, +0.0006941176471, -0.0000358823529, \n    -0.0006701960784, -0.0009215686275, -0.0007480392157, -0.0002154901961, \n    +0.0004427450980, +0.0010531372549, +0.0013523529412, +0.0012088235294, \n    +0.0008556862745, +0.0006223529412, +0.0005325490196, +0.0005205882353, \n    +0.0005325490196, +0.0005745098039, +0.0006103921569, +0.0005505882353, \n    +0.0003590196078, +0.0001315686275, +0.0000778431373, +0.0003770588235, \n    +0.0008198039216, +0.0011070588235, +0.0011190196078, +0.0009154901961, \n    +0.0006941176471, +0.0004009803922, -0.0000239215686, -0.0004368627451, \n    -0.0007300000000, -0.0008976470588, -0.0008676470588, -0.0006641176471, \n    -0.0004368627451, -0.0002692156863, -0.0002513725490, -0.0003890196078, \n    -0.0005684313725, -0.0006223529412, -0.0006401960784, -0.0007060784314, \n    -0.0007600000000, -0.0006401960784, -0.0004307843137, -0.0002274509804, \n    -0.0000717647059, +0.0000837254902, +0.0003231372549, +0.0006760784314, \n    +0.0009752941176, +0.0009394117647, +0.0006043137255, +0.0002931372549, \n    +0.0000539215686, -0.0002213725490, -0.0004488235294, -0.0004966666667, \n    -0.0004966666667, -0.0004488235294, -0.0003170588235, -0.0001554901961, \n    +0.0000419607843, +0.0002572549020, +0.0002154901961, -0.0000778431373, \n    -0.0003590196078, -0.0004847058824, -0.0004905882353, -0.0002811764706, \n    +0.0001615686275, +0.0006641176471, +0.0009096078431, +0.0007719607843, \n    +0.0003949019608, +0.0000060784314, -0.0002633333333, -0.0004368627451, \n    -0.0006462745098, -0.0009933333333, -0.0013643137255, -0.0015617647059, \n    -0.0014360784314, -0.0009274509804, -0.0002692156863, +0.0001615686275, \n    +0.0003050980392, +0.0002394117647, -0.0000180392157, -0.0003650980392, \n    -0.0006223529412, -0.0007898039216, -0.0007658823529, -0.0004607843137, \n    +0.0000419607843, +0.0004666666667, +0.0005625490196, +0.0003411764706, \n    +0.0000358823529, -0.0001735294118, -0.0001974509804, -0.0000778431373, \n    +0.0001017647059, +0.0001674509804, +0.0000956862745, +0.0000180392157, \n    +0.0000180392157, +0.0000180392157, -0.0000119607843, -0.0000898039216, \n    -0.0001915686275, -0.0003650980392, -0.0006223529412, -0.0008617647059, \n    -0.0008737254902, -0.0006162745098, -0.0001915686275, +0.0002154901961, \n    +0.0004427450980, +0.0003650980392, +0.0000598039216, -0.0003290196078, \n    -0.0006462745098, -0.0007419607843, -0.0006043137255, -0.0003531372549, \n    -0.0001196078431, -0.0000119607843, -0.0000837254902, -0.0002992156863, \n    -0.0005086274510, -0.0004249019608, -0.0000180392157, +0.0003829411765, \n    +0.0004786274510, +0.0001915686275, -0.0003949019608, -0.0010233333333, \n    -0.0014001960784, -0.0014600000000, -0.0011968627451, -0.0007001960784, \n    -0.0002333333333, +0.0001315686275, +0.0004607843137, +0.0007539215686, \n    +0.0009335294118, +0.0009513725490, +0.0007241176471, +0.0002692156863, \n    -0.0003050980392, -0.0008617647059, -0.0012984313725, -0.0014719607843, \n    -0.0013223529412, -0.0009574509804, -0.0005803921569, -0.0002213725490, \n    +0.0002035294118, +0.0007180392157, +0.0011309803922, +0.0012805882353, \n    +0.0011070588235, +0.0006821568627, +0.0002274509804, -0.0000180392157, \n    +0.0000239215686, +0.0003111764706, +0.0006582352941, +0.0009096078431, \n    +0.0010352941176, +0.0011190196078, +0.0012447058824, +0.0013403921569, \n    +0.0012505882353, +0.0009633333333, +0.0006162745098, +0.0002992156863, \n    +0.0000717647059, +0.0000539215686, +0.0002394117647, +0.0005205882353, \n    +0.0007480392157, +0.0008437254902, +0.0007839215686, +0.0005684313725, \n    +0.0002274509804, -0.0000358823529, -0.0000778431373, +0.0001137254902, \n    +0.0004068627451, +0.0006462745098, +0.0008496078431, +0.0010650980392, \n    +0.0011788235294, +0.0012327450980, +0.0013403921569, +0.0014241176471, \n    +0.0013164705882, +0.0010233333333, +0.0006760784314, +0.0002931372549, \n    -0.0001496078431, -0.0005684313725, -0.0007719607843, -0.0006462745098, \n    -0.0002513725490, +0.0001796078431, +0.0005086274510, +0.0007360784314, \n    +0.0008078431373, +0.0006103921569, +0.0002752941176, +0.0000060784314, \n    -0.0001376470588, -0.0002094117647, -0.0002213725490, -0.0001674509804, \n    -0.0000837254902, -0.0000539215686, -0.0001196078431, -0.0002513725490, \n    -0.0002394117647, +0.0000300000000, +0.0003350980392, +0.0004666666667, \n    +0.0004607843137, +0.0003770588235, +0.0003290196078, +0.0003650980392, \n    +0.0004368627451, +0.0004905882353, +0.0004666666667, +0.0003111764706, \n    +0.0000956862745, -0.0001256862745, -0.0002572549020, -0.0001854901961, \n    +0.0000837254902, +0.0005564705882, +0.0011788235294, +0.0016994117647, \n    +0.0018729411765, +0.0016515686275, +0.0011488235294, +0.0005205882353, \n    -0.0000658823529, -0.0004188235294, -0.0004068627451, +0.0000000000000, \n    +0.0006043137255, +0.0010770588235, +0.0012984313725, +0.0013343137255, \n    +0.0011907843137, +0.0008856862745, +0.0006043137255, +0.0005205882353, \n    +0.0005505882353, +0.0005564705882, +0.0004607843137, +0.0002811764706, \n    +0.0000898039216, -0.0000717647059, -0.0002752941176, -0.0004427450980, \n    -0.0004607843137, -0.0003590196078, -0.0002633333333, -0.0002752941176, \n    -0.0003650980392, -0.0004368627451, -0.0003829411765, -0.0001496078431, \n    +0.0001615686275, +0.0003650980392, +0.0003650980392, +0.0001674509804, \n    -0.0002094117647, -0.0006941176471, -0.0010650980392, -0.0011668627451, \n    -0.0010890196078, -0.0009694117647, -0.0008256862745, -0.0006401960784, \n    -0.0004786274510, -0.0003770588235, -0.0002872549020, -0.0000658823529, \n    +0.0002394117647, +0.0004307843137, +0.0003350980392, +0.0000060784314, \n    -0.0003829411765, -0.0006582352941, -0.0007658823529, -0.0007060784314, \n    -0.0004905882353, -0.0001796078431, +0.0001615686275, +0.0004427450980, \n    +0.0006223529412, +0.0006641176471, +0.0005625490196, +0.0003590196078, \n    +0.0001735294118, +0.0000478431373, -0.0001196078431, -0.0004307843137, \n    -0.0007060784314, -0.0007060784314, -0.0003770588235, +0.0000778431373, \n    +0.0005625490196, +0.0010292156863, +0.0013703921569, +0.0013762745098, \n    +0.0010531372549, +0.0005505882353, +0.0000358823529, -0.0004068627451, \n    -0.0007600000000, -0.0009933333333, -0.0010233333333, -0.0007600000000, \n    -0.0001854901961, +0.0004427450980, +0.0008376470588, +0.0008737254902, \n    +0.0006343137255, +0.0001674509804, -0.0003890196078, -0.0008556862745, \n    -0.0011309803922, -0.0012266666667, -0.0011129411765, -0.0008496078431, \n    -0.0005625490196, -0.0003531372549, -0.0002992156863, -0.0003709803922, \n    -0.0004607843137, -0.0004666666667, -0.0004488235294, -0.0004905882353, \n    -0.0005864705882, -0.0007241176471, -0.0009035294118, -0.0010531372549, \n    -0.0011549019608, -0.0011727450980, -0.0010531372549, -0.0008437254902, \n    -0.0005564705882, -0.0001796078431, +0.0001256862745, +0.0001496078431, \n    -0.0001256862745, -0.0005325490196, -0.0009154901961, -0.0011249019608, \n    -0.0010770588235, -0.0008256862745, -0.0003890196078, +0.0002811764706, \n    +0.0009274509804, +0.0011847058824, +0.0009694117647, +0.0004547058824, \n    -0.0000478431373, -0.0003111764706, -0.0004249019608, -0.0004905882353, \n    -0.0004905882353, -0.0004009803922, -0.0003170588235, -0.0002452941176, \n    -0.0001735294118, -0.0000956862745, -0.0000717647059, -0.0000539215686, \n    +0.0000119607843, +0.0002992156863, +0.0007480392157, +0.0010831372549, \n    +0.0010770588235, +0.0007898039216, +0.0003111764706, -0.0001915686275, \n    -0.0005386274510, -0.0006462745098, -0.0004547058824, +0.0000060784314, \n    +0.0004847058824, +0.0007419607843, +0.0007719607843, +0.0006701960784, \n    +0.0004547058824, +0.0001076470588, -0.0003290196078, -0.0006582352941, \n    -0.0007360784314, -0.0005745098039, -0.0002752941176, +0.0000898039216, \n    +0.0004009803922, +0.0005147058824, +0.0003829411765, +0.0001196078431, \n    -0.0001196078431, -0.0002692156863, -0.0003111764706, -0.0002572549020, \n    -0.0001017647059, +0.0001315686275, +0.0003890196078, +0.0005745098039, \n    +0.0005803921569, +0.0003590196078, +0.0001196078431, +0.0000358823529, \n    +0.0001196078431, +0.0002992156863, +0.0004847058824, +0.0005505882353, \n    +0.0004427450980, +0.0001315686275, -0.0002452941176, -0.0006043137255, \n    -0.0008556862745, -0.0009813725490, -0.0008915686275, -0.0005266666667, \n    +0.0000778431373, +0.0007539215686, +0.0013284313725, +0.0015798039216, \n    +0.0013762745098, +0.0008017647059, +0.0001615686275, -0.0002333333333, \n    -0.0002692156863, -0.0000717647059, +0.0002274509804, +0.0005564705882, \n    +0.0008437254902, +0.0009154901961, +0.0006821568627, +0.0002274509804, \n    -0.0001915686275, -0.0004666666667, -0.0005625490196, -0.0004427450980, \n    -0.0000956862745, +0.0002992156863, +0.0005923529412, +0.0006821568627, \n    +0.0006103921569, +0.0005025490196, +0.0004427450980, +0.0003770588235, \n    +0.0002811764706, +0.0001674509804, +0.0000598039216, +0.0000000000000, \n    +0.0000239215686, +0.0001376470588, +0.0002811764706, +0.0003231372549, \n    +0.0001615686275, -0.0001376470588, -0.0004488235294, -0.0006401960784, \n    -0.0006701960784, -0.0005025490196, -0.0001376470588, +0.0002452941176, \n    +0.0003770588235, +0.0001735294118, -0.0003170588235, -0.0009215686275, \n    -0.0013703921569, -0.0014719607843, -0.0011847058824, -0.0006821568627, \n    -0.0002572549020, -0.0000717647059, -0.0001256862745, -0.0003290196078, \n    -0.0005625490196, -0.0007241176471, -0.0008317647059, -0.0007658823529, \n    -0.0004547058824, -0.0000119607843, +0.0002513725490, +0.0002154901961, \n    -0.0000658823529, -0.0003890196078, -0.0005386274510, -0.0004009803922, \n    -0.0001017647059, +0.0001974509804, +0.0003890196078, +0.0003650980392, \n    +0.0000778431373, -0.0003350980392, -0.0006941176471, -0.0008198039216, \n    -0.0006701960784, -0.0003350980392, +0.0000539215686, +0.0004786274510, \n    +0.0008017647059, +0.0008437254902, +0.0005803921569, +0.0001915686275, \n    -0.0001496078431, -0.0004307843137, -0.0007360784314, -0.0010052941176, \n    -0.0009992156863, -0.0006821568627, -0.0001496078431, +0.0005325490196, \n    +0.0012686274510, +0.0017413725490, +0.0016933333333, +0.0010950980392, \n    +0.0000956862745, -0.0010172549020, -0.0018668627451, -0.0020464705882, \n    -0.0013703921569, -0.0000358823529, +0.0014958823529, +0.0025731372549, \n    +0.0026568627451, +0.0014360784314, -0.0008676470588, -0.0032970588235, \n    -0.0045117647059, -0.0038894117647, -0.0018070588235, +0.0008017647059, \n    +0.0030996078431, +0.0043143137255, +0.0040211764706, +0.0023754901961, \n    +0.0002692156863, -0.0012147058824, -0.0014480392157, -0.0006462745098, \n    +0.0004727450980, +0.0012327450980, +0.0012984313725, +0.0006882352941, \n    -0.0002692156863, -0.0010711764706, -0.0012147058824, -0.0006821568627, \n    +0.0000837254902, +0.0006343137255, +0.0008496078431, +0.0008676470588, \n    +0.0007539215686, +0.0003949019608, +0.0000000000000, -0.0000539215686, \n    +0.0002811764706, +0.0006882352941, +0.0008137254902, +0.0005564705882, \n    +0.0001196078431, -0.0002811764706, -0.0005864705882, -0.0006821568627, \n    -0.0004727450980, -0.0000060784314, +0.0005445098039, +0.0009872549020, \n    +0.0011788235294, +0.0011070588235, +0.0007180392157, +0.0000598039216, \n    -0.0006282352941, -0.0010650980392, -0.0011129411765, -0.0008676470588, \n    -0.0005803921569, -0.0003290196078, -0.0000898039216, +0.0000778431373, \n    +0.0000898039216, -0.0000060784314, -0.0001137254902, -0.0001674509804, \n    -0.0002154901961, -0.0001796078431, +0.0000478431373, +0.0004905882353, \n    +0.0008915686275, +0.0009274509804, +0.0005325490196, -0.0000180392157, \n    -0.0005325490196, -0.0008496078431, -0.0009154901961, -0.0007600000000, \n    -0.0005325490196, -0.0003890196078, -0.0004427450980, -0.0006462745098, \n    -0.0008496078431, -0.0008796078431, -0.0006941176471, -0.0003709803922, \n    -0.0000119607843, +0.0002094117647, +0.0002811764706, +0.0003050980392, \n    +0.0003350980392, +0.0003590196078, +0.0004009803922, +0.0004068627451, \n    +0.0002633333333, -0.0000358823529, -0.0003531372549, -0.0005325490196, \n    -0.0004727450980, -0.0001496078431, +0.0003890196078, +0.0008796078431, \n    +0.0009454901961, +0.0004727450980, -0.0002094117647, -0.0006582352941, \n    -0.0006462745098, -0.0003170588235, +0.0000598039216, +0.0002213725490, \n    +0.0000358823529, -0.0004488235294, -0.0010292156863, -0.0014062745098, \n    -0.0013882352941, -0.0011009803922, -0.0007241176471, -0.0003411764706, \n    -0.0000478431373, +0.0000956862745, +0.0001435294118, +0.0001315686275, \n    +0.0000717647059, -0.0000239215686, -0.0000539215686, +0.0000778431373, \n    +0.0002394117647, +0.0001974509804, -0.0000837254902, -0.0004488235294, \n    -0.0006821568627, -0.0007001960784, -0.0004847058824, -0.0001554901961, \n    +0.0000956862745, +0.0001674509804, +0.0001435294118, +0.0000898039216, \n    +0.0000598039216, +0.0001137254902, +0.0002513725490, +0.0002992156863, \n    +0.0000658823529, -0.0004607843137, -0.0010411764706, -0.0013403921569, \n    -0.0012984313725, -0.0010352941176, -0.0006582352941, -0.0002035294118, \n    +0.0001674509804, +0.0003650980392, +0.0003949019608, +0.0003949019608, \n    +0.0004009803922, +0.0003650980392, +0.0001854901961, -0.0000778431373, \n    -0.0004009803922, -0.0006941176471, -0.0008617647059, -0.0008256862745, \n    -0.0005984313725, -0.0002452941176, +0.0001017647059, +0.0003350980392, \n    +0.0003290196078, +0.0000898039216, -0.0001854901961, -0.0003290196078, \n    -0.0003231372549, -0.0001915686275, +0.0000000000000, +0.0001915686275, \n    +0.0002992156863, +0.0002094117647, -0.0000478431373, -0.0003050980392, \n    -0.0004188235294, -0.0004068627451, -0.0003170588235, -0.0002452941176, \n    -0.0002333333333, -0.0002394117647, -0.0002094117647, -0.0001735294118, \n    -0.0001915686275, -0.0002872549020, -0.0003411764706, -0.0002572549020, \n    -0.0000539215686, +0.0002094117647, +0.0004786274510, +0.0005984313725, \n    +0.0005445098039, +0.0004427450980, +0.0004727450980, +0.0005505882353, \n    +0.0004905882353, +0.0002213725490, -0.0000898039216, -0.0003411764706, \n    -0.0004786274510, -0.0004188235294, -0.0001315686275, +0.0002633333333, \n    +0.0006043137255, +0.0007121568627, +0.0005803921569, +0.0003231372549, \n    +0.0001196078431, +0.0001137254902, +0.0004607843137, +0.0010711764706, \n    +0.0015737254902, +0.0015558823529, +0.0010233333333, +0.0002692156863, \n    -0.0004009803922, -0.0007719607843, -0.0006882352941, -0.0002094117647, \n    +0.0004368627451, +0.0009813725490, +0.0012566666667, +0.0013164705882, \n    +0.0012925490196, +0.0012447058824, +0.0012088235294, +0.0011368627451, \n    +0.0009752941176, +0.0007300000000, +0.0004666666667, +0.0002035294118, \n    +0.0000060784314, +0.0000000000000, +0.0001435294118, +0.0002692156863, \n    +0.0001915686275, -0.0001615686275, -0.0005923529412, -0.0007839215686, \n    -0.0007180392157, -0.0005564705882, -0.0004009803922, -0.0002692156863, \n    -0.0001854901961, -0.0001554901961, -0.0001915686275, -0.0002572549020, \n    -0.0002394117647, -0.0000778431373, +0.0001137254902, +0.0002394117647, \n    +0.0002213725490, +0.0000717647059, -0.0001796078431, -0.0005445098039, \n    -0.0009215686275, -0.0011249019608, -0.0010950980392, -0.0008376470588, \n    -0.0004249019608, +0.0000000000000, +0.0002752941176, +0.0003590196078, \n    +0.0002572549020, +0.0000598039216, -0.0000478431373, +0.0000539215686, \n    +0.0003290196078, +0.0006282352941, +0.0008556862745, +0.0009096078431, \n    +0.0007060784314, +0.0002752941176, -0.0002154901961, -0.0005266666667, \n    -0.0004905882353, -0.0001796078431, +0.0001674509804, +0.0003829411765, \n    +0.0003350980392, -0.0000658823529, -0.0007121568627, -0.0013403921569, \n    -0.0016515686275, -0.0015078431373, -0.0010472549020, -0.0005745098039, \n    -0.0001435294118, +0.0002633333333, +0.0005684313725, +0.0007539215686, \n    +0.0008676470588, +0.0009096078431, +0.0008856862745, +0.0007360784314, \n    +0.0004188235294, +0.0000000000000, -0.0003709803922, -0.0005445098039, \n    -0.0004368627451, -0.0001735294118, +0.0001076470588, +0.0003709803922, \n    +0.0005086274510, +0.0004068627451, +0.0000837254902, -0.0002872549020, \n    -0.0004666666667, -0.0003531372549, -0.0000837254902, +0.0001615686275, \n    +0.0002513725490, +0.0000956862745, -0.0002872549020, -0.0007060784314, \n    -0.0009096078431, -0.0007658823529, -0.0004547058824, -0.0002394117647, \n    -0.0001735294118, -0.0001137254902, +0.0000539215686, +0.0003050980392, \n    +0.0005325490196, +0.0007060784314, +0.0008078431373, +0.0007839215686, \n    +0.0005984313725, +0.0003231372549, +0.0000658823529, -0.0000419607843, \n    -0.0000060784314, +0.0001076470588, +0.0002333333333, +0.0003709803922, \n    +0.0004607843137, +0.0004905882353, +0.0004547058824, +0.0003829411765, \n    +0.0003350980392, +0.0003531372549, +0.0003650980392, +0.0003350980392, \n    +0.0002872549020, +0.0002274509804, +0.0000898039216, -0.0001017647059, \n    -0.0001974509804, -0.0001196078431, +0.0000119607843, +0.0000837254902, \n    +0.0000180392157, -0.0000658823529, -0.0000717647059, -0.0000419607843, \n    -0.0000119607843, +0.0000956862745, +0.0002931372549, +0.0004607843137, \n    +0.0005684313725, +0.0006401960784, +0.0006882352941, +0.0006941176471, \n    +0.0007241176471, +0.0007898039216, +0.0008137254902, +0.0007180392157, \n    +0.0005564705882, +0.0004068627451, +0.0003470588235, +0.0003590196078, \n    +0.0003890196078, +0.0003829411765, +0.0003770588235, +0.0003111764706, \n    +0.0001735294118, +0.0000598039216, +0.0001017647059, +0.0001974509804, \n    +0.0002154901961, +0.0001554901961, +0.0001017647059, +0.0000000000000, \n    -0.0002035294118, -0.0003829411765, -0.0003770588235, -0.0002154901961, \n    -0.0000837254902, -0.0002094117647, -0.0005445098039, -0.0008737254902, \n    -0.0010352941176, -0.0010233333333, -0.0008437254902, -0.0005325490196, \n    -0.0001554901961, +0.0002154901961, +0.0005386274510, +0.0007600000000, \n    +0.0008737254902, +0.0009215686275, +0.0008976470588, +0.0008376470588, \n    +0.0007658823529, +0.0007241176471, +0.0006760784314, +0.0005803921569, \n    +0.0004188235294, +0.0003050980392, +0.0003050980392, +0.0003770588235, \n    +0.0004427450980, +0.0004966666667, +0.0005205882353, +0.0005564705882, \n    +0.0005564705882, +0.0005205882353, +0.0004727450980, +0.0004307843137, \n    +0.0003829411765, +0.0003890196078, +0.0003949019608, +0.0003650980392, \n    +0.0003290196078, +0.0003470588235, +0.0003350980392, +0.0002213725490, \n    +0.0000000000000, -0.0002394117647, -0.0004009803922, -0.0004129411765, \n    -0.0003111764706, -0.0001854901961, -0.0001137254902, -0.0001376470588, \n    -0.0002452941176, -0.0003829411765, -0.0004666666667, -0.0004847058824, \n    -0.0004488235294, -0.0003231372549, -0.0001796078431, -0.0001435294118, \n    -0.0002154901961, -0.0002633333333, -0.0002274509804, -0.0001315686275, \n    -0.0000598039216, -0.0000658823529, -0.0001496078431, -0.0003290196078, \n    -0.0005445098039, -0.0006882352941, -0.0007001960784, -0.0006103921569, \n    -0.0004488235294, -0.0002931372549, -0.0001735294118, -0.0001315686275, \n    -0.0002035294118, -0.0003709803922, -0.0005205882353, -0.0006282352941, \n    -0.0006701960784, -0.0006223529412, -0.0005147058824, -0.0004188235294, \n    -0.0003231372549, -0.0001915686275, -0.0000358823529, +0.0000539215686, \n    +0.0000898039216, +0.0001137254902, +0.0002213725490, +0.0004368627451, \n    +0.0006582352941, +0.0007658823529, +0.0007600000000, +0.0006582352941, \n    +0.0004966666667, +0.0002513725490, -0.0001017647059, -0.0005147058824, \n    -0.0007898039216, -0.0008256862745, -0.0005984313725, -0.0001915686275, \n    +0.0001796078431, +0.0003949019608, +0.0004307843137, +0.0002752941176, \n    +0.0000300000000, -0.0001674509804, -0.0003111764706, -0.0003770588235, \n    -0.0003290196078, -0.0001554901961, +0.0000358823529, +0.0001315686275, \n    +0.0000300000000, -0.0002213725490, -0.0004786274510, -0.0005923529412, \n    -0.0006103921569, -0.0006103921569, -0.0005984313725, -0.0005325490196, \n    -0.0004068627451, -0.0002633333333, -0.0001915686275, -0.0001915686275, \n    -0.0001735294118, -0.0000478431373, +0.0001435294118, +0.0002811764706, \n    +0.0002752941176, +0.0001854901961, +0.0001256862745, +0.0001376470588, \n    +0.0001435294118, +0.0000956862745, -0.0000180392157, -0.0000956862745, \n    -0.0001137254902, -0.0001615686275, -0.0002872549020, -0.0004068627451, \n    -0.0004068627451, -0.0003111764706, -0.0002035294118, -0.0001256862745, \n    -0.0000717647059, -0.0000300000000, -0.0000119607843, -0.0000119607843, \n    -0.0000060784314, -0.0000180392157, -0.0001376470588, -0.0004068627451, \n    -0.0007001960784, -0.0008796078431, -0.0008856862745, -0.0007480392157, \n    -0.0004847058824, -0.0001554901961, +0.0001854901961, +0.0003890196078, \n    +0.0003231372549, +0.0000778431373, -0.0001435294118, -0.0002692156863, \n    -0.0002692156863, -0.0001915686275, -0.0001196078431, -0.0001256862745, \n    -0.0001915686275, -0.0002752941176, -0.0003531372549, -0.0004666666667, \n    -0.0005923529412, -0.0006582352941, -0.0006521568627, -0.0006582352941, \n    -0.0007241176471, -0.0007958823529, -0.0007958823529, -0.0006882352941, \n    -0.0004786274510, -0.0002213725490, -0.0000539215686, -0.0000658823529, \n    -0.0001854901961, -0.0002333333333, -0.0000956862745, +0.0001496078431, \n    +0.0002572549020, +0.0001076470588, -0.0001974509804, -0.0005025490196, \n    -0.0006821568627, -0.0006462745098, -0.0004249019608, -0.0001076470588, \n    +0.0001796078431, +0.0003290196078, +0.0002931372549, +0.0001256862745, \n    -0.0001017647059, -0.0002692156863, -0.0002452941176, +0.0000358823529, \n    +0.0004905882353, +0.0009274509804, +0.0011488235294, +0.0010890196078, \n    +0.0007600000000, +0.0002452941176, -0.0002692156863, -0.0005984313725, \n    -0.0006103921569, -0.0003170588235, +0.0000837254902, +0.0003770588235, \n    +0.0004307843137, +0.0002572549020, -0.0000419607843, -0.0003709803922, \n    -0.0006401960784, -0.0007778431373, -0.0007600000000, -0.0005923529412, \n    -0.0003290196078, -0.0000300000000, +0.0002572549020, +0.0005025490196, \n    +0.0006343137255, +0.0006043137255, +0.0004427450980, +0.0001615686275, \n    -0.0001496078431, -0.0003350980392, -0.0002333333333, +0.0001017647059, \n    +0.0004966666667, +0.0007839215686, +0.0008437254902, +0.0006343137255, \n    +0.0002154901961, -0.0002035294118, -0.0004009803922, -0.0003111764706, \n    -0.0000239215686, +0.0002692156863, +0.0004249019608, +0.0003590196078, \n    +0.0001554901961, -0.0000778431373, -0.0002213725490, -0.0002394117647, \n    -0.0001796078431, -0.0000658823529, +0.0000956862745, +0.0002692156863, \n    +0.0003231372549, +0.0002452941176, +0.0001554901961, +0.0001376470588, \n    +0.0001554901961, +0.0001076470588, -0.0000180392157, -0.0001554901961, \n    -0.0002872549020, -0.0004249019608, -0.0005147058824, -0.0005025490196, \n    -0.0003890196078, -0.0001915686275, +0.0000717647059, +0.0004009803922, \n    +0.0006821568627, +0.0008137254902, +0.0007480392157, +0.0005325490196, \n    +0.0002513725490, +0.0000180392157, -0.0001615686275, -0.0003411764706, \n    -0.0004905882353, -0.0005445098039, -0.0005025490196, -0.0003650980392, \n    -0.0001256862745, +0.0001974509804, +0.0004966666667, +0.0005984313725, \n    +0.0004068627451, -0.0000180392157, -0.0005025490196, -0.0008317647059, \n    -0.0008437254902, -0.0005564705882, -0.0001315686275, +0.0002572549020, \n    +0.0005086274510, +0.0004966666667, +0.0002692156863, -0.0000060784314, \n    -0.0001974509804, -0.0002333333333, -0.0001315686275, +0.0000180392157, \n    +0.0001435294118, +0.0002154901961, +0.0002811764706, +0.0003709803922, \n    +0.0004666666667, +0.0005205882353, +0.0005684313725, +0.0006223529412, \n    +0.0006582352941, +0.0006462745098, +0.0005684313725, +0.0004249019608, \n    +0.0002811764706, +0.0001615686275, +0.0000956862745, +0.0001017647059, \n    +0.0001796078431, +0.0002633333333, +0.0002811764706, +0.0002394117647, \n    +0.0001854901961, +0.0001435294118, +0.0001196078431, +0.0001017647059, \n    +0.0000717647059, +0.0000239215686, -0.0000658823529, -0.0001974509804, \n    -0.0002992156863, -0.0002872549020, -0.0001674509804, +0.0000300000000, \n    +0.0002633333333, +0.0004488235294, +0.0004847058824, +0.0003829411765, \n    +0.0002035294118, +0.0000060784314, -0.0001854901961, -0.0003111764706, \n    -0.0002931372549, -0.0001196078431, +0.0001196078431, +0.0003590196078, \n    +0.0005505882353, +0.0006701960784, +0.0006882352941, +0.0006103921569, \n    +0.0004368627451, +0.0002154901961, -0.0000300000000, -0.0002633333333, \n    -0.0004307843137, -0.0004547058824, -0.0002931372549, -0.0000239215686, \n    +0.0001974509804, +0.0002633333333, +0.0002333333333, +0.0001854901961, \n    +0.0001256862745, +0.0000060784314, -0.0001196078431, -0.0001854901961, \n    -0.0001674509804, -0.0001315686275, -0.0001017647059, -0.0000358823529, \n    +0.0001315686275, +0.0003770588235, +0.0006223529412, +0.0007658823529, \n    +0.0007180392157, +0.0004129411765, -0.0000539215686, -0.0005025490196, \n    -0.0007360784314, -0.0006821568627, -0.0003531372549, +0.0000956862745, \n    +0.0004607843137, +0.0006282352941, +0.0006282352941, +0.0004607843137, \n    +0.0002035294118, -0.0000358823529, -0.0001496078431, -0.0001076470588, \n    +0.0000358823529, +0.0001854901961, +0.0002752941176, +0.0002633333333, \n    +0.0001256862745, -0.0000898039216, -0.0002992156863, -0.0004188235294, \n    -0.0004547058824, -0.0004427450980, -0.0003709803922, -0.0002274509804, \n    -0.0001256862745, -0.0001435294118, -0.0001915686275, -0.0001376470588, \n    +0.0000119607843, +0.0001915686275, +0.0002811764706, +0.0002274509804, \n    +0.0000717647059, -0.0000419607843, -0.0001017647059, -0.0001137254902, \n    -0.0001137254902, -0.0001076470588, -0.0001256862745, -0.0001376470588, \n    -0.0001315686275, -0.0000717647059, +0.0000717647059, +0.0002931372549, \n    +0.0004966666667, +0.0006043137255, +0.0005984313725, +0.0005025490196, \n    +0.0003590196078, +0.0002154901961, +0.0001496078431, +0.0001915686275, \n    +0.0002872549020, +0.0003531372549, +0.0003111764706, +0.0001376470588, \n    -0.0000598039216, -0.0001974509804, -0.0002872549020, -0.0003770588235, \n    -0.0004547058824, -0.0004727450980, -0.0003709803922, -0.0001435294118, \n    +0.0001554901961, +0.0004607843137, +0.0007300000000, +0.0008856862745, \n    +0.0008737254902, +0.0006941176471, +0.0004068627451, +0.0000598039216, \n    -0.0002333333333, -0.0003829411765, -0.0003350980392, -0.0002154901961, \n    -0.0001554901961, -0.0001674509804, -0.0001915686275, -0.0001915686275, \n    -0.0001615686275, -0.0001137254902, -0.0000956862745, -0.0001435294118, \n    -0.0002572549020, -0.0003829411765, -0.0004307843137, -0.0003650980392, \n    -0.0002154901961, -0.0000717647059, +0.0000119607843, +0.0000060784314, \n    -0.0001196078431, -0.0003111764706, -0.0004847058824, -0.0005684313725, \n    -0.0005803921569, -0.0005386274510, -0.0004249019608, -0.0002213725490, \n    -0.0000119607843, +0.0001196078431, +0.0001554901961, +0.0001017647059, \n    -0.0000358823529, -0.0002452941176, -0.0004547058824, -0.0006043137255, \n    -0.0006821568627, -0.0006462745098, -0.0005147058824, -0.0003350980392, \n    -0.0001735294118, -0.0000419607843, +0.0000898039216, +0.0002811764706, \n    +0.0004786274510, +0.0005564705882, +0.0004427450980, +0.0002035294118, \n    -0.0000419607843, -0.0002452941176, -0.0003290196078, -0.0002513725490, \n    -0.0000419607843, +0.0002213725490, +0.0004727450980, +0.0005625490196, \n    +0.0004307843137, +0.0001076470588, -0.0002452941176, -0.0004786274510, \n    -0.0004666666667, -0.0002572549020, +0.0000239215686, +0.0002213725490, \n    +0.0002274509804, +0.0000539215686, -0.0001076470588, -0.0001376470588, \n    +0.0000180392157, +0.0002394117647, +0.0003890196078, +0.0003590196078, \n    +0.0000956862745, -0.0003470588235, -0.0007480392157, -0.0008856862745, \n    -0.0007001960784, -0.0003290196078, +0.0000358823529, +0.0002633333333, \n    +0.0003111764706, +0.0001615686275, -0.0000956862745, -0.0003531372549, \n    -0.0005025490196, -0.0005147058824, -0.0004009803922, -0.0002692156863, \n    -0.0001915686275, -0.0001554901961, -0.0001256862745, -0.0000778431373, \n    +0.0000119607843, +0.0001256862745, +0.0001615686275, +0.0000837254902, \n    -0.0000778431373, -0.0002452941176, -0.0002931372549, -0.0001554901961, \n    +0.0000778431373, +0.0003709803922, +0.0006162745098, +0.0007180392157, \n    +0.0005864705882, +0.0003050980392, +0.0000300000000, -0.0000837254902, \n    -0.0000300000000, +0.0001796078431, +0.0004666666667, +0.0006821568627, \n    +0.0007121568627, +0.0005864705882, +0.0003350980392, +0.0000239215686, \n    -0.0002274509804, -0.0002513725490, -0.0000239215686, +0.0003111764706, \n    +0.0006223529412, +0.0008198039216, +0.0008317647059, +0.0006462745098, \n    +0.0003231372549, +0.0000000000000, -0.0002035294118, -0.0002811764706, \n    -0.0002572549020, -0.0001854901961, -0.0001017647059, -0.0000358823529, \n    -0.0000119607843, -0.0000539215686, -0.0001315686275, -0.0002035294118, \n    -0.0002452941176, -0.0002274509804, -0.0001376470588, -0.0000119607843, \n    +0.0001315686275, +0.0002633333333, +0.0003350980392, +0.0002872549020, \n    +0.0001435294118, -0.0000300000000, -0.0001615686275, -0.0001854901961, \n    -0.0001017647059, +0.0000300000000, +0.0001735294118, +0.0002633333333, \n    +0.0002452941176, +0.0001554901961, +0.0000300000000, -0.0001196078431, \n    -0.0002811764706, -0.0003411764706, -0.0002035294118, +0.0001315686275, \n    +0.0005984313725, +0.0010172549020, +0.0012027450980, +0.0010650980392, \n    +0.0006343137255, +0.0000419607843, -0.0005266666667, -0.0008737254902, \n    -0.0009154901961, -0.0006760784314, -0.0002811764706, +0.0001615686275, \n    +0.0005205882353, +0.0006701960784, +0.0005445098039, +0.0002154901961, \n    -0.0001315686275, -0.0002992156863, -0.0002633333333, -0.0001076470588, \n    +0.0000598039216, +0.0002333333333, +0.0003829411765, +0.0005205882353, \n    +0.0005803921569, +0.0005086274510, +0.0002811764706, -0.0000300000000, \n    -0.0003470588235, -0.0005625490196, -0.0005984313725, -0.0004666666667, \n    -0.0002633333333, -0.0001137254902, -0.0000956862745, -0.0001854901961, \n    -0.0002872549020, -0.0003231372549, -0.0002633333333, -0.0001376470588, \n    +0.0000119607843, +0.0001435294118, +0.0002035294118, +0.0001854901961, \n    +0.0001196078431, +0.0000180392157, -0.0000539215686, -0.0001017647059, \n    -0.0001435294118, -0.0002213725490, -0.0003231372549, -0.0004786274510, \n    -0.0006103921569, -0.0006162745098, -0.0003949019608, +0.0000000000000, \n    +0.0004427450980, +0.0007658823529, +0.0008617647059, +0.0006882352941, \n    +0.0003411764706, -0.0000478431373, -0.0003470588235, -0.0004368627451, \n    -0.0002931372549, -0.0000239215686, +0.0001974509804, +0.0002572549020, \n    +0.0001256862745, -0.0001137254902, -0.0003890196078, -0.0005564705882, \n    -0.0005025490196, -0.0002154901961, +0.0001915686275, +0.0005803921569, \n    +0.0007658823529, +0.0006882352941, +0.0004129411765, +0.0000837254902, \n    -0.0001735294118, -0.0002872549020, -0.0002931372549, -0.0002274509804, \n    -0.0001554901961, -0.0000956862745, -0.0000478431373, +0.0000239215686, \n    +0.0000898039216, +0.0001256862745, +0.0000898039216, -0.0000060784314, \n    -0.0001256862745, -0.0001915686275, -0.0001735294118, -0.0000837254902, \n    +0.0000300000000, +0.0001615686275, +0.0002752941176, +0.0002931372549, \n    +0.0001496078431, -0.0001554901961, -0.0005445098039, -0.0008256862745, \n    -0.0008317647059, -0.0005684313725, -0.0001496078431, +0.0002394117647, \n    +0.0004905882353, +0.0005266666667, +0.0003949019608, +0.0001796078431, \n    -0.0000060784314, -0.0001256862745, -0.0001554901961, -0.0001554901961, \n    -0.0001796078431, -0.0002452941176, -0.0003290196078, -0.0004249019608, \n    -0.0005266666667, -0.0005984313725, -0.0005505882353, -0.0003829411765, \n    -0.0001915686275, -0.0000778431373, -0.0000060784314, +0.0000180392157, \n    +0.0000060784314, -0.0000358823529, -0.0001137254902, -0.0002333333333, \n    -0.0003590196078, -0.0004368627451, -0.0004188235294, -0.0002872549020, \n    -0.0001137254902, +0.0000419607843, +0.0001137254902, +0.0000717647059, \n    -0.0000658823529, -0.0002572549020, -0.0004129411765, -0.0004488235294, \n    -0.0003770588235, -0.0002333333333, -0.0000658823529, +0.0001017647059, \n    +0.0002452941176, +0.0003170588235, +0.0002394117647, +0.0000539215686, \n    -0.0001315686275, -0.0002035294118, -0.0001376470588, -0.0000119607843, \n    +0.0000778431373, +0.0001674509804, +0.0002513725490, +0.0003231372549, \n    +0.0003470588235, +0.0003411764706, +0.0002992156863, +0.0002094117647, \n    +0.0000598039216, -0.0001196078431, -0.0002633333333, -0.0002992156863, \n    -0.0002394117647, -0.0001735294118, -0.0001196078431, -0.0000898039216, \n    -0.0000598039216, -0.0000239215686, +0.0000478431373, +0.0001496078431, \n    +0.0002692156863, +0.0003470588235, +0.0003231372549, +0.0001435294118, \n    -0.0000956862745, -0.0003050980392, -0.0004188235294, -0.0004188235294, \n    -0.0003290196078, -0.0002213725490, -0.0001376470588, -0.0001017647059, \n    -0.0000898039216, -0.0001256862745, -0.0002154901961, -0.0003350980392, \n    -0.0004129411765, -0.0004488235294, -0.0004188235294, -0.0003531372549, \n    -0.0002633333333, -0.0000898039216, +0.0001256862745, +0.0003290196078, \n    +0.0004068627451, +0.0003170588235, +0.0000598039216, -0.0002633333333, \n    -0.0005325490196, -0.0006282352941, -0.0005564705882, -0.0003709803922, \n    -0.0001796078431, +0.0000000000000, +0.0001615686275, +0.0003350980392, \n    +0.0004786274510, +0.0005386274510, +0.0004727450980, +0.0003231372549, \n    +0.0001076470588, -0.0000837254902, -0.0002274509804, -0.0002752941176, \n    -0.0002872549020, -0.0002931372549, -0.0002811764706, -0.0001735294118, \n    +0.0000419607843, +0.0003170588235, +0.0005445098039, +0.0006462745098, \n    +0.0006103921569, +0.0004368627451, +0.0001796078431, -0.0000478431373, \n    -0.0001435294118, -0.0000778431373, +0.0001137254902, +0.0003411764706, \n    +0.0005445098039, +0.0006462745098, +0.0006521568627, +0.0005505882353, \n    +0.0004009803922, +0.0002513725490, +0.0001315686275, +0.0000358823529, \n    -0.0000239215686, -0.0000658823529, -0.0000717647059, -0.0000717647059, \n    -0.0000478431373, -0.0000358823529, +0.0000000000000, +0.0000837254902, \n    +0.0002274509804, +0.0003829411765, +0.0005086274510, +0.0005505882353, \n    +0.0004786274510, +0.0002872549020, +0.0000000000000, -0.0003231372549, \n    -0.0006043137255, -0.0007778431373, -0.0008256862745, -0.0007121568627, \n    -0.0004666666667, -0.0001554901961, +0.0000956862745, +0.0002213725490, \n    +0.0002154901961, +0.0001496078431, +0.0000898039216, +0.0000539215686, \n    +0.0000000000000, -0.0000300000000, -0.0000060784314, +0.0000956862745, \n    +0.0002154901961, +0.0002752941176, +0.0002274509804, +0.0000956862745, \n    -0.0000358823529, -0.0000898039216, -0.0000837254902, -0.0000358823529, \n    -0.0000239215686, -0.0000478431373, -0.0000539215686, +0.0000180392157, \n    +0.0001735294118, +0.0003470588235, +0.0004607843137, +0.0004847058824, \n    +0.0004068627451, +0.0002333333333, +0.0000358823529, -0.0001554901961, \n    -0.0002872549020, -0.0003111764706, -0.0001974509804, +0.0000119607843, \n    +0.0002452941176, +0.0003949019608, +0.0004068627451, +0.0002513725490, \n    +0.0000180392157, -0.0001854901961, -0.0002513725490, -0.0001674509804, \n    +0.0000419607843, +0.0002752941176, +0.0004188235294, +0.0003590196078, \n    +0.0001615686275, -0.0000956862745, -0.0003170588235, -0.0004188235294, \n    -0.0003411764706, -0.0001376470588, +0.0001076470588, +0.0003290196078, \n    +0.0004666666667, +0.0004786274510, +0.0004068627451, +0.0003290196078, \n    +0.0002752941176, +0.0002394117647, +0.0001796078431, +0.0000478431373, \n    -0.0001315686275, -0.0002692156863, -0.0002692156863, -0.0000956862745, \n    +0.0001735294118, +0.0004488235294, +0.0005864705882, +0.0005266666667, \n    +0.0002692156863, -0.0000300000000, -0.0002931372549, -0.0004068627451, \n    -0.0003829411765, -0.0002452941176, -0.0000300000000, +0.0001854901961, \n    +0.0002992156863, +0.0002572549020, +0.0001376470588, +0.0000539215686, \n    +0.0000419607843, +0.0000778431373, +0.0001435294118, +0.0002333333333, \n    +0.0002931372549, +0.0002931372549, +0.0002213725490, +0.0000658823529, \n    -0.0001376470588, -0.0003231372549, -0.0003890196078, -0.0003350980392, \n    -0.0001796078431, +0.0000119607843, +0.0002154901961, +0.0003231372549, \n    +0.0003470588235, +0.0002992156863, +0.0002274509804, +0.0001315686275, \n    +0.0000358823529, -0.0000598039216, -0.0001674509804, -0.0003111764706, \n    -0.0004009803922, -0.0003650980392, -0.0001735294118, +0.0000658823529, \n    +0.0002992156863, +0.0004427450980, +0.0004666666667, +0.0003111764706, \n    +0.0000358823529, -0.0002452941176, -0.0004249019608, -0.0004427450980, \n    -0.0002872549020, -0.0000419607843, +0.0001554901961, +0.0002333333333, \n    +0.0001915686275, +0.0000898039216, -0.0000119607843, -0.0000419607843, \n    -0.0000060784314, +0.0000539215686, +0.0000837254902, +0.0000300000000, \n    -0.0000956862745, -0.0002094117647, -0.0002931372549, -0.0003231372549, \n    -0.0003050980392, -0.0001974509804, -0.0000358823529, +0.0001496078431, \n    +0.0002811764706, +0.0003290196078, +0.0002931372549, +0.0001974509804, \n    +0.0000419607843, -0.0001196078431, -0.0002752941176, -0.0003770588235, \n    -0.0004427450980, -0.0004188235294, -0.0002931372549, -0.0000837254902, \n    +0.0001076470588, +0.0002452941176, +0.0003231372549, +0.0003350980392, \n    +0.0002752941176, +0.0001496078431, +0.0000239215686, -0.0000837254902, \n    -0.0001496078431, -0.0001796078431, -0.0001615686275, -0.0001256862745, \n    -0.0000658823529, +0.0000000000000, +0.0001076470588, +0.0002154901961, \n    +0.0002931372549, +0.0002992156863, +0.0002394117647, +0.0001076470588, \n    -0.0000180392157, -0.0001137254902, -0.0001435294118, -0.0001256862745, \n    -0.0000837254902, -0.0000658823529, -0.0000419607843, -0.0000060784314, \n    +0.0000598039216, +0.0001615686275, +0.0002872549020, +0.0003890196078, \n    +0.0004188235294, +0.0003470588235, +0.0001796078431, -0.0000180392157, \n    -0.0001735294118, -0.0001854901961, -0.0000717647059, +0.0000837254902, \n    +0.0002094117647, +0.0002931372549, +0.0003231372549, +0.0002811764706, \n    +0.0001674509804, +0.0000239215686, -0.0001076470588, -0.0001974509804, \n    -0.0002513725490, -0.0002394117647, -0.0001735294118, -0.0000778431373, \n    -0.0000180392157, +0.0000119607843, +0.0000180392157, +0.0000060784314, \n    -0.0000717647059, -0.0002094117647, -0.0003650980392, -0.0004905882353, \n    -0.0005325490196, -0.0004847058824, -0.0003770588235, -0.0002154901961, \n    -0.0000419607843, +0.0000658823529, +0.0000717647059, +0.0000000000000, \n    -0.0000898039216, -0.0001435294118, -0.0001137254902, -0.0000419607843, \n    +0.0000180392157, +0.0000000000000, -0.0001017647059, -0.0002752941176, \n    -0.0004188235294, -0.0004786274510, -0.0004129411765, -0.0002274509804, \n    +0.0000300000000, +0.0002333333333, +0.0003050980392, +0.0002452941176, \n    +0.0001315686275, +0.0000119607843, -0.0000539215686, -0.0000956862745, \n    -0.0001076470588, -0.0001196078431, -0.0001256862745, -0.0001076470588, \n    -0.0000419607843, +0.0000419607843, +0.0001315686275, +0.0002094117647, \n    +0.0002333333333, +0.0001615686275, +0.0000060784314, -0.0001854901961, \n    -0.0003411764706, -0.0003590196078, -0.0002692156863, -0.0001196078431, \n    +0.0000180392157, +0.0001496078431, +0.0002333333333, +0.0002931372549, \n    +0.0003411764706, +0.0003650980392, +0.0003231372549, +0.0002213725490, \n    +0.0000478431373, -0.0001137254902, -0.0002452941176, -0.0003050980392, \n    -0.0003231372549, -0.0002931372549, -0.0002035294118, -0.0000658823529, \n    +0.0000658823529, +0.0001315686275, +0.0001137254902, +0.0000119607843, \n    -0.0000956862745, -0.0001854901961, -0.0002154901961, -0.0002094117647, \n    -0.0001796078431, -0.0001554901961, -0.0001376470588, -0.0001137254902, \n    -0.0000778431373, -0.0000478431373, -0.0000180392157, -0.0000119607843, \n    -0.0000239215686, -0.0000539215686, -0.0000717647059, -0.0000898039216, \n    -0.0001076470588, -0.0001376470588, -0.0001735294118, -0.0002154901961, \n    -0.0002154901961, -0.0001735294118, -0.0001017647059, -0.0000598039216, \n    -0.0000778431373, -0.0001256862745, -0.0001496078431, -0.0001315686275, \n    -0.0000837254902, -0.0000180392157, +0.0000060784314, -0.0000060784314, \n    -0.0000419607843, -0.0000717647059, -0.0000778431373, -0.0000119607843, \n    +0.0000837254902, +0.0002094117647, +0.0003350980392, +0.0004249019608, \n    +0.0004368627451, +0.0003890196078, +0.0003231372549, +0.0002692156863, \n    +0.0001974509804, +0.0001137254902, -0.0000060784314, -0.0001315686275, \n    -0.0002094117647, -0.0001915686275, -0.0000837254902, +0.0000717647059, \n    +0.0002394117647, +0.0003949019608, +0.0004905882353, +0.0004905882353, \n    +0.0004068627451, +0.0002811764706, +0.0001796078431, +0.0001256862745, \n    +0.0001196078431, +0.0001076470588, +0.0000658823529, -0.0000358823529, \n    -0.0001496078431, -0.0001915686275, -0.0001196078431, +0.0000239215686, \n    +0.0001796078431, +0.0002692156863, +0.0002752941176, +0.0001735294118, \n    +0.0000180392157, -0.0001435294118, -0.0002811764706, -0.0003650980392, \n    -0.0003411764706, -0.0002035294118, -0.0000180392157, +0.0001435294118, \n    +0.0002274509804, +0.0002094117647, +0.0001076470588, +0.0000119607843, \n    -0.0000358823529, -0.0000300000000, +0.0000000000000, +0.0000658823529, \n    +0.0001315686275, +0.0002035294118, +0.0002154901961, +0.0001496078431, \n    +0.0000119607843, -0.0000956862745, -0.0001615686275, -0.0001496078431, \n    -0.0000778431373, +0.0000239215686, +0.0000898039216, +0.0000837254902, \n    +0.0000000000000, -0.0000956862745, -0.0001615686275, -0.0001674509804, \n    -0.0001196078431, -0.0000180392157, +0.0001196078431, +0.0002692156863, \n    +0.0003709803922, +0.0003829411765, +0.0003411764706, +0.0002811764706, \n    +0.0002394117647, +0.0001674509804, +0.0000180392157, -0.0001615686275, \n    -0.0003170588235, -0.0004129411765, -0.0004249019608, -0.0003411764706, \n    -0.0001735294118, +0.0000060784314, +0.0001496078431, +0.0001915686275, \n    +0.0001256862745, -0.0000419607843, -0.0002094117647, -0.0003050980392, \n    -0.0002752941176, -0.0001915686275, -0.0001196078431, -0.0001435294118, \n    -0.0002394117647, -0.0003709803922, -0.0004307843137, -0.0003709803922, \n    -0.0002035294118, -0.0000060784314, +0.0001554901961, +0.0002333333333, \n    +0.0002035294118, +0.0001137254902, +0.0000180392157, +0.0000000000000, \n    +0.0000060784314, +0.0000300000000, +0.0000180392157, +0.0000000000000, \n    -0.0000239215686, +0.0000060784314, +0.0000898039216, +0.0002154901961, \n    +0.0002692156863, +0.0002274509804, +0.0000778431373, -0.0000778431373, \n    -0.0002035294118, -0.0002333333333, -0.0001735294118, -0.0000239215686, \n    +0.0001615686275, +0.0003411764706, +0.0004368627451, +0.0003890196078, \n    +0.0002154901961, +0.0000300000000, -0.0000717647059, -0.0000419607843, \n    +0.0000837254902, +0.0002213725490, +0.0002811764706, +0.0002333333333, \n    +0.0000956862745, -0.0000598039216, -0.0001735294118, -0.0002452941176, \n    -0.0002513725490, -0.0001974509804, -0.0000898039216, -0.0000119607843, \n    +0.0000358823529, +0.0000598039216, +0.0000837254902, +0.0000658823529, \n    +0.0000119607843, -0.0000837254902, -0.0001674509804, -0.0002035294118, \n    -0.0001796078431, -0.0001137254902, -0.0000119607843, +0.0000478431373, \n    +0.0000419607843, -0.0000119607843, -0.0000837254902, -0.0001315686275, \n    -0.0001554901961, -0.0001554901961, -0.0001196078431, -0.0000358823529, \n    +0.0000478431373, +0.0001076470588, +0.0000898039216, +0.0000300000000, \n    -0.0000300000000, -0.0000658823529, -0.0000778431373, -0.0000778431373, \n    -0.0001196078431, -0.0001674509804, -0.0001974509804, -0.0001735294118, \n    -0.0001256862745, -0.0000239215686, +0.0000598039216, +0.0001315686275, \n    +0.0001496078431, +0.0001256862745, +0.0000419607843, -0.0000598039216, \n    -0.0001735294118, -0.0002572549020, -0.0002811764706, -0.0002094117647, \n    -0.0000837254902, +0.0000180392157, +0.0000539215686, +0.0000119607843, \n    -0.0000658823529, -0.0001735294118, -0.0002931372549, -0.0003770588235, \n    -0.0003290196078, -0.0001674509804, +0.0000539215686, +0.0002213725490, \n    +0.0002811764706, +0.0002154901961, +0.0000658823529, -0.0001076470588, \n    -0.0002333333333, -0.0002513725490, -0.0001376470588, +0.0000300000000, \n    +0.0001854901961, +0.0002213725490, +0.0001137254902, -0.0001017647059, \n    -0.0003350980392, -0.0004666666667, -0.0004249019608, -0.0002274509804, \n    +0.0000358823529, +0.0002633333333, +0.0003650980392, +0.0003290196078, \n    +0.0001615686275, -0.0000239215686, -0.0001496078431, -0.0001496078431, \n    -0.0000658823529, +0.0000300000000, +0.0000837254902, +0.0000898039216, \n    +0.0000539215686, +0.0000478431373, +0.0000539215686, +0.0000717647059, \n    +0.0000837254902, +0.0001076470588, +0.0001017647059, +0.0000539215686, \n    +0.0000000000000, -0.0000119607843, -0.0000180392157, -0.0000239215686, \n    +0.0000000000000, +0.0000239215686, +0.0000060784314, -0.0000717647059, \n    -0.0001854901961, -0.0002992156863, -0.0003650980392, -0.0003650980392, \n    -0.0002992156863, -0.0001735294118, -0.0000300000000, +0.0000598039216, \n    +0.0001017647059, +0.0000898039216, +0.0000658823529, +0.0000419607843, \n    +0.0000478431373, +0.0000539215686, +0.0000478431373, +0.0000000000000, \n    -0.0000358823529, -0.0000419607843, +0.0000060784314, +0.0000598039216, \n    +0.0000778431373, +0.0000239215686, -0.0000658823529, -0.0001615686275, \n    -0.0002035294118, -0.0001674509804, -0.0000300000000, +0.0001554901961, \n    +0.0003411764706, +0.0004547058824, +0.0004666666667, +0.0003890196078, \n    +0.0002452941176, +0.0001076470588, +0.0000000000000, -0.0000358823529, \n    -0.0000300000000, +0.0000180392157, +0.0000478431373, +0.0000419607843, \n    +0.0000000000000, -0.0000419607843, -0.0000598039216, -0.0000180392157, \n    +0.0000598039216, +0.0001496078431, +0.0001915686275, +0.0001854901961, \n    +0.0001496078431, +0.0001196078431, +0.0000956862745, +0.0000598039216, \n    +0.0000000000000, -0.0000837254902, -0.0002154901961, -0.0003650980392, \n    -0.0004607843137, -0.0004727450980, -0.0003650980392, -0.0001915686275, \n    -0.0000119607843, +0.0000956862745, +0.0001137254902, +0.0000358823529, \n    -0.0000598039216, -0.0001435294118, -0.0001315686275, -0.0000419607843, \n    +0.0000778431373, +0.0001615686275, +0.0001435294118, +0.0000119607843, \n    -0.0001496078431, -0.0002513725490, -0.0002452941176, -0.0001974509804, \n    -0.0001554901961, -0.0001435294118, -0.0001615686275, -0.0001915686275, \n    -0.0001854901961, -0.0001256862745, +0.0000000000000, +0.0001435294118, \n    +0.0002633333333, +0.0003170588235, +0.0003170588235, +0.0002931372549, \n    +0.0002333333333, +0.0001435294118, +0.0000478431373, +0.0000000000000, \n    -0.0000180392157, +0.0000119607843, +0.0000717647059, +0.0001615686275, \n    +0.0002274509804, +0.0002452941176, +0.0002094117647, +0.0001615686275, \n    +0.0001256862745, +0.0001137254902, +0.0001137254902, +0.0001554901961, \n    +0.0002513725490, +0.0003531372549, +0.0004129411765, +0.0004188235294, \n    +0.0004068627451, +0.0003709803922, +0.0003170588235, +0.0002333333333, \n    +0.0001435294118, +0.0000358823529, -0.0000358823529, -0.0000898039216, \n    -0.0000778431373, -0.0000239215686, +0.0000658823529, +0.0001674509804, \n    +0.0002452941176, +0.0002633333333, +0.0002513725490, +0.0002094117647, \n    +0.0001796078431, +0.0001554901961, +0.0001554901961, +0.0001796078431, \n    +0.0002154901961, +0.0002213725490, +0.0001796078431, +0.0001017647059, \n    +0.0000180392157, -0.0000300000000, -0.0000358823529, +0.0000239215686, \n    +0.0001196078431, +0.0001974509804, +0.0002154901961, +0.0001735294118, \n    +0.0000778431373, -0.0000419607843, -0.0001496078431, -0.0002094117647, \n    -0.0002094117647, -0.0001615686275, -0.0000898039216, -0.0000060784314, \n    +0.0000358823529, +0.0000539215686, +0.0000300000000, +0.0000000000000, \n    -0.0000478431373, -0.0000717647059, -0.0000478431373, +0.0000239215686, \n    +0.0001137254902, +0.0001915686275, +0.0002274509804, +0.0002154901961, \n    +0.0001854901961, +0.0001496078431, +0.0001315686275, +0.0001017647059, \n    +0.0000539215686, +0.0000000000000, -0.0000119607843, +0.0000300000000, \n    +0.0001256862745, +0.0002274509804, +0.0003111764706, +0.0003350980392, \n    +0.0003050980392, +0.0002035294118, +0.0000956862745, +0.0000300000000, \n    +0.0000478431373, +0.0000956862745, +0.0001137254902, +0.0000778431373, \n    -0.0000119607843, -0.0001435294118, -0.0002394117647, -0.0002394117647, \n    -0.0001256862745, +0.0000658823529, +0.0002572549020, +0.0003829411765, \n    +0.0003890196078, +0.0002752941176, +0.0000837254902, -0.0000898039216, \n    -0.0001674509804, -0.0000837254902, +0.0001017647059, +0.0002992156863, \n    +0.0003709803922, +0.0002752941176, +0.0000658823529, -0.0001196078431, \n    -0.0002274509804, -0.0001974509804, -0.0000598039216, +0.0001315686275, \n    +0.0002872549020, +0.0003411764706, +0.0002692156863, +0.0000898039216, \n    -0.0001076470588, -0.0002513725490, -0.0002572549020, -0.0001256862745, \n    +0.0000539215686, +0.0001674509804, +0.0001435294118, +0.0000000000000, \n    -0.0001854901961, -0.0003170588235, -0.0003411764706, -0.0002752941176, \n    -0.0001315686275, +0.0000239215686, +0.0001376470588, +0.0001315686275, \n    +0.0000300000000, -0.0001256862745, -0.0002333333333, -0.0002513725490, \n    -0.0001796078431, -0.0000598039216, +0.0000658823529, +0.0001674509804, \n    +0.0002333333333, +0.0002692156863, +0.0002992156863, +0.0002931372549, \n    +0.0002394117647, +0.0001315686275, +0.0000000000000, -0.0001076470588, \n    -0.0001974509804, -0.0002274509804, -0.0002035294118, -0.0001076470588, \n    +0.0000000000000, +0.0000956862745, +0.0001256862745, +0.0001076470588, \n    +0.0000119607843, -0.0000898039216, -0.0001435294118, -0.0001137254902, \n    -0.0000419607843, +0.0000000000000, +0.0000000000000, -0.0000300000000, \n    -0.0000837254902, -0.0001554901961, -0.0002274509804, -0.0002633333333, \n    -0.0002513725490, -0.0002333333333, -0.0002274509804, -0.0002213725490, \n    -0.0001974509804, -0.0001615686275, -0.0001137254902, -0.0000778431373, \n    -0.0000539215686, -0.0000658823529, -0.0001137254902, -0.0001974509804, \n    -0.0002692156863, -0.0003170588235, -0.0002931372549, -0.0002274509804, \n    -0.0001376470588, -0.0000956862745, -0.0000898039216, -0.0001196078431, \n    -0.0001137254902, -0.0000837254902, -0.0000300000000, +0.0000300000000, \n    +0.0001137254902, +0.0001796078431, +0.0001915686275, +0.0001376470588, \n    +0.0000419607843, -0.0000598039216, -0.0001376470588, -0.0001974509804, \n    -0.0002274509804, -0.0002274509804, -0.0001915686275, -0.0001256862745, \n    -0.0000717647059, -0.0000239215686, +0.0000000000000, +0.0000060784314, \n    -0.0000119607843, -0.0000239215686, -0.0000119607843, +0.0000419607843, \n    +0.0001076470588, +0.0001554901961, +0.0001435294118, +0.0000598039216, \n    -0.0001076470588, -0.0003050980392, -0.0004307843137, -0.0004068627451, \n    -0.0002513725490, -0.0000419607843, +0.0001496078431, +0.0002633333333, \n    +0.0002692156863, +0.0001796078431, +0.0000419607843, -0.0001076470588, \n    -0.0002452941176, -0.0003650980392, -0.0004427450980, -0.0004786274510, \n    -0.0004427450980, -0.0003411764706, -0.0001974509804, -0.0000778431373, \n    -0.0000060784314, +0.0000000000000, -0.0000180392157, -0.0000539215686, \n    -0.0000837254902, -0.0000956862745, -0.0000658823529, -0.0000060784314, \n    +0.0000539215686, +0.0000778431373, +0.0000539215686, +0.0000000000000, \n    -0.0000658823529, -0.0001435294118, -0.0001974509804, -0.0002094117647, \n    -0.0001915686275, -0.0001435294118, -0.0000837254902, +0.0000000000000, \n    +0.0000837254902, +0.0001496078431, +0.0001496078431, +0.0000598039216, \n    -0.0000956862745, -0.0002572549020, -0.0003770588235, -0.0003890196078, \n    -0.0002931372549, -0.0001076470588, +0.0000598039216, +0.0001615686275, \n    +0.0001674509804, +0.0000898039216, +0.0000060784314, -0.0000060784314, \n    +0.0000478431373, +0.0001196078431, +0.0001674509804, +0.0001735294118, \n    +0.0001435294118, +0.0001017647059, +0.0000478431373, +0.0000000000000, \n    -0.0000539215686, -0.0001137254902, -0.0001615686275, -0.0001674509804, \n    -0.0001076470588, +0.0000000000000, +0.0001435294118, +0.0002752941176, \n    +0.0003650980392, +0.0003770588235, +0.0002992156863, +0.0001315686275, \n    -0.0000478431373, -0.0001674509804, -0.0001796078431, -0.0001196078431, \n    -0.0000598039216, -0.0000300000000, -0.0000358823529, -0.0000598039216, \n    -0.0000419607843, +0.0000358823529, +0.0001315686275, +0.0001854901961, \n    +0.0001435294118, +0.0000239215686, -0.0001196078431, -0.0002452941176, \n    -0.0003111764706, -0.0002992156863, -0.0002154901961, -0.0000717647059, \n    +0.0000598039216, +0.0001496078431, +0.0001615686275, +0.0001017647059, \n    +0.0000119607843, -0.0000658823529, -0.0001256862745, -0.0001674509804, \n    -0.0001974509804, -0.0001854901961, -0.0001076470588, +0.0000180392157, \n    +0.0001376470588, +0.0002274509804, +0.0002811764706, +0.0002752941176, \n    +0.0002094117647, +0.0001017647059, -0.0000180392157, -0.0001376470588, \n    -0.0002154901961, -0.0002154901961, -0.0001196078431, +0.0000060784314, \n    +0.0001017647059, +0.0001256862745, +0.0000898039216, +0.0000239215686, \n    -0.0000239215686, -0.0000478431373, -0.0000239215686, +0.0000119607843, \n    +0.0000300000000, +0.0000119607843, -0.0000180392157, -0.0000478431373, \n    -0.0000717647059, -0.0000717647059, -0.0000539215686, -0.0000180392157, \n    +0.0000000000000, +0.0000060784314, +0.0000060784314, -0.0000060784314, \n    -0.0000598039216, -0.0001315686275, -0.0001854901961, -0.0001854901961, \n    -0.0001256862745, -0.0000358823529, +0.0000239215686, +0.0000598039216, \n    +0.0000778431373, +0.0000658823529, +0.0000598039216, +0.0000598039216, \n    +0.0000837254902, +0.0000837254902, +0.0000539215686, -0.0000119607843, \n    -0.0000898039216, -0.0001256862745, -0.0000717647059, +0.0000598039216, \n    +0.0002333333333, +0.0003709803922, +0.0004188235294, +0.0003470588235, \n    +0.0001796078431, -0.0000239215686, -0.0002035294118, -0.0002872549020, \n    -0.0002513725490, -0.0001315686275, +0.0000239215686, +0.0001315686275, \n    +0.0001735294118, +0.0001554901961, +0.0001137254902, +0.0000778431373, \n    +0.0000598039216, +0.0000300000000, -0.0000358823529, -0.0001196078431, \n    -0.0001796078431, -0.0001674509804, -0.0000898039216, +0.0000300000000, \n    +0.0001554901961, +0.0002333333333, +0.0002333333333, +0.0001854901961, \n    +0.0001196078431, +0.0000778431373, +0.0000658823529, +0.0000898039216, \n    +0.0001315686275, +0.0001674509804, +0.0001554901961, +0.0000956862745, \n    +0.0000060784314, -0.0000898039216, -0.0001435294118, -0.0001137254902, \n    +0.0000000000000, +0.0001615686275, +0.0003111764706, +0.0003949019608, \n    +0.0003829411765, +0.0002811764706, +0.0001376470588, +0.0000000000000, \n    -0.0000837254902, -0.0000956862745, -0.0000658823529, -0.0000419607843, \n    -0.0000358823529, -0.0000478431373, -0.0000478431373, -0.0000300000000, \n    +0.0000119607843, +0.0000717647059, +0.0001376470588, +0.0001854901961, \n    +0.0001974509804, +0.0001674509804, +0.0001017647059, +0.0000000000000, \n    -0.0000898039216, -0.0001435294118, -0.0001554901961, -0.0001196078431, \n    -0.0000717647059, -0.0000239215686, +0.0000180392157, +0.0000358823529, \n    +0.0000358823529, +0.0000300000000, +0.0000180392157, +0.0000119607843, \n    -0.0000180392157, -0.0000717647059, -0.0001137254902, -0.0001196078431, \n    -0.0000898039216, -0.0000180392157, +0.0000658823529, +0.0001615686275, \n    +0.0002094117647, +0.0001915686275, +0.0000898039216, -0.0000478431373, \n    -0.0001735294118, -0.0002274509804, -0.0002154901961, -0.0001796078431, \n    -0.0001615686275, -0.0001735294118, -0.0002035294118, -0.0002154901961, \n    -0.0001435294118, -0.0000060784314, +0.0001674509804, +0.0002992156863, \n    +0.0003531372549, +0.0002752941176, +0.0001137254902, -0.0000898039216, \n    -0.0002452941176, -0.0003111764706, -0.0002692156863, -0.0001554901961, \n    +0.0000060784314, +0.0001496078431, +0.0002274509804, +0.0001974509804, \n    +0.0000898039216, -0.0000478431373, -0.0001615686275, -0.0002213725490, \n    -0.0002094117647, -0.0001376470588, -0.0000239215686, +0.0000778431373, \n    +0.0001615686275, +0.0001974509804, +0.0001796078431, +0.0001256862745, \n    +0.0000598039216, +0.0000119607843, -0.0000239215686, -0.0000658823529, \n    -0.0001256862745, -0.0001735294118, -0.0001735294118, -0.0000956862745, \n    +0.0000180392157, +0.0001315686275, +0.0001915686275, +0.0001974509804, \n    +0.0001554901961, +0.0001076470588, +0.0000778431373, +0.0000778431373, \n    +0.0000837254902, +0.0000717647059, +0.0000239215686, -0.0000419607843, \n    -0.0001376470588, -0.0002035294118, -0.0002094117647, -0.0001435294118, \n    -0.0000358823529, +0.0000658823529, +0.0001435294118, +0.0001674509804, \n    +0.0001315686275, +0.0000478431373, -0.0000478431373, -0.0001196078431, \n    -0.0001196078431, -0.0000539215686, +0.0000539215686, +0.0001435294118, \n    +0.0001735294118, +0.0001315686275, +0.0000598039216, +0.0000000000000, \n    -0.0000180392157, -0.0000119607843, +0.0000000000000, +0.0000180392157, \n    +0.0000478431373, +0.0000778431373, +0.0001137254902, +0.0001376470588, \n    +0.0001496078431, +0.0001496078431, +0.0001076470588, +0.0000419607843, \n    -0.0000239215686, -0.0000956862745, -0.0001735294118, -0.0002274509804, \n    -0.0002274509804, -0.0001615686275, -0.0000778431373, -0.0000239215686, \n    -0.0000119607843, -0.0000119607843, -0.0000180392157, -0.0000119607843, \n    +0.0000060784314, +0.0000478431373, +0.0001017647059, +0.0001435294118, \n    +0.0001554901961, +0.0001196078431, +0.0000419607843, -0.0000300000000, \n    -0.0000658823529, -0.0000478431373, +0.0000000000000, +0.0000658823529, \n    +0.0001256862745, +0.0001554901961, +0.0001554901961, +0.0001196078431, \n    +0.0000539215686, +0.0000000000000, -0.0000239215686, -0.0000060784314, \n    +0.0000180392157, +0.0000358823529, +0.0000358823529, +0.0000300000000, \n    +0.0000478431373, +0.0001017647059, +0.0001915686275, +0.0002572549020, \n    +0.0002633333333, +0.0001854901961, +0.0000598039216, -0.0000478431373, \n    -0.0001256862745, -0.0001554901961, -0.0001554901961, -0.0001315686275, \n    -0.0000898039216, -0.0000539215686, -0.0000300000000, -0.0000300000000, \n    -0.0000478431373, -0.0000837254902, -0.0001076470588, -0.0000956862745, \n    -0.0000598039216, -0.0000358823529, -0.0000419607843, -0.0000837254902, \n    -0.0001256862745, -0.0001376470588, -0.0001017647059, -0.0000358823529, \n    +0.0000419607843, +0.0001137254902, +0.0001674509804, +0.0001735294118, \n    +0.0001376470588, +0.0000898039216, +0.0000539215686, +0.0000300000000, \n    +0.0000180392157, +0.0000119607843, +0.0000180392157, +0.0000358823529, \n    +0.0000778431373, +0.0001496078431, +0.0002452941176, +0.0003350980392, \n    +0.0003709803922, +0.0003231372549, +0.0001735294118, +0.0000000000000, \n    -0.0001554901961, -0.0002035294118, -0.0001256862745, +0.0000478431373, \n    +0.0002633333333, +0.0004188235294, +0.0004188235294, +0.0002692156863, \n    +0.0000300000000, -0.0001854901961, -0.0002931372549, -0.0002692156863, \n    -0.0001496078431, -0.0000060784314, +0.0000956862745, +0.0001196078431, \n    +0.0000717647059, -0.0000060784314, -0.0000658823529, -0.0000717647059, \n    -0.0000358823529, +0.0000060784314, +0.0000598039216, +0.0000717647059, \n    +0.0000419607843, -0.0000300000000, -0.0000956862745, -0.0001315686275, \n    -0.0001137254902, -0.0000658823529, -0.0000180392157, +0.0000239215686, \n    +0.0000658823529, +0.0001017647059, +0.0001137254902, +0.0000898039216, \n    +0.0000300000000, -0.0000358823529, -0.0001137254902, -0.0001435294118, \n    -0.0001076470588, -0.0000060784314, +0.0001076470588, +0.0001915686275, \n    +0.0001915686275, +0.0001137254902, -0.0000119607843, -0.0001376470588, \n    -0.0002213725490, -0.0002154901961, -0.0001256862745, +0.0000000000000, \n    +0.0001196078431, +0.0001915686275, +0.0001974509804, +0.0001615686275, \n    +0.0001196078431, +0.0000956862745, +0.0001137254902, +0.0001615686275, \n    +0.0002035294118, +0.0002035294118, +0.0001674509804, +0.0001076470588, \n    +0.0000358823529, -0.0000239215686, -0.0000539215686, -0.0000419607843, \n    +0.0000060784314, +0.0000539215686, +0.0000717647059, +0.0000539215686, \n    +0.0000300000000, +0.0000239215686, +0.0000419607843, +0.0000539215686, \n    +0.0000717647059, +0.0000717647059, +0.0000598039216, +0.0000239215686, \n    +0.0000000000000, -0.0000060784314, +0.0000239215686, +0.0000717647059, \n    +0.0001137254902, +0.0001196078431, +0.0001017647059, +0.0000658823529, \n    +0.0000239215686, +0.0000060784314, +0.0000119607843, +0.0000300000000, \n    +0.0000419607843, +0.0000358823529, +0.0000060784314, -0.0000419607843, \n    -0.0001196078431, -0.0001854901961, -0.0002154901961, -0.0001854901961, \n    -0.0001076470588, +0.0000060784314, +0.0001256862745, +0.0002154901961, \n    +0.0002452941176, +0.0002213725490, +0.0001435294118, +0.0000419607843, \n    -0.0000539215686, -0.0001137254902, -0.0001196078431, -0.0000898039216, \n    -0.0000300000000, +0.0000300000000, +0.0000778431373, +0.0001076470588, \n    +0.0001196078431, +0.0001076470588, +0.0000717647059, +0.0000119607843, \n    -0.0000300000000, -0.0000778431373, -0.0001076470588, -0.0001256862745, \n    -0.0001196078431, -0.0000778431373, -0.0000060784314, +0.0000419607843, \n    +0.0000658823529, +0.0000358823529, -0.0000239215686, -0.0000898039216, \n    -0.0001256862745, -0.0001076470588, -0.0000419607843, +0.0000419607843, \n    +0.0001076470588, +0.0001376470588, +0.0001256862745, +0.0000898039216, \n    +0.0000300000000, -0.0000300000000, -0.0000658823529, -0.0000658823529, \n    -0.0000478431373, -0.0000358823529, -0.0000300000000, -0.0000180392157, \n    -0.0000180392157, -0.0000119607843, -0.0000180392157, -0.0000239215686, \n    -0.0000358823529, -0.0000539215686, -0.0000837254902, -0.0001196078431, \n    -0.0001256862745, -0.0000837254902, -0.0000119607843, +0.0000598039216, \n    +0.0001076470588, +0.0001256862745, +0.0001076470588, +0.0000539215686, \n    -0.0000119607843, -0.0001017647059, -0.0001735294118, -0.0002274509804, \n    -0.0002333333333, -0.0001974509804, -0.0001615686275, -0.0001496078431, \n    -0.0001615686275, -0.0001854901961, -0.0001915686275, -0.0001735294118, \n    -0.0001315686275, -0.0001076470588, -0.0001076470588, -0.0001315686275, \n    -0.0001735294118, -0.0001974509804, -0.0001974509804, -0.0001496078431, \n    -0.0000837254902, -0.0000419607843, -0.0000478431373, -0.0000956862745, \n    -0.0001735294118, -0.0002333333333, -0.0002452941176, -0.0001915686275, \n    -0.0000837254902, +0.0000358823529, +0.0001196078431, +0.0001554901961, \n    +0.0001196078431, +0.0000419607843, -0.0000598039216, -0.0001554901961, \n    -0.0001974509804, -0.0001854901961, -0.0001376470588, -0.0000778431373, \n    -0.0000539215686, -0.0000658823529, -0.0000717647059, -0.0000658823529, \n    -0.0000300000000, +0.0000119607843, +0.0000539215686, +0.0000778431373, \n    +0.0000717647059, +0.0000358823529, -0.0000119607843, -0.0000358823529, \n    -0.0000060784314, +0.0000419607843, +0.0000778431373, +0.0000598039216, \n    -0.0000060784314, -0.0001017647059, -0.0001915686275, -0.0002274509804, \n    -0.0001854901961, -0.0000778431373, +0.0000419607843, +0.0001496078431, \n    +0.0002094117647, +0.0002154901961, +0.0001796078431, +0.0001076470588, \n    +0.0000060784314, -0.0000898039216, -0.0001674509804, -0.0002035294118, \n    -0.0001796078431, -0.0001137254902, -0.0000358823529, +0.0000119607843, \n    +0.0000180392157, -0.0000119607843, -0.0000539215686, -0.0000717647059, \n    -0.0000598039216, -0.0000180392157, +0.0000300000000, +0.0000598039216, \n    +0.0000478431373, +0.0000000000000, -0.0000658823529, -0.0001315686275, \n    -0.0001796078431, -0.0001974509804, -0.0001854901961, -0.0001615686275, \n    -0.0001315686275, -0.0001076470588, -0.0000778431373, -0.0000598039216, \n    -0.0000419607843, -0.0000060784314, +0.0000180392157, +0.0000300000000, \n    +0.0000000000000, -0.0000598039216, -0.0001435294118, -0.0002035294118, \n    -0.0002213725490, -0.0001854901961, -0.0000898039216, +0.0000000000000, \n    +0.0000419607843, +0.0000300000000, -0.0000119607843, -0.0000658823529, \n    -0.0000778431373, -0.0000478431373, +0.0000119607843, +0.0000658823529, \n    +0.0000717647059, +0.0000239215686, -0.0000598039216, -0.0001256862745, \n    -0.0001435294118, -0.0001137254902, -0.0000598039216, +0.0000000000000, \n    +0.0000658823529, +0.0001076470588, +0.0001196078431, +0.0001076470588, \n    +0.0000837254902, +0.0000658823529, +0.0000539215686, +0.0000239215686, \n    -0.0000060784314, -0.0000419607843, -0.0000598039216, -0.0000598039216, \n    -0.0000300000000, +0.0000000000000, +0.0000180392157, +0.0000358823529, \n    +0.0000300000000, +0.0000180392157, +0.0000180392157, +0.0000300000000, \n    +0.0000478431373, +0.0000717647059, +0.0000837254902, +0.0000778431373, \n    +0.0000419607843, +0.0000000000000, -0.0000239215686, -0.0000239215686, \n    +0.0000000000000, +0.0000119607843, +0.0000119607843, -0.0000180392157, \n    -0.0000658823529, -0.0001017647059, -0.0001137254902, -0.0001137254902, \n    -0.0000956862745, -0.0000658823529, -0.0000300000000, -0.0000119607843, \n    -0.0000239215686, -0.0000658823529, -0.0001196078431, -0.0001435294118, \n    -0.0001196078431, -0.0000478431373, +0.0000478431373, +0.0001376470588, \n    +0.0001974509804, +0.0001915686275, +0.0001376470588, +0.0000478431373, \n    -0.0000419607843, -0.0001137254902, -0.0001554901961, -0.0001735294118, \n    -0.0001674509804, -0.0001256862745, -0.0000717647059, -0.0000239215686, \n    +0.0000000000000, +0.0000060784314, +0.0000119607843, +0.0000180392157, \n    +0.0000358823529, +0.0000717647059, +0.0001196078431, +0.0001615686275, \n    +0.0001554901961, +0.0001076470588, +0.0000300000000, -0.0000419607843, \n    -0.0000898039216, -0.0000956862745, -0.0000837254902, -0.0000478431373, \n    +0.0000000000000, +0.0000239215686, +0.0000358823529, +0.0000180392157, \n    -0.0000060784314, -0.0000358823529, -0.0000539215686, -0.0000419607843, \n    +0.0000180392157, +0.0001076470588, +0.0001974509804, +0.0002452941176, \n    +0.0002274509804, +0.0001376470588, +0.0000060784314, -0.0001256862745, \n    -0.0002154901961, -0.0002274509804, -0.0001496078431, -0.0000300000000, \n    +0.0000956862745, +0.0001796078431, +0.0001915686275, +0.0001435294118, \n    +0.0000778431373, +0.0000180392157, -0.0000119607843, -0.0000060784314, \n    +0.0000119607843, +0.0000358823529, +0.0000300000000, +0.0000000000000, \n    -0.0000419607843, -0.0000598039216, -0.0000478431373, -0.0000239215686, \n    +0.0000000000000, +0.0000358823529, +0.0000539215686, +0.0000419607843, \n    +0.0000119607843, -0.0000180392157, -0.0000180392157, +0.0000358823529, \n    +0.0001256862745, +0.0002154901961, +0.0002394117647, +0.0002094117647, \n    +0.0001376470588, +0.0000717647059, +0.0000239215686, +0.0000060784314, \n    +0.0000239215686, +0.0000658823529, +0.0000778431373, +0.0000478431373, \n    +0.0000000000000, -0.0000180392157, +0.0000060784314, +0.0000837254902, \n    +0.0001615686275, +0.0002094117647, +0.0001915686275, +0.0001315686275, \n    +0.0000717647059, +0.0000539215686, +0.0000837254902, +0.0001376470588, \n    +0.0001796078431, +0.0001854901961, +0.0001376470588, +0.0000419607843, \n    -0.0000539215686, -0.0001196078431, -0.0001256862745, -0.0000898039216, \n    -0.0000239215686, +0.0000358823529, +0.0000956862745, +0.0001496078431, \n    +0.0002035294118, +0.0002333333333, +0.0002394117647, +0.0001854901961, \n    +0.0000956862745, -0.0000060784314, -0.0000778431373, -0.0001017647059, \n    -0.0000837254902, -0.0000478431373, -0.0000060784314, +0.0000300000000, \n    +0.0000539215686, +0.0000898039216, +0.0001196078431, +0.0001674509804, \n    +0.0001974509804, +0.0002154901961, +0.0002094117647, +0.0001796078431, \n    +0.0001376470588, +0.0001017647059, +0.0000717647059, +0.0000598039216, \n    +0.0000478431373, +0.0000300000000, +0.0000060784314, -0.0000180392157, \n    -0.0000478431373, -0.0000658823529, -0.0000539215686, -0.0000119607843, \n    +0.0000419607843, +0.0000778431373, +0.0000717647059, +0.0000358823529, \n    +0.0000000000000, -0.0000239215686, -0.0000119607843, +0.0000239215686, \n    +0.0000778431373, +0.0001256862745, +0.0001496078431, +0.0001615686275, \n    +0.0001554901961, +0.0001376470588, +0.0001137254902, +0.0000778431373, \n    +0.0000539215686, +0.0000598039216, +0.0000778431373, +0.0001076470588, \n    +0.0001256862745, +0.0001256862745, +0.0001017647059, +0.0000598039216, \n    +0.0000000000000, -0.0000478431373, -0.0000837254902, -0.0000956862745, \n    -0.0000717647059, -0.0000180392157, +0.0000419607843, +0.0000956862745, \n    +0.0001256862745, +0.0001196078431, +0.0000898039216, +0.0000419607843, \n    +0.0000000000000, -0.0000358823529, -0.0000658823529, -0.0000898039216, \n    -0.0001076470588, -0.0001196078431, -0.0001076470588, -0.0000778431373, \n    -0.0000419607843, -0.0000060784314, +0.0000000000000, -0.0000119607843, \n    -0.0000717647059, -0.0001554901961, -0.0002094117647, -0.0002035294118, \n    -0.0001256862745, -0.0000119607843, +0.0001076470588, +0.0001915686275, \n    +0.0002154901961, +0.0001496078431, +0.0000119607843, -0.0001137254902, \n    -0.0001854901961, -0.0001674509804, -0.0000898039216, +0.0000000000000, \n    +0.0000598039216, +0.0000658823529, +0.0000119607843, -0.0000539215686, \n    -0.0001017647059, -0.0000956862745, -0.0000539215686, -0.0000119607843, \n    +0.0000000000000, +0.0000000000000, -0.0000119607843, -0.0000060784314, \n    +0.0000180392157, +0.0000598039216, +0.0000837254902, +0.0000898039216, \n    +0.0000658823529, +0.0000239215686, -0.0000239215686, -0.0000419607843, \n    -0.0000239215686, +0.0000419607843, +0.0001256862745, +0.0001854901961, \n    +0.0002035294118, +0.0001615686275, +0.0000837254902, +0.0000060784314, \n    -0.0000358823529, -0.0000358823529, -0.0000060784314, +0.0000300000000, \n    +0.0000598039216, +0.0000778431373, +0.0000837254902, +0.0000717647059, \n    +0.0000478431373, +0.0000119607843, -0.0000478431373, -0.0001196078431, \n    -0.0001796078431, -0.0001974509804, -0.0001496078431, -0.0000539215686, \n    +0.0000478431373, +0.0001256862745, +0.0001554901961, +0.0001315686275, \n    +0.0000717647059, +0.0000119607843, -0.0000358823529, -0.0000539215686, \n    -0.0000478431373, -0.0000358823529, -0.0000180392157, -0.0000119607843, \n    -0.0000239215686, -0.0000419607843, -0.0000419607843, -0.0000300000000, \n    -0.0000239215686, -0.0000358823529, -0.0000539215686, -0.0000658823529, \n    -0.0000478431373, +0.0000000000000, +0.0000598039216, +0.0001017647059, \n    +0.0001137254902, +0.0000837254902, +0.0000239215686, -0.0000239215686, \n    -0.0000539215686, -0.0000539215686, -0.0000239215686, +0.0000119607843, \n    +0.0000598039216, +0.0000658823529, +0.0000358823529, -0.0000119607843, \n    -0.0000539215686, -0.0000717647059, -0.0000598039216, -0.0000180392157, \n    +0.0000239215686, +0.0000658823529, +0.0001017647059, +0.0001435294118, \n    +0.0001735294118, +0.0001674509804, +0.0001256862745, +0.0000539215686, \n    -0.0000300000000, -0.0001256862745, -0.0001974509804, -0.0002094117647, \n    -0.0001674509804, -0.0000717647059, +0.0000358823529, +0.0001376470588, \n    +0.0001915686275, +0.0001915686275, +0.0001496078431, +0.0000837254902, \n    +0.0000300000000, +0.0000060784314, +0.0000180392157, +0.0000478431373, \n    +0.0000658823529, +0.0000658823529, +0.0000358823529, +0.0000000000000, \n    -0.0000358823529, -0.0000419607843, +0.0000000000000, +0.0000717647059, \n    +0.0001315686275, +0.0001256862745, +0.0000539215686, -0.0000478431373, \n    -0.0001376470588, -0.0001615686275, -0.0001076470588, -0.0000119607843, \n    +0.0000717647059, +0.0001256862745, +0.0001137254902, +0.0000478431373, \n    -0.0000300000000, -0.0000778431373, -0.0000837254902, -0.0000478431373, \n    +0.0000000000000, +0.0000239215686, +0.0000239215686, -0.0000060784314, \n    -0.0000598039216, -0.0001137254902, -0.0001435294118, -0.0001435294118, \n    -0.0001137254902, -0.0000898039216, -0.0000778431373, -0.0000837254902, \n    -0.0000956862745, -0.0000898039216, -0.0000598039216, -0.0000060784314, \n    +0.0000539215686, +0.0000956862745, +0.0000898039216, +0.0000300000000, \n    -0.0000539215686, -0.0001315686275, -0.0001615686275, -0.0001435294118, \n    -0.0000898039216, -0.0000300000000, +0.0000239215686, +0.0000539215686, \n    +0.0000300000000, -0.0000300000000, -0.0001196078431, -0.0001854901961, \n    -0.0002154901961, -0.0001796078431, -0.0000837254902, +0.0000478431373, \n    +0.0001615686275, +0.0002154901961, +0.0002035294118, +0.0001615686275, \n    +0.0000837254902, +0.0000000000000, -0.0000717647059, -0.0001315686275, \n    -0.0001615686275, -0.0001615686275, -0.0001315686275, -0.0000898039216, \n    -0.0000358823529, +0.0000000000000, +0.0000180392157, +0.0000239215686, \n    +0.0000060784314, -0.0000358823529, -0.0000717647059, -0.0001017647059, \n    -0.0001017647059, -0.0000837254902, -0.0000539215686, -0.0000300000000, \n    -0.0000119607843, +0.0000000000000, +0.0000180392157, +0.0000358823529, \n    +0.0000539215686, +0.0000478431373, +0.0000180392157, -0.0000180392157, \n    -0.0000598039216, -0.0000837254902, -0.0000658823529, +0.0000000000000, \n    +0.0000956862745, +0.0001974509804, +0.0002513725490, +0.0002274509804, \n    +0.0001315686275, +0.0000180392157, -0.0000658823529, -0.0001137254902, \n    -0.0001196078431, -0.0000837254902, -0.0000300000000, +0.0000000000000, \n    +0.0000000000000, -0.0000119607843, -0.0000239215686, -0.0000300000000, \n    -0.0000119607843, +0.0000000000000, +0.0000060784314, +0.0000119607843, \n    +0.0000060784314, +0.0000000000000\n};\n"
  },
  {
    "path": "impulses/20-matchless-chieftain-sm57.h",
    "content": "float matchless_chieftain_sm57[] = {\n    -0.0001573195876, -0.0001321649485, -0.0001509278351, -0.0001950515464, \n    -0.0001698969072, -0.0002014432990, -0.0002391752577, -0.0002076288660, \n    -0.0002391752577, -0.0002579381443, -0.0002265979381, -0.0002705154639, \n    -0.0002830927835, -0.0002579381443, -0.0003082474227, -0.0003082474227, \n    -0.0002830927835, -0.0003397938144, -0.0003208247423, -0.0003020618557, \n    -0.0003587628866, -0.0003272164948, -0.0003146391753, -0.0003523711340, \n    -0.0003020618557, -0.0003020618557, -0.0003334020619, -0.0002830927835, \n    -0.0002894845361, -0.0003082474227, -0.0002517525773, -0.0002705154639, \n    -0.0002643298969, -0.0001950515464, -0.0002202061856, -0.0002014432990, \n    -0.0001383505155, -0.0001760824742, -0.0001383505155, -0.0000754639175, \n    -0.0001006185567, -0.0000377319588, +0.0000125773196, +0.0000000000000, \n    +0.0000818556701, +0.0001257731959, +0.0001070103093, +0.0001950515464, \n    +0.0002140206186, +0.0002014432990, +0.0003082474227, +0.0003272164948, \n    +0.0003397938144, +0.0004655670103, +0.0004845360825, +0.0005284536082, \n    +0.0006480412371, +0.0006480412371, +0.0006983505155, +0.0007991752577, \n    +0.0007802061856, +0.0008556701031, +0.0009439175258, +0.0009187628866, \n    +0.0010193814433, +0.0011012371134, +0.0010886597938, +0.0011954639175, \n    +0.0012521649485, +0.0012331958763, +0.0013527835052, +0.0013843298969, \n    +0.0013717525773, +0.0014975257732, +0.0014975257732, +0.0015101030928, \n    +0.0016360824742, +0.0016045360825, +0.0016235051546, +0.0017303092784, \n    +0.0016738144330, +0.0017115463918, +0.0017934020619, +0.0016989690722, \n    +0.0017303092784, +0.0017618556701, +0.0016360824742, +0.0016863917526, \n    +0.0016674226804, +0.0015352577320, +0.0016486597938, +0.0015919587629, \n    +0.0014597938144, +0.0016360824742, +0.0014787628866, +0.0012270103093, \n    +0.0014220618557, +0.0012837113402, +0.0009061855670, +0.0009690721649, \n    +0.0008934020619, +0.0006921649485, +0.0007488659794, +0.0005600000000, \n    +0.0003523711340, +0.0003713402062, +0.0001131958763, -0.0000441237113, \n    -0.0000189690722, -0.0003020618557, -0.0004152577320, -0.0003964948454, \n    -0.0007173195876, -0.0008117525773, -0.0008369072165, -0.0012521649485, \n    -0.0013402061856, -0.0013653608247, -0.0018185567010, -0.0018311340206, \n    -0.0017744329897, -0.0024098969072, -0.0025484536082, -0.0020701030928, \n    -0.0023847422680, -0.0031336082474, -0.0036746391753, -0.0041340206186, \n    -0.0032280412371, -0.0027496907216, -0.0086958762887, -0.0155482474227, \n    -0.0044989690722, +0.0278622680412, +0.0582853608247, +0.0601542268041, \n    +0.0219851546392, -0.0483373195876, -0.1271859793814, -0.1883847422680, \n    -0.2061604123711, -0.1617053608247, -0.0701967010309, +0.0274721649485, \n    +0.1021426804124, +0.1359385567010, +0.1240461855670, +0.0918358762887, \n    +0.0611546391753, +0.0284158762887, +0.0013340206186, -0.0083121649485, \n    -0.0133647422680, -0.0195878350515, -0.0178385567010, -0.0133585567010, \n    -0.0077331958763, +0.0091426804124, +0.0264402061856, +0.0247412371134, \n    +0.0079849484536, -0.0106024742268, -0.0259492783505, -0.0365393814433, \n    -0.0389618556701, -0.0265030927835, +0.0010632989691, +0.0284915463918, \n    +0.0412585567010, +0.0431461855670, +0.0453861855670, +0.0480793814433, \n    +0.0433412371134, +0.0286298969072, +0.0059274226804, -0.0206261855670, \n    -0.0408494845361, -0.0479534020619, -0.0436117525773, -0.0271134020619, \n    -0.0034608247423, +0.0123327835052, +0.0190216494845, +0.0234639175258, \n    +0.0194872164948, +0.0082303092784, +0.0028441237113, -0.0001321649485, \n    -0.0086078350515, -0.0130249484536, -0.0089540206186, -0.0065377319588, \n    -0.0087148453608, -0.0100740206186, -0.0096649484536, -0.0076074226804, \n    +0.0001195876289, +0.0136354639175, +0.0243321649485, +0.0259808247423, \n    +0.0218152577320, +0.0170144329897, +0.0146358762887, +0.0146169072165, \n    +0.0114835051546, +0.0035550515464, -0.0016925773196, -0.0007865979381, \n    +0.0015855670103, +0.0029637113402, +0.0048136082474, +0.0070410309278, \n    +0.0062292783505, -0.0002643298969, -0.0088973195876, -0.0142080412371, \n    -0.0154160824742, -0.0135472164948, -0.0094131958763, -0.0039074226804, \n    +0.0038193814433, +0.0134214432990, +0.0221865979381, +0.0295925773196, \n    +0.0346138144330, +0.0342678350515, +0.0294290721649, +0.0230863917526, \n    +0.0158125773196, +0.0073430927835, -0.0029888659794, -0.0141764948454, \n    -0.0219412371134, -0.0246909278351, -0.0238352577320, -0.0186441237113, \n    -0.0088531958763, +0.0035804123711, +0.0170270103093, +0.0276672164948, \n    +0.0298756701031, +0.0225138144330, +0.0096901030928, -0.0035488659794, \n    -0.0138053608247, -0.0193991752577, -0.0193991752577, -0.0140191752577, \n    -0.0056756701031, +0.0020952577320, +0.0071103092784, +0.0101117525773, \n    +0.0125531958763, +0.0132453608247, +0.0109863917526, +0.0065942268041, \n    -0.0000944329897, -0.0080414432990, -0.0124649484536, -0.0111876288660, \n    -0.0065439175258, -0.0002517525773, +0.0061286597938, +0.0101305154639, \n    +0.0114709278351, +0.0108981443299, +0.0073241237113, +0.0010068041237, \n    -0.0043919587629, -0.0062608247423, -0.0056063917526, -0.0037816494845, \n    -0.0011577319588, +0.0014849484536, +0.0035676288660, +0.0043919587629, \n    +0.0026616494845, -0.0009439175258, -0.0048828865979, -0.0094195876289, \n    -0.0130375257732, -0.0122950515464, -0.0076325773196, -0.0019317525773, \n    +0.0032909278351, +0.0062672164948, +0.0053420618557, +0.0010129896907, \n    -0.0047632989691, -0.0089350515464, -0.0093818556701, -0.0074249484536, \n    -0.0054303092784, -0.0045934020619, -0.0050338144330, -0.0054428865979, \n    -0.0047507216495, -0.0035929896907, -0.0026239175258, -0.0018185567010, \n    -0.0013150515464, -0.0011325773196, -0.0009061855670, -0.0002014432990, \n    +0.0004216494845, -0.0004152577320, -0.0026552577320, -0.0051721649485, \n    -0.0071039175258, -0.0071290721649, -0.0057762886598, -0.0055119587629, \n    -0.0056944329897, -0.0046752577320, -0.0042723711340, -0.0049583505155, \n    -0.0044422680412, -0.0025610309278, -0.0003523711340, +0.0014030927835, \n    +0.0010319587629, -0.0018247422680, -0.0056692783505, -0.0094383505155, \n    -0.0117791752577, -0.0109925773196, -0.0073367010309, -0.0031523711340, \n    -0.0010129896907, -0.0014410309278, -0.0031649484536, -0.0055309278351, \n    -0.0070913402062, -0.0053800000000, -0.0010319587629, +0.0026490721649, \n    +0.0037123711340, +0.0018624742268, -0.0019569072165, -0.0060783505155, \n    -0.0091426804124, -0.0097907216495, -0.0079282474227, -0.0055686597938, \n    -0.0035488659794, -0.0013276288660, +0.0001131958763, -0.0002643298969, \n    -0.0016612371134, -0.0023721649485, -0.0014723711340, -0.0001383505155, \n    +0.0001006185567, -0.0002453608247, -0.0008620618557, -0.0019569072165, \n    -0.0022338144330, -0.0009061855670, +0.0011451546392, +0.0035047422680, \n    +0.0051534020619, +0.0041591752577, +0.0004026804124, -0.0044296907216, \n    -0.0082618556701, -0.0090546391753, -0.0066068041237, -0.0027496907216, \n    +0.0004655670103, +0.0018311340206, +0.0012585567010, -0.0006103092784, \n    -0.0031775257732, -0.0054742268041, -0.0064684536082, -0.0057070103093, \n    -0.0032531958763, -0.0002579381443, +0.0017241237113, +0.0026678350515, \n    +0.0031397938144, +0.0029259793814, +0.0018311340206, +0.0002391752577, \n    -0.0013088659794, -0.0027183505155, -0.0043919587629, -0.0056882474227, \n    -0.0052791752577, -0.0040962886598, -0.0038068041237, -0.0035550515464, \n    -0.0021016494845, -0.0004719587629, +0.0001509278351, +0.0005284536082, \n    +0.0018121649485, +0.0036558762887, +0.0045179381443, +0.0035865979381, \n    +0.0015981443299, -0.0002643298969, -0.0017744329897, -0.0031272164948, \n    -0.0036872164948, -0.0029447422680, -0.0017554639175, -0.0007550515464, \n    +0.0003649484536, +0.0014975257732, +0.0022086597938, +0.0023344329897, \n    +0.0019569072165, +0.0017177319588, +0.0018814432990, +0.0015352577320, \n    +0.0003839175258, -0.0008556701031, -0.0018059793814, -0.0020449484536, \n    -0.0013402061856, -0.0002327835052, +0.0013340206186, +0.0038193814433, \n    +0.0063049484536, +0.0075319587629, +0.0072550515464, +0.0057575257732, \n    +0.0034356701031, +0.0010381443299, -0.0005284536082, -0.0009690721649, \n    -0.0006606185567, +0.0001447422680, +0.0012521649485, +0.0017870103093, \n    +0.0013843298969, +0.0005663917526, -0.0003587628866, -0.0011515463918, \n    -0.0011138144330, +0.0000000000000, +0.0016925773196, +0.0029762886598, \n    +0.0030265979381, +0.0024476288660, +0.0024224742268, +0.0031084536082, \n    +0.0038760824742, +0.0042158762887, +0.0041969072165, +0.0040334020619, \n    +0.0030265979381, +0.0008369072165, -0.0009439175258, -0.0011200000000, \n    -0.0004907216495, +0.0003775257732, +0.0019379381443, +0.0036810309278, \n    +0.0043668041237, +0.0039012371134, +0.0033663917526, +0.0032468041237, \n    +0.0031587628866, +0.0030140206186, +0.0030202061856, +0.0033412371134, \n    +0.0041591752577, +0.0050527835052, +0.0053358762887, +0.0051408247423, \n    +0.0048197938144, +0.0043606185567, +0.0037249484536, +0.0028063917526, \n    +0.0019253608247, +0.0018498969072, +0.0022715463918, +0.0022715463918, \n    +0.0018121649485, +0.0010822680412, +0.0002956701031, +0.0000000000000, \n    -0.0001257731959, -0.0007362886598, -0.0012962886598, -0.0011451546392, \n    -0.0004090721649, +0.0005851546392, +0.0014472164948, +0.0018624742268, \n    +0.0019758762887, +0.0021268041237, +0.0026804123711, +0.0034230927835, \n    +0.0035362886598, +0.0028628865979, +0.0019443298969, +0.0012457731959, \n    +0.0010068041237, +0.0009752577320, +0.0008872164948, +0.0013527835052, \n    +0.0026490721649, +0.0038948453608, +0.0042346391753, +0.0034105154639, \n    +0.0019379381443, +0.0009942268041, +0.0006857731959, +0.0001447422680, \n    -0.0005158762887, -0.0005284536082, +0.0001573195876, +0.0009375257732, \n    +0.0012395876289, +0.0012711340206, +0.0016360824742, +0.0022148453608, \n    +0.0026678350515, +0.0029888659794, +0.0028189690722, +0.0018750515464, \n    +0.0007614432990, +0.0002643298969, +0.0006480412371, +0.0013969072165, \n    +0.0016486597938, +0.0013591752577, +0.0009816494845, +0.0004655670103, \n    -0.0001760824742, -0.0005915463918, -0.0005977319588, -0.0001509278351, \n    +0.0005915463918, +0.0012395876289, +0.0016422680412, +0.0018688659794, \n    +0.0017618556701, +0.0013214432990, +0.0008243298969, +0.0002579381443, \n    -0.0004655670103, -0.0012206185567, -0.0016548453608, -0.0015290721649, \n    -0.0009313402062, -0.0001195876289, +0.0007109278351, +0.0015290721649, \n    +0.0021709278351, +0.0023154639175, +0.0017806185567, +0.0006795876289, \n    -0.0006354639175, -0.0016360824742, -0.0018814432990, -0.0016045360825, \n    -0.0013024742268, -0.0010632989691, -0.0008117525773, -0.0004026804124, \n    +0.0001698969072, +0.0004845360825, +0.0002894845361, +0.0001070103093, \n    +0.0001321649485, -0.0000754639175, -0.0007109278351, -0.0014030927835, \n    -0.0016989690722, -0.0014030927835, -0.0008053608247, -0.0002705154639, \n    +0.0000315463918, +0.0000692783505, -0.0000503092784, -0.0001131958763, \n    -0.0001824742268, -0.0003964948454, -0.0005725773196, -0.0005474226804, \n    -0.0004719587629, -0.0004907216495, -0.0005977319588, -0.0007740206186, \n    -0.0008872164948, -0.0007047422680, -0.0003208247423, -0.0002014432990, \n    -0.0005412371134, -0.0011074226804, -0.0015101030928, -0.0014346391753, \n    -0.0010068041237, -0.0006983505155, -0.0004278350515, +0.0001760824742, \n    +0.0009375257732, +0.0012647422680, +0.0009564948454, +0.0002830927835, \n    -0.0002705154639, -0.0005222680412, -0.0006167010309, -0.0006670103093, \n    -0.0007927835052, -0.0010571134021, -0.0011641237113, -0.0009249484536, \n    -0.0007614432990, -0.0011325773196, -0.0018373195876, -0.0022967010309, \n    -0.0021268041237, -0.0014849484536, -0.0007802061856, -0.0002076288660, \n    +0.0002956701031, +0.0007550515464, +0.0009123711340, +0.0004719587629, \n    -0.0003649484536, -0.0011263917526, -0.0015729896907, -0.0017870103093, \n    -0.0019758762887, -0.0023092783505, -0.0026931958763, -0.0028692783505, \n    -0.0026804123711, -0.0021835051546, -0.0017241237113, -0.0015542268041, \n    -0.0013779381443, -0.0009878350515, -0.0006606185567, -0.0005851546392, \n    -0.0006480412371, -0.0007740206186, -0.0006731958763, -0.0001257731959, \n    +0.0003839175258, +0.0003208247423, -0.0001950515464, -0.0007362886598, \n    -0.0011074226804, -0.0013717525773, -0.0015290721649, -0.0015164948454, \n    -0.0012837113402, -0.0010068041237, -0.0009690721649, -0.0013150515464, \n    -0.0018059793814, -0.0020639175258, -0.0019694845361, -0.0016989690722, \n    -0.0014536082474, -0.0013024742268, -0.0012018556701, -0.0010129896907, \n    -0.0005663917526, +0.0000441237113, +0.0005915463918, +0.0009626804124, \n    +0.0011325773196, +0.0009816494845, +0.0004278350515, -0.0005158762887, \n    -0.0016800000000, -0.0025294845361, -0.0027119587629, -0.0024098969072, \n    -0.0018940206186, -0.0013465979381, -0.0009878350515, -0.0007991752577, \n    -0.0005284536082, -0.0002014432990, +0.0000125773196, +0.0001509278351, \n    +0.0002014432990, +0.0001447422680, +0.0000000000000, -0.0002956701031, \n    -0.0008430927835, -0.0013653608247, -0.0015101030928, -0.0013088659794, \n    -0.0010571134021, -0.0008808247423, -0.0007109278351, -0.0005725773196, \n    -0.0004090721649, -0.0001509278351, +0.0000441237113, +0.0000944329897, \n    +0.0000754639175, +0.0000315463918, +0.0000063917526, +0.0000189690722, \n    -0.0001447422680, -0.0004655670103, -0.0004593814433, -0.0001195876289, \n    +0.0000754639175, +0.0001006185567, +0.0001383505155, +0.0002579381443, \n    +0.0004845360825, +0.0005600000000, +0.0002956701031, -0.0000315463918, \n    -0.0001888659794, -0.0001635051546, +0.0000754639175, +0.0004468041237, \n    +0.0006480412371, +0.0006228865979, +0.0004529896907, +0.0001573195876, \n    -0.0001698969072, -0.0005915463918, -0.0009942268041, -0.0010255670103, \n    -0.0007298969072, -0.0004593814433, -0.0003523711340, -0.0004468041237, \n    -0.0006670103093, -0.0006354639175, -0.0002894845361, +0.0001131958763, \n    +0.0005474226804, +0.0010255670103, +0.0014661855670, +0.0018059793814, \n    +0.0018311340206, +0.0014156701031, +0.0008179381443, +0.0003523711340, \n    +0.0002076288660, +0.0003713402062, +0.0005412371134, +0.0006983505155, \n    +0.0010948453608, +0.0015039175258, +0.0015668041237, +0.0013591752577, \n    +0.0009690721649, +0.0004907216495, +0.0002140206186, +0.0002327835052, \n    +0.0004152577320, +0.0006103092784, +0.0005977319588, +0.0003775257732, \n    +0.0001950515464, +0.0001447422680, +0.0001383505155, +0.0001383505155, \n    +0.0001321649485, +0.0002265979381, +0.0004152577320, +0.0003587628866, \n    +0.0000315463918, -0.0001131958763, +0.0000692783505, +0.0002327835052, \n    +0.0001131958763, -0.0000818556701, -0.0001447422680, -0.0000377319588, \n    +0.0001888659794, +0.0004404123711, +0.0004781443299, +0.0002956701031, \n    +0.0001321649485, +0.0000944329897, +0.0001760824742, +0.0003587628866, \n    +0.0005284536082, +0.0005789690722, +0.0005977319588, +0.0006041237113, \n    +0.0004781443299, +0.0002643298969, +0.0002643298969, +0.0005915463918, \n    +0.0010445360825, +0.0014661855670, +0.0017051546392, +0.0016296907216, \n    +0.0013905154639, +0.0011767010309, +0.0008934020619, +0.0005348453608, \n    +0.0002894845361, +0.0001195876289, +0.0000000000000, -0.0000628865979, \n    -0.0001888659794, -0.0003208247423, -0.0002517525773, +0.0000503092784, \n    +0.0005663917526, +0.0010886597938, +0.0013088659794, +0.0012647422680, \n    +0.0011325773196, +0.0008556701031, +0.0005096907216, +0.0002579381443, \n    +0.0000377319588, -0.0001573195876, -0.0001824742268, +0.0000000000000, \n    +0.0003272164948, +0.0007298969072, +0.0010445360825, +0.0013150515464, \n    +0.0015855670103, +0.0016296907216, +0.0013024742268, +0.0007802061856, \n    +0.0003334020619, +0.0000189690722, -0.0002830927835, -0.0006606185567, \n    -0.0009439175258, -0.0009626804124, -0.0007614432990, -0.0004655670103, \n    -0.0000503092784, +0.0004026804124, +0.0007047422680, +0.0007927835052, \n    +0.0007991752577, +0.0006292783505, +0.0002517525773, -0.0000628865979, \n    -0.0002391752577, -0.0003146391753, -0.0001824742268, +0.0000377319588, \n    +0.0001257731959, +0.0002202061856, +0.0004152577320, +0.0004468041237, \n    +0.0003272164948, +0.0001824742268, -0.0000189690722, -0.0001760824742, \n    -0.0001195876289, +0.0000000000000, +0.0000189690722, -0.0000189690722, \n    -0.0001383505155, -0.0002643298969, -0.0003587628866, -0.0005158762887, \n    -0.0007550515464, -0.0008494845361, -0.0005977319588, -0.0000567010309, \n    +0.0005474226804, +0.0010571134021, +0.0014536082474, +0.0016800000000, \n    +0.0014661855670, +0.0006731958763, -0.0004216494845, -0.0014346391753, \n    -0.0020575257732, -0.0020513402062, -0.0014472164948, -0.0004845360825, \n    +0.0006292783505, +0.0016171134021, +0.0021016494845, +0.0020197938144, \n    +0.0015604123711, +0.0008053608247, +0.0000000000000, -0.0005977319588, \n    -0.0009942268041, -0.0012144329897, -0.0012018556701, -0.0009564948454, \n    -0.0004468041237, +0.0001888659794, +0.0006921649485, +0.0009123711340, \n    +0.0008620618557, +0.0005284536082, +0.0000628865979, -0.0003334020619, \n    -0.0006041237113, -0.0007424742268, -0.0007676288660, -0.0007047422680, \n    -0.0005663917526, -0.0004907216495, -0.0005600000000, -0.0005977319588, \n    -0.0004719587629, -0.0002579381443, -0.0001321649485, -0.0001888659794, \n    -0.0004090721649, -0.0007047422680, -0.0009187628866, -0.0008808247423, \n    -0.0005663917526, -0.0001321649485, +0.0003587628866, +0.0007927835052, \n    +0.0009313402062, +0.0007550515464, +0.0003775257732, -0.0000818556701, \n    -0.0004593814433, -0.0006041237113, -0.0005851546392, -0.0005474226804, \n    -0.0005725773196, -0.0006983505155, -0.0008243298969, -0.0007991752577, \n    -0.0005915463918, -0.0003334020619, -0.0000818556701, +0.0002643298969, \n    +0.0006480412371, +0.0007109278351, +0.0004216494845, +0.0001070103093, \n    -0.0000063917526, +0.0000377319588, +0.0002014432990, +0.0003459793814, \n    +0.0004090721649, +0.0003964948454, +0.0003587628866, +0.0003713402062, \n    +0.0002517525773, -0.0001131958763, -0.0004845360825, -0.0006731958763, \n    -0.0007424742268, -0.0006544329897, -0.0003459793814, +0.0000628865979, \n    +0.0004655670103, +0.0006795876289, +0.0005474226804, +0.0001131958763, \n    -0.0004655670103, -0.0010319587629, -0.0012331958763, -0.0009690721649, \n    -0.0004655670103, -0.0000125773196, +0.0002140206186, +0.0002076288660, \n    -0.0000944329897, -0.0006983505155, -0.0012898969072, -0.0015542268041, \n    -0.0014787628866, -0.0011325773196, -0.0005789690722, +0.0000063917526, \n    +0.0005158762887, +0.0008494845361, +0.0009061855670, +0.0007173195876, \n    +0.0003146391753, -0.0003397938144, -0.0010822680412, -0.0016235051546, \n    -0.0018562886598, -0.0017428865979, -0.0013024742268, -0.0006480412371, \n    +0.0000944329897, +0.0006921649485, +0.0008682474227, +0.0006167010309, \n    +0.0001383505155, -0.0003713402062, -0.0008179381443, -0.0010696907216, \n    -0.0010068041237, -0.0006480412371, -0.0000880412371, +0.0005725773196, \n    +0.0011641237113, +0.0014410309278, +0.0013150515464, +0.0008243298969, \n    +0.0001509278351, -0.0004468041237, -0.0009249484536, -0.0012962886598, \n    -0.0014597938144, -0.0014094845361, -0.0012144329897, -0.0009690721649, \n    -0.0007991752577, -0.0006544329897, -0.0004404123711, -0.0002517525773, \n    -0.0001383505155, +0.0000000000000, +0.0001321649485, +0.0001509278351, \n    +0.0001509278351, +0.0002076288660, +0.0002830927835, +0.0003775257732, \n    +0.0004468041237, +0.0005032989691, +0.0005538144330, +0.0004593814433, \n    +0.0001509278351, -0.0002391752577, -0.0005725773196, -0.0006670103093, \n    -0.0004781443299, -0.0001824742268, +0.0000125773196, +0.0001321649485, \n    +0.0002453608247, +0.0002517525773, +0.0000189690722, -0.0003272164948, \n    -0.0005725773196, -0.0006544329897, -0.0005348453608, -0.0002076288660, \n    +0.0001006185567, +0.0002140206186, +0.0001321649485, -0.0001321649485, \n    -0.0004971134021, -0.0007614432990, -0.0008243298969, -0.0006480412371, \n    -0.0002769072165, +0.0000628865979, +0.0002327835052, +0.0002643298969, \n    +0.0001824742268, +0.0000567010309, -0.0000189690722, -0.0000818556701, \n    -0.0001131958763, -0.0001447422680, -0.0002076288660, -0.0002956701031, \n    -0.0003082474227, -0.0002327835052, -0.0000818556701, +0.0001509278351, \n    +0.0004593814433, +0.0007109278351, +0.0007424742268, +0.0005032989691, \n    +0.0001760824742, +0.0000000000000, -0.0000754639175, -0.0001698969072, \n    -0.0001760824742, -0.0000818556701, -0.0001070103093, -0.0002265979381, \n    -0.0002327835052, -0.0002265979381, -0.0003146391753, -0.0004152577320, \n    -0.0005348453608, -0.0006795876289, -0.0007676288660, -0.0008494845361, \n    -0.0008808247423, -0.0007109278351, -0.0004529896907, -0.0002014432990, \n    +0.0000315463918, +0.0001760824742, +0.0002579381443, +0.0004404123711, \n    +0.0006167010309, +0.0006480412371, +0.0005222680412, +0.0001573195876, \n    -0.0003272164948, -0.0007173195876, -0.0009249484536, -0.0008808247423, \n    -0.0005474226804, -0.0000880412371, +0.0004278350515, +0.0008808247423, \n    +0.0010381443299, +0.0009564948454, +0.0008117525773, +0.0006354639175, \n    +0.0004719587629, +0.0003082474227, +0.0001131958763, -0.0000441237113, \n    -0.0002327835052, -0.0003713402062, -0.0002579381443, +0.0000251546392, \n    +0.0003587628866, +0.0007298969072, +0.0009249484536, +0.0007298969072, \n    +0.0003020618557, -0.0001888659794, -0.0005977319588, -0.0006103092784, \n    -0.0003020618557, +0.0001006185567, +0.0006041237113, +0.0010004123711, \n    +0.0010068041237, +0.0007047422680, +0.0003272164948, +0.0000000000000, \n    -0.0002327835052, -0.0004090721649, -0.0005032989691, -0.0004719587629, \n    -0.0004216494845, -0.0004468041237, -0.0005348453608, -0.0006103092784, \n    -0.0005474226804, -0.0003459793814, -0.0001257731959, +0.0001195876289, \n    +0.0003713402062, +0.0004971134021, +0.0005096907216, +0.0003901030928, \n    +0.0001321649485, -0.0000315463918, -0.0000251546392, +0.0000125773196, \n    +0.0000251546392, +0.0000000000000, -0.0000251546392, -0.0000251546392, \n    -0.0000189690722, -0.0001257731959, -0.0003587628866, -0.0005851546392, \n    -0.0006480412371, -0.0004971134021, -0.0002265979381, +0.0000315463918, \n    +0.0002705154639, +0.0004907216495, +0.0006606185567, +0.0007298969072, \n    +0.0006983505155, +0.0005158762887, +0.0002014432990, -0.0000063917526, \n    +0.0000000000000, +0.0000692783505, +0.0001070103093, +0.0001070103093, \n    +0.0000000000000, -0.0001888659794, -0.0003964948454, -0.0005600000000, \n    -0.0005096907216, -0.0001760824742, +0.0002265979381, +0.0006354639175, \n    +0.0009752577320, +0.0011263917526, +0.0010948453608, +0.0009187628866, \n    +0.0005663917526, +0.0001383505155, -0.0002014432990, -0.0004152577320, \n    -0.0003964948454, -0.0001509278351, +0.0001509278351, +0.0003459793814, \n    +0.0002956701031, +0.0001070103093, -0.0000377319588, -0.0002327835052, \n    -0.0004529896907, -0.0004907216495, -0.0003459793814, -0.0000880412371, \n    +0.0002769072165, +0.0005977319588, +0.0007740206186, +0.0009061855670, \n    +0.0009187628866, +0.0008053608247, +0.0006670103093, +0.0003839175258, \n    -0.0000567010309, -0.0004216494845, -0.0006292783505, -0.0007047422680, \n    -0.0005725773196, -0.0002830927835, +0.0000441237113, +0.0004026804124, \n    +0.0007047422680, +0.0008430927835, +0.0007614432990, +0.0005412371134, \n    +0.0003459793814, +0.0002076288660, +0.0000754639175, -0.0000189690722, \n    -0.0000692783505, -0.0000441237113, +0.0000567010309, +0.0002265979381, \n    +0.0003775257732, +0.0005032989691, +0.0005096907216, +0.0004026804124, \n    +0.0003146391753, +0.0002643298969, +0.0002453608247, +0.0002894845361, \n    +0.0003523711340, +0.0003713402062, +0.0003459793814, +0.0002705154639, \n    +0.0001698969072, +0.0000754639175, +0.0000377319588, +0.0001070103093, \n    +0.0001950515464, +0.0002076288660, +0.0001760824742, +0.0001131958763, \n    +0.0000441237113, +0.0001131958763, +0.0002014432990, +0.0001950515464, \n    +0.0002453608247, +0.0003459793814, +0.0002769072165, +0.0000251546392, \n    -0.0002705154639, -0.0005158762887, -0.0005538144330, -0.0004090721649, \n    -0.0001824742268, +0.0001195876289, +0.0004026804124, +0.0004404123711, \n    +0.0002453608247, -0.0000251546392, -0.0002391752577, -0.0003020618557, \n    -0.0002956701031, -0.0002517525773, -0.0001006185567, +0.0000818556701, \n    +0.0002140206186, +0.0002265979381, +0.0001635051546, +0.0001509278351, \n    +0.0002014432990, +0.0001383505155, +0.0000251546392, +0.0000251546392, \n    +0.0000628865979, -0.0000125773196, -0.0001824742268, -0.0002956701031, \n    -0.0002014432990, +0.0000628865979, +0.0002956701031, +0.0003649484536, \n    +0.0003587628866, +0.0003334020619, +0.0002391752577, +0.0000503092784, \n    -0.0001635051546, -0.0003649484536, -0.0004090721649, -0.0002830927835, \n    -0.0001321649485, -0.0000063917526, +0.0001383505155, +0.0002076288660, \n    +0.0000818556701, -0.0000441237113, -0.0000944329897, -0.0001131958763, \n    -0.0001006185567, -0.0000377319588, +0.0000000000000, +0.0000063917526, \n    +0.0000189690722, -0.0000125773196, -0.0001006185567, -0.0001321649485, \n    -0.0000628865979, +0.0000818556701, +0.0002202061856, +0.0002956701031, \n    +0.0003208247423, +0.0002643298969, +0.0001760824742, +0.0001760824742, \n    +0.0002327835052, +0.0003334020619, +0.0004971134021, +0.0005789690722, \n    +0.0005158762887, +0.0004090721649, +0.0002391752577, +0.0000125773196, \n    -0.0000944329897, -0.0000692783505, -0.0000441237113, -0.0000754639175, \n    -0.0001195876289, -0.0001006185567, +0.0000125773196, +0.0002014432990, \n    +0.0003146391753, +0.0003020618557, +0.0002643298969, +0.0001698969072, \n    -0.0000315463918, -0.0001950515464, -0.0001383505155, +0.0000251546392, \n    +0.0001195876289, +0.0000441237113, -0.0001321649485, -0.0002769072165, \n    -0.0004026804124, -0.0006167010309, -0.0008053608247, -0.0007740206186, \n    -0.0005915463918, -0.0003649484536, -0.0001131958763, +0.0001070103093, \n    +0.0002327835052, +0.0001321649485, -0.0000818556701, -0.0001509278351, \n    +0.0000189690722, +0.0003020618557, +0.0005789690722, +0.0007676288660, \n    +0.0008053608247, +0.0007237113402, +0.0005348453608, +0.0003146391753, \n    +0.0001950515464, +0.0002140206186, +0.0003334020619, +0.0004907216495, \n    +0.0005977319588, +0.0006167010309, +0.0005348453608, +0.0003587628866, \n    +0.0001950515464, +0.0001509278351, +0.0001509278351, +0.0001070103093, \n    +0.0000754639175, +0.0000880412371, +0.0001383505155, +0.0001824742268, \n    +0.0002014432990, +0.0002327835052, +0.0001698969072, -0.0000818556701, \n    -0.0003964948454, -0.0006041237113, -0.0006041237113, -0.0003397938144, \n    -0.0000503092784, +0.0000125773196, +0.0000000000000, -0.0000315463918, \n    -0.0002014432990, -0.0004152577320, -0.0005977319588, -0.0007614432990, \n    -0.0008053608247, -0.0006857731959, -0.0004845360825, -0.0002391752577, \n    -0.0001131958763, -0.0001760824742, -0.0002956701031, -0.0003713402062, \n    -0.0003146391753, -0.0000628865979, +0.0001760824742, +0.0002327835052, \n    +0.0002076288660, +0.0002014432990, +0.0001383505155, +0.0000125773196, \n    -0.0001131958763, -0.0001888659794, -0.0001447422680, -0.0000692783505, \n    -0.0000880412371, -0.0001824742268, -0.0002956701031, -0.0003649484536, \n    -0.0003272164948, -0.0002643298969, -0.0002391752577, -0.0002014432990, \n    -0.0001698969072, -0.0002579381443, -0.0003901030928, -0.0004404123711, \n    -0.0003901030928, -0.0002140206186, +0.0000063917526, +0.0001195876289, \n    +0.0001195876289, +0.0001321649485, +0.0001383505155, +0.0001383505155, \n    +0.0001573195876, +0.0000692783505, -0.0001635051546, -0.0003649484536, \n    -0.0004719587629, -0.0005789690722, -0.0005915463918, -0.0004468041237, \n    -0.0002453608247, -0.0000567010309, +0.0000377319588, +0.0000189690722, \n    -0.0000754639175, -0.0002517525773, -0.0003901030928, -0.0004152577320, \n    -0.0003587628866, -0.0001888659794, +0.0001006185567, +0.0002830927835, \n    +0.0002327835052, +0.0000944329897, -0.0000692783505, -0.0002579381443, \n    -0.0003587628866, -0.0003459793814, -0.0002643298969, -0.0001131958763, \n    +0.0000944329897, +0.0003082474227, +0.0004529896907, +0.0005096907216, \n    +0.0004781443299, +0.0003713402062, +0.0002327835052, +0.0001573195876, \n    +0.0001383505155, +0.0001824742268, +0.0002830927835, +0.0003713402062, \n    +0.0004026804124, +0.0004278350515, +0.0004593814433, +0.0004719587629, \n    +0.0004468041237, +0.0003713402062, +0.0002956701031, +0.0002453608247, \n    +0.0001195876289, -0.0000315463918, -0.0001447422680, -0.0001760824742, \n    -0.0000692783505, +0.0001698969072, +0.0003775257732, +0.0004719587629, \n    +0.0004529896907, +0.0002643298969, +0.0000000000000, -0.0001824742268, \n    -0.0002579381443, -0.0002076288660, -0.0000125773196, +0.0002453608247, \n    +0.0005032989691, +0.0006041237113, +0.0005096907216, +0.0003272164948, \n    +0.0001131958763, -0.0000692783505, -0.0002202061856, -0.0003964948454, \n    -0.0005915463918, -0.0006857731959, -0.0006731958763, -0.0005284536082, \n    -0.0002643298969, -0.0000063917526, +0.0001573195876, +0.0002830927835, \n    +0.0002769072165, +0.0001888659794, +0.0002202061856, +0.0003397938144, \n    +0.0004152577320, +0.0004593814433, +0.0004529896907, +0.0003649484536, \n    +0.0001888659794, +0.0000125773196, -0.0000063917526, +0.0000944329897, \n    +0.0001888659794, +0.0002453608247, +0.0002769072165, +0.0002014432990, \n    +0.0000000000000, -0.0002830927835, -0.0004971134021, -0.0004971134021, \n    -0.0003082474227, -0.0000567010309, +0.0001573195876, +0.0002453608247, \n    +0.0001635051546, +0.0000251546392, -0.0000818556701, -0.0001698969072, \n    -0.0001824742268, -0.0001509278351, -0.0000441237113, +0.0001698969072, \n    +0.0003713402062, +0.0003649484536, +0.0001950515464, -0.0000315463918, \n    -0.0002705154639, -0.0004593814433, -0.0005663917526, -0.0005474226804, \n    -0.0004026804124, -0.0002202061856, -0.0001070103093, -0.0000441237113, \n    -0.0000315463918, -0.0000818556701, -0.0001760824742, -0.0002076288660, \n    -0.0001195876289, +0.0000125773196, +0.0001509278351, +0.0002643298969, \n    +0.0002705154639, +0.0001698969072, +0.0001070103093, +0.0001006185567, \n    +0.0001195876289, +0.0001573195876, +0.0001573195876, +0.0000628865979, \n    -0.0000818556701, -0.0002643298969, -0.0004468041237, -0.0005096907216, \n    -0.0003649484536, -0.0000818556701, +0.0001635051546, +0.0003082474227, \n    +0.0002956701031, +0.0000692783505, -0.0002830927835, -0.0005915463918, \n    -0.0007173195876, -0.0006103092784, -0.0002894845361, +0.0001509278351, \n    +0.0005725773196, +0.0007740206186, +0.0006731958763, +0.0003839175258, \n    +0.0000315463918, -0.0003397938144, -0.0006606185567, -0.0007991752577, \n    -0.0007237113402, -0.0004404123711, -0.0000692783505, +0.0002076288660, \n    +0.0003839175258, +0.0004907216495, +0.0004781443299, +0.0003459793814, \n    +0.0001824742268, +0.0000251546392, -0.0000944329897, -0.0001257731959, \n    -0.0000063917526, +0.0001509278351, +0.0001950515464, +0.0000628865979, \n    -0.0001509278351, -0.0003334020619, -0.0003713402062, -0.0002140206186, \n    +0.0000000000000, +0.0001509278351, +0.0002579381443, +0.0002956701031, \n    +0.0001950515464, +0.0000441237113, +0.0000000000000, +0.0000503092784, \n    +0.0001635051546, +0.0002391752577, +0.0002579381443, +0.0002202061856, \n    +0.0001257731959, +0.0000503092784, +0.0000754639175, +0.0001383505155, \n    +0.0001635051546, +0.0001635051546, +0.0001321649485, +0.0000441237113, \n    -0.0000692783505, -0.0001573195876, -0.0001383505155, -0.0000125773196, \n    +0.0001447422680, +0.0003397938144, +0.0005222680412, +0.0006292783505, \n    +0.0005851546392, +0.0004152577320, +0.0002705154639, +0.0001824742268, \n    +0.0000628865979, -0.0000251546392, -0.0000377319588, -0.0000944329897, \n    -0.0002391752577, -0.0002894845361, -0.0002014432990, -0.0000818556701, \n    +0.0000000000000, +0.0000503092784, +0.0001006185567, +0.0001698969072, \n    +0.0002202061856, +0.0002453608247, +0.0003082474227, +0.0004152577320, \n    +0.0004781443299, +0.0004152577320, +0.0002517525773, +0.0000692783505, \n    -0.0001321649485, -0.0003082474227, -0.0002956701031, -0.0001321649485, \n    +0.0000000000000, +0.0000818556701, +0.0000880412371, +0.0000000000000, \n    -0.0001195876289, -0.0002140206186, -0.0002769072165, -0.0002643298969, \n    -0.0002517525773, -0.0002956701031, -0.0003082474227, -0.0002327835052, \n    -0.0000944329897, +0.0000503092784, +0.0001509278351, +0.0001573195876, \n    +0.0001006185567, -0.0000441237113, -0.0003146391753, -0.0005851546392, \n    -0.0007298969072, -0.0006544329897, -0.0004655670103, -0.0003334020619, \n    -0.0002327835052, -0.0000818556701, +0.0000315463918, +0.0001131958763, \n    +0.0001950515464, +0.0002517525773, +0.0003082474227, +0.0003901030928, \n    +0.0003901030928, +0.0001950515464, -0.0001006185567, -0.0003272164948, \n    -0.0003397938144, -0.0001698969072, +0.0000503092784, +0.0002202061856, \n    +0.0002579381443, +0.0001573195876, +0.0000000000000, -0.0001509278351, \n    -0.0002391752577, -0.0002391752577, -0.0001698969072, -0.0000315463918, \n    +0.0000944329897, +0.0000880412371, -0.0000628865979, -0.0002830927835, \n    -0.0004719587629, -0.0005412371134, -0.0004781443299, -0.0002956701031, \n    -0.0000692783505, +0.0000125773196, -0.0000503092784, -0.0001383505155, \n    -0.0002265979381, -0.0003839175258, -0.0004845360825, -0.0004719587629, \n    -0.0004468041237, -0.0003713402062, -0.0002705154639, -0.0002076288660, \n    -0.0001131958763, +0.0000063917526, +0.0000818556701, +0.0001257731959, \n    +0.0001447422680, +0.0000692783505, -0.0000315463918, -0.0001321649485, \n    -0.0002014432990, -0.0002140206186, -0.0001573195876, -0.0000944329897, \n    -0.0000063917526, +0.0000754639175, +0.0001195876289, +0.0000880412371, \n    +0.0000189690722, +0.0000063917526, +0.0000441237113, +0.0000692783505, \n    +0.0000880412371, +0.0001447422680, +0.0002076288660, +0.0002705154639, \n    +0.0003272164948, +0.0002705154639, +0.0001070103093, -0.0000441237113, \n    -0.0001509278351, -0.0002014432990, -0.0002265979381, -0.0002202061856, \n    -0.0001070103093, +0.0000692783505, +0.0001509278351, +0.0000628865979, \n    -0.0000692783505, -0.0001698969072, -0.0001888659794, -0.0001257731959, \n    +0.0000251546392, +0.0002391752577, +0.0003839175258, +0.0004090721649, \n    +0.0003459793814, +0.0002453608247, +0.0001447422680, +0.0000441237113, \n    -0.0000441237113, -0.0001383505155, -0.0002705154639, -0.0003901030928, \n    -0.0004026804124, -0.0002579381443, -0.0000063917526, +0.0002453608247, \n    +0.0003713402062, +0.0003020618557, +0.0001573195876, +0.0000377319588, \n    +0.0000000000000, +0.0000000000000, +0.0000000000000, +0.0000315463918, \n    +0.0000880412371, +0.0001447422680, +0.0002265979381, +0.0003334020619, \n    +0.0003775257732, +0.0002956701031, +0.0001447422680, +0.0000063917526, \n    -0.0000628865979, -0.0001257731959, -0.0002076288660, -0.0001888659794, \n    -0.0000189690722, +0.0001321649485, +0.0002014432990, +0.0001950515464, \n    +0.0000818556701, -0.0000628865979, -0.0001321649485, -0.0000818556701, \n    +0.0000000000000, +0.0001131958763, +0.0002327835052, +0.0002956701031, \n    +0.0002643298969, +0.0001509278351, +0.0000189690722, -0.0000125773196, \n    +0.0000251546392, +0.0000692783505, +0.0000628865979, +0.0000315463918, \n    +0.0000000000000, -0.0000251546392, -0.0000189690722, +0.0000189690722, \n    +0.0001195876289, +0.0002830927835, +0.0004152577320, +0.0004216494845, \n    +0.0002830927835, +0.0000692783505, -0.0001447422680, -0.0003082474227, \n    -0.0003649484536, -0.0003020618557, -0.0001257731959, +0.0000628865979, \n    +0.0002327835052, +0.0003334020619, +0.0002769072165, +0.0000754639175, \n    -0.0001383505155, -0.0002956701031, -0.0003523711340, -0.0002830927835, \n    -0.0001321649485, +0.0000000000000, +0.0000567010309, +0.0000251546392, \n    -0.0001573195876, -0.0004216494845, -0.0005725773196, -0.0005725773196, \n    -0.0004468041237, -0.0002014432990, +0.0000567010309, +0.0001888659794, \n    +0.0001383505155, +0.0000000000000, -0.0000880412371, -0.0000628865979, \n    +0.0000503092784, +0.0002076288660, +0.0003523711340, +0.0003964948454, \n    +0.0002894845361, +0.0001131958763, -0.0000628865979, -0.0002076288660, \n    -0.0002014432990, -0.0000628865979, +0.0000628865979, +0.0001321649485, \n    +0.0001006185567, -0.0000441237113, -0.0002140206186, -0.0002956701031, \n    -0.0002579381443, -0.0001195876289, +0.0000377319588, +0.0001509278351, \n    +0.0001824742268, +0.0001573195876, +0.0001006185567, +0.0000441237113, \n    +0.0000063917526, +0.0000125773196, +0.0000251546392, -0.0000189690722, \n    -0.0001321649485, -0.0002076288660, -0.0002076288660, -0.0001573195876, \n    -0.0000628865979, +0.0000063917526, +0.0000315463918, +0.0000000000000, \n    -0.0000377319588, -0.0000377319588, +0.0000000000000, +0.0000503092784, \n    +0.0001321649485, +0.0002140206186, +0.0002265979381, +0.0001383505155, \n    +0.0000503092784, +0.0000125773196, +0.0000125773196, +0.0000251546392, \n    +0.0000377319588, +0.0000315463918, -0.0000189690722, -0.0000944329897, \n    -0.0000818556701, +0.0000000000000, +0.0000441237113, +0.0000628865979, \n    +0.0001006185567, +0.0001760824742, +0.0002517525773, +0.0002517525773, \n    +0.0001888659794, +0.0001635051546, +0.0001698969072, +0.0001257731959, \n    +0.0000628865979, +0.0000189690722, -0.0000503092784, -0.0001509278351, \n    -0.0002076288660, -0.0001824742268, -0.0001006185567, -0.0000251546392, \n    +0.0000315463918, +0.0000628865979, +0.0000315463918, -0.0000441237113, \n    -0.0001257731959, -0.0001573195876, -0.0000880412371, +0.0000628865979, \n    +0.0002517525773, +0.0003901030928, +0.0004593814433, +0.0004719587629, \n    +0.0004529896907, +0.0004216494845, +0.0003587628866, +0.0002327835052, \n    +0.0000818556701, -0.0000125773196, -0.0000567010309, -0.0001195876289, \n    -0.0001573195876, -0.0001257731959, -0.0000567010309, +0.0000125773196, \n    +0.0001321649485, +0.0002014432990, +0.0001447422680, +0.0000377319588, \n    -0.0000377319588, -0.0001195876289, -0.0002014432990, -0.0002453608247, \n    -0.0002265979381, -0.0001383505155, -0.0000063917526, +0.0000818556701, \n    +0.0001195876289, +0.0001070103093, +0.0000818556701, +0.0000692783505, \n    +0.0000189690722, -0.0000628865979, -0.0001070103093, -0.0000944329897, \n    -0.0000754639175, -0.0000628865979, -0.0000567010309, -0.0000189690722, \n    +0.0000441237113, +0.0000880412371, +0.0000189690722, -0.0001257731959, \n    -0.0002769072165, -0.0003459793814, -0.0003082474227, -0.0001888659794, \n    -0.0000189690722, +0.0001006185567, +0.0001447422680, +0.0001509278351, \n    +0.0001509278351, +0.0001447422680, +0.0002014432990, +0.0004026804124, \n    +0.0006103092784, +0.0006921649485, +0.0006480412371, +0.0004655670103, \n    +0.0001760824742, -0.0000692783505, -0.0001888659794, -0.0001950515464, \n    -0.0001509278351, -0.0001006185567, -0.0000628865979, -0.0000315463918, \n    -0.0000251546392, -0.0000628865979, -0.0001257731959, -0.0002014432990, \n    -0.0002956701031, -0.0004278350515, -0.0005600000000, -0.0005915463918, \n    -0.0005158762887, -0.0004026804124, -0.0002769072165, -0.0001321649485, \n    -0.0000315463918, +0.0000000000000, +0.0000063917526, +0.0000189690722, \n    +0.0000818556701, +0.0001950515464, +0.0003082474227, +0.0003713402062, \n    +0.0003459793814, +0.0002391752577, +0.0000441237113, -0.0002014432990, \n    -0.0004152577320, -0.0004845360825, -0.0004152577320, -0.0002579381443, \n    -0.0000251546392, +0.0001698969072, +0.0002769072165, +0.0002830927835, \n    +0.0001257731959, -0.0001195876289, -0.0003208247423, -0.0004026804124, \n    -0.0003649484536, -0.0001635051546, +0.0000944329897, +0.0002894845361, \n    +0.0003523711340, +0.0002830927835, +0.0000944329897, -0.0000880412371, \n    -0.0002014432990, -0.0002327835052, -0.0002140206186, -0.0001950515464, \n    -0.0001950515464, -0.0002140206186, -0.0002202061856, -0.0001824742268, \n    -0.0001131958763, -0.0000503092784, -0.0000063917526, +0.0000251546392, \n    +0.0000628865979, +0.0000944329897, +0.0001195876289, +0.0001321649485, \n    +0.0001573195876, +0.0002014432990, +0.0002517525773, +0.0002705154639, \n    +0.0002705154639, +0.0002202061856, +0.0001195876289, +0.0000000000000, \n    -0.0000944329897, -0.0001321649485, -0.0000944329897, +0.0000251546392, \n    +0.0001698969072, +0.0002265979381, +0.0001635051546, +0.0000125773196, \n    -0.0001635051546, -0.0003397938144, -0.0004404123711, -0.0004655670103, \n    -0.0004468041237, -0.0004026804124, -0.0003334020619, -0.0002327835052, \n    -0.0000944329897, +0.0000628865979, +0.0002014432990, +0.0002579381443, \n    +0.0002391752577, +0.0001760824742, +0.0000377319588, -0.0001131958763, \n    -0.0002140206186, -0.0002769072165, -0.0003208247423, -0.0003082474227, \n    -0.0002705154639, -0.0002327835052, -0.0001888659794, -0.0001635051546, \n    -0.0002140206186, -0.0003020618557, -0.0003587628866, -0.0003397938144, \n    -0.0003020618557, -0.0002327835052, -0.0001131958763, +0.0000063917526, \n    +0.0000944329897, +0.0001447422680, +0.0001509278351, +0.0001006185567, \n    +0.0000251546392, -0.0000377319588, -0.0001070103093, -0.0001195876289, \n    -0.0000567010309, +0.0000000000000, +0.0000251546392, +0.0000125773196, \n    -0.0000377319588, -0.0001321649485, -0.0002076288660, -0.0002327835052, \n    -0.0002140206186, -0.0001698969072, -0.0001070103093, -0.0000063917526, \n    +0.0000754639175, +0.0001573195876, +0.0002265979381, +0.0002453608247, \n    +0.0001824742268, +0.0000503092784, -0.0000880412371, -0.0002140206186, \n    -0.0003082474227, -0.0003334020619, -0.0002202061856, -0.0000503092784, \n    +0.0000315463918, +0.0000503092784, +0.0000251546392, +0.0000189690722, \n    +0.0000628865979, +0.0000944329897, +0.0000000000000, -0.0001509278351, \n    -0.0003334020619, -0.0004971134021, -0.0005915463918, -0.0005600000000, \n    -0.0004404123711, -0.0002391752577, -0.0000063917526, +0.0001383505155, \n    +0.0002202061856, +0.0002769072165, +0.0003082474227, +0.0002830927835, \n    +0.0001950515464, +0.0001195876289, +0.0000692783505, +0.0000503092784, \n    +0.0000692783505, +0.0000880412371, +0.0000880412371, +0.0001195876289, \n    +0.0001824742268, +0.0002202061856, +0.0002453608247, +0.0002643298969, \n    +0.0002453608247, +0.0001635051546, +0.0000567010309, -0.0000189690722, \n    -0.0000754639175, -0.0001195876289, -0.0001383505155, -0.0000818556701, \n    +0.0000944329897, +0.0003146391753, +0.0004278350515, +0.0003649484536, \n    +0.0002076288660, +0.0000628865979, -0.0000315463918, -0.0000880412371, \n    -0.0001195876289, -0.0001573195876, -0.0001509278351, -0.0001195876289, \n    -0.0001195876289, -0.0001131958763, -0.0000567010309, +0.0000063917526, \n    +0.0000818556701, +0.0001635051546, +0.0002202061856, +0.0002327835052, \n    +0.0002140206186, +0.0001509278351, +0.0000567010309, -0.0000125773196, \n    -0.0000377319588, +0.0000377319588, +0.0001824742268, +0.0002769072165, \n    +0.0003020618557, +0.0002956701031, +0.0002643298969, +0.0002202061856, \n    +0.0002076288660, +0.0002327835052, +0.0002517525773, +0.0002453608247, \n    +0.0001888659794, +0.0000567010309, -0.0001257731959, -0.0002830927835, \n    -0.0003082474227, -0.0001950515464, +0.0000377319588, +0.0003649484536, \n    +0.0006544329897, +0.0008179381443, +0.0007927835052, +0.0006103092784, \n    +0.0003901030928, +0.0001950515464, +0.0000441237113, -0.0000567010309, \n    -0.0001447422680, -0.0001824742268, -0.0001698969072, -0.0001383505155, \n    -0.0000692783505, +0.0000441237113, +0.0001573195876, +0.0002202061856, \n    +0.0002391752577, +0.0002076288660, +0.0001131958763, +0.0000251546392, \n    +0.0000000000000, +0.0000377319588, +0.0000944329897, +0.0001509278351, \n    +0.0002327835052, +0.0003146391753, +0.0003397938144, +0.0003208247423, \n    +0.0003082474227, +0.0002327835052, +0.0000880412371, -0.0000567010309, \n    -0.0001698969072, -0.0002140206186, -0.0001824742268, -0.0000944329897, \n    +0.0000315463918, +0.0001635051546, +0.0002453608247, +0.0003020618557, \n    +0.0003523711340, +0.0003713402062, +0.0003901030928, +0.0004152577320, \n    +0.0004593814433, +0.0004529896907, +0.0003272164948, +0.0001257731959, \n    -0.0000189690722, -0.0001509278351, -0.0002453608247, -0.0002202061856, \n    -0.0000944329897, +0.0000189690722, +0.0000880412371, +0.0000567010309, \n    -0.0000503092784, -0.0001383505155, -0.0001635051546, -0.0001447422680, \n    -0.0000692783505, +0.0000000000000, +0.0000377319588, +0.0001195876289, \n    +0.0002140206186, +0.0002579381443, +0.0002956701031, +0.0003397938144, \n    +0.0003775257732, +0.0003964948454, +0.0003713402062, +0.0003146391753, \n    +0.0002830927835, +0.0003082474227, +0.0003649484536, +0.0004404123711, \n    +0.0004845360825, +0.0003964948454, +0.0002202061856, +0.0000628865979, \n    -0.0000754639175, -0.0002265979381, -0.0002769072165, -0.0002014432990, \n    -0.0000692783505, +0.0000567010309, +0.0001509278351, +0.0001447422680, \n    +0.0000628865979, -0.0000315463918, -0.0001321649485, -0.0001447422680, \n    -0.0000377319588, +0.0000818556701, +0.0001321649485, +0.0000754639175, \n    -0.0000880412371, -0.0002894845361, -0.0004152577320, -0.0004468041237, \n    -0.0004090721649, -0.0003334020619, -0.0002327835052, -0.0000944329897, \n    +0.0000754639175, +0.0002140206186, +0.0002643298969, +0.0002769072165, \n    +0.0002643298969, +0.0002014432990, +0.0001006185567, +0.0000125773196, \n    -0.0000818556701, -0.0002391752577, -0.0003713402062, -0.0004090721649, \n    -0.0003272164948, -0.0001195876289, +0.0001321649485, +0.0003334020619, \n    +0.0004404123711, +0.0004719587629, +0.0004152577320, +0.0002894845361, \n    +0.0001383505155, -0.0000189690722, -0.0001321649485, -0.0001195876289, \n    -0.0000503092784, +0.0000125773196, +0.0001006185567, +0.0001950515464, \n    +0.0002517525773, +0.0002579381443, +0.0001698969072, +0.0000000000000, \n    -0.0002391752577, -0.0004781443299, -0.0006292783505, -0.0006731958763, \n    -0.0005474226804, -0.0002202061856, +0.0001698969072, +0.0004593814433, \n    +0.0005851546392, +0.0005348453608, +0.0003587628866, +0.0001509278351, \n    -0.0000125773196, -0.0001006185567, -0.0000628865979, -0.0000377319588, \n    -0.0001383505155, -0.0002705154639, -0.0003775257732, -0.0004593814433, \n    -0.0004593814433, -0.0003587628866, -0.0002265979381, -0.0001635051546, \n    -0.0002705154639, -0.0004907216495, -0.0006480412371, -0.0006670103093, \n    -0.0005284536082, -0.0002327835052, +0.0001006185567, +0.0003523711340, \n    +0.0004845360825, +0.0004845360825, +0.0003334020619, +0.0001383505155, \n    -0.0000063917526, -0.0001257731959, -0.0002076288660, -0.0002327835052, \n    -0.0002140206186, -0.0002076288660, -0.0002265979381, -0.0002265979381, \n    -0.0002140206186, -0.0002202061856, -0.0002391752577, -0.0002517525773, \n    -0.0002517525773, -0.0002453608247, -0.0002517525773, -0.0002327835052, \n    -0.0001321649485, +0.0000063917526, +0.0001447422680, +0.0002517525773, \n    +0.0002830927835, +0.0002265979381, +0.0001573195876, +0.0001195876289, \n    +0.0000754639175, +0.0000125773196, -0.0000377319588, -0.0001070103093, \n    -0.0001888659794, -0.0002579381443, -0.0002830927835, -0.0002517525773, \n    -0.0002076288660, -0.0001760824742, -0.0001509278351, -0.0001509278351, \n    -0.0002140206186, -0.0003082474227, -0.0003839175258, -0.0003839175258, \n    -0.0003020618557, -0.0001573195876, +0.0000125773196, +0.0002076288660, \n    +0.0003649484536, +0.0004278350515, +0.0003649484536, +0.0002076288660, \n    +0.0000441237113, -0.0000754639175, -0.0001383505155, -0.0001195876289, \n    -0.0000567010309, -0.0000063917526, +0.0000000000000, -0.0000189690722, \n    -0.0000503092784, -0.0000567010309, -0.0000567010309, -0.0000818556701, \n    -0.0001257731959, -0.0002140206186, -0.0003020618557, -0.0003208247423, \n    -0.0002769072165, -0.0002076288660, -0.0001006185567, +0.0000000000000, \n    +0.0000503092784, +0.0000503092784, +0.0000315463918, +0.0000125773196, \n    +0.0000503092784, +0.0001006185567, +0.0001257731959, +0.0001698969072, \n    +0.0002391752577, +0.0002705154639, +0.0002517525773, +0.0002140206186, \n    +0.0001195876289, -0.0000503092784, -0.0002769072165, -0.0004468041237, \n    -0.0005538144330, -0.0005915463918, -0.0004971134021, -0.0003208247423, \n    -0.0002076288660, -0.0001888659794, -0.0001635051546, -0.0000880412371, \n    +0.0000628865979, +0.0002894845361, +0.0005032989691, +0.0006228865979, \n    +0.0005915463918, +0.0004278350515, +0.0002643298969, +0.0002140206186, \n    +0.0002705154639, +0.0003523711340, +0.0003964948454, +0.0003713402062, \n    +0.0002517525773, +0.0000628865979, -0.0001006185567, -0.0002327835052, \n    -0.0003146391753, -0.0003459793814, -0.0003208247423, -0.0002705154639, \n    -0.0001950515464, -0.0000880412371, -0.0000063917526, +0.0000251546392, \n    +0.0000441237113, +0.0000628865979, +0.0000377319588, -0.0000315463918, \n    -0.0001195876289, -0.0001447422680, -0.0001195876289, -0.0000692783505, \n    +0.0000125773196, +0.0001573195876, +0.0002705154639, +0.0003020618557, \n    +0.0002643298969, +0.0002014432990, +0.0001573195876, +0.0001195876289, \n    +0.0001195876289, +0.0002076288660, +0.0003272164948, +0.0003649484536, \n    +0.0003020618557, +0.0002076288660, +0.0001195876289, +0.0000251546392, \n    -0.0000754639175, -0.0001888659794, -0.0002769072165, -0.0003208247423, \n    -0.0003146391753, -0.0002391752577, -0.0001070103093, +0.0000754639175, \n    +0.0002956701031, +0.0004655670103, +0.0005412371134, +0.0005096907216, \n    +0.0004090721649, +0.0003082474227, +0.0002140206186, +0.0001321649485, \n    +0.0000818556701, +0.0000441237113, -0.0000377319588, -0.0001635051546, \n    -0.0002265979381, -0.0001888659794, -0.0001195876289, -0.0000628865979, \n    -0.0000251546392, +0.0000189690722, +0.0000441237113, +0.0000377319588, \n    +0.0000441237113, +0.0000818556701, +0.0000944329897, +0.0000628865979, \n    +0.0000189690722, +0.0000000000000, +0.0000251546392, +0.0000818556701, \n    +0.0001321649485, +0.0002140206186, +0.0002769072165, +0.0002643298969, \n    +0.0001509278351, +0.0000000000000, -0.0001070103093, -0.0001888659794, \n    -0.0002453608247, -0.0003020618557, -0.0003082474227, -0.0002140206186, \n    -0.0000692783505, +0.0000125773196, +0.0000692783505, +0.0001447422680, \n    +0.0001824742268, +0.0001383505155, +0.0000000000000, -0.0001509278351, \n    -0.0003082474227, -0.0003901030928, -0.0003587628866, -0.0002076288660, \n    +0.0000063917526, +0.0002265979381, +0.0003523711340, +0.0003839175258, \n    +0.0003397938144, +0.0002265979381, +0.0000754639175, +0.0000000000000, \n    +0.0000063917526, +0.0000441237113, +0.0000377319588, +0.0000251546392, \n    +0.0000000000000, -0.0000567010309, -0.0001006185567, -0.0000880412371, \n    -0.0000754639175, -0.0000692783505, -0.0000125773196, +0.0000880412371, \n    +0.0001950515464, +0.0002391752577, +0.0002076288660, +0.0001698969072, \n    +0.0001383505155, +0.0000628865979, -0.0000503092784, -0.0001383505155, \n    -0.0001760824742, -0.0001950515464, -0.0002140206186, -0.0002014432990, \n    -0.0001195876289, +0.0000000000000, +0.0000692783505, +0.0000880412371, \n    +0.0000944329897, +0.0001006185567, +0.0000567010309, -0.0000315463918, \n    -0.0001131958763, -0.0001321649485, -0.0000880412371, +0.0000000000000, \n    +0.0000944329897, +0.0001573195876, +0.0001447422680, +0.0000692783505, \n    -0.0000441237113, -0.0001698969072, -0.0002140206186, -0.0001760824742, \n    -0.0000944329897, -0.0000189690722, +0.0000189690722, +0.0000251546392, \n    +0.0000000000000, -0.0000377319588, -0.0000692783505, -0.0000567010309, \n    +0.0000000000000, +0.0000503092784, +0.0000880412371, +0.0000944329897, \n    +0.0000503092784, -0.0000377319588, -0.0001321649485, -0.0001760824742, \n    -0.0001383505155, -0.0000441237113, +0.0000441237113, +0.0001070103093, \n    +0.0001383505155, +0.0001257731959, +0.0000880412371, +0.0000567010309, \n    +0.0000377319588, +0.0000125773196, +0.0000000000000, -0.0000063917526, \n    -0.0000251546392, -0.0000692783505, -0.0001257731959, -0.0001760824742, \n    -0.0001888659794, -0.0001635051546, -0.0001321649485, -0.0001006185567, \n    -0.0000754639175, -0.0000503092784, -0.0000189690722, +0.0000000000000, \n    +0.0000063917526, +0.0000567010309, +0.0001635051546, +0.0002643298969, \n    +0.0003146391753, +0.0003272164948, +0.0003020618557, +0.0002391752577, \n    +0.0001698969072, +0.0001070103093, +0.0000692783505, +0.0000377319588, \n    +0.0000125773196, +0.0000000000000, -0.0000189690722, -0.0000441237113, \n    -0.0000628865979, -0.0000754639175, -0.0001195876289, -0.0001760824742, \n    -0.0001888659794, -0.0001447422680, -0.0000567010309, +0.0000503092784, \n    +0.0001760824742, +0.0002265979381, +0.0001573195876, +0.0000189690722, \n    -0.0001195876289, -0.0002327835052, -0.0002769072165, -0.0002453608247, \n    -0.0001888659794, -0.0001509278351, -0.0001447422680, -0.0001573195876, \n    -0.0001635051546, -0.0001573195876, -0.0001509278351, -0.0001321649485, \n    -0.0000628865979, +0.0000000000000, +0.0000251546392, +0.0000628865979, \n    +0.0001131958763, +0.0001635051546, +0.0001888659794, +0.0001698969072, \n    +0.0000818556701, -0.0000503092784, -0.0002202061856, -0.0003587628866, \n    -0.0003964948454, -0.0003020618557, -0.0001447422680, +0.0000000000000, \n    +0.0001131958763, +0.0001824742268, +0.0001824742268, +0.0001257731959, \n    +0.0000754639175, +0.0000189690722, -0.0000125773196, -0.0000503092784, \n    -0.0000692783505, -0.0000754639175, -0.0000754639175, -0.0000944329897, \n    -0.0001257731959, -0.0001257731959, -0.0001131958763, -0.0001131958763, \n    -0.0000944329897, -0.0000567010309, -0.0000315463918, -0.0000125773196, \n    +0.0000000000000, -0.0000125773196, -0.0000251546392, -0.0000315463918, \n    -0.0000189690722, +0.0000251546392, +0.0000944329897, +0.0001573195876, \n    +0.0001698969072, +0.0001195876289, +0.0000000000000, -0.0001321649485, \n    -0.0002517525773, -0.0003020618557, -0.0002517525773, -0.0001573195876, \n    -0.0000818556701, -0.0000315463918, +0.0000063917526, +0.0000251546392, \n    +0.0000189690722, +0.0000125773196, +0.0000567010309, +0.0001257731959, \n    +0.0001698969072, +0.0001760824742, +0.0001383505155, +0.0000503092784, \n    -0.0000628865979, -0.0001888659794, -0.0002579381443, -0.0002453608247, \n    -0.0001321649485, +0.0000315463918, +0.0002140206186, +0.0003146391753, \n    +0.0003334020619, +0.0002956701031, +0.0002202061856, +0.0001195876289, \n    +0.0000503092784, +0.0000315463918, +0.0000189690722, +0.0000125773196, \n    +0.0000125773196, +0.0000189690722, +0.0000251546392, +0.0000125773196, \n    +0.0000000000000, +0.0000063917526, +0.0000251546392, +0.0000567010309, \n    +0.0000944329897, +0.0001257731959, +0.0001195876289, +0.0000692783505, \n    -0.0000189690722, -0.0001573195876, -0.0002453608247, -0.0002579381443, \n    -0.0002140206186, -0.0001447422680, -0.0000818556701, -0.0000441237113, \n    +0.0000000000000, +0.0000189690722, +0.0000441237113, +0.0000628865979, \n    +0.0000818556701, +0.0001006185567, +0.0001321649485, +0.0001509278351, \n    +0.0001447422680, +0.0001257731959, +0.0000880412371, +0.0000189690722, \n    -0.0000567010309, -0.0001131958763, -0.0001131958763, -0.0000692783505, \n    +0.0000000000000, +0.0000818556701, +0.0001573195876, +0.0001760824742, \n    +0.0001698969072, +0.0001509278351, +0.0001257731959, +0.0001070103093, \n    +0.0000818556701, +0.0000628865979, +0.0000692783505, +0.0000754639175, \n    +0.0000692783505, +0.0000503092784, +0.0000000000000, -0.0000692783505, \n    -0.0001131958763, -0.0001131958763, -0.0000944329897, -0.0000818556701, \n    -0.0000944329897, -0.0001195876289, -0.0001257731959, -0.0001195876289, \n    -0.0000692783505, +0.0000000000000, +0.0000628865979, +0.0000692783505, \n    +0.0000189690722, -0.0000377319588, -0.0001070103093, -0.0001509278351, \n    -0.0001321649485, -0.0000063917526, +0.0001573195876, +0.0002830927835, \n    +0.0002769072165, +0.0001447422680, -0.0000441237113, -0.0002265979381, \n    -0.0003082474227, -0.0002830927835, -0.0001760824742, -0.0000315463918, \n    +0.0000944329897, +0.0002014432990, +0.0002327835052, +0.0001888659794, \n    +0.0001447422680, +0.0001257731959, +0.0001321649485, +0.0001195876289, \n    +0.0000692783505, +0.0000189690722, -0.0000063917526, -0.0000503092784, \n    -0.0000944329897, -0.0000754639175, +0.0000000000000, +0.0000818556701, \n    +0.0001383505155, +0.0001698969072, +0.0001447422680, +0.0000441237113, \n    -0.0001006185567, -0.0002076288660, -0.0001950515464, -0.0000818556701, \n    +0.0000567010309, +0.0002014432990, +0.0002956701031, +0.0003146391753, \n    +0.0002265979381, +0.0000818556701, -0.0000189690722, -0.0000944329897, \n    -0.0001447422680, -0.0001635051546, -0.0001573195876, -0.0001257731959, \n    -0.0000628865979, -0.0000189690722, +0.0000000000000, +0.0000063917526, \n    +0.0000000000000, -0.0000503092784, -0.0001070103093, -0.0001006185567, \n    -0.0000692783505, -0.0000251546392, +0.0000315463918, +0.0000880412371, \n    +0.0001257731959, +0.0001447422680, +0.0001257731959, +0.0000754639175, \n    +0.0000315463918, +0.0000125773196, +0.0000189690722, +0.0000377319588, \n    +0.0000503092784, +0.0000441237113, +0.0000441237113, +0.0000503092784, \n    +0.0000944329897, +0.0001635051546, +0.0002453608247, +0.0002830927835, \n    +0.0002643298969, +0.0001824742268, +0.0000754639175, +0.0000063917526, \n    +0.0000000000000, +0.0000315463918, +0.0001006185567, +0.0001760824742, \n    +0.0002202061856, +0.0002014432990, +0.0001383505155, +0.0000628865979, \n    +0.0000251546392, +0.0000441237113, +0.0000692783505, +0.0000628865979, \n    +0.0000125773196, -0.0000628865979, -0.0001824742268, -0.0002453608247, \n    -0.0002014432990, -0.0000880412371, +0.0000567010309, +0.0002076288660, \n    +0.0002956701031, +0.0002769072165, +0.0001698969072, +0.0000125773196, \n    -0.0000944329897, -0.0001321649485, -0.0001131958763, -0.0000692783505, \n    -0.0000063917526, +0.0000692783505, +0.0001509278351, +0.0001888659794, \n    +0.0002140206186, +0.0002265979381, +0.0002327835052, +0.0002140206186, \n    +0.0001760824742, +0.0001070103093, +0.0000125773196, -0.0000628865979, \n    -0.0001447422680, -0.0001698969072, -0.0001321649485, -0.0000441237113, \n    +0.0000377319588, +0.0001006185567, +0.0001195876289, +0.0000818556701, \n    +0.0000251546392, +0.0000000000000, +0.0000000000000, +0.0000125773196, \n    +0.0000125773196, +0.0000063917526, +0.0000000000000, +0.0000000000000, \n    -0.0000063917526, -0.0000063917526, -0.0000063917526, +0.0000063917526, \n    +0.0000441237113, +0.0000880412371, +0.0001195876289, +0.0001321649485, \n    +0.0000944329897, +0.0000315463918, +0.0000000000000, -0.0000251546392, \n    -0.0000567010309, -0.0000628865979, -0.0000315463918, +0.0000000000000, \n    +0.0000000000000, +0.0000000000000, +0.0000125773196, +0.0000251546392, \n    +0.0000503092784, +0.0000628865979, +0.0000315463918, -0.0000063917526, \n    -0.0000315463918, -0.0000503092784, -0.0000441237113, -0.0000125773196, \n    +0.0000189690722, +0.0000754639175, +0.0001195876289, +0.0001070103093, \n    +0.0000503092784, +0.0000063917526, -0.0000315463918, -0.0000754639175, \n    -0.0001131958763, -0.0001006185567, -0.0000251546392, +0.0000628865979, \n    +0.0001383505155, +0.0001635051546, +0.0001131958763, +0.0000000000000, \n    -0.0001195876289, -0.0001888659794, -0.0002140206186, -0.0001888659794, \n    -0.0001257731959, -0.0000377319588, +0.0000189690722, +0.0000251546392, \n    +0.0000000000000, +0.0000000000000, +0.0000189690722, +0.0000567010309, \n    +0.0000754639175, +0.0000692783505, +0.0000441237113, +0.0000000000000, \n    -0.0000315463918, -0.0000377319588, +0.0000000000000, +0.0000441237113, \n    +0.0000692783505, +0.0000567010309, +0.0000000000000, -0.0000944329897, \n    -0.0001950515464, -0.0002579381443, -0.0002453608247, -0.0001573195876, \n    -0.0000251546392, +0.0001070103093, +0.0002265979381, +0.0002517525773, \n    +0.0001824742268, +0.0000818556701, +0.0000000000000, -0.0000441237113, \n    -0.0000567010309, -0.0000189690722, +0.0000251546392, +0.0000628865979, \n    +0.0000441237113, +0.0000063917526, -0.0000251546392, -0.0000503092784, \n    -0.0000567010309, -0.0000628865979, -0.0000628865979, -0.0000628865979, \n    -0.0000692783505, -0.0000880412371, -0.0000880412371, -0.0000628865979, \n    -0.0000315463918, +0.0000000000000, +0.0000251546392, +0.0000441237113, \n    +0.0000377319588, +0.0000251546392, +0.0000315463918, +0.0000441237113, \n    +0.0000251546392, +0.0000000000000, -0.0000189690722, -0.0000377319588, \n    -0.0000503092784, -0.0000503092784, -0.0000315463918, +0.0000000000000, \n    +0.0000503092784, +0.0000692783505, +0.0000818556701, +0.0000880412371, \n    +0.0000880412371, +0.0000567010309, +0.0000000000000, -0.0001006185567, \n    -0.0001760824742, -0.0002014432990, -0.0001573195876, -0.0000567010309, \n    +0.0000315463918, +0.0000818556701, +0.0000818556701, +0.0000189690722, \n    -0.0000692783505, -0.0001635051546, -0.0002453608247, -0.0002830927835, \n    -0.0002517525773, -0.0001573195876, -0.0000503092784, +0.0000189690722, \n    +0.0000692783505, +0.0000944329897, +0.0001006185567, +0.0000818556701, \n    +0.0000441237113, +0.0000000000000, -0.0000189690722, -0.0000251546392, \n    -0.0000377319588, -0.0000628865979, -0.0000754639175, -0.0000692783505, \n    -0.0000377319588, +0.0000063917526, +0.0000818556701, +0.0001447422680, \n    +0.0001698969072, +0.0001257731959, +0.0000189690722, -0.0000818556701, \n    -0.0001509278351, -0.0001635051546, -0.0001131958763, -0.0000377319588, \n    +0.0000189690722, +0.0000441237113, +0.0000125773196, -0.0000628865979, \n    -0.0001509278351, -0.0001950515464, -0.0002014432990, -0.0001698969072, \n    -0.0001131958763, -0.0000567010309, -0.0000377319588, -0.0000628865979, \n    -0.0000944329897, -0.0000880412371, -0.0000441237113, +0.0000000000000, \n    +0.0000441237113, +0.0000692783505, +0.0000315463918, -0.0000567010309, \n    -0.0001824742268, -0.0002769072165, -0.0003082474227, -0.0002769072165, \n    -0.0001888659794, -0.0000692783505, +0.0000063917526, +0.0000628865979, \n    +0.0000692783505, +0.0000189690722, -0.0000503092784, -0.0001006185567, \n    -0.0001321649485, -0.0001195876289, -0.0000818556701, -0.0000189690722, \n    +0.0000189690722, +0.0000315463918, +0.0000000000000, -0.0000441237113, \n    -0.0001006185567, -0.0001509278351, -0.0001760824742, -0.0001635051546, \n    -0.0001447422680, -0.0001321649485, -0.0001257731959, -0.0001131958763, \n    -0.0000818556701, -0.0000377319588, +0.0000000000000, +0.0000251546392, \n    +0.0000441237113, +0.0000441237113, +0.0000441237113, +0.0000567010309, \n    +0.0000880412371, +0.0001006185567, +0.0000754639175, +0.0000063917526, \n    -0.0000754639175, -0.0001888659794, -0.0002769072165, -0.0003082474227, \n    -0.0002769072165, -0.0002076288660, -0.0001070103093, -0.0000189690722, \n    +0.0000063917526, +0.0000000000000, -0.0000315463918, -0.0000628865979, \n    -0.0000692783505, -0.0000880412371, -0.0001006185567, -0.0001006185567, \n    -0.0001070103093, -0.0001131958763, -0.0000880412371, -0.0000503092784, \n    -0.0000063917526, +0.0000377319588, +0.0000818556701, +0.0000880412371, \n    +0.0000503092784, -0.0000377319588, -0.0001447422680, -0.0002014432990, \n    -0.0002140206186, -0.0001888659794, -0.0001257731959, -0.0000315463918, \n    +0.0000315463918, +0.0000754639175, +0.0000944329897, +0.0000818556701, \n    +0.0000567010309, +0.0000189690722, +0.0000000000000, +0.0000000000000, \n    +0.0000000000000, -0.0000125773196, -0.0000251546392, -0.0000251546392, \n    -0.0000251546392, +0.0000000000000, +0.0000315463918, +0.0000944329897, \n    +0.0001573195876, +0.0002076288660, +0.0002202061856, +0.0001950515464, \n    +0.0001383505155, +0.0000692783505, -0.0000063917526, -0.0001006185567, \n    -0.0001573195876, -0.0001509278351, -0.0001070103093, -0.0000315463918, \n    +0.0000251546392, +0.0000818556701, +0.0001070103093, +0.0000944329897, \n    +0.0000818556701, +0.0000754639175, +0.0000628865979, +0.0000441237113, \n    +0.0000567010309, +0.0001070103093, +0.0001573195876, +0.0001698969072, \n    +0.0001383505155, +0.0001070103093, +0.0000818556701, +0.0000628865979, \n    +0.0000692783505, +0.0001131958763, +0.0001321649485, +0.0001257731959, \n    +0.0000880412371, +0.0000441237113, +0.0000125773196, +0.0000000000000, \n    -0.0000063917526, +0.0000189690722, +0.0000880412371, +0.0001383505155, \n    +0.0001573195876, +0.0001573195876, +0.0001447422680, +0.0001257731959, \n    +0.0000880412371, +0.0000628865979, +0.0000567010309, +0.0000567010309, \n    +0.0000315463918, +0.0000000000000, -0.0000125773196, -0.0000251546392, \n    -0.0000189690722, +0.0000000000000, +0.0000503092784, +0.0001447422680, \n    +0.0002076288660, +0.0002265979381, +0.0002076288660, +0.0001509278351, \n    +0.0000567010309, -0.0000377319588, -0.0001131958763, -0.0001195876289, \n    -0.0000503092784, +0.0000251546392, +0.0000880412371, +0.0001195876289, \n    +0.0001195876289, +0.0001070103093, +0.0000754639175, +0.0000125773196, \n    -0.0000063917526, +0.0000000000000, +0.0000251546392, +0.0000567010309, \n    +0.0000754639175, +0.0000880412371, +0.0001195876289, +0.0001257731959, \n    +0.0000944329897, +0.0000377319588, +0.0000000000000, -0.0000503092784, \n    -0.0000692783505, -0.0000377319588, +0.0000000000000, +0.0000063917526, \n    +0.0000125773196, +0.0000000000000, -0.0000251546392, -0.0000567010309, \n    -0.0000441237113, +0.0000063917526, +0.0001006185567, +0.0001888659794, \n    +0.0002517525773, +0.0002769072165, +0.0002769072165, +0.0002579381443, \n    +0.0002265979381, +0.0002014432990, +0.0002014432990, +0.0001824742268, \n    +0.0001195876289, +0.0000503092784, +0.0000000000000, -0.0000441237113, \n    -0.0000754639175, -0.0000944329897, -0.0000944329897, -0.0000628865979, \n    -0.0000315463918, -0.0000125773196, +0.0000000000000, +0.0000063917526, \n    +0.0000125773196, +0.0000251546392, +0.0000441237113, +0.0000944329897, \n    +0.0001509278351, +0.0001760824742, +0.0001888659794, +0.0001760824742\n};\n"
  },
  {
    "path": "impulses/21-matchless-chieftain-sm57-off.h",
    "content": "float matchless_chieftain_sm57_off[] = {\n    +0.0001511926606, +0.0001566972477, +0.0001566972477, +0.0001566972477, \n    +0.0001623853211, +0.0001680733945, +0.0001680733945, +0.0001792660550, \n    +0.0001847706422, +0.0001904587156, +0.0001904587156, +0.0002016513761, \n    +0.0002071559633, +0.0002128440367, +0.0002128440367, +0.0002183486239, \n    +0.0002240366972, +0.0002240366972, +0.0002183486239, +0.0002240366972, \n    +0.0002183486239, +0.0002183486239, +0.0002128440367, +0.0002071559633, \n    +0.0002071559633, +0.0002071559633, +0.0002016513761, +0.0002016513761, \n    +0.0001959633028, +0.0002016513761, +0.0001904587156, +0.0001847706422, \n    +0.0001735779817, +0.0001680733945, +0.0001511926606, +0.0001343119266, \n    +0.0001119266055, +0.0001007339450, +0.0000840366972, +0.0000671559633, \n    +0.0000504587156, +0.0000447706422, +0.0000280733945, +0.0000168807339, \n    +0.0000000000000, -0.0000056880734, -0.0000223853211, -0.0000447706422, \n    -0.0000728440367, -0.0000895412844, -0.0001176146789, -0.0001400000000, \n    -0.0001623853211, -0.0001792660550, -0.0001959633028, -0.0002183486239, \n    -0.0002519266055, -0.0002800000000, -0.0003135779817, -0.0003359633028, \n    -0.0003640366972, -0.0003752293578, -0.0003919266055, -0.0003976146789, \n    -0.0004143119266, -0.0004255045872, -0.0004535779817, -0.0004759633028, \n    -0.0005040366972, -0.0005207339450, -0.0005431192661, -0.0005488073394, \n    -0.0005543119266, -0.0005600000000, -0.0005711926606, -0.0005711926606, \n    -0.0005823853211, -0.0005823853211, -0.0005935779817, -0.0005935779817, \n    -0.0005878899083, -0.0005766972477, -0.0005655045872, -0.0005431192661, \n    -0.0005264220183, -0.0004928440367, -0.0004759633028, -0.0004423853211, \n    -0.0004143119266, -0.0003752293578, -0.0003471559633, -0.0003135779817, \n    -0.0002855045872, -0.0002464220183, -0.0002183486239, -0.0001680733945, \n    -0.0001176146789, -0.0000504587156, +0.0000000000000, +0.0000671559633, \n    +0.0001400000000, +0.0002240366972, +0.0002911926606, +0.0003695412844, \n    +0.0004366972477, +0.0005152293578, +0.0005878899083, +0.0006776146789, \n    +0.0007559633028, +0.0008566972477, +0.0009462385321, +0.0010414678899, \n    +0.0011200000000, +0.0012207339450, +0.0013102752294, +0.0014166972477, \n    +0.0015119266055, +0.0016350458716, +0.0017469724771, +0.0018645871560, \n    +0.0019543119266, +0.0020605504587, +0.0021333944954, +0.0022229357798, \n    +0.0022845871560, +0.0023741284404, +0.0024526605505, +0.0025590825688, \n    +0.0026374311927, +0.0027438532110, +0.0028165137615, +0.0029117431193, \n    +0.0029622018349, +0.0030405504587, +0.0030741284404, +0.0031300917431, \n    +0.0031245871560, +0.0031581651376, +0.0031357798165, +0.0031693577982, \n    +0.0031245871560, +0.0031469724771, +0.0030853211009, +0.0031188990826, \n    +0.0030181651376, +0.0030462385321, +0.0028893577982, +0.0029117431193, \n    +0.0026877064220, +0.0027381651376, +0.0024022018349, +0.0025365137615, \n    +0.0020045871560, +0.0023910091743, +0.0015007339450, +0.0020381651376, \n    +0.0017302752294, +0.0006383486239, +0.0018143119266, +0.0010471559633, \n    +0.0006271559633, +0.0001343119266, +0.0002464220183, -0.0001007339450, \n    +0.0000335779817, -0.0005319266055, -0.0003695412844, -0.0010638532110, \n    -0.0009855045872, -0.0015231192661, -0.0017302752294, -0.0020831192661, \n    -0.0023741284404, -0.0027157798165, -0.0032422018349, -0.0031805504587, \n    -0.0028838532110, -0.0042948623853, -0.0065458715596, -0.0058963302752, \n    -0.0033486238532, -0.0035500917431, -0.0062546788991, -0.0036229357798, \n    +0.0045915596330, -0.0037796330275, -0.0148332110092, +0.0062939449541, \n    +0.0453620183486, +0.0444772477064, -0.0210823853211, -0.1025390825688, \n    -0.1561379816514, -0.1834581651376, -0.1786370642202, -0.1175234862385, \n    -0.0273089908257, +0.0380882568807, +0.0621383486239, +0.0517398165138, \n    +0.0079344954128, -0.0153651376147, -0.0025365137615, +0.0080409174312, \n    +0.0194640366972, +0.0423157798165, +0.0483130275229, +0.0478985321101, \n    +0.0450484403670, +0.0363803669725, +0.0385754128440, +0.0512247706422, \n    +0.0413807339450, +0.0109190825688, -0.0123022018349, -0.0354060550459, \n    -0.0486992660550, -0.0297335779817, -0.0066522935780, +0.0166587155963, \n    +0.0411455045872, +0.0406135779817, +0.0217933944954, +0.0147603669725, \n    +0.0076154128440, +0.0044460550459, +0.0064618348624, -0.0014110091743, \n    -0.0078337614679, -0.0050732110092, -0.0054708256881, -0.0038972477064, \n    +0.0035053211009, +0.0110255045872, +0.0144077064220, +0.0082704587156, \n    -0.0021278899083, -0.0137972477064, -0.0202759633028, -0.0287201834862, \n    -0.0369739449541, -0.0291344954128, -0.0102583486239, +0.0031300917431, \n    +0.0146541284404, +0.0231710091743, +0.0217262385321, +0.0112719266055, \n    -0.0047651376147, -0.0217095412844, -0.0217319266055, -0.0040484403670, \n    +0.0149508256881, +0.0281880733945, +0.0348124770642, +0.0330150458716, \n    +0.0294033027523, +0.0264858715596, +0.0249236697248, +0.0283056880734, \n    +0.0272137614679, +0.0197271559633, +0.0163282568807, +0.0146372477064, \n    +0.0056275229358, -0.0078001834862, -0.0206623853211, -0.0273034862385, \n    -0.0254163302752, -0.0177561467890, -0.0075201834862, -0.0004816513761, \n    +0.0034829357798, +0.0069434862385, +0.0131310091743, +0.0231038532110, \n    +0.0330093577982, +0.0376011009174, +0.0372818348624, +0.0350812844037, \n    +0.0268946788991, +0.0153203669725, +0.0105216513761, +0.0106840366972, \n    +0.0090376146789, +0.0049724770642, -0.0021390825688, -0.0073130275229, \n    -0.0081249541284, -0.0070611009174, -0.0028500917431, +0.0037741284404, \n    +0.0076770642202, +0.0027326605505, -0.0067194495413, -0.0106390825688, \n    -0.0062099082569, +0.0037908256881, +0.0157963302752, +0.0250860550459, \n    +0.0274434862385, +0.0209143119266, +0.0104935779817, +0.0026822018349, \n    +0.0008455045872, +0.0024022018349, +0.0045691743119, +0.0081025688073, \n    +0.0110647706422, +0.0081025688073, -0.0010807339450, -0.0102247706422, \n    -0.0139877064220, -0.0103928440367, -0.0014614678899, +0.0057508256881, \n    +0.0056051376147, +0.0013159633028, -0.0022117431193, -0.0035836697248, \n    -0.0042165137615, -0.0023069724771, +0.0010919266055, +0.0036733944954, \n    +0.0046924770642, +0.0043565137615, +0.0043172477064, +0.0030517431193, \n    +0.0019543119266, +0.0032588990826, +0.0056499082569, +0.0081473394495, \n    +0.0092111926606, +0.0074809174312, +0.0040484403670, -0.0010695412844, \n    -0.0050284403670, -0.0063387155963, -0.0086737614679, -0.0156115596330, \n    -0.0231093577982, -0.0256515596330, -0.0242067889908, -0.0206400000000, \n    -0.0132486238532, -0.0043229357798, +0.0022733944954, +0.0057170642202, \n    +0.0077442201835, +0.0064842201835, +0.0000000000000, -0.0069546788991, \n    -0.0097321100917, -0.0090711926606, -0.0064563302752, -0.0045300917431, \n    -0.0037012844037, -0.0018422018349, -0.0013719266055, -0.0040429357798, \n    -0.0066746788991, -0.0081080733945, -0.0087297247706, -0.0079568807339, \n    -0.0082313761468, -0.0101183486239, -0.0127669724771, -0.0147996330275, \n    -0.0142341284404, -0.0116807339450, -0.0080521100917, -0.0045803669725, \n    -0.0023014678899, -0.0022622018349, -0.0033541284404, -0.0044629357798, \n    -0.0058739449541, -0.0064058715596, -0.0053979816514, -0.0051179816514, \n    -0.0066522935780, -0.0100400000000, -0.0153372477064, -0.0197271559633, \n    -0.0206176146789, -0.0191673394495, -0.0171849541284, -0.0126269724771, \n    -0.0075034862385, -0.0052972477064, -0.0057955963303, -0.0068651376147, \n    -0.0068539449541, -0.0048267889908, -0.0024581651376, -0.0015510091743, \n    -0.0019766972477, -0.0029845871560, -0.0040988990826, -0.0050899082569, \n    -0.0054372477064, -0.0047260550459, -0.0032086238532, -0.0015902752294, \n    -0.0006159633028, -0.0011983486239, -0.0027438532110, -0.0054203669725, \n    -0.0088192660550, -0.0107231192661, -0.0102135779817, -0.0074642201835, \n    -0.0048267889908, -0.0028500917431, -0.0011535779817, -0.0005990825688, \n    -0.0001400000000, +0.0017190825688, +0.0025981651376, +0.0030012844037, \n    +0.0039812844037, +0.0029845871560, -0.0003247706422, -0.0033653211009, \n    -0.0052915596330, -0.0050675229358, -0.0016686238532, +0.0033598165138, \n    +0.0067754128440, +0.0059579816514, +0.0009071559633, -0.0062379816514, \n    -0.0126717431193, -0.0168154128440, -0.0179689908257, -0.0153875229358, \n    -0.0094464220183, -0.0030012844037, +0.0021950458716, +0.0054875229358, \n    +0.0063106422018, +0.0038245871560, +0.0002576146789, -0.0025590825688, \n    -0.0042779816514, -0.0040708256881, -0.0024693577982, -0.0015902752294, \n    -0.0025198165138, -0.0032365137615, -0.0027438532110, -0.0019766972477, \n    -0.0027269724771, -0.0046027522936, -0.0061091743119, -0.0061818348624, \n    -0.0060979816514, -0.0063554128440, -0.0066466055046, -0.0063946788991, \n    -0.0053196330275, -0.0047203669725, -0.0052579816514, -0.0050115596330, \n    -0.0027662385321, -0.0000728440367, +0.0020045871560, +0.0039420183486, \n    +0.0058682568807, +0.0071673394495, +0.0073522935780, +0.0067977981651, \n    +0.0070049541284, +0.0076937614679, +0.0067642201835, +0.0047091743119, \n    +0.0037405504587, +0.0030069724771, +0.0013607339450, -0.0001735779817, \n    -0.0007447706422, +0.0000111926606, +0.0021669724771, +0.0046308256881, \n    +0.0067082568807, +0.0085337614679, +0.0101183486239, +0.0103816513761, \n    +0.0087576146789, +0.0058851376147, +0.0026765137615, +0.0004590825688, \n    +0.0001792660550, +0.0017245871560, +0.0046588990826, +0.0072625688073, \n    +0.0080185321101, +0.0072122935780, +0.0051796330275, +0.0026374311927, \n    +0.0004088073394, -0.0012710091743, -0.0020719266055, -0.0020493577982, \n    -0.0010919266055, +0.0007055045872, +0.0019374311927, +0.0015455045872, \n    +0.0007055045872, +0.0002743119266, -0.0005878899083, -0.0019990825688, \n    -0.0025141284404, -0.0014055045872, +0.0014333944954, +0.0052467889908, \n    +0.0086344954128, +0.0106000000000, +0.0114678899083, +0.0109862385321, \n    +0.0086737614679, +0.0056108256881, +0.0038805504587, +0.0036060550459, \n    +0.0044179816514, +0.0054875229358, +0.0052691743119, +0.0040765137615, \n    +0.0029733944954, +0.0023910091743, +0.0027717431193, +0.0043677064220, \n    +0.0060755963303, +0.0067642201835, +0.0061315596330, +0.0049667889908, \n    +0.0035612844037, +0.0025141284404, +0.0024974311927, +0.0036229357798, \n    +0.0050675229358, +0.0058515596330, +0.0055827522936, +0.0049891743119, \n    +0.0047091743119, +0.0047539449541, +0.0048603669725, +0.0049836697248, \n    +0.0054427522936, +0.0061763302752, +0.0069546788991, +0.0075873394495, \n    +0.0075818348624, +0.0067139449541, +0.0052579816514, +0.0034772477064, \n    +0.0016910091743, +0.0000504587156, -0.0013495412844, -0.0019655045872, \n    -0.0014447706422, -0.0001680733945, +0.0005488073394, +0.0006047706422, \n    +0.0010638532110, +0.0017245871560, +0.0019150458716, +0.0024302752294, \n    +0.0038412844037, +0.0055546788991, +0.0065346788991, +0.0062267889908, \n    +0.0052860550459, +0.0042108256881, +0.0032645871560, +0.0025814678899, \n    +0.0024526605505, +0.0027550458716, +0.0027605504587, +0.0019543119266, \n    +0.0009071559633, +0.0004590825688, +0.0001847706422, -0.0004647706422, \n    -0.0008400000000, +0.0001119266055, +0.0018814678899, +0.0033877064220, \n    +0.0039588990826, +0.0039141284404, +0.0034717431193, +0.0024693577982, \n    +0.0014390825688, +0.0010750458716, +0.0010638532110, +0.0009462385321, \n    +0.0008288073394, +0.0008231192661, +0.0011423853211, +0.0013886238532, \n    +0.0009350458716, +0.0000616513761, -0.0003192660550, -0.0006214678899, \n    -0.0012150458716, -0.0017807339450, -0.0020045871560, -0.0019150458716, \n    -0.0016014678899, -0.0011590825688, -0.0004423853211, +0.0008511926606, \n    +0.0016183486239, +0.0012655045872, +0.0004200000000, -0.0004590825688, \n    -0.0011535779817, -0.0013719266055, -0.0009743119266, +0.0001400000000, \n    +0.0012935779817, +0.0015510091743, +0.0012823853211, +0.0008455045872, \n    +0.0002016513761, -0.0003695412844, -0.0004143119266, -0.0001455045872, \n    -0.0003752293578, -0.0012710091743, -0.0022343119266, -0.0029229357798, \n    -0.0033598165138, -0.0037741284404, -0.0042667889908, -0.0040036697248, \n    -0.0033765137615, -0.0031412844037, -0.0029005504587, -0.0020943119266, \n    -0.0007671559633, +0.0003304587156, +0.0006552293578, +0.0006776146789, \n    +0.0009855045872, +0.0012150458716, +0.0010638532110, +0.0008511926606, \n    +0.0004871559633, -0.0004702752294, -0.0015790825688, -0.0021390825688, \n    -0.0021166972477, -0.0018366972477, -0.0012431192661, -0.0004535779817, \n    +0.0001400000000, +0.0004647706422, +0.0001511926606, -0.0004928440367, \n    -0.0009911926606, -0.0013102752294, -0.0013607339450, -0.0011926605505, \n    -0.0012710091743, -0.0014726605505, -0.0014222018349, -0.0013271559633, \n    -0.0013998165138, -0.0012319266055, -0.0009519266055, -0.0009688073394, \n    -0.0012095412844, -0.0015007339450, -0.0015902752294, -0.0017695412844, \n    -0.0020550458716, -0.0022062385321, -0.0020998165138, -0.0017190825688, \n    -0.0013383486239, -0.0009966972477, -0.0007335779817, -0.0009631192661, \n    -0.0016071559633, -0.0022005504587, -0.0023629357798, -0.0020102752294, \n    -0.0013886238532, -0.0004200000000, +0.0006159633028, +0.0013886238532, \n    +0.0017022018349, +0.0012262385321, +0.0000000000000, -0.0012095412844, \n    -0.0020381651376, -0.0024302752294, -0.0025253211009, -0.0025814678899, \n    -0.0028277064220, -0.0034100917431, -0.0040317431193, -0.0044067889908, \n    -0.0043508256881, -0.0037405504587, -0.0028726605505, -0.0021726605505, \n    -0.0018814678899, -0.0022902752294, -0.0029341284404, -0.0030069724771, \n    -0.0025198165138, -0.0016631192661, -0.0005095412844, +0.0005040366972, \n    +0.0011031192661, +0.0011647706422, +0.0006888073394, -0.0000671559633, \n    -0.0008511926606, -0.0014278899083, -0.0017974311927, -0.0020214678899, \n    -0.0021222018349, -0.0022845871560, -0.0024693577982, -0.0025422018349, \n    -0.0024974311927, -0.0024414678899, -0.0023181651376, -0.0019150458716, \n    -0.0010247706422, -0.0000783486239, +0.0007559633028, +0.0014222018349, \n    +0.0018143119266, +0.0020943119266, +0.0020998165138, +0.0014838532110, \n    +0.0005264220183, -0.0001735779817, -0.0005488073394, -0.0009126605505, \n    -0.0012823853211, -0.0014055045872, -0.0015790825688, -0.0018086238532, \n    -0.0017919266055, -0.0016238532110, -0.0015343119266, -0.0017357798165, \n    -0.0020886238532, -0.0023069724771, -0.0023966972477, -0.0024750458716, \n    -0.0024078899083, -0.0018086238532, -0.0005095412844, +0.0007390825688, \n    +0.0012990825688, +0.0013271559633, +0.0011871559633, +0.0007278899083, \n    +0.0000447706422, -0.0004590825688, -0.0006495412844, -0.0007447706422, \n    -0.0010862385321, -0.0016350458716, -0.0021445871560, -0.0025310091743, \n    -0.0024581651376, -0.0017245871560, -0.0004535779817, +0.0006831192661, \n    +0.0010359633028, +0.0007111926606, +0.0001511926606, -0.0005600000000, \n    -0.0012374311927, -0.0014278899083, -0.0011143119266, -0.0005935779817, \n    -0.0001847706422, -0.0000111926606, +0.0002855045872, +0.0008231192661, \n    +0.0013886238532, +0.0018422018349, +0.0021838532110, +0.0021893577982, \n    +0.0020045871560, +0.0016126605505, +0.0012262385321, +0.0010414678899, \n    +0.0008064220183, +0.0004200000000, +0.0003640366972, +0.0006047706422, \n    +0.0008176146789, +0.0008064220183, +0.0005207339450, +0.0005431192661, \n    +0.0011759633028, +0.0016574311927, +0.0013943119266, +0.0008566972477, \n    +0.0004535779817, +0.0001176146789, -0.0000056880734, +0.0001680733945, \n    +0.0004759633028, +0.0009576146789, +0.0013550458716, +0.0011031192661, \n    +0.0007111926606, +0.0004983486239, +0.0002464220183, +0.0001400000000, \n    +0.0004255045872, +0.0007055045872, +0.0008959633028, +0.0007055045872, \n    +0.0002688073394, -0.0000895412844, -0.0008847706422, -0.0017583486239, \n    -0.0014447706422, -0.0006943119266, -0.0002743119266, +0.0002800000000, \n    +0.0005376146789, +0.0004816513761, +0.0004871559633, +0.0002576146789, \n    +0.0001064220183, +0.0003135779817, +0.0004423853211, +0.0006102752294, \n    +0.0009407339450, +0.0014166972477, +0.0020269724771, +0.0022622018349, \n    +0.0022455045872, +0.0022229357798, +0.0019038532110, +0.0012878899083, \n    +0.0004816513761, -0.0002407339450, -0.0006383486239, -0.0010359633028, \n    -0.0012598165138, -0.0008623853211, -0.0000280733945, +0.0008847706422, \n    +0.0015286238532, +0.0016407339450, +0.0017583486239, +0.0020102752294, \n    +0.0022229357798, +0.0024581651376, +0.0025814678899, +0.0025926605505, \n    +0.0024862385321, +0.0021502752294, +0.0017862385321, +0.0016126605505, \n    +0.0013998165138, +0.0012543119266, +0.0012543119266, +0.0011423853211, \n    +0.0008847706422, +0.0004590825688, +0.0000000000000, -0.0001959633028, \n    -0.0000840366972, +0.0000335779817, +0.0003471559633, +0.0009014678899, \n    +0.0015174311927, +0.0019543119266, +0.0020774311927, +0.0019766972477, \n    +0.0017638532110, +0.0013047706422, +0.0007950458716, +0.0004143119266, \n    -0.0000111926606, -0.0004200000000, -0.0004816513761, -0.0003528440367, \n    -0.0002966972477, -0.0004759633028, -0.0008455045872, -0.0010695412844, \n    -0.0009350458716, -0.0005095412844, +0.0000280733945, +0.0005823853211, \n    +0.0011311926606, +0.0014838532110, +0.0014447706422, +0.0011647706422, \n    +0.0007111926606, +0.0003416513761, +0.0002016513761, +0.0001735779817, \n    +0.0003640366972, +0.0008064220183, +0.0011086238532, +0.0012935779817, \n    +0.0013495412844, +0.0010974311927, +0.0007111926606, +0.0004871559633, \n    +0.0003135779817, +0.0002911926606, +0.0003416513761, +0.0002352293578, \n    +0.0000783486239, +0.0001288073394, +0.0004478899083, +0.0008678899083, \n    +0.0011926605505, +0.0015007339450, +0.0014333944954, +0.0008902752294, \n    +0.0000559633028, -0.0008064220183, -0.0014838532110, -0.0016407339450, \n    -0.0014559633028, -0.0009462385321, -0.0002295412844, +0.0005040366972, \n    +0.0011143119266, +0.0014110091743, +0.0012935779817, +0.0010414678899, \n    +0.0006664220183, +0.0002911926606, +0.0000335779817, -0.0000280733945, \n    +0.0001511926606, +0.0005431192661, +0.0008400000000, +0.0009743119266, \n    +0.0009462385321, +0.0007223853211, +0.0000504587156, -0.0007783486239, \n    -0.0014166972477, -0.0017695412844, -0.0017414678899, -0.0013271559633, \n    -0.0009576146789, -0.0007335779817, -0.0006552293578, -0.0007223853211, \n    -0.0007614678899, -0.0005095412844, -0.0000616513761, +0.0004759633028, \n    +0.0009014678899, +0.0010078899083, +0.0009631192661, +0.0008231192661, \n    +0.0004759633028, +0.0000616513761, -0.0001288073394, -0.0001007339450, \n    -0.0001288073394, -0.0003640366972, -0.0008959633028, -0.0013495412844, \n    -0.0015343119266, -0.0013719266055, -0.0009743119266, -0.0004816513761, \n    -0.0001007339450, +0.0000447706422, -0.0001904587156, -0.0005600000000, \n    -0.0006495412844, -0.0003078899083, +0.0001735779817, +0.0007502752294, \n    +0.0012095412844, +0.0013159633028, +0.0009183486239, +0.0003078899083, \n    -0.0000504587156, -0.0000168807339, -0.0000447706422, -0.0002911926606, \n    -0.0004535779817, -0.0004928440367, -0.0006214678899, -0.0007390825688, \n    -0.0007838532110, -0.0006664220183, -0.0004702752294, -0.0002352293578, \n    +0.0000111926606, +0.0002016513761, +0.0000895412844, -0.0001792660550, \n    -0.0005655045872, -0.0008847706422, -0.0009462385321, -0.0008623853211, \n    -0.0008007339450, -0.0005823853211, -0.0004143119266, -0.0003247706422, \n    -0.0002407339450, -0.0001231192661, +0.0000840366972, +0.0003078899083, \n    +0.0003192660550, +0.0002183486239, +0.0000447706422, -0.0001904587156, \n    -0.0004702752294, -0.0006943119266, -0.0009183486239, -0.0011255045872, \n    -0.0013774311927, -0.0017190825688, -0.0019766972477, -0.0019990825688, \n    -0.0017078899083, -0.0010807339450, -0.0003528440367, +0.0002295412844, \n    +0.0005264220183, +0.0004366972477, +0.0000783486239, -0.0003192660550, \n    -0.0006495412844, -0.0007950458716, -0.0007447706422, -0.0005431192661, \n    -0.0003528440367, -0.0003752293578, -0.0005319266055, -0.0007726605505, \n    -0.0012486238532, -0.0017245871560, -0.0018086238532, -0.0015231192661, \n    -0.0010919266055, -0.0006383486239, -0.0002855045872, -0.0000447706422, \n    +0.0000840366972, +0.0000168807339, -0.0001176146789, -0.0001623853211, \n    -0.0001566972477, -0.0001735779817, -0.0001343119266, -0.0002016513761, \n    -0.0003023853211, -0.0004535779817, -0.0006719266055, -0.0007559633028, \n    -0.0006495412844, -0.0004366972477, -0.0001959633028, -0.0001007339450, \n    -0.0001064220183, -0.0001959633028, -0.0004647706422, -0.0009350458716, \n    -0.0013662385321, -0.0016462385321, -0.0017750458716, -0.0017078899083, \n    -0.0013326605505, -0.0007895412844, -0.0002295412844, +0.0001176146789, \n    +0.0003192660550, +0.0002352293578, +0.0000056880734, -0.0002128440367, \n    -0.0003359633028, -0.0004311926606, -0.0004928440367, -0.0006607339450, \n    -0.0009295412844, -0.0011423853211, -0.0011423853211, -0.0012486238532, \n    -0.0015286238532, -0.0018757798165, -0.0020214678899, -0.0020550458716, \n    -0.0019262385321, -0.0015959633028, -0.0010078899083, -0.0003023853211, \n    +0.0005152293578, +0.0012431192661, +0.0015845871560, +0.0014390825688, \n    +0.0009238532110, +0.0001623853211, -0.0004478899083, -0.0007950458716, \n    -0.0008455045872, -0.0008064220183, -0.0008176146789, -0.0009183486239, \n    -0.0012319266055, -0.0015959633028, -0.0015622018349, -0.0014166972477, \n    -0.0012710091743, -0.0010695412844, -0.0009126605505, -0.0009631192661, \n    -0.0008902752294, -0.0004928440367, +0.0001959633028, +0.0006495412844, \n    +0.0007726605505, +0.0006102752294, +0.0004143119266, +0.0001288073394, \n    -0.0000335779817, -0.0000952293578, +0.0000000000000, +0.0002911926606, \n    +0.0006776146789, +0.0006552293578, +0.0001400000000, -0.0007614678899, \n    -0.0016910091743, -0.0022678899083, -0.0024750458716, -0.0024805504587, \n    -0.0022678899083, -0.0020269724771, -0.0016574311927, -0.0011143119266, \n    -0.0005207339450, +0.0002576146789, +0.0013326605505, +0.0021950458716, \n    +0.0025310091743, +0.0020662385321, +0.0007447706422, -0.0009238532110, \n    -0.0022957798165, -0.0029286238532, -0.0026262385321, -0.0015231192661, \n    +0.0000783486239, +0.0016407339450, +0.0024750458716, +0.0022622018349, \n    +0.0013326605505, +0.0002352293578, -0.0005376146789, -0.0010247706422, \n    -0.0012823853211, -0.0012766972477, -0.0011366972477, -0.0009743119266, \n    -0.0006888073394, -0.0002464220183, +0.0001847706422, +0.0006719266055, \n    +0.0011031192661, +0.0013214678899, +0.0012766972477, +0.0010471559633, \n    +0.0007614678899, +0.0005152293578, +0.0003078899083, +0.0002352293578, \n    +0.0002855045872, +0.0004031192661, +0.0006271559633, +0.0008511926606, \n    +0.0008288073394, +0.0005040366972, +0.0000056880734, -0.0005040366972, \n    -0.0009295412844, -0.0010526605505, -0.0008735779817, -0.0004759633028, \n    +0.0000111926606, +0.0005655045872, +0.0008847706422, +0.0008902752294, \n    +0.0006383486239, +0.0002071559633, -0.0001176146789, -0.0001735779817, \n    -0.0001511926606, -0.0000168807339, +0.0002855045872, +0.0005431192661, \n    +0.0005431192661, +0.0002855045872, -0.0001792660550, -0.0005655045872, \n    -0.0009519266055, -0.0013438532110, -0.0014559633028, -0.0010919266055, \n    -0.0005823853211, -0.0000671559633, +0.0004088073394, +0.0009014678899, \n    +0.0013214678899, +0.0017638532110, +0.0019319266055, +0.0017862385321, \n    +0.0014278899083, +0.0009350458716, +0.0001904587156, -0.0005543119266, \n    -0.0010359633028, -0.0009462385321, -0.0005990825688, -0.0001959633028, \n    +0.0001119266055, +0.0004200000000, +0.0006552293578, +0.0009350458716, \n    +0.0011871559633, +0.0014895412844, +0.0016295412844, +0.0013550458716, \n    +0.0006495412844, -0.0000728440367, -0.0006214678899, -0.0007390825688, \n    -0.0003919266055, +0.0002911926606, +0.0010302752294, +0.0017078899083, \n    +0.0020045871560, +0.0018702752294, +0.0014950458716, +0.0010919266055, \n    +0.0005264220183, -0.0000895412844, -0.0007502752294, -0.0012431192661, \n    -0.0012655045872, -0.0007559633028, +0.0000000000000, +0.0009743119266, \n    +0.0018702752294, +0.0024526605505, +0.0026093577982, +0.0021950458716, \n    +0.0012655045872, +0.0002966972477, -0.0005152293578, -0.0009855045872, \n    -0.0009462385321, -0.0005711926606, -0.0000783486239, +0.0004366972477, \n    +0.0007950458716, +0.0011311926606, +0.0015845871560, +0.0019319266055, \n    +0.0019262385321, +0.0015902752294, +0.0009462385321, +0.0001400000000, \n    -0.0006495412844, -0.0010862385321, -0.0009014678899, -0.0002407339450, \n    +0.0004702752294, +0.0010190825688, +0.0012543119266, +0.0011926605505, \n    +0.0008735779817, +0.0004143119266, +0.0000000000000, -0.0003023853211, \n    -0.0004200000000, -0.0001623853211, +0.0002576146789, +0.0005600000000, \n    +0.0006607339450, +0.0004983486239, +0.0001735779817, +0.0000504587156, \n    +0.0002128440367, +0.0004702752294, +0.0007166972477, +0.0008735779817, \n    +0.0009183486239, +0.0007559633028, +0.0003864220183, +0.0000447706422, \n    -0.0001735779817, -0.0004983486239, -0.0006664220183, -0.0005823853211, \n    -0.0002128440367, +0.0002911926606, +0.0008343119266, +0.0013438532110, \n    +0.0017357798165, +0.0016966972477, +0.0012710091743, +0.0005543119266, \n    -0.0001847706422, -0.0007950458716, -0.0010695412844, -0.0010583486239, \n    -0.0007335779817, -0.0002240366972, +0.0002295412844, +0.0004647706422, \n    +0.0006214678899, +0.0006943119266, +0.0006607339450, +0.0004983486239, \n    +0.0003471559633, +0.0001288073394, -0.0001007339450, -0.0003023853211, \n    -0.0002519266055, -0.0001343119266, -0.0000280733945, +0.0000447706422, \n    +0.0001959633028, +0.0003359633028, +0.0004590825688, +0.0002855045872, \n    +0.0000000000000, -0.0001792660550, -0.0002576146789, -0.0002800000000, \n    -0.0002407339450, -0.0002183486239, -0.0001007339450, +0.0000280733945, \n    +0.0002016513761, +0.0002743119266, +0.0002295412844, +0.0001623853211, \n    +0.0001288073394, +0.0000447706422, -0.0000335779817, -0.0001847706422, \n    -0.0003359633028, -0.0002576146789, +0.0000000000000, +0.0001735779817, \n    +0.0002240366972, +0.0001792660550, +0.0000559633028, -0.0001511926606, \n    -0.0004088073394, -0.0005543119266, -0.0003976146789, -0.0000952293578, \n    +0.0001400000000, +0.0001511926606, +0.0000671559633, -0.0000056880734, \n    -0.0001119266055, -0.0002352293578, -0.0002688073394, -0.0002464220183, \n    -0.0001792660550, -0.0000559633028, +0.0000280733945, +0.0000728440367, \n    +0.0002183486239, +0.0004928440367, +0.0006159633028, +0.0005823853211, \n    +0.0005990825688, +0.0006102752294, +0.0004143119266, +0.0002407339450, \n    +0.0002016513761, +0.0002071559633, +0.0002631192661, +0.0004088073394, \n    +0.0004478899083, +0.0002352293578, -0.0001231192661, -0.0004590825688, \n    -0.0007447706422, -0.0007335779817, -0.0002911926606, +0.0002240366972, \n    +0.0004816513761, +0.0005823853211, +0.0004423853211, -0.0000335779817, \n    -0.0005543119266, -0.0007111926606, -0.0006102752294, -0.0003583486239, \n    -0.0000335779817, +0.0001455045872, +0.0000783486239, -0.0000280733945, \n    -0.0002407339450, -0.0003807339450, -0.0002295412844, +0.0002855045872, \n    +0.0008623853211, +0.0012598165138, +0.0013383486239, +0.0011478899083, \n    +0.0007390825688, +0.0002016513761, -0.0002128440367, -0.0000952293578, \n    +0.0002743119266, +0.0006383486239, +0.0010526605505, +0.0012766972477, \n    +0.0010414678899, +0.0006552293578, +0.0003023853211, -0.0000392660550, \n    -0.0002743119266, -0.0001735779817, +0.0001176146789, +0.0003247706422, \n    +0.0004647706422, +0.0007223853211, +0.0007278899083, +0.0005040366972, \n    +0.0002240366972, +0.0001455045872, +0.0001959633028, +0.0001455045872, \n    +0.0002071559633, +0.0002855045872, -0.0001735779817, -0.0007223853211, \n    -0.0008176146789, -0.0007671559633, -0.0006888073394, -0.0004590825688, \n    -0.0003416513761, -0.0003976146789, -0.0003976146789, -0.0004590825688, \n    -0.0008007339450, -0.0012543119266, -0.0014166972477, -0.0013438532110, \n    -0.0013159633028, -0.0009911926606, -0.0002128440367, +0.0005040366972, \n    +0.0010359633028, +0.0013998165138, +0.0012655045872, +0.0006047706422, \n    -0.0001623853211, -0.0008064220183, -0.0011702752294, -0.0012598165138, \n    -0.0008847706422, -0.0000056880734, +0.0007166972477, +0.0008902752294, \n    +0.0006831192661, +0.0002407339450, -0.0001566972477, -0.0006159633028, \n    -0.0009966972477, -0.0011086238532, -0.0009966972477, -0.0008566972477, \n    -0.0004311926606, +0.0000000000000, +0.0002966972477, +0.0006102752294, \n    +0.0007000000000, +0.0004702752294, +0.0003528440367, +0.0002911926606, \n    +0.0001792660550, -0.0001064220183, -0.0007671559633, -0.0013998165138, \n    -0.0016798165138, -0.0016519266055, -0.0011926605505, -0.0003807339450, \n    +0.0003304587156, +0.0007111926606, +0.0007278899083, +0.0003359633028, \n    -0.0002519266055, -0.0008959633028, -0.0012710091743, -0.0011702752294, \n    -0.0006888073394, -0.0002688073394, +0.0000447706422, +0.0002407339450, \n    +0.0002407339450, +0.0000447706422, -0.0000504587156, +0.0000280733945, \n    +0.0002631192661, +0.0004088073394, +0.0005990825688, +0.0007055045872, \n    +0.0005935779817, +0.0004088073394, +0.0002183486239, +0.0000000000000, \n    -0.0003640366972, -0.0007726605505, -0.0009295412844, -0.0008176146789, \n    -0.0006271559633, -0.0004816513761, -0.0003416513761, -0.0002352293578, \n    -0.0001847706422, -0.0002183486239, -0.0001680733945, -0.0000111926606, \n    +0.0000895412844, +0.0000952293578, +0.0000559633028, -0.0000447706422, \n    -0.0001400000000, -0.0000223853211, +0.0003023853211, +0.0006719266055, \n    +0.0009911926606, +0.0013102752294, +0.0015062385321, +0.0015062385321, \n    +0.0013047706422, +0.0009911926606, +0.0008678899083, +0.0008119266055, \n    +0.0004647706422, +0.0001119266055, -0.0001288073394, -0.0003864220183, \n    -0.0005543119266, -0.0004647706422, -0.0000840366972, +0.0004478899083, \n    +0.0008623853211, +0.0010414678899, +0.0008176146789, +0.0003192660550, \n    -0.0000840366972, -0.0001735779817, +0.0000000000000, +0.0003192660550, \n    +0.0005990825688, +0.0008176146789, +0.0009743119266, +0.0010247706422, \n    +0.0009519266055, +0.0007783486239, +0.0004200000000, -0.0000728440367, \n    -0.0005711926606, -0.0009183486239, -0.0011535779817, -0.0012319266055, \n    -0.0011478899083, -0.0008343119266, -0.0003807339450, +0.0000335779817, \n    +0.0003583486239, +0.0006943119266, +0.0007447706422, +0.0004759633028, \n    +0.0000671559633, -0.0002519266055, -0.0005319266055, -0.0006831192661, \n    -0.0006495412844, -0.0003752293578, -0.0000335779817, +0.0003304587156, \n    +0.0005878899083, +0.0006271559633, +0.0005040366972, +0.0003192660550, \n    +0.0000504587156, -0.0001288073394, -0.0002631192661, -0.0003864220183, \n    -0.0004590825688, -0.0004478899083, -0.0003471559633, -0.0001680733945, \n    +0.0000000000000, +0.0001623853211, +0.0002464220183, +0.0001792660550, \n    +0.0001288073394, +0.0001680733945, +0.0002688073394, +0.0004816513761, \n    +0.0007166972477, +0.0007000000000, +0.0006159633028, +0.0007111926606, \n    +0.0007783486239, +0.0007838532110, +0.0008511926606, +0.0006607339450, \n    +0.0001007339450, -0.0004366972477, -0.0008007339450, -0.0009743119266, \n    -0.0009071559633, -0.0005711926606, -0.0000671559633, +0.0002800000000, \n    +0.0004816513761, +0.0006440366972, +0.0007166972477, +0.0005878899083, \n    +0.0003304587156, +0.0000168807339, -0.0001623853211, -0.0003528440367, \n    -0.0005319266055, -0.0005655045872, -0.0004478899083, -0.0003304587156, \n    -0.0001455045872, -0.0000335779817, -0.0000223853211, -0.0001064220183, \n    -0.0002295412844, -0.0003359633028, -0.0003192660550, -0.0002183486239, \n    -0.0000559633028, -0.0000840366972, -0.0003471559633, -0.0006326605505, \n    -0.0006440366972, -0.0003807339450, -0.0000280733945, +0.0001511926606, \n    +0.0001680733945, +0.0000728440367, +0.0000000000000, -0.0000223853211, \n    +0.0000895412844, +0.0003583486239, +0.0006719266055, +0.0007223853211, \n    +0.0004983486239, +0.0001735779817, -0.0001119266055, -0.0003807339450, \n    -0.0003416513761, +0.0000783486239, +0.0005990825688, +0.0008511926606, \n    +0.0008176146789, +0.0005935779817, +0.0004088073394, +0.0003304587156, \n    +0.0003192660550, +0.0003695412844, +0.0004200000000, +0.0002183486239, \n    -0.0002071559633, -0.0006383486239, -0.0009576146789, -0.0011366972477, \n    -0.0010359633028, -0.0006776146789, -0.0002183486239, +0.0002688073394, \n    +0.0007000000000, +0.0009183486239, +0.0009238532110, +0.0008511926606, \n    +0.0007726605505, +0.0006440366972, +0.0003192660550, -0.0000728440367, \n    -0.0003359633028, -0.0003695412844, -0.0003023853211, -0.0001680733945, \n    +0.0000559633028, +0.0004311926606, +0.0006831192661, +0.0006719266055, \n    +0.0005040366972, +0.0003416513761, +0.0002183486239, +0.0001566972477, \n    +0.0000616513761, +0.0000000000000, -0.0000952293578, -0.0002464220183, \n    -0.0003135779817, -0.0001007339450, +0.0001847706422, +0.0005319266055, \n    +0.0008735779817, +0.0011255045872, +0.0011255045872, +0.0008623853211, \n    +0.0003247706422, -0.0002240366972, -0.0007726605505, -0.0011031192661, \n    -0.0010919266055, -0.0007838532110, -0.0003135779817, +0.0001288073394, \n    +0.0003583486239, +0.0004816513761, +0.0004031192661, +0.0001343119266, \n    -0.0001119266055, -0.0001680733945, -0.0001511926606, -0.0000783486239, \n    -0.0001119266055, -0.0002464220183, -0.0003135779817, -0.0002576146789, \n    -0.0002071559633, -0.0000504587156, +0.0001792660550, +0.0005095412844, \n    +0.0007335779817, +0.0006664220183, +0.0003192660550, -0.0001007339450, \n    -0.0004983486239, -0.0007950458716, -0.0009183486239, -0.0008566972477, \n    -0.0008231192661, -0.0008678899083, -0.0008455045872, -0.0007111926606, \n    -0.0005264220183, -0.0002071559633, +0.0001064220183, +0.0002352293578, \n    +0.0001847706422, +0.0000559633028, -0.0001904587156, -0.0005264220183, \n    -0.0007000000000, -0.0005207339450, -0.0001680733945, +0.0000111926606, \n    +0.0000168807339, -0.0000392660550, -0.0000671559633, -0.0000952293578, \n    -0.0000895412844, +0.0000280733945, +0.0002519266055, +0.0002855045872, \n    +0.0000559633028, -0.0003192660550, -0.0006440366972, -0.0007335779817, \n    -0.0006383486239, -0.0004983486239, -0.0002407339450, +0.0000392660550, \n    +0.0001400000000, +0.0000111926606, -0.0001119266055, -0.0002128440367, \n    -0.0001904587156, -0.0001680733945, -0.0001680733945, -0.0001959633028, \n    -0.0002576146789, -0.0004366972477, -0.0005655045872, -0.0005878899083, \n    -0.0004702752294, -0.0002800000000, -0.0001176146789, -0.0000952293578, \n    -0.0001119266055, -0.0002631192661, -0.0005152293578, -0.0008231192661, \n    -0.0010807339450, -0.0012543119266, -0.0013102752294, -0.0010807339450, \n    -0.0004759633028, +0.0001847706422, +0.0007783486239, +0.0010695412844, \n    +0.0010414678899, +0.0007559633028, +0.0002464220183, -0.0002352293578, \n    -0.0004366972477, -0.0003583486239, -0.0000952293578, +0.0000952293578, \n    +0.0001455045872, +0.0001288073394, +0.0000000000000, -0.0002800000000, \n    -0.0004255045872, -0.0003135779817, -0.0002128440367, -0.0002911926606, \n    -0.0005488073394, -0.0008119266055, -0.0007895412844, -0.0005264220183, \n    -0.0002631192661, +0.0000000000000, +0.0003135779817, +0.0005207339450, \n    +0.0004702752294, +0.0002743119266, +0.0000504587156, -0.0001566972477, \n    -0.0002519266055, -0.0001231192661, +0.0000335779817, +0.0000728440367, \n    -0.0000223853211, -0.0002519266055, -0.0004535779817, -0.0004647706422, \n    -0.0003807339450, -0.0001064220183, +0.0003359633028, +0.0007223853211, \n    +0.0008343119266, +0.0007166972477, +0.0004816513761, +0.0002743119266, \n    +0.0001400000000, +0.0000783486239, +0.0000728440367, +0.0001735779817, \n    +0.0002743119266, +0.0002576146789, +0.0001288073394, +0.0000000000000, \n    -0.0000616513761, -0.0000504587156, +0.0000335779817, +0.0002071559633, \n    +0.0003416513761, +0.0003919266055, +0.0002631192661, +0.0000111926606, \n    -0.0001735779817, -0.0003135779817, -0.0003752293578, -0.0002352293578, \n    -0.0000223853211, +0.0001119266055, +0.0001959633028, +0.0001566972477, \n    +0.0000223853211, -0.0000392660550, +0.0000000000000, +0.0001288073394, \n    +0.0003078899083, +0.0004647706422, +0.0005543119266, +0.0004590825688, \n    +0.0002352293578, +0.0000559633028, +0.0000000000000, -0.0000056880734, \n    -0.0000559633028, -0.0001176146789, -0.0001566972477, -0.0002855045872, \n    -0.0003976146789, -0.0003416513761, -0.0001511926606, +0.0000280733945, \n    +0.0002016513761, +0.0003247706422, +0.0004366972477, +0.0004759633028, \n    +0.0003919266055, +0.0002128440367, +0.0000783486239, +0.0000504587156, \n    +0.0001176146789, +0.0001959633028, +0.0002688073394, +0.0002800000000, \n    +0.0002631192661, +0.0001792660550, -0.0000280733945, -0.0003078899083, \n    -0.0004478899083, -0.0004816513761, -0.0004200000000, -0.0002352293578, \n    -0.0000168807339, +0.0001343119266, +0.0002576146789, +0.0003416513761, \n    +0.0003192660550, +0.0002128440367, +0.0000559633028, -0.0001455045872, \n    -0.0003023853211, -0.0003023853211, -0.0002352293578, -0.0001511926606, \n    -0.0000895412844, -0.0000168807339, +0.0000335779817, -0.0000447706422, \n    -0.0002743119266, -0.0004088073394, -0.0004200000000, -0.0004200000000, \n    -0.0004759633028, -0.0004871559633, -0.0004311926606, -0.0003078899083, \n    -0.0001904587156, -0.0000335779817, +0.0001566972477, +0.0003976146789, \n    +0.0005711926606, +0.0005655045872, +0.0002855045872, -0.0000392660550, \n    -0.0002464220183, -0.0002800000000, -0.0001792660550, -0.0000056880734, \n    +0.0000783486239, +0.0001680733945, +0.0003023853211, +0.0004031192661, \n    +0.0002911926606, +0.0000504587156, -0.0002855045872, -0.0006552293578, \n    -0.0008400000000, -0.0007278899083, -0.0004255045872, -0.0000447706422, \n    +0.0002295412844, +0.0003583486239, +0.0003247706422, +0.0002240366972, \n    +0.0000504587156, -0.0001904587156, -0.0004983486239, -0.0007559633028, \n    -0.0009800000000, -0.0010471559633, -0.0008511926606, -0.0004759633028, \n    -0.0001231192661, +0.0001455045872, +0.0002631192661, +0.0002128440367, \n    +0.0001792660550, +0.0001959633028, +0.0001680733945, +0.0001176146789, \n    +0.0002071559633, +0.0004535779817, +0.0007000000000, +0.0008119266055, \n    +0.0008007339450, +0.0006664220183, +0.0004702752294, +0.0001904587156, \n    -0.0000895412844, -0.0003247706422, -0.0003471559633, -0.0002183486239, \n    -0.0000056880734, +0.0002071559633, +0.0004816513761, +0.0006719266055, \n    +0.0007335779817, +0.0006271559633, +0.0004255045872, +0.0001566972477, \n    -0.0000952293578, -0.0002295412844, -0.0001511926606, -0.0000447706422, \n    +0.0000000000000, +0.0000504587156, +0.0002464220183, +0.0004088073394, \n    +0.0004590825688, +0.0003528440367, +0.0001455045872, -0.0001400000000, \n    -0.0004200000000, -0.0006102752294, -0.0005823853211, -0.0003864220183, \n    -0.0001119266055, +0.0001231192661, +0.0003078899083, +0.0002855045872, \n    +0.0001231192661, -0.0000616513761, -0.0002071559633, -0.0002855045872, \n    -0.0002071559633, -0.0000559633028, +0.0001176146789, +0.0002519266055, \n    +0.0002911926606, +0.0002352293578, +0.0001792660550, +0.0001623853211, \n    +0.0001735779817, +0.0001119266055, -0.0000335779817, -0.0002016513761, \n    -0.0002800000000, -0.0002407339450, -0.0001176146789, +0.0000000000000, \n    +0.0001231192661, +0.0001735779817, +0.0001064220183, +0.0000616513761, \n    +0.0001231192661, +0.0001735779817, +0.0001231192661, +0.0000840366972, \n    +0.0001735779817, +0.0002464220183, +0.0001959633028, +0.0001680733945, \n    +0.0002183486239, +0.0002911926606, +0.0002519266055, +0.0001680733945, \n    +0.0000504587156, -0.0000280733945, -0.0001566972477, -0.0002688073394, \n    -0.0003192660550, -0.0001231192661, +0.0001343119266, +0.0002966972477, \n    +0.0003078899083, +0.0003752293578, +0.0004759633028, +0.0005600000000, \n    +0.0004590825688, +0.0002464220183, -0.0000056880734, -0.0002240366972, \n    -0.0004478899083, -0.0005488073394, -0.0005431192661, -0.0004031192661, \n    -0.0002631192661, -0.0001176146789, -0.0000280733945, -0.0000392660550, \n    -0.0001959633028, -0.0002855045872, -0.0002743119266, -0.0001904587156, \n    -0.0001343119266, -0.0000616513761, +0.0000447706422, +0.0002016513761, \n    +0.0002240366972, +0.0001288073394, -0.0000223853211, -0.0002071559633, \n    -0.0003919266055, -0.0005095412844, -0.0005655045872, -0.0005264220183, \n    -0.0004143119266, -0.0002688073394, -0.0001064220183, +0.0000000000000, \n    +0.0000168807339, -0.0000223853211, -0.0000728440367, -0.0000783486239, \n    -0.0000392660550, -0.0000223853211, +0.0000840366972, +0.0002631192661, \n    +0.0003807339450, +0.0003583486239, +0.0002352293578, +0.0000223853211, \n    -0.0001680733945, -0.0004031192661, -0.0005711926606, -0.0005600000000, \n    -0.0003135779817, +0.0000000000000, +0.0003528440367, +0.0005878899083, \n    +0.0006214678899, +0.0004590825688, +0.0001959633028, -0.0001400000000, \n    -0.0003583486239, -0.0004200000000, -0.0002688073394, -0.0001288073394, \n    -0.0000335779817, +0.0000168807339, +0.0000504587156, -0.0000559633028, \n    -0.0001288073394, -0.0001288073394, -0.0000223853211, +0.0000559633028, \n    +0.0001623853211, +0.0002352293578, +0.0003247706422, +0.0002855045872, \n    +0.0001623853211, +0.0000168807339, -0.0000447706422, -0.0000616513761, \n    -0.0000168807339, -0.0000168807339, -0.0000559633028, -0.0001735779817, \n    -0.0003192660550, -0.0004255045872, -0.0003864220183, -0.0002128440367, \n    +0.0000111926606, +0.0001511926606, +0.0001566972477, +0.0000728440367, \n    -0.0000392660550, -0.0001119266055, -0.0000280733945, +0.0001343119266, \n    +0.0003416513761, +0.0005207339450, +0.0005376146789, +0.0004816513761, \n    +0.0003919266055, +0.0001847706422, -0.0001400000000, -0.0004031192661, \n    -0.0005319266055, -0.0004871559633, -0.0003807339450, -0.0002519266055, \n    -0.0001400000000, +0.0000111926606, +0.0001176146789, +0.0001511926606, \n    +0.0001343119266, +0.0001007339450, -0.0000559633028, -0.0002855045872, \n    -0.0005319266055, -0.0006607339450, -0.0006943119266, -0.0006271559633, \n    -0.0005264220183, -0.0003304587156, -0.0001566972477, -0.0000056880734, \n    +0.0000000000000, -0.0001119266055, -0.0003247706422, -0.0003752293578, \n    -0.0003135779817, -0.0001400000000, +0.0000168807339, +0.0001400000000, \n    +0.0000504587156, -0.0001623853211, -0.0004647706422, -0.0006719266055, \n    -0.0007614678899, -0.0007000000000, -0.0005264220183, -0.0002855045872, \n    -0.0001288073394, -0.0000783486239, -0.0001288073394, -0.0002295412844, \n    -0.0002407339450, -0.0001288073394, +0.0000000000000, +0.0001064220183, \n    +0.0000895412844, +0.0000000000000, -0.0000392660550, -0.0000111926606, \n    +0.0000168807339, +0.0000559633028, +0.0000840366972, +0.0000000000000, \n    -0.0001680733945, -0.0004255045872, -0.0006383486239, -0.0007447706422, \n    -0.0006607339450, -0.0004478899083, -0.0001792660550, -0.0000447706422, \n    -0.0000559633028, -0.0001735779817, -0.0002519266055, -0.0002519266055, \n    -0.0001511926606, -0.0000447706422, +0.0000952293578, +0.0001959633028, \n    +0.0003078899083, +0.0003416513761, +0.0002966972477, +0.0001288073394, \n    -0.0000223853211, -0.0001455045872, -0.0001623853211, -0.0001847706422, \n    -0.0001904587156, -0.0002240366972, -0.0002631192661, -0.0002631192661, \n    -0.0001511926606, -0.0000616513761, +0.0000447706422, +0.0001511926606, \n    +0.0002183486239, +0.0002631192661, +0.0003471559633, +0.0004366972477, \n    +0.0005152293578, +0.0005488073394, +0.0005376146789, +0.0004423853211, \n    +0.0003528440367, +0.0003078899083, +0.0002240366972, +0.0001566972477, \n    +0.0001455045872, +0.0000895412844, +0.0000000000000, -0.0000447706422, \n    -0.0000840366972, -0.0000952293578, -0.0000335779817, +0.0001343119266, \n    +0.0003640366972, +0.0005152293578, +0.0004928440367, +0.0003976146789, \n    +0.0002407339450, +0.0000728440367, -0.0000728440367, -0.0001735779817, \n    -0.0002240366972, -0.0001231192661, +0.0000056880734, +0.0001343119266, \n    +0.0002016513761, +0.0003192660550, +0.0003807339450, +0.0004366972477, \n    +0.0005152293578, +0.0005878899083, +0.0005376146789, +0.0004983486239, \n    +0.0004200000000, +0.0003192660550, +0.0002183486239, +0.0002295412844, \n    +0.0003247706422, +0.0005152293578, +0.0006831192661, +0.0008119266055, \n    +0.0008176146789, +0.0007111926606, +0.0005152293578, +0.0003247706422, \n    +0.0001623853211, +0.0000840366972, +0.0001119266055, +0.0002240366972, \n    +0.0003192660550, +0.0003864220183, +0.0003807339450, +0.0003304587156, \n    +0.0003135779817, +0.0003471559633, +0.0003695412844, +0.0004088073394, \n    +0.0004478899083, +0.0003864220183, +0.0002071559633, -0.0000056880734, \n    -0.0002016513761, -0.0003192660550, -0.0003135779817, -0.0001959633028, \n    +0.0000223853211, +0.0001735779817, +0.0002128440367, +0.0002183486239, \n    +0.0002240366972, +0.0002128440367, +0.0002743119266, +0.0002855045872, \n    +0.0002966972477, +0.0003304587156, +0.0004478899083, +0.0005207339450, \n    +0.0005655045872, +0.0005376146789, +0.0006047706422, +0.0007614678899, \n    +0.0009014678899, +0.0008343119266, +0.0006326605505, +0.0003359633028, \n    +0.0000000000000, -0.0002911926606, -0.0003864220183, -0.0002911926606, \n    -0.0000111926606, +0.0003023853211, +0.0005711926606, +0.0006888073394, \n    +0.0006719266055, +0.0005711926606, +0.0005264220183, +0.0004871559633, \n    +0.0004478899083, +0.0003752293578, +0.0002800000000, +0.0001623853211, \n    +0.0000895412844, +0.0000952293578, +0.0002407339450, +0.0004759633028, \n    +0.0006214678899, +0.0006440366972, +0.0005766972477, +0.0004535779817, \n    +0.0002576146789, +0.0000111926606, -0.0001792660550, -0.0002911926606, \n    -0.0003864220183, -0.0004311926606, -0.0003864220183, -0.0001904587156, \n    +0.0000783486239, +0.0003528440367, +0.0005376146789, +0.0006495412844, \n    +0.0005431192661, +0.0002631192661, -0.0000559633028, -0.0002688073394, \n    -0.0003471559633, -0.0001566972477, +0.0001847706422, +0.0005600000000, \n    +0.0007838532110, +0.0007895412844, +0.0005600000000, +0.0003078899083, \n    +0.0000559633028, -0.0001400000000, -0.0003864220183, -0.0006383486239, \n    -0.0007838532110, -0.0007335779817, -0.0006047706422, -0.0003752293578, \n    -0.0000728440367, +0.0003135779817, +0.0007223853211, +0.0009295412844, \n    +0.0008511926606, +0.0006326605505, +0.0002743119266, -0.0001511926606, \n    -0.0005600000000, -0.0008678899083, -0.0009519266055, -0.0007278899083, \n    -0.0003695412844, -0.0000840366972, +0.0000504587156, +0.0001119266055, \n    +0.0000952293578, +0.0000783486239, +0.0001119266055, +0.0001064220183, \n    +0.0001176146789, +0.0002016513761, +0.0003078899083, +0.0003752293578, \n    +0.0004816513761, +0.0005711926606, +0.0006214678899, +0.0004928440367, \n    +0.0002183486239, -0.0001455045872, -0.0005878899083, -0.0011031192661, \n    -0.0014783486239, -0.0015510091743, -0.0011871559633, -0.0006047706422, \n    -0.0001400000000, +0.0000895412844, +0.0003247706422, +0.0005095412844, \n    +0.0005600000000, +0.0004478899083, +0.0003023853211, +0.0001735779817, \n    +0.0000895412844, -0.0000056880734, -0.0001566972477, -0.0003583486239, \n    -0.0004647706422, -0.0004311926606, -0.0001735779817, +0.0001455045872, \n    +0.0003192660550, +0.0002240366972, -0.0000280733945, -0.0004031192661, \n    -0.0007055045872, -0.0007223853211, -0.0004366972477, +0.0000056880734, \n    +0.0004031192661, +0.0004647706422, +0.0000783486239, -0.0003976146789, \n    -0.0006943119266, -0.0007223853211, -0.0006159633028, -0.0004871559633, \n    -0.0003752293578, -0.0002743119266, -0.0003304587156, -0.0004816513761, \n    -0.0004647706422, -0.0002631192661, -0.0000952293578, -0.0001064220183, \n    -0.0002855045872, -0.0004535779817, -0.0004928440367, -0.0003528440367, \n    -0.0001847706422, -0.0001904587156, -0.0003752293578, -0.0005878899083, \n    -0.0008288073394, -0.0010862385321, -0.0012543119266, -0.0012095412844, \n    -0.0009519266055, -0.0005152293578, -0.0000504587156, +0.0002855045872, \n    +0.0004590825688, +0.0004928440367, +0.0004702752294, +0.0004366972477, \n    +0.0003304587156, +0.0001455045872, -0.0000280733945, -0.0001847706422, \n    -0.0003359633028, -0.0004983486239, -0.0005823853211, -0.0004816513761, \n    -0.0001680733945, +0.0000728440367, +0.0001288073394, +0.0000000000000, \n    -0.0001511926606, -0.0002743119266, -0.0002631192661, -0.0001007339450, \n    +0.0001904587156, +0.0004535779817, +0.0004759633028, +0.0002407339450, \n    -0.0001176146789, -0.0004535779817, -0.0005766972477, -0.0005543119266, \n    -0.0003976146789, -0.0001623853211, +0.0000616513761, +0.0002240366972, \n    +0.0002240366972, +0.0000392660550, -0.0000559633028, +0.0000000000000, \n    +0.0000671559633, +0.0001007339450, +0.0001735779817, +0.0002407339450, \n    +0.0001847706422, +0.0000056880734, -0.0002240366972, -0.0004423853211, \n    -0.0005319266055, -0.0004871559633, -0.0003864220183, -0.0001847706422, \n    +0.0000616513761, +0.0002352293578, +0.0002295412844, +0.0001400000000, \n    +0.0000335779817, +0.0000000000000, +0.0000392660550, +0.0001959633028, \n    +0.0003640366972, +0.0004423853211, +0.0003304587156, +0.0001511926606, \n    -0.0000671559633, -0.0002911926606, -0.0004816513761, -0.0005766972477, \n    -0.0005935779817, -0.0004816513761, -0.0002966972477, -0.0000280733945, \n    +0.0001231192661, +0.0001735779817, +0.0001288073394, +0.0000000000000, \n    -0.0002743119266, -0.0004143119266, -0.0003247706422, -0.0001343119266, \n    +0.0000280733945, +0.0002295412844, +0.0003304587156, +0.0003023853211, \n    +0.0001511926606, -0.0000056880734, -0.0000671559633, +0.0000335779817, \n    +0.0001959633028, +0.0002966972477, +0.0003023853211, +0.0002016513761, \n    +0.0000671559633, -0.0000223853211, +0.0000000000000, +0.0001680733945, \n    +0.0004200000000, +0.0006047706422, +0.0006607339450, +0.0005431192661, \n    +0.0002911926606, -0.0000111926606, -0.0002240366972, -0.0003135779817, \n    -0.0002183486239, +0.0000000000000, +0.0002743119266, +0.0003919266055, \n    +0.0002911926606, +0.0000616513761, +0.0000000000000, +0.0000000000000, \n    +0.0001007339450, +0.0002183486239, +0.0003078899083, +0.0002743119266, \n    +0.0001511926606, -0.0000335779817, -0.0000728440367, +0.0000111926606, \n    +0.0001792660550, +0.0002352293578, +0.0002407339450, +0.0001847706422, \n    +0.0000783486239, -0.0000728440367, -0.0000783486239, +0.0000671559633, \n    +0.0003640366972, +0.0006831192661, +0.0009407339450, +0.0010135779817, \n    +0.0008790825688, +0.0006214678899, +0.0003864220183, +0.0001680733945, \n    +0.0000111926606, -0.0000280733945, -0.0000783486239, -0.0002128440367, \n    -0.0003807339450, -0.0004702752294, -0.0004871559633, -0.0004255045872, \n    -0.0002911926606, -0.0000783486239, +0.0001288073394, +0.0003752293578, \n    +0.0005040366972, +0.0005040366972, +0.0003192660550, +0.0000840366972, \n    -0.0001623853211, -0.0002743119266, -0.0002576146789, -0.0000335779817, \n    +0.0002183486239, +0.0004535779817, +0.0005207339450, +0.0005319266055, \n    +0.0004366972477, +0.0002855045872, +0.0000559633028, -0.0000559633028, \n    -0.0001064220183, -0.0000895412844, -0.0001119266055, -0.0000447706422, \n    +0.0000952293578, +0.0003135779817, +0.0003752293578, +0.0003023853211, \n    +0.0001231192661, -0.0000392660550, -0.0001680733945, -0.0001511926606, \n    -0.0000671559633, -0.0000056880734, -0.0000111926606, -0.0000504587156, \n    -0.0001400000000, -0.0002128440367, -0.0002071559633, -0.0001400000000, \n    -0.0000840366972, -0.0000559633028, -0.0000728440367, -0.0001792660550, \n    -0.0003416513761, -0.0005711926606, -0.0007502752294, -0.0008007339450, \n    -0.0006831192661, -0.0004983486239, -0.0002576146789, -0.0000895412844, \n    -0.0000056880734, -0.0000447706422, -0.0000952293578, -0.0001680733945, \n    -0.0001064220183, +0.0000223853211, +0.0002016513761, +0.0002966972477, \n    +0.0003976146789, +0.0004423853211, +0.0004928440367, +0.0004647706422, \n    +0.0004535779817, +0.0004200000000, +0.0003416513761, +0.0001288073394, \n    -0.0000504587156, -0.0002071559633, -0.0002855045872, -0.0003471559633, \n    -0.0002519266055, -0.0000671559633, +0.0001343119266, +0.0003023853211, \n    +0.0004088073394, +0.0003192660550, +0.0001343119266, -0.0000671559633, \n    -0.0002295412844, -0.0003023853211, -0.0002631192661, -0.0001566972477, \n    -0.0000223853211, +0.0000895412844, +0.0001400000000, +0.0001119266055, \n    +0.0000000000000, -0.0001511926606, -0.0003135779817, -0.0004031192661, \n    -0.0003807339450, -0.0002519266055, -0.0001288073394, +0.0000447706422, \n    +0.0002071559633, +0.0002407339450, +0.0000671559633, -0.0001231192661, \n    -0.0002631192661, -0.0002743119266, -0.0002743119266, -0.0002071559633, \n    -0.0001623853211, -0.0001904587156, -0.0003192660550, -0.0003976146789, \n    -0.0004535779817, -0.0003640366972, -0.0001566972477, +0.0001007339450, \n    +0.0002240366972, +0.0002071559633, +0.0000728440367, +0.0000000000000, \n    -0.0000223853211, +0.0000111926606, +0.0000840366972, +0.0002407339450, \n    +0.0003583486239, +0.0003640366972, +0.0002240366972, +0.0000895412844, \n    +0.0000280733945, +0.0000056880734, -0.0000392660550, -0.0001176146789, \n    -0.0001792660550, -0.0001959633028, -0.0001400000000, -0.0000392660550, \n    +0.0000280733945, +0.0000671559633, +0.0001343119266, +0.0002128440367, \n    +0.0003078899083, +0.0003583486239, +0.0003640366972, +0.0002407339450, \n    +0.0001343119266, +0.0000728440367, +0.0000392660550, -0.0000056880734, \n    -0.0000168807339, -0.0000447706422, -0.0000559633028, -0.0000728440367, \n    -0.0000392660550, +0.0000000000000, +0.0000840366972, +0.0001511926606, \n    +0.0002128440367, +0.0001904587156, +0.0001343119266, +0.0000000000000, \n    -0.0001792660550, -0.0003528440367, -0.0003976146789, -0.0003528440367, \n    -0.0002576146789, -0.0001735779817, -0.0001343119266, -0.0001400000000, \n    -0.0001288073394, -0.0000840366972, +0.0000111926606, +0.0001847706422, \n    +0.0003304587156, +0.0003416513761, +0.0002016513761, -0.0000056880734, \n    -0.0002016513761, -0.0003078899083, -0.0003416513761, -0.0002631192661, \n    -0.0001343119266, -0.0000447706422, -0.0001007339450, -0.0002519266055, \n    -0.0004478899083, -0.0005823853211, -0.0005935779817, -0.0004200000000, \n    -0.0001847706422, +0.0000504587156, +0.0002183486239, +0.0003416513761, \n    +0.0003471559633, +0.0002519266055, +0.0000783486239, -0.0000616513761, \n    -0.0002407339450, -0.0003583486239, -0.0003807339450, -0.0002743119266, \n    -0.0001176146789, +0.0000000000000, +0.0000223853211, +0.0000447706422, \n    +0.0000559633028, +0.0000392660550, +0.0000280733945, +0.0000056880734, \n    -0.0000447706422, -0.0001400000000, -0.0002631192661, -0.0004143119266, \n    -0.0005152293578, -0.0005319266055, -0.0004702752294, -0.0003864220183, \n    -0.0003304587156, -0.0002966972477, -0.0002295412844, -0.0001343119266, \n    +0.0000056880734, +0.0001455045872, +0.0001792660550, +0.0000223853211, \n    -0.0002128440367, -0.0004255045872, -0.0004647706422, -0.0003976146789, \n    -0.0001904587156, +0.0000952293578, +0.0004031192661, +0.0005376146789, \n    +0.0005264220183, +0.0003807339450, +0.0002071559633, +0.0000447706422, \n    -0.0000559633028, -0.0001176146789, -0.0000952293578, -0.0001064220183, \n    -0.0001400000000, -0.0001623853211, -0.0001566972477, -0.0000895412844, \n    +0.0000447706422, +0.0002016513761, +0.0003247706422, +0.0003528440367, \n    +0.0002519266055, +0.0000671559633, -0.0001064220183, -0.0001792660550, \n    -0.0000895412844, +0.0000671559633, +0.0001959633028, +0.0002800000000, \n    +0.0002855045872, +0.0002295412844, +0.0001176146789, +0.0000223853211, \n    +0.0000056880734, +0.0000952293578, +0.0001566972477, +0.0001511926606, \n    +0.0000111926606, -0.0001455045872, -0.0002631192661, -0.0002464220183, \n    -0.0001623853211, +0.0000223853211, +0.0002911926606, +0.0005878899083, \n    +0.0007783486239, +0.0008064220183, +0.0006047706422, +0.0002576146789, \n    -0.0000895412844, -0.0002966972477, -0.0003135779817, -0.0001511926606, \n    +0.0000280733945, +0.0001566972477, +0.0001959633028, +0.0001904587156, \n    +0.0001680733945, +0.0001847706422, +0.0002352293578, +0.0002519266055, \n    +0.0002071559633, +0.0001007339450, +0.0000000000000, -0.0000616513761, \n    -0.0000335779817, +0.0000335779817, +0.0001680733945, +0.0003023853211, \n    +0.0004031192661, +0.0004088073394, +0.0003192660550, +0.0001176146789, \n    -0.0000392660550, -0.0001400000000, -0.0001455045872, -0.0001119266055, \n    -0.0000616513761, -0.0000616513761, -0.0000616513761, -0.0000392660550, \n    +0.0000447706422, +0.0001904587156, +0.0003807339450, +0.0004647706422, \n    +0.0003752293578, +0.0001231192661, -0.0001176146789, -0.0002855045872, \n    -0.0003304587156, -0.0002800000000, -0.0001343119266, +0.0000056880734, \n    +0.0001007339450, +0.0001288073394, +0.0001400000000, +0.0001680733945, \n    +0.0002071559633, +0.0002519266055, +0.0002855045872, +0.0002966972477, \n    +0.0002464220183, +0.0001231192661, -0.0000559633028, -0.0001400000000, \n    -0.0000671559633, +0.0000504587156, +0.0001623853211, +0.0002576146789, \n    +0.0002576146789, +0.0001959633028, +0.0001288073394, +0.0001064220183, \n    +0.0001566972477, +0.0002688073394, +0.0003247706422, +0.0003078899083, \n    +0.0001904587156, +0.0000447706422, -0.0000728440367, -0.0000616513761, \n    +0.0000392660550, +0.0001847706422, +0.0002631192661, +0.0002855045872, \n    +0.0002016513761, +0.0000616513761, -0.0000392660550, -0.0000895412844, \n    -0.0000616513761, +0.0000223853211, +0.0000895412844, +0.0001176146789, \n    +0.0001343119266, +0.0001735779817, +0.0002071559633, +0.0002128440367, \n    +0.0002240366972, +0.0002240366972, +0.0002183486239, +0.0001792660550, \n    +0.0000783486239, -0.0001119266055, -0.0003135779817, -0.0004366972477, \n    -0.0004088073394, -0.0002295412844, +0.0000223853211, +0.0002128440367, \n    +0.0002800000000, +0.0001792660550, +0.0000056880734, -0.0001792660550, \n    -0.0002966972477, -0.0003135779817, -0.0002183486239, -0.0001064220183, \n    -0.0000111926606, -0.0000168807339, -0.0000616513761, -0.0001176146789, \n    -0.0001231192661, -0.0000504587156, +0.0000504587156, +0.0001231192661, \n    +0.0001959633028, +0.0002464220183, +0.0002407339450, +0.0002240366972, \n    +0.0002688073394, +0.0003416513761, +0.0003807339450, +0.0003864220183, \n    +0.0003583486239, +0.0002855045872, +0.0001623853211, +0.0000728440367, \n    +0.0000223853211, +0.0000000000000, -0.0000168807339, -0.0000392660550, \n    -0.0000728440367, -0.0000616513761, -0.0000056880734, +0.0001176146789, \n    +0.0002576146789, +0.0004031192661, +0.0005040366972, +0.0005431192661, \n    +0.0004702752294, +0.0002966972477, +0.0000280733945, -0.0001847706422, \n    -0.0003416513761, -0.0003640366972, -0.0002966972477, -0.0001511926606, \n    -0.0000335779817, +0.0000000000000, +0.0000000000000, -0.0000111926606, \n    +0.0000000000000, +0.0000504587156, +0.0000840366972, +0.0000840366972, \n    +0.0000671559633, +0.0000280733945, -0.0000223853211, -0.0000895412844, \n    -0.0001064220183, -0.0000895412844, -0.0000504587156, -0.0000056880734, \n    +0.0000392660550, +0.0000616513761, +0.0000616513761, +0.0000895412844, \n    +0.0001904587156, +0.0002743119266, +0.0003135779817, +0.0002800000000, \n    +0.0002295412844, +0.0001343119266, +0.0000335779817, -0.0000616513761, \n    -0.0000840366972, -0.0000504587156, +0.0000000000000, -0.0000168807339, \n    -0.0000783486239, -0.0001792660550, -0.0002519266055, -0.0002966972477, \n    -0.0002519266055, -0.0001511926606, -0.0000447706422, +0.0000056880734, \n    +0.0000616513761, +0.0000559633028, +0.0000000000000, -0.0000447706422, \n    -0.0001231192661, -0.0002183486239, -0.0003359633028, -0.0004143119266, \n    -0.0004088073394, -0.0002688073394, -0.0000671559633, +0.0001231192661, \n    +0.0002464220183, +0.0002576146789, +0.0001007339450, -0.0001119266055, \n    -0.0003247706422, -0.0003640366972, -0.0002352293578, +0.0000000000000, \n    +0.0001959633028, +0.0003192660550, +0.0002855045872, +0.0001566972477, \n    -0.0000168807339, -0.0001792660550, -0.0002911926606, -0.0002743119266, \n    -0.0001959633028, -0.0000783486239, -0.0000056880734, +0.0000000000000, \n    -0.0000616513761, -0.0001847706422, -0.0002911926606, -0.0002855045872, \n    -0.0001959633028, -0.0000616513761, +0.0000392660550, +0.0001007339450, \n    +0.0000952293578, +0.0000728440367, +0.0000840366972, +0.0000728440367, \n    +0.0000168807339, -0.0000840366972, -0.0002016513761, -0.0003023853211, \n    -0.0003471559633, -0.0003528440367, -0.0002464220183, -0.0000671559633, \n    +0.0001231192661, +0.0002183486239, +0.0002352293578, +0.0001566972477, \n    +0.0000111926606, -0.0001792660550, -0.0003078899083, -0.0003752293578, \n    -0.0003528440367, -0.0002743119266, -0.0001400000000, -0.0000616513761, \n    -0.0000280733945, -0.0000616513761, -0.0000895412844, -0.0001064220183, \n    -0.0000895412844, -0.0000728440367, -0.0000559633028, -0.0000728440367, \n    -0.0001343119266, -0.0001847706422, -0.0001231192661, -0.0000111926606, \n    +0.0000840366972, +0.0001847706422, +0.0002688073394, +0.0002966972477, \n    +0.0002407339450, +0.0001231192661, +0.0000056880734, -0.0000447706422, \n    -0.0001064220183, -0.0001176146789, -0.0001064220183, -0.0000559633028, \n    -0.0000335779817, -0.0000056880734, -0.0000168807339, +0.0000000000000, \n    +0.0000000000000, +0.0000335779817, +0.0000280733945, +0.0000000000000, \n    -0.0000840366972, -0.0001400000000, -0.0002071559633, -0.0002352293578, \n    -0.0002071559633, -0.0000559633028, +0.0001064220183, +0.0002688073394, \n    +0.0003304587156, +0.0003304587156, +0.0002352293578, +0.0000952293578, \n    -0.0000335779817, -0.0001176146789, -0.0001343119266, -0.0001231192661, \n    -0.0001231192661, -0.0001511926606, -0.0001847706422, -0.0001847706422, \n    -0.0001064220183, +0.0000168807339, +0.0001735779817, +0.0002576146789, \n    +0.0002688073394, +0.0001680733945, +0.0000223853211, -0.0001007339450, \n    -0.0001566972477, -0.0001566972477, -0.0000840366972, +0.0000000000000, \n    +0.0000783486239, +0.0001064220183, +0.0001400000000, +0.0001511926606, \n    +0.0001735779817, +0.0001623853211, +0.0001792660550, +0.0001623853211, \n    +0.0001176146789, +0.0000168807339, -0.0000447706422, -0.0001007339450, \n    -0.0000895412844, -0.0000728440367, -0.0000447706422, +0.0000000000000, \n    +0.0000504587156, +0.0001064220183, +0.0001511926606, +0.0001904587156, \n    +0.0002295412844, +0.0002407339450, +0.0001792660550, +0.0000671559633, \n    -0.0000168807339, -0.0000783486239, -0.0001566972477, -0.0002071559633, \n    -0.0002407339450, -0.0002071559633, -0.0001176146789, +0.0000168807339, \n    +0.0001064220183, +0.0001288073394, +0.0000447706422, -0.0000559633028, \n    -0.0001904587156, -0.0002464220183, -0.0002352293578, -0.0001343119266, \n    +0.0000000000000, +0.0001288073394, +0.0001735779817, +0.0001455045872, \n    +0.0000447706422, -0.0000616513761, -0.0002016513761, -0.0002407339450, \n    -0.0002183486239, -0.0001680733945, -0.0001343119266, -0.0000840366972, \n    -0.0000280733945, +0.0000111926606, +0.0000392660550, +0.0000168807339, \n    +0.0000000000000, -0.0000168807339, -0.0000447706422, -0.0000895412844, \n    -0.0001007339450, -0.0001119266055, -0.0001007339450, -0.0000952293578, \n    -0.0000616513761, -0.0000559633028, -0.0000559633028, -0.0001455045872, \n    -0.0002295412844, -0.0002911926606, -0.0003192660550, -0.0003695412844, \n    -0.0003471559633, -0.0002519266055, -0.0000616513761, +0.0000783486239, \n    +0.0001904587156, +0.0001959633028, +0.0001400000000, +0.0000111926606, \n    -0.0001119266055, -0.0002576146789, -0.0002966972477, -0.0002016513761, \n    -0.0000392660550, +0.0000559633028, +0.0000783486239, +0.0000056880734, \n    -0.0000783486239, -0.0001566972477, -0.0001735779817, -0.0001343119266, \n    -0.0000840366972, -0.0000671559633, -0.0001176146789, -0.0001566972477, \n    -0.0001792660550, -0.0001735779817, -0.0001959633028, -0.0001735779817, \n    -0.0001007339450, +0.0000056880734, +0.0000616513761, +0.0000447706422, \n    -0.0000168807339, -0.0000783486239, -0.0001847706422, -0.0002743119266, \n    -0.0003023853211, -0.0002071559633, -0.0000895412844, +0.0000168807339, \n    +0.0000783486239, +0.0000895412844, +0.0000504587156, +0.0000168807339, \n    -0.0000335779817, -0.0000559633028, -0.0000728440367, -0.0001119266055, \n    -0.0001792660550, -0.0002519266055, -0.0003359633028, -0.0003864220183, \n    -0.0003471559633, -0.0002295412844, -0.0000783486239, +0.0000223853211, \n    +0.0000728440367, +0.0000223853211, -0.0000671559633, -0.0001792660550, \n    -0.0002071559633, -0.0001623853211, -0.0000111926606, +0.0001288073394, \n    +0.0002295412844, +0.0002128440367, +0.0001288073394, +0.0000000000000, \n    -0.0000840366972, -0.0000952293578, -0.0000392660550, -0.0000111926606, \n    -0.0000335779817, -0.0001231192661, -0.0001847706422, -0.0002183486239, \n    -0.0001735779817, -0.0000840366972, +0.0000392660550, +0.0001566972477, \n    +0.0001904587156, +0.0001511926606, +0.0001231192661, +0.0000840366972, \n    +0.0000335779817, -0.0000056880734, -0.0000671559633, -0.0001176146789, \n    -0.0001400000000, -0.0001288073394, -0.0000840366972, +0.0000000000000, \n    +0.0001064220183, +0.0002519266055, +0.0003807339450, +0.0004590825688, \n    +0.0004535779817, +0.0004088073394, +0.0003247706422, +0.0001959633028, \n    +0.0000504587156, +0.0000111926606, +0.0000616513761, +0.0001566972477, \n    +0.0001904587156, +0.0002128440367, +0.0002295412844, +0.0002295412844, \n    +0.0001847706422, +0.0001511926606, +0.0001566972477, +0.0002016513761, \n    +0.0002464220183, +0.0002464220183, +0.0002071559633, +0.0001680733945, \n    +0.0001288073394, +0.0000840366972, +0.0000559633028, +0.0000504587156, \n    +0.0000504587156, +0.0000111926606, -0.0000280733945, -0.0000728440367, \n    -0.0001119266055, -0.0001623853211, -0.0001904587156, -0.0002016513761, \n    -0.0001623853211, -0.0001007339450, -0.0000056880734, +0.0000671559633, \n    +0.0001400000000, +0.0001735779817, +0.0001792660550, +0.0001400000000, \n    +0.0000671559633, +0.0000000000000, -0.0000504587156, -0.0000728440367, \n    -0.0000223853211, +0.0000447706422, +0.0001231192661, +0.0001792660550, \n    +0.0002016513761, +0.0001343119266, +0.0000111926606, -0.0000559633028, \n    -0.0000559633028, +0.0000000000000, +0.0000392660550, +0.0000559633028, \n    +0.0000111926606, -0.0000504587156, -0.0001231192661, -0.0001007339450, \n    +0.0000168807339, +0.0002128440367, +0.0003640366972, +0.0004143119266, \n    +0.0003359633028, +0.0001680733945, +0.0000111926606, -0.0000392660550, \n    -0.0000392660550, +0.0000000000000, +0.0000392660550, +0.0000671559633, \n    +0.0000616513761, +0.0000335779817, +0.0000000000000, +0.0000000000000, \n    +0.0000447706422, +0.0001007339450, +0.0001511926606, +0.0001847706422, \n    +0.0002128440367, +0.0002016513761, +0.0001959633028, +0.0001959633028, \n    +0.0002240366972, +0.0002128440367, +0.0001623853211, +0.0000504587156, \n    -0.0000447706422, -0.0001064220183, -0.0000671559633, +0.0000000000000, \n    +0.0001119266055, +0.0001680733945, +0.0001904587156, +0.0001623853211, \n    +0.0001064220183, +0.0000168807339, -0.0000223853211, -0.0000392660550, \n    +0.0000000000000, +0.0000559633028, +0.0000952293578, +0.0001119266055, \n    +0.0001288073394, +0.0001511926606, +0.0001566972477, +0.0001400000000, \n    +0.0001231192661, +0.0001455045872, +0.0001566972477, +0.0001680733945, \n    +0.0001792660550, +0.0002352293578, +0.0002688073394, +0.0002800000000, \n    +0.0001959633028, +0.0000783486239, -0.0000280733945, -0.0000783486239, \n    -0.0001007339450, -0.0000616513761, -0.0000559633028, -0.0000616513761, \n    -0.0001176146789, -0.0001455045872, -0.0001288073394, -0.0000168807339, \n    +0.0001007339450, +0.0002519266055, +0.0002688073394, +0.0001735779817, \n    -0.0000056880734, -0.0001959633028, -0.0003192660550, -0.0003078899083, \n    -0.0002240366972, -0.0000895412844, +0.0000392660550, +0.0001623853211, \n    +0.0002352293578, +0.0002295412844, +0.0001792660550, +0.0000895412844, \n    +0.0000223853211, +0.0000056880734, +0.0000840366972, +0.0002071559633, \n    +0.0003528440367, +0.0004311926606, +0.0004702752294, +0.0003919266055, \n    +0.0002519266055, +0.0000783486239, -0.0000111926606, -0.0001119266055, \n    -0.0001400000000, -0.0001566972477, -0.0000895412844, -0.0000168807339, \n    +0.0000671559633, +0.0001064220183, +0.0001566972477, +0.0001455045872, \n    +0.0001231192661, +0.0000616513761, +0.0000447706422, +0.0000280733945, \n    +0.0000392660550, +0.0000223853211, +0.0000056880734, +0.0000000000000, \n    -0.0000168807339, -0.0000335779817, -0.0000280733945, +0.0000000000000, \n    +0.0000056880734, +0.0000000000000, -0.0000559633028, -0.0001343119266, \n    -0.0002240366972, -0.0002800000000, -0.0002966972477, -0.0002128440367, \n    -0.0000895412844, +0.0000616513761, +0.0001566972477, +0.0002016513761, \n    +0.0001511926606, +0.0001007339450, +0.0000000000000, -0.0000447706422, \n    -0.0001176146789, -0.0001288073394, -0.0001176146789, -0.0000392660550, \n    +0.0000056880734, +0.0000895412844, +0.0001064220183, +0.0001064220183, \n    +0.0000335779817, -0.0000447706422, -0.0001680733945, -0.0002016513761, \n    -0.0001511926606, -0.0000168807339, +0.0001064220183, +0.0002240366972, \n    +0.0002352293578, +0.0001566972477, +0.0000335779817, -0.0000728440367, \n    -0.0001119266055, -0.0000447706422, +0.0000504587156, +0.0001007339450, \n    +0.0001119266055, +0.0000728440367, +0.0000335779817, -0.0000111926606, \n    -0.0000223853211, -0.0000168807339, +0.0000335779817, +0.0000559633028, \n    +0.0000616513761, +0.0000000000000, -0.0000504587156, -0.0001511926606, \n    -0.0001904587156, -0.0002128440367, -0.0001343119266, -0.0000504587156, \n    +0.0000504587156, +0.0001119266055, +0.0001064220183, +0.0000000000000, \n    -0.0000895412844, -0.0001343119266, -0.0000952293578, -0.0000223853211, \n    +0.0000671559633, +0.0001680733945, +0.0002071559633, +0.0001680733945, \n    +0.0000952293578, +0.0000504587156, +0.0000223853211, +0.0000447706422, \n    +0.0000504587156, +0.0000392660550, -0.0000111926606, -0.0000840366972, \n    -0.0001623853211, -0.0001455045872, -0.0000783486239, +0.0000223853211, \n    +0.0001119266055, +0.0001680733945, +0.0001176146789, +0.0000111926606, \n    -0.0001064220183, -0.0001455045872, -0.0001343119266, -0.0000392660550, \n    +0.0000559633028, +0.0001735779817, +0.0002576146789, +0.0003416513761, \n    +0.0003695412844, +0.0003528440367, +0.0002800000000, +0.0001680733945, \n    +0.0000000000000, -0.0001623853211, -0.0002800000000, -0.0003078899083, \n    -0.0002352293578, -0.0001176146789, +0.0000000000000, +0.0000447706422, \n    +0.0000559633028, +0.0000000000000, -0.0000223853211, -0.0000335779817, \n    +0.0000000000000, +0.0000335779817, +0.0000671559633, +0.0000223853211, \n    -0.0000223853211, -0.0000952293578, -0.0001455045872, -0.0001623853211, \n    -0.0000504587156, +0.0001064220183, +0.0002855045872, +0.0004031192661, \n    +0.0004647706422, +0.0003807339450, +0.0002071559633, +0.0000168807339, \n    -0.0001007339450, -0.0001623853211, -0.0001119266055, -0.0000335779817, \n    -0.0000056880734, -0.0000335779817, -0.0000840366972, -0.0000671559633, \n    +0.0000168807339, +0.0001680733945, +0.0002911926606, +0.0003583486239, \n    +0.0003416513761, +0.0002631192661, +0.0001400000000, +0.0000223853211, \n    -0.0000168807339, +0.0000168807339, +0.0001288073394, +0.0002576146789, \n    +0.0002855045872, +0.0002128440367, +0.0000447706422, -0.0001119266055, \n    -0.0002576146789, -0.0003359633028, -0.0003471559633, -0.0002855045872, \n    -0.0002128440367, -0.0001792660550, -0.0001680733945, -0.0001566972477, \n    -0.0001288073394, -0.0000783486239\n};\n"
  },
  {
    "path": "impulses/all.h",
    "content": "/* Generated file, do not edit */\n\n#define IMPULSES 21\n\n#include \"impulses/01-unit.h\"\n#include \"impulses/02-steves-flat.h\"\n#include \"impulses/03-stk-m1.h\"\n#include \"impulses/04-fender-68-vibrolux-sm57.h\"\n#include \"impulses/05-fender-68-vibrolux-sm57-off.h\"\n#include \"impulses/06-fender-68-vibrolux-at4050.h\"\n#include \"impulses/07-fender-68-vibrolux-ui87.h\"\n#include \"impulses/08-fender-bassman-sm57.h\"\n#include \"impulses/09-fender-bassman-sm57-off.h\"\n#include \"impulses/10-fender-bassman-at4050.h\"\n#include \"impulses/11-fender-bassman-ui87.h\"\n#include \"impulses/12-fender-superchamp-sm57.h\"\n#include \"impulses/13-fender-superchamp-sm57-off.h\"\n#include \"impulses/14-fender-superchamp-at4050.h\"\n#include \"impulses/15-fender-superchamp-ui87.h\"\n#include \"impulses/16-marshall-jcm2000-sm57.h\"\n#include \"impulses/17-marshall-jcm2000-sm57-off.h\"\n#include \"impulses/18-marshall-plexi-sm57.h\"\n#include \"impulses/19-marshall-plexi-sm57-off.h\"\n#include \"impulses/20-matchless-chieftain-sm57.h\"\n#include \"impulses/21-matchless-chieftain-sm57-off.h\"\n\n#ifdef __clang__\nstatic void mk_imps(fftw_real **impulse_freq)\n#else\nstatic inline void mk_imps(fftw_real **impulse_freq)\n#endif\n{\n\tint c = 0;\n\tMK_IMP(unit);\n\tMK_IMP(steves_flat);\n\tMK_IMP(stk_m1);\n\tMK_IMP(fender_68_vibrolux_sm57);\n\tMK_IMP(fender_68_vibrolux_sm57_off);\n\tMK_IMP(fender_68_vibrolux_at4050);\n\tMK_IMP(fender_68_vibrolux_ui87);\n\tMK_IMP(fender_bassman_sm57);\n\tMK_IMP(fender_bassman_sm57_off);\n\tMK_IMP(fender_bassman_at4050);\n\tMK_IMP(fender_bassman_ui87);\n\tMK_IMP(fender_superchamp_sm57);\n\tMK_IMP(fender_superchamp_sm57_off);\n\tMK_IMP(fender_superchamp_at4050);\n\tMK_IMP(fender_superchamp_ui87);\n\tMK_IMP(marshall_jcm2000_sm57);\n\tMK_IMP(marshall_jcm2000_sm57_off);\n\tMK_IMP(marshall_plexi_sm57);\n\tMK_IMP(marshall_plexi_sm57_off);\n\tMK_IMP(matchless_chieftain_sm57);\n\tMK_IMP(matchless_chieftain_sm57_off);\n};\n"
  },
  {
    "path": "impulses/mkall-h.sh",
    "content": "#!\n\necho \"/* Generated file, do not edit */\" > all.h\necho \"\" >> all.h\nexport count=`ls -1 [0-9][0-9]* | wc -l`\necho \"#define IMPULSES $count\" >> all.h\necho \"\" >> all.h\nls -1 [0-9][0-9]* | awk '{print \"#include \\\"impulses/\" $0 \"\\\"\"}' >> all.h\necho \"\" >> all.h\necho \"#ifdef __clang__\" >> all.h\necho \"static void mk_imps(fftw_real **impulse_freq)\" >> all.h\necho \"#else\" >> all.h\necho \"static inline void mk_imps(fftw_real **impulse_freq)\" >> all.h\necho \"#endif\" >> all.h\necho \"{\" >> all.h\necho \"\tint c = 0;\" >> all.h\nls -1 [0-9][0-9]* | sed 's/...//;s/\\.h//;s/-/_/g' | awk '{print \"\\tMK_IMP(\" $0 \");\"}' >> all.h\necho \"};\" >> all.h\n"
  },
  {
    "path": "impulses/reorder.pl",
    "content": "#!/usr/bin/perl\n\n$n = 1;\nwhile (<>) {\n\tchomp;\n\t$ns = sprintf(\"%02d\", $n);\n\t$fr = $_;\n\ts/^../$ns/;\n\tprint \"mv $fr $_\\n\";\n\t$n++;\n}\n"
  },
  {
    "path": "impulses/scale.pl",
    "content": "#!/usr/bin/perl\n\n$scale = shift;\n\nwhile(<>) {\n\ts/([0-9.]+f)/&scale($1)/gxe;\n\tprint;\n}\n\nsub scale {\n\tlocal ($val) = @_;\n\n\treturn sprintf(\"%.13f\", $val / $scale);\n}\n"
  },
  {
    "path": "install-sh",
    "content": "#!/bin/sh\n# install - install a program, script, or datafile\n\nscriptversion=2004-02-15.20\n\n# This originates from X11R5 (mit/util/scripts/install.sh), which was\n# later released in X11R6 (xc/config/util/install.sh) with the\n# following copyright and license.\n#\n# Copyright (C) 1994 X Consortium\n#\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to\n# deal in the Software without restriction, including without limitation the\n# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n# sell copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n#\n# The above copyright notice and this permission notice shall be included in\n# all copies or substantial portions of the Software.\n#\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE\n# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN\n# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-\n# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n#\n# Except as contained in this notice, the name of the X Consortium shall not\n# be used in advertising or otherwise to promote the sale, use or other deal-\n# ings in this Software without prior written authorization from the X Consor-\n# tium.\n#\n#\n# FSF changes to this file are in the public domain.\n#\n# Calling this script install-sh is preferred over install.sh, to prevent\n# `make' implicit rules from creating a file called install from it\n# when there is no Makefile.\n#\n# This script is compatible with the BSD install script, but was written\n# from scratch.  It can only install one file at a time, a restriction\n# shared with many OS's install programs.\n\n# set DOITPROG to echo to test this script\n\n# Don't use :- since 4.3BSD and earlier shells don't like it.\ndoit=\"${DOITPROG-}\"\n\n# put in absolute paths if you don't have them in your path; or use env. vars.\n\nmvprog=\"${MVPROG-mv}\"\ncpprog=\"${CPPROG-cp}\"\nchmodprog=\"${CHMODPROG-chmod}\"\nchownprog=\"${CHOWNPROG-chown}\"\nchgrpprog=\"${CHGRPPROG-chgrp}\"\nstripprog=\"${STRIPPROG-strip}\"\nrmprog=\"${RMPROG-rm}\"\nmkdirprog=\"${MKDIRPROG-mkdir}\"\n\ntransformbasename=\ntransform_arg=\ninstcmd=\"$mvprog\"\nchmodcmd=\"$chmodprog 0755\"\nchowncmd=\nchgrpcmd=\nstripcmd=\nrmcmd=\"$rmprog -f\"\nmvcmd=\"$mvprog\"\nsrc=\ndst=\ndir_arg=\n\nusage=\"Usage: $0 [OPTION]... SRCFILE DSTFILE\n   or: $0 [OPTION]... SRCFILES... DIRECTORY\n   or: $0 -d DIRECTORIES...\n\nIn the first form, install SRCFILE to DSTFILE, removing SRCFILE by default.\nIn the second, create the directory path DIR.\n\nOptions:\n-b=TRANSFORMBASENAME\n-c         copy source (using $cpprog) instead of moving (using $mvprog).\n-d         create directories instead of installing files.\n-g GROUP   $chgrp installed files to GROUP.\n-m MODE    $chmod installed files to MODE.\n-o USER    $chown installed files to USER.\n-s         strip installed files (using $stripprog).\n-t=TRANSFORM\n--help     display this help and exit.\n--version  display version info and exit.\n\nEnvironment variables override the default commands:\n  CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG\n\"\n\nwhile test -n \"$1\"; do\n  case $1 in\n    -b=*) transformbasename=`echo $1 | sed 's/-b=//'`\n        shift\n        continue;;\n\n    -c) instcmd=$cpprog\n        shift\n        continue;;\n\n    -d) dir_arg=true\n        shift\n        continue;;\n\n    -g) chgrpcmd=\"$chgrpprog $2\"\n        shift\n        shift\n        continue;;\n\n    --help) echo \"$usage\"; exit 0;;\n\n    -m) chmodcmd=\"$chmodprog $2\"\n        shift\n        shift\n        continue;;\n\n    -o) chowncmd=\"$chownprog $2\"\n        shift\n        shift\n        continue;;\n\n    -s) stripcmd=$stripprog\n        shift\n        continue;;\n\n    -t=*) transformarg=`echo $1 | sed 's/-t=//'`\n        shift\n        continue;;\n\n    --version) echo \"$0 $scriptversion\"; exit 0;;\n\n    *)  # When -d is used, all remaining arguments are directories to create.\n\ttest -n \"$dir_arg\" && break\n        # Otherwise, the last argument is the destination.  Remove it from $@.\n\tfor arg\n\tdo\n          if test -n \"$dstarg\"; then\n\t    # $@ is not empty: it contains at least $arg.\n\t    set fnord \"$@\" \"$dstarg\"\n\t    shift # fnord\n\t  fi\n\t  shift # arg\n\t  dstarg=$arg\n\tdone\n\tbreak;;\n  esac\ndone\n\nif test -z \"$1\"; then\n  if test -z \"$dir_arg\"; then\n    echo \"$0: no input file specified.\" >&2\n    exit 1\n  fi\n  # It's OK to call `install-sh -d' without argument.\n  # This can happen when creating conditional directories.\n  exit 0\nfi\n\nfor src\ndo\n  # Protect names starting with `-'.\n  case $src in\n    -*) src=./$src ;;\n  esac\n\n  if test -n \"$dir_arg\"; then\n    dst=$src\n    src=\n\n    if test -d \"$dst\"; then\n      instcmd=:\n      chmodcmd=\n    else\n      instcmd=$mkdirprog\n    fi\n  else\n    # Waiting for this to be detected by the \"$instcmd $src $dsttmp\" command\n    # might cause directories to be created, which would be especially bad\n    # if $src (and thus $dsttmp) contains '*'.\n    if test ! -f \"$src\" && test ! -d \"$src\"; then\n      echo \"$0: $src does not exist.\" >&2\n      exit 1\n    fi\n\n    if test -z \"$dstarg\"; then\n      echo \"$0: no destination specified.\" >&2\n      exit 1\n    fi\n\n    dst=$dstarg\n    # Protect names starting with `-'.\n    case $dst in\n      -*) dst=./$dst ;;\n    esac\n\n    # If destination is a directory, append the input filename; won't work\n    # if double slashes aren't ignored.\n    if test -d \"$dst\"; then\n      dst=$dst/`basename \"$src\"`\n    fi\n  fi\n\n  # This sed command emulates the dirname command.\n  dstdir=`echo \"$dst\" | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`\n\n  # Make sure that the destination directory exists.\n\n  # Skip lots of stat calls in the usual case.\n  if test ! -d \"$dstdir\"; then\n    defaultIFS='\n\t '\n    IFS=\"${IFS-$defaultIFS}\"\n\n    oIFS=$IFS\n    # Some sh's can't handle IFS=/ for some reason.\n    IFS='%'\n    set - `echo \"$dstdir\" | sed -e 's@/@%@g' -e 's@^%@/@'`\n    IFS=$oIFS\n\n    pathcomp=\n\n    while test $# -ne 0 ; do\n      pathcomp=$pathcomp$1\n      shift\n      if test ! -d \"$pathcomp\"; then\n        $mkdirprog \"$pathcomp\" || lasterr=$?\n\t# mkdir can fail with a `File exist' error in case several\n\t# install-sh are creating the directory concurrently.  This\n\t# is OK.\n\ttest ! -d \"$pathcomp\" && { (exit ${lasterr-1}); exit; }\n      fi\n      pathcomp=$pathcomp/\n    done\n  fi\n\n  if test -n \"$dir_arg\"; then\n    $doit $instcmd \"$dst\" \\\n      && { test -z \"$chowncmd\" || $doit $chowncmd \"$dst\"; } \\\n      && { test -z \"$chgrpcmd\" || $doit $chgrpcmd \"$dst\"; } \\\n      && { test -z \"$stripcmd\" || $doit $stripcmd \"$dst\"; } \\\n      && { test -z \"$chmodcmd\" || $doit $chmodcmd \"$dst\"; }\n\n  else\n    # If we're going to rename the final executable, determine the name now.\n    if test -z \"$transformarg\"; then\n      dstfile=`basename \"$dst\"`\n    else\n      dstfile=`basename \"$dst\" $transformbasename \\\n               | sed $transformarg`$transformbasename\n    fi\n\n    # don't allow the sed command to completely eliminate the filename.\n    test -z \"$dstfile\" && dstfile=`basename \"$dst\"`\n\n    # Make a couple of temp file names in the proper directory.\n    dsttmp=$dstdir/_inst.$$_\n    rmtmp=$dstdir/_rm.$$_\n\n    # Trap to clean up those temp files at exit.\n    trap 'status=$?; rm -f \"$dsttmp\" \"$rmtmp\" && exit $status' 0\n    trap '(exit $?); exit' 1 2 13 15\n\n    # Move or copy the file name to the temp name\n    $doit $instcmd \"$src\" \"$dsttmp\" &&\n\n    # and set any options; do chmod last to preserve setuid bits.\n    #\n    # If any of these fail, we abort the whole thing.  If we want to\n    # ignore errors from any of these, just make sure not to ignore\n    # errors from the above \"$doit $instcmd $src $dsttmp\" command.\n    #\n    { test -z \"$chowncmd\" || $doit $chowncmd \"$dsttmp\"; } \\\n      && { test -z \"$chgrpcmd\" || $doit $chgrpcmd \"$dsttmp\"; } \\\n      && { test -z \"$stripcmd\" || $doit $stripcmd \"$dsttmp\"; } \\\n      && { test -z \"$chmodcmd\" || $doit $chmodcmd \"$dsttmp\"; } &&\n\n    # Now remove or move aside any old file at destination location.  We\n    # try this two ways since rm can't unlink itself on some systems and\n    # the destination file might be busy for other reasons.  In this case,\n    # the final cleanup might fail but the new file should still install\n    # successfully.\n    {\n      if test -f \"$dstdir/$dstfile\"; then\n        $doit $rmcmd -f \"$dstdir/$dstfile\" 2>/dev/null \\\n        || $doit $mvcmd -f \"$dstdir/$dstfile\" \"$rmtmp\" 2>/dev/null \\\n        || {\n\t  echo \"$0: cannot unlink or rename $dstdir/$dstfile\" >&2\n\t  (exit 1); exit\n        }\n      else\n        :\n      fi\n    } &&\n\n    # Now rename the file to the real destination.\n    $doit $mvcmd \"$dsttmp\" \"$dstdir/$dstfile\"\n  fi || { (exit 1); exit; }\ndone\n\n# The final little trick to \"correctly\" pass the exit status to the exit trap.\n{\n  (exit 0); exit\n}\n\n# Local variables:\n# eval: (add-hook 'write-file-hooks 'time-stamp)\n# time-stamp-start: \"scriptversion=\"\n# time-stamp-format: \"%:y-%02m-%02d.%02H\"\n# time-stamp-end: \"$\"\n# End:\n"
  },
  {
    "path": "inv_1429.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n  </global>\n\n  <plugin label=\"inv\" id=\"1429\" class=\"UtilityPlugin\">\n    <name>Inverter</name>\n    <p>A utility plugin that inverts the signal, also (wrongly) known as a 180 degree phase shift.</p>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n\n      for (pos = 0; pos < sample_count; pos++) {\n        buffer_write(output[pos], -input[pos]);\n      }\n    ]]></callback>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "karaoke_1409.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n  </global>\n\n  <plugin label=\"karaoke\" id=\"1409\" class=\"UtilityPlugin\">\n    <name>Karaoke</name>\n    <p>Attempts to strip the vocals from a stereo signal.</p>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float coef = pow(10.0f, gain * 0.05f) * 0.5f;\n      float m, s;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tm = lin[pos] + rin[pos];\n\ts = lin[pos] - rin[pos];\n        buffer_write(lout[pos], m * coef + s * 0.5f);\n        buffer_write(rout[pos], m * coef - s * 0.5f);\n      }\n    ]]></callback>\n\n    <port label=\"gain\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Vocal volume (dB)</name>\n      <p>Controls the attenuation of the vocal (centre channel) in dB's.</p>\n      <p>The greater the attenuation the greater the loss of stereo field.</p>\n      <range min=\"-70\" max=\"0\"/>\n    </port>\n\n    <port label=\"lin\" dir=\"input\" type=\"audio\">\n      <name>Left in</name>\n    </port>\n\n    <port label=\"rin\" dir=\"input\" type=\"audio\">\n      <name>Right in</name>\n    </port>\n\n    <port label=\"lout\" dir=\"output\" type=\"audio\">\n      <name>Left out</name>\n    </port>\n\n    <port label=\"rout\" dir=\"output\" type=\"audio\">\n      <name>Right out</name>\n    </port>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "ladspa-swh.dtd",
    "content": "<!ELEMENT ladspa (global+,plugin+)>\n<!ATTLIST ladspa version CDATA \"1.0\">\n\n<!ELEMENT global (meta+,code?,p*)>\n\n<!ELEMENT meta EMPTY>\n<!ATTLIST meta name  (maker|copyright|properties) #REQUIRED\n               value CDATA                        #REQUIRED>\n\n<!ELEMENT code (#PCDATA)>\n\n<!ELEMENT p (#PCDATA)>\n\n<!ELEMENT plugin (name,p*,callback+,port+,instance-data*)>\n<!ATTLIST plugin label CDATA #REQUIRED\n                 id    CDATA #REQUIRED>\n\n<!ELEMENT name (#PCDATA)>\n\n<!ELEMENT callback (#PCDATA)>\n<!ATTLIST callback event (run|instatiate|activate|cleanup) #REQUIRED>\n\n<!ELEMENT port (name, range*, p*)>\n<!ATTLIST port label CDATA           #REQUIRED\n               dir   (input|output)  #REQUIRED\n               type  (audio|control) #REQUIRED>\n\n<!ELEMENT range EMPTY>\n<!ATTLIST range min CDATA #REQUIRED\n                max CDATA #REQUIRED>\n\n<!ELEMENT instance-data EMPTY>\n<!ATTLIST instance-data label CDATA #REQUIRED\n                        type  CDATA #REQUIRED>\n"
  },
  {
    "path": "ladspa-util.h",
    "content": "/* Some misc util functions for audio DSP work, written by Steve Harris,\n * December 2000\n *\n *  steve@plugin.org.uk\n */\n\n#ifndef LADSPA_UTIL_H\n#define LADSPA_UTIL_H\n\n#ifndef _USE_MATH_DEFINES\n#define _USE_MATH_DEFINES\n#endif\n\n#include <math.h>\n#include <stdint.h>\n\n#include \"config.h\"\n\n// 16.16 fixpoint\ntypedef union {\n\tint32_t all;\n\tstruct {\n#ifdef WORDS_BIGENDIAN\n\t\tint16_t in;\n\t\tuint16_t fr;\n#else\n\t\tuint16_t fr;\n\t\tint16_t in;\n#endif\n\t} part;\n} fixp16;\n\n// 32.32 fixpoint\ntypedef union {\n\tint64_t all;\n\tstruct {\n#ifdef WORDS_BIGENDIAN\n\t\tint32_t in;\n\t\tuint32_t fr;\n#else\n\t\tuint32_t fr;\n\t\tint32_t in;\n#endif\n\t} part;\n} fixp32;\n\n/* 32 bit \"pointer cast\" union */\ntypedef union {\n        float f;\n        int32_t i;\n} ls_pcast32;\n\n// Sometimes it doesn't get defined, even though it eists and C99 is declared\nlong int lrintf (float x);\n\n// 1.0 / ln(2)\n#define LN2R 1.442695041f\n\n/* detet floating point denormal numbers by comparing them to the smallest\n * normal, crap, but reliable */\n#define DN_CHECK(x, l) if (fabs(x) < 1e-38) printf(\"DN: \"l\"\\n\")\n\n// Denormalise floats, only actually needed for PIII and recent PowerPC\n//#define FLUSH_TO_ZERO(fv) (((*(unsigned int*)&(fv))&0x7f800000)==0)?0.0f:(fv)\n\nstatic inline float flush_to_zero(float f)\n{\n\tls_pcast32 v;\n\n\tv.f = f;\n\n\t// original: return (v.i & 0x7f800000) == 0 ? 0.0f : f;\n\t// version from Tim Blechmann\n\treturn (v.i & 0x7f800000) < 0x08000000 ? 0.0f : f;\n}\n\nstatic inline void round_to_zero(volatile float *f)\n{\n\t*f += 1e-18;\n\t*f -= 1e-18;\n}\n\n/* A set of branchless clipping operations from Laurent de Soras */\n\nstatic inline float f_max(float x, float a)\n{\n\tx -= a;\n\tx += fabs(x);\n\tx *= 0.5;\n\tx += a;\n\n\treturn x;\n}\n\nstatic inline float f_min(float x, float b)\n{\n\tx = b - x;\n\tx += fabs(x);\n\tx *= 0.5;\n\tx = b - x;\n\n\treturn x;\n}\n\nstatic inline float f_clamp(float x, float a, float b)\n{\n\tconst float x1 = fabs(x - a);\n\tconst float x2 = fabs(x - b);\n\n\tx = x1 + a + b;\n\tx -= x2;\n\tx *= 0.5;\n\n\treturn x;\n}\n\n// Limit a value to be l<=v<=u\n#define LIMIT(v,l,u) ((v)<(l)?(l):((v)>(u)?(u):(v)))\n\n// Truncate-to-zero modulo (ANSI C doesn't specify) will only work\n// if -m < v < 2m\n#define MOD(v,m) (v<0?v+m:(v>=m?v-m:v))\n\n// Truncate-to-zero modulo (ANSI C doesn't specify) will only work\n// if v > -m and v < m\n#define NEG_MOD(v,m) ((v)<0?((v)+(m)):(v))\n\n// Convert a value in dB's to a coefficent\n#define DB_CO(g) ((g) > -90.0f ? powf(10.0f, (g) * 0.05f) : 0.0f)\n#define CO_DB(v) (20.0f * log10f(v))\n\n// Linearly interpolate [ = a * (1 - f) + b * f]\n#define LIN_INTERP(f,a,b) ((a) + (f) * ((b) - (a)))\n\n// Cubic interpolation function\nstatic inline float cube_interp(const float fr, const float inm1, const float\n                                in, const float inp1, const float inp2)\n{\n\treturn in + 0.5f * fr * (inp1 - inm1 +\n\t fr * (4.0f * inp1 + 2.0f * inm1 - 5.0f * in - inp2 +\n\t fr * (3.0f * (in - inp1) - inm1 + inp2)));\n}\n\n/* fast sin^2 aproxiamtion, adapted from jan AT rpgfan's posting to the\n * music-dsp list */\nstatic inline float f_sin_sq(float angle)\n{\n\tconst float asqr = angle * angle;\n\tfloat result = -2.39e-08f;\n\n\tresult *= asqr;\n\tresult += 2.7526e-06f;\n\tresult *= asqr;\n\tresult -= 1.98409e-04f;\n\tresult *= asqr;\n\tresult += 8.3333315e-03f;\n\tresult *= asqr;\n\tresult -= 1.666666664e-01f;\n\tresult *= asqr;\n\tresult += 1.0f;\n\tresult *= angle;\n\n\treturn result * result;\n}\n\n#ifdef HAVE_LRINTF\n\n#define f_round(f) lrintf(f)\n\n#define f_abs(j) labs(j)\n\n#else\n\n// Round float to int using IEEE int* hack\nstatic inline int f_round(float f)\n{\n\tls_pcast32 p;\n\n\tp.f = f;\n\tp.f += (3<<22);\n\n\treturn p.i - 0x4b400000;\n}\n\n#define f_abs(j) abs(j)\n\n#endif\n\n// Truncate float to int\nstatic inline int f_trunc(float f)\n{\n\treturn f_round(floorf(f));\n}\n\n/* Andrew Simper's pow(2, x) aproximation from the music-dsp list */\n\n#if 0\n\n/* original */\nstatic inline float f_pow2(float x)\n{\n\tlong *px = (long*)(&x); // store address of float as long pointer\n\tconst float tx = (x-0.5f) + (3<<22); // temporary value for truncation\n\tconst long  lx = *((long*)&tx) - 0x4b400000; // integer power of 2\n\tconst float dx = x-(float)(lx); // float remainder of power of 2\n\n\tx = 1.0f + dx*(0.6960656421638072f + // cubic apporoximation of 2^x\n                   dx*(0.224494337302845f +  // for x in the range [0, 1]\n                   dx*(0.07944023841053369f)));\n\t*px += (lx<<23); // add integer power of 2 to exponent\n\n\treturn x;\n}\n\n#else\n\n/* union version */\nstatic inline float f_pow2(float x)\n{\n\tls_pcast32 *px, tx, lx;\n\tfloat dx;\n\n\tpx = (ls_pcast32 *)&x; // store address of float as long pointer\n\ttx.f = (x-0.5f) + (3<<22); // temporary value for truncation\n\tlx.i = tx.i - 0x4b400000; // integer power of 2\n\tdx = x - (float)lx.i; // float remainder of power of 2\n\n\tx = 1.0f + dx * (0.6960656421638072f + // cubic apporoximation of 2^x\n\t\t   dx * (0.224494337302845f +  // for x in the range [0, 1]\n\t\t   dx * (0.07944023841053369f)));\n\t(*px).i += (lx.i << 23); // add integer power of 2 to exponent\n\n\treturn (*px).f;\n}\n\n#endif\n\n/* Fast exponentiation function, y = e^x */\n#define f_exp(x) f_pow2(x * LN2R)\n\n#endif\n"
  },
  {
    "path": "ladspa.css",
    "content": "/* CSS stylesheet */\n\nladspa:before {\n  content: \"LADSPA Plugin Details\";\n  margin: 0.5em 0em;\n  display: block;\n  font-size: 16pt;\n  font-weight: bold;\n  font-family: helvetica;\n}\n\nladspa {\n  display: block;\n  color: black;\n  margin: 0em 0.5em 0.5em 0.5em;\n  text-align: left;\n  font-size: 10pt;\n  background-color: white;\n}\n\nplugin > name {\n  display: block;\n  color: black;\n  margin: 0.5em 0em;\n  font-weight: bold;\n  font-family: helvetica;\n  font-size: 12pt;\n}\n\nplugin > name:after {\n  content: \" (ID \" counters(id, \".\") \")\";\n}\n\nport > name:before {\n  content: \"Port: \";\n}\n\nport > name {\n  display: block;\n  color: black;\n  margin: 0.5em 0.5em;\n  font-weight: bold;\n  font-family: helvetica;\n  font-size: 12pt;\n}\n\nport > range:before {\n  display: block;\n  margin: 0.5em 1em;\n  content: \"Range: \" attr(min) \" - \" attr(max);\n  font-size: 10pt;\n}\n\nrange {\n  display: block;\n}\n\nglobal {\n  font-size: 10pt;\n}\n\nport:after {\n  content: \"Label: \" attr(label) \" (\" attr(type) \" \" attr(dir) \")\";\n  display: block;\n  margin: 0.5em 1em;\n  font-size: 10pt;\n}\n\ncode:before {\n  margin: 0em -0.5em;\n  content: \"Global code \";\n  display: block;\n  font-family: helvetica;\n  font-weight: bold;\n  font-size: 12pt;\n}\n\ncode {\n  font-size: 10pt;\n  font-family: courier;\n  display: block;\n  white-space: pre;\n  margin: 0.5em 1em;\n}\n\ncallback:before {\n  margin: 0em -0.5em;\n  content: \"Callback: \" attr(event);\n  display: block;\n  font-family: helvetica;\n  font-weight: bold;\n  font-size: 12pt;\n}\n\ncallback {\n  font-size: 10pt;\n  font-family: courier;\n  display: block;\n  white-space: pre;\n  margin: 0.5em 1em;\n}\n\nmeta.first {\n  display: block;\n  content: \"Metadata\";\n}\n\nmeta:after {\n  margin: 0em 1em;\n  text-transform: capitalize;\n  content: attr(name) \": \" attr(value);\n  display: block;\n}\n\nmeta {\n  display: block;\n}\n\np {\n  display: block;\n  margin: 0.5em 1em;\n}\n"
  },
  {
    "path": "ladspa.h",
    "content": "/* ladspa.h\n\n   Linux Audio Developer's Simple Plugin API Version 1.1[provisional,\n   LGPL].  Copyright (C) 2000-2002 Richard W.E. Furse, Paul\n   Barton-Davis, Stefan Westerfeld.\n   \n   This library is free software; you can redistribute it and/or\n   modify it under the terms of the GNU Lesser General Public License\n   as published by the Free Software Foundation; either version 2.1 of\n   the License, or (at your option) any later version.\n   \n   This library is distributed in the hope that it will be useful, but\n   WITHOUT ANY WARRANTY; without even the implied warranty of\n   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\n   Lesser General Public License for more details.\n   \n   You should have received a copy of the GNU Lesser General Public\n   License along with this library; if not, write to the Free Software\n   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307\n   USA. */\n\n#ifndef LADSPA_INCLUDED\n#define LADSPA_INCLUDED\n\n#ifdef __cplusplus\nextern \"C\" {\n#endif\n\n/*****************************************************************************/\n\n/* Overview: \n\n   There is a large number of synthesis packages in use or development\n   on the Linux platform at this time. This API (`The Linux Audio\n   Developer's Simple Plugin API') attempts to give programmers the\n   ability to write simple `plugin' audio processors in C/C++ and link\n   them dynamically (`plug') into a range of these packages (`hosts').\n   It should be possible for any host and any plugin to communicate\n   completely through this interface.\n\n   This API is deliberately short and simple. To achieve compatibility\n   with a range of promising Linux sound synthesis packages it\n   attempts to find the `greatest common divisor' in their logical\n   behaviour. Having said this, certain limiting decisions are\n   implicit, notably the use of a fixed type (LADSPA_Data) for all\n   data transfer and absence of a parameterised `initialisation'\n   phase. See below for the LADSPA_Data typedef.\n\n   Plugins are expected to distinguish between control and audio\n   data. Plugins have `ports' that are inputs or outputs for audio or\n   control data and each plugin is `run' for a `block' corresponding\n   to a short time interval measured in samples. Audio data is\n   communicated using arrays of LADSPA_Data, allowing a block of audio\n   to be processed by the plugin in a single pass. Control data is\n   communicated using single LADSPA_Data values. Control data has a\n   single value at the start of a call to the `run()' or `run_adding()'\n   function, and may be considered to remain this value for its\n   duration. The plugin may assume that all its input and output ports\n   have been connected to the relevant data location (see the\n   `connect_port()' function below) before it is asked to run.\n\n   Plugins will reside in shared object files suitable for dynamic\n   linking by dlopen() and family. The file will provide a number of\n   `plugin types' that can be used to instantiate actual plugins\n   (sometimes known as `plugin instances') that can be connected\n   together to perform tasks.\n\n   This API contains very limited error-handling. */\n\n/*****************************************************************************/\n\n/* Fundamental data type passed in and out of plugin. This data type\n   is used to communicate audio samples and control values. It is\n   assumed that the plugin will work sensibly given any numeric input\n   value although it may have a preferred range (see hints below). \n\n   For audio it is generally assumed that 1.0f is the `0dB' reference\n   amplitude and is a `normal' signal level. */\n\ntypedef float LADSPA_Data;\n\n/*****************************************************************************/\n\n/* Special Plugin Properties: \n \n   Optional features of the plugin type are encapsulated in the\n   LADSPA_Properties type. This is assembled by ORing individual\n   properties together. */\n\ntypedef int LADSPA_Properties;\n\n/* Property LADSPA_PROPERTY_REALTIME indicates that the plugin has a\n   real-time dependency (e.g. listens to a MIDI device) and so its\n   output must not be cached or subject to significant latency. */\n#define LADSPA_PROPERTY_REALTIME        0x1\n\n/* Property LADSPA_PROPERTY_INPLACE_BROKEN indicates that the plugin\n   may cease to work correctly if the host elects to use the same data\n   location for both input and output (see connect_port()). This\n   should be avoided as enabling this flag makes it impossible for\n   hosts to use the plugin to process audio `in-place.' */\n#define LADSPA_PROPERTY_INPLACE_BROKEN  0x2\n\n/* Property LADSPA_PROPERTY_HARD_RT_CAPABLE indicates that the plugin\n   is capable of running not only in a conventional host but also in a\n   `hard real-time' environment. To qualify for this the plugin must\n   satisfy all of the following:\n\n   (1) The plugin must not use malloc(), free() or other heap memory\n   management within its run() or run_adding() functions. All new\n   memory used in run() must be managed via the stack. These\n   restrictions only apply to the run() function.\n\n   (2) The plugin will not attempt to make use of any library\n   functions with the exceptions of functions in the ANSI standard C\n   and C maths libraries, which the host is expected to provide.\n\n   (3) The plugin will not access files, devices, pipes, sockets, IPC\n   or any other mechanism that might result in process or thread\n   blocking.\n      \n   (4) The plugin will take an amount of time to execute a run() or\n   run_adding() call approximately of form (A+B*SampleCount) where A\n   and B depend on the machine and host in use. This amount of time\n   may not depend on input signals or plugin state. The host is left\n   the responsibility to perform timings to estimate upper bounds for\n   A and B. */\n#define LADSPA_PROPERTY_HARD_RT_CAPABLE 0x4\n\n#define LADSPA_IS_REALTIME(x)        ((x) & LADSPA_PROPERTY_REALTIME)\n#define LADSPA_IS_INPLACE_BROKEN(x)  ((x) & LADSPA_PROPERTY_INPLACE_BROKEN)\n#define LADSPA_IS_HARD_RT_CAPABLE(x) ((x) & LADSPA_PROPERTY_HARD_RT_CAPABLE)\n\n/*****************************************************************************/\n\n/* Plugin Ports: \n\n   Plugins have `ports' that are inputs or outputs for audio or\n   data. Ports can communicate arrays of LADSPA_Data (for audio\n   inputs/outputs) or single LADSPA_Data values (for control\n   input/outputs). This information is encapsulated in the\n   LADSPA_PortDescriptor type which is assembled by ORing individual\n   properties together.\n\n   Note that a port must be an input or an output port but not both\n   and that a port must be a control or audio port but not both. */\n\ntypedef int LADSPA_PortDescriptor;\n\n/* Property LADSPA_PORT_INPUT indicates that the port is an input. */\n#define LADSPA_PORT_INPUT   0x1\n\n/* Property LADSPA_PORT_OUTPUT indicates that the port is an output. */\n#define LADSPA_PORT_OUTPUT  0x2\n\n/* Property LADSPA_PORT_CONTROL indicates that the port is a control\n   port. */\n#define LADSPA_PORT_CONTROL 0x4\n\n/* Property LADSPA_PORT_AUDIO indicates that the port is a audio\n   port. */\n#define LADSPA_PORT_AUDIO   0x8\n\n#define LADSPA_IS_PORT_INPUT(x)   ((x) & LADSPA_PORT_INPUT)\n#define LADSPA_IS_PORT_OUTPUT(x)  ((x) & LADSPA_PORT_OUTPUT)\n#define LADSPA_IS_PORT_CONTROL(x) ((x) & LADSPA_PORT_CONTROL)\n#define LADSPA_IS_PORT_AUDIO(x)   ((x) & LADSPA_PORT_AUDIO)\n\n/*****************************************************************************/\n\n/* Plugin Port Range Hints: \n\n   The host may wish to provide a representation of data entering or\n   leaving a plugin (e.g. to generate a GUI automatically). To make\n   this more meaningful, the plugin should provide `hints' to the host\n   describing the usual values taken by the data.\n   \n   Note that these are only hints. The host may ignore them and the\n   plugin must not assume that data supplied to it is meaningful. If\n   the plugin receives invalid input data it is expected to continue\n   to run without failure and, where possible, produce a sensible\n   output (e.g. a high-pass filter given a negative cutoff frequency\n   might switch to an all-pass mode).\n    \n   Hints are meaningful for all input and output ports but hints for\n   input control ports are expected to be particularly useful.\n   \n   More hint information is encapsulated in the\n   LADSPA_PortRangeHintDescriptor type which is assembled by ORing\n   individual hint types together. Hints may require further\n   LowerBound and UpperBound information.\n\n   All the hint information for a particular port is aggregated in the\n   LADSPA_PortRangeHint structure. */\n\ntypedef int LADSPA_PortRangeHintDescriptor;\n\n/* Hint LADSPA_HINT_BOUNDED_BELOW indicates that the LowerBound field\n   of the LADSPA_PortRangeHint should be considered meaningful. The\n   value in this field should be considered the (inclusive) lower\n   bound of the valid range. If LADSPA_HINT_SAMPLE_RATE is also\n   specified then the value of LowerBound should be multiplied by the\n   sample rate. */\n#define LADSPA_HINT_BOUNDED_BELOW   0x1\n\n/* Hint LADSPA_HINT_BOUNDED_ABOVE indicates that the UpperBound field\n   of the LADSPA_PortRangeHint should be considered meaningful. The\n   value in this field should be considered the (inclusive) upper\n   bound of the valid range. If LADSPA_HINT_SAMPLE_RATE is also\n   specified then the value of UpperBound should be multiplied by the\n   sample rate. */\n#define LADSPA_HINT_BOUNDED_ABOVE   0x2\n\n/* Hint LADSPA_HINT_TOGGLED indicates that the data item should be\n   considered a Boolean toggle. Data less than or equal to zero should\n   be considered `off' or `false,' and data above zero should be\n   considered `on' or `true.' LADSPA_HINT_TOGGLED may not be used in\n   conjunction with any other hint except LADSPA_HINT_DEFAULT_0 or\n   LADSPA_HINT_DEFAULT_1. */\n#define LADSPA_HINT_TOGGLED         0x4\n\n/* Hint LADSPA_HINT_SAMPLE_RATE indicates that any bounds specified\n   should be interpreted as multiples of the sample rate. For\n   instance, a frequency range from 0Hz to the Nyquist frequency (half\n   the sample rate) could be requested by this hint in conjunction\n   with LowerBound = 0 and UpperBound = 0.5. Hosts that support bounds\n   at all must support this hint to retain meaning. */\n#define LADSPA_HINT_SAMPLE_RATE     0x8\n\n/* Hint LADSPA_HINT_LOGARITHMIC indicates that it is likely that the\n   user will find it more intuitive to view values using a logarithmic\n   scale. This is particularly useful for frequencies and gains. */\n#define LADSPA_HINT_LOGARITHMIC     0x10\n\n/* Hint LADSPA_HINT_INTEGER indicates that a user interface would\n   probably wish to provide a stepped control taking only integer\n   values. Any bounds set should be slightly wider than the actual\n   integer range required to avoid floating point rounding errors. For\n   instance, the integer set {0,1,2,3} might be described as [-0.1,\n   3.1]. */\n#define LADSPA_HINT_INTEGER         0x20\n\n/* The various LADSPA_HINT_HAS_DEFAULT_* hints indicate a `normal'\n   value for the port that is sensible as a default. For instance,\n   this value is suitable for use as an initial value in a user\n   interface or as a value the host might assign to a control port\n   when the user has not provided one. Defaults are encoded using a\n   mask so only one default may be specified for a port. Some of the\n   hints make use of lower and upper bounds, in which case the\n   relevant bound or bounds must be available and\n   LADSPA_HINT_SAMPLE_RATE must be applied as usual. The resulting\n   default must be rounded if LADSPA_HINT_INTEGER is present. Default\n   values were introduced in LADSPA v1.1. */\n#define LADSPA_HINT_DEFAULT_MASK    0x3C0\n\n/* This default values indicates that no default is provided. */\n#define LADSPA_HINT_DEFAULT_NONE    0x0\n\n/* This default hint indicates that the suggested lower bound for the\n   port should be used. */\n#define LADSPA_HINT_DEFAULT_MINIMUM 0x40\n\n/* This default hint indicates that a low value between the suggested\n   lower and upper bounds should be chosen. For ports with\n   LADSPA_HINT_LOGARITHMIC, this should be exp(log(lower) * 0.75 +\n   log(upper) * 0.25). Otherwise, this should be (lower * 0.75 + upper\n   * 0.25). */\n#define LADSPA_HINT_DEFAULT_LOW     0x80\n\n/* This default hint indicates that a middle value between the\n   suggested lower and upper bounds should be chosen. For ports with\n   LADSPA_HINT_LOGARITHMIC, this should be exp(log(lower) * 0.5 +\n   log(upper) * 0.5). Otherwise, this should be (lower * 0.5 + upper *\n   0.5). */\n#define LADSPA_HINT_DEFAULT_MIDDLE  0xC0\n\n/* This default hint indicates that a high value between the suggested\n   lower and upper bounds should be chosen. For ports with\n   LADSPA_HINT_LOGARITHMIC, this should be exp(log(lower) * 0.25 +\n   log(upper) * 0.75). Otherwise, this should be (lower * 0.25 + upper\n   * 0.75). */\n#define LADSPA_HINT_DEFAULT_HIGH    0x100\n\n/* This default hint indicates that the suggested upper bound for the\n   port should be used. */\n#define LADSPA_HINT_DEFAULT_MAXIMUM 0x140\n\n/* This default hint indicates that the number 0 should be used. Note\n   that this default may be used in conjunction with\n   LADSPA_HINT_TOGGLED. */\n#define LADSPA_HINT_DEFAULT_0       0x200\n\n/* This default hint indicates that the number 1 should be used. Note\n   that this default may be used in conjunction with\n   LADSPA_HINT_TOGGLED. */\n#define LADSPA_HINT_DEFAULT_1       0x240\n\n/* This default hint indicates that the number 100 should be used. */\n#define LADSPA_HINT_DEFAULT_100     0x280\n\n/* This default hint indicates that the Hz frequency of `concert A'\n   should be used. This will be 440 unless the host uses an unusual\n   tuning convention, in which case it may be within a few Hz. */\n#define LADSPA_HINT_DEFAULT_440     0x2C0\n\n#define LADSPA_IS_HINT_BOUNDED_BELOW(x) ((x) & LADSPA_HINT_BOUNDED_BELOW)\n#define LADSPA_IS_HINT_BOUNDED_ABOVE(x) ((x) & LADSPA_HINT_BOUNDED_ABOVE)\n#define LADSPA_IS_HINT_TOGGLED(x)       ((x) & LADSPA_HINT_TOGGLED)\n#define LADSPA_IS_HINT_SAMPLE_RATE(x)   ((x) & LADSPA_HINT_SAMPLE_RATE)\n#define LADSPA_IS_HINT_LOGARITHMIC(x)   ((x) & LADSPA_HINT_LOGARITHMIC)\n#define LADSPA_IS_HINT_INTEGER(x)       ((x) & LADSPA_HINT_INTEGER)\n\n#define LADSPA_IS_HINT_HAS_DEFAULT(x)   ((x) & LADSPA_HINT_DEFAULT_MASK)\n#define LADSPA_IS_HINT_DEFAULT_MINIMUM(x)  (((x) & LADSPA_HINT_DEFAULT_MASK)  \\\n                                         == LADSPA_HINT_DEFAULT_MINIMUM)\n#define LADSPA_IS_HINT_DEFAULT_LOW(x)      (((x) & LADSPA_HINT_DEFAULT_MASK)  \\\n                                         == LADSPA_HINT_DEFAULT_LOW)\n#define LADSPA_IS_HINT_DEFAULT_MIDDLE(x)   (((x) & LADSPA_HINT_DEFAULT_MASK)  \\\n                                         == LADSPA_HINT_DEFAULT_MIDDLE)\n#define LADSPA_IS_HINT_DEFAULT_HIGH(x)     (((x) & LADSPA_HINT_DEFAULT_MASK)  \\\n                                         == LADSPA_HINT_DEFAULT_HIGH)\n#define LADSPA_IS_HINT_DEFAULT_MAXIMUM(x)  (((x) & LADSPA_HINT_DEFAULT_MASK)  \\\n                                         == LADSPA_HINT_DEFAULT_MAXIMUM)\n#define LADSPA_IS_HINT_DEFAULT_0(x)        (((x) & LADSPA_HINT_DEFAULT_MASK)  \\\n                                         == LADSPA_HINT_DEFAULT_0)\n#define LADSPA_IS_HINT_DEFAULT_1(x)        (((x) & LADSPA_HINT_DEFAULT_MASK)  \\\n                                         == LADSPA_HINT_DEFAULT_1)\n#define LADSPA_IS_HINT_DEFAULT_100(x)      (((x) & LADSPA_HINT_DEFAULT_MASK)  \\\n                                         == LADSPA_HINT_DEFAULT_100)\n#define LADSPA_IS_HINT_DEFAULT_440(x)      (((x) & LADSPA_HINT_DEFAULT_MASK)  \\\n                                         == LADSPA_HINT_DEFAULT_440)\n\ntypedef struct _LADSPA_PortRangeHint {\n\n  /* Hints about the port. */\n  LADSPA_PortRangeHintDescriptor HintDescriptor;\n\n  /* Meaningful when hint LADSPA_HINT_BOUNDED_BELOW is active. When\n     LADSPA_HINT_SAMPLE_RATE is also active then this value should be\n     multiplied by the relevant sample rate. */\n  LADSPA_Data LowerBound;\n\n  /* Meaningful when hint LADSPA_HINT_BOUNDED_ABOVE is active. When\n     LADSPA_HINT_SAMPLE_RATE is also active then this value should be\n     multiplied by the relevant sample rate. */\n  LADSPA_Data UpperBound;\n\n} LADSPA_PortRangeHint;\n\n/*****************************************************************************/\n\n/* Plugin Handles: \n\n   This plugin handle indicates a particular instance of the plugin\n   concerned. It is valid to compare this to NULL (0 for C++) but\n   otherwise the host should not attempt to interpret it. The plugin\n   may use it to reference internal instance data. */\n\ntypedef void * LADSPA_Handle;\n\n/*****************************************************************************/\n\n/* Descriptor for a Type of Plugin: \n\n   This structure is used to describe a plugin type. It provides a\n   number of functions to examine the type, instantiate it, link it to\n   buffers and workspaces and to run it. */\n\ntypedef struct _LADSPA_Descriptor { \n\n  /* This numeric identifier indicates the plugin type\n     uniquely. Plugin programmers may reserve ranges of IDs from a\n     central body to avoid clashes. Hosts may assume that IDs are\n     below 0x1000000. */\n  unsigned long UniqueID;\n\n  /* This identifier can be used as a unique, case-sensitive\n     identifier for the plugin type within the plugin file. Plugin\n     types should be identified by file and label rather than by index\n     or plugin name, which may be changed in new plugin\n     versions. Labels must not contain white-space characters. */\n  const char * Label;\n\n  /* This indicates a number of properties of the plugin. */\n  LADSPA_Properties Properties;\n\n  /* This member points to the null-terminated name of the plugin\n     (e.g. \"Sine Oscillator\"). */\n  const char * Name;\n\n  /* This member points to the null-terminated string indicating the\n     maker of the plugin. This can be an empty string but not NULL. */\n  const char * Maker;\n\n  /* This member points to the null-terminated string indicating any\n     copyright applying to the plugin. If no Copyright applies the\n     string \"None\" should be used. */\n  const char * Copyright;\n\n  /* This indicates the number of ports (input AND output) present on\n     the plugin. */\n  unsigned long PortCount;\n\n  /* This member indicates an array of port descriptors. Valid indices\n     vary from 0 to PortCount-1. */\n  const LADSPA_PortDescriptor * PortDescriptors;\n\n  /* This member indicates an array of null-terminated strings\n     describing ports (e.g. \"Frequency (Hz)\"). Valid indices vary from\n     0 to PortCount-1. */\n  const char * const * PortNames;\n\n  /* This member indicates an array of range hints for each port (see\n     above). Valid indices vary from 0 to PortCount-1. */\n  const LADSPA_PortRangeHint * PortRangeHints;\n\n  /* This may be used by the plugin developer to pass any custom\n     implementation data into an instantiate call. It must not be used\n     or interpreted by the host. It is expected that most plugin\n     writers will not use this facility as LADSPA_Handle should be\n     used to hold instance data. */\n  void * ImplementationData;\n\n  /* This member is a function pointer that instantiates a plugin. A\n     handle is returned indicating the new plugin instance. The\n     instantiation function accepts a sample rate as a parameter. The\n     plugin descriptor from which this instantiate function was found\n     must also be passed. This function must return NULL if\n     instantiation fails. \n\n     Note that instance initialisation should generally occur in\n     activate() rather than here. */\n  LADSPA_Handle (*instantiate)(const struct _LADSPA_Descriptor * Descriptor,\n                               unsigned long                     SampleRate);\n\n  /* This member is a function pointer that connects a port on an\n     instantiated plugin to a memory location at which a block of data\n     for the port will be read/written. The data location is expected\n     to be an array of LADSPA_Data for audio ports or a single\n     LADSPA_Data value for control ports. Memory issues will be\n     managed by the host. The plugin must read/write the data at these\n     locations every time run() or run_adding() is called and the data\n     present at the time of this connection call should not be\n     considered meaningful.\n\n     connect_port() may be called more than once for a plugin instance\n     to allow the host to change the buffers that the plugin is\n     reading or writing. These calls may be made before or after\n     activate() or deactivate() calls.\n\n     connect_port() must be called at least once for each port before\n     run() or run_adding() is called. When working with blocks of\n     LADSPA_Data the plugin should pay careful attention to the block\n     size passed to the run function as the block allocated may only\n     just be large enough to contain the block of samples.\n\n     Plugin writers should be aware that the host may elect to use the\n     same buffer for more than one port and even use the same buffer\n     for both input and output (see LADSPA_PROPERTY_INPLACE_BROKEN).\n     However, overlapped buffers or use of a single buffer for both\n     audio and control data may result in unexpected behaviour. */\n   void (*connect_port)(LADSPA_Handle Instance,\n                        unsigned long Port,\n                        LADSPA_Data * DataLocation);\n\n  /* This member is a function pointer that initialises a plugin\n     instance and activates it for use. This is separated from\n     instantiate() to aid real-time support and so that hosts can\n     reinitialise a plugin instance by calling deactivate() and then\n     activate(). In this case the plugin instance must reset all state\n     information dependent on the history of the plugin instance\n     except for any data locations provided by connect_port() and any\n     gain set by set_run_adding_gain(). If there is nothing for\n     activate() to do then the plugin writer may provide a NULL rather\n     than an empty function.\n\n     When present, hosts must call this function once before run() (or\n     run_adding()) is called for the first time. This call should be\n     made as close to the run() call as possible and indicates to\n     real-time plugins that they are now live. Plugins should not rely\n     on a prompt call to run() after activate(). activate() may not be\n     called again unless deactivate() is called first. Note that\n     connect_port() may be called before or after a call to\n     activate(). */\n  void (*activate)(LADSPA_Handle Instance);\n\n  /* This method is a function pointer that runs an instance of a\n     plugin for a block. Two parameters are required: the first is a\n     handle to the particular instance to be run and the second\n     indicates the block size (in samples) for which the plugin\n     instance may run.\n\n     Note that if an activate() function exists then it must be called\n     before run() or run_adding(). If deactivate() is called for a\n     plugin instance then the plugin instance may not be reused until\n     activate() has been called again.\n\n     If the plugin has the property LADSPA_PROPERTY_HARD_RT_CAPABLE\n     then there are various things that the plugin should not do\n     within the run() or run_adding() functions (see above). */\n  void (*run)(LADSPA_Handle Instance,\n              unsigned long SampleCount);\n\n  /* This method is a function pointer that runs an instance of a\n     plugin for a block. This has identical behaviour to run() except\n     in the way data is output from the plugin. When run() is used,\n     values are written directly to the memory areas associated with\n     the output ports. However when run_adding() is called, values\n     must be added to the values already present in the memory\n     areas. Furthermore, output values written must be scaled by the\n     current gain set by set_run_adding_gain() (see below) before\n     addition.\n\n     run_adding() is optional. When it is not provided by a plugin,\n     this function pointer must be set to NULL. When it is provided,\n     the function set_run_adding_gain() must be provided also. */\n  void (*run_adding)(LADSPA_Handle Instance,\n\t\t     unsigned long SampleCount);\n\n  /* This method is a function pointer that sets the output gain for\n     use when run_adding() is called (see above). If this function is\n     never called the gain is assumed to default to 1. Gain\n     information should be retained when activate() or deactivate()\n     are called.\n\n     This function should be provided by the plugin if and only if the\n     run_adding() function is provided. When it is absent this\n     function pointer must be set to NULL. */\n  void (*set_run_adding_gain)(LADSPA_Handle Instance,\n\t\t\t      LADSPA_Data   Gain);\n\n  /* This is the counterpart to activate() (see above). If there is\n     nothing for deactivate() to do then the plugin writer may provide\n     a NULL rather than an empty function.\n\n     Hosts must deactivate all activated units after they have been\n     run() (or run_adding()) for the last time. This call should be\n     made as close to the last run() call as possible and indicates to\n     real-time plugins that they are no longer live. Plugins should\n     not rely on prompt deactivation. Note that connect_port() may be\n     called before or after a call to deactivate().\n\n     Deactivation is not similar to pausing as the plugin instance\n     will be reinitialised when activate() is called to reuse it. */\n  void (*deactivate)(LADSPA_Handle Instance);\n\n  /* Once an instance of a plugin has been finished with it can be\n     deleted using the following function. The instance handle passed\n     ceases to be valid after this call.\n  \n     If activate() was called for a plugin instance then a\n     corresponding call to deactivate() must be made before cleanup()\n     is called. */\n  void (*cleanup)(LADSPA_Handle Instance);\n\n} LADSPA_Descriptor;\n\n/**********************************************************************/\n\n/* Accessing a Plugin: */\n\n/* The exact mechanism by which plugins are loaded is host-dependent,\n   however all most hosts will need to know is the name of shared\n   object file containing the plugin types. To allow multiple hosts to\n   share plugin types, hosts may wish to check for environment\n   variable LADSPA_PATH. If present, this should contain a\n   colon-separated path indicating directories that should be searched\n   (in order) when loading plugin types.\n\n   A plugin programmer must include a function called\n   \"ladspa_descriptor\" with the following function prototype within\n   the shared object file. This function will have C-style linkage (if\n   you are using C++ this is taken care of by the `extern \"C\"' clause\n   at the top of the file).\n\n   A host will find the plugin shared object file by one means or\n   another, find the ladspa_descriptor() function, call it, and\n   proceed from there.\n\n   Plugin types are accessed by index (not ID) using values from 0\n   upwards. Out of range indexes must result in this function\n   returning NULL, so the plugin count can be determined by checking\n   for the least index that results in NULL being returned. */\n\n\n#ifdef _WIN32\n__declspec(dllexport)\n#endif\nconst LADSPA_Descriptor * ladspa_descriptor(unsigned long Index);\n\n/* Datatype corresponding to the ladspa_descriptor() function. */\ntypedef const LADSPA_Descriptor * \n(*LADSPA_Descriptor_Function)(unsigned long Index);\n\n/**********************************************************************/\n\n#ifdef __cplusplus\n}\n#endif\n\n#endif /* LADSPA_INCLUDED */\n\n/* EOF */\n"
  },
  {
    "path": "latency_1914.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"ladspa-util.h\"\n    </code>\n  </global>\n\n  <plugin label=\"artificialLatency\" id=\"1914\" class=\"UtilityPlugin\">\n    <name>Artificial latency</name>\n    <p>Reports its  delay value as systemic latency. Does nothing else, *this is not a delay*.</p>\n    <p>Can be used to correct for latency between channels.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      fs = s_rate;\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      const int delay_fr = f_round(delay * 0.001 * fs);\n\n      if (input != output) {\n        for (pos = 0; pos < sample_count; pos++) {\n          buffer_write(output[pos], input[pos]);\n        }\n      }\n      *(plugin_data->latency) = (float)delay_fr;\n    ]]></callback>\n\n    <port label=\"delay\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Delay (ms)</name>\n      <range min=\"0\" max=\"10000\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"latency\" dir=\"output\" type=\"control\">\n      <name>latency</name>\n    </port>\n\n    <instance-data label=\"fs\" type=\"float\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "lcr_delay_1436.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"ladspa-util.h\"\n      #include \"util/biquad.h\"\n    </code>\n  </global>\n\n  <plugin label=\"lcrDelay\" id=\"1436\" class=\"DelayPlugin\">\n    <name>L/C/R Delay</name>\n    <p>This is a left/centre/right delay with feedback, based on the one in the Korg Trinity. Requested by Marek Peteraj.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      int buffer_size = 32768;\n\n      fs = s_rate;\n      while (buffer_size < fs * 2.7f) {\n\tbuffer_size *= 2;\n      }\n      buffer = calloc(buffer_size, sizeof(LADSPA_Data));\n      buffer_mask = buffer_size - 1;\n      buffer_pos = 0;\n      last_ll = 0.0f;\n      last_cl = 0.0f;\n      last_rl = 0.0f;\n      last_ld = 0.0f;\n      last_cd = 0.0f;\n      last_rd = 0.0f;\n\n      filters = malloc(2 * sizeof(biquad));\n    ]]></callback>\n      \n    <callback event=\"activate\"><![CDATA[\n      memset(buffer, 0, (buffer_mask + 1) * sizeof(LADSPA_Data));\n      last_ll = 0.0f;\n      last_cl = 0.0f;\n      last_rl = 0.0f;\n      last_ld = 0.0f;\n      last_cd = 0.0f;\n      last_rd = 0.0f;\n      biquad_init(filters);\n      biquad_init(filters + 1);\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->filters);\n      free(plugin_data->buffer);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      const float sc_r = 1.0f / (float)sample_count;\n      const float spr_t = 0.5f + spread * 0.01f;\n      const float spr_o = 0.5f - spread * 0.01f;\n      float fb = feedback * 0.01f;\n      float ll, cl, rl, ld, cd, rd;\n      float ll_d, cl_d, rl_d, ld_d, cd_d, rd_d;\n      float left, right;\n      float fbs; /* Feedback signal */\n\n      if (fb < -0.99f) {\n\tfb = -0.99f;\n      } else if (fb > 0.99f) {\n\tfb = 0.99f;\n      }\n\n      ls_set_params(filters, fs * 0.0001f * powf(2.0f, low_d * 0.12f),\n\t\t    -0.5f * low_d, 0.5f, fs);\n      hs_set_params(filters + 1, fs * (0.41f - 0.0001f *\n\t\t    powf(2.0f, high_d * 0.12f)), -70.0f, 0.9f, fs);\n\n      ll = last_ll;\t\t\t\t/* Start value of Left Level */\n      ll_d = (llev * 0.01f - last_ll) * sc_r; \t/* Delta for Left Level */\n      cl = last_cl;\n      cl_d = (clev * 0.01f - last_cl) * sc_r;\n      rl = last_rl;\n      rl_d = (rlev * 0.01f - last_rl) * sc_r;\n\n      ld = last_ld;\n      ld_d = (ldel * fs * 0.001f - last_ld) * sc_r;\n      cd = last_cd;\n      cd_d = (cdel * fs * 0.001f - last_cd) * sc_r;\n      rd = last_rd;\n      rd_d = (rdel * fs * 0.001f - last_rd) * sc_r;\n\n      for (pos = 0; pos < sample_count; pos++) {\n        /* Increment linear interpolators */\n\tll += ll_d;\n\trl += rl_d;\n\tcl += cl_d;\n\tld += ld_d;\n\trd += rd_d;\n\tcd += cd_d;\n\n\t/* Write input into delay line */\n\tbuffer[buffer_pos] = in_l[pos] + in_r[pos];\n\t/* Add feedback, must be done afterwards for case where C delay = 0 */\n\tfbs = buffer[(buffer_pos - f_round(cd)) & buffer_mask] * fb;\n\tfbs = flush_to_zero(fbs);\n\tfbs = biquad_run(filters, fbs);\n\tfbs = biquad_run(filters + 1, fbs);\n\tbuffer[buffer_pos] += fbs;\n\n\t/* Outputs from left and right delay beffers + centre mix */\n        left  = buffer[(buffer_pos - f_round(ld)) & buffer_mask] * ll +\n                buffer[(buffer_pos - f_round(cd)) & buffer_mask] * cl;\n        right = buffer[(buffer_pos - f_round(rd)) & buffer_mask] * rl +\n                buffer[(buffer_pos - f_round(cd)) & buffer_mask] * cl;\n\n\t/* Left and right channel outs */\n\tbuffer_write(out_l[pos], in_l[pos] * (1.0f - wet) +\n\t\t\t(left * spr_t + right * spr_o) * wet);\n        buffer_write(out_r[pos], in_r[pos] * (1.0f - wet) +\n\t\t\t(left * spr_o + right * spr_t) * wet);\n\n\tbuffer_pos = (buffer_pos + 1) & buffer_mask;\n      }\n\n      plugin_data->last_ll = ll;\n      plugin_data->last_cl = cl;\n      plugin_data->last_rl = rl;\n      plugin_data->last_ld = ld;\n      plugin_data->last_cd = cd;\n      plugin_data->last_rd = rd;\n      plugin_data->buffer_pos = buffer_pos;\n    ]]></callback>\n\n    <port label=\"ldel\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>L delay (ms)</name>\n      <p>The delay of the left output in milliseconds.</p>\n      <range min=\"0\" max=\"2700\"/>\n    </port>\n\n    <port label=\"llev\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>L level</name>\n      <p>The level of the left output.</p>\n      <range min=\"0\" max=\"50\"/>\n    </port>\n\n    <port label=\"cdel\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>C delay (ms)</name>\n      <p>The delay of the centre output in milliseconds.</p>\n      <range min=\"0\" max=\"2700\"/>\n    </port>\n\n    <port label=\"clev\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>C level</name>\n      <p>The level of the centre output.</p>\n      <range min=\"0\" max=\"50\"/>\n    </port>\n\n    <port label=\"rdel\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>R delay (ms)</name>\n      <p>The delay of the right output in milliseconds.</p>\n      <range min=\"0\" max=\"2700\"/>\n    </port>\n\n    <port label=\"rlev\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>R level</name>\n      <p>The level of the right output.</p>\n      <range min=\"0\" max=\"50\"/>\n    </port>\n\n    <port label=\"feedback\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Feedback</name>\n      <p>The amount of the C delay output that is mixed back into the delay.</p>\n      <range min=\"-100\" max=\"100\"/>\n    </port>\n\n    <port label=\"high_d\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>High damp (%)</name>\n      <p>The damping of the high frequencies in the feedback path.</p>\n      <range min=\"0\" max=\"100\"/>\n    </port>\n\n    <port label=\"low_d\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Low damp (%)</name>\n      <p>The damping of the low frequencies in the feedback path.</p>\n      <range min=\"0\" max=\"100\"/>\n    </port>\n\n    <port label=\"spread\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Spread</name>\n      <p>The width of the stereo image.</p>\n      <range min=\"0\" max=\"50\"/>\n    </port>\n\n    <port label=\"wet\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Dry/Wet level</name>\n      <p>The amounts of the input and effect mixed to produce the output.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"in_l\" dir=\"input\" type=\"audio\">\n      <name>L input</name>\n    </port>\n\n    <port label=\"in_r\" dir=\"input\" type=\"audio\">\n      <name>R input</name>\n    </port>\n\n    <port label=\"out_l\" dir=\"output\" type=\"audio\">\n      <name>L output</name>\n    </port>\n\n    <port label=\"out_r\" dir=\"output\" type=\"audio\">\n      <name>R output</name>\n    </port>\n\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_pos\" type=\"unsigned int\" />\n    <instance-data label=\"buffer_mask\" type=\"unsigned int\" />\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"last_ll\" type=\"float\" />\n    <instance-data label=\"last_cl\" type=\"float\" />\n    <instance-data label=\"last_rl\" type=\"float\" />\n    <instance-data label=\"last_ld\" type=\"float\" />\n    <instance-data label=\"last_cd\" type=\"float\" />\n    <instance-data label=\"last_rd\" type=\"float\" />\n    <instance-data label=\"filters\" type=\"biquad *\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "lowpass_iir_1891.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Alexander Ehlert &lt;mag@glame.de&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code>\n\t\t\t#include \"config.h\"\n\t\t\t#include \"util/iir.h\"\n\t\t\t#include \"ladspa-util.h\"\n                        \n\t\t</code>\n\t</global>\n\n\t<plugin label=\"lowpass_iir\" id=\"1891\" class=\"LowpassPlugin\">\n\t\t<name>Glame Lowpass Filter</name>\n                <p> IIR lowpass filter based using chebishev coefficients. The filter allows you to tweak the number of stages used for\n                filtering. Every stage adds two more poles, which leads to a steeper dropoff. More stages need more CPU power. This\n                filter was ported from the glame multitrack editor to ladspa.\n                </p>\n\n                <callback event=\"instantiate\">\n                  sample_rate = s_rate;\n                </callback>\n\t\t<callback event=\"run\">\n                  chebyshev(iirf, gt, 2*CLAMP((int)stages,1,10), IIR_STAGE_LOWPASS, cutoff/(float)sample_rate, 0.5f);\n                  iir_process_buffer_ns_5(iirf, gt, input, output, sample_count,RUN_ADDING);\n\n                  // Unused variable\n                  (void)(run_adding_gain);\n                </callback>\n\n                <callback event=\"activate\">                  \n                  gt = init_iir_stage(IIR_STAGE_LOWPASS,10,3,2);\n                  iirf = init_iirf_t(gt);\n                  chebyshev(iirf, gt, 2*CLAMP(f_round(*(plugin_data->stages)),1,10), IIR_STAGE_LOWPASS, \n                            *(plugin_data->cutoff)/(float)sample_rate, 0.5f);\n                </callback>\n\n                <callback event=\"cleanup\">\n                  free_iirf_t(plugin_data->iirf, plugin_data->gt);\n                  free_iir_stage(plugin_data->gt);\n                </callback>\n\n                <port label=\"cutoff\" dir=\"input\" type=\"control\" hint=\"default_high, sample_rate, logarithmic\">\n\t\t\t<name>Cutoff Frequency</name>\n \t\t\t<range min=\"0.0001\" max=\"0.45\"/>\n\t\t</port>\n                \n                <port label=\"stages\" dir=\"input\" type=\"control\" hint=\"default_1, integer\">\n\t\t\t<name>Stages(2 poles per stage)</name>\n\t\t\t<range min=\"1.0\" max=\"10.0\"/>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n            \n                <instance-data label=\"iirf\" type=\"iirf_t*\"/>\n                <instance-data label=\"gt\" type=\"iir_stage_t*\"/>  \n                <instance-data label=\"sample_rate\" type=\"long\"/>           \n\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "ls_filter_1908.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"ladspa-util.h\"\n      #include \"util/ls_filter.h\"\n    </code>\n  </global>\n\n  <plugin label=\"lsFilter\" id=\"1908\" class=\"FilterPlugin\">\n    <name>LS Filter</name>\n    <p>This is a filter created for the LinkSampler project - its designed to closely follow the filter used in giga sampler.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      filt = malloc(sizeof(ls_filt));\n      fs = s_rate;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      ls_filt_init(filt);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      const ls_filt_type t = (ls_filt_type)f_round(type);\n\n      ls_filt_setup(filt, t, cutoff, resonance, fs);\n\n      for (pos = 0; pos < sample_count; pos++) {\n        buffer_write(output[pos], ls_filt_run(filt, input[pos]));\n      }\n\t\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->filt);\n    ]]></callback>\n\n    <port label=\"type\" dir=\"input\" type=\"control\" hint=\"default_0, integer\">\n      <name>Filter type (0=LP, 1=BP, 2=HP)</name>\n      <p>The type of the filter, 0 for low pass, 1 for band pass, 2 for high pass.</p>\n      <range min=\"0\" max=\"2\"/>\n    </port>\n\n    <port label=\"cutoff\" dir=\"input\" type=\"control\" hint=\"default_middle, logarithmic, sample_rate\">\n      <name>Cutoff frequency (Hz)</name>\n      <p>Controls the frequency at which the filter starts to effect the audio signal.</p>\n      <p>eg. a lowpass filter with a cutoff frequency of 1000 Hz will only let frequencies below 1000 Hz through.</p>\n      <range min=\"0.002\" max=\"0.5\"/>\n    </port>\n\n    <port label=\"resonance\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Resonance</name>\n      <p>Creates a peak at the cutoff frequency, for the classic overdriven filter sound. At high values the peak at the cutoff will overwhelm the filtered signal.</p>\n      <range min=\"0.0\" max=\"1.0\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"filt\" type=\"ls_filt *\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "makestub.pl",
    "content": "#!/usr/bin/perl -w\n\nuse List::MoreUtils qw(any);\nuse XML::Parser;\n\n$xml_line = 1;\n\nif (@ARGV != 1) {\n\tdie \"Usage: $0 <xml file>\";\n}\n\n$filename = $ARGV[0];\n$run_adding_broken = 0;\n\n$xmlp = new XML::Parser(Style => 'Tree', ParseParamEnt => 1, ErrorContext => 3, NoLWP => 1);\n@tree = $xmlp -> parsefile($filename);\n\nopen(XML, $filename);\n@xml_source = <XML>;\n\n@required_calls = ('instantiate', 'connect_port', 'cleanup');\n\n$root = $tree[0];\nif ($$root[0] ne \"ladspa\") {\n\tdie \"This doesn't look like a valid ladspa description file\";\n}\n\n# Pointer to <ladspa> element\n$ladspa = $root->[1];\n\nif ($ladspa->[3] ne \"global\") {\n\tdie \"Can't find global section. Should be immediately after ladspa\\n\";\n}\n\n@globtags = @{ $ladspa->[4] };\nfor ($i=3; $i<@globtags; $i+=4) {\n\t$foo = $globtags[$i];\n\tunless (ref($foo)) {\n\t\tif ($foo eq \"meta\") {\n\t\t\t$global{$globtags[$i+1]->[0]->{'name'}} = $globtags[$i+1]->[0]->{'value'};\n\t\t}\n\t\tif ($foo eq \"include\") {\n\t\t\tpush(@includes, $globtags[$i+1]->[0]->{'file'});\n\t\t}\n\t\tif ($foo eq \"code\") {\n\t\t\t$g_code = $globtags[$i+1]->[2];\n\t\t\t$g_code =~ s/^\\s*\\n//;\n\t\t\t$g_code =~ s/\\t/        /g;\n\t\t\t$g_code =~ /^( *)/;\n\t\t\t$xml_indent = \" \" x length($1);\n\t\t\t$g_code =~ s/(^|\\n)$xml_indent/$1/g;\n\t\t\t$g_code =~ s/\\s+$//;\n\t\t\t$global_code .= $g_code.\"\\n\\n\";\n\t\t}\n\t}\n}\n\nfor (my $i=7; $i<@{$ladspa}; $i+=4) {\n\t$foo = $ladspa->[$i];\n\tif ($foo eq \"plugin\") {\n\t\t&process_plugin($ladspa->[$i+1]);\n\t\tpush(@allports, @ports);\n\t\t@ports = ();\n\t}\n}\n\n# General headers\nprint <<EOB;\n\\#include <stdlib.h>\n\\#include <string.h>\n\\#ifndef _WIN32\n\\#include \"config.h\"\n\\#endif\n\n\\#ifdef ENABLE_NLS\n\\#include <libintl.h>\n\\#endif\n\n\\#define         _ISOC9X_SOURCE  1\n\\#define         _ISOC99_SOURCE  1\n\\#define         __USE_ISOC99    1\n\\#define         __USE_ISOC9X    1\n\n\\#ifndef _USE_MATH_DEFINES\n\\#define _USE_MATH_DEFINES\n\\#endif\n\\#include <math.h>\n\n\\#include \"ladspa.h\"\n\n\\#ifdef _WIN32\n\\#define _WINDOWS_DLL_EXPORT_ __declspec(dllexport)\nint bIsFirstTime = 1;\n#ifdef _MSC_VER\nstatic void swh_init(); // forward declaration\n#else\nstatic void __attribute__((constructor)) swh_init(); // forward declaration\n#endif\n\\#else\n\\#define _WINDOWS_DLL_EXPORT_ \n\\#endif\n\nEOB\n\nfor $inc (@includes) {\n\tprint \"#include \\\"$inc\\\"\\n\";\n}\nunless ($global_code) {\n\t$global_code = \"\";\n}\nmy $glob_code_start = find_el_line(\"code\");\nprint \"#line $glob_code_start \\\"$filename\\\"\\n\" if $glob_code_start && $xml_line;\nprint \"\\n$global_code\";\n\nmy $n = 0;\n$last_plugin = \"\";\nfor $port (@allports) {\n\tif ($port->{'plugin'} ne $last_plugin) {\n\t\t$n = 0;\n\t\t$last_plugin = $port->{'plugin'};\n\t}\n\t$pl = uc($port->{'plugin'}.'_'.$port->{'label'});\n\tprintf(\"#define %-30s $n\\n\", $pl);\n\t$n++;\n}\n\nprint $globals;\nprint <<EOB;\n\n_WINDOWS_DLL_EXPORT_\nconst LADSPA_Descriptor *ladspa_descriptor(unsigned long index) {\n\n\\#ifdef _WIN32\n\tif (bIsFirstTime) {\n\t\tswh_init();\n\t\tbIsFirstTime = 0;\n\t}\n\\#endif\n\tswitch (index) {\nEOB\nmy $pic = 0;\nfor $plugin (@plugins) {\n\tprint \"\tcase $pic:\\n\t\treturn ${plugin}Descriptor;\\n\";\n\t$pic++;\n}\nprint \"\tdefault:\\n\t\treturn NULL;\\n\t}\\n}\\n\\n\";\nprint $code;\n# Headers for init section\nprint <<EOB;\n#ifdef _MSC_VER\nstatic void swh_init() {\n#else\nstatic void __attribute__((constructor)) swh_init() {\n#endif\n\tchar **port_names;\n\tLADSPA_PortDescriptor *port_descriptors;\n\tLADSPA_PortRangeHint *port_range_hints;\n\n\\#ifdef ENABLE_NLS\n\\#define D_(s) dgettext(PACKAGE, s)\n\tbindtextdomain(PACKAGE, PACKAGE_LOCALE_DIR);\n\\#else\n\\#define D_(s) (s)\n\\#endif\n\nEOB\nprint $init_code;\nprint \"}\\n\";\n\nprint <<EOB;\n#ifdef _MSC_VER\nstatic void swh_fini() {\n#else\nstatic void __attribute__((destructor)) swh_fini() {\n#endif\n$fini_code\n}\n\n#ifdef _MSC_VER\n#include <windows.h>\nBOOL APIENTRY DllMain(HMODULE hModule,\n\tDWORD  ul_reason_for_call,\n\tLPVOID lpReserved)\n{\n\tswitch (ul_reason_for_call)\n\t{\n\tcase DLL_PROCESS_ATTACH:\n\t\tswh_init();\n\t\tbreak;\n\tcase DLL_PROCESS_DETACH:\n\t\tswh_fini();\n\t\tbreak;\n\t}\n\treturn TRUE;\n}\n#endif\nEOB\n\nsub process_plugin {\n\tlocal($tree) = @_;\n\tmy $name = \"noName\";\n\tmy $maker = $global{'maker'};\n\tmy $copyright = $global{'copyright'};\n\tmy $prop = $global{'properties'};\n\n\tunless ($prop) {\n\t\t$prop = \"\";\n\t}\n\t@props = split(/( |,)/, $prop);\n\t$properties = \"\";\n\tfor $p (@props) {\n\t\tunless ($p =~ /^\\s*,*\\s*$/) {\n\t\t\tif ($properties) {\n\t\t\t\t$properties .= \" | \";\n\t\t\t}\n\t\t\t$properties .= \"LADSPA_PROPERTY_\\U$p\"\n\t\t}\n\t}\n\tunless ($properties) {\n\t\t$properties = \"0\";\n\t}\n\n\t$id = $tree->[0]->{'id'};\n\t$label = $tree->[0]->{'label'};\n\tif (!$id) {\n\t\tdie \"Plugin '$label' has no id\";\n\t}\n\tif (!$label) {\n\t\tdie \"Plugin #$id has no label\";\n\t}\n\tpush(@plugins, $label);\n\n\t%i_data = ();\n\tfor ($i=3; $i<@{$tree}; $i+=4) {\n\t\t$foo = $tree->[$i];\n\t\tif ($foo eq \"name\") {\n\t\t\t$name = $tree->[$i+1]->[2];\n\t\t}\n\t\tif ($foo eq \"callback\") {\n\t\t\tpush(@callbacks, $tree->[$i+1]->[0]->{'event'});\n\t\t\t$callback_code{$label.'_'.$tree->[$i+1]->[0]->{'event'}} = $tree->[$i+1]->[2];\n\t\t\t$callback_unused_vars{$label.'_'.$tree->[$i+1]->[0]->{'event'}} = $tree->[$i+1]->[0]->{'unused-vars'} // \"\";\n\t\t}\n\t\tif ($foo eq \"port\") {\n\t\t\tpush(@ports, &process_port($tree->[$i+1]));\n\t\t}\n\t\tif ($foo eq \"instance-data\") {\n\t\t\t$i_data{$tree->[$i+1]->[0]->{'label'}} =\n\t\t\t $tree->[$i+1]->[0]->{'type'};\n\t\t}\n\t}\n\n\tmy @calls = ();\n\tmy %MARK = ();\n\tgrep($MARK{$_}++, @callbacks, @required_calls);\n\t@calls = sort keys %MARK;\n\t\n\tfor $call (@calls) {\n\t\tmy $call_start = find_el_line(\"callback\", \"event\" => $call);\n\t\tif ($call_start) {\n\t\t\t$call_start++;\n\t\t\tif ($xml_line ) {\n\t\t\t\t$cc_marker = \"#line $call_start \\\"$filename\\\"\\n\";\n \t\t\t} else {\n\t\t\t\t$cc_marker = \"\";\n\t\t\t}\n\t\t} else {\n\t\t\t$cc_marker = \"\";\n\t\t}\n\n\t\tif ($call eq \"instantiate\") {\n\t\t\t$c = \"\";\n\t\t\tif ($callback_code{\"${label}_instantiate\"}) {\n\t\t\t\t$c .= \"\\t\\u$label *plugin_data = (\\u$label *)calloc(1, sizeof(\\u$label));\\n\";\n\t\t\t\tfor $var (sort keys %i_data) {\n\t\t\t\t\tif ($i_data{$var} =~ /\\*/) {\n\t\t\t\t\t\t$c .= \"\\t$i_data{$var}$var = NULL;\\n\";\n\t\t\t\t\t} else {\n\t\t\t\t\t\t#$c .= \"\\t$i_data{$var} $var = 0;\\n\";\n\t\t\t\t\t\t$c .= \"\\t$i_data{$var} $var;\\n\";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$c .= \"\\n\".$cc_marker;\n\t\t\t\t$c .= reindent_callback($callback_code{\"${label}_instantiate\"}).\"\\n\\n\";\n\t\t\t\tfor $var (sort keys %i_data) {\n\t\t\t\t\t$c .= \"\\tplugin_data->$var = $var;\\n\";\n\t\t\t\t}\n\t\t\t\t$c .= \"\\n\\treturn (LADSPA_Handle)plugin_data;\"\n\t\t\t} else {\n\t\t\t\t$c .= \"\\t\\u$label *plugin_data = (\\u$label *)calloc(1, sizeof(\\u$label));\\n\";\n\t\t\t\t$c .= \"\\tplugin_data->run_adding_gain = 1.0f;\\n\";\n\t\t\t\t$c .= \"\\n\\treturn (LADSPA_Handle)plugin_data;\"\n\t\t\t}\n\t\t\t$code .= <<EOB\nstatic LADSPA_Handle instantiate\\u$label(\n const LADSPA_Descriptor *descriptor,\n unsigned long s_rate) {\n${c}\n}\n\nEOB\n\t\t}\n\n\t\tif ($call eq \"connect_port\") {\n\t\t\t$code .= <<EOB;\nstatic void connectPort\\u$label(\n LADSPA_Handle instance,\n unsigned long port,\n LADSPA_Data *data) {\n\t\\u$label *plugin;\n\n\tplugin = (\\u$label *)instance;\n\tswitch (port) {\nEOB\n\t\t\tfor $port (@ports) {\n\t\t\t\t$sw = uc($label.'_'.$port->{'label'});\n\t\t\t\tif ($port->{'watch'}) {\n\t\t\t\t\t$watch = \"\\n\t\tplugin->$port->{'watch'} = 1;\";\n\t\t\t\t} else {\n\t\t\t\t\t$watch = \"\";\n\t\t\t\t}\n\t\t\t\t$code .= <<EOB;\n\tcase $sw:\n\t\tplugin->$port->{label} = data;$watch\n\t\tbreak;\nEOB\n\t\t\t}\n\t\t\t$code .= <<EOB;\n\t}\n}\n\nEOB\n\t\t}\n\n\t\tif ($call eq \"activate\") {\n\t\t\t$c = \"\";\n\t\t\tif ($callback_code{\"${label}_activate\"}) {\n\t\t\t\t$c .= \"\\t\\u$label *plugin_data = (\\u$label *)instance;\\n\";\n\t\t\t\tfor $var (sort keys %i_data) {\n\t\t\t\t\tif ($i_data{$var} =~ /\\*/) {\n\t\t\t\t\t\t$c .= \"\\t$i_data{$var}$var = plugin_data->$var;\\n\";\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$c .= \"\\t$i_data{$var} $var = plugin_data->$var;\\n\";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$c .= $cc_marker;\n\t\t\t\t$c .= reindent_callback($callback_code{\"${label}_activate\"}).\"\\n\";\n\t\t\t\tfor $var (sort keys %i_data) {\n\t\t\t\t\t$c .= \"\\tplugin_data->$var = $var;\\n\";\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t$c = \"\";\n\t\t\t}\n\t\t\t$code .= <<EOB;\nstatic void activate\\u$label(LADSPA_Handle instance) {\n${c}\n}\n\nEOB\n\t\t}\n\n\t\tif ($call eq \"cleanup\") {\n\t\t\tif ($callback_code{\"${label}_cleanup\"}) {\n\t\t\t\t@unused_vars = split(/[ ,]+/, $callback_unused_vars{\"${label}_cleanup\"});\n\t\t\t\t$c = $cc_marker;\n\t\t\t\tunless (any { $_ eq 'plugin_data' } @unused_vars) {\n\t\t\t\t\t$c .= \"\\t\\u$label *plugin_data = (\\u$label *)instance;\\n\";\n\t\t\t\t}\n\t\t\t\t$c .= reindent_callback($callback_code{\"${label}_cleanup\"}).\"\\n\";\n\t\t\t} else {\n\t\t\t\t$c = \"\";\n\t\t\t}\n\t\t\t$code .= <<EOB;\nstatic void cleanup\\u$label(LADSPA_Handle instance) {\n${c}\tfree(instance);\n}\n\nEOB\n\t\t}\n\n\t\tif ($call eq \"run\") {\n\t\t\tfor $port (@ports) {\n\t\t\t\tmy $const;\n\t\t\t\tif ($port->{'dir'} eq \"input\") {\n\t\t\t\t\t$const = \"const \";\n\t\t\t\t} else {\n\t\t\t\t\t$const = \"\";\n\t\t\t\t}\n\t\t\t\tif ($port->{'type'} eq \"audio\") {\n\t\t\t\t\t$run_code .= \"\\n\t/* $port->{name} (array of floats of length sample_count) */\\n\";\n\t\t\t\t\t$run_code .= \"\t${const}LADSPA_Data * const \".$port->{'label'}.\" = plugin_data->\".$port->{'label'}.\";\\n\";\n\t\t\t\t} elsif ($port->{'dir'} eq \"input\") {\n\t\t\t\t\t$run_code .= \"\\n\t/* $port->{name} (float value) */\\n\";\n\t\t\t\t\t$run_code .= \"\tconst LADSPA_Data \".$port->{'label'}.\" = *(plugin_data->\".$port->{'label'}.\");\\n\";\n\t\t\t\t}\n\t\t\t}\n\t\t\t@unused_vars = split(/[ ,]+/, $callback_unused_vars{\"${label}_run\"});\n\t\t\tfor $var (sort keys %i_data) {\n\t\t\t\tunless (any { $_ eq $var } @unused_vars) {\n\t\t\t\t\t$run_code .= \"\t$i_data{$var} $var = plugin_data->$var;\\n\";\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($callback_code{\"${label}_run\"}) {\n\t\t\t\t$cb_code = $callback_code{\"${label}_run\"};\n\t\t\t\t$cb_code =~ s/^\\n//;\n\t\t\t\t$cb_code =~ s/\\t/        /g;\n\t\t\t\t$cb_code =~ /^( *)/;\n\t\t\t\t$xml_indent = \" \" x length($1);\n\t\t\t\t$cb_code =~ s/(^|\\n)$xml_indent/$1\\t/g;\n\t\t\t\t$cb_code =~ s/\\s+$//;\n\t\t\t} else {\n\t\t\t\t$cb_code = <<EOB;\n\tunsigned int pos;\n\tfor (pos = 0; pos < sample_count; pos++) {\n\t\t// Process samples in here\n\t}\nEOB\n\t\t\t}\n\t\t\t$run_code .= <<EOB;\n\n$cc_marker$cb_code\n}\nEOB\n\t\t\t$code .= <<EOB;\n#undef buffer_write\n#undef RUN_ADDING\n#undef RUN_REPLACING\n\n#define buffer_write(b, v) (b = v)\n#define RUN_ADDING    0\n#define RUN_REPLACING 1\n\nstatic void run\\u$label(LADSPA_Handle instance, unsigned long sample_count) {\n\t\\u$label *plugin_data = (\\u$label *)instance;\nEOB\n\t\t\tif ($run_code =~ /run_adding_gain/) {\n\t\t\t\t$code .= \"\\tLADSPA_Data run_adding_gain = plugin_data->run_adding_gain;\\n\";\n\t\t\t}\n\t\t\t$code .= $run_code;\n\t\t\t$code .= <<EOB;\n#undef buffer_write\n#undef RUN_ADDING\n#undef RUN_REPLACING\n\n#define buffer_write(b, v) (b += (v) * run_adding_gain)\n#define RUN_ADDING    1\n#define RUN_REPLACING 0\n\nstatic void setRunAddingGain\\u$label(LADSPA_Handle instance, LADSPA_Data gain) {\n\t((\\u$label *)instance)->run_adding_gain = gain;\n}\n\nstatic void runAdding\\u$label(LADSPA_Handle instance, unsigned long sample_count) {\n\t\\u$label *plugin_data = (\\u$label *)instance;\n\tLADSPA_Data run_adding_gain = plugin_data->run_adding_gain;\n$run_code\nEOB\n\t\t}\n\t}\n\t$run_code = \"\";\n\n\t$globals .= \"\nstatic LADSPA_Descriptor *${label}Descriptor = NULL;\\n\";\n\n\t$num_ports = @ports;\n\t$init_code .= <<EOB;\n\n\t${label}Descriptor =\n\t (LADSPA_Descriptor *)malloc(sizeof(LADSPA_Descriptor));\n\n\tif (${label}Descriptor) {\n\t\t${label}Descriptor->UniqueID = $id;\n\t\t${label}Descriptor->Label = \"$label\";\n\t\t${label}Descriptor->Properties =\n\t\t $properties;\n\t\t${label}Descriptor->Name =\n\t\t D_(\"$name\");\n\t\t${label}Descriptor->Maker =\n\t\t \"$maker\";\n\t\t${label}Descriptor->Copyright =\n\t\t \"$copyright\";\n\t\t${label}Descriptor->PortCount = $num_ports;\n\n\t\tport_descriptors = (LADSPA_PortDescriptor *)calloc($num_ports,\n\t\t sizeof(LADSPA_PortDescriptor));\n\t\t${label}Descriptor->PortDescriptors =\n\t\t (const LADSPA_PortDescriptor *)port_descriptors;\n\n\t\tport_range_hints = (LADSPA_PortRangeHint *)calloc($num_ports,\n\t\t sizeof(LADSPA_PortRangeHint));\n\t\t${label}Descriptor->PortRangeHints =\n\t\t (const LADSPA_PortRangeHint *)port_range_hints;\n\n\t\tport_names = (char **)calloc($num_ports, sizeof(char*));\n\t\t${label}Descriptor->PortNames =\n\t\t (const char **)port_names;\n\nEOB\n\n\t$fini_code .= <<EOB;\n\tif (${label}Descriptor) {\n\t\tfree((LADSPA_PortDescriptor *)${label}Descriptor->PortDescriptors);\n\t\tfree((char **)${label}Descriptor->PortNames);\n\t\tfree((LADSPA_PortRangeHint *)${label}Descriptor->PortRangeHints);\n\t\tfree(${label}Descriptor);\n\t}\n\t${label}Descriptor = NULL;\nEOB\n\n\t$globals .= \"\\ntypedef struct {\\n\";\n\tfor $port (@ports) {\n\t\tmy $min = \"\";\n\t\tmy $max = \"\";\n\n\t\t$l = uc($port->{'label'});\n\t\t$d = uc($port->{'dir'});\n\t\t$t = uc($port->{'type'});\n\t\t$n = $port->{'name'};\n\t\t$p = uc($label);\n\t\t$min = $port->{'min'} if defined $port->{'min'};\n\t\t$max = $port->{'max'} if defined $port->{'max'};\n\t\tif (defined $port->{'hints'}) {\n\t\t\t$hints = $port->{'hints'};\n\t\t} else {\n\t\t\t$hints = \"\";\n\t\t}\n\t\t$init_code .= <<EOB;\n\t\t/* Parameters for $n */\n\t\tport_descriptors[${p}_$l] =\n\t\t LADSPA_PORT_$d | LADSPA_PORT_$t;\n\t\tport_names[${p}_$l] =\n\t\t D_(\"$n\");\nEOB\n\t\tif ($min ne \"\" && $max ne \"\") {\n\t\t\t$init_code .= <<EOB;\n\t\tport_range_hints[${p}_$l].HintDescriptor =\n\t\t LADSPA_HINT_BOUNDED_BELOW | LADSPA_HINT_BOUNDED_ABOVE$hints;\n\t\tport_range_hints[${p}_$l].LowerBound = $min;\n\t\tport_range_hints[${p}_$l].UpperBound = $max;\nEOB\n\t\t} elsif ($min ne \"\") {\n\t\t\t$init_code .= <<EOB;\n\t\tport_range_hints[${p}_$l].HintDescriptor =\n\t\t LADSPA_HINT_BOUNDED_BELOW;\n\t\tport_range_hints[${p}_$l].LowerBound = $min;\nEOB\n\t\t} elsif ($max ne \"\") {\n\t\t\t$init_code .= <<EOB;\n\t\tport_range_hints[${p}_$l].HintDescriptor =\n\t\t LADSPA_HINT_BOUNDED_ABOVE;\n\t\tport_range_hints[${p}_$l].UpperBound = $max;\nEOB\n\t\t} else {\n\t\t\t$init_code .= <<EOB;\n\t\tport_range_hints[${p}_$l].HintDescriptor = 0;\nEOB\n\t\t}\n\n\t\t$init_code .= \"\\n\";\n\n\t\t$globals .= \"\tLADSPA_Data *$port->{label};\\n\";\n\t}\n\n\t# Add instance data to struct\n\tfor $var (sort keys %i_data) {\n\t\tif ($i_data{$var} =~ /\\*/) {\n\t\t\t$globals .= sprintf(\"\\t%-13s$var;\\n\", $i_data{$var});\n\t\t} else {\n\t\t\t$globals .= sprintf(\"\\t%-12s $var;\\n\", $i_data{$var});\n\t\t}\n\t}\n\t$globals .= \"\\tLADSPA_Data run_adding_gain;\\n\";\n\t$globals .= \"} \\u$label;\\n\";\n\n\t@possible = ('activate', 'run', 'deactivate');\n\tfor $call (@possible) {\n\t\t$cb_pointers{$call} = 'NULL';\n\t}\n\tpush(@pointers, @callbacks);\n\tpush(@pointers, @required_calls);\n\tfor $call (@pointers) {\n\t\t$meth_call = $call;\n\t\t$meth_call =~ s/_([a-z])/\\u$1/g;\n\t\t$cb_pointers{$call} = \"$meth_call\\u$label\";\n\t}\n\n\tfor $call (sort keys %cb_pointers) {\n\t\t$init_code .= \"\t\t${label}Descriptor->$call = $cb_pointers{$call};\\n\";\n\t}\n\tif (!$run_adding_broken) {\n\t\t$init_code .= \"\t\t${label}Descriptor->run_adding = runAdding\\u$label;\\n\";\n\t\t$init_code .= \"\t\t${label}Descriptor->set_run_adding_gain = setRunAddingGain\\u$label;\\n\";\n\t} else {\n\t\t$init_code .= \"\t\t${label}Descriptor->run_adding = NULL;\\n\";\n\t\t$init_code .= \"\t\t${label}Descriptor->set_run_adding_gain = NULL;\\n\";\n\t}\n\n\t$init_code .= <<EOB;\n\t}\nEOB\n}\n\nsub process_port {\n\tlocal($tree) = @_;\n\n\t$portcount++;\n\t$pname = \"port_$portcount\";\n\t$$pname{'plugin'} = $label;\n\t$$pname{'number'} = $portcount;\n\t$$pname{'label'} = $tree->[0]->{'label'};\n\t$$pname{'watch'} = $tree->[0]->{'watch'};\n\t$$pname{'dir'} = $tree->[0]->{'dir'};\n\t$$pname{'type'} = $tree->[0]->{'type'};\n\tif (!$$pname{'label'} || !$$pname{'dir'} || !$$pname{'type'}) {\n\t\tdie \"Ports must have a label, dir(ection) and type\";\n\t}\n\n\tmy $hints = \"\";\n\tif ($tree->[0]->{'hint'}) {\n\t\tfor $h (split(/[ ,]+/, $tree->[0]->{'hint'})) {\n\t\t\t$hints .= \" | LADSPA_HINT_\\U$h\";\n\t\t}\n\t}\n\t$$pname{'hints'} = $hints;\n\n\tfor (my $el=3; $el<@{$tree}; $el+=4) {\n\t\t$foo = $tree->[$el];\n\t\tif ($foo eq \"name\") {\n\t\t\t$$pname{'name'} = $tree->[$el+1]->[2];\n\t\t}\n\t\tif ($foo eq \"range\") {\n\t\t\t$$pname{'min'} = $tree->[$el+1]->[0]->{'min'};\n\t\t\t$$pname{'max'} = $tree->[$el+1]->[0]->{'max'};\n\t\t}\n\t}\n\n\treturn \\%$pname;\n}\n\nsub reindent_callback {\n\tlocal ($cb_code) = @_;\n\t$cb_code =~ s/^\\n//;\n\t$cb_code =~ s/\\t/        /g;\n\t$cb_code =~ /^( *)/;\n\t$xml_indent = \" \" x length($1);\n\t$cb_code =~ s/(^|\\n)$xml_indent/$1\\t/g;\n\t$cb_code =~ s/\\s+$//;\n\treturn $cb_code;\n}\n\nsub find_el_line {\n\tlocal ($el, @rest) = @_;\n\n\tmy $cnt = 0;\n\tmy %attrs = ();\n\twhile (@rest) {\n\t\tmy $key = shift @rest;\n\t\t$attrs{$key} = shift @rest;\n\t}\n\tif (%attrs) {\n\t\tmy $in_el = 0;\n\t\tmy $num_attrs = length keys %attrs;\n\t\tmy $matched = 0;\n\t\tfor $line (@xml_source) {\n\t\t\t$cnt++;\n\t\t\t$in_el = 1 if $line =~ /<\\s*$el[ \\n>]/;\n\t\t\tif ($in_el) {\n\t\t\t\tfor $attr (keys %attrs) {\n\t\t\t\t\tmy $val = $attrs{$attr};\n\t\t\t\t\t$matched++ if $line =~ /$attr\\s*=\\s*\"$val\"/;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ($matched >= $num_attrs) {\n\t\t\t\treturn $cnt;\n\t\t\t}\n\n\t\t\tif ($line =~ />/) {\n\t\t\t\t$in_el = 0;\n\t\t\t\t$matched = 0;\n\t\t\t}\n\t\t}\n\t} else {\n\t\tfor $line (@xml_source) {\n\t\t\t$cnt++;\n\t\t\treturn $cnt if $line =~ /<\\s*$el\\s*>/;\n\t\t}\n\t}\n\n\treturn 0;\n}\n"
  },
  {
    "path": "matrix_ms_st_1421.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n  </global>\n\n  <plugin label=\"matrixMSSt\" id=\"1421\" class=\"UtilityPlugin\">\n    <name>Matrix: MS to Stereo</name>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n\n      for (pos = 0; pos < sample_count; pos++) {\n        buffer_write(left[pos], mid[pos] + side[pos] * width);\n        buffer_write(right[pos], mid[pos] - side[pos] * width);\n      }\n    ]]></callback>\n\n    <port label=\"width\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Width</name>\n      <p>The width of the dematrixed stereo field. 1 will give you normal width, 0 will make it completely mono, &lt; 1 will make it narrower and &gt; 1 will make it wider.</p>\n      <range min=\"0\" max=\"2\" />\n    </port>\n\n    <port label=\"mid\" dir=\"input\" type=\"audio\">\n      <name>Mid</name>\n    </port>\n    <port label=\"side\" dir=\"input\" type=\"audio\">\n      <name>Side</name>\n    </port>\n\n    <port label=\"left\" dir=\"output\" type=\"audio\">\n      <name>Left</name>\n    </port>\n    <port label=\"right\" dir=\"output\" type=\"audio\">\n      <name>Right</name>\n    </port>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "matrix_spatialiser_1422.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Joern Nettingsmeier &lt;nettings@folkwang-hochschule.de&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n\t/*\n\t   thanks to Steve Harris for walking me through my first plugin !\n\t*/\n\n\t#include \"ladspa-util.h\"\n\n        /* we use sin/cos panning and start at pi/4. this is the correction factor\n\t   to bring the signal back to unity gain in neutral position.\n\t   it should be 1/x : sin(x) = cos(x) (~1.41421...). but since we are using an\n\t   approximation of sin/cos, we take its equal gain point, which leads to 1.3333...\n\t*/\n\t#define EQUALGAINPOINT_OFFSET 128.0f\n\t#define EQUALGAINPOINT_TO_UNITY 4.0f / 3.0f\n\n\t#define BITSPERCYCLE 10                 /* resolution of the width parameter for */\n\t#define BITSPERQUARTER (BITSPERCYCLE-2) /* one cycle (0-2pi) */\n\n\t/* borrowed code: http://www.dspguru.com/comp.dsp/tricks/alg/sincos.htm\n\t   i'm using a constant of 0.75, which makes the calculations simpler and does\n\t   not yield discontinuities.\n\t   author: Olli Niemitalo (oniemita@mail.student.oulu.fi)\n\t*/\n\tstatic inline void sin_cos_approx(int phasein, float *vsin, float *vcos) {\n\t\t// Modulo phase into quarter, convert to float 0..1\n\t\tfloat modphase = (phasein & ((1<<BITSPERQUARTER) - 1))\n\t\t* 1.0f / (1<<BITSPERQUARTER);\n\t\t// Extract quarter bits\n\t\tint quarter = phasein & (3<<BITSPERQUARTER);\n\t\t// Recognize quarter\n\t\tif (!quarter) {\n\t\t\t// First quarter, angle = 0 .. pi/2\n\t\t\tfloat x = modphase - 0.5f;\n\t\t\tfloat temp = 0.75f - x * x;\n\t\t\t*vsin = temp + x;\n\t\t\t*vcos = temp - x;\n\t\t} else if (quarter == 1<<BITSPERQUARTER) {\n\t\t\t// Second quarter, angle = pi/2 .. pi\n\t\t\tfloat x = 0.5f - modphase;\n\t\t\tfloat temp = 0.75f - x*x;\n\t\t\t*vsin = x + temp;\n\t\t\t*vcos = x - temp;\n\t\t} else if (quarter == 2<<BITSPERQUARTER) {\n\t\t\t// Third quarter, angle = pi .. 1.5pi\n\t\t\tfloat x = modphase - 0.5f;\n\t\t\tfloat temp = x*x - 0.75f;\n\t\t\t*vsin = temp - x;\n\t\t\t*vcos = temp + x;\n\t\t} else {\n\t\t\t// Fourth quarter, angle = 1.5pi..2pi\n\t\t\tfloat x = modphase - 0.5f;\n\t\t\tfloat temp = 0.75f - x*x;\n\t\t\t*vsin = x - temp;\n\t\t\t*vcos = x + temp;\n\t\t}\n\t}\n    ]]></code>\n  </global>\n\n  <plugin label=\"matrixSpatialiser\" id=\"1422\" class=\"UtilityPlugin\">\n    <name>Matrix Spatialiser</name>\n    <p><![CDATA[\n      A simple spatializer that lets you control the width of a stereo signal.\n\n      We convert it into a MS (mid/side) signal, manipulate the gain coefficients\n      with a constant-power panning function, and reconvert to left/right stereo.\n\n      $mid = (i_left + i_right) / 2$\n\n      $side = (i_left - i_right) / 2$\n\n      $width = (-pi/4)..0..(pi/4)$\n\n      $o_left = mid * cos(width + pi/4)$\n      $o_right = side * sin(width + pi/4)$\n\n      {\\small shifted by pi/4, so that 0 is neutral.}\n    ]]></p>\n    <callback event=\"instantiate\"><![CDATA[\n\tcurrent_m_gain = 0.0f;\n\tcurrent_s_gain = 0.0f;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n\tsin_cos_approx(EQUALGAINPOINT_OFFSET, &current_s_gain, &current_m_gain);\n\tcurrent_m_gain *= EQUALGAINPOINT_TO_UNITY; /* normalize the neutral  */\n\tcurrent_s_gain *= EQUALGAINPOINT_TO_UNITY; /* setting to unity gain. */\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n\tunsigned long pos;\n\tLADSPA_Data mid, side;\n\tLADSPA_Data m_gain, s_gain;\n\tint width_ = f_round(width + EQUALGAINPOINT_OFFSET);\n\n\t/* smoothen the gain changes. to spread the curve over the entire\n\t   buffer length (i.e.#sample_count samples), make lp dependent on\n\t   sample_count.\n\t*/\n\tconst float lp = 7.0f / (float) sample_count; /* value found by experiment */\n\tconst float lp_i = 1.0f - lp;\n\n\t/* do approximately the same as\n\t   s_gain = sin(width); m_gain = cos(width);\n\t   but a lot faster:\n\t*/\n\tsin_cos_approx(width_, &s_gain, &m_gain);\n\n\tm_gain *= EQUALGAINPOINT_TO_UNITY; /* normalize the neutral  */\n\ts_gain *= EQUALGAINPOINT_TO_UNITY; /* setting to unity gain. */\n\n\t#ifdef DEBUG\n\t/* do a \"hardware bypass\" if width == 0 */\n\t/* no smoothing here                    */\n\tif (width_ == 128) {\n\t\tfor (pos = 0; pos < sample_count; pos++) {\n\t\tbuffer_write(o_left[pos], i_left[pos]);\n\t\tbuffer_write(o_right[pos], i_right[pos]);\n\t\t}\n\t} else\n\t#endif\n\n\tfor (pos = 0; pos < sample_count; pos++) {\n\t\tcurrent_m_gain = current_m_gain * lp_i + m_gain * lp;\n\t\tcurrent_s_gain = current_s_gain * lp_i + s_gain * lp;\n\t\tmid = (i_left[pos] + i_right[pos]) * 0.5f * current_m_gain;\n\t\tside = (i_left[pos] - i_right[pos]) * 0.5f * current_s_gain;\n\t\tbuffer_write(o_left[pos], mid + side);\n\t\tbuffer_write(o_right[pos], mid - side);\n\t}\n\n\tplugin_data->current_m_gain = current_m_gain;\n\tplugin_data->current_s_gain = current_s_gain;\n    ]]></callback>\n\n    <port label=\"i_left\" dir=\"input\" type=\"audio\">\n      <name>Input L</name>\n    </port>\n    <port label=\"i_right\" dir=\"input\" type=\"audio\">\n      <name>Input R</name>\n    </port>\n    <port label=\"width\" dir=\"input\" type=\"control\" hint=\"integer,default_0\">\n      <name>Width</name>\n      <range min=\"-512\" max=\"512\"/>\n      <p><![CDATA[\n         0 is neutral (unmodified signal)\n\t + 128 is side only (=very wide)\n\t - 128 is mid only (=mono)\n       ]]></p>\n     </port>\n\n    <port label=\"o_left\" dir=\"output\" type=\"audio\">\n      <name>Output L</name>\n    </port>\n    <port label=\"o_right\" dir=\"output\" type=\"audio\">\n      <name>Output R</name>\n    </port>\n\n    <instance-data label=\"current_m_gain\" type=\"LADSPA_Data\" />\n    <instance-data label=\"current_s_gain\" type=\"LADSPA_Data\" />\n  </plugin>\n</ladspa>\n\n"
  },
  {
    "path": "matrix_st_ms_1420.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n  </global>\n\n  <plugin label=\"matrixStMS\" id=\"1420\" class=\"UtilityPlugin\">\n    <name>Matrix: Stereo to MS</name>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n\n      for (pos = 0; pos < sample_count; pos++) {\n        buffer_write(mid[pos], (left[pos] + right[pos]) * 0.5);\n        buffer_write(side[pos], (left[pos] - right[pos]) * 0.5);\n      }\n    ]]></callback>\n\n    <port label=\"left\" dir=\"input\" type=\"audio\">\n      <name>Left</name>\n    </port>\n    <port label=\"right\" dir=\"input\" type=\"audio\">\n      <name>Right</name>\n    </port>\n\n    <port label=\"mid\" dir=\"output\" type=\"audio\">\n      <name>Mid</name>\n    </port>\n    <port label=\"side\" dir=\"output\" type=\"audio\">\n      <name>Side</name>\n    </port>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "mbeq_1197.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code><![CDATA[\n#include \"config.h\"\n\n#ifdef FFTW3\n\n#include <fftw3.h>\n\ntypedef fftwf_plan fft_plan;\ntypedef float fftw_real;\n\n#else\n\n#ifdef EXPLICIT_S\n#include <srfftw.h>\n#else\n#include <rfftw.h>\n#endif //EXPLICIT_S\n\ntypedef rfftw_plan fft_plan;\n\n#endif //FFTW3\n\n#include \"ladspa-util.h\"\n\n#define FFT_LENGTH 1024\n#define OVER_SAMP  4\n#define BANDS      15\n\n\nfloat bands[BANDS] =\n  { 50.00f, 100.00f, 155.56f, 220.00f, 311.13f,\n    440.00f, 622.25f, 880.00f, 1244.51f, 1760.00f, 2489.02f,\n    3519.95, 4978.04f, 9956.08f, 19912.16f };\n\t\t]]></code>\n\t</global>\n\n\t<plugin label=\"mbeq\" id=\"1197\" class=\"MultiEQPlugin\">\n\t\t<name>Multiband EQ</name>\n\t\t<p>This is a fairly typical multiband graphical equalizer. It's implemented using a FFT, so it takes quite a lot of CPU power, but should have less phase effects than an equivalent filter implementation.</p>\n\t\t<p>If the input signal is at too low a sample rate then the top bands will be ignored, the highest useful band will always be a high shelf.</p>\n\n\t\t<callback event=\"instantiate\"><![CDATA[\nint i, bin;\nfloat last_bin, next_bin;\nfloat db;\nfloat hz_per_bin = (float)s_rate / (float)FFT_LENGTH;\n\nin_fifo = calloc(FFT_LENGTH, sizeof(LADSPA_Data));\nout_fifo = calloc(FFT_LENGTH, sizeof(LADSPA_Data));\nout_accum = calloc(FFT_LENGTH * 2, sizeof(LADSPA_Data));\nreal = calloc(FFT_LENGTH, sizeof(fftw_real));\ncomp = calloc(FFT_LENGTH, sizeof(fftw_real));\nwindow = calloc(FFT_LENGTH, sizeof(float));\nbin_base = calloc(FFT_LENGTH/2, sizeof(int));\nbin_delta = calloc(FFT_LENGTH/2, sizeof(float));\nfifo_pos = 0;\n\n#ifdef FFTW3\nplan_rc = fftwf_plan_r2r_1d(FFT_LENGTH, real, comp, FFTW_R2HC, FFTW_MEASURE);\nplan_cr = fftwf_plan_r2r_1d(FFT_LENGTH, comp, real, FFTW_HC2R, FFTW_MEASURE);\n#else\nplan_rc = rfftw_create_plan(FFT_LENGTH, FFTW_REAL_TO_COMPLEX, FFTW_ESTIMATE);\nplan_cr = rfftw_create_plan(FFT_LENGTH, FFTW_COMPLEX_TO_REAL, FFTW_ESTIMATE);\n#endif\n\n// Create raised cosine window table\nfor (i=0; i < FFT_LENGTH; i++) {\n\twindow[i] = -0.5f*cos(2.0f*M_PI*(double)i/(double)FFT_LENGTH)+0.5f;\n\twindow[i] *= 2.0f;\n}\n\n// Create db->coeffiecnt lookup table\ndb_table = malloc(1000 * sizeof(float));\nfor (i=0; i < 1000; i++) {\n\tdb = ((float)i/10) - 70;\n\tdb_table[i] = pow(10.0f, db/20.0f);\n}\n\n// Create FFT bin -> band + delta tables\nbin = 0;\nwhile (bin <= bands[0]/hz_per_bin) {\n\tbin_base[bin] = 0;\n\tbin_delta[bin++] = 0.0f;\n}\nfor (i = 1; i < BANDS-1 && bin < (FFT_LENGTH/2)-1 && bands[i+1] < s_rate/2; i++) {\n\tlast_bin = bin;\n\tnext_bin = (bands[i+1])/hz_per_bin;\n\twhile (bin <= next_bin) {\n\t\tbin_base[bin] = i;\n\t\tbin_delta[bin] = (float)(bin - last_bin) / (float)(next_bin - last_bin);\n\t\tbin++;\n\t}\n}\nfor (; bin < (FFT_LENGTH/2); bin++) {\n\tbin_base[bin] = BANDS-1;\n\tbin_delta[bin] = 0.0f;\n}\n\t\t]]></callback>\n\n\t\t<callback event=\"activate\"><![CDATA[\nfifo_pos = 0;\n\t\t]]></callback>\n\n\t\t<callback event=\"cleanup\"><![CDATA[\n\t\t\tfree(plugin_data->in_fifo);\n\t\t\tfree(plugin_data->out_fifo);\n\t\t\tfree(plugin_data->out_accum);\n\t\t\tfree(plugin_data->real);\n\t\t\tfree(plugin_data->comp);\n\t\t\tfree(plugin_data->window);\n\t\t\tfree(plugin_data->bin_base);\n\t\t\tfree(plugin_data->bin_delta);\n\t\t\tfree(plugin_data->db_table);\n\t\t]]></callback>\n\n\t\t<callback event=\"run\"><![CDATA[\nint i, bin, gain_idx;\nfloat gains[BANDS + 1] =\n  { band_1, band_2, band_3, band_4, band_5, band_6, band_7, band_8, band_9,\n    band_10, band_11, band_12, band_13, band_14, band_15, 0.0f };\nfloat coefs[FFT_LENGTH / 2];\nunsigned long pos;\n\nint step_size = FFT_LENGTH / OVER_SAMP;\nint fft_latency = FFT_LENGTH - step_size;\n\n// Convert gains from dB to co-efficents\nfor (i = 0; i < BANDS; i++) {\n\tgain_idx = (int)((gains[i] * 10) + 700);\n\tgains[i] = db_table[LIMIT(gain_idx, 0, 999)];\n}\n\n// Calculate coefficients for each bin of FFT\ncoefs[0] = 0.0f;\nfor (bin=1; bin < (FFT_LENGTH/2-1); bin++) {\n\tcoefs[bin] = ((1.0f-bin_delta[bin]) * gains[bin_base[bin]])\n\t\t      + (bin_delta[bin] * gains[bin_base[bin]+1]);\n}\n\nif (fifo_pos == 0) {\n\tfifo_pos = fft_latency;\n}\n\nfor (pos = 0; pos < sample_count; pos++) {\n\tin_fifo[fifo_pos] = input[pos];\n\tbuffer_write(output[pos], out_fifo[fifo_pos-fft_latency]);\n\tfifo_pos++;\n\n\t// If the FIFO is full\n\tif (fifo_pos >= FFT_LENGTH) {\n\t\tfifo_pos = fft_latency;\n\n\t\t// Window input FIFO\n\t\tfor (i=0; i < FFT_LENGTH; i++) {\n\t\t\treal[i] = in_fifo[i] * window[i];\n\t\t}\n\n\t\t// Run the real->complex transform\n#ifdef FFTW3\n\t\tfftwf_execute(plan_rc);\n#else\n\t\trfftw_one(plan_rc, real, comp);\n#endif\n\n\t\t// Multiply the bins magnitudes by the coeficients\n\t\tcomp[0] *= coefs[0];\n\t\tfor (i = 1; i < FFT_LENGTH/2; i++) {\n\t\t\tcomp[i] *= coefs[i];\n\t\t\tcomp[FFT_LENGTH-i] *= coefs[i];\n\t\t}\n\n\t\t// Run the complex->real transform\n#ifdef FFTW3\n                fftwf_execute(plan_cr);\n#else\n\t\trfftw_one(plan_cr, comp, real);\n#endif\n\n\t\t// Window into the output accumulator\n\t\tfor (i = 0; i < FFT_LENGTH; i++) {\n\t\t\tout_accum[i] += 0.9186162f * window[i] * real[i]/(FFT_LENGTH * OVER_SAMP);\n\t\t}\n\t\tfor (i = 0; i < step_size; i++) {\n\t\t\tout_fifo[i] = out_accum[i];\n\t\t}\n\n\t\t// Shift output accumulator\n\t\tmemmove(out_accum, out_accum + step_size, FFT_LENGTH*sizeof(LADSPA_Data));\n\n\t\t// Shift input fifo\n\t\tfor (i = 0; i < fft_latency; i++) {\n\t\t\tin_fifo[i] = in_fifo[i+step_size];\n\t\t}\n\t}\n}\n\n// Store the fifo_position\nplugin_data->fifo_pos = fifo_pos;\n\n*(plugin_data->latency) = fft_latency;\n\t\t]]></callback>\n\n\t\t<port label=\"band_1\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>50Hz gain (low shelving)</name>\n\t\t\t<range min=\"-70\" max=\"+30\"/>\n\t\t</port>\n\n\t\t<port label=\"band_2\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>100Hz gain</name>\n\t\t\t<range min=\"-70\" max=\"+30\"/>\n\t\t</port>\n\n\t\t<port label=\"band_3\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>156Hz gain</name>\n\t\t\t<range min=\"-70\" max=\"+30\"/>\n\t\t</port>\n\n\t\t<port label=\"band_4\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>220Hz gain</name>\n\t\t\t<range min=\"-70\" max=\"+30\"/>\n\t\t</port>\n\n\t\t<port label=\"band_5\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>311Hz gain</name>\n\t\t\t<range min=\"-70\" max=\"+30\"/>\n\t\t</port>\n\n\t\t<port label=\"band_6\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>440Hz gain</name>\n\t\t\t<range min=\"-70\" max=\"+30\"/>\n\t\t</port>\n\n\t\t<port label=\"band_7\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>622Hz gain</name>\n\t\t\t<range min=\"-70\" max=\"+30\"/>\n\t\t</port>\n\n\t\t<port label=\"band_8\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>880Hz gain</name>\n\t\t\t<range min=\"-70\" max=\"+30\"/>\n\t\t</port>\n\n\t\t<port label=\"band_9\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>1250Hz gain</name>\n\t\t\t<range min=\"-70\" max=\"+30\"/>\n\t\t</port>\n\n\t\t<port label=\"band_10\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>1750Hz gain</name>\n\t\t\t<range min=\"-70\" max=\"+30\"/>\n\t\t</port>\n\n\t\t<port label=\"band_11\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>2500Hz gain</name>\n\t\t\t<range min=\"-70\" max=\"+30\"/>\n\t\t</port>\n\n\t\t<port label=\"band_12\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>3500Hz gain</name>\n\t\t\t<range min=\"-70\" max=\"+30\"/>\n\t\t</port>\n\n                <port label=\"band_13\" dir=\"input\" type=\"control\" hint=\"default_0\">\n                        <name>5000Hz gain</name>\n                        <range min=\"-70\" max=\"+30\"/>\n                </port>\n\n                <port label=\"band_14\" dir=\"input\" type=\"control\" hint=\"default_0\">\n                        <name>10000Hz gain</name>\n                        <range min=\"-70\" max=\"+30\"/>\n                </port>\n\n                <port label=\"band_15\" dir=\"input\" type=\"control\" hint=\"default_0\">\n                        <name>20000Hz gain</name>\n                        <range min=\"-70\" max=\"+30\"/>\n                </port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n\n\t\t<port label=\"latency\" dir=\"output\" type=\"control\">\n\t\t\t<name>latency</name>\n\t\t</port>\n\n\t\t<instance-data label=\"in_fifo\" type=\"LADSPA_Data *\"/>\n\t\t<instance-data label=\"out_fifo\" type=\"LADSPA_Data *\"/>\n\t\t<instance-data label=\"out_accum\" type=\"LADSPA_Data *\"/>\n\t\t<instance-data label=\"real\" type=\"fftw_real *\"/>\n\t\t<instance-data label=\"comp\" type=\"fftw_real *\"/>\n\t\t<instance-data label=\"window\" type=\"float *\"/>\n\t\t<instance-data label=\"fifo_pos\" type=\"long\"/>\n\t\t<instance-data label=\"db_table\" type=\"float *\"/>\n\t\t<instance-data label=\"bin_base\" type=\"int *\"/>\n\t\t<instance-data label=\"bin_delta\" type=\"float *\"/>\n\t\t<instance-data label=\"plan_rc\" type=\"fft_plan\"/>\n\t\t<instance-data label=\"plan_cr\" type=\"fft_plan\"/>\n<!-- static fft_plan plan_rc = NULL, plan_cr = NULL; -->\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "metadata/Makefile.am",
    "content": "pkgdata_DATA = swh-plugins.rdf swh-aux.rdf swh-scales.rdf\nEXTRA_DIST = lxml2rdf.pl txt2scale.pl scale-points.txt $(pkgdata_DATA)\npkgdatadir = $(datadir)/ladspa/rdf\n\nswh-plugins.rdf: @top_srcdir@/*.xml\n\t./lxml2rdf.pl $(sort $^) > $@\n\txmllint -noout swh-plugins.rdf\n\nswh-scales.rdf: scale-points.txt\n\t./txt2scale.pl scale-points.txt > swh-scales.rdf\n"
  },
  {
    "path": "metadata/lxml2rdf.pl",
    "content": "#!/usr/bin/perl -w\n\nprint <<EOB;\n<?xml version='1.0' encoding='ISO-8859-1'?>\n<!DOCTYPE rdf:RDF [\n        <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'>\n        <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'>\n        <!ENTITY dc 'http://purl.org/dc/elements/1.1/'>\n        <!ENTITY ladspa 'http://ladspa.org/ontology#'>\n]>\n<rdf:RDF xmlns:rdf=\"&rdf;\"\n         xmlns:rdfs=\"&rdfs;\"\n         xmlns:dc=\"&dc;\"\n         xmlns:ladspa=\"&ladspa;\">\n\nEOB\n\n$ocnt = 0;\n\nwhile (<>) {\n\tif (m(<meta\\s+name=\"maker\"\\s+value=\"(.*?)\")i) {\n\t\t$pcreator = $1;\n\t}\n\tif (m(<plugin\\s+label=\"(.*?)\"\\s+id=\"(.*?)\"( class=\"(.*?)\")?>)) {\n\t\t#$plabel = $1;\n\t\t$pid = $2;\n\t\tif ($3) {\n\t\t\t@classes = split(\",\", $4);\n\t\t\t$class = shift @classes;\n\t\t} else {\n\t\t\t$class = \"Plugin\";\n\t\t}\n\t\t%defaults = ();\n\t\t%min = ();\n\t\t%max = ();\n\t\tprint \"  <ladspa:$class rdf:about=\\\"&ladspa;$pid\\\">\\n\";\n\t\twhile ($extra_class = shift @classes) {\n\t\t\tprint \"    <rdf:type rdf:resource=\\\"&ladspa;$extra_class\\\"/>\\n\";\n\t\t}\n\t\tif ($pcreator) {\n\t\t\tprint \"    <dc:creator>$pcreator</dc:creator>\\n\";\n\t\t}\n\t\t$ocnt = 0;\n\t}\n\tif ($ocnt == 0 && m(<name>(.*?)</name>)) {\n\t\tprint \"    <dc:title>$1</dc:title>\\n\";\n\t}\n\tif (m(<port label=\"(.*?)\" dir=\"(.*?)\" type=\"(.*?)\"(\\s+hint=\"(.*?)\")?>)) {\n\t\t$ocnt++;\n\t\tnext if ($3 eq \"audio\");\n\t\tprint \"    <ladspa:hasPort>\\n\";\n\t\tprint \"      <ladspa:\\u$2\\u$3Port rdf:about=\\\"&ladspa;$pid.$ocnt\\\" ladspa:hasLabel=\\\"$1\\\" />\\n\";\n\t\tprint \"    </ladspa:hasPort>\\n\";\n\t\t$hints = $5;\n\t\tif ($hints && $hints =~ m((default_[a-z0-9]+))) {\n\t\t\t$defaults{$ocnt} = $hints;\n\t\t}\n\t}\n\tif (m(<range\\s+min=\"(.*?)\"\\s+max=\"(.*?)\")) {\n\t\t$min{$ocnt} = $1;\n\t\t$max{$ocnt} = $2;\n\t}\n\tif (m(</plugin)) {\n\t\tif (length(%defaults) > 1) {\n\t\t\tprint \"    <ladspa:hasSetting>\\n\";\n\t\t\tprint \"      <ladspa:Default>\\n\";\n\t\t\tfor $i (sort keys %defaults) {\n\t\t\t\t$dp = $defaults{$i} =~ m((default_[a-z0-9]+));\n\t\t\t\tif ($dp) {\n\t\t\t\t\t$hint = $1;\n\t\t\t\t} else {\n\t\t\t\t\t$hint = \"\";\n\t\t\t\t}\n\t\t\t\tif ($hint eq \"default_0\") {\n\t\t\t\t\t$val = 0.0;\n\t\t\t\t} elsif ($hint eq \"default_1\") {\n\t\t\t\t\t$val = 1.0;\n\t\t\t\t} elsif ($hint eq \"default_440\") {\n\t\t\t\t\t$val = 440.0;\n\t\t\t\t} elsif ($hint eq \"default_minimum\") {\n\t\t\t\t\t$val = $min{$i};\n\t\t\t\t} elsif ($hint eq \"default_low\") {\n\t\t\t\t\t$val = $min{$i} * 0.75 + $max{$i} * 0.25;\n\t\t\t\t} elsif ($hint eq \"default_middle\") {\n\t\t\t\t\t$val = ( $min{$i} + $max{$i} ) / 2.0;\n\t\t\t\t} elsif ($hint eq \"default_high\") {\n\t\t\t\t\t$val = $min{$i} * 0.25 + $max{$i} * 0.75;\n\t\t\t\t} elsif ($hint eq \"default_maximum\") {\n\t\t\t\t\t$val = $max{$i};\n\t\t\t\t} else {\n\t\t\t\t\tprint STDERR \"ERROR $defaults{$i}\\n\";\n\t\t\t\t\t$val = \"ERROR\";\n\t\t\t\t}\n\t\t\t\tprint \"        <ladspa:hasPortValue>\\n\";\n\t\t\t\tprint \"          <ladspa:PortValue rdf:value=\\\"$val\\\">\\n\";\n\t\t\t\tprint \"            <ladspa:forPort rdf:resource=\\\"&ladspa;$pid.$i\\\" />\\n\";\n\t\t\t\tprint \"          </ladspa:PortValue>\\n\";\n\t\t\t\tprint \"        </ladspa:hasPortValue>\\n\";\n\t\t\t}\n\t\t\tprint \"      </ladspa:Default>\\n\";\n\t\t\tprint \"    </ladspa:hasSetting>\\n\";\n\t\t}\n\t\tprint \"  </ladspa:$class>\\n\\n\";\n\t}\n}\n\nprint \"</rdf:RDF>\\n\";\n"
  },
  {
    "path": "metadata/scale-points.txt",
    "content": "1416.0\n\t1\tsine\n\t2\ttriangle\n\t3\tsquare\n\t4\tsaw\n\n1432.1\n\t-1\tdown\n\t1\tup\n\n1185.0\n\t0\tnone\n\t1\thalf wave\n\t2\tfull wave\n\n1415.0\n\t1\tsine\n\t2\ttriangle\n\t3\tsquare\n\t4\tsaw\n\n1410.7\n\t-1\tkey listen\n\t 0\tgate\n\t 1\tbypass\n\n1921.8\n\t-1\tkey listen\n\t 0\tgate\n\t 1\tbypass\n\n1922.8\n\t-1\tkey listen\n\t 0\tgate\n\t 1\tbypass\n\n1200.1\n\t0 \t sine\n\t1 \t triangle\n\t2 \t saw\n\t3 \t square\n\t4 \t S&amp;H\n\n1200.3\n\t0 \t sine\n\t1 \t triangle\n\t2 \t saw\n\t3 \t square\n\t4 \t S&amp;H\n\n1200.5\n\t0 \t sine\n\t1 \t triangle\n\t2 \t saw\n\t3 \t square\n\t4 \t S&amp;H\n\n1200.7\n\t0 \t sine\n\t1 \t triangle\n\t2 \t saw\n\t3 \t square\n\t4 \t S&amp;H\n\n1908.0\n\t0\tLP\n\t1\tBP\n\t2\tHP\n\n1188.0\n\t0\tnone\n\t1\tAM\n\t2\tRM\n\n1189.0\n\t0\tnone\n\t1\tAM\n\t2\tRM\n\n1214.2\n\t0\tnone\n\t1\tLP\n\t2\tHP\n\t3\tBP\n\t4\tBR\n\t5\tAP\n"
  },
  {
    "path": "metadata/swh-aux.rdf",
    "content": "<?xml version='1.0' encoding='ISO-8859-1'?>\n\n<!DOCTYPE rdf:RDF [\n        <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'>\n\t<!ENTITY ladspa 'http://ladspa.org/ontology#'>\n        <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'>\n]>\n<rdf:RDF xmlns:rdf=\"&rdf;\"\n         xmlns:ladspa=\"&ladspa;\"\n         xmlns:rdfs=\"&rdfs;\">\n\n  <rdfs:Class rdf:about=\"&ladspa;SpectralPlugin\" ladspa:hasLabel=\"Spectral\">\n    <rdfs:subClassOf rdf:resource=\"&ladspa;Plugin\" />\n  </rdfs:Class>\n\n  <rdfs:Class rdf:about=\"&ladspa;NotchPlugin\" ladspa:hasLabel=\"Notch\">\n    <rdfs:subClassOf rdf:resource=\"&ladspa;FilterPlugin\" />\n  </rdfs:Class>\n\n</rdf:RDF>\n"
  },
  {
    "path": "metadata/swh-scales.rdf",
    "content": "<?xml version='1.0' encoding='UTF-8'?>\n<!DOCTYPE rdf:RDF [\n        <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'>\n        <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'>\n        <!ENTITY dc 'http://purl.org/dc/elements/1.1/'>\n        <!ENTITY ladspa 'http://ladspa.org/ontology#'>\n]>\n<rdf:RDF xmlns:rdf=\"&rdf;\"\n         xmlns:rdfs=\"&rdfs;\"\n         xmlns:dc=\"&dc;\"\n         xmlns:ladspa=\"&ladspa;\">\n\n<ladspa:InputControlPort rdf:about=\"&ladspa;1416.0\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"1\" ladspa:hasLabel=\"sine\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"2\" ladspa:hasLabel=\"triangle\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"3\" ladspa:hasLabel=\"square\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"4\" ladspa:hasLabel=\"saw\" />\n      </ladspa:hasPoint>\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\n<ladspa:InputControlPort rdf:about=\"&ladspa;1432.1\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"1\" ladspa:hasLabel=\"up\" />\n      </ladspa:hasPoint>\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\n<ladspa:InputControlPort rdf:about=\"&ladspa;1185.0\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"0\" ladspa:hasLabel=\"none\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"1\" ladspa:hasLabel=\"half wave\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"2\" ladspa:hasLabel=\"full wave\" />\n      </ladspa:hasPoint>\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\n<ladspa:InputControlPort rdf:about=\"&ladspa;1415.0\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"1\" ladspa:hasLabel=\"sine\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"2\" ladspa:hasLabel=\"triangle\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"3\" ladspa:hasLabel=\"square\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"4\" ladspa:hasLabel=\"saw\" />\n      </ladspa:hasPoint>\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\n<ladspa:InputControlPort rdf:about=\"&ladspa;1410.7\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"0\" ladspa:hasLabel=\"gate\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"1\" ladspa:hasLabel=\"bypass\" />\n      </ladspa:hasPoint>\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\n<ladspa:InputControlPort rdf:about=\"&ladspa;1921.8\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"0\" ladspa:hasLabel=\"gate\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"1\" ladspa:hasLabel=\"bypass\" />\n      </ladspa:hasPoint>\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\n<ladspa:InputControlPort rdf:about=\"&ladspa;1922.8\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"0\" ladspa:hasLabel=\"gate\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"1\" ladspa:hasLabel=\"bypass\" />\n      </ladspa:hasPoint>\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\n<ladspa:InputControlPort rdf:about=\"&ladspa;1200.1\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"0\" ladspa:hasLabel=\"sine\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"1\" ladspa:hasLabel=\"triangle\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"2\" ladspa:hasLabel=\"saw\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"3\" ladspa:hasLabel=\"square\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"4\" ladspa:hasLabel=\"S&amp;H\" />\n      </ladspa:hasPoint>\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\n<ladspa:InputControlPort rdf:about=\"&ladspa;1200.3\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"0\" ladspa:hasLabel=\"sine\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"1\" ladspa:hasLabel=\"triangle\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"2\" ladspa:hasLabel=\"saw\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"3\" ladspa:hasLabel=\"square\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"4\" ladspa:hasLabel=\"S&amp;H\" />\n      </ladspa:hasPoint>\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\n<ladspa:InputControlPort rdf:about=\"&ladspa;1200.5\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"0\" ladspa:hasLabel=\"sine\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"1\" ladspa:hasLabel=\"triangle\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"2\" ladspa:hasLabel=\"saw\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"3\" ladspa:hasLabel=\"square\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"4\" ladspa:hasLabel=\"S&amp;H\" />\n      </ladspa:hasPoint>\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\n<ladspa:InputControlPort rdf:about=\"&ladspa;1200.7\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"0\" ladspa:hasLabel=\"sine\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"1\" ladspa:hasLabel=\"triangle\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"2\" ladspa:hasLabel=\"saw\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"3\" ladspa:hasLabel=\"square\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"4\" ladspa:hasLabel=\"S&amp;H\" />\n      </ladspa:hasPoint>\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\n<ladspa:InputControlPort rdf:about=\"&ladspa;1908.0\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"0\" ladspa:hasLabel=\"LP\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"1\" ladspa:hasLabel=\"BP\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"2\" ladspa:hasLabel=\"HP\" />\n      </ladspa:hasPoint>\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\n<ladspa:InputControlPort rdf:about=\"&ladspa;1188.0\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"0\" ladspa:hasLabel=\"none\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"1\" ladspa:hasLabel=\"AM\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"2\" ladspa:hasLabel=\"RM\" />\n      </ladspa:hasPoint>\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\n<ladspa:InputControlPort rdf:about=\"&ladspa;1189.0\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"0\" ladspa:hasLabel=\"none\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"1\" ladspa:hasLabel=\"AM\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"2\" ladspa:hasLabel=\"RM\" />\n      </ladspa:hasPoint>\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\n<ladspa:InputControlPort rdf:about=\"&ladspa;1214.2\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"0\" ladspa:hasLabel=\"none\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"1\" ladspa:hasLabel=\"LP\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"2\" ladspa:hasLabel=\"HP\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"3\" ladspa:hasLabel=\"BP\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"4\" ladspa:hasLabel=\"BR\" />\n      </ladspa:hasPoint>\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"5\" ladspa:hasLabel=\"AP\" />\n      </ladspa:hasPoint>\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\n\n</rdf:RDF>\n"
  },
  {
    "path": "metadata/txt2scale.pl",
    "content": "#!/usr/bin/perl -w\n\nprint <<EOB;\n<?xml version='1.0' encoding='UTF-8'?>\n<!DOCTYPE rdf:RDF [\n        <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'>\n        <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'>\n        <!ENTITY dc 'http://purl.org/dc/elements/1.1/'>\n        <!ENTITY ladspa 'http://ladspa.org/ontology#'>\n]>\n<rdf:RDF xmlns:rdf=\"&rdf;\"\n         xmlns:rdfs=\"&rdfs;\"\n         xmlns:dc=\"&dc;\"\n         xmlns:ladspa=\"&ladspa;\">\n\nEOB\n\n$first = 1;\n$port = \"\";\n\nwhile (<>) {\n\tchomp;\n\tif (/^([0-9]+\\.[0-9]+)/) {\n\t\t$port = $1;\n\t\tif (!$first) {\n\t\t\t&endScale;\n\t\t}\n\t\t$first = 0;\n\t\tprint <<EOB;\n<ladspa:InputControlPort rdf:about=\"&ladspa;$port\">\n  <ladspa:hasScale>\n    <ladspa:Scale>\nEOB\n\t}\n\n\tif (/^\\s*([0-9]+)\\s+(.*)/) {\n\t\tprint <<EOB;\n      <ladspa:hasPoint>\n        <ladspa:Point rdf:value=\"$1\" ladspa:hasLabel=\"$2\" />\n      </ladspa:hasPoint>\nEOB\n\t}\n}\n\nif (!$first) {\n\t&endScale;\n}\n\nprint <<EOB;\n\n</rdf:RDF>\nEOB\n\nsub endScale {\n\tprint <<EOB;\n    </ladspa:Scale>\n  </ladspa:hasScale>\n</ladspa:InputControlPort>\nEOB\n}\n"
  },
  {
    "path": "mkspec.pl",
    "content": "#!/usr/bin/perl -w\n\n$package = shift(@ARGV);\n$version = shift(@ARGV);\n@files = @ARGV;\n\nopen(OUT, \">swh-plugins-$version.spec\") || die \"Can't create spec file: $!\";\n\nprint OUT <<EOB;\nSummary: A set of audio plugins for LADSPA.\nName: $package\nVersion: $version\nRelease: 1\nCopyright: GPL\nGroup: Applications/Multimedia\nSource: http://plugin.org.uk/releases/$version/$package-$version.tar.gz\nBuildRoot: /var/tmp/%{name}-buildroot\nPrefix: /usr/local\n\n%description\nA set of audio plugins for LADSPA (see http://plugin.org.uk/ for more\ndetails).\n\n%prep\nrm -rf \\$RPM_BUILD_ROOT/$package-$version\ntar xvfz /usr/src/redhat/SOURCES/$package-$version.tar.gz\n\n%build\ncd $package-$version\n./configure\nmake static\n\n%install\ncd $package-$version\nmake INSTALL_ROOT=\"\\$RPM_BUILD_ROOT\" install\n\n%clean\nrm -rf \\$RPM_BUILD_ROOT\n\n%files\n%defattr(-,root,root)\n\nEOB\nfor $file (@files) {\n        print OUT \"%{prefix}/lib/ladspa/$file\\n\";\n}\nprint OUT \"%{prefix}/share/ladspa/rdf/swh-plugins.rdf\";\n\nsystem(\"cp $package-$version.tar.gz /usr/src/redhat/SOURCES/\");\n"
  },
  {
    "path": "mod_delay_1419.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"ladspa-util.h\"\n    </code>\n  </global>\n\n  <plugin label=\"modDelay\" id=\"1419\" class=\"DelayPlugin\">\n    <name>Modulatable delay</name>\n    <p>A delay whose tap can be modulated at audio rate.</p>\n    <p>Requested by Matthias Nagorni at LinuxTag 2002, in order to make a Leslie simulator.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      unsigned int size = 32768;\n\n      fs = s_rate;\n      while (size < 2.7f * fs) {\n\tsize *= 2;\n      }\n      buffer = calloc(size, sizeof(LADSPA_Data));\n      buffer_mask = size - 1;\n      write_ptr = 0;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      memset(buffer, 0, buffer_mask + 1);\n      write_ptr = 0;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tfloat tmp;\n\tconst float rpf = modff((base + delay[pos]) * fs, &tmp);\n\tconst int rp = write_ptr - 4 - f_round(tmp);\n\n        buffer[write_ptr++] = input[pos];\n\twrite_ptr &= buffer_mask;\n\n        buffer_write(output[pos], cube_interp(rpf, buffer[(rp - 1) & buffer_mask], buffer[rp & buffer_mask],  buffer[(rp + 1) & buffer_mask], buffer[(rp + 2) & buffer_mask]));\n      }\n      plugin_data->write_ptr = write_ptr;\n    ]]></callback>\n\n    <port label=\"base\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>Base delay (s)</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"delay\" dir=\"input\" type=\"audio\" hint=\"default_0\">\n      <name>Delay (s)</name>\n      <range min=\"0\" max=\"1.7\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_mask\" type=\"unsigned int\" />\n    <instance-data label=\"write_ptr\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "multivoice_chorus_1201.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <code><![CDATA[\n#include \"ladspa-util.h\"\n#define MAX_LAWS 7\n    ]]></code>\n  </global>\n\n  <plugin label=\"multivoiceChorus\" id=\"1201\" class=\"ChorusPlugin\">\n    <name>Multivoice Chorus</name>\n    <p>This is an implementation of a Multivoice (as opposed to Multiscale) chorus algorithm. Its uses a novel, sinc based noise interpolation method to produce a subtle modulation law which makes it possible to get away with larger numbers of voices without the metallic, artificial sound common in chorus effects.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\nint min_size;\n\nsample_rate = s_rate;\n\nmax_law_p = s_rate/2;\nlast_law_p = -1;\nlaw_pos = 0;\nlaw_roll = 0;\n\nmin_size = sample_rate / 10;\nfor (delay_size = 1024; delay_size < min_size; delay_size *= 2);\ndelay_mask = delay_size - 1;\ndelay_tbl = calloc(sizeof(float), delay_size);\ndelay_pos = 0;\n\nprev_peak_pos = malloc(sizeof(unsigned int) * MAX_LAWS);\nnext_peak_pos = malloc(sizeof(unsigned int) * MAX_LAWS);\nprev_peak_amp = malloc(sizeof(float) * MAX_LAWS);\nnext_peak_amp = malloc(sizeof(float) * MAX_LAWS);\ndp_targ = malloc(sizeof(float) * MAX_LAWS);\ndp_curr = malloc(sizeof(float) * MAX_LAWS);\n\ncount = 0;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\nmemset(delay_tbl, 0, sizeof(float) * delay_size);\nmemset(prev_peak_pos, 0, sizeof(unsigned int) * MAX_LAWS);\nmemset(next_peak_pos, 0, sizeof(unsigned int) * MAX_LAWS);\nmemset(prev_peak_amp, 0, sizeof(float) * MAX_LAWS);\nmemset(next_peak_amp, 0, sizeof(float) * MAX_LAWS);\nmemset(dp_targ, 0, sizeof(float) * MAX_LAWS);\nmemset(dp_curr, 0, sizeof(float) * MAX_LAWS);\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\nfree(plugin_data->delay_tbl);\nfree(plugin_data->prev_peak_pos);\nfree(plugin_data->next_peak_pos);\nfree(plugin_data->prev_peak_amp);\nfree(plugin_data->next_peak_amp);\nfree(plugin_data->dp_targ);\nfree(plugin_data->dp_curr);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\nunsigned long pos;\nint d_base, t;\nLADSPA_Data out;\nfloat delay_depth;\nfloat dp; // float delay position\nfloat dp_frac; // fractional part\nint dp_idx; // Integer delay index\nint laws, law_separation, base_offset;\nint law_p; // Period of law\nfloat atten; // Attenuation\n\n// Set law params\nlaws = LIMIT(f_round(voices) - 1, 0, 7);\nlaw_p = LIMIT(f_round(sample_rate/f_clamp(law_freq, 0.0001f, 1000.0f)), 1, max_law_p);\nif (laws > 0) {\n\tlaw_separation = law_p / laws;\n} else {\n\tlaw_separation = 0;\n}\n\n// Calculate voice spread in samples\nbase_offset = (f_clamp(voice_spread, 0.0f, 2.0f) * sample_rate) / 1000;\n// Calculate base delay size in samples\nd_base = (f_clamp(delay_base, 5.0f, 40.0f) * sample_rate) / 1000;\n// Calculate delay depth in samples\ndelay_depth = f_clamp((law_p * f_clamp(detune, 0.0f, 10.0f)) / (100.0f * M_PI), 0.0f, delay_size - d_base - 1 - (base_offset * laws));\n\n// Calculate output attenuation\natten = DB_CO(f_clamp(attendb, -100.0, 24.0));\n\nfor (pos = 0; pos < sample_count; pos++) {\n\t// N times per law 'frequency' splurge a new set of windowed data\n\t// into one of the N law buffers. Keeps the laws out of phase.\n\tif (laws > 0 && (count % law_separation) == 0) {\n\t\tnext_peak_amp[law_roll] = (float)rand() / (float)RAND_MAX;\n\t\tnext_peak_pos[law_roll] = count + law_p;\n\t}\n\tif (laws > 0 && (count % law_separation) == law_separation/2) {\n\t\tprev_peak_amp[law_roll] = (float)rand() / (float)RAND_MAX;\n\t\tprev_peak_pos[law_roll] = count + law_p;\n\t\t// Pick the next law to be changed\n\t\tlaw_roll = (law_roll + 1) % laws;\n\t}\n\n\tout = input[pos];\n\tif (count % 16 < laws) {\n\t\tunsigned int t = count % 16;\n\t\t// Calculate sinus phases\n\t\tfloat n_ph = (float)(law_p - labs(next_peak_pos[t] - count))/law_p;\n\t\tfloat p_ph = n_ph + 0.5f;\n\t\tif (p_ph > 1.0f) {\n\t\t\tp_ph -= 1.0f;\n\t\t}\n\n\t\tdp_targ[t] = f_sin_sq(3.1415926f*p_ph)*prev_peak_amp[t] + f_sin_sq(3.1415926f*n_ph)*next_peak_amp[t];\n\t}\n\tfor (t=0; t<laws; t++) {\n\t\tdp_curr[t] = 0.9f*dp_curr[t] + 0.1f*dp_targ[t];\n\t\t//dp_curr[t] = dp_targ[t];\n\t\tdp = (float)(delay_pos + d_base - (t*base_offset)) - delay_depth * dp_curr[t];\n\t\t// Get the integer part\n\t\tdp_idx = f_round(dp-0.5f);\n\t\t// Get the fractional part\n\t\tdp_frac = dp - dp_idx;\n\t\t// Calculate the modulo'd table index\n\t\tdp_idx = dp_idx & delay_mask;\n\n\t\t// Accumulate into output buffer\n\t\tout += cube_interp(dp_frac, delay_tbl[(dp_idx-1) & delay_mask], delay_tbl[dp_idx], delay_tbl[(dp_idx+1) & delay_mask], delay_tbl[(dp_idx+2) & delay_mask]);\n\t}\n\tlaw_pos = (law_pos + 1) % (max_law_p * 2);\n\n\t// Store new delay value\n\tdelay_tbl[delay_pos] = input[pos];\n\tdelay_pos = (delay_pos + 1) & delay_mask;\n\n\tbuffer_write(output[pos], out * atten);\n\tcount++;\n}\n\nplugin_data->count = count;\nplugin_data->law_pos = law_pos;\nplugin_data->last_law_p = last_law_p;\nplugin_data->law_roll = law_roll;\nplugin_data->delay_pos = delay_pos;\n    ]]></callback>\n\n    <port label=\"voices\" dir=\"input\" type=\"control\" hint=\"integer,default_1\">\n      <name>Number of voices</name>\n      <range min=\"1\" max=\"8\"/>\n    </port>\n\n    <port label=\"delay_base\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n      <name>Delay base (ms)</name>\n      <range min=\"10\" max=\"40\"/>\n    </port>\n\n    <port label=\"voice_spread\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Voice separation (ms)</name>\n      <range min=\"0\" max=\"2\"/>\n      <p>The individual voices can either be running at the same base delay (set this to zero) or staggered.</p>\n      <p>Setting this to non-zero values can make the output sound richer, but will make it sound grainy with some type of signal.</p>\n    </port>\n\n    <port label=\"detune\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Detune (%)</name>\n      <range min=\"0\" max=\"5\"/>\n      <p>The maximum amount that a voice will be detuned by. I recommend a value of 1, but you may be able to get away with higher values if the signal is less harmonic.</p>\n    </port>\n\n    <port label=\"law_freq\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>LFO frequency (Hz)</name>\n      <range min=\"2\" max=\"30\"/>\n      <p>The frequency that the detune effect will be modulated at. A matter of taste, for most types of input lower will be more subtle.</p>\n    </port>\n\n    <port label=\"attendb\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Output attenuation (dB)</name>\n      <range min=\"-20\" max=\"0\"/>\n      <p>With large numbers of voices the output can become too high, so use this to trim the amplitude to a more helpful level.</p>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"sample_rate\" type=\"long\"/>\n    <instance-data label=\"count\" type=\"long\"/>\n    <instance-data label=\"law_pos\" type=\"int\"/>\n    <instance-data label=\"law_roll\" type=\"int\"/>\n    <instance-data label=\"max_law_p\" type=\"int\"/>\n    <instance-data label=\"last_law_p\" type=\"int\"/>\n    <instance-data label=\"delay_tbl\" type=\"float *\"/>\n    <instance-data label=\"delay_pos\" type=\"unsigned int\"/>\n    <instance-data label=\"delay_size\" type=\"unsigned int\"/>\n    <instance-data label=\"delay_mask\" type=\"unsigned int\"/>\n    <instance-data label=\"prev_peak_pos\" type=\"unsigned int *\"/>\n    <instance-data label=\"next_peak_pos\" type=\"unsigned int *\"/>\n    <instance-data label=\"prev_peak_amp\" type=\"float *\"/>\n    <instance-data label=\"next_peak_amp\" type=\"float *\"/>\n    <instance-data label=\"dp_targ\" type=\"float *\"/>\n    <instance-data label=\"dp_curr\" type=\"float *\"/>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "notch_iir_1894.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Alexander Ehlert &lt;mag@glame.de&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code>\n\t\t\t#include \"config.h\"\n\t\t\t#include \"util/iir.h\"\n                        \n\t\t</code>\n\t</global>\n\n\t<plugin label=\"notch_iir\" id=\"1894\" class=\"NotchPlugin\">\n\t\t<name>Mag's Notch Filter</name>\n                <p> IIR notch filter based using chebishev coefficients. The filter allows you to tweak the number of stages used for\n                filtering. Every stage adds two more poles, which leads to a steeper dropoff. More stages need more CPU power.\n                </p>\n\n                <callback event=\"instantiate\">\n                  sample_rate = s_rate;\n\t\t  ufc = lfc = 0.0f;\n                </callback>\n\t\t<callback event=\"run\">\n                  ufc = (center - width*0.5f)/(float)sample_rate;\n                  lfc = (center + width*0.5f)/(float)sample_rate;\n                  chebyshev(iirf1, first,  2*CLAMP((int)stages,1,10), IIR_STAGE_LOWPASS,  ufc, 0.5f);\n                  chebyshev(iirf2, second, 2*CLAMP((int)stages,1,10), IIR_STAGE_HIGHPASS, lfc, 0.5f);\n                  iir_process_buffer_ns_5(iirf1, first, input, output, sample_count, RUN_ADDING);\n                  iir_process_buffer_ns_5(iirf2, second, input, output, sample_count, 1); /* add to first buffer */\n\n                  // Unused variable\n                  (void)(run_adding_gain);\n                </callback>\n\n                <callback event=\"activate\">                  \n                  ufc = (*(plugin_data->center) - *(plugin_data->width)*0.5f)/(float)sample_rate;\n                  lfc = (*(plugin_data->center) + *(plugin_data->width)*0.5f)/(float)sample_rate;\n                  first = init_iir_stage(IIR_STAGE_LOWPASS,10,3,2);\n                  second = init_iir_stage(IIR_STAGE_HIGHPASS,10,3,2);                  \n                  iirf1 = init_iirf_t(first);\n                  iirf2 = init_iirf_t(second);\n                  chebyshev(iirf1, first, 2*CLAMP((int)(*(plugin_data->stages)),1,10), IIR_STAGE_LOWPASS, ufc, 0.5f);\n                  chebyshev(iirf2, second, 2*CLAMP((int)(*(plugin_data->stages)),1,10), IIR_STAGE_HIGHPASS, lfc, 0.5f);\n                </callback>\n\n                <callback event=\"cleanup\">\n                  free_iirf_t(plugin_data->iirf1, plugin_data->first);\n                  free_iirf_t(plugin_data->iirf2, plugin_data->second);\n                  free_iir_stage(plugin_data->first);\n                  free_iir_stage(plugin_data->second);\n                </callback>\n\n                <port label=\"center\" dir=\"input\" type=\"control\" hint=\"default_middle, sample_rate, logarithmic\">\n\t\t\t<name>Center Frequency (Hz)</name>\n \t\t\t<range min=\"0.0001\" max=\"0.45\"/>\n\t\t</port>\n\n                <port label=\"width\" dir=\"input\" type=\"control\" hint=\"default_middle, sample_rate, logarithmic\">\n\t\t\t<name>Bandwidth (Hz)</name>\n \t\t\t<range min=\"0.0001\" max=\"0.45\"/>\n\t\t</port>\n\n                <port label=\"stages\" dir=\"input\" type=\"control\" hint=\"default_1, integer\">\n\t\t\t<name>Stages(2 poles per stage)</name>\n\t\t\t<range min=\"1.0\" max=\"10.0\"/>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n            \n                <instance-data label=\"iirf1\" type=\"iirf_t*\"/>\n                <instance-data label=\"iirf2\" type=\"iirf_t*\"/>\n                <instance-data label=\"first\" type=\"iir_stage_t*\"/>\n                <instance-data label=\"second\" type=\"iir_stage_t*\"/>\n                <instance-data label=\"sample_rate\" type=\"long\"/>\n                <instance-data label=\"ufc\" type=\"float\"/>\n                <instance-data label=\"lfc\" type=\"float\"/>        \n\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "phasers_1217.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"ladspa-util.h\"\n\n      #define LFO_SIZE 4096\n\n      typedef struct {\n        float a1;\n\tfloat zm1;\n      } allpass;\n\n      inline static float ap_run(allpass *a, float x)\n      {\n\tfloat y = x * -(a->a1) + a->zm1;\n        a->zm1 = y * a->a1 + x;\n\n        return y;\n      }\n\n      inline static void ap_set_delay(allpass *a, float d)\n      {\n        a->a1 = (1.0f - d) / (1.0f + d);\n      }\n\n      inline static void ap_clear(allpass *a)\n      {\n        a->a1  = 0.0f;\n        a->zm1 = 0.0f;\n      }\n\n      typedef struct {\n        float ga;\n        float gr;\n        float env;\n      } envelope;\n\n      inline static float env_run(envelope *e, float in)\n      {\n        float env_lvl = e->env;\n\n        in = fabs(in);\n\n        if (env_lvl < in) {\n          env_lvl = e->ga * (env_lvl - in) + in;\n        } else {\n          env_lvl = e->gr * (env_lvl - in) + in;\n        }\n\n\te->env = env_lvl;\n\treturn env_lvl;\n      }\n\n      // Set attack time in samples\n      inline static void env_set_attack(envelope *e, float a)\n      {\n        e->ga = f_exp(-1.0f/a);\n      }\n\n      // Set release time in samples\n      inline static void env_set_release(envelope *e, float r)\n      {\n        e->gr = f_exp(-1.0f/r);\n      }\n\n    ]]></code>\n  </global>\n\n  <plugin label=\"lfoPhaser\" id=\"1217\" class=\"PhaserPlugin\">\n    <name>LFO Phaser</name>\n\n    <callback event=\"instantiate\"><![CDATA[\n      unsigned int i;\n      float p;\n\n      ap = calloc(6, sizeof(allpass));\n      ym1 = 0.0f;\n      lfo_tbl = malloc(sizeof(float) * LFO_SIZE);\n      p = 0.0f;\n      for (i=0; i<LFO_SIZE; i++) {\n        p += M_PI * 0.0004882812f;\n        lfo_tbl[i] = (sin(p) + 1.1f) * 0.25f;\n      }\n      lfo_pos = 0;\n\n      // Frames per lfo value\n      f_per_lv = (float)s_rate * 0.0002441406f;\n\n      count = 0;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      ap_clear(ap);\n      ap_clear(ap+1);\n      ap_clear(ap+2);\n      ap_clear(ap+3);\n      ap_clear(ap+4);\n      ap_clear(ap+5);\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->ap);\n      free(plugin_data->lfo_tbl);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      unsigned int mod;\n      float y, d, ofs;\n\n      mod = f_round(f_per_lv / lfo_rate);\n      if (mod < 1) {\n        mod=1;\n      }\n\n      d = lfo_tbl[lfo_pos];\n\n      for (pos = 0; pos < sample_count; pos++) {\n        // Get new value for LFO if needed\n\tif (++count % mod == 0) {\n\t  lfo_pos++;\n\t  lfo_pos &= 0x7FF;\n\t  count = 0;\n          d = lfo_tbl[lfo_pos] * lfo_depth;\n\n          ap_set_delay(ap, d);\n\t  ofs = spread * 0.01562f;\n          ap_set_delay(ap+1, d+ofs);\n\t  ofs *= 2.0f;\n          ap_set_delay(ap+2, d+ofs);\n\t  ofs *= 2.0f;\n          ap_set_delay(ap+3, d+ofs);\n\t  ofs *= 2.0f;\n          ap_set_delay(ap+4, d+ofs);\n\t  ofs *= 2.0f;\n          ap_set_delay(ap+5, d+ofs);\n\n        }\n\t//Run in series, doesn't quite sound as nice\n\ty = ap_run(ap, input[pos] + ym1 * fb);\n\ty = ap_run(ap+1, y);\n\ty = ap_run(ap+2, y);\n\ty = ap_run(ap+3, y);\n\ty = ap_run(ap+4, y);\n\ty = ap_run(ap+5, y);\n\n        buffer_write(output[pos], y);\n\tym1 = y;\n      }\n\n      plugin_data->ym1 = ym1;\n      plugin_data->count = count;\n      plugin_data->lfo_pos = lfo_pos;\n    ]]></callback>\n\n    <port label=\"lfo_rate\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>LFO rate (Hz)</name>\n      <range min=\"0\" max=\"100\" />\n    </port>\n\n    <port label=\"lfo_depth\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>LFO depth</name>\n      <range min=\"0\" max=\"1\" />\n    </port>\n\n    <port label=\"fb\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Feedback</name>\n      <range min=\"-1\" max=\"1\" />\n    </port>\n\n    <port label=\"spread\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Spread (octaves)</name>\n      <range min=\"0\" max=\"2\" />\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"ap\" type=\"allpass *\" />\n    <instance-data label=\"count\" type=\"int\" />\n    <instance-data label=\"lfo_tbl\" type=\"float *\" />\n    <instance-data label=\"lfo_pos\" type=\"int\" />\n    <instance-data label=\"f_per_lv\" type=\"float\" />\n    <instance-data label=\"ym1\" type=\"float\" />\n  </plugin>\n\n  <plugin label=\"fourByFourPole\" id=\"1218\" class=\"AllpassPlugin\">\n    <name>4 x 4 pole allpass</name>\n\n    <callback event=\"instantiate\"><![CDATA[\n      ap = calloc(16, sizeof(allpass));\n      y0 = 0.0f;\n      y1 = 0.0f;\n      y2 = 0.0f;\n      y3 = 0.0f;\n      sr_r_2 = 1.0f / s_rate;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      ap_clear(ap);\n      ap_clear(ap+1);\n      ap_clear(ap+2);\n      ap_clear(ap+3);\n      ap_clear(ap+4);\n      ap_clear(ap+5);\n      ap_clear(ap+6);\n      ap_clear(ap+7);\n      ap_clear(ap+8);\n      ap_clear(ap+9);\n      ap_clear(ap+10);\n      ap_clear(ap+11);\n      ap_clear(ap+12);\n      ap_clear(ap+13);\n      ap_clear(ap+14);\n      ap_clear(ap+15);\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->ap);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n\n      ap_set_delay(ap,   f0 * sr_r_2);\n      ap_set_delay(ap+1, f0 * sr_r_2);\n      ap_set_delay(ap+2, f0 * sr_r_2);\n      ap_set_delay(ap+3, f0 * sr_r_2);\n      ap_set_delay(ap+4, f1 * sr_r_2);\n      ap_set_delay(ap+5, f1 * sr_r_2);\n      ap_set_delay(ap+6, f1 * sr_r_2);\n      ap_set_delay(ap+7, f1 * sr_r_2);\n      ap_set_delay(ap+8, f2 * sr_r_2);\n      ap_set_delay(ap+9, f2 * sr_r_2);\n      ap_set_delay(ap+10, f2 * sr_r_2);\n      ap_set_delay(ap+11, f2 * sr_r_2);\n      ap_set_delay(ap+12, f3 * sr_r_2);\n      ap_set_delay(ap+13, f3 * sr_r_2);\n      ap_set_delay(ap+14, f3 * sr_r_2);\n      ap_set_delay(ap+15, f3 * sr_r_2);\n\n      for (pos = 0; pos < sample_count; pos++) {\n\ty0 = ap_run(ap,   input[pos] + y0 * fb0);\n\ty0 = ap_run(ap+1,   y0);\n\ty0 = ap_run(ap+2,   y0);\n\ty0 = ap_run(ap+3,   y0);\n\n\ty1 = ap_run(ap+4,   y0 + y1 * fb1);\n\ty1 = ap_run(ap+5,   y1);\n\ty1 = ap_run(ap+6,   y1);\n\ty1 = ap_run(ap+7,   y1);\n\n\ty2 = ap_run(ap+8,  y1 + y2 * fb2);\n\ty2 = ap_run(ap+9,  y2);\n\ty2 = ap_run(ap+10, y2);\n\ty2 = ap_run(ap+11, y2);\n\n\ty3 = ap_run(ap+12, y2 + y3 * fb3);\n\ty3 = ap_run(ap+13, y3);\n\ty3 = ap_run(ap+14, y3);\n\ty3 = ap_run(ap+15, y3);\n\n        buffer_write(output[pos], y3);\n      }\n\n      plugin_data->y0 = y0;\n      plugin_data->y1 = y1;\n      plugin_data->y2 = y2;\n      plugin_data->y3 = y3;\n    ]]></callback>\n\n    <port label=\"f0\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Frequency 1</name>\n      <range min=\"1\" max=\"20000\" />\n    </port>\n\n    <port label=\"fb0\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Feedback 1</name>\n      <range min=\"-1\" max=\"1\" />\n    </port>\n\n    <port label=\"f1\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Frequency 2</name>\n      <range min=\"1\" max=\"20000\" />\n    </port>\n\n    <port label=\"fb1\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Feedback 2</name>\n      <range min=\"-1\" max=\"1\" />\n    </port>\n\n    <port label=\"f2\" dir=\"input\" type=\"control\" hint=\"default_high\">\n      <name>Frequency 3</name>\n      <range min=\"1\" max=\"20000\" />\n    </port>\n\n    <port label=\"fb2\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Feedback 3</name>\n      <range min=\"-1\" max=\"1\" />\n    </port>\n\n    <port label=\"f3\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>Frequency 4</name>\n      <range min=\"1\" max=\"20000\" />\n    </port>\n\n    <port label=\"fb3\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Feedback 4</name>\n      <range min=\"-1\" max=\"1\" />\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"ap\" type=\"allpass *\" />\n    <instance-data label=\"y0\" type=\"float\" />\n    <instance-data label=\"y1\" type=\"float\" />\n    <instance-data label=\"y2\" type=\"float\" />\n    <instance-data label=\"y3\" type=\"float\" />\n    <instance-data label=\"sr_r_2\" type=\"float\" />\n  </plugin>\n\n  <plugin label=\"autoPhaser\" id=\"1219\" class=\"PhaserPlugin\">\n    <name>Auto phaser</name>\n\n    <callback event=\"instantiate\"><![CDATA[\n      ap = calloc(6, sizeof(allpass));\n      env = calloc(1, sizeof(envelope));\n      ym1 = 0.0f;\n      sample_rate = (float)s_rate;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      ap_clear(ap);\n      ap_clear(ap+1);\n      ap_clear(ap+2);\n      ap_clear(ap+3);\n      ap_clear(ap+4);\n      ap_clear(ap+5);\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->ap);\n      free(plugin_data->env);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float y, d, ofs;\n      float attack = attack_p;\n      float decay = decay_p;\n      const float depth = depth_p * 0.5f;\n\n      if (attack < 0.01f) {\n        attack = 0.01f;\n      }\n      if (decay < 0.01f) {\n        decay = 0.01f;\n      }\n      env_set_attack(env, attack * sample_rate * 0.25f);\n      env_set_release(env, decay * sample_rate * 0.25f);\n\n\n      for (pos = 0; pos < sample_count; pos++) {\n        if (pos % 4 == 0) {\n          d = env_run(env, input[pos]) * depth;\n          ap_set_delay(ap, d);\n          ofs = spread * 0.01562f;\n          ap_set_delay(ap+1, d+ofs);\n          ofs *= 2.0f;\n          ap_set_delay(ap+2, d+ofs);\n          ofs *= 2.0f;\n          ap_set_delay(ap+3, d+ofs);\n          ofs *= 2.0f;\n          ap_set_delay(ap+4, d+ofs);\n          ofs *= 2.0f;\n          ap_set_delay(ap+5, d+ofs);\n        }\n\n\t//Run allpass filters in series\n\ty = ap_run(ap, input[pos] + ym1 * fb);\n\ty = ap_run(ap+1, y);\n\ty = ap_run(ap+2, y);\n\ty = ap_run(ap+3, y);\n\ty = ap_run(ap+4, y);\n\ty = ap_run(ap+5, y);\n\n        buffer_write(output[pos], y);\n\tym1 = y;\n      }\n\n      plugin_data->ym1 = ym1;\n    ]]></callback>\n\n    <port label=\"attack_p\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Attack time (s)</name>\n      <range min=\"0\" max=\"1\" />\n    </port>\n\n    <port label=\"decay_p\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Decay time (s)</name>\n      <range min=\"0\" max=\"1\" />\n    </port>\n\n    <port label=\"depth_p\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Modulation depth</name>\n      <range min=\"0\" max=\"1\" />\n    </port>\n\n    <port label=\"fb\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Feedback</name>\n      <range min=\"-1\" max=\"1\" />\n    </port>\n\n    <port label=\"spread\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Spread (octaves)</name>\n      <range min=\"0\" max=\"2\" />\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"ap\" type=\"allpass *\" />\n    <instance-data label=\"ym1\" type=\"float\" />\n    <instance-data label=\"env\" type=\"envelope *\" />\n    <instance-data label=\"sample_rate\" type=\"float\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "pitch_scale_1193.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code><![CDATA[\n#include \"util/pitchscale.h\"\n\n#define FRAME_LENGTH 2048\n#define OVER_SAMP 4\n\t\t]]></code>\n\t</global>\n\n\t<plugin label=\"pitchScale\" id=\"1193\" class=\"PitchPlugin\">\n\t\t<name>Pitch Scaler</name>\n\t\t<p>A pitch shifter implementation that scales the harmonics appropriately with the base frequencies. It is an implementation of Stephen M. Sprengler's pitch scaler design. It gives reasonable, general purpose results for small changes, but won't give Antares or Eventide anything to worry about.</p>\n\t\t<p>The FFT block size and oversampling has been kept at a minimum to keep the CPU usage low.</p>\n\n\t\t<callback event=\"run\">\n\t\t\tpitch_scale(buffers, mult, FRAME_LENGTH, OVER_SAMP, sample_count, sample_rate, input, output, RUN_ADDING, run_adding_gain);\n\n\t\t\t*(plugin_data->latency) = FRAME_LENGTH - (FRAME_LENGTH /\n\t\t\t\t\t\t\tOVER_SAMP);\n\t\t</callback>\n\n\t\t<callback event=\"instantiate\">\n\t\t\tint i;\n\t\t\tfloat arg;\n\n\t\t\tbuffers = malloc(sizeof(sbuffers));\n\t\t\tsample_rate = s_rate;\n\t\t\tbuffers->gInFIFO = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gOutFIFO = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gLastPhase = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gSumPhase = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gOutputAccum = malloc(2*FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gAnaFreq = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gAnaMagn = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gSynFreq = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gSynMagn = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gWindow = malloc(FRAME_LENGTH * sizeof(float));\n/*\n\t\t\tif (aplan == NULL) {\n#ifdef FFTW3\n\t\t\t\taplan = fftwf_plan_r2r_1d(FRAME_LENGTH, ps_in, ps_out, FFTW_R2HC, FFTW_MEASURE);\n\t\t\t\tsplan = fftwf_plan_r2r_1d(FRAME_LENGTH, ps_in, ps_out, FFTW_HC2R, FFTW_MEASURE);\n#else\n\t\t\t\taplan = rfftw_create_plan(FRAME_LENGTH, FFTW_REAL_TO_COMPLEX, FFTW_ESTIMATE);\n\t\t\t\tsplan = rfftw_create_plan(FRAME_LENGTH, FFTW_COMPLEX_TO_REAL, FFTW_ESTIMATE);\n#endif\n\t\t\t}\n*/\n\n\t\t\targ = 2.0f * M_PI / (float)(FRAME_LENGTH-1);\n\t\t\tfor (i=0; i &lt; FRAME_LENGTH; i++) {\n\t\t\t\t// Blackman-Harris\n\t\t\t\tbuffers->gWindow[i] =  0.35875f - 0.48829f * cos(arg * (float)i) + 0.14128f * cos(2.0f * arg * (float)i) - 0.01168f * cos(3.0f * arg * (float)i);\n\t\t\t\t// Gain correction\n\t\t\t\tbuffers->gWindow[i] *= 0.761f;\n\n\t\t\t}\n\t\t</callback>\n\n\t\t<callback event=\"activate\">\n\t\t\tmemset(buffers->gInFIFO, 0, FRAME_LENGTH*sizeof(float));\n\t\t\tmemset(buffers->gOutFIFO, 0, FRAME_LENGTH*sizeof(float));\n\t\t\tmemset(buffers->gLastPhase, 0, FRAME_LENGTH*sizeof(float)/2);\n\t\t\tmemset(buffers->gSumPhase, 0, FRAME_LENGTH*sizeof(float)/2);\n\t\t\tmemset(buffers->gOutputAccum, 0, 2*FRAME_LENGTH*sizeof(float));\n\t\t\tmemset(buffers->gAnaFreq, 0, FRAME_LENGTH*sizeof(float));\n\t\t\tmemset(buffers->gAnaMagn, 0, FRAME_LENGTH*sizeof(float));\n\t\t\tbuffers->gRover = 0;\n\n\t\t\t/* do one run to make sure the plans are set up */\n\t\t\tpitch_scale(buffers, 1.0, FRAME_LENGTH, 4, FRAME_LENGTH, sample_rate, buffers->gInFIFO, buffers->gOutFIFO, 0, 0.0f);\n\t\t</callback>\n\n\t\t<callback event=\"cleanup\"><![CDATA[\n\t\t\tfree (plugin_data->buffers->gInFIFO);\n\t\t\tfree (plugin_data->buffers->gOutFIFO);\n\t\t\tfree (plugin_data->buffers->gLastPhase);\n\t\t\tfree (plugin_data->buffers->gSumPhase);\n\t\t\tfree (plugin_data->buffers->gOutputAccum);\n\t\t\tfree (plugin_data->buffers->gAnaFreq);\n\t\t\tfree (plugin_data->buffers->gAnaMagn);\n\t\t\tfree (plugin_data->buffers->gSynFreq);\n\t\t\tfree (plugin_data->buffers->gSynMagn);\n\t\t\tfree (plugin_data->buffers->gWindow);\n\t\t\tfree (plugin_data->buffers);\n\t\t]]></callback>\n\n\t\t<port label=\"mult\" dir=\"input\" type=\"control\" hint=\"default_1\">\n\t\t\t<name>Pitch co-efficient</name>\n\t\t\t<range min=\"0.5\" max=\"2\"/>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n\n\t\t<port label=\"latency\" dir=\"output\" type=\"control\">\n\t\t\t<name>latency</name>\n\t\t</port>\n\n\t\t<instance-data label=\"buffers\" type=\"sbuffers *\"/>\n\n\t\t<instance-data label=\"sample_rate\" type=\"long\"/>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "pitch_scale_1194.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code>\n\t\t\t#include \"util/pitchscale.h\"\n\n\t\t\t#define FRAME_LENGTH 4096\n\t\t\t#define OVER_SAMP    16\n\t\t</code>\n\t</global>\n\n\t<plugin label=\"pitchScaleHQ\" id=\"1194\" class=\"PitchPlugin\">\n\t\t<name>Higher Quality Pitch Scaler</name>\n                <p>A pitch shifter implementation that scales the harmonics appropriately with the base frequencies. It is an implementation of Stephen M. Sprengler's pitch scaler design. It gives reasonable, general purpose results for small changes, but won't give Antares or Eventide anything to worry about.</p>\n\t\t<p>The FFT block size and oversampling has been kept at reasonable levels to keep the CPU usage low, but it is smoother than the other Pitch Scaler.</p>\n\n\t\t<callback event=\"run\">\n\t\t\tpitch_scale(buffers, mult, FRAME_LENGTH, OVER_SAMP, sample_count, sample_rate, input, output, RUN_ADDING, run_adding_gain);\n\t\t\t*(plugin_data->latency) = FRAME_LENGTH - (FRAME_LENGTH\n\t\t\t\t\t\t\t/ OVER_SAMP);\n\t\t</callback>\n\n\t\t<callback event=\"instantiate\">\n\t\t\tint i;\n\t\t\tfloat arg;\n\n\t\t\tbuffers = malloc(sizeof(sbuffers));\n\t\t\tsample_rate = s_rate;\n\t\t\tbuffers->gInFIFO = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gOutFIFO = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gLastPhase = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gSumPhase = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gOutputAccum = malloc(2*FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gAnaFreq = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gAnaMagn = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gSynFreq = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gSynMagn = malloc(FRAME_LENGTH * sizeof(float));\n\t\t\tbuffers->gWindow = malloc(FRAME_LENGTH * sizeof(float));\n\n\t\t\targ = 2.0f * M_PI / (float)(FRAME_LENGTH-1);\n\t\t\tfor (i=0; i &lt; FRAME_LENGTH; i++) {\n\t\t\t\t// Blackman-Harris\n\t\t\t\tbuffers->gWindow[i] =  0.35875f - 0.48829f * cos(arg * (float)i) + 0.14128f * cos(2.0f * arg * (float)i) - 0.01168f * cos(3.0f * arg * (float)i);\n\t\t\t\t// Gain correction\n\t\t\t\tbuffers->gWindow[i] *= 0.761f;\n\n\t\t\t}\n\n\t\t</callback>\n\n\t\t<callback event=\"activate\"><![CDATA[\n\t\t\tmemset(buffers->gInFIFO, 0, FRAME_LENGTH*sizeof(float));\n\t\t\tmemset(buffers->gOutFIFO, 0, FRAME_LENGTH*sizeof(float));\n\t\t\tmemset(buffers->gLastPhase, 0, FRAME_LENGTH*sizeof(float)/2);\n\t\t\tmemset(buffers->gSumPhase, 0, FRAME_LENGTH*sizeof(float)/2);\n\t\t\tmemset(buffers->gOutputAccum, 0, 2*FRAME_LENGTH*sizeof(float));\n\t\t\tmemset(buffers->gAnaFreq, 0, FRAME_LENGTH*sizeof(float));\n\t\t\tmemset(buffers->gAnaMagn, 0, FRAME_LENGTH*sizeof(float));\n\t\t\tbuffers->gRover = 0;\n\t\t\tpitch_scale(buffers, 1.0, FRAME_LENGTH, 16, FRAME_LENGTH, sample_rate, buffers->gInFIFO, buffers->gOutFIFO, 0, 0.0f);\n\t\t]]></callback>\n\n\t\t<callback event=\"cleanup\"><![CDATA[\n                        free (plugin_data->buffers->gInFIFO);\n                        free (plugin_data->buffers->gOutFIFO);\n                        free (plugin_data->buffers->gLastPhase);\n                        free (plugin_data->buffers->gSumPhase);\n                        free (plugin_data->buffers->gOutputAccum);\n                        free (plugin_data->buffers->gAnaFreq);\n                        free (plugin_data->buffers->gAnaMagn);\n                        free (plugin_data->buffers->gSynFreq);\n                        free (plugin_data->buffers->gSynMagn);\n                        free (plugin_data->buffers->gWindow);\n                        free (plugin_data->buffers);\n\t\t]]></callback>\n\n\t\t<port label=\"mult\" dir=\"input\" type=\"control\" hint=\"default_1\">\n\t\t\t<name>Pitch co-efficient</name>\n\t\t\t<range min=\"0.5\" max=\"2\"/>\n\t\t\t<p>The pitch scaling factor, a value of 2.0 will increase the pitch by one octave, etc.</p>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n\n\t\t<port label=\"latency\" dir=\"output\" type=\"control\">\n\t\t\t<name>latency</name>\n\t\t</port>\n\n\t\t<instance-data label=\"buffers\" type=\"sbuffers *\"/>\n\n\t\t<instance-data label=\"sample_rate\" type=\"long\"/>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "plate_1423.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"util/waveguide_nl.h\"\n\n      #define LP_INNER 0.96f\n      #define LP_OUTER 0.983f\n\n      #define RUN_WG(n, junct_a, junct_b) waveguide_nl_process_lin(w[n], junct_a - out[n*2+1], junct_b - out[n*2], out+n*2, out+n*2+1)\n    </code>\n  </global>\n\n  <plugin label=\"plate\" id=\"1423\" class=\"ReverbPlugin\">\n    <name>Plate reverb</name>\n    <p>A physical model of a steel plate reverb.</p>\n    <p>Based on Josep Comajuncosas' gong model, it uses 8 linear waveguides to model the plate.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      w = malloc(8 * sizeof(waveguide_nl *));\n      w[0] = waveguide_nl_new(2389, LP_INNER, 0.04f, 0.0f);\n      w[1] = waveguide_nl_new(4742, LP_INNER, 0.17f, 0.0f);\n      w[2] = waveguide_nl_new(4623, LP_INNER, 0.52f, 0.0f);\n      w[3] = waveguide_nl_new(2142, LP_INNER, 0.48f, 0.0f);\n      w[4] = waveguide_nl_new(5597, LP_OUTER, 0.32f, 0.0f);\n      w[5] = waveguide_nl_new(3692, LP_OUTER, 0.89f, 0.0f);\n      w[6] = waveguide_nl_new(5611, LP_OUTER, 0.28f, 0.0f);\n      w[7] = waveguide_nl_new(3703, LP_OUTER, 0.29f, 0.0f);\n\n      out = calloc(32, sizeof(float));\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      unsigned int i;\n\n      for (i = 0; i < 8; i++) {\n\twaveguide_nl_reset(w[i]);\n      }\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      const float scale = powf(time * 0.117647f, 1.34f);\n      const float lpscale = 1.0f - damping * 0.93;\n\n      for (pos=0; pos<8; pos++) {\n\twaveguide_nl_set_delay(w[pos], w[pos]->size * scale);\n      }\n      for (pos=0; pos<4; pos++) {\n\twaveguide_nl_set_fc(w[pos], LP_INNER * lpscale);\n      }\n      for (; pos<8; pos++) {\n\twaveguide_nl_set_fc(w[pos], LP_OUTER * lpscale);\n      }\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tconst float alpha = (out[0] + out[2] + out[4] + out[6]) * 0.5f\n\t\t\t    + input[pos];\n\tconst float beta = (out[1] + out[9] + out[14]) * 0.666666666f;\n\tconst float gamma = (out[3] + out[8] + out[11]) * 0.666666666f;\n\tconst float delta = (out[5] + out[10] + out[13]) * 0.666666666f;\n\tconst float epsilon = (out[7] + out[12] + out[15]) * 0.666666666f;\n\n\tRUN_WG(0, beta, alpha);\n\tRUN_WG(1, gamma, alpha);\n\tRUN_WG(2, delta, alpha);\n\tRUN_WG(3, epsilon, alpha);\n\tRUN_WG(4, beta, gamma);\n\tRUN_WG(5, gamma, delta);\n\tRUN_WG(6, delta, epsilon);\n\tRUN_WG(7, epsilon, beta);\n\n        buffer_write(outputl[pos], beta * wet + input[pos] * (1.0f - wet));\n        buffer_write(outputr[pos], gamma * wet + input[pos] * (1.0f - wet));\n      }\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      unsigned int i;\n\n      for (i = 0; i < 8; i++) {\n\twaveguide_nl_free(plugin_data->w[i]);\n      }\n      free(plugin_data->w);\n      free(plugin_data->out);\n    ]]></callback>\n\n    <port label=\"time\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Reverb time</name>\n      <p>Controls the RT60 time of the reverb. Actually controls the size of the plate. The mapping between plate size and RT60 time is just a heuristic, so it's not very accurate.</p>\n      <range min=\"0.01\" max=\"8.5\"/>\n    </port>\n\n    <port label=\"damping\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Damping</name>\n      <p>Controls the degree that the surface of the plate is damped.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"wet\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Dry/wet mix</name>\n      <p>Controls the balance between the dry and wet signals.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"outputl\" dir=\"output\" type=\"audio\">\n      <name>Left output</name>\n    </port>\n\n    <port label=\"outputr\" dir=\"output\" type=\"audio\">\n      <name>Right output</name>\n    </port>\n\n    <instance-data label=\"w\" type=\"waveguide_nl **\" />\n    <instance-data label=\"out\" type=\"float *\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "po/.gitignore",
    "content": "/boldquot.sed\n/en@boldquot.header\n/en@quot.header\n/insert-header.sin\n/Makefile.in.in\n/Makevars.template\n/Rules-quot\n/quot.sed\n/remove-potcdate.sed\n/remove-potcdate.sin\n/stamp-po\n/*.gmo\n"
  },
  {
    "path": "po/Makevars",
    "content": "# Makefile variables for PO directory in any package using GNU gettext.\n\n# Usually the message domain is the same as the package name.\nDOMAIN = $(PACKAGE)\n\n# These two variables depend on the location of this directory.\nsubdir = po\ntop_builddir = ..\n\n# These options get passed to xgettext.\nXGETTEXT_OPTIONS = --keyword=_ --keyword=N_\n\n# This is the copyright holder that gets inserted into the header of the\n# $(DOMAIN).pot file.  Set this to the copyright holder of the surrounding\n# package.  (Note that the msgstr strings, extracted from the package's\n# sources, belong to the copyright holder of the package.)  Translators are\n# expected to transfer the copyright for their translations to this person\n# or entity, or to disclaim their copyright.  The empty string stands for\n# the public domain; in this case the translators are expected to disclaim\n# their copyright.\nCOPYRIGHT_HOLDER = JAMin project\n\n# This is the list of locale categories, beyond LC_MESSAGES, for which the\n# message catalogs shall be used.  It is usually empty.\nEXTRA_LOCALE_CATEGORIES =\n\nMSGID_BUGS_ADDRESS = jamin-devel@lists.sourceforge.net\n"
  },
  {
    "path": "po/POTFILES.in",
    "content": "amp_1181.c\ndiode_1185.c\ndivider_1186.c\nshaper_1187.c\nringmod_1188.c\ncomb_1190.c\ndeclip_1195.c\nfoverdrive_1196.c\nsinus_wavewrapper_1198.c\nhermes_filter_1200.c\nmultivoice_chorus_1201.c\nflanger_1191.c\ndecimator_1202.c\nsingle_para_1203.c\ntriple_para_1204.c\ntransient_1206.c\nfad_delay_1192.c\ndc_remove_1207.c\nretro_flange_1208.c\nvalve_1209.c\nsifter_1210.c\ntape_delay_1211.c\nstep_muxer_1212.c\nfoldover_1213.c\nsvf_1214.c\ngsm_1215.c\ngverb_1216.c\nphasers_1217.c\nharmonic_gen_1220.c\nsurround_encoder_1401.c\ndelayorama_1402.c\ndyson_compress_1403.c\ncrossover_dist_1404.c\nvalve_rect_1405.c\nsplit_1406.c\nalias_1407.c\nsatan_maximiser_1408.c\nkaraoke_1409.c\ngate_1410.c\ncomb_splitter_1411.c\nwave_terrain_1412.c\nhard_limiter_1413.c\nsmooth_decimate_1414.c\nfm_osc_1415.c\nanalogue_osc_1416.c\nrate_shifter_1417.c\nfreq_tracker_1418.c\nmod_delay_1419.c\nmatrix_st_ms_1420.c\nmatrix_ms_st_1421.c\nmatrix_spatialiser_1422.c\nplate_1423.c\ngong_1424.c\nsc1_1425.c\nsc2_1426.c\nsc3_1427.c\nzm1_1428.c\ninv_1429.c\nchebstortion_1430.c\nbode_shifter_1431.c\nbode_shifter_cv_1432.c\nam_pitchshift_1433.c\nsc4_1882.c\nlcr_delay_1436.c\ngiant_flange_1437.c\ndj_flanger_1438.c\ngong_beater_1439.c\nhilbert_1440.c\nsin_cos_1881.c\nse4_1883.c\nbandpass_a_iir_1893.c\nbandpass_iir_1892.c\nhighpass_iir_1890.c\nlowpass_iir_1891.c\nnotch_iir_1894.c\ndj_eq_1901.c\nbutterworth_1902.c\nallpass_1895.c\ncomb_1887.c\ndecay_1886.c\ndelay_1898.c\nimpulse_1885.c\nvynil_1905.c\nrevdelay_1605.c\nls_filter_1908.c\nconst_1909.c\npointer_cast_1910.c\nfast_lookahead_limiter_1913.c\nlatency_1914.c\nxfade_1915.c\nmbeq_1197.c\npitch_scale_1193.c\npitch_scale_1194.c\nimp_1199.c\n"
  },
  {
    "path": "po/de.po",
    "content": "# translation of swh-plugins 0.4.15-1 to German\n# Copyright (C) 2009 Steve Harris\n# This file is distributed under the same license as the swh-plugins package.\n# Chris Leick <c.leick@vollbio.de>, 2009.\n#\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: swh-plugins 0.4.15-1\\n\"\n\"POT-Creation-Date: 2003-03-09 16:06+0000\\n\"\n\"PO-Revision-Date: 2009-04-01 12:02+0100\\n\"\n\"Last-Translator: Chris Leick <c.leick@vollbio.de>\\n\"\n\"Language-Team: German <debian-l10n-german@lists.debian.org>\\n\"\n\"MIME-Version: 1.0\\n\"\n\"Content-Type: text/plain; charset=UTF-8\\n\"\n\"Content-Transfer-Encoding: 8bit\\n\"\n\"Plural-Forms: nplurals=2; plural=(n != 1);\\n\"\n\n#: alias_1407.xml:51\nmsgid \"Aliasing\"\nmsgstr \"Aliasing\"\n\n#: alias_1407.xml:76\nmsgid \"Aliasing level\"\nmsgstr \"Aliasing-Stufe\"\n\n#: alias_1407.xml:86 amp_1181.xml:83 am_pitchshift_1433.xml:177\n#: bode_shifter_1431.xml:193 bode_shifter_cv_1432.xml:195\n#: chebstortion_1430.xml:187 comb_1190.xml:132 comb_splitter_1411.xml:126\n#: crossover_dist_1404.xml:103 dc_remove_1207.xml:80 debug_1184.xml:113\n#: decimator_1202.xml:127 declip_1195.xml:84 delayorama_1402.xml:355\n#: diode_1185.xml:98 divider_1186.xml:119 dj_flanger_1438.xml:189\n#: dyson_compress_1403.xml:406 fad_delay_1192.xml:154 flanger_1191.xml:234\n#: foldover_1213.xml:94 foverdrive_1196.xml:82 freq_tracker_1418.xml:111\n#: gate_1410.xml:248 giant_flange_1437.xml:278 gong_1424.xml:425\n#: gong_beater_1439.xml:151 gsm_1215.xml:194 gverb_1216.xml:196\n#: hard_limiter_1413.xml:110 harmonic_gen_1220.xml:248\n#: hermes_filter_1200.xml:991 imp_1199.xml:290 inv_1429.xml:70\n#: mbeq_1197.xml:380 mod_delay_1419.xml:123 multivoice_chorus_1201.xml:281\n#: phasers_1217.xml:247 phasers_1217.xml:381 phasers_1217.xml:485\n#: pitch_scale_1193.xml:91 pitch_scale_1194.xml:90 plate_1423.xml:160\n#: rate_shifter_1417.xml:125 retro_flange_1208.xml:238 ringmod_1188.xml:109\n#: ringmod_1188.xml:233 satan_maximiser_1408.xml:141 sc1_1425.xml:198\n#: sc2_1426.xml:202 shaper_1187.xml:93 sifter_1210.xml:203\n#: single_para_1203.xml:119 sinus_wavewrapper_1198.xml:84\n#: smooth_decimate_1414.xml:120 split_1406.xml:72 svf_1214.xml:167\n#: tape_delay_1211.xml:262 transient_1206.xml:177 triple_para_1204.xml:255\n#: valve_1209.xml:128 valve_rect_1405.xml:156 zm1_1428.xml:80\nmsgid \"Input\"\nmsgstr \"Eingang\"\n\n#: alias_1407.xml:93 amp_1181.xml:90 am_pitchshift_1433.xml:184\n#: analogue_osc_1416.xml:168 chebstortion_1430.xml:197 comb_1190.xml:139\n#: crossover_dist_1404.xml:110 dc_remove_1207.xml:87 debug_1184.xml:120\n#: decimator_1202.xml:137 declip_1195.xml:94 delayorama_1402.xml:362\n#: diode_1185.xml:105 divider_1186.xml:126 dj_flanger_1438.xml:196\n#: dyson_compress_1403.xml:413 fad_delay_1192.xml:161 flanger_1191.xml:241\n#: fm_osc_1415.xml:102 foldover_1213.xml:101 foverdrive_1196.xml:89\n#: gate_1410.xml:255 giant_flange_1437.xml:285 gong_1424.xml:432\n#: gong_beater_1439.xml:158 gsm_1215.xml:201 hard_limiter_1413.xml:117\n#: harmonic_gen_1220.xml:258 hermes_filter_1200.xml:1001 imp_1199.xml:297\n#: inv_1429.xml:77 mbeq_1197.xml:387 mod_delay_1419.xml:130\n#: multivoice_chorus_1201.xml:288 phasers_1217.xml:254 phasers_1217.xml:388\n#: phasers_1217.xml:492 pitch_scale_1193.xml:98 pitch_scale_1194.xml:97\n#: rate_shifter_1417.xml:132 retro_flange_1208.xml:245 ringmod_1188.xml:126\n#: ringmod_1188.xml:240 satan_maximiser_1408.xml:148 sc1_1425.xml:205\n#: sc2_1426.xml:209 shaper_1187.xml:103 sifter_1210.xml:210\n#: single_para_1203.xml:129 sinus_wavewrapper_1198.xml:94\n#: smooth_decimate_1414.xml:127 step_muxer_1212.xml:222 svf_1214.xml:177\n#: tape_delay_1211.xml:269 transient_1206.xml:187 triple_para_1204.xml:265\n#: valve_1209.xml:135 valve_rect_1405.xml:163 zm1_1428.xml:87\nmsgid \"Output\"\nmsgstr \"Ausgang\"\n\n#: amp_1181.xml:48\nmsgid \"Simple amplifier\"\nmsgstr \"Einfacher Verstärker\"\n\n#: amp_1181.xml:73\nmsgid \"Amps gain (dB)\"\nmsgstr \"Verstärkung (dB)\"\n\n#: am_pitchshift_1433.xml:132\nmsgid \"AM pitchshifter\"\nmsgstr \"AM-Tonhöhenschieber\"\n\n#: am_pitchshift_1433.xml:157\nmsgid \"Pitch shift\"\nmsgstr \"Tonhöhenschieber\"\n\n#: am_pitchshift_1433.xml:167\nmsgid \"Buffer size\"\nmsgstr \"Puffergröße\"\n\n#: analogue_osc_1416.xml:103\nmsgid \"Analogue Oscillator\"\nmsgstr \"Analoger Oszillator\"\n\n#: analogue_osc_1416.xml:128 fm_osc_1415.xml:82\nmsgid \"Waveform (1=sin, 2=tri, 3=squ, 4=saw)\"\nmsgstr \"\"\n\"Wellenform (1=sinusförmig, 2=dreieckig, 3=quadratisch, 4=sägezahnförmig)\"\n\n#: analogue_osc_1416.xml:138 fm_osc_1415.xml:92 freq_tracker_1418.xml:118\n#: ringmod_1188.xml:183 single_para_1203.xml:99\nmsgid \"Frequency (Hz)\"\nmsgstr \"Frequenz (Hz)\"\n\n#: analogue_osc_1416.xml:148\nmsgid \"Warmth\"\nmsgstr \"Wärme\"\n\n#: analogue_osc_1416.xml:158\nmsgid \"Instability\"\nmsgstr \"Instabilität\"\n\n#: bode_shifter_1431.xml:158\nmsgid \"Bode frequency shifter\"\nmsgstr \"Bode-Frequenzschieber\"\n\n#: bode_shifter_1431.xml:183\nmsgid \"Frequency shift\"\nmsgstr \"Frequenzverschiebung\"\n\n#: bode_shifter_1431.xml:200 bode_shifter_cv_1432.xml:222\nmsgid \"Down out\"\nmsgstr \"Unten heraus\"\n\n#: bode_shifter_1431.xml:207 bode_shifter_cv_1432.xml:229\nmsgid \"Up out\"\nmsgstr \"Oben heraus\"\n\n#: bode_shifter_cv_1432.xml:150\n# CV ist ein »kapazitiver Teiler«.\n# Siehe auch: http://www.guitar-letter.de/Knowledge/Grundlagen/DieLautstaer\n#             keeinstellunginderElektrogitarre.htm\nmsgid \"Bode frequency shifter (CV)\"\nmsgstr \"Bode-Frequenzschieber (CV)\"\n\n#: bode_shifter_cv_1432.xml:175\nmsgid \"Base shift\"\nmsgstr \"Grundverschiebung\"\n\n#: bode_shifter_cv_1432.xml:185\nmsgid \"Mix (-1=down, +1=up)\"\nmsgstr \"Mix (-1=ab, +1=auf)\"\n\n#: bode_shifter_cv_1432.xml:202\nmsgid \"CV Attenuation\"\nmsgstr \"CV-Dämpfung\"\n\n#: bode_shifter_cv_1432.xml:212\nmsgid \"Shift CV\"\nmsgstr \"CV verschieben\"\n\n#: bode_shifter_cv_1432.xml:236\nmsgid \"Mix out\"\nmsgstr \"Mixen\"\n\n#: chebstortion_1430.xml:152\nmsgid \"Chebyshev distortion\"\nmsgstr \"Tschebyscheff-Amplitudenverzerrung\"\n\n#: chebstortion_1430.xml:177 valve_rect_1405.xml:146\nmsgid \"Distortion\"\nmsgstr \"Verzerrung\"\n\n#: comb_1190.xml:87\nmsgid \"Comb Filter\"\nmsgstr \"Kammfilter\"\n\n#: comb_1190.xml:112 comb_splitter_1411.xml:116\nmsgid \"Band separation (Hz)\"\nmsgstr \"Bandtrennung (Hz)\"\n\n#: comb_1190.xml:122 flanger_1191.xml:224 giant_flange_1437.xml:258\n#: lcr_delay_1436.xml:241 phasers_1217.xml:227 phasers_1217.xml:465\nmsgid \"Feedback\"\nmsgstr \"Feedback\"\n\n#: comb_splitter_1411.xml:91\nmsgid \"Comb Splitter\"\nmsgstr \"Kammspalter\"\n\n#: comb_splitter_1411.xml:133 split_1406.xml:82\nmsgid \"Output 1\"\nmsgstr \"Ausgang 1\"\n\n#: comb_splitter_1411.xml:140 split_1406.xml:92\nmsgid \"Output 2\"\nmsgstr \"Ausgang 2\"\n\n#: crossover_dist_1404.xml:58\nmsgid \"Crossover distortion\"\nmsgstr \"Übergangs-Amplitudenverzerrung\"\n\n#: crossover_dist_1404.xml:83\nmsgid \"Crossover amplitude\"\nmsgstr \"Übergangs-Amplitude\"\n\n#: crossover_dist_1404.xml:93 smooth_decimate_1414.xml:110\nmsgid \"Smoothing\"\nmsgstr \"Glätten\"\n\n#: dc_remove_1207.xml:55\nmsgid \"DC Offset Remover\"\nmsgstr \"DC-Versatz-Entferner\"\n\n#: debug_1184.xml:68\nmsgid \"Debug Plugin\"\nmsgstr \"Fehlersuch-Erweiterung\"\n\n#: debug_1184.xml:93\nmsgid \"Display all values?\"\nmsgstr \"Alle Werte anzeigen?\"\n\n#: debug_1184.xml:103\nmsgid \"Reset counters?\"\nmsgstr \"Zähler zurücksetzen?\"\n\n#: decimator_1202.xml:82\nmsgid \"Decimator\"\nmsgstr \"Dezimierer\"\n\n#: decimator_1202.xml:107\nmsgid \"Bit depth\"\nmsgstr \"Bit-Tiefe\"\n\n#: decimator_1202.xml:117\nmsgid \"Sample rate (Hz)\"\nmsgstr \"Abtastrate (Hz)\"\n\n#: declip_1195.xml:59\nmsgid \"Declipper\"\nmsgstr \"Begrenzungsentferner\"\n\n#: delayorama_1402.xml:220\nmsgid \"Delayorama\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:245\nmsgid \"Random seed\"\nmsgstr \"Anfangswert für Zufallsgenerator\"\n\n#: delayorama_1402.xml:255 hermes_filter_1200.xml:621\nmsgid \"Input gain (dB)\"\nmsgstr \"Eingangsverstärkung (dB)\"\n\n#: delayorama_1402.xml:265 dj_flanger_1438.xml:179\nmsgid \"Feedback (%)\"\nmsgstr \"Feedback (%)\"\n\n#: delayorama_1402.xml:275\nmsgid \"Number of taps\"\nmsgstr \"Anzahl der Taps\"\n\n#: delayorama_1402.xml:285\nmsgid \"First delay (s)\"\nmsgstr \"Erste Verzögerung (s)\"\n\n#: delayorama_1402.xml:295\nmsgid \"Delay range (s)\"\nmsgstr \"Verzögerungsbereich (s)\"\n\n#: delayorama_1402.xml:305\nmsgid \"Delay change\"\nmsgstr \"Verzögerungsänderung\"\n\n#: delayorama_1402.xml:315\nmsgid \"Delay random (%)\"\nmsgstr \"Zufällige Verzögerung (%)\"\n\n#: delayorama_1402.xml:325\nmsgid \"Amplitude change\"\nmsgstr \"Amplitudenänderung\"\n\n#: delayorama_1402.xml:335\nmsgid \"Amplitude random (%)\"\nmsgstr \"Zufallsamplitude (%)\"\n\n#: delayorama_1402.xml:345 gsm_1215.xml:164 plate_1423.xml:150\nmsgid \"Dry/wet mix\"\nmsgstr \"Trockener/nasser Mix\"\n\n#: diode_1185.xml:63\nmsgid \"Diode Processor\"\nmsgstr \"Diodenprozessor\"\n\n#: diode_1185.xml:88\nmsgid \"Mode (0 for none, 1 for half wave, 2 for full wave)\"\nmsgstr \"Modus (0 für keine, 1 für halbe Welle, 2 für ganze Welle)\"\n\n#: divider_1186.xml:84\nmsgid \"Audio Divider (Suboctave Generator)\"\nmsgstr \"Audio-Teiler (Unteroktaven-Generator)\"\n\n#: divider_1186.xml:109\nmsgid \"Denominator\"\nmsgstr \"Nenner\"\n\n#: dj_flanger_1438.xml:124\nmsgid \"DJ flanger\"\nmsgstr \"\"\n\n#: dj_flanger_1438.xml:149\nmsgid \"LFO sync\"\nmsgstr \"\"\n\n#: dj_flanger_1438.xml:159\nmsgid \"LFO period (s)\"\nmsgstr \"LFO-Periode (s)\"\n\n#: dj_flanger_1438.xml:169\nmsgid \"LFO depth (ms)\"\nmsgstr \"LFO-Tiefe (ms)\"\n\n#: dyson_compress_1403.xml:341\nmsgid \"Dyson compressor\"\nmsgstr \"Dyson-Kompressor\"\n\n#: dyson_compress_1403.xml:366\nmsgid \"Peak limit (dB)\"\nmsgstr \"Spitzenbegrenzung (dB)\"\n\n#: dyson_compress_1403.xml:376\nmsgid \"Release time (s)\"\nmsgstr \"Abklingzeit (s)\"\n\n#: dyson_compress_1403.xml:386\nmsgid \"Fast compression ratio\"\nmsgstr \"Schnelles Verdichtungsverhältnis\"\n\n#: dyson_compress_1403.xml:396\nmsgid \"Compression ratio\"\nmsgstr \"Verdichtungsverhältnis\"\n\n#: fad_delay_1192.xml:109\nmsgid \"Fractionally Addressed Delay Line\"\nmsgstr \"Unterbrochen adressierte Verzögerungslinie\"\n\n#: fad_delay_1192.xml:134\nmsgid \"Delay (seconds)\"\nmsgstr \"Verzögerung (Sekunden)\"\n\n#: fad_delay_1192.xml:144\nmsgid \"Feedback (dB)\"\nmsgstr \"Feedback (dB)\"\n\n#: flanger_1191.xml:169\nmsgid \"Flanger\"\nmsgstr \"\"\n\n#: flanger_1191.xml:194 multivoice_chorus_1201.xml:231\nmsgid \"Delay base (ms)\"\nmsgstr \"Verzögerungsbasis (ms)\"\n\n#: flanger_1191.xml:204\nmsgid \"Max slowdown (ms)\"\nmsgstr \"Maximale Verzögerung (ms)\"\n\n#: flanger_1191.xml:214 multivoice_chorus_1201.xml:261\nmsgid \"LFO frequency (Hz)\"\nmsgstr \"LFO-Frequenz (Hz)\"\n\n#: fm_osc_1415.xml:57\nmsgid \"FM Oscillator\"\nmsgstr \"FM-Oszillator\"\n\n#: foldover_1213.xml:49\nmsgid \"Foldover distortion\"\nmsgstr \"\"\n\n#: foldover_1213.xml:74\nmsgid \"Drive\"\nmsgstr \"\"\n\n#: foldover_1213.xml:84\nmsgid \"Skew\"\nmsgstr \"Schräge\"\n\n#: foverdrive_1196.xml:47\nmsgid \"Fast overdrive\"\nmsgstr \"Schnell übersteuern\"\n\n#: foverdrive_1196.xml:72\nmsgid \"Drive level\"\nmsgstr \"\"\n\n#: freq_tracker_1418.xml:76\nmsgid \"Frequency tracker\"\nmsgstr \"Frequenz-Verfolger\"\n\n#: freq_tracker_1418.xml:101\nmsgid \"Tracking speed\"\nmsgstr \"Verfolgungsgeschwindigkeit\"\n\n#: gate_1410.xml:143\nmsgid \"Gate\"\nmsgstr \"Tor\"\n\n#: gate_1410.xml:168\nmsgid \"LF key filter (Hz)\"\nmsgstr \"LF-Schlüsselfilter (Hz)\"\n\n#: gate_1410.xml:178\nmsgid \"HF key filter (Hz)\"\nmsgstr \"HF-Schlüsselfilter (Hz)\"\n\n#: gate_1410.xml:188\nmsgid \"Threshold (dB)\"\nmsgstr \"Schwelle (dB)\"\n\n#: gate_1410.xml:198\nmsgid \"Attack (ms)\"\nmsgstr \"Anschlag (ms)\"\n\n#: gate_1410.xml:208\nmsgid \"Hold (ms)\"\nmsgstr \"Halten (ms)\"\n\n#: gate_1410.xml:218\nmsgid \"Decay (ms)\"\nmsgstr \"Ausklingen (ms)\"\n\n#: gate_1410.xml:228\nmsgid \"Range (dB)\"\nmsgstr \"Bereich (dB)\"\n\n#: gate_1410.xml:238\nmsgid \"Output select (-1 = key listen, 0 = gate, 1 = bypass)\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:183\nmsgid \"Giant flange\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:208\nmsgid \"Double delay\"\nmsgstr \"Doppelte Verzögerung\"\n\n#: giant_flange_1437.xml:218\nmsgid \"LFO frequency 1 (Hz)\"\nmsgstr \"LFO-Frequenz 1 (Hz)\"\n\n#: giant_flange_1437.xml:228\nmsgid \"Delay 1 range (s)\"\nmsgstr \"Verzögerung-1-Bereich (s)\"\n\n#: giant_flange_1437.xml:238\nmsgid \"LFO frequency 2 (Hz)\"\nmsgstr \"LFO-Frequenz 2 (Hz)\"\n\n#: giant_flange_1437.xml:248\nmsgid \"Delay 2 range (s)\"\nmsgstr \"Verzögerung-2-Bereich (s)\"\n\n#: giant_flange_1437.xml:268 lcr_delay_1436.xml:281\nmsgid \"Dry/Wet level\"\nmsgstr \"Trocken-/Nass-Stufe\"\n\n#: gong_1424.xml:130\nmsgid \"Gong model\"\nmsgstr \"Gongmodell\"\n\n#: gong_1424.xml:155\nmsgid \"Inner damping\"\nmsgstr \"Innere Dämpfung\"\n\n#: gong_1424.xml:165\nmsgid \"Outer damping\"\nmsgstr \"Äußere Dämpfung\"\n\n#: gong_1424.xml:175\nmsgid \"Mic position\"\nmsgstr \"Micro-Position\"\n\n#: gong_1424.xml:185\nmsgid \"Inner size 1\"\nmsgstr \"Innere Größe 1\"\n\n#: gong_1424.xml:195\nmsgid \"Inner stiffness 1 +\"\nmsgstr \"Innere Starre 1 +\"\n\n#: gong_1424.xml:205\nmsgid \"Inner stiffness 1 -\"\nmsgstr \"Innere Starre 1 -\"\n\n#: gong_1424.xml:215\nmsgid \"Inner size 2\"\nmsgstr \"Innere Größe 2\"\n\n#: gong_1424.xml:225\nmsgid \"Inner stiffness 2 +\"\nmsgstr \"Innere Starre 2 +\"\n\n#: gong_1424.xml:235\nmsgid \"Inner stiffness 2 -\"\nmsgstr \"Innere Starre 2 -\"\n\n#: gong_1424.xml:245\nmsgid \"Inner size 3\"\nmsgstr \"Innere Größe 3\"\n\n#: gong_1424.xml:255\nmsgid \"Inner stiffness 3 +\"\nmsgstr \"Innere Starre 3 +\"\n\n#: gong_1424.xml:265\nmsgid \"Inner stiffness 3 -\"\nmsgstr \"Innere Starre 3 -\"\n\n#: gong_1424.xml:275\nmsgid \"Inner size 4\"\nmsgstr \"Innere Größe 4\"\n\n#: gong_1424.xml:285\nmsgid \"Inner stiffness 4 +\"\nmsgstr \"Innere Starre 4 +\"\n\n#: gong_1424.xml:295\nmsgid \"Inner stiffness 4 -\"\nmsgstr \"Innere Starre 4 -\"\n\n#: gong_1424.xml:305\nmsgid \"Outer size 1\"\nmsgstr \"Äußere Größe 1\"\n\n#: gong_1424.xml:315\nmsgid \"Outer stiffness 1 +\"\nmsgstr \"Äußere Starre 1 +\"\n\n#: gong_1424.xml:325\nmsgid \"Outer stiffness 1 -\"\nmsgstr \"Äußere Starre 1 -\"\n\n#: gong_1424.xml:335\nmsgid \"Outer size 2\"\nmsgstr \"Äußere Größe 2\"\n\n#: gong_1424.xml:345\nmsgid \"Outer stiffness 2 +\"\nmsgstr \"Äußere Starre 2 +\"\n\n#: gong_1424.xml:355\nmsgid \"Outer stiffness 2 -\"\nmsgstr \"Äußere Starre 2 -\"\n\n#: gong_1424.xml:365\nmsgid \"Outer size 3\"\nmsgstr \"Äußere Größe 3\"\n\n#: gong_1424.xml:375\nmsgid \"Outer stiffness 3 +\"\nmsgstr \"Äußere Starre 3 +\"\n\n#: gong_1424.xml:385\nmsgid \"Outer stiffness 3 -\"\nmsgstr \"Äußere Starre 3 -\"\n\n#: gong_1424.xml:395\nmsgid \"Outer size 4\"\nmsgstr \"Äußere Größe 4\"\n\n#: gong_1424.xml:405\nmsgid \"Outer stiffness 4 +\"\nmsgstr \"Äußere Starre 4 +\"\n\n#: gong_1424.xml:415\nmsgid \"Outer stiffness 4 -\"\nmsgstr \"Äußere Starre 4 -\"\n\n#: gong_beater_1439.xml:96\nmsgid \"Gong beater\"\nmsgstr \"Gongschläger\"\n\n#: gong_beater_1439.xml:121\nmsgid \"Impulse gain (dB)\"\nmsgstr \"Impuls-Zunahme\"\n\n#: gong_beater_1439.xml:131\nmsgid \"Strike gain (dB)\"\nmsgstr \"Schlag-Zunahme (dB)\"\n\n#: gong_beater_1439.xml:141\nmsgid \"Strike duration (s)\"\nmsgstr \"Schlagdauer (s)\"\n\n#: gsm_1215.xml:139\nmsgid \"GSM simulator\"\nmsgstr \"GSM-Simulator\"\n\n#: gsm_1215.xml:174\nmsgid \"Number of passes\"\nmsgstr \"Anzahl der Durchgänge\"\n\n#: gsm_1215.xml:184\nmsgid \"Error rate (bits/block)\"\nmsgstr \"Fehlerquote (Bits/Block)\"\n\n#: gverb_1216.xml:101\nmsgid \"GVerb\"\nmsgstr \"GVerb\"\n\n#: gverb_1216.xml:126\nmsgid \"Roomsize (m)\"\nmsgstr \"Raumgröße (m)\"\n\n#: gverb_1216.xml:136\nmsgid \"Reverb time (s)\"\nmsgstr \"Hallzeit (s)\"\n\n#: gverb_1216.xml:146 plate_1423.xml:140\nmsgid \"Damping\"\nmsgstr \"Dämpfung\"\n\n#: gverb_1216.xml:156\nmsgid \"Input bandwidth\"\nmsgstr \"Eingangsbandbreite\"\n\n#: gverb_1216.xml:166\nmsgid \"Dry signal level (dB)\"\nmsgstr \"Trockene Sognalstufe (dB)\"\n\n#: gverb_1216.xml:176\nmsgid \"Early reflection level (dB)\"\nmsgstr \"Anfängliche Spiegelungsstufe (dB)\"\n\n#: gverb_1216.xml:186\nmsgid \"Tail level (dB)\"\nmsgstr \"Endstufe (dB)\"\n\n#: gverb_1216.xml:203 plate_1423.xml:167 sc3_1427.xml:233 sc4_1434.xml:238\nmsgid \"Left output\"\nmsgstr \"Linker Ausgang\"\n\n#: gverb_1216.xml:210 plate_1423.xml:174 sc3_1427.xml:240 sc4_1434.xml:245\nmsgid \"Right output\"\nmsgstr \"Rechter Ausgang\"\n\n#: hard_limiter_1413.xml:55\nmsgid \"Hard Limiter\"\nmsgstr \"Harter Begrenzer\"\n\n#: hard_limiter_1413.xml:80\nmsgid \"dB limit\"\nmsgstr \"dB-Begrenzung\"\n\n#: hard_limiter_1413.xml:90\nmsgid \"Wet level\"\nmsgstr \"Trockene Stufe\"\n\n#: hard_limiter_1413.xml:100\nmsgid \"Residue level\"\nmsgstr \"Reststufe\"\n\n#: harmonic_gen_1220.xml:123\nmsgid \"Harmonic generator\"\nmsgstr \"Obertongenerator\"\n\n#: harmonic_gen_1220.xml:148\nmsgid \"Fundamental magnitude\"\nmsgstr \"Grundlegende Größenordnung\"\n\n#: harmonic_gen_1220.xml:158\nmsgid \"2nd harmonic magnitude\"\nmsgstr \"2. Oberton-Größenordnung\"\n\n#: harmonic_gen_1220.xml:168\nmsgid \"3rd harmonic magnitude\"\nmsgstr \"3. Oberton-Größenordnung\"\n\n#: harmonic_gen_1220.xml:178\nmsgid \"4th harmonic magnitude\"\nmsgstr \"4. Oberton-Größenordnung\"\n\n#: harmonic_gen_1220.xml:188\nmsgid \"5th harmonic magnitude\"\nmsgstr \"5. Oberton-Größenordnung\"\n\n#: harmonic_gen_1220.xml:198\nmsgid \"6th harmonic magnitude\"\nmsgstr \"6. Oberton-Größenordnung\"\n\n#: harmonic_gen_1220.xml:208\nmsgid \"7th harmonic magnitude\"\nmsgstr \"7. Oberton-Größenordnung\"\n\n#: harmonic_gen_1220.xml:218\nmsgid \"8th harmonic magnitude\"\nmsgstr \"8. Oberton-Größenordnung\"\n\n#: harmonic_gen_1220.xml:228\nmsgid \"9th harmonic magnitude\"\nmsgstr \"9. Oberton-Größenordnung\"\n\n#: harmonic_gen_1220.xml:238\nmsgid \"10th harmonic magnitude\"\nmsgstr \"10. Oberton-Größenordnung\"\n\n#: hermes_filter_1200.xml:446\nmsgid \"Hermes Filter\"\nmsgstr \"Hermes-Filter\"\n\n#: hermes_filter_1200.xml:471\nmsgid \"LFO1 freq (Hz)\"\nmsgstr \"LFO1-Freq. (Hz)\"\n\n#: hermes_filter_1200.xml:481\nmsgid \"LFO1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h)\"\nmsgstr \"\"\n\"LFO1-Welle (0 = sinusförmig, 1 = dreieckig, 2 = sägezahnförmig, \"\n\"3 = quadratisch, 4 = s&h)\"\n\n#: hermes_filter_1200.xml:491\nmsgid \"LFO2 freq (Hz)\"\nmsgstr \"LFO2-Freq. (Hz)\"\n\n#: hermes_filter_1200.xml:501\nmsgid \"LFO2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h)\"\nmsgstr \"\"\n\"LFO2-Welle (0 = sinusförmig, 1 = dreieckig, 2 = sägezahnförmig, \"\n\"3 = quadratisch, 4 = s&h)\"\n\n#: hermes_filter_1200.xml:511\nmsgid \"Osc1 freq (Hz)\"\nmsgstr \"Osz1-Freq. (Hz)\"\n\n#: hermes_filter_1200.xml:521\nmsgid \"Osc1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise)\"\nmsgstr \"\"\n\"Osz1-Welle (0 = sinusförmig, 1 = dreieckig, 2 = sägezahnförmig, \"\n\"3 = quadratisch, 4 = Rauschen)\"\n\n#: hermes_filter_1200.xml:531\nmsgid \"Osc2 freq (Hz)\"\nmsgstr \"Osz2-Freq. (Hz)\"\n\n#: hermes_filter_1200.xml:541\nmsgid \"Osc2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise)\"\nmsgstr \"\"\n\"Osz2-Welle (0 = sinusförmig, 1 = dreieckig, 2 = sägezahnförmig, \"\n\"3 = quadratisch, 4 = Rauschen)\"\n\n#: hermes_filter_1200.xml:551\nmsgid \"Ringmod 1 depth (0=none, 1=AM, 2=RM)\"\nmsgstr \"Ringmod-1-Tiefe (0=keine, 1=AM, 2=RM)\"\n\n#: hermes_filter_1200.xml:561\nmsgid \"Ringmod 2 depth (0=none, 1=AM, 2=RM)\"\nmsgstr \"Ringmod-2-Tiefe (0=keine, 1=AM, 2=RM)\"\n\n#: hermes_filter_1200.xml:571\nmsgid \"Ringmod 3 depth (0=none, 1=AM, 2=RM)\"\nmsgstr \"Ringmod-3-Tiefe (0=keine, 1=AM, 2=RM)\"\n\n#: hermes_filter_1200.xml:581\nmsgid \"Osc1 gain (dB)\"\nmsgstr \"Osz1-Zunahme (dB)\"\n\n#: hermes_filter_1200.xml:591\nmsgid \"RM1 gain (dB)\"\nmsgstr \"RM1-Zunahme (dB)\"\n\n#: hermes_filter_1200.xml:601\nmsgid \"Osc2 gain (dB)\"\nmsgstr \"Osz2-Zunahme (dB)\"\n\n#: hermes_filter_1200.xml:611\nmsgid \"RM2 gain (dB)\"\nmsgstr \"RM2-Zunahme (dB)\"\n\n#: hermes_filter_1200.xml:631\nmsgid \"RM3 gain (dB)\"\nmsgstr \"RM3-Zunahme (dB)\"\n\n#: hermes_filter_1200.xml:641\nmsgid \"Xover lower freq\"\nmsgstr \"Xover niedrigere Freq.\"\n\n#: hermes_filter_1200.xml:651\nmsgid \"Xover upper freq\"\nmsgstr \"Xover höhere Freq.\"\n\n#: hermes_filter_1200.xml:661\nmsgid \"Dist1 drive\"\nmsgstr \"Dist1-Schwung\"\n\n#: hermes_filter_1200.xml:671\nmsgid \"Dist2 drive\"\nmsgstr \"Dist2-Schwung\"\n\n#: hermes_filter_1200.xml:681\nmsgid \"Dist3 drive\"\nmsgstr \"Dist3-Schwung\"\n\n#: hermes_filter_1200.xml:691\nmsgid \"Filt1 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\nmsgstr \"Filt1-Typ (0=kein, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\n\n#: hermes_filter_1200.xml:701\nmsgid \"Filt1 freq\"\nmsgstr \"Filt1-Freq.\"\n\n#: hermes_filter_1200.xml:711\nmsgid \"Filt1 q\"\nmsgstr \"Filt1 q\"\n\n#: hermes_filter_1200.xml:721\nmsgid \"Filt1 resonance\"\nmsgstr \"Filt1 Resonanz\"\n\n#: hermes_filter_1200.xml:731\nmsgid \"Filt1 LFO1 level\"\nmsgstr \"Filt1-LFO1-Stufe\"\n\n#: hermes_filter_1200.xml:741\nmsgid \"Filt1 LFO2 level\"\nmsgstr \"Filt1-LFO2-Stufe\"\n\n#: hermes_filter_1200.xml:751\nmsgid \"Filt2 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\nmsgstr \"Filt2-Typ (0=kein, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\n\n#: hermes_filter_1200.xml:761\nmsgid \"Filt2 freq\"\nmsgstr \"Filt2-Freq.\"\n\n#: hermes_filter_1200.xml:771\nmsgid \"Filt2 q\"\nmsgstr \"Filt2 q\"\n\n#: hermes_filter_1200.xml:781\nmsgid \"Filt2 resonance\"\nmsgstr \"Filt2 Resonanz\"\n\n#: hermes_filter_1200.xml:791\nmsgid \"Filt2 LFO1 level\"\nmsgstr \"Filt2-LFO1-Stufe\"\n\n#: hermes_filter_1200.xml:801\nmsgid \"Filt2 LFO2 level\"\nmsgstr \"Filt2-LFO2-Stufe\"\n\n#: hermes_filter_1200.xml:811\nmsgid \"Filt3 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\nmsgstr \"Filt3-Typ (0=kein, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\n\n#: hermes_filter_1200.xml:821\nmsgid \"Filt3 freq\"\nmsgstr \"Filt3-Freq.\"\n\n#: hermes_filter_1200.xml:831\nmsgid \"Filt3 q\"\nmsgstr \"Filt3 q\"\n\n#: hermes_filter_1200.xml:841\nmsgid \"Filt3 resonance\"\nmsgstr \"Filt3 Resonanz\"\n\n#: hermes_filter_1200.xml:851\nmsgid \"Filt3 LFO1 level\"\nmsgstr \"Filt3-LFO1-Stufe\"\n\n#: hermes_filter_1200.xml:861\nmsgid \"Filt3 LFO2 level\"\nmsgstr \"Filt3-LFO2-Stufe\"\n\n#: hermes_filter_1200.xml:871\nmsgid \"Delay1 length (s)\"\nmsgstr \"Verzögerung1-Länge (s)\"\n\n#: hermes_filter_1200.xml:881\nmsgid \"Delay1 feedback\"\nmsgstr \"Verzögerung1-Feedback\"\n\n#: hermes_filter_1200.xml:891\nmsgid \"Delay1 wetness\"\nmsgstr \"Verzögerung1-Nässe\"\n\n#: hermes_filter_1200.xml:901\nmsgid \"Delay2 length (s)\"\nmsgstr \"Verzögerung2-Länge (s)\"\n\n#: hermes_filter_1200.xml:911\nmsgid \"Delay2 feedback\"\nmsgstr \"Verzögerung2-Feedback\"\n\n#: hermes_filter_1200.xml:921\nmsgid \"Delay2 wetness\"\nmsgstr \"Verzögerung2-Nässe\"\n\n#: hermes_filter_1200.xml:931\nmsgid \"Delay3 length (s)\"\nmsgstr \"Verzögerung3-Länge (s)\"\n\n#: hermes_filter_1200.xml:941\nmsgid \"Delay3 feedback\"\nmsgstr \"Verzögerung3-Feedback\"\n\n#: hermes_filter_1200.xml:951\nmsgid \"Delay3 wetness\"\nmsgstr \"Verzögerung3-Nässe\"\n\n#: hermes_filter_1200.xml:961 triple_para_1204.xml:135\nmsgid \"Band 1 gain (dB)\"\nmsgstr \"Band-1-Zunahme (dB)\"\n\n#: hermes_filter_1200.xml:971 triple_para_1204.xml:165\nmsgid \"Band 2 gain (dB)\"\nmsgstr \"Band-2-Zunahme (dB)\"\n\n#: hermes_filter_1200.xml:981 triple_para_1204.xml:195\nmsgid \"Band 3 gain (dB)\"\nmsgstr \"Band-3-Zunahme (dB)\"\n\n#: imp_1199.xml:235\nmsgid \"Impulse convolver\"\nmsgstr \"Impuls-Zusammenroller\"\n\n#: imp_1199.xml:260\nmsgid \"Impulse ID\"\nmsgstr \"Impuls-ID\"\n\n#: imp_1199.xml:270\nmsgid \"High latency mode\"\nmsgstr \"Modus mit hoher Wartezeit\"\n\n#: imp_1199.xml:280 single_para_1203.xml:89\nmsgid \"Gain (dB)\"\nmsgstr \"Zunahme (dB)\"\n\n#: inv_1429.xml:45\nmsgid \"Inverter\"\nmsgstr \"Wechselrichter\"\n\n#: karaoke_1409.xml:50\nmsgid \"Karaoke\"\nmsgstr \"Karaoke\"\n\n#: karaoke_1409.xml:75\nmsgid \"Vocal volume (dB)\"\nmsgstr \"Stimmenlautstärke\"\n\n#: karaoke_1409.xml:85\nmsgid \"Left in\"\nmsgstr \"Links ein\"\n\n#: karaoke_1409.xml:92\nmsgid \"Right in\"\nmsgstr \"Rechts ein\"\n\n#: karaoke_1409.xml:99\nmsgid \"Left out\"\nmsgstr \"Links aus\"\n\n#: karaoke_1409.xml:106\nmsgid \"Right out\"\nmsgstr \"Rechts aus\"\n\n#: lcr_delay_1436.xml:156\nmsgid \"L/C/R Delay\"\nmsgstr \"L/C/R-Verzögerung\"\n\n#: lcr_delay_1436.xml:181\nmsgid \"L delay (ms)\"\nmsgstr \"L-Verzögerung (ms)\"\n\n#: lcr_delay_1436.xml:191\nmsgid \"L level\"\nmsgstr \"L-Stufe\"\n\n#: lcr_delay_1436.xml:201\nmsgid \"C delay (ms)\"\nmsgstr \"C-Verzögerung (ms)\"\n\n#: lcr_delay_1436.xml:211\nmsgid \"C level\"\nmsgstr \"C-Stufe\"\n\n#: lcr_delay_1436.xml:221\nmsgid \"R delay (ms)\"\nmsgstr \"R-Verzögerung (ms)\"\n\n#: lcr_delay_1436.xml:231\nmsgid \"R level\"\nmsgstr \"R-Stufe\"\n\n#: lcr_delay_1436.xml:251\nmsgid \"High damp (%)\"\nmsgstr \"Hohe Feuchtigkeit (%)\"\n\n#: lcr_delay_1436.xml:261\nmsgid \"Low damp (%)\"\nmsgstr \"Niedrige Feuchtigkeit (%)\"\n\n#: lcr_delay_1436.xml:271\nmsgid \"Spread\"\nmsgstr \"Ausbreitung\"\n\n#: lcr_delay_1436.xml:291\nmsgid \"L input\"\nmsgstr \"L-Eingang\"\n\n#: lcr_delay_1436.xml:298\nmsgid \"R input\"\nmsgstr \"R-Eingang\"\n\n#: lcr_delay_1436.xml:305\nmsgid \"L output\"\nmsgstr \"L-Ausgang\"\n\n#: lcr_delay_1436.xml:312\nmsgid \"R output\"\nmsgstr \"R-Ausgang\"\n\n#: step_muxer_1212.xml:166\nmsgid \"Input 1\"\nmsgstr \"Eingang 1\"\n\n#: step_muxer_1212.xml:173\nmsgid \"Input 2\"\nmsgstr \"Eingang 2\"\n\n#: matrix_ms_st_1421.xml:45\nmsgid \"Matrix: MS to Stereo\"\nmsgstr \"Matrix: MS zu Stereo\"\n\n#: matrix_ms_st_1421.xml:70 matrix_spatialiser_1422.xml:205\nmsgid \"Width\"\nmsgstr \"Breite\"\n\n#: matrix_ms_st_1421.xml:80 matrix_st_ms_1420.xml:84\nmsgid \"Mid\"\nmsgstr \"Mittlere\"\n\n#: matrix_ms_st_1421.xml:87 matrix_st_ms_1420.xml:91\nmsgid \"Side\"\nmsgstr \"Seite\"\n\n#: matrix_ms_st_1421.xml:94 matrix_st_ms_1420.xml:70\nmsgid \"Left\"\nmsgstr \"Links\"\n\n#: matrix_ms_st_1421.xml:101 matrix_st_ms_1420.xml:77\nmsgid \"Right\"\nmsgstr \"Rechts\"\n\n#: matrix_spatialiser_1422.xml:166\nmsgid \"Matrix Spatialiser\"\nmsgstr \"\"\n\n#: matrix_spatialiser_1422.xml:191\nmsgid \"Input L\"\nmsgstr \"Eingang L\"\n\n#: matrix_spatialiser_1422.xml:198\nmsgid \"Input R\"\nmsgstr \"Eingang R\"\n\n#: matrix_spatialiser_1422.xml:215\nmsgid \"Output L\"\nmsgstr \"Ausgang L\"\n\n#: matrix_spatialiser_1422.xml:222\nmsgid \"Output R\"\nmsgstr \"Ausgang R\"\n\n#: matrix_st_ms_1420.xml:45\nmsgid \"Matrix: Stereo to MS\"\nmsgstr \"Matrix: Stereo zu MS\"\n\n#: mbeq_1197.xml:205\nmsgid \"Multiband EQ\"\nmsgstr \"Multiband EQ\"\n\n#: mbeq_1197.xml:230\nmsgid \"50Hz gain (low shelving)\"\nmsgstr \"50Hz Zunahme (niedrige Aufstellung)\"\n\n#: mbeq_1197.xml:240\nmsgid \"100Hz gain\"\nmsgstr \"100Hz Zunahme\"\n\n#: mbeq_1197.xml:250\nmsgid \"156Hz gain\"\nmsgstr \"156Hz Zunahme\"\n\n#: mbeq_1197.xml:260\nmsgid \"220Hz gain\"\nmsgstr \"220Hz Zunahme\"\n\n#: mbeq_1197.xml:270\nmsgid \"311Hz gain\"\nmsgstr \"311Hz Zunahme\"\n\n#: mbeq_1197.xml:280\nmsgid \"440Hz gain\"\nmsgstr \"440Hz Zunahme\"\n\n#: mbeq_1197.xml:290\nmsgid \"622Hz gain\"\nmsgstr \"622Hz Zunahme\"\n\n#: mbeq_1197.xml:300\nmsgid \"880Hz gain\"\nmsgstr \"880Hz Zunahme\"\n\n#: mbeq_1197.xml:310\nmsgid \"1250Hz gain\"\nmsgstr \"1250Hz Zunahme\"\n\n#: mbeq_1197.xml:320\nmsgid \"1750Hz gain\"\nmsgstr \"1750Hz Zunahme\"\n\n#: mbeq_1197.xml:330\nmsgid \"2500Hz gain\"\nmsgstr \"2500Hz Zunahme\"\n\n#: mbeq_1197.xml:340\nmsgid \"3500Hz gain\"\nmsgstr \"3500Hz Zunahme\"\n\n#: mbeq_1197.xml:350\nmsgid \"5000Hz gain\"\nmsgstr \"5000Hz Zunahme\"\n\n#: mbeq_1197.xml:360\nmsgid \"10000Hz gain\"\nmsgstr \"10000Hz Zunahme\"\n\n#: mbeq_1197.xml:370\nmsgid \"20000Hz gain\"\nmsgstr \"20000Hz Zunahme\"\n\n#: mod_delay_1419.xml:78\nmsgid \"Modulatable delay\"\nmsgstr \"Regelbare Verzögerung\"\n\n#: mod_delay_1419.xml:103\nmsgid \"Base delay (s)\"\nmsgstr \"Grundverzögerung (s)\"\n\n#: mod_delay_1419.xml:113\nmsgid \"Delay (s)\"\nmsgstr \"Verzögerung (s)\"\n\n#: multivoice_chorus_1201.xml:196\nmsgid \"Multivoice Chorus\"\nmsgstr \"Mehrstimmiger Chor\"\n\n#: multivoice_chorus_1201.xml:221\nmsgid \"Number of voices\"\nmsgstr \"Anzahl der Stimmen\"\n\n#: multivoice_chorus_1201.xml:241\nmsgid \"Voice separation (ms)\"\nmsgstr \"Stimmentrennung (ms)\"\n\n#: multivoice_chorus_1201.xml:251\nmsgid \"Detune (%)\"\nmsgstr \"Verstimmung (%)\"\n\n#: multivoice_chorus_1201.xml:271\nmsgid \"Output attenuation (dB)\"\nmsgstr \"Ausgangsdämpfung (dB)\"\n\n#: phasers_1217.xml:182\nmsgid \"LFO Phaser\"\nmsgstr \"\"\n\n#: phasers_1217.xml:207\nmsgid \"LFO rate (Hz)\"\nmsgstr \"LFO-Rate (Hz)\"\n\n#: phasers_1217.xml:217\nmsgid \"LFO depth\"\nmsgstr \"LFO-Tiefe\"\n\n#: phasers_1217.xml:237 phasers_1217.xml:475\nmsgid \"Spread (octaves)\"\nmsgstr \"Ausbreitung (Oktaven)\"\n\n#: phasers_1217.xml:276\nmsgid \"4 x 4 pole allpass\"\nmsgstr \"4 x 4 Pol-Allpass\"\n\n#: phasers_1217.xml:301\nmsgid \"Frequency 1\"\nmsgstr \"Frequenz 1\"\n\n#: phasers_1217.xml:311\nmsgid \"Feedback 1\"\nmsgstr \"Feedback 1\"\n\n#: phasers_1217.xml:321\nmsgid \"Frequency 2\"\nmsgstr \"Frequenz 2\"\n\n#: phasers_1217.xml:331\nmsgid \"Feedback 2\"\nmsgstr \"Feedback 2\"\n\n#: phasers_1217.xml:341\nmsgid \"Frequency 3\"\nmsgstr \"Frequenz 3\"\n\n#: phasers_1217.xml:351\nmsgid \"Feedback 3\"\nmsgstr \"Feedback 3\"\n\n#: phasers_1217.xml:361\nmsgid \"Frequency 4\"\nmsgstr \"Frequenz 4\"\n\n#: phasers_1217.xml:371\nmsgid \"Feedback 4\"\nmsgstr \"Feedback 4\"\n\n#: phasers_1217.xml:410\nmsgid \"Auto phaser\"\nmsgstr \"\"\n\n#: phasers_1217.xml:435\nmsgid \"Attack time (s)\"\nmsgstr \"Anschlagzeit (s)\"\n\n#: phasers_1217.xml:445\nmsgid \"Decay time (s)\"\nmsgstr \"Abklingzeit (s)\"\n\n#: phasers_1217.xml:455\nmsgid \"Modulation depth\"\nmsgstr \"Regeltiefe\"\n\n#: pitch_scale_1193.xml:56\nmsgid \"Pitch Scaler\"\nmsgstr \"\"\n\n#: pitch_scale_1193.xml:81 pitch_scale_1194.xml:80\nmsgid \"Pitch co-efficient\"\nmsgstr \"\"\n\n#: pitch_scale_1194.xml:55\nmsgid \"Higher Quality Pitch Scaler\"\nmsgstr \"\"\n\n#: plate_1423.xml:105\nmsgid \"Plate reverb\"\nmsgstr \"Blech-Hall\"\n\n#: plate_1423.xml:130\nmsgid \"Reverb time\"\nmsgstr \"Hallzeit\"\n\n#: rate_shifter_1417.xml:90\nmsgid \"Rate shifter\"\nmsgstr \"Anteil-Schieber\"\n\n#: rate_shifter_1417.xml:115\nmsgid \"Rate\"\nmsgstr \"Anteil\"\n\n#: retro_flange_1208.xml:193\nmsgid \"Retro Flanger\"\nmsgstr \"\"\n\n#: retro_flange_1208.xml:218\nmsgid \"Average stall (ms)\"\nmsgstr \"\"\n\n#: retro_flange_1208.xml:228\nmsgid \"Flange frequency (Hz)\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:74\nmsgid \"Ringmod with two inputs\"\nmsgstr \"Ringmod mit zwei Eingängen\"\n\n#: ringmod_1188.xml:99 ringmod_1188.xml:173\nmsgid \"Modulation depth (0=none, 1=AM, 2=RM)\"\nmsgstr \"Regeltiefe (0=keine, 1=AM, 2=RM)\"\n\n#: ringmod_1188.xml:116\nmsgid \"Modulator\"\nmsgstr \"Regler\"\n\n#: ringmod_1188.xml:148\nmsgid \"Ringmod with LFO\"\nmsgstr \"Ringmod mit LFO\"\n\n#: ringmod_1188.xml:193\nmsgid \"Sine level\"\nmsgstr \"Sinus-Stufe\"\n\n#: ringmod_1188.xml:203\nmsgid \"Triangle level\"\nmsgstr \"Triangelstufe\"\n\n#: ringmod_1188.xml:213\nmsgid \"Sawtooth level\"\nmsgstr \"Sägezahnstufe\"\n\n#: ringmod_1188.xml:223\nmsgid \"Square level\"\nmsgstr \"Quadratstufe\"\n\n#: satan_maximiser_1408.xml:96\nmsgid \"Barry's Satan Maximiser\"\nmsgstr \"Barrys Satan-Maximierer\"\n\n#: satan_maximiser_1408.xml:121\nmsgid \"Decay time (samples)\"\nmsgstr \"Ausklingzeit (Muster)\"\n\n#: satan_maximiser_1408.xml:131\nmsgid \"Knee point (dB)\"\nmsgstr \"Kniepunkt (dB)\"\n\n#: sc1_1425.xml:113\nmsgid \"SC1\"\nmsgstr \"SC1\"\n\n#: sc1_1425.xml:138 sc2_1426.xml:135 sc3_1427.xml:142 sc4_1434.xml:144\nmsgid \"Attack time (ms)\"\nmsgstr \"Anschlagzeit (ms)\"\n\n#: sc1_1425.xml:148 sc2_1426.xml:145 sc3_1427.xml:152 sc4_1434.xml:154\nmsgid \"Release time (ms)\"\nmsgstr \"Freigabezeit (ms)\"\n\n#: sc1_1425.xml:158 sc2_1426.xml:155 sc3_1427.xml:162 sc4_1434.xml:164\nmsgid \"Threshold level (dB)\"\nmsgstr \"Schwellenstufe (dB)\"\n\n#: sc1_1425.xml:168 sc2_1426.xml:165 sc3_1427.xml:172 sc4_1434.xml:174\nmsgid \"Ratio (1:n)\"\nmsgstr \"Verhältnis (1:n)\"\n\n#: sc1_1425.xml:178 sc2_1426.xml:175 sc3_1427.xml:182 sc4_1434.xml:184\nmsgid \"Knee radius (dB)\"\nmsgstr \"Knieradius (dB)\"\n\n#: sc1_1425.xml:188 sc2_1426.xml:185 sc3_1427.xml:192 sc4_1434.xml:194\nmsgid \"Makeup gain (dB)\"\nmsgstr \"Aufbauzunahme (dB)\"\n\n#: sc2_1426.xml:110\nmsgid \"SC2\"\nmsgstr \"SC2\"\n\n#: sc2_1426.xml:195 sc3_1427.xml:212\nmsgid \"Sidechain\"\nmsgstr \"\"\n\n#: sc3_1427.xml:117\nmsgid \"SC3\"\nmsgstr \"SC3\"\n\n#: sc3_1427.xml:202\nmsgid \"Chain balance\"\nmsgstr \"\"\n\n#: sc3_1427.xml:219 sc4_1434.xml:224\nmsgid \"Left input\"\nmsgstr \"Linker Eingang\"\n\n#: sc3_1427.xml:226 sc4_1434.xml:231\nmsgid \"Right input\"\nmsgstr \"Rechter Eingang\"\n\n#: sc4_1434.xml:119\nmsgid \"SC4\"\nmsgstr \"SC4\"\n\n#: sc4_1434.xml:204\nmsgid \"Amplitude (dB)\"\nmsgstr \"Amplitude (dB)\"\n\n#: sc4_1434.xml:214\nmsgid \"Gain reduction (dB)\"\nmsgstr \"Zunahmeverminderung (dB)\"\n\n#: shaper_1187.xml:58\nmsgid \"Wave shaper\"\nmsgstr \"Wellenformer\"\n\n#: shaper_1187.xml:83\nmsgid \"Waveshape\"\nmsgstr \"Wellenform\"\n\n#: sifter_1210.xml:168\nmsgid \"Signal sifter\"\nmsgstr \"Signal-Schieber\"\n\n#: sifter_1210.xml:193\nmsgid \"Sift size\"\nmsgstr \"Schiebegröße\"\n\n#: single_para_1203.xml:64\nmsgid \"Single band parametric\"\nmsgstr \"Einzelband parametrisch\"\n\n#: single_para_1203.xml:109\nmsgid \"Bandwidth (octaves)\"\nmsgstr \"Bandbreite (Oktaven)\"\n\n#: sinus_wavewrapper_1198.xml:49\nmsgid \"Sinus wavewrapper\"\nmsgstr \"Sinuswellen-Hülle\"\n\n#: sinus_wavewrapper_1198.xml:74\nmsgid \"Wrap degree\"\nmsgstr \"Verhüllungsgrad\"\n\n#: smooth_decimate_1414.xml:75\nmsgid \"Smooth Decimator\"\nmsgstr \"Glatter Verminderer\"\n\n#: smooth_decimate_1414.xml:100\nmsgid \"Resample rate\"\nmsgstr \"Wiederabtast-Rate\"\n\n#: split_1406.xml:47\nmsgid \"Mono to Stereo splitter\"\nmsgstr \"Mono-zu-Stereo-Spalter\"\n\n#: step_muxer_1212.xml:124\nmsgid \"Step Demuxer\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:149\nmsgid \"Crossfade time (in ms)\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:159\nmsgid \"Clock\"\nmsgstr \"Takt\"\n\n#: step_muxer_1212.xml:180\nmsgid \"Input 3\"\nmsgstr \"Eingang 3\"\n\n#: step_muxer_1212.xml:187\nmsgid \"Input 4\"\nmsgstr \"Eingang 4\"\n\n#: step_muxer_1212.xml:194\nmsgid \"Input 5\"\nmsgstr \"Eingang 5\"\n\n#: step_muxer_1212.xml:201\nmsgid \"Input 6\"\nmsgstr \"Eingang 6\"\n\n#: step_muxer_1212.xml:208\nmsgid \"Input 7\"\nmsgstr \"Eingang 7\"\n\n#: step_muxer_1212.xml:215\nmsgid \"Input 8\"\nmsgstr \"Eingang 8\"\n\n#: surround_encoder_1401.xml:97\nmsgid \"Surround matrix encoder\"\nmsgstr \"Umgebungsmatrix-Geber\"\n\n#: surround_encoder_1401.xml:122\nmsgid \"L\"\nmsgstr \"L\"\n\n#: surround_encoder_1401.xml:129\nmsgid \"R\"\nmsgstr \"R\"\n\n#: surround_encoder_1401.xml:136\nmsgid \"C\"\nmsgstr \"C\"\n\n#: surround_encoder_1401.xml:143\nmsgid \"S\"\nmsgstr \"S\"\n\n#: surround_encoder_1401.xml:150\nmsgid \"Lt\"\nmsgstr \"Lt\"\n\n#: surround_encoder_1401.xml:157\nmsgid \"Rt\"\nmsgstr \"Rt\"\n\n#: svf_1214.xml:142\nmsgid \"State Variable Filter\"\nmsgstr \"Statusvariablenfilter\"\n\n#: svf_1214.xml:187\nmsgid \"Filter type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\nmsgstr \"Filtertyp (0=kein, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\n\n#: svf_1214.xml:197\nmsgid \"Filter freq\"\nmsgstr \"Filter Freq.\"\n\n#: svf_1214.xml:207\nmsgid \"Filter Q\"\nmsgstr \"Filter Q\"\n\n#: svf_1214.xml:217\nmsgid \"Filter resonance\"\nmsgstr \"Filterresonanz\"\n\n#: tape_delay_1211.xml:137\nmsgid \"Tape Delay Simulation\"\nmsgstr \"Bandverzögerungs-Simulation\"\n\n#: tape_delay_1211.xml:162\nmsgid \"Tape speed (inches/sec, 1=normal)\"\nmsgstr \"Bandgeschwindigkeit (Inch/Sek, 1=Normal)\"\n\n#: tape_delay_1211.xml:172\nmsgid \"Dry level (dB)\"\nmsgstr \"Trockenstufe (dB)\"\n\n#: tape_delay_1211.xml:182\nmsgid \"Tap 1 distance (inches)\"\nmsgstr \"Tap-1-Entfernung (Inch)\"\n\n#: tape_delay_1211.xml:192\nmsgid \"Tap 1 level (dB)\"\nmsgstr \"Tap-1-Stufe (dB)\"\n\n#: tape_delay_1211.xml:202\nmsgid \"Tap 2 distance (inches)\"\nmsgstr \"Tap-2-Entfernung (Inch)\"\n\n#: tape_delay_1211.xml:212\nmsgid \"Tap 2 level (dB)\"\nmsgstr \"Tap-2-Stufe (dB)\"\n\n#: tape_delay_1211.xml:222\nmsgid \"Tap 3 distance (inches)\"\nmsgstr \"Tap-3-Entfernung (Inch)\"\n\n#: tape_delay_1211.xml:232\nmsgid \"Tap 3 level (dB)\"\nmsgstr \"Tap-3-Stufe (dB)\"\n\n#: tape_delay_1211.xml:242\nmsgid \"Tap 4 distance (inches)\"\nmsgstr \"Tap-4-Entfernung (Inch)\"\n\n#: tape_delay_1211.xml:252\nmsgid \"Tap 4 level (dB)\"\nmsgstr \"Tap-4-Stufe (dB)\"\n\n#: transient_1206.xml:132\nmsgid \"Transient mangler\"\nmsgstr \"\"\n\n#: transient_1206.xml:157\nmsgid \"Attack speed\"\nmsgstr \"Anschlaggeschwindigkeit\"\n\n#: transient_1206.xml:167\nmsgid \"Sustain time\"\nmsgstr \"Ausklingzeit\"\n\n#: triple_para_1204.xml:80\nmsgid \"Triple band parametric with shelves\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:105\nmsgid \"Low-shelving gain (dB)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:115\nmsgid \"Low-shelving frequency (Hz)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:125\nmsgid \"Low-shelving slope\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:145\nmsgid \"Band 1 frequency (Hz)\"\nmsgstr \"Band-1-Frequenz (Hz)\"\n\n#: triple_para_1204.xml:155\nmsgid \"Band 1 bandwidth (octaves)\"\nmsgstr \"Band-1-Bandbreite (Oktaven)\"\n\n#: triple_para_1204.xml:175\nmsgid \"Band 2 frequency (Hz)\"\nmsgstr \"Band-2-Frequenz (Hz)\"\n\n#: triple_para_1204.xml:185\nmsgid \"Band 2 bandwidth (octaves)\"\nmsgstr \"Band-2-Bandbreite (Oktaven)\"\n\n#: triple_para_1204.xml:205\nmsgid \"Band 3 frequency (Hz)\"\nmsgstr \"Band-3-Frequenz (Hz)\"\n\n#: triple_para_1204.xml:215\nmsgid \"Band 3 bandwidth (octaves)\"\nmsgstr \"Band-3-Bandbreite (Oktaven)\"\n\n#: triple_para_1204.xml:225\nmsgid \"High-shelving gain (dB)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:235\nmsgid \"High-shelving frequency (Hz)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:245\nmsgid \"High-shelving slope\"\nmsgstr \"\"\n\n#: valve_1209.xml:83\nmsgid \"Valve saturation\"\nmsgstr \"Ventilsättigung\"\n\n#: valve_1209.xml:108\nmsgid \"Distortion level\"\nmsgstr \"Amplitudenverzerrungsstufe\"\n\n#: valve_1209.xml:118\nmsgid \"Distortion character\"\nmsgstr \"Amplitudenverzerrungscharakter\"\n\n#: valve_rect_1405.xml:111\nmsgid \"Valve rectifier\"\nmsgstr \"Ventilgleichrichter\"\n\n#: valve_rect_1405.xml:136\nmsgid \"Sag level\"\nmsgstr \"Durchhangstufe\"\n\n#: wave_terrain_1412.xml:49\nmsgid \"Wave Terrain Oscillator\"\nmsgstr \"Wellenbodenoszillator\"\n\n#: wave_terrain_1412.xml:74\nmsgid \"x\"\nmsgstr \"x\"\n\n#: wave_terrain_1412.xml:81\nmsgid \"y\"\nmsgstr \"y\"\n\n#: wave_terrain_1412.xml:88\nmsgid \"z\"\nmsgstr \"z\"\n\n#: zm1_1428.xml:55\nmsgid \"z-1\"\nmsgstr \"z-1\"\n"
  },
  {
    "path": "po/en_GB.po",
    "content": "# English translations for PACKAGE package.\n# Copyright (C) 2003 Steve Harris\n# This file is distributed under the same license as the PACKAGE package.\n# Stephen Harris <swh@ecs.soton.ac.uk>, 2003.\n#\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: swh-plugins 0.3.6\\n\"\n\"POT-Creation-Date: 2003-03-09 16:06+0000\\n\"\n\"PO-Revision-Date: 2003-03-09 14:09+0000\\n\"\n\"Last-Translator: Stephen Harris <swh@ecs.soton.ac.uk>\\n\"\n\"Language-Team: English <en@translate.freefriends.org>\\n\"\n\"MIME-Version: 1.0\\n\"\n\"Content-Type: text/plain; charset=ISO-8859-1\\n\"\n\"Content-Transfer-Encoding: 8bit\\n\"\n\"Plural-Forms: nplurals=2; plural=(n != 1);\\n\"\n\n#: alias_1407.xml:51\nmsgid \"Aliasing\"\nmsgstr \"\"\n\n#: alias_1407.xml:76\nmsgid \"Aliasing level\"\nmsgstr \"\"\n\n#: alias_1407.xml:86 amp_1181.xml:83 am_pitchshift_1433.xml:177\n#: bode_shifter_1431.xml:193 bode_shifter_cv_1432.xml:195\n#: chebstortion_1430.xml:187 comb_1190.xml:132 comb_splitter_1411.xml:126\n#: crossover_dist_1404.xml:103 dc_remove_1207.xml:80 debug_1184.xml:113\n#: decimator_1202.xml:127 declip_1195.xml:84 delayorama_1402.xml:355\n#: diode_1185.xml:98 divider_1186.xml:119 dj_flanger_1438.xml:189\n#: dyson_compress_1403.xml:406 fad_delay_1192.xml:154 flanger_1191.xml:234\n#: foldover_1213.xml:94 foverdrive_1196.xml:82 freq_tracker_1418.xml:111\n#: gate_1410.xml:248 giant_flange_1437.xml:278 gong_1424.xml:425\n#: gong_beater_1439.xml:151 gsm_1215.xml:194 gverb_1216.xml:196\n#: hard_limiter_1413.xml:110 harmonic_gen_1220.xml:248\n#: hermes_filter_1200.xml:991 imp_1199.xml:290 inv_1429.xml:70\n#: mbeq_1197.xml:380 mod_delay_1419.xml:123 multivoice_chorus_1201.xml:281\n#: phasers_1217.xml:247 phasers_1217.xml:381 phasers_1217.xml:485\n#: pitch_scale_1193.xml:91 pitch_scale_1194.xml:90 plate_1423.xml:160\n#: rate_shifter_1417.xml:125 retro_flange_1208.xml:238 ringmod_1188.xml:109\n#: ringmod_1188.xml:233 satan_maximiser_1408.xml:141 sc1_1425.xml:198\n#: sc2_1426.xml:202 shaper_1187.xml:93 sifter_1210.xml:203\n#: single_para_1203.xml:119 sinus_wavewrapper_1198.xml:84\n#: smooth_decimate_1414.xml:120 split_1406.xml:72 svf_1214.xml:167\n#: tape_delay_1211.xml:262 transient_1206.xml:177 triple_para_1204.xml:255\n#: valve_1209.xml:128 valve_rect_1405.xml:156 zm1_1428.xml:80\nmsgid \"Input\"\nmsgstr \"\"\n\n#: alias_1407.xml:93 amp_1181.xml:90 am_pitchshift_1433.xml:184\n#: analogue_osc_1416.xml:168 chebstortion_1430.xml:197 comb_1190.xml:139\n#: crossover_dist_1404.xml:110 dc_remove_1207.xml:87 debug_1184.xml:120\n#: decimator_1202.xml:137 declip_1195.xml:94 delayorama_1402.xml:362\n#: diode_1185.xml:105 divider_1186.xml:126 dj_flanger_1438.xml:196\n#: dyson_compress_1403.xml:413 fad_delay_1192.xml:161 flanger_1191.xml:241\n#: fm_osc_1415.xml:102 foldover_1213.xml:101 foverdrive_1196.xml:89\n#: gate_1410.xml:255 giant_flange_1437.xml:285 gong_1424.xml:432\n#: gong_beater_1439.xml:158 gsm_1215.xml:201 hard_limiter_1413.xml:117\n#: harmonic_gen_1220.xml:258 hermes_filter_1200.xml:1001 imp_1199.xml:297\n#: inv_1429.xml:77 mbeq_1197.xml:387 mod_delay_1419.xml:130\n#: multivoice_chorus_1201.xml:288 phasers_1217.xml:254 phasers_1217.xml:388\n#: phasers_1217.xml:492 pitch_scale_1193.xml:98 pitch_scale_1194.xml:97\n#: rate_shifter_1417.xml:132 retro_flange_1208.xml:245 ringmod_1188.xml:126\n#: ringmod_1188.xml:240 satan_maximiser_1408.xml:148 sc1_1425.xml:205\n#: sc2_1426.xml:209 shaper_1187.xml:103 sifter_1210.xml:210\n#: single_para_1203.xml:129 sinus_wavewrapper_1198.xml:94\n#: smooth_decimate_1414.xml:127 step_muxer_1212.xml:222 svf_1214.xml:177\n#: tape_delay_1211.xml:269 transient_1206.xml:187 triple_para_1204.xml:265\n#: valve_1209.xml:135 valve_rect_1405.xml:163 zm1_1428.xml:87\nmsgid \"Output\"\nmsgstr \"\"\n\n#: amp_1181.xml:48\nmsgid \"Simple amplifier\"\nmsgstr \"\"\n\n#: amp_1181.xml:73\nmsgid \"Amps gain (dB)\"\nmsgstr \"\"\n\n#: am_pitchshift_1433.xml:132\nmsgid \"AM pitchshifter\"\nmsgstr \"\"\n\n#: am_pitchshift_1433.xml:157\nmsgid \"Pitch shift\"\nmsgstr \"\"\n\n#: am_pitchshift_1433.xml:167\nmsgid \"Buffer size\"\nmsgstr \"\"\n\n#: analogue_osc_1416.xml:103\nmsgid \"Analogue Oscillator\"\nmsgstr \"\"\n\n#: analogue_osc_1416.xml:128 fm_osc_1415.xml:82\nmsgid \"Waveform (1=sin, 2=tri, 3=squ, 4=saw)\"\nmsgstr \"\"\n\n#: analogue_osc_1416.xml:138 fm_osc_1415.xml:92 freq_tracker_1418.xml:118\n#: ringmod_1188.xml:183 single_para_1203.xml:99\nmsgid \"Frequency (Hz)\"\nmsgstr \"\"\n\n#: analogue_osc_1416.xml:148\nmsgid \"Warmth\"\nmsgstr \"\"\n\n#: analogue_osc_1416.xml:158\nmsgid \"Instability\"\nmsgstr \"\"\n\n#: bode_shifter_1431.xml:158\nmsgid \"Bode frequency shifter\"\nmsgstr \"\"\n\n#: bode_shifter_1431.xml:183\nmsgid \"Frequency shift\"\nmsgstr \"\"\n\n#: bode_shifter_1431.xml:200 bode_shifter_cv_1432.xml:222\nmsgid \"Down out\"\nmsgstr \"\"\n\n#: bode_shifter_1431.xml:207 bode_shifter_cv_1432.xml:229\nmsgid \"Up out\"\nmsgstr \"\"\n\n#: bode_shifter_cv_1432.xml:150\nmsgid \"Bode frequency shifter (CV)\"\nmsgstr \"\"\n\n#: bode_shifter_cv_1432.xml:175\nmsgid \"Base shift\"\nmsgstr \"\"\n\n#: bode_shifter_cv_1432.xml:185\nmsgid \"Mix (-1=down, +1=up)\"\nmsgstr \"\"\n\n#: bode_shifter_cv_1432.xml:202\nmsgid \"CV Attenuation\"\nmsgstr \"\"\n\n#: bode_shifter_cv_1432.xml:212\nmsgid \"Shift CV\"\nmsgstr \"\"\n\n#: bode_shifter_cv_1432.xml:236\nmsgid \"Mix out\"\nmsgstr \"\"\n\n#: chebstortion_1430.xml:152\nmsgid \"Chebyshev distortion\"\nmsgstr \"\"\n\n#: chebstortion_1430.xml:177 valve_rect_1405.xml:146\nmsgid \"Distortion\"\nmsgstr \"\"\n\n#: comb_1190.xml:87\nmsgid \"Comb Filter\"\nmsgstr \"\"\n\n#: comb_1190.xml:112 comb_splitter_1411.xml:116\nmsgid \"Band separation (Hz)\"\nmsgstr \"\"\n\n#: comb_1190.xml:122 flanger_1191.xml:224 giant_flange_1437.xml:258\n#: lcr_delay_1436.xml:241 phasers_1217.xml:227 phasers_1217.xml:465\nmsgid \"Feedback\"\nmsgstr \"\"\n\n#: comb_splitter_1411.xml:91\nmsgid \"Comb Splitter\"\nmsgstr \"\"\n\n#: comb_splitter_1411.xml:133 split_1406.xml:82\nmsgid \"Output 1\"\nmsgstr \"\"\n\n#: comb_splitter_1411.xml:140 split_1406.xml:92\nmsgid \"Output 2\"\nmsgstr \"\"\n\n#: crossover_dist_1404.xml:58\nmsgid \"Crossover distortion\"\nmsgstr \"\"\n\n#: crossover_dist_1404.xml:83\nmsgid \"Crossover amplitude\"\nmsgstr \"\"\n\n#: crossover_dist_1404.xml:93 smooth_decimate_1414.xml:110\nmsgid \"Smoothing\"\nmsgstr \"\"\n\n#: dc_remove_1207.xml:55\nmsgid \"DC Offset Remover\"\nmsgstr \"\"\n\n#: debug_1184.xml:68\nmsgid \"Debug Plugin\"\nmsgstr \"\"\n\n#: debug_1184.xml:93\nmsgid \"Display all values?\"\nmsgstr \"\"\n\n#: debug_1184.xml:103\nmsgid \"Reset counters?\"\nmsgstr \"\"\n\n#: decimator_1202.xml:82\nmsgid \"Decimator\"\nmsgstr \"\"\n\n#: decimator_1202.xml:107\nmsgid \"Bit depth\"\nmsgstr \"\"\n\n#: decimator_1202.xml:117\nmsgid \"Sample rate (Hz)\"\nmsgstr \"\"\n\n#: declip_1195.xml:59\nmsgid \"Declipper\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:220\nmsgid \"Delayorama\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:245\nmsgid \"Random seed\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:255 hermes_filter_1200.xml:621\nmsgid \"Input gain (dB)\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:265 dj_flanger_1438.xml:179\nmsgid \"Feedback (%)\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:275\nmsgid \"Number of taps\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:285\nmsgid \"First delay (s)\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:295\nmsgid \"Delay range (s)\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:305\nmsgid \"Delay change\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:315\nmsgid \"Delay random (%)\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:325\nmsgid \"Amplitude change\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:335\nmsgid \"Amplitude random (%)\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:345 gsm_1215.xml:164 plate_1423.xml:150\nmsgid \"Dry/wet mix\"\nmsgstr \"\"\n\n#: diode_1185.xml:63\nmsgid \"Diode Processor\"\nmsgstr \"\"\n\n#: diode_1185.xml:88\nmsgid \"Mode (0 for none, 1 for half wave, 2 for full wave)\"\nmsgstr \"\"\n\n#: divider_1186.xml:84\nmsgid \"Audio Divider (Suboctave Generator)\"\nmsgstr \"\"\n\n#: divider_1186.xml:109\nmsgid \"Denominator\"\nmsgstr \"\"\n\n#: dj_flanger_1438.xml:124\nmsgid \"DJ flanger\"\nmsgstr \"\"\n\n#: dj_flanger_1438.xml:149\nmsgid \"LFO sync\"\nmsgstr \"\"\n\n#: dj_flanger_1438.xml:159\nmsgid \"LFO period (s)\"\nmsgstr \"\"\n\n#: dj_flanger_1438.xml:169\nmsgid \"LFO depth (ms)\"\nmsgstr \"\"\n\n#: dyson_compress_1403.xml:341\nmsgid \"Dyson compressor\"\nmsgstr \"\"\n\n#: dyson_compress_1403.xml:366\nmsgid \"Peak limit (dB)\"\nmsgstr \"\"\n\n#: dyson_compress_1403.xml:376\nmsgid \"Release time (s)\"\nmsgstr \"\"\n\n#: dyson_compress_1403.xml:386\nmsgid \"Fast compression ratio\"\nmsgstr \"\"\n\n#: dyson_compress_1403.xml:396\nmsgid \"Compression ratio\"\nmsgstr \"\"\n\n#: fad_delay_1192.xml:109\nmsgid \"Fractionally Addressed Delay Line\"\nmsgstr \"\"\n\n#: fad_delay_1192.xml:134\nmsgid \"Delay (seconds)\"\nmsgstr \"\"\n\n#: fad_delay_1192.xml:144\nmsgid \"Feedback (dB)\"\nmsgstr \"\"\n\n#: flanger_1191.xml:169\nmsgid \"Flanger\"\nmsgstr \"\"\n\n#: flanger_1191.xml:194 multivoice_chorus_1201.xml:231\nmsgid \"Delay base (ms)\"\nmsgstr \"\"\n\n#: flanger_1191.xml:204\nmsgid \"Max slowdown (ms)\"\nmsgstr \"\"\n\n#: flanger_1191.xml:214 multivoice_chorus_1201.xml:261\nmsgid \"LFO frequency (Hz)\"\nmsgstr \"\"\n\n#: fm_osc_1415.xml:57\nmsgid \"FM Oscillator\"\nmsgstr \"\"\n\n#: foldover_1213.xml:49\nmsgid \"Foldover distortion\"\nmsgstr \"\"\n\n#: foldover_1213.xml:74\nmsgid \"Drive\"\nmsgstr \"\"\n\n#: foldover_1213.xml:84\nmsgid \"Skew\"\nmsgstr \"\"\n\n#: foverdrive_1196.xml:47\nmsgid \"Fast overdrive\"\nmsgstr \"\"\n\n#: foverdrive_1196.xml:72\nmsgid \"Drive level\"\nmsgstr \"\"\n\n#: freq_tracker_1418.xml:76\nmsgid \"Frequency tracker\"\nmsgstr \"\"\n\n#: freq_tracker_1418.xml:101\nmsgid \"Tracking speed\"\nmsgstr \"\"\n\n#: gate_1410.xml:143\nmsgid \"Gate\"\nmsgstr \"\"\n\n#: gate_1410.xml:168\nmsgid \"LF key filter (Hz)\"\nmsgstr \"\"\n\n#: gate_1410.xml:178\nmsgid \"HF key filter (Hz)\"\nmsgstr \"\"\n\n#: gate_1410.xml:188\nmsgid \"Threshold (dB)\"\nmsgstr \"\"\n\n#: gate_1410.xml:198\nmsgid \"Attack (ms)\"\nmsgstr \"\"\n\n#: gate_1410.xml:208\nmsgid \"Hold (ms)\"\nmsgstr \"\"\n\n#: gate_1410.xml:218\nmsgid \"Decay (ms)\"\nmsgstr \"\"\n\n#: gate_1410.xml:228\nmsgid \"Range (dB)\"\nmsgstr \"\"\n\n#: gate_1410.xml:238\nmsgid \"Output select (-1 = key listen, 0 = gate, 1 = bypass)\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:183\nmsgid \"Giant flange\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:208\nmsgid \"Double delay\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:218\nmsgid \"LFO frequency 1 (Hz)\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:228\nmsgid \"Delay 1 range (s)\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:238\nmsgid \"LFO frequency 2 (Hz)\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:248\nmsgid \"Delay 2 range (s)\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:268 lcr_delay_1436.xml:281\nmsgid \"Dry/Wet level\"\nmsgstr \"\"\n\n#: gong_1424.xml:130\nmsgid \"Gong model\"\nmsgstr \"\"\n\n#: gong_1424.xml:155\nmsgid \"Inner damping\"\nmsgstr \"\"\n\n#: gong_1424.xml:165\nmsgid \"Outer damping\"\nmsgstr \"\"\n\n#: gong_1424.xml:175\nmsgid \"Mic position\"\nmsgstr \"\"\n\n#: gong_1424.xml:185\nmsgid \"Inner size 1\"\nmsgstr \"\"\n\n#: gong_1424.xml:195\nmsgid \"Inner stiffness 1 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:205\nmsgid \"Inner stiffness 1 -\"\nmsgstr \"\"\n\n#: gong_1424.xml:215\nmsgid \"Inner size 2\"\nmsgstr \"\"\n\n#: gong_1424.xml:225\nmsgid \"Inner stiffness 2 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:235\nmsgid \"Inner stiffness 2 -\"\nmsgstr \"\"\n\n#: gong_1424.xml:245\nmsgid \"Inner size 3\"\nmsgstr \"\"\n\n#: gong_1424.xml:255\nmsgid \"Inner stiffness 3 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:265\nmsgid \"Inner stiffness 3 -\"\nmsgstr \"\"\n\n#: gong_1424.xml:275\nmsgid \"Inner size 4\"\nmsgstr \"\"\n\n#: gong_1424.xml:285\nmsgid \"Inner stiffness 4 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:295\nmsgid \"Inner stiffness 4 -\"\nmsgstr \"\"\n\n#: gong_1424.xml:305\nmsgid \"Outer size 1\"\nmsgstr \"\"\n\n#: gong_1424.xml:315\nmsgid \"Outer stiffness 1 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:325\nmsgid \"Outer stiffness 1 -\"\nmsgstr \"\"\n\n#: gong_1424.xml:335\nmsgid \"Outer size 2\"\nmsgstr \"\"\n\n#: gong_1424.xml:345\nmsgid \"Outer stiffness 2 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:355\nmsgid \"Outer stiffness 2 -\"\nmsgstr \"\"\n\n#: gong_1424.xml:365\nmsgid \"Outer size 3\"\nmsgstr \"\"\n\n#: gong_1424.xml:375\nmsgid \"Outer stiffness 3 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:385\nmsgid \"Outer stiffness 3 -\"\nmsgstr \"\"\n\n#: gong_1424.xml:395\nmsgid \"Outer size 4\"\nmsgstr \"\"\n\n#: gong_1424.xml:405\nmsgid \"Outer stiffness 4 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:415\nmsgid \"Outer stiffness 4 -\"\nmsgstr \"\"\n\n#: gong_beater_1439.xml:96\nmsgid \"Gong beater\"\nmsgstr \"\"\n\n#: gong_beater_1439.xml:121\nmsgid \"Impulse gain (dB)\"\nmsgstr \"\"\n\n#: gong_beater_1439.xml:131\nmsgid \"Strike gain (dB)\"\nmsgstr \"\"\n\n#: gong_beater_1439.xml:141\nmsgid \"Strike duration (s)\"\nmsgstr \"\"\n\n#: gsm_1215.xml:139\nmsgid \"GSM simulator\"\nmsgstr \"\"\n\n#: gsm_1215.xml:174\nmsgid \"Number of passes\"\nmsgstr \"\"\n\n#: gsm_1215.xml:184\nmsgid \"Error rate (bits/block)\"\nmsgstr \"\"\n\n#: gverb_1216.xml:101\nmsgid \"GVerb\"\nmsgstr \"\"\n\n#: gverb_1216.xml:126\nmsgid \"Roomsize (m)\"\nmsgstr \"\"\n\n#: gverb_1216.xml:136\nmsgid \"Reverb time (s)\"\nmsgstr \"\"\n\n#: gverb_1216.xml:146 plate_1423.xml:140\nmsgid \"Damping\"\nmsgstr \"\"\n\n#: gverb_1216.xml:156\nmsgid \"Input bandwidth\"\nmsgstr \"\"\n\n#: gverb_1216.xml:166\nmsgid \"Dry signal level (dB)\"\nmsgstr \"\"\n\n#: gverb_1216.xml:176\nmsgid \"Early reflection level (dB)\"\nmsgstr \"\"\n\n#: gverb_1216.xml:186\nmsgid \"Tail level (dB)\"\nmsgstr \"\"\n\n#: gverb_1216.xml:203 plate_1423.xml:167 sc3_1427.xml:233 sc4_1434.xml:238\nmsgid \"Left output\"\nmsgstr \"\"\n\n#: gverb_1216.xml:210 plate_1423.xml:174 sc3_1427.xml:240 sc4_1434.xml:245\nmsgid \"Right output\"\nmsgstr \"\"\n\n#: hard_limiter_1413.xml:55\nmsgid \"Hard Limiter\"\nmsgstr \"\"\n\n#: hard_limiter_1413.xml:80\nmsgid \"dB limit\"\nmsgstr \"\"\n\n#: hard_limiter_1413.xml:90\nmsgid \"Wet level\"\nmsgstr \"\"\n\n#: hard_limiter_1413.xml:100\nmsgid \"Residue level\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:123\nmsgid \"Harmonic generator\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:148\nmsgid \"Fundamental magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:158\nmsgid \"2nd harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:168\nmsgid \"3rd harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:178\nmsgid \"4th harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:188\nmsgid \"5th harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:198\nmsgid \"6th harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:208\nmsgid \"7th harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:218\nmsgid \"8th harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:228\nmsgid \"9th harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:238\nmsgid \"10th harmonic magnitude\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:446\nmsgid \"Hermes Filter\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:471\nmsgid \"LFO1 freq (Hz)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:481\nmsgid \"LFO1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:491\nmsgid \"LFO2 freq (Hz)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:501\nmsgid \"LFO2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:511\nmsgid \"Osc1 freq (Hz)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:521\nmsgid \"Osc1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:531\nmsgid \"Osc2 freq (Hz)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:541\nmsgid \"Osc2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:551\nmsgid \"Ringmod 1 depth (0=none, 1=AM, 2=RM)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:561\nmsgid \"Ringmod 2 depth (0=none, 1=AM, 2=RM)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:571\nmsgid \"Ringmod 3 depth (0=none, 1=AM, 2=RM)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:581\nmsgid \"Osc1 gain (dB)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:591\nmsgid \"RM1 gain (dB)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:601\nmsgid \"Osc2 gain (dB)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:611\nmsgid \"RM2 gain (dB)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:631\nmsgid \"RM3 gain (dB)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:641\nmsgid \"Xover lower freq\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:651\nmsgid \"Xover upper freq\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:661\nmsgid \"Dist1 drive\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:671\nmsgid \"Dist2 drive\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:681\nmsgid \"Dist3 drive\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:691\nmsgid \"Filt1 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:701\nmsgid \"Filt1 freq\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:711\nmsgid \"Filt1 q\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:721\nmsgid \"Filt1 resonance\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:731\nmsgid \"Filt1 LFO1 level\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:741\nmsgid \"Filt1 LFO2 level\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:751\nmsgid \"Filt2 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:761\nmsgid \"Filt2 freq\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:771\nmsgid \"Filt2 q\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:781\nmsgid \"Filt2 resonance\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:791\nmsgid \"Filt2 LFO1 level\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:801\nmsgid \"Filt2 LFO2 level\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:811\nmsgid \"Filt3 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:821\nmsgid \"Filt3 freq\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:831\nmsgid \"Filt3 q\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:841\nmsgid \"Filt3 resonance\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:851\nmsgid \"Filt3 LFO1 level\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:861\nmsgid \"Filt3 LFO2 level\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:871\nmsgid \"Delay1 length (s)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:881\nmsgid \"Delay1 feedback\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:891\nmsgid \"Delay1 wetness\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:901\nmsgid \"Delay2 length (s)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:911\nmsgid \"Delay2 feedback\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:921\nmsgid \"Delay2 wetness\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:931\nmsgid \"Delay3 length (s)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:941\nmsgid \"Delay3 feedback\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:951\nmsgid \"Delay3 wetness\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:961 triple_para_1204.xml:135\nmsgid \"Band 1 gain (dB)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:971 triple_para_1204.xml:165\nmsgid \"Band 2 gain (dB)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:981 triple_para_1204.xml:195\nmsgid \"Band 3 gain (dB)\"\nmsgstr \"\"\n\n#: imp_1199.xml:235\nmsgid \"Impulse convolver\"\nmsgstr \"\"\n\n#: imp_1199.xml:260\nmsgid \"Impulse ID\"\nmsgstr \"\"\n\n#: imp_1199.xml:270\nmsgid \"High latency mode\"\nmsgstr \"\"\n\n#: imp_1199.xml:280 single_para_1203.xml:89\nmsgid \"Gain (dB)\"\nmsgstr \"\"\n\n#: inv_1429.xml:45\nmsgid \"Inverter\"\nmsgstr \"\"\n\n#: karaoke_1409.xml:50\nmsgid \"Karaoke\"\nmsgstr \"\"\n\n#: karaoke_1409.xml:75\nmsgid \"Vocal volume (dB)\"\nmsgstr \"\"\n\n#: karaoke_1409.xml:85\nmsgid \"Left in\"\nmsgstr \"\"\n\n#: karaoke_1409.xml:92\nmsgid \"Right in\"\nmsgstr \"\"\n\n#: karaoke_1409.xml:99\nmsgid \"Left out\"\nmsgstr \"\"\n\n#: karaoke_1409.xml:106\nmsgid \"Right out\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:156\nmsgid \"L/C/R Delay\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:181\nmsgid \"L delay (ms)\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:191\nmsgid \"L level\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:201\nmsgid \"C delay (ms)\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:211\nmsgid \"C level\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:221\nmsgid \"R delay (ms)\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:231\nmsgid \"R level\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:251\nmsgid \"High damp (%)\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:261\nmsgid \"Low damp (%)\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:271\nmsgid \"Spread\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:291\nmsgid \"L input\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:298\nmsgid \"R input\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:305\nmsgid \"L output\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:312\nmsgid \"R output\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:166\nmsgid \"Input 1\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:173\nmsgid \"Input 2\"\nmsgstr \"\"\n\n#: matrix_ms_st_1421.xml:45\nmsgid \"Matrix: MS to Stereo\"\nmsgstr \"\"\n\n#: matrix_ms_st_1421.xml:70 matrix_spatialiser_1422.xml:205\nmsgid \"Width\"\nmsgstr \"\"\n\n#: matrix_ms_st_1421.xml:80 matrix_st_ms_1420.xml:84\nmsgid \"Mid\"\nmsgstr \"\"\n\n#: matrix_ms_st_1421.xml:87 matrix_st_ms_1420.xml:91\nmsgid \"Side\"\nmsgstr \"\"\n\n#: matrix_ms_st_1421.xml:94 matrix_st_ms_1420.xml:70\nmsgid \"Left\"\nmsgstr \"\"\n\n#: matrix_ms_st_1421.xml:101 matrix_st_ms_1420.xml:77\nmsgid \"Right\"\nmsgstr \"\"\n\n#: matrix_spatialiser_1422.xml:166\nmsgid \"Matrix Spatialiser\"\nmsgstr \"\"\n\n#: matrix_spatialiser_1422.xml:191\nmsgid \"Input L\"\nmsgstr \"\"\n\n#: matrix_spatialiser_1422.xml:198\nmsgid \"Input R\"\nmsgstr \"\"\n\n#: matrix_spatialiser_1422.xml:215\nmsgid \"Output L\"\nmsgstr \"\"\n\n#: matrix_spatialiser_1422.xml:222\nmsgid \"Output R\"\nmsgstr \"\"\n\n#: matrix_st_ms_1420.xml:45\nmsgid \"Matrix: Stereo to MS\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:205\nmsgid \"Multiband EQ\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:230\nmsgid \"50Hz gain (low shelving)\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:240\nmsgid \"100Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:250\nmsgid \"156Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:260\nmsgid \"220Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:270\nmsgid \"311Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:280\nmsgid \"440Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:290\nmsgid \"622Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:300\nmsgid \"880Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:310\nmsgid \"1250Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:320\nmsgid \"1750Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:330\nmsgid \"2500Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:340\nmsgid \"3500Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:350\nmsgid \"5000Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:360\nmsgid \"10000Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:370\nmsgid \"20000Hz gain\"\nmsgstr \"\"\n\n#: mod_delay_1419.xml:78\nmsgid \"Modulatable delay\"\nmsgstr \"\"\n\n#: mod_delay_1419.xml:103\nmsgid \"Base delay (s)\"\nmsgstr \"\"\n\n#: mod_delay_1419.xml:113\nmsgid \"Delay (s)\"\nmsgstr \"\"\n\n#: multivoice_chorus_1201.xml:196\nmsgid \"Multivoice Chorus\"\nmsgstr \"\"\n\n#: multivoice_chorus_1201.xml:221\nmsgid \"Number of voices\"\nmsgstr \"\"\n\n#: multivoice_chorus_1201.xml:241\nmsgid \"Voice separation (ms)\"\nmsgstr \"\"\n\n#: multivoice_chorus_1201.xml:251\nmsgid \"Detune (%)\"\nmsgstr \"\"\n\n#: multivoice_chorus_1201.xml:271\nmsgid \"Output attenuation (dB)\"\nmsgstr \"\"\n\n#: phasers_1217.xml:182\nmsgid \"LFO Phaser\"\nmsgstr \"\"\n\n#: phasers_1217.xml:207\nmsgid \"LFO rate (Hz)\"\nmsgstr \"\"\n\n#: phasers_1217.xml:217\nmsgid \"LFO depth\"\nmsgstr \"\"\n\n#: phasers_1217.xml:237 phasers_1217.xml:475\nmsgid \"Spread (octaves)\"\nmsgstr \"\"\n\n#: phasers_1217.xml:276\nmsgid \"4 x 4 pole allpass\"\nmsgstr \"\"\n\n#: phasers_1217.xml:301\nmsgid \"Frequency 1\"\nmsgstr \"\"\n\n#: phasers_1217.xml:311\nmsgid \"Feedback 1\"\nmsgstr \"\"\n\n#: phasers_1217.xml:321\nmsgid \"Frequency 2\"\nmsgstr \"\"\n\n#: phasers_1217.xml:331\nmsgid \"Feedback 2\"\nmsgstr \"\"\n\n#: phasers_1217.xml:341\nmsgid \"Frequency 3\"\nmsgstr \"\"\n\n#: phasers_1217.xml:351\nmsgid \"Feedback 3\"\nmsgstr \"\"\n\n#: phasers_1217.xml:361\nmsgid \"Frequency 4\"\nmsgstr \"\"\n\n#: phasers_1217.xml:371\nmsgid \"Feedback 4\"\nmsgstr \"\"\n\n#: phasers_1217.xml:410\nmsgid \"Auto phaser\"\nmsgstr \"\"\n\n#: phasers_1217.xml:435\nmsgid \"Attack time (s)\"\nmsgstr \"\"\n\n#: phasers_1217.xml:445\nmsgid \"Decay time (s)\"\nmsgstr \"\"\n\n#: phasers_1217.xml:455\nmsgid \"Modulation depth\"\nmsgstr \"\"\n\n#: pitch_scale_1193.xml:56\nmsgid \"Pitch Scaler\"\nmsgstr \"\"\n\n#: pitch_scale_1193.xml:81 pitch_scale_1194.xml:80\nmsgid \"Pitch co-efficient\"\nmsgstr \"\"\n\n#: pitch_scale_1194.xml:55\nmsgid \"Higher Quality Pitch Scaler\"\nmsgstr \"\"\n\n#: plate_1423.xml:105\nmsgid \"Plate reverb\"\nmsgstr \"\"\n\n#: plate_1423.xml:130\nmsgid \"Reverb time\"\nmsgstr \"\"\n\n#: rate_shifter_1417.xml:90\nmsgid \"Rate shifter\"\nmsgstr \"\"\n\n#: rate_shifter_1417.xml:115\nmsgid \"Rate\"\nmsgstr \"\"\n\n#: retro_flange_1208.xml:193\nmsgid \"Retro Flanger\"\nmsgstr \"\"\n\n#: retro_flange_1208.xml:218\nmsgid \"Average stall (ms)\"\nmsgstr \"\"\n\n#: retro_flange_1208.xml:228\nmsgid \"Flange frequency (Hz)\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:74\nmsgid \"Ringmod with two inputs\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:99 ringmod_1188.xml:173\nmsgid \"Modulation depth (0=none, 1=AM, 2=RM)\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:116\nmsgid \"Modulator\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:148\nmsgid \"Ringmod with LFO\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:193\nmsgid \"Sine level\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:203\nmsgid \"Triangle level\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:213\nmsgid \"Sawtooth level\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:223\nmsgid \"Square level\"\nmsgstr \"\"\n\n#: satan_maximiser_1408.xml:96\nmsgid \"Barry's Satan Maximiser\"\nmsgstr \"\"\n\n#: satan_maximiser_1408.xml:121\nmsgid \"Decay time (samples)\"\nmsgstr \"\"\n\n#: satan_maximiser_1408.xml:131\nmsgid \"Knee point (dB)\"\nmsgstr \"\"\n\n#: sc1_1425.xml:113\nmsgid \"SC1\"\nmsgstr \"\"\n\n#: sc1_1425.xml:138 sc2_1426.xml:135 sc3_1427.xml:142 sc4_1434.xml:144\nmsgid \"Attack time (ms)\"\nmsgstr \"\"\n\n#: sc1_1425.xml:148 sc2_1426.xml:145 sc3_1427.xml:152 sc4_1434.xml:154\nmsgid \"Release time (ms)\"\nmsgstr \"\"\n\n#: sc1_1425.xml:158 sc2_1426.xml:155 sc3_1427.xml:162 sc4_1434.xml:164\nmsgid \"Threshold level (dB)\"\nmsgstr \"\"\n\n#: sc1_1425.xml:168 sc2_1426.xml:165 sc3_1427.xml:172 sc4_1434.xml:174\nmsgid \"Ratio (1:n)\"\nmsgstr \"\"\n\n#: sc1_1425.xml:178 sc2_1426.xml:175 sc3_1427.xml:182 sc4_1434.xml:184\nmsgid \"Knee radius (dB)\"\nmsgstr \"\"\n\n#: sc1_1425.xml:188 sc2_1426.xml:185 sc3_1427.xml:192 sc4_1434.xml:194\nmsgid \"Makeup gain (dB)\"\nmsgstr \"\"\n\n#: sc2_1426.xml:110\nmsgid \"SC2\"\nmsgstr \"\"\n\n#: sc2_1426.xml:195 sc3_1427.xml:212\nmsgid \"Sidechain\"\nmsgstr \"\"\n\n#: sc3_1427.xml:117\nmsgid \"SC3\"\nmsgstr \"\"\n\n#: sc3_1427.xml:202\nmsgid \"Chain balance\"\nmsgstr \"\"\n\n#: sc3_1427.xml:219 sc4_1434.xml:224\nmsgid \"Left input\"\nmsgstr \"\"\n\n#: sc3_1427.xml:226 sc4_1434.xml:231\nmsgid \"Right input\"\nmsgstr \"\"\n\n#: sc4_1434.xml:119\nmsgid \"SC4\"\nmsgstr \"\"\n\n#: sc4_1434.xml:204\nmsgid \"Amplitude (dB)\"\nmsgstr \"\"\n\n#: sc4_1434.xml:214\nmsgid \"Gain reduction (dB)\"\nmsgstr \"\"\n\n#: shaper_1187.xml:58\nmsgid \"Wave shaper\"\nmsgstr \"\"\n\n#: shaper_1187.xml:83\nmsgid \"Waveshape\"\nmsgstr \"\"\n\n#: sifter_1210.xml:168\nmsgid \"Signal sifter\"\nmsgstr \"\"\n\n#: sifter_1210.xml:193\nmsgid \"Sift size\"\nmsgstr \"\"\n\n#: single_para_1203.xml:64\nmsgid \"Single band parametric\"\nmsgstr \"\"\n\n#: single_para_1203.xml:109\nmsgid \"Bandwidth (octaves)\"\nmsgstr \"\"\n\n#: sinus_wavewrapper_1198.xml:49\nmsgid \"Sinus wavewrapper\"\nmsgstr \"\"\n\n#: sinus_wavewrapper_1198.xml:74\nmsgid \"Wrap degree\"\nmsgstr \"\"\n\n#: smooth_decimate_1414.xml:75\nmsgid \"Smooth Decimator\"\nmsgstr \"\"\n\n#: smooth_decimate_1414.xml:100\nmsgid \"Resample rate\"\nmsgstr \"\"\n\n#: split_1406.xml:47\nmsgid \"Mono to Stereo splitter\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:124\nmsgid \"Step Demuxer\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:149\nmsgid \"Crossfade time (in ms)\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:159\nmsgid \"Clock\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:180\nmsgid \"Input 3\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:187\nmsgid \"Input 4\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:194\nmsgid \"Input 5\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:201\nmsgid \"Input 6\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:208\nmsgid \"Input 7\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:215\nmsgid \"Input 8\"\nmsgstr \"\"\n\n#: surround_encoder_1401.xml:97\nmsgid \"Surround matrix encoder\"\nmsgstr \"\"\n\n#: surround_encoder_1401.xml:122\nmsgid \"L\"\nmsgstr \"\"\n\n#: surround_encoder_1401.xml:129\nmsgid \"R\"\nmsgstr \"\"\n\n#: surround_encoder_1401.xml:136\nmsgid \"C\"\nmsgstr \"\"\n\n#: surround_encoder_1401.xml:143\nmsgid \"S\"\nmsgstr \"\"\n\n#: surround_encoder_1401.xml:150\nmsgid \"Lt\"\nmsgstr \"\"\n\n#: surround_encoder_1401.xml:157\nmsgid \"Rt\"\nmsgstr \"\"\n\n#: svf_1214.xml:142\nmsgid \"State Variable Filter\"\nmsgstr \"\"\n\n#: svf_1214.xml:187\nmsgid \"Filter type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\nmsgstr \"\"\n\n#: svf_1214.xml:197\nmsgid \"Filter freq\"\nmsgstr \"\"\n\n#: svf_1214.xml:207\nmsgid \"Filter Q\"\nmsgstr \"\"\n\n#: svf_1214.xml:217\nmsgid \"Filter resonance\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:137\nmsgid \"Tape Delay Simulation\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:162\nmsgid \"Tape speed (inches/sec, 1=normal)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:172\nmsgid \"Dry level (dB)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:182\nmsgid \"Tap 1 distance (inches)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:192\nmsgid \"Tap 1 level (dB)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:202\nmsgid \"Tap 2 distance (inches)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:212\nmsgid \"Tap 2 level (dB)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:222\nmsgid \"Tap 3 distance (inches)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:232\nmsgid \"Tap 3 level (dB)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:242\nmsgid \"Tap 4 distance (inches)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:252\nmsgid \"Tap 4 level (dB)\"\nmsgstr \"\"\n\n#: transient_1206.xml:132\nmsgid \"Transient mangler\"\nmsgstr \"\"\n\n#: transient_1206.xml:157\nmsgid \"Attack speed\"\nmsgstr \"\"\n\n#: transient_1206.xml:167\nmsgid \"Sustain time\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:80\nmsgid \"Triple band parametric with shelves\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:105\nmsgid \"Low-shelving gain (dB)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:115\nmsgid \"Low-shelving frequency (Hz)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:125\nmsgid \"Low-shelving slope\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:145\nmsgid \"Band 1 frequency (Hz)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:155\nmsgid \"Band 1 bandwidth (octaves)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:175\nmsgid \"Band 2 frequency (Hz)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:185\nmsgid \"Band 2 bandwidth (octaves)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:205\nmsgid \"Band 3 frequency (Hz)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:215\nmsgid \"Band 3 bandwidth (octaves)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:225\nmsgid \"High-shelving gain (dB)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:235\nmsgid \"High-shelving frequency (Hz)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:245\nmsgid \"High-shelving slope\"\nmsgstr \"\"\n\n#: valve_1209.xml:83\nmsgid \"Valve saturation\"\nmsgstr \"\"\n\n#: valve_1209.xml:108\nmsgid \"Distortion level\"\nmsgstr \"\"\n\n#: valve_1209.xml:118\nmsgid \"Distortion character\"\nmsgstr \"\"\n\n#: valve_rect_1405.xml:111\nmsgid \"Valve rectifier\"\nmsgstr \"\"\n\n#: valve_rect_1405.xml:136\nmsgid \"Sag level\"\nmsgstr \"\"\n\n#: wave_terrain_1412.xml:49\nmsgid \"Wave Terrain Oscillator\"\nmsgstr \"\"\n\n#: wave_terrain_1412.xml:74\nmsgid \"x\"\nmsgstr \"\"\n\n#: wave_terrain_1412.xml:81\nmsgid \"y\"\nmsgstr \"\"\n\n#: wave_terrain_1412.xml:88\nmsgid \"z\"\nmsgstr \"\"\n\n#: zm1_1428.xml:55\nmsgid \"z-1\"\nmsgstr \"\"\n"
  },
  {
    "path": "po/swh-plugins.pot",
    "content": "# SOME DESCRIPTIVE TITLE.\n# Copyright (C) YEAR Steve Harris\n# This file is distributed under the same license as the PACKAGE package.\n# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.\n#\n#, fuzzy\nmsgid \"\"\nmsgstr \"\"\n\"Project-Id-Version: PACKAGE VERSION\\n\"\n\"POT-Creation-Date: 2003-03-09 16:06+0000\\n\"\n\"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n\"\n\"Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n\"\n\"Language-Team: LANGUAGE <LL@li.org>\\n\"\n\"MIME-Version: 1.0\\n\"\n\"Content-Type: text/plain; charset=CHARSET\\n\"\n\"Content-Transfer-Encoding: 8bit\\n\"\n\n#: alias_1407.xml:51\nmsgid \"Aliasing\"\nmsgstr \"\"\n\n#: alias_1407.xml:76\nmsgid \"Aliasing level\"\nmsgstr \"\"\n\n#: alias_1407.xml:86 amp_1181.xml:83 am_pitchshift_1433.xml:177\n#: bode_shifter_1431.xml:193 bode_shifter_cv_1432.xml:195\n#: chebstortion_1430.xml:187 comb_1190.xml:132 comb_splitter_1411.xml:126\n#: crossover_dist_1404.xml:103 dc_remove_1207.xml:80 debug_1184.xml:113\n#: decimator_1202.xml:127 declip_1195.xml:84 delayorama_1402.xml:355\n#: diode_1185.xml:98 divider_1186.xml:119 dj_flanger_1438.xml:189\n#: dyson_compress_1403.xml:406 fad_delay_1192.xml:154 flanger_1191.xml:234\n#: foldover_1213.xml:94 foverdrive_1196.xml:82 freq_tracker_1418.xml:111\n#: gate_1410.xml:248 giant_flange_1437.xml:278 gong_1424.xml:425\n#: gong_beater_1439.xml:151 gsm_1215.xml:194 gverb_1216.xml:196\n#: hard_limiter_1413.xml:110 harmonic_gen_1220.xml:248\n#: hermes_filter_1200.xml:991 imp_1199.xml:290 inv_1429.xml:70\n#: mbeq_1197.xml:380 mod_delay_1419.xml:123 multivoice_chorus_1201.xml:281\n#: phasers_1217.xml:247 phasers_1217.xml:381 phasers_1217.xml:485\n#: pitch_scale_1193.xml:91 pitch_scale_1194.xml:90 plate_1423.xml:160\n#: rate_shifter_1417.xml:125 retro_flange_1208.xml:238 ringmod_1188.xml:109\n#: ringmod_1188.xml:233 satan_maximiser_1408.xml:141 sc1_1425.xml:198\n#: sc2_1426.xml:202 shaper_1187.xml:93 sifter_1210.xml:203\n#: single_para_1203.xml:119 sinus_wavewrapper_1198.xml:84\n#: smooth_decimate_1414.xml:120 split_1406.xml:72 svf_1214.xml:167\n#: tape_delay_1211.xml:262 transient_1206.xml:177 triple_para_1204.xml:255\n#: valve_1209.xml:128 valve_rect_1405.xml:156 zm1_1428.xml:80\nmsgid \"Input\"\nmsgstr \"\"\n\n#: alias_1407.xml:93 amp_1181.xml:90 am_pitchshift_1433.xml:184\n#: analogue_osc_1416.xml:168 chebstortion_1430.xml:197 comb_1190.xml:139\n#: crossover_dist_1404.xml:110 dc_remove_1207.xml:87 debug_1184.xml:120\n#: decimator_1202.xml:137 declip_1195.xml:94 delayorama_1402.xml:362\n#: diode_1185.xml:105 divider_1186.xml:126 dj_flanger_1438.xml:196\n#: dyson_compress_1403.xml:413 fad_delay_1192.xml:161 flanger_1191.xml:241\n#: fm_osc_1415.xml:102 foldover_1213.xml:101 foverdrive_1196.xml:89\n#: gate_1410.xml:255 giant_flange_1437.xml:285 gong_1424.xml:432\n#: gong_beater_1439.xml:158 gsm_1215.xml:201 hard_limiter_1413.xml:117\n#: harmonic_gen_1220.xml:258 hermes_filter_1200.xml:1001 imp_1199.xml:297\n#: inv_1429.xml:77 mbeq_1197.xml:387 mod_delay_1419.xml:130\n#: multivoice_chorus_1201.xml:288 phasers_1217.xml:254 phasers_1217.xml:388\n#: phasers_1217.xml:492 pitch_scale_1193.xml:98 pitch_scale_1194.xml:97\n#: rate_shifter_1417.xml:132 retro_flange_1208.xml:245 ringmod_1188.xml:126\n#: ringmod_1188.xml:240 satan_maximiser_1408.xml:148 sc1_1425.xml:205\n#: sc2_1426.xml:209 shaper_1187.xml:103 sifter_1210.xml:210\n#: single_para_1203.xml:129 sinus_wavewrapper_1198.xml:94\n#: smooth_decimate_1414.xml:127 step_muxer_1212.xml:222 svf_1214.xml:177\n#: tape_delay_1211.xml:269 transient_1206.xml:187 triple_para_1204.xml:265\n#: valve_1209.xml:135 valve_rect_1405.xml:163 zm1_1428.xml:87\nmsgid \"Output\"\nmsgstr \"\"\n\n#: amp_1181.xml:48\nmsgid \"Simple amplifier\"\nmsgstr \"\"\n\n#: amp_1181.xml:73\nmsgid \"Amps gain (dB)\"\nmsgstr \"\"\n\n#: am_pitchshift_1433.xml:132\nmsgid \"AM pitchshifter\"\nmsgstr \"\"\n\n#: am_pitchshift_1433.xml:157\nmsgid \"Pitch shift\"\nmsgstr \"\"\n\n#: am_pitchshift_1433.xml:167\nmsgid \"Buffer size\"\nmsgstr \"\"\n\n#: analogue_osc_1416.xml:103\nmsgid \"Analogue Oscillator\"\nmsgstr \"\"\n\n#: analogue_osc_1416.xml:128 fm_osc_1415.xml:82\nmsgid \"Waveform (1=sin, 2=tri, 3=squ, 4=saw)\"\nmsgstr \"\"\n\n#: analogue_osc_1416.xml:138 fm_osc_1415.xml:92 freq_tracker_1418.xml:118\n#: ringmod_1188.xml:183 single_para_1203.xml:99\nmsgid \"Frequency (Hz)\"\nmsgstr \"\"\n\n#: analogue_osc_1416.xml:148\nmsgid \"Warmth\"\nmsgstr \"\"\n\n#: analogue_osc_1416.xml:158\nmsgid \"Instability\"\nmsgstr \"\"\n\n#: bode_shifter_1431.xml:158\nmsgid \"Bode frequency shifter\"\nmsgstr \"\"\n\n#: bode_shifter_1431.xml:183\nmsgid \"Frequency shift\"\nmsgstr \"\"\n\n#: bode_shifter_1431.xml:200 bode_shifter_cv_1432.xml:222\nmsgid \"Down out\"\nmsgstr \"\"\n\n#: bode_shifter_1431.xml:207 bode_shifter_cv_1432.xml:229\nmsgid \"Up out\"\nmsgstr \"\"\n\n#: bode_shifter_cv_1432.xml:150\nmsgid \"Bode frequency shifter (CV)\"\nmsgstr \"\"\n\n#: bode_shifter_cv_1432.xml:175\nmsgid \"Base shift\"\nmsgstr \"\"\n\n#: bode_shifter_cv_1432.xml:185\nmsgid \"Mix (-1=down, +1=up)\"\nmsgstr \"\"\n\n#: bode_shifter_cv_1432.xml:202\nmsgid \"CV Attenuation\"\nmsgstr \"\"\n\n#: bode_shifter_cv_1432.xml:212\nmsgid \"Shift CV\"\nmsgstr \"\"\n\n#: bode_shifter_cv_1432.xml:236\nmsgid \"Mix out\"\nmsgstr \"\"\n\n#: chebstortion_1430.xml:152\nmsgid \"Chebyshev distortion\"\nmsgstr \"\"\n\n#: chebstortion_1430.xml:177 valve_rect_1405.xml:146\nmsgid \"Distortion\"\nmsgstr \"\"\n\n#: comb_1190.xml:87\nmsgid \"Comb Filter\"\nmsgstr \"\"\n\n#: comb_1190.xml:112 comb_splitter_1411.xml:116\nmsgid \"Band separation (Hz)\"\nmsgstr \"\"\n\n#: comb_1190.xml:122 flanger_1191.xml:224 giant_flange_1437.xml:258\n#: lcr_delay_1436.xml:241 phasers_1217.xml:227 phasers_1217.xml:465\nmsgid \"Feedback\"\nmsgstr \"\"\n\n#: comb_splitter_1411.xml:91\nmsgid \"Comb Splitter\"\nmsgstr \"\"\n\n#: comb_splitter_1411.xml:133 split_1406.xml:82\nmsgid \"Output 1\"\nmsgstr \"\"\n\n#: comb_splitter_1411.xml:140 split_1406.xml:92\nmsgid \"Output 2\"\nmsgstr \"\"\n\n#: crossover_dist_1404.xml:58\nmsgid \"Crossover distortion\"\nmsgstr \"\"\n\n#: crossover_dist_1404.xml:83\nmsgid \"Crossover amplitude\"\nmsgstr \"\"\n\n#: crossover_dist_1404.xml:93 smooth_decimate_1414.xml:110\nmsgid \"Smoothing\"\nmsgstr \"\"\n\n#: dc_remove_1207.xml:55\nmsgid \"DC Offset Remover\"\nmsgstr \"\"\n\n#: debug_1184.xml:68\nmsgid \"Debug Plugin\"\nmsgstr \"\"\n\n#: debug_1184.xml:93\nmsgid \"Display all values?\"\nmsgstr \"\"\n\n#: debug_1184.xml:103\nmsgid \"Reset counters?\"\nmsgstr \"\"\n\n#: decimator_1202.xml:82\nmsgid \"Decimator\"\nmsgstr \"\"\n\n#: decimator_1202.xml:107\nmsgid \"Bit depth\"\nmsgstr \"\"\n\n#: decimator_1202.xml:117\nmsgid \"Sample rate (Hz)\"\nmsgstr \"\"\n\n#: declip_1195.xml:59\nmsgid \"Declipper\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:220\nmsgid \"Delayorama\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:245\nmsgid \"Random seed\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:255 hermes_filter_1200.xml:621\nmsgid \"Input gain (dB)\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:265 dj_flanger_1438.xml:179\nmsgid \"Feedback (%)\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:275\nmsgid \"Number of taps\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:285\nmsgid \"First delay (s)\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:295\nmsgid \"Delay range (s)\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:305\nmsgid \"Delay change\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:315\nmsgid \"Delay random (%)\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:325\nmsgid \"Amplitude change\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:335\nmsgid \"Amplitude random (%)\"\nmsgstr \"\"\n\n#: delayorama_1402.xml:345 gsm_1215.xml:164 plate_1423.xml:150\nmsgid \"Dry/wet mix\"\nmsgstr \"\"\n\n#: diode_1185.xml:63\nmsgid \"Diode Processor\"\nmsgstr \"\"\n\n#: diode_1185.xml:88\nmsgid \"Mode (0 for none, 1 for half wave, 2 for full wave)\"\nmsgstr \"\"\n\n#: divider_1186.xml:84\nmsgid \"Audio Divider (Suboctave Generator)\"\nmsgstr \"\"\n\n#: divider_1186.xml:109\nmsgid \"Denominator\"\nmsgstr \"\"\n\n#: dj_flanger_1438.xml:124\nmsgid \"DJ flanger\"\nmsgstr \"\"\n\n#: dj_flanger_1438.xml:149\nmsgid \"LFO sync\"\nmsgstr \"\"\n\n#: dj_flanger_1438.xml:159\nmsgid \"LFO period (s)\"\nmsgstr \"\"\n\n#: dj_flanger_1438.xml:169\nmsgid \"LFO depth (ms)\"\nmsgstr \"\"\n\n#: dyson_compress_1403.xml:341\nmsgid \"Dyson compressor\"\nmsgstr \"\"\n\n#: dyson_compress_1403.xml:366\nmsgid \"Peak limit (dB)\"\nmsgstr \"\"\n\n#: dyson_compress_1403.xml:376\nmsgid \"Release time (s)\"\nmsgstr \"\"\n\n#: dyson_compress_1403.xml:386\nmsgid \"Fast compression ratio\"\nmsgstr \"\"\n\n#: dyson_compress_1403.xml:396\nmsgid \"Compression ratio\"\nmsgstr \"\"\n\n#: fad_delay_1192.xml:109\nmsgid \"Fractionally Addressed Delay Line\"\nmsgstr \"\"\n\n#: fad_delay_1192.xml:134\nmsgid \"Delay (seconds)\"\nmsgstr \"\"\n\n#: fad_delay_1192.xml:144\nmsgid \"Feedback (dB)\"\nmsgstr \"\"\n\n#: flanger_1191.xml:169\nmsgid \"Flanger\"\nmsgstr \"\"\n\n#: flanger_1191.xml:194 multivoice_chorus_1201.xml:231\nmsgid \"Delay base (ms)\"\nmsgstr \"\"\n\n#: flanger_1191.xml:204\nmsgid \"Max slowdown (ms)\"\nmsgstr \"\"\n\n#: flanger_1191.xml:214 multivoice_chorus_1201.xml:261\nmsgid \"LFO frequency (Hz)\"\nmsgstr \"\"\n\n#: fm_osc_1415.xml:57\nmsgid \"FM Oscillator\"\nmsgstr \"\"\n\n#: foldover_1213.xml:49\nmsgid \"Foldover distortion\"\nmsgstr \"\"\n\n#: foldover_1213.xml:74\nmsgid \"Drive\"\nmsgstr \"\"\n\n#: foldover_1213.xml:84\nmsgid \"Skew\"\nmsgstr \"\"\n\n#: foverdrive_1196.xml:47\nmsgid \"Fast overdrive\"\nmsgstr \"\"\n\n#: foverdrive_1196.xml:72\nmsgid \"Drive level\"\nmsgstr \"\"\n\n#: freq_tracker_1418.xml:76\nmsgid \"Frequency tracker\"\nmsgstr \"\"\n\n#: freq_tracker_1418.xml:101\nmsgid \"Tracking speed\"\nmsgstr \"\"\n\n#: gate_1410.xml:143\nmsgid \"Gate\"\nmsgstr \"\"\n\n#: gate_1410.xml:168\nmsgid \"LF key filter (Hz)\"\nmsgstr \"\"\n\n#: gate_1410.xml:178\nmsgid \"HF key filter (Hz)\"\nmsgstr \"\"\n\n#: gate_1410.xml:188\nmsgid \"Threshold (dB)\"\nmsgstr \"\"\n\n#: gate_1410.xml:198\nmsgid \"Attack (ms)\"\nmsgstr \"\"\n\n#: gate_1410.xml:208\nmsgid \"Hold (ms)\"\nmsgstr \"\"\n\n#: gate_1410.xml:218\nmsgid \"Decay (ms)\"\nmsgstr \"\"\n\n#: gate_1410.xml:228\nmsgid \"Range (dB)\"\nmsgstr \"\"\n\n#: gate_1410.xml:238\nmsgid \"Output select (-1 = key listen, 0 = gate, 1 = bypass)\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:183\nmsgid \"Giant flange\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:208\nmsgid \"Double delay\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:218\nmsgid \"LFO frequency 1 (Hz)\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:228\nmsgid \"Delay 1 range (s)\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:238\nmsgid \"LFO frequency 2 (Hz)\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:248\nmsgid \"Delay 2 range (s)\"\nmsgstr \"\"\n\n#: giant_flange_1437.xml:268 lcr_delay_1436.xml:281\nmsgid \"Dry/Wet level\"\nmsgstr \"\"\n\n#: gong_1424.xml:130\nmsgid \"Gong model\"\nmsgstr \"\"\n\n#: gong_1424.xml:155\nmsgid \"Inner damping\"\nmsgstr \"\"\n\n#: gong_1424.xml:165\nmsgid \"Outer damping\"\nmsgstr \"\"\n\n#: gong_1424.xml:175\nmsgid \"Mic position\"\nmsgstr \"\"\n\n#: gong_1424.xml:185\nmsgid \"Inner size 1\"\nmsgstr \"\"\n\n#: gong_1424.xml:195\nmsgid \"Inner stiffness 1 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:205\nmsgid \"Inner stiffness 1 -\"\nmsgstr \"\"\n\n#: gong_1424.xml:215\nmsgid \"Inner size 2\"\nmsgstr \"\"\n\n#: gong_1424.xml:225\nmsgid \"Inner stiffness 2 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:235\nmsgid \"Inner stiffness 2 -\"\nmsgstr \"\"\n\n#: gong_1424.xml:245\nmsgid \"Inner size 3\"\nmsgstr \"\"\n\n#: gong_1424.xml:255\nmsgid \"Inner stiffness 3 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:265\nmsgid \"Inner stiffness 3 -\"\nmsgstr \"\"\n\n#: gong_1424.xml:275\nmsgid \"Inner size 4\"\nmsgstr \"\"\n\n#: gong_1424.xml:285\nmsgid \"Inner stiffness 4 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:295\nmsgid \"Inner stiffness 4 -\"\nmsgstr \"\"\n\n#: gong_1424.xml:305\nmsgid \"Outer size 1\"\nmsgstr \"\"\n\n#: gong_1424.xml:315\nmsgid \"Outer stiffness 1 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:325\nmsgid \"Outer stiffness 1 -\"\nmsgstr \"\"\n\n#: gong_1424.xml:335\nmsgid \"Outer size 2\"\nmsgstr \"\"\n\n#: gong_1424.xml:345\nmsgid \"Outer stiffness 2 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:355\nmsgid \"Outer stiffness 2 -\"\nmsgstr \"\"\n\n#: gong_1424.xml:365\nmsgid \"Outer size 3\"\nmsgstr \"\"\n\n#: gong_1424.xml:375\nmsgid \"Outer stiffness 3 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:385\nmsgid \"Outer stiffness 3 -\"\nmsgstr \"\"\n\n#: gong_1424.xml:395\nmsgid \"Outer size 4\"\nmsgstr \"\"\n\n#: gong_1424.xml:405\nmsgid \"Outer stiffness 4 +\"\nmsgstr \"\"\n\n#: gong_1424.xml:415\nmsgid \"Outer stiffness 4 -\"\nmsgstr \"\"\n\n#: gong_beater_1439.xml:96\nmsgid \"Gong beater\"\nmsgstr \"\"\n\n#: gong_beater_1439.xml:121\nmsgid \"Impulse gain (dB)\"\nmsgstr \"\"\n\n#: gong_beater_1439.xml:131\nmsgid \"Strike gain (dB)\"\nmsgstr \"\"\n\n#: gong_beater_1439.xml:141\nmsgid \"Strike duration (s)\"\nmsgstr \"\"\n\n#: gsm_1215.xml:139\nmsgid \"GSM simulator\"\nmsgstr \"\"\n\n#: gsm_1215.xml:174\nmsgid \"Number of passes\"\nmsgstr \"\"\n\n#: gsm_1215.xml:184\nmsgid \"Error rate (bits/block)\"\nmsgstr \"\"\n\n#: gverb_1216.xml:101\nmsgid \"GVerb\"\nmsgstr \"\"\n\n#: gverb_1216.xml:126\nmsgid \"Roomsize (m)\"\nmsgstr \"\"\n\n#: gverb_1216.xml:136\nmsgid \"Reverb time (s)\"\nmsgstr \"\"\n\n#: gverb_1216.xml:146 plate_1423.xml:140\nmsgid \"Damping\"\nmsgstr \"\"\n\n#: gverb_1216.xml:156\nmsgid \"Input bandwidth\"\nmsgstr \"\"\n\n#: gverb_1216.xml:166\nmsgid \"Dry signal level (dB)\"\nmsgstr \"\"\n\n#: gverb_1216.xml:176\nmsgid \"Early reflection level (dB)\"\nmsgstr \"\"\n\n#: gverb_1216.xml:186\nmsgid \"Tail level (dB)\"\nmsgstr \"\"\n\n#: gverb_1216.xml:203 plate_1423.xml:167 sc3_1427.xml:233 sc4_1434.xml:238\nmsgid \"Left output\"\nmsgstr \"\"\n\n#: gverb_1216.xml:210 plate_1423.xml:174 sc3_1427.xml:240 sc4_1434.xml:245\nmsgid \"Right output\"\nmsgstr \"\"\n\n#: hard_limiter_1413.xml:55\nmsgid \"Hard Limiter\"\nmsgstr \"\"\n\n#: hard_limiter_1413.xml:80\nmsgid \"dB limit\"\nmsgstr \"\"\n\n#: hard_limiter_1413.xml:90\nmsgid \"Wet level\"\nmsgstr \"\"\n\n#: hard_limiter_1413.xml:100\nmsgid \"Residue level\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:123\nmsgid \"Harmonic generator\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:148\nmsgid \"Fundamental magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:158\nmsgid \"2nd harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:168\nmsgid \"3rd harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:178\nmsgid \"4th harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:188\nmsgid \"5th harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:198\nmsgid \"6th harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:208\nmsgid \"7th harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:218\nmsgid \"8th harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:228\nmsgid \"9th harmonic magnitude\"\nmsgstr \"\"\n\n#: harmonic_gen_1220.xml:238\nmsgid \"10th harmonic magnitude\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:446\nmsgid \"Hermes Filter\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:471\nmsgid \"LFO1 freq (Hz)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:481\nmsgid \"LFO1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:491\nmsgid \"LFO2 freq (Hz)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:501\nmsgid \"LFO2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:511\nmsgid \"Osc1 freq (Hz)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:521\nmsgid \"Osc1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:531\nmsgid \"Osc2 freq (Hz)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:541\nmsgid \"Osc2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:551\nmsgid \"Ringmod 1 depth (0=none, 1=AM, 2=RM)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:561\nmsgid \"Ringmod 2 depth (0=none, 1=AM, 2=RM)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:571\nmsgid \"Ringmod 3 depth (0=none, 1=AM, 2=RM)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:581\nmsgid \"Osc1 gain (dB)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:591\nmsgid \"RM1 gain (dB)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:601\nmsgid \"Osc2 gain (dB)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:611\nmsgid \"RM2 gain (dB)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:631\nmsgid \"RM3 gain (dB)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:641\nmsgid \"Xover lower freq\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:651\nmsgid \"Xover upper freq\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:661\nmsgid \"Dist1 drive\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:671\nmsgid \"Dist2 drive\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:681\nmsgid \"Dist3 drive\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:691\nmsgid \"Filt1 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:701\nmsgid \"Filt1 freq\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:711\nmsgid \"Filt1 q\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:721\nmsgid \"Filt1 resonance\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:731\nmsgid \"Filt1 LFO1 level\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:741\nmsgid \"Filt1 LFO2 level\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:751\nmsgid \"Filt2 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:761\nmsgid \"Filt2 freq\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:771\nmsgid \"Filt2 q\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:781\nmsgid \"Filt2 resonance\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:791\nmsgid \"Filt2 LFO1 level\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:801\nmsgid \"Filt2 LFO2 level\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:811\nmsgid \"Filt3 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:821\nmsgid \"Filt3 freq\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:831\nmsgid \"Filt3 q\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:841\nmsgid \"Filt3 resonance\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:851\nmsgid \"Filt3 LFO1 level\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:861\nmsgid \"Filt3 LFO2 level\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:871\nmsgid \"Delay1 length (s)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:881\nmsgid \"Delay1 feedback\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:891\nmsgid \"Delay1 wetness\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:901\nmsgid \"Delay2 length (s)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:911\nmsgid \"Delay2 feedback\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:921\nmsgid \"Delay2 wetness\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:931\nmsgid \"Delay3 length (s)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:941\nmsgid \"Delay3 feedback\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:951\nmsgid \"Delay3 wetness\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:961 triple_para_1204.xml:135\nmsgid \"Band 1 gain (dB)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:971 triple_para_1204.xml:165\nmsgid \"Band 2 gain (dB)\"\nmsgstr \"\"\n\n#: hermes_filter_1200.xml:981 triple_para_1204.xml:195\nmsgid \"Band 3 gain (dB)\"\nmsgstr \"\"\n\n#: imp_1199.xml:235\nmsgid \"Impulse convolver\"\nmsgstr \"\"\n\n#: imp_1199.xml:260\nmsgid \"Impulse ID\"\nmsgstr \"\"\n\n#: imp_1199.xml:270\nmsgid \"High latency mode\"\nmsgstr \"\"\n\n#: imp_1199.xml:280 single_para_1203.xml:89\nmsgid \"Gain (dB)\"\nmsgstr \"\"\n\n#: inv_1429.xml:45\nmsgid \"Inverter\"\nmsgstr \"\"\n\n#: karaoke_1409.xml:50\nmsgid \"Karaoke\"\nmsgstr \"\"\n\n#: karaoke_1409.xml:75\nmsgid \"Vocal volume (dB)\"\nmsgstr \"\"\n\n#: karaoke_1409.xml:85\nmsgid \"Left in\"\nmsgstr \"\"\n\n#: karaoke_1409.xml:92\nmsgid \"Right in\"\nmsgstr \"\"\n\n#: karaoke_1409.xml:99\nmsgid \"Left out\"\nmsgstr \"\"\n\n#: karaoke_1409.xml:106\nmsgid \"Right out\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:156\nmsgid \"L/C/R Delay\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:181\nmsgid \"L delay (ms)\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:191\nmsgid \"L level\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:201\nmsgid \"C delay (ms)\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:211\nmsgid \"C level\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:221\nmsgid \"R delay (ms)\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:231\nmsgid \"R level\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:251\nmsgid \"High damp (%)\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:261\nmsgid \"Low damp (%)\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:271\nmsgid \"Spread\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:291\nmsgid \"L input\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:298\nmsgid \"R input\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:305\nmsgid \"L output\"\nmsgstr \"\"\n\n#: lcr_delay_1436.xml:312\nmsgid \"R output\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:166\nmsgid \"Input 1\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:173\nmsgid \"Input 2\"\nmsgstr \"\"\n\n#: matrix_ms_st_1421.xml:45\nmsgid \"Matrix: MS to Stereo\"\nmsgstr \"\"\n\n#: matrix_ms_st_1421.xml:70 matrix_spatialiser_1422.xml:205\nmsgid \"Width\"\nmsgstr \"\"\n\n#: matrix_ms_st_1421.xml:80 matrix_st_ms_1420.xml:84\nmsgid \"Mid\"\nmsgstr \"\"\n\n#: matrix_ms_st_1421.xml:87 matrix_st_ms_1420.xml:91\nmsgid \"Side\"\nmsgstr \"\"\n\n#: matrix_ms_st_1421.xml:94 matrix_st_ms_1420.xml:70\nmsgid \"Left\"\nmsgstr \"\"\n\n#: matrix_ms_st_1421.xml:101 matrix_st_ms_1420.xml:77\nmsgid \"Right\"\nmsgstr \"\"\n\n#: matrix_spatialiser_1422.xml:166\nmsgid \"Matrix Spatialiser\"\nmsgstr \"\"\n\n#: matrix_spatialiser_1422.xml:191\nmsgid \"Input L\"\nmsgstr \"\"\n\n#: matrix_spatialiser_1422.xml:198\nmsgid \"Input R\"\nmsgstr \"\"\n\n#: matrix_spatialiser_1422.xml:215\nmsgid \"Output L\"\nmsgstr \"\"\n\n#: matrix_spatialiser_1422.xml:222\nmsgid \"Output R\"\nmsgstr \"\"\n\n#: matrix_st_ms_1420.xml:45\nmsgid \"Matrix: Stereo to MS\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:205\nmsgid \"Multiband EQ\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:230\nmsgid \"50Hz gain (low shelving)\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:240\nmsgid \"100Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:250\nmsgid \"156Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:260\nmsgid \"220Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:270\nmsgid \"311Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:280\nmsgid \"440Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:290\nmsgid \"622Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:300\nmsgid \"880Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:310\nmsgid \"1250Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:320\nmsgid \"1750Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:330\nmsgid \"2500Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:340\nmsgid \"3500Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:350\nmsgid \"5000Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:360\nmsgid \"10000Hz gain\"\nmsgstr \"\"\n\n#: mbeq_1197.xml:370\nmsgid \"20000Hz gain\"\nmsgstr \"\"\n\n#: mod_delay_1419.xml:78\nmsgid \"Modulatable delay\"\nmsgstr \"\"\n\n#: mod_delay_1419.xml:103\nmsgid \"Base delay (s)\"\nmsgstr \"\"\n\n#: mod_delay_1419.xml:113\nmsgid \"Delay (s)\"\nmsgstr \"\"\n\n#: multivoice_chorus_1201.xml:196\nmsgid \"Multivoice Chorus\"\nmsgstr \"\"\n\n#: multivoice_chorus_1201.xml:221\nmsgid \"Number of voices\"\nmsgstr \"\"\n\n#: multivoice_chorus_1201.xml:241\nmsgid \"Voice separation (ms)\"\nmsgstr \"\"\n\n#: multivoice_chorus_1201.xml:251\nmsgid \"Detune (%)\"\nmsgstr \"\"\n\n#: multivoice_chorus_1201.xml:271\nmsgid \"Output attenuation (dB)\"\nmsgstr \"\"\n\n#: phasers_1217.xml:182\nmsgid \"LFO Phaser\"\nmsgstr \"\"\n\n#: phasers_1217.xml:207\nmsgid \"LFO rate (Hz)\"\nmsgstr \"\"\n\n#: phasers_1217.xml:217\nmsgid \"LFO depth\"\nmsgstr \"\"\n\n#: phasers_1217.xml:237 phasers_1217.xml:475\nmsgid \"Spread (octaves)\"\nmsgstr \"\"\n\n#: phasers_1217.xml:276\nmsgid \"4 x 4 pole allpass\"\nmsgstr \"\"\n\n#: phasers_1217.xml:301\nmsgid \"Frequency 1\"\nmsgstr \"\"\n\n#: phasers_1217.xml:311\nmsgid \"Feedback 1\"\nmsgstr \"\"\n\n#: phasers_1217.xml:321\nmsgid \"Frequency 2\"\nmsgstr \"\"\n\n#: phasers_1217.xml:331\nmsgid \"Feedback 2\"\nmsgstr \"\"\n\n#: phasers_1217.xml:341\nmsgid \"Frequency 3\"\nmsgstr \"\"\n\n#: phasers_1217.xml:351\nmsgid \"Feedback 3\"\nmsgstr \"\"\n\n#: phasers_1217.xml:361\nmsgid \"Frequency 4\"\nmsgstr \"\"\n\n#: phasers_1217.xml:371\nmsgid \"Feedback 4\"\nmsgstr \"\"\n\n#: phasers_1217.xml:410\nmsgid \"Auto phaser\"\nmsgstr \"\"\n\n#: phasers_1217.xml:435\nmsgid \"Attack time (s)\"\nmsgstr \"\"\n\n#: phasers_1217.xml:445\nmsgid \"Decay time (s)\"\nmsgstr \"\"\n\n#: phasers_1217.xml:455\nmsgid \"Modulation depth\"\nmsgstr \"\"\n\n#: pitch_scale_1193.xml:56\nmsgid \"Pitch Scaler\"\nmsgstr \"\"\n\n#: pitch_scale_1193.xml:81 pitch_scale_1194.xml:80\nmsgid \"Pitch co-efficient\"\nmsgstr \"\"\n\n#: pitch_scale_1194.xml:55\nmsgid \"Higher Quality Pitch Scaler\"\nmsgstr \"\"\n\n#: plate_1423.xml:105\nmsgid \"Plate reverb\"\nmsgstr \"\"\n\n#: plate_1423.xml:130\nmsgid \"Reverb time\"\nmsgstr \"\"\n\n#: rate_shifter_1417.xml:90\nmsgid \"Rate shifter\"\nmsgstr \"\"\n\n#: rate_shifter_1417.xml:115\nmsgid \"Rate\"\nmsgstr \"\"\n\n#: retro_flange_1208.xml:193\nmsgid \"Retro Flanger\"\nmsgstr \"\"\n\n#: retro_flange_1208.xml:218\nmsgid \"Average stall (ms)\"\nmsgstr \"\"\n\n#: retro_flange_1208.xml:228\nmsgid \"Flange frequency (Hz)\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:74\nmsgid \"Ringmod with two inputs\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:99 ringmod_1188.xml:173\nmsgid \"Modulation depth (0=none, 1=AM, 2=RM)\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:116\nmsgid \"Modulator\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:148\nmsgid \"Ringmod with LFO\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:193\nmsgid \"Sine level\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:203\nmsgid \"Triangle level\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:213\nmsgid \"Sawtooth level\"\nmsgstr \"\"\n\n#: ringmod_1188.xml:223\nmsgid \"Square level\"\nmsgstr \"\"\n\n#: satan_maximiser_1408.xml:96\nmsgid \"Barry's Satan Maximiser\"\nmsgstr \"\"\n\n#: satan_maximiser_1408.xml:121\nmsgid \"Decay time (samples)\"\nmsgstr \"\"\n\n#: satan_maximiser_1408.xml:131\nmsgid \"Knee point (dB)\"\nmsgstr \"\"\n\n#: sc1_1425.xml:113\nmsgid \"SC1\"\nmsgstr \"\"\n\n#: sc1_1425.xml:138 sc2_1426.xml:135 sc3_1427.xml:142 sc4_1434.xml:144\nmsgid \"Attack time (ms)\"\nmsgstr \"\"\n\n#: sc1_1425.xml:148 sc2_1426.xml:145 sc3_1427.xml:152 sc4_1434.xml:154\nmsgid \"Release time (ms)\"\nmsgstr \"\"\n\n#: sc1_1425.xml:158 sc2_1426.xml:155 sc3_1427.xml:162 sc4_1434.xml:164\nmsgid \"Threshold level (dB)\"\nmsgstr \"\"\n\n#: sc1_1425.xml:168 sc2_1426.xml:165 sc3_1427.xml:172 sc4_1434.xml:174\nmsgid \"Ratio (1:n)\"\nmsgstr \"\"\n\n#: sc1_1425.xml:178 sc2_1426.xml:175 sc3_1427.xml:182 sc4_1434.xml:184\nmsgid \"Knee radius (dB)\"\nmsgstr \"\"\n\n#: sc1_1425.xml:188 sc2_1426.xml:185 sc3_1427.xml:192 sc4_1434.xml:194\nmsgid \"Makeup gain (dB)\"\nmsgstr \"\"\n\n#: sc2_1426.xml:110\nmsgid \"SC2\"\nmsgstr \"\"\n\n#: sc2_1426.xml:195 sc3_1427.xml:212\nmsgid \"Sidechain\"\nmsgstr \"\"\n\n#: sc3_1427.xml:117\nmsgid \"SC3\"\nmsgstr \"\"\n\n#: sc3_1427.xml:202\nmsgid \"Chain balance\"\nmsgstr \"\"\n\n#: sc3_1427.xml:219 sc4_1434.xml:224\nmsgid \"Left input\"\nmsgstr \"\"\n\n#: sc3_1427.xml:226 sc4_1434.xml:231\nmsgid \"Right input\"\nmsgstr \"\"\n\n#: sc4_1434.xml:119\nmsgid \"SC4\"\nmsgstr \"\"\n\n#: sc4_1434.xml:204\nmsgid \"Amplitude (dB)\"\nmsgstr \"\"\n\n#: sc4_1434.xml:214\nmsgid \"Gain reduction (dB)\"\nmsgstr \"\"\n\n#: shaper_1187.xml:58\nmsgid \"Wave shaper\"\nmsgstr \"\"\n\n#: shaper_1187.xml:83\nmsgid \"Waveshape\"\nmsgstr \"\"\n\n#: sifter_1210.xml:168\nmsgid \"Signal sifter\"\nmsgstr \"\"\n\n#: sifter_1210.xml:193\nmsgid \"Sift size\"\nmsgstr \"\"\n\n#: single_para_1203.xml:64\nmsgid \"Single band parametric\"\nmsgstr \"\"\n\n#: single_para_1203.xml:109\nmsgid \"Bandwidth (octaves)\"\nmsgstr \"\"\n\n#: sinus_wavewrapper_1198.xml:49\nmsgid \"Sinus wavewrapper\"\nmsgstr \"\"\n\n#: sinus_wavewrapper_1198.xml:74\nmsgid \"Wrap degree\"\nmsgstr \"\"\n\n#: smooth_decimate_1414.xml:75\nmsgid \"Smooth Decimator\"\nmsgstr \"\"\n\n#: smooth_decimate_1414.xml:100\nmsgid \"Resample rate\"\nmsgstr \"\"\n\n#: split_1406.xml:47\nmsgid \"Mono to Stereo splitter\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:124\nmsgid \"Step Demuxer\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:149\nmsgid \"Crossfade time (in ms)\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:159\nmsgid \"Clock\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:180\nmsgid \"Input 3\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:187\nmsgid \"Input 4\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:194\nmsgid \"Input 5\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:201\nmsgid \"Input 6\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:208\nmsgid \"Input 7\"\nmsgstr \"\"\n\n#: step_muxer_1212.xml:215\nmsgid \"Input 8\"\nmsgstr \"\"\n\n#: surround_encoder_1401.xml:97\nmsgid \"Surround matrix encoder\"\nmsgstr \"\"\n\n#: surround_encoder_1401.xml:122\nmsgid \"L\"\nmsgstr \"\"\n\n#: surround_encoder_1401.xml:129\nmsgid \"R\"\nmsgstr \"\"\n\n#: surround_encoder_1401.xml:136\nmsgid \"C\"\nmsgstr \"\"\n\n#: surround_encoder_1401.xml:143\nmsgid \"S\"\nmsgstr \"\"\n\n#: surround_encoder_1401.xml:150\nmsgid \"Lt\"\nmsgstr \"\"\n\n#: surround_encoder_1401.xml:157\nmsgid \"Rt\"\nmsgstr \"\"\n\n#: svf_1214.xml:142\nmsgid \"State Variable Filter\"\nmsgstr \"\"\n\n#: svf_1214.xml:187\nmsgid \"Filter type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\"\nmsgstr \"\"\n\n#: svf_1214.xml:197\nmsgid \"Filter freq\"\nmsgstr \"\"\n\n#: svf_1214.xml:207\nmsgid \"Filter Q\"\nmsgstr \"\"\n\n#: svf_1214.xml:217\nmsgid \"Filter resonance\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:137\nmsgid \"Tape Delay Simulation\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:162\nmsgid \"Tape speed (inches/sec, 1=normal)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:172\nmsgid \"Dry level (dB)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:182\nmsgid \"Tap 1 distance (inches)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:192\nmsgid \"Tap 1 level (dB)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:202\nmsgid \"Tap 2 distance (inches)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:212\nmsgid \"Tap 2 level (dB)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:222\nmsgid \"Tap 3 distance (inches)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:232\nmsgid \"Tap 3 level (dB)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:242\nmsgid \"Tap 4 distance (inches)\"\nmsgstr \"\"\n\n#: tape_delay_1211.xml:252\nmsgid \"Tap 4 level (dB)\"\nmsgstr \"\"\n\n#: transient_1206.xml:132\nmsgid \"Transient mangler\"\nmsgstr \"\"\n\n#: transient_1206.xml:157\nmsgid \"Attack speed\"\nmsgstr \"\"\n\n#: transient_1206.xml:167\nmsgid \"Sustain time\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:80\nmsgid \"Triple band parametric with shelves\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:105\nmsgid \"Low-shelving gain (dB)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:115\nmsgid \"Low-shelving frequency (Hz)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:125\nmsgid \"Low-shelving slope\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:145\nmsgid \"Band 1 frequency (Hz)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:155\nmsgid \"Band 1 bandwidth (octaves)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:175\nmsgid \"Band 2 frequency (Hz)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:185\nmsgid \"Band 2 bandwidth (octaves)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:205\nmsgid \"Band 3 frequency (Hz)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:215\nmsgid \"Band 3 bandwidth (octaves)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:225\nmsgid \"High-shelving gain (dB)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:235\nmsgid \"High-shelving frequency (Hz)\"\nmsgstr \"\"\n\n#: triple_para_1204.xml:245\nmsgid \"High-shelving slope\"\nmsgstr \"\"\n\n#: valve_1209.xml:83\nmsgid \"Valve saturation\"\nmsgstr \"\"\n\n#: valve_1209.xml:108\nmsgid \"Distortion level\"\nmsgstr \"\"\n\n#: valve_1209.xml:118\nmsgid \"Distortion character\"\nmsgstr \"\"\n\n#: valve_rect_1405.xml:111\nmsgid \"Valve rectifier\"\nmsgstr \"\"\n\n#: valve_rect_1405.xml:136\nmsgid \"Sag level\"\nmsgstr \"\"\n\n#: wave_terrain_1412.xml:49\nmsgid \"Wave Terrain Oscillator\"\nmsgstr \"\"\n\n#: wave_terrain_1412.xml:74\nmsgid \"x\"\nmsgstr \"\"\n\n#: wave_terrain_1412.xml:81\nmsgid \"y\"\nmsgstr \"\"\n\n#: wave_terrain_1412.xml:88\nmsgid \"z\"\nmsgstr \"\"\n\n#: zm1_1428.xml:55\nmsgid \"z-1\"\nmsgstr \"\"\n"
  },
  {
    "path": "pointer_cast_1910.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include <limits.h>\n\n      #include \"ladspa-util.h\"\n      #include \"util/biquad.h\"\n\n      typedef union {\n\tLADSPA_Data fp;\n\tint         in;\n      } pcast;\n    ]]></code>\n  </global>\n\n  <plugin label=\"pointerCastDistortion\" id=\"1910\" class=\"DistortionPlugin\">\n    <name>Pointer cast distortion</name>\n    <p>This distortion is created by treating the floating point representation\nof the input signal as a 0.32 1's complement fixedpoint integer. Its very\nunmusical but supprisingly recognisable. I'm not sure that its useful for\nanything, but it can make interesting noises.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      filt = malloc(sizeof(biquad));\n      fs = s_rate;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      biquad_init(filt);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      const float filt_scale = cutoff < 50.0f ? cutoff / 50.0f : 1.0f;\n\n      lp_set_params(filt, cutoff, 1.0f, fs);\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tpcast val;\n\tfloat sign, filt_val, dist_val;\n\n\tfilt_val = biquad_run(filt, input[pos]) * filt_scale;\n\tsign = filt_val < 0.0f ? -1.0f : 1.0f;\n\tval.fp = fabs(filt_val);\n\tdist_val = sign * (LADSPA_Data)val.in / (LADSPA_Data)INT_MAX +\n\t\t   (input[pos] - filt_val);\n        buffer_write(output[pos], LIN_INTERP(wet, input[pos], dist_val));\n      }\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->filt);\n    ]]></callback>\n\n    <port label=\"cutoff\" dir=\"input\" type=\"control\" hint=\"logarithmic,sample_rate,default_low\">\n      <name>Effect cutoff freq (Hz)</name>\n      <p>Controls the frequencies that will be passed to the effect.</p>\n      <range min=\"0.0001\" max=\"0.3\"/>\n    </port>\n\n    <port label=\"wet\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Dry/wet mix</name>\n      <p>Controls the ammunt of distorting mixed into the output.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"filt\" type=\"biquad *\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "rate_shifter_1417.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"ladspa-util.h\"\n    </code>\n  </global>\n\n  <plugin label=\"rateShifter\" id=\"1417\" class=\"PitchPlugin\">\n    <name>Rate shifter</name>\n    <p>Stretches or compresses the input with a ringbuffer.</p>\n    <p>Because of the ringbuffer you will get stretches of silence or clicks when the read pointer passes the write pointer.</p>\n    <p>The ringbuffer is about 2.7-3.0s long, depending on the sample rate.</p>\n    <p>Versions with variable buffer sizes or declicking code would be easy (but a bit less efficient); shout if you would find them useful.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      unsigned int size = 32768;\n      const float fs = s_rate;\n\n      while (size < 2.7f * fs) {\n\tsize *= 2;\n      }\n      buffer = calloc(size, sizeof(LADSPA_Data));\n      buffer_mask = size - 1;\n      read_ptr.all = 0;\n      write_ptr = size / 2;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      memset(buffer, 0, buffer_mask + 1);\n      read_ptr.all = 0;\n      write_ptr = (buffer_mask + 1) / 2;\n      write_ptr = 0;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      fixp32 read_inc;\n\n      read_inc.all = (long long)(rate * 4294967296.0f);\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tconst unsigned int rp = read_ptr.part.in;\n\n\t/* Do write pointer stuff */\n        buffer[write_ptr] = input[pos];\n\twrite_ptr = (write_ptr + 1) & buffer_mask;\n\n\t/* And now read pointer */\n        buffer_write(output[pos], cube_interp((float)read_ptr.part.fr / 4294967296.0f, buffer[(rp - 1) & buffer_mask], buffer[rp],  buffer[(rp + 1) & buffer_mask], buffer[(rp + 2) & buffer_mask]));\n\tread_ptr.all += read_inc.all;\n\tread_ptr.part.in &= buffer_mask;\n      }\n\n      plugin_data->read_ptr.all = read_ptr.all;\n      plugin_data->write_ptr = write_ptr;\n    ]]></callback>\n\n    <port label=\"rate\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Rate</name>\n      <p>The rate of the output signal; eg. 2.0 will double the speed. Negative numbers will play backwards.</p>\n      <p>Pretty much any value will work, but the ranges give what most people are going to want to use. You can get some interesting sounds with very high numbers (e.g. 2000).</p>\n      <range min=\"-4\" max=\"4\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_mask\" type=\"unsigned int\" />\n    <instance-data label=\"read_ptr\" type=\"fixp32\" />\n    <instance-data label=\"write_ptr\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "retro_flange_1208.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\n\t\t<code><![CDATA[\n#include \"ladspa-util.h\"\n\n#define BASE_BUFFER 0.001 // Base buffer length (s)\n\nstatic inline LADSPA_Data sat(LADSPA_Data x, float q,  float dist) {\n\tif (x == q) {\n\t\treturn 1.0f / dist + q / (1.0f - f_exp(dist * q));\n\t}\n\treturn ((x - q) / (1.0f - f_exp(-dist * (x - q))) + q /\n\t (1.0f - f_exp(dist * q)));\n}\n\n\t\t]]></code>\n\t</global>\n\n\t<plugin label=\"retroFlange\" id=\"1208\" class=\"FlangerPlugin\">\n\t\t<name>Retro Flanger</name>\n\t\t<p>A model of someone flanging the input.</p>\n\t\t<p>Models the tape saturation effects, and frequency smear of a manual flanger. The results are a slightly distorted, but more subtle flanger sound that you get from a normal digital flanger.</p>\n\n\t\t<callback event=\"instantiate\"><![CDATA[\nsample_rate = s_rate;\nbuffer_size = BASE_BUFFER * s_rate;\nbuffer = calloc(buffer_size, sizeof(LADSPA_Data));\nphase = 0;\nlast_phase = 0;\nlast_in = 0.0f;\nmax_law_p = s_rate*2;\nlast_law_p = -1;\ndelay_line_length = sample_rate * 0.01f;\ndelay_line = calloc(sizeof(float), delay_line_length);\n\ndelay_pos = 0;\ncount = 0;\n\nprev_law_peak = 0.0f;\nnext_law_peak = 1.0f;\nprev_law_pos = 0;\nnext_law_pos = 10;\n\nz0 = 0.0f;\nz1 = 0.0f;\nz2 = 0.0f;\n\t\t]]></callback>\n\n\t\t<callback event=\"activate\"><![CDATA[\nmemset(delay_line, 0, sizeof(float) * delay_line_length);\nmemset(buffer, 0, sizeof(LADSPA_Data) * buffer_size);\nz0 = 0.0f;\nz1 = 0.0f;\nz2 = 0.0f;\n\nprev_law_peak = 0.0f;\nnext_law_peak = 1.0f;\nprev_law_pos = 0;\nnext_law_pos = 10;\n\t\t]]></callback>\n\n\t\t<callback event=\"cleanup\"><![CDATA[\nfree(plugin_data->delay_line);\nfree(plugin_data->buffer);\n\t\t]]></callback>\n\n\t\t<callback event=\"run\"><![CDATA[\nlong int pos;\nint law_p = f_trunc(LIMIT(sample_rate / f_clamp(law_freq, 0.0001f, 100.0f), 1, max_law_p));\nfloat increment;\nfloat lin_int, lin_inc;\nint track;\nint fph;\nLADSPA_Data out = 0.0f;\nconst float dda_c = f_clamp(delay_depth_avg, 0.0f, 10.0f);\nint dl_used = (dda_c * sample_rate) / 1000;\nfloat inc_base = 1000.0f * (float)BASE_BUFFER;\nconst float delay_depth = 2.0f * dda_c;\nfloat n_ph, p_ph, law;\n\nfor (pos = 0; pos < sample_count; pos++) {\n\t// Write into the delay line\n\tdelay_line[delay_pos] = input[pos];\n\tz0 = delay_line[MOD(delay_pos - dl_used, delay_line_length)] + 0.12919609397f*z1 - 0.31050847f*z2;\n\tout = sat(z0*0.20466966f + z1*0.40933933f + z2*0.40933933f,\n\t                -0.23f, 3.3f);\n\tz2 = z1; z1 = z0;\n\tdelay_pos = (delay_pos + 1) % delay_line_length;\n\n        if ((count++ % law_p) == 0) {\n\t\t// Value for amplitude of law peak\n\t\tnext_law_peak = (float)rand() / (float)RAND_MAX;\n\t\tnext_law_pos = count + law_p;\n\t} else if (count % law_p == law_p / 2) {\n\t\t// Value for amplitude of law peak\n\t\tprev_law_peak = (float)rand() / (float)RAND_MAX;\n\t\tprev_law_pos = count + law_p;\n        }\n\n        n_ph = (float)(law_p - labs(next_law_pos - count))/(float)law_p;\n        p_ph = n_ph + 0.5f;\n        if (p_ph > 1.0f) {\n                p_ph -= 1.0f;\n        }\n        law = f_sin_sq(3.1415926f*p_ph)*prev_law_peak +\n                f_sin_sq(3.1415926f*n_ph)*next_law_peak;\n\n\tincrement = inc_base / (delay_depth * law + 0.2);\n\tfph = f_trunc(phase);\n\tlast_phase = fph;\n\tlin_int = phase - (float)fph;\n\tout += LIN_INTERP(lin_int, buffer[(fph+1) % buffer_size],\n\t buffer[(fph+2) % buffer_size]);\n\tphase += increment;\n\tlin_inc = 1.0f / (floor(phase) - last_phase + 1);\n\tlin_inc = lin_inc > 1.0f ? 1.0f : lin_inc;\n\tlin_int = 0.0f;\n\tfor (track = last_phase; track < phase; track++) {\n\t\tlin_int += lin_inc;\n\t\tbuffer[track % buffer_size] =\n\t\t LIN_INTERP(lin_int, last_in, input[pos]);\n\t}\n\tlast_in = input[pos];\n\tbuffer_write(output[pos], out * 0.707f);\n\tif (phase >= buffer_size) {\n\t\tphase -= buffer_size;\n\t}\n}\n\n// Store current phase in instance\nplugin_data->phase = phase;\nplugin_data->prev_law_peak = prev_law_peak;\nplugin_data->next_law_peak = next_law_peak;\nplugin_data->prev_law_pos = prev_law_pos;\nplugin_data->next_law_pos = next_law_pos;\nplugin_data->last_phase = last_phase;\nplugin_data->last_in = last_in;\nplugin_data->count = count;\nplugin_data->last_law_p = last_law_p;\nplugin_data->delay_pos = delay_pos;\nplugin_data->z0 = z0;\nplugin_data->z1 = z1;\nplugin_data->z2 = z2;\n\t\t]]></callback>\n\n\t\t<port label=\"delay_depth_avg\" dir=\"input\" type=\"control\" hint=\"default_low\">\n\t\t\t<name>Average stall (ms)</name>\n\t\t\t<range min=\"0\" max=\"10\"/>\n\t\t\t<p>The average time difference between the two tapes, per stall</p>\n\t\t</port>\n\n\t\t<port label=\"law_freq\" dir=\"input\" type=\"control\" hint=\"default_1\">\n\t\t\t<name>Flange frequency (Hz)</name>\n\t\t\t<range min=\"0.5\" max=\"8\"/>\n\t\t\t<p>The rate the tape is stalled at.</p>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n\n\t\t<instance-data label=\"buffer\" type=\"LADSPA_Data *\"/>\n\t\t<instance-data label=\"phase\" type=\"float\"/>\n\t\t<instance-data label=\"last_phase\" type=\"int\"/>\n\t\t<instance-data label=\"last_in\" type=\"LADSPA_Data\"/>\n\t\t<instance-data label=\"buffer_size\" type=\"long\"/>\n\t\t<instance-data label=\"sample_rate\" type=\"long\"/>\n\t\t<instance-data label=\"count\" type=\"long\"/>\n\t\t<instance-data label=\"max_law_p\" type=\"int\"/>\n\t\t<instance-data label=\"last_law_p\" type=\"int\"/>\n\t\t<instance-data label=\"delay_pos\" type=\"int\"/>\n\t\t<instance-data label=\"delay_line_length\" type=\"int\"/>\n\t\t<instance-data label=\"delay_line\" type=\"LADSPA_Data *\"/>\n\t\t<instance-data label=\"z0\" type=\"LADSPA_Data\"/>\n\t\t<instance-data label=\"z1\" type=\"LADSPA_Data\"/>\n\t\t<instance-data label=\"z2\" type=\"LADSPA_Data\"/>\n\t\t<instance-data label=\"prev_law_peak\" type=\"float\"/>\n\t\t<instance-data label=\"next_law_peak\" type=\"float\"/>\n\t\t<instance-data label=\"prev_law_pos\" type=\"int\"/>\n\t\t<instance-data label=\"next_law_pos\" type=\"int\"/>\n\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "revdelay_1605.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Jesse Chappell &lt;jesse at essej dot net&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"ladspa-util.h\"\n      #include <stdio.h>\n\n      #define MIN(a,b) ((a) < (b) ? (a) : (b))\n      #define MAX(a,b) ((a) > (b) ? (a) : (b))\n      #define CALC_DELAY(delaytime) \\\n        (f_clamp (delaytime * sample_rate, 1.f, (float)(buffer_size + 1)))\n\n    ]]></code>\n  </global>\n\n\n  <plugin label=\"revdelay\" id=\"1605\" class=\"DelayPlugin\">\n    <name>Reverse Delay (5s max)</name>\n     <p> A reverse delay not really modelled on any existing one.  You'll want to set\n         the Crossfade Samples parameter to something reasonably small (but more than 20)\n         for most applications, but you can try larger values if you start getting clicking.\n    </p>\n    \n    <callback event=\"instantiate\"><![CDATA[\n      sample_rate = s_rate;\n      buffer_size = 0;\n      delay_samples = 0;\n      last_delay_time = 0;\n      write_phase = 0;\n    ]]></callback>\n    \n    <callback event=\"activate\"><![CDATA[\n      unsigned int size;\n\n      size = sample_rate * 5 * 2; /* 5 second maximum */\n        \n      /* calloc sets the buffer to zero. */\n      buffer = calloc(size, sizeof(LADSPA_Data));\n\n      buffer_size = size;\n      write_phase = 0;\n      delay_samples = 0;\n    ]]></callback>\n    \n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n    \n    <callback event=\"run\"><![CDATA[\n      int i;\n      unsigned long delay2;\n      float dry = DB_CO(dry_level);\n      float wet = DB_CO(wet_level);\n      float fadescale;\n      unsigned long xfadesamp = xfade_samp;\n\n      if (write_phase == 0) {\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->delay_samples = delay_samples = CALC_DELAY (delay_time);\n      }\n\n      if (delay_time == last_delay_time) {\n        long idelay_samples = (long)delay_samples;\n        delay2 = idelay_samples * 2;\n\n        if (xfadesamp > idelay_samples) {\n            /* force it to half */\n            xfadesamp = idelay_samples / 2;\n        }\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase = delay2 - write_phase;\n          LADSPA_Data read;\n          LADSPA_Data insamp;\n\n          insamp = in[i];\n          read =  (wet * buffer[read_phase]) + (dry * insamp);\n\n          if ( (write_phase % idelay_samples) < xfadesamp) {\n            fadescale = (write_phase % idelay_samples) / (1.0 * xfadesamp);\n          }\n          else if ((write_phase % idelay_samples) > (idelay_samples - xfadesamp)) {\n            fadescale = (idelay_samples - (write_phase % idelay_samples)) / (1.0 * xfadesamp);\n          }\n          else {\n            fadescale = 1.0;\n          }\n\n          buffer[write_phase] = fadescale * (insamp + (feedback * read)); \n\t  buffer[write_phase] = flush_to_zero(buffer[write_phase]);\n                  \n\t  buffer_write(out[i], read);\n          write_phase = (write_phase + 1) % delay2;\n        }\n      } else {\n        float next_delay_samples = CALC_DELAY (delay_time);\n        float delay_samples_slope = (next_delay_samples - delay_samples) / sample_count;\n\n        for (i=0; i<sample_count; i++) {\n          long read_phase, idelay_samples;\n          LADSPA_Data read;\n          LADSPA_Data insamp;\n          insamp = in[i];\n\n          delay_samples += delay_samples_slope;\n          delay2 = (long) (delay_samples * 2);\n          write_phase = (write_phase + 1) % delay2;\n\n          read_phase = delay2 - write_phase;\n          idelay_samples = MAX(1,(long)delay_samples);\n          read = wet * buffer[read_phase]   + (dry * insamp);\n\n          if ((write_phase % idelay_samples) < xfade_samp) {\n            fadescale = (write_phase % idelay_samples) / (1.0 * xfade_samp);\n          }\n          else if ((write_phase % idelay_samples) > (idelay_samples - xfade_samp)) {\n            fadescale = (idelay_samples - (write_phase % idelay_samples)) / (1.0 * xfade_samp);\n          }\n          else {\n            fadescale = 1.0;\n          }\n\n          buffer[write_phase] = fadescale * (insamp + (feedback * read)); \n\t  buffer[write_phase] = flush_to_zero(buffer[write_phase]);\n\n\t  buffer_write(out[i], read);\n        }\n\n        plugin_data->last_delay_time = delay_time;\n        plugin_data->delay_samples = delay_samples;\n      }\n      \n      plugin_data->write_phase = write_phase;\n    ]]></callback>\n\n    <port label=\"in\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"out\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <port label=\"delay_time\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Delay Time (s)</name>\n      <range min=\"0\" max=\"5.0\"/>\n    </port>\n\n    <port label=\"dry_level\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Dry Level (dB)</name>\n      <p>Controls the level of the dry input signal in dB's.</p>\n      <range min=\"-70\" max=\"0\"/>\n    </port>\n\n    <port label=\"wet_level\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Wet Level (dB)</name>\n      <p>Controls the level of the delayed signal in dB's.</p>\n      <range min=\"-70\" max=\"0\"/>\n    </port>\n\n    <port label=\"feedback\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Feedback</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"xfade_samp\" dir=\"input\" type=\"control\" hint=\"default_low,integer\">\n      <name>Crossfade samples</name>\n      <range min=\"0\" max=\"5000\"/>\n    </port>\n\n\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_size\" type=\"unsigned int\" />\n    <instance-data label=\"sample_rate\" type=\"unsigned int\" />\n    <instance-data label=\"delay_samples\" type=\"LADSPA_Data\" />\n    <instance-data label=\"write_phase\" type=\"long\" />\n    <instance-data label=\"last_delay_time\" type=\"LADSPA_Data\" />\n\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "ringmod_1188.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code>\n\t\t\t#include \"ladspa-util.h\"\n\n\t\t\tint refcount;\n\t\t\tLADSPA_Data *sin_tbl, *tri_tbl, *saw_tbl, *squ_tbl;\n\t\t\tlong sample_rate;\n\t\t</code>\n\t</global>\n\n\t<plugin label=\"ringmod_2i1o\" id=\"1188\" class=\"ModulatorPlugin\">\n\t\t<name>Ringmod with two inputs</name>\n\t\t<p>This is a simple 2 input ring modulator.</p>\n\t\t<p>It is important that the modulator input is bounded to (-1, +1), otherwise you will get rubbish on the output.</p>\n\n\t\t<callback event=\"run\">\n\t\t\tunsigned long pos;\n\t\t\tfloat tmpa = depth * 0.5f;\n\t\t\tfloat tmpb = 2.0f - depth;\n\n\t\t\tfor (pos = 0; pos &lt; sample_count; pos++) {\n\t\t\t\tbuffer_write(output[pos], input[pos] * (tmpa * modulator[pos] + tmpb));\n\t\t\t}\n\t\t</callback>\n\n\t\t<port label=\"depth\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Modulation depth (0=none, 1=AM, 2=RM)</name>\n\t\t\t<range min=\"0\" max=\"2\"/>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t\t<p>This is the audio input.</p>\n\t\t</port>\n\n\t\t<port label=\"modulator\" dir=\"input\" type=\"audio\" hint=\"default_0\">\n\t\t\t<name>Modulator</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t\t<p>This is the modulator input.</p>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n\t</plugin>\n\n\t<plugin label=\"ringmod_1i1o1l\" id=\"1189\" class=\"ModulatorPlugin\">\n\t\t<name>Ringmod with LFO</name>\n\t\t<p>This is a simple ring modulator and LFO.</p>\n\n\t\t<callback event=\"instantiate\">\n\t\t\tlong i;\n\n\t\t\tsample_rate = s_rate;\n\n\t\t\tif (refcount++ == 0) {\n\t\t\t\tsin_tbl = malloc(sizeof(LADSPA_Data) * sample_rate);\n\t\t\t\tfor (i = 0; i &lt; sample_rate; i++) {\n\t\t\t\t\tsin_tbl[i] = sin(i * 2 * M_PI / sample_rate);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\ttri_tbl = malloc(sizeof(LADSPA_Data) * sample_rate);\n\t\t\t\tfor (i = 0; i &lt; sample_rate; i++) {\n\t\t\t\t\ttri_tbl[i] = acos(cos(i * 2 * M_PI / sample_rate)) / M_PI * 2 - 1;\n\t\t\t\t}\n\n\t\t\t\tsqu_tbl = malloc(sizeof(LADSPA_Data) * sample_rate);\n\t\t\t\tfor (i = 0; i &lt; sample_rate; i++) {\n\t\t\t\t\tsqu_tbl[i] = (i &lt; sample_rate/2) ? 1 : -1;\n\t\t\t\t}\n\n\t\t\t\tsaw_tbl = malloc(sizeof(LADSPA_Data) * sample_rate);\n\t\t\t\tfor (i = 0; i &lt; sample_rate; i++) {\n\t\t\t\t\tsaw_tbl[i] = ((2.0 * i) - (float)sample_rate) / (float)sample_rate;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\toffset = 0;\n\t\t</callback>\n\n\t\t<callback event=\"activate\">\n\t\t\toffset = 0;\n\t\t</callback>\n\n\t\t<callback event=\"cleanup\" unused-vars=\"plugin_data\">\n\t\t\tif (--refcount == 0) {\n\t\t\t\tfree(sin_tbl);\n\t\t\t\tfree(tri_tbl);\n\t\t\t\tfree(squ_tbl);\n\t\t\t\tfree(saw_tbl);\n\t\t\t}\n\t\t</callback>\n\n\t\t<callback event=\"run\">\n\t\t\tLADSPA_Data scale = fabs(sin) + fabs(tri) +\n\t\t\t fabs(saw) + fabs(squ);\n\t\t\tint o;\n\t\t\tunsigned long pos;\n\n\t\t\t// Rescale to more useful value\n\t\t\tconst float depth = depthp * 0.5f;\n\n\t\t\tif (scale == 0.0) {\n\t\t\t\tscale = 1.0;\n\t\t\t}\n\n\t\t\tfor (pos = 0; pos &lt; sample_count; pos++) {\n\t\t\t\to = f_round(offset);\n\t\t\t\tbuffer_write(output[pos], input[pos] *\n\t\t\t\t (depth * (((sin / scale) * sin_tbl[o]) +\n\t\t\t\t   ((tri / scale) * tri_tbl[o]) +\n\t\t\t\t   ((saw / scale) * saw_tbl[o]) +\n\t\t\t\t   ((squ / scale) * squ_tbl[o])) +\n\t\t\t\t   (1.0f - depth)));\n\t\t\t\toffset += freq;\n\t\t\t\tif (offset > sample_rate) {\n\t\t\t\t\toffset -= sample_rate;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tplugin_data->offset = offset;\n\t\t</callback>\n\n\t\t<port label=\"depthp\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Modulation depth (0=none, 1=AM, 2=RM)</name>\n\t\t\t<range min=\"0\" max=\"2\"/>\n\t\t</port>\n\n\t\t<port label=\"freq\" dir=\"input\" type=\"control\" hint=\"default_440\">\n\t\t\t<name>Frequency (Hz)</name>\n\t\t\t<range min=\"1\" max=\"1000\"/>\n\t\t</port>\n\n\t\t<port label=\"sin\" dir=\"input\" type=\"control\" hint=\"default_1\">\n\t\t\t<name>Sine level</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\n\t\t<port label=\"tri\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Triangle level</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\n\t\t<port label=\"saw\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Sawtooth level</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\n\t\t<port label=\"squ\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Square level</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n\n\t\t<instance-data label=\"offset\" type=\"LADSPA_Data\"/>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "satan_maximiser_1408.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include <math.h>\n      #include \"ladspa-util.h\"\n\n      #define BUFFER_SIZE 16\n      #define BUFFER_MASK 15\n    ]]></code>\n  </global>\n\n  <plugin label=\"satanMaximiser\" id=\"1408\" class=\"DynamicsPlugin,DistortionPlugin\">\n    <name>Barry's Satan Maximiser</name>\n    <p>Formerly Stupid Compressor. Thanks to Matt Yee-King for the name.</p>\n    <p>Compresses signals with a stupidly short attack and decay, infinite\nratio and hard knee. Not really as a compressor, but good harsh (non-musical)\ndistortion.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      env = 0.0f;\n      buffer = malloc(sizeof(LADSPA_Data) * BUFFER_SIZE);\n      buffer_pos = 0;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      env = 0.0f;\n      memset(buffer, 0, sizeof(LADSPA_Data) * BUFFER_SIZE);\n      buffer_pos = 0;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      int delay;\n      float env_tr, env_sc, knee;\n      float env_time = env_time_p;\n\n      if (env_time < 2.0f) {\n\tenv_time = 2.0f;\n      }\n      knee = DB_CO(knee_point);\n      delay = f_round(env_time * 0.5f);\n      env_tr = 1.0f / env_time;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tif (fabs(input[pos]) > env) {\n\t  env = fabs(input[pos]);\n\t} else {\n\t  env = fabs(input[pos]) * env_tr + env * (1.0f - env_tr);\n\t}\n\tif (env <= knee) {\n\t  env_sc = 1.0f / knee;\n\t} else {\n\t  env_sc = 1.0f / env;\n\t}\n\tbuffer[buffer_pos] = input[pos];\n\tbuffer_write(output[pos], buffer[(buffer_pos - delay) & BUFFER_MASK] * env_sc);\n\tbuffer_pos = (buffer_pos + 1) & BUFFER_MASK;\n      }\n\n      plugin_data->env = env;\n      plugin_data->buffer_pos = buffer_pos;\n    ]]></callback>\n\n    <port label=\"env_time_p\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>Decay time (samples)</name>\n      <p>Controls the envelope decay time.</p>\n      <range min=\"2\" max=\"30\"/>\n    </port>\n\n    <port label=\"knee_point\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Knee point (dB)</name>\n      <p>Controls the knee roll-off point, ie. the point above which the compression kicks in. 0 will have no effect, -90 will remove virtually all dynamic range.</p>\n      <range min=\"-90\" max=\"0\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"env\" type=\"float\" />\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_pos\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "sc1_1425.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"util/db.h\"\n      #include \"util/rms.h\"\n\n      #define A_TBL 256\n    ]]></code>\n  </global>\n\n  <plugin label=\"sc1\" id=\"1425\" class=\"CompressorPlugin\">\n    <name>SC1</name>\n    <p>An high quality, reasonably low CPU cost RMS compressor designed for musical work.</p>\n    <p>It has controls for the compression point, compression ratio and knee softness.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      unsigned int i;\n      float sample_rate = (float)s_rate;\n\n      rms = rms_env_new();\n      sum = 0.0f;\n      amp = 0.0f;\n      gain = 0.0f;\n      gain_t = 0.0f;\n      env = 0.0f;\n      count = 0;\n\n      as = malloc(A_TBL * sizeof(float));\n      as[0] = 1.0f;\n      for (i=1; i<A_TBL; i++) {\n\tas[i] = expf(-1.0f / (sample_rate * (float)i / (float)A_TBL));\n      }\n\n      db_init();\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      rms_env_free(plugin_data->rms);\n      free(plugin_data->as);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n\n      const float ga = as[f_round(attack * 0.001f * (float)(A_TBL-1))];\n      const float gr = as[f_round(release * 0.001f * (float)(A_TBL-1))];\n      const float rs = (ratio - 1.0f) / ratio;\n      const float mug = db2lin(makeup_gain);\n      const float knee_min = db2lin(threshold - knee);\n      const float knee_max = db2lin(threshold + knee);\n      const float ef_a = ga * 0.25f;\n      const float ef_ai = 1.0f - ef_a;\n\n      for (pos = 0; pos < sample_count; pos++) {\n        sum += input[pos] * input[pos];\n\n        if (amp > env) {\n          env = env * ga + amp * (1.0f - ga);\n        } else {\n          env = env * gr + amp * (1.0f - gr);\n        }\n        if (count++ % 4 == 3) {\n          amp = rms_env_process(rms, sum * 0.25f);\n          sum = 0.0f;\n          if (env <= knee_min) {\n            gain_t = 1.0f;\n\t  } else if (env < knee_max) {\n\t    const float x = -(threshold - knee - lin2db(env)) / knee;\n\t    gain_t = db2lin(-knee * rs * x * x * 0.25f);\n          } else {\n            gain_t = db2lin((threshold - lin2db(env)) * rs);\n          }\n        }\n        gain = gain * ef_a + gain_t * ef_ai;\n        buffer_write(output[pos], input[pos] * gain * mug);\n      }\n      plugin_data->sum = sum;\n      plugin_data->amp = amp;\n      plugin_data->gain = gain;\n      plugin_data->gain_t = gain_t;\n      plugin_data->env = env;\n      plugin_data->count = count;\n    ]]></callback>\n\n    <port label=\"attack\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Attack time (ms)</name>\n      <p>The attack time in milliseconds.</p>\n      <range min=\"2\" max=\"400\"/>\n    </port>\n\n    <port label=\"release\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Release time (ms)</name>\n      <p>The release time in milliseconds.</p>\n      <range min=\"2\" max=\"800\"/>\n    </port>\n\n    <port label=\"threshold\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>Threshold level (dB)</name>\n      <p>The point at which the compressor will start to kick in.</p>\n      <range min=\"-30\" max=\"0\"/>\n    </port>\n\n    <port label=\"ratio\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Ratio (1:n)</name>\n      <p>The gain reduction ratio used when the signal level exceeds the threshold.</p>\n      <range min=\"1\" max=\"10\"/>\n    </port>\n\n    <port label=\"knee\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Knee radius (dB)</name>\n      <p>The distance from the threshold where the knee curve starts.</p>\n      <range min=\"1\" max=\"10\"/>\n    </port>\n\n    <port label=\"makeup_gain\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Makeup gain (dB)</name>\n      <p>Controls the gain of the makeup input signal in dB's.</p>\n      <range min=\"0\" max=\"+24\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"rms\" type=\"rms_env *\" />\n    <instance-data label=\"as\" type=\"float *\" />\n\n    <instance-data label=\"sum\" type=\"float\" />\n    <instance-data label=\"amp\" type=\"float\" />\n    <instance-data label=\"gain\" type=\"float\" />\n    <instance-data label=\"gain_t\" type=\"float\" />\n    <instance-data label=\"env\" type=\"float\" />\n    <instance-data label=\"count\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "sc2_1426.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"util/db.h\"\n      #include \"util/rms.h\"\n\n      #define A_TBL 256\n    ]]></code>\n  </global>\n\n  <plugin label=\"sc2\" id=\"1426\" class=\"CompressorPlugin\">\n    <name>SC2</name>\n    <p>A compressor with sidechain. Based on the code for SC1.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      unsigned int i;\n      float sample_rate = (float)s_rate;\n\n      rms = rms_env_new();\n      sum = 0.0f;\n      amp = 0.0f;\n      gain = 0.0f;\n      gain_t = 0.0f;\n      env = 0.0f;\n      count = 0;\n\n      as = malloc(A_TBL * sizeof(float));\n      as[0] = 1.0f;\n      for (i=1; i<A_TBL; i++) {\n\tas[i] = expf(-1.0f / (sample_rate * (float)i / (float)A_TBL));\n      }\n\n      db_init();\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      rms_env_free(plugin_data->rms);\n      free(plugin_data->as);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n\n      const float ga = as[f_round(attack * 0.001f * (float)(A_TBL-1))];\n      const float gr = as[f_round(release * 0.001f * (float)(A_TBL-1))];\n      const float rs = (ratio - 1.0f) / ratio;\n      const float mug = db2lin(makeup_gain);\n      const float knee_min = db2lin(threshold - knee);\n      const float knee_max = db2lin(threshold + knee);\n      const float ef_a = ga * 0.25f;\n      const float ef_ai = 1.0f - ef_a;\n\n      for (pos = 0; pos < sample_count; pos++) {\n        sum += sidechain[pos] * sidechain[pos];\n\n        if (amp > env) {\n          env = env * ga + amp * (1.0f - ga);\n        } else {\n          env = env * gr + amp * (1.0f - gr);\n        }\n        if (count++ % 4 == 3) {\n          amp = rms_env_process(rms, sum * 0.25f);\n          sum = 0.0f;\n          if (env <= knee_min) {\n            gain_t = 1.0f;\n\t  } else if (env < knee_max) {\n\t    const float x = -(threshold - knee - lin2db(env)) / knee;\n\t    gain_t = db2lin(-knee * rs * x * x * 0.25f);\n          } else {\n            gain_t = db2lin((threshold - lin2db(env)) * rs);\n          }\n        }\n        gain = gain * ef_a + gain_t * ef_ai;\n        buffer_write(output[pos], input[pos] * gain * mug);\n      }\n      plugin_data->sum = sum;\n      plugin_data->amp = amp;\n      plugin_data->gain = gain;\n      plugin_data->gain_t = gain_t;\n      plugin_data->env = env;\n      plugin_data->count = count;\n    ]]></callback>\n\n    <port label=\"attack\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Attack time (ms)</name>\n      <p>The attack time in milliseconds.</p>\n      <range min=\"2\" max=\"400\"/>\n    </port>\n\n    <port label=\"release\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Release time (ms)</name>\n      <p>The release time in milliseconds.</p>\n      <range min=\"2\" max=\"800\"/>\n    </port>\n\n    <port label=\"threshold\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>Threshold level (dB)</name>\n      <p>The point at which the compressor will start to kick in.</p>\n      <range min=\"-30\" max=\"0\"/>\n    </port>\n\n    <port label=\"ratio\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Ratio (1:n)</name>\n      <p>The gain reduction ratio used when the signal level exceeds the threshold.</p>\n      <range min=\"1\" max=\"10\"/>\n    </port>\n\n    <port label=\"knee\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Knee radius (dB)</name>\n      <p>The distance from the threshold where the knee curve starts.</p>\n      <range min=\"1\" max=\"10\"/>\n    </port>\n\n    <port label=\"makeup_gain\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Makeup gain (dB)</name>\n      <p>Controls the gain of the makeup input signal in dB's.</p>\n      <range min=\"0\" max=\"+24\"/>\n    </port>\n\n    <port label=\"sidechain\" dir=\"input\" type=\"audio\">\n      <name>Sidechain</name>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"rms\" type=\"rms_env *\" />\n    <instance-data label=\"as\" type=\"float *\" />\n\n    <instance-data label=\"sum\" type=\"float\" />\n    <instance-data label=\"amp\" type=\"float\" />\n    <instance-data label=\"gain\" type=\"float\" />\n    <instance-data label=\"gain_t\" type=\"float\" />\n    <instance-data label=\"env\" type=\"float\" />\n    <instance-data label=\"count\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "sc3_1427.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"util/db.h\"\n      #include \"util/rms.h\"\n\n      #define A_TBL 256\n    ]]></code>\n  </global>\n\n  <plugin label=\"sc3\" id=\"1427\" class=\"CompressorPlugin\">\n    <name>SC3</name>\n    <p>A stereo compressor with sidechain input. Based on the code for SC1.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      unsigned int i;\n      float sample_rate = (float)s_rate;\n\n      rms = rms_env_new();\n      sum = 0.0f;\n      amp = 0.0f;\n      gain = 0.0f;\n      gain_t = 0.0f;\n      env = 0.0f;\n      count = 0;\n\n      as = malloc(A_TBL * sizeof(float));\n      as[0] = 1.0f;\n      for (i=1; i<A_TBL; i++) {\n\tas[i] = expf(-1.0f / (sample_rate * (float)i / (float)A_TBL));\n      }\n\n      db_init();\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      rms_env_free(plugin_data->rms);\n      free(plugin_data->as);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n\n      const float ga = as[f_round(attack * 0.001f * (float)(A_TBL-1))];\n      const float gr = as[f_round(release * 0.001f * (float)(A_TBL-1))];\n      const float rs = (ratio - 1.0f) / ratio;\n      const float mug = db2lin(makeup_gain);\n      const float knee_min = db2lin(threshold - knee);\n      const float knee_max = db2lin(threshold + knee);\n      const float chain_bali = 1.0f - chain_bal;\n      const float ef_a = ga * 0.25f;\n      const float ef_ai = 1.0f - ef_a;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tconst float lev_in = chain_bali * (left_in[pos] + right_in[pos]) * 0.5f\n\t\t\t     + chain_bal * sidechain[pos];\n        sum += lev_in * lev_in;\n\n        if (amp > env) {\n          env = env * ga + amp * (1.0f - ga);\n        } else {\n          env = env * gr + amp * (1.0f - gr);\n        }\n        if (count++ % 4 == 3) {\n          amp = rms_env_process(rms, sum * 0.25f);\n          sum = 0.0f;\n\t  if (isnan(env)) {\n\t    // This can happen sometimes, but I dont know why\n\t    env = 0.0f;\n\t  } else if (env <= knee_min) {\n            gain_t = 1.0f;\n\t  } else if (env < knee_max) {\n\t    const float x = -(threshold - knee - lin2db(env)) / knee;\n\t    gain_t = db2lin(-knee * rs * x * x * 0.25f);\n          } else {\n            gain_t = db2lin((threshold - lin2db(env)) * rs);\n          }\n        }\n        gain = gain * ef_a + gain_t * ef_ai;\n        buffer_write(left_out[pos], left_in[pos] * gain * mug);\n        buffer_write(right_out[pos], right_in[pos] * gain * mug);\n      }\n      plugin_data->sum = sum;\n      plugin_data->amp = amp;\n      plugin_data->gain = gain;\n      plugin_data->gain_t = gain_t;\n      plugin_data->env = env;\n      plugin_data->count = count;\n    ]]></callback>\n\n    <port label=\"attack\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Attack time (ms)</name>\n      <p>The attack time in milliseconds.</p>\n      <range min=\"2\" max=\"400\"/>\n    </port>\n\n    <port label=\"release\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Release time (ms)</name>\n      <p>The release time in milliseconds.</p>\n      <range min=\"2\" max=\"800\"/>\n    </port>\n\n    <port label=\"threshold\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>Threshold level (dB)</name>\n      <p>The point at which the compressor will start to kick in.</p>\n      <range min=\"-30\" max=\"0\"/>\n    </port>\n\n    <port label=\"ratio\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Ratio (1:n)</name>\n      <p>The gain reduction ratio used when the signal level exceeds the threshold.</p>\n      <range min=\"1\" max=\"10\"/>\n    </port>\n\n    <port label=\"knee\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Knee radius (dB)</name>\n      <p>The distance from the threshold where the knee curve starts.</p>\n      <range min=\"1\" max=\"10\"/>\n    </port>\n\n    <port label=\"makeup_gain\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Makeup gain (dB)</name>\n      <p>Controls the gain of the makeup input signal in dB's.</p>\n      <range min=\"0\" max=\"+24\"/>\n    </port>\n\n    <port label=\"chain_bal\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Chain balance</name>\n      <p>Controls the chain signal used, 0 = Left+right in, 1 = Sidechain.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"sidechain\" dir=\"input\" type=\"audio\">\n      <name>Sidechain</name>\n    </port>\n\n    <port label=\"left_in\" dir=\"input\" type=\"audio\">\n      <name>Left input</name>\n    </port>\n\n    <port label=\"right_in\" dir=\"input\" type=\"audio\">\n      <name>Right input</name>\n    </port>\n\n    <port label=\"left_out\" dir=\"output\" type=\"audio\">\n      <name>Left output</name>\n    </port>\n\n    <port label=\"right_out\" dir=\"output\" type=\"audio\">\n      <name>Right output</name>\n    </port>\n\n    <instance-data label=\"rms\" type=\"rms_env *\" />\n    <instance-data label=\"as\" type=\"float *\" />\n\n    <instance-data label=\"sum\" type=\"float\" />\n    <instance-data label=\"amp\" type=\"float\" />\n    <instance-data label=\"gain\" type=\"float\" />\n    <instance-data label=\"gain_t\" type=\"float\" />\n    <instance-data label=\"env\" type=\"float\" />\n    <instance-data label=\"count\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "sc4_1882.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"util/db.h\"\n      #include \"util/rms.h\"\n\n      #define A_TBL 256\n    ]]></code>\n  </global>\n\n  <plugin label=\"sc4\" id=\"1882\" class=\"CompressorPlugin\">\n    <name>SC4</name>\n    <p>A stereo compressor with variable envelope follower for RMS / peak behaviour. Based on the code for SC1.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      unsigned int i;\n      float sample_rate = (float)s_rate;\n\n      rms = rms_env_new();\n      sum = 0.0f;\n      amp = 0.0f;\n      gain = 0.0f;\n      gain_t = 0.0f;\n      env = 0.0f;\n      env_rms = 0.0f;\n      env_peak = 0.0f;\n      count = 0;\n\n      as = malloc(A_TBL * sizeof(float));\n      as[0] = 1.0f;\n      for (i=1; i<A_TBL; i++) {\n\tas[i] = expf(-1.0f / (sample_rate * (float)i / (float)A_TBL));\n      }\n\n      db_init();\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      rms_env_free(plugin_data->rms);\n      free(plugin_data->as);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n\n      const float ga = attack < 2.0f ? 0.0f : as[f_round(attack * 0.001f * (float)(A_TBL-1))];\n      const float gr = as[f_round(release * 0.001f * (float)(A_TBL-1))];\n      const float rs = (ratio - 1.0f) / ratio;\n      const float mug = db2lin(makeup_gain);\n      const float knee_min = db2lin(threshold - knee);\n      const float knee_max = db2lin(threshold + knee);\n      const float ef_a = ga * 0.25f;\n      const float ef_ai = 1.0f - ef_a;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tconst float la = fabs(left_in[pos]);\n\tconst float ra = fabs(right_in[pos]);\n\tconst float lev_in = f_max(la, ra);\n        sum += lev_in * lev_in;\n\n        if (amp > env_rms) {\n          env_rms = env_rms * ga + amp * (1.0f - ga);\n        } else {\n          env_rms = env_rms * gr + amp * (1.0f - gr);\n        }\n\tround_to_zero(&env_rms);\n        if (lev_in > env_peak) {\n          env_peak = env_peak * ga + lev_in * (1.0f - ga);\n        } else {\n          env_peak = env_peak * gr + lev_in * (1.0f - gr);\n        }\n\tround_to_zero(&env_peak);\n        if ((count++ & 3) == 3) {\n          amp = rms_env_process(rms, sum * 0.25f);\n          sum = 0.0f;\n\t  if (isnan(env_rms)) {\n\t    // This can happen sometimes, but I don't know why\n\t    env_rms = 0.0f;\n\t  }\n\n          env = LIN_INTERP(rms_peak, env_rms, env_peak);\n\n\t  if (env <= knee_min) {\n            gain_t = 1.0f;\n\t  } else if (env < knee_max) {\n\t    const float x = -(threshold - knee - lin2db(env)) / knee;\n\t    gain_t = db2lin(-knee * rs * x * x * 0.25f);\n          } else {\n            gain_t = db2lin((threshold - lin2db(env)) * rs);\n          }\n        }\n        gain = gain * ef_a + gain_t * ef_ai;\n        buffer_write(left_out[pos], left_in[pos] * gain * mug);\n        buffer_write(right_out[pos], right_in[pos] * gain * mug);\n      }\n      plugin_data->sum = sum;\n      plugin_data->amp = amp;\n      plugin_data->gain = gain;\n      plugin_data->gain_t = gain_t;\n      plugin_data->env = env;\n      plugin_data->env_rms = env_rms;\n      plugin_data->env_peak = env_peak;\n      plugin_data->count = count;\n\n      *(plugin_data->amplitude) = lin2db(env);\n      *(plugin_data->gain_red) = lin2db(gain);\n    ]]></callback>\n\n    <port label=\"rms_peak\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n      <name>RMS/peak</name>\n      <p>The balance between the RMS and peak envelope followers.</p>\n      <p>RMS is generally better for subtle, musical compression and peak is better for heavier, fast compression and percussion.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"attack\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Attack time (ms)</name>\n      <p>The attack time in milliseconds.</p>\n      <range min=\"1.5\" max=\"400\"/>\n    </port>\n\n    <port label=\"release\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Release time (ms)</name>\n      <p>The release time in milliseconds.</p>\n      <range min=\"2\" max=\"800\"/>\n    </port>\n\n    <port label=\"threshold\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>Threshold level (dB)</name>\n      <p>The point at which the compressor will start to kick in.</p>\n      <range min=\"-30\" max=\"0\"/>\n    </port>\n\n    <port label=\"ratio\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Ratio (1:n)</name>\n      <p>The gain reduction ratio used when the signal level exceeds the threshold.</p>\n      <range min=\"1\" max=\"20\"/>\n    </port>\n\n    <port label=\"knee\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Knee radius (dB)</name>\n      <p>The distance from the threshold where the knee curve starts.</p>\n      <range min=\"1\" max=\"10\"/>\n    </port>\n\n    <port label=\"makeup_gain\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Makeup gain (dB)</name>\n      <p>Controls the gain of the makeup input signal in dB's.</p>\n      <range min=\"0\" max=\"+24\"/>\n    </port>\n\n    <port label=\"amplitude\" dir=\"output\" type=\"control\">\n      <name>Amplitude (dB)</name>\n      <p>The level of the input signal, in decibels.</p>\n      <range min=\"-40\" max=\"+12\"/>\n    </port>\n\n    <port label=\"gain_red\" dir=\"output\" type=\"control\">\n      <name>Gain reduction (dB)</name>\n      <p>The degree of gain reduction applied to the input signal, in decibels.</p>\n      <range min=\"-24\" max=\"0\"/>\n    </port>\n\n    <port label=\"left_in\" dir=\"input\" type=\"audio\">\n      <name>Left input</name>\n    </port>\n\n    <port label=\"right_in\" dir=\"input\" type=\"audio\">\n      <name>Right input</name>\n    </port>\n\n    <port label=\"left_out\" dir=\"output\" type=\"audio\">\n      <name>Left output</name>\n    </port>\n\n    <port label=\"right_out\" dir=\"output\" type=\"audio\">\n      <name>Right output</name>\n    </port>\n\n    <instance-data label=\"rms\" type=\"rms_env *\" />\n    <instance-data label=\"as\" type=\"float *\" />\n\n    <instance-data label=\"sum\" type=\"float\" />\n    <instance-data label=\"amp\" type=\"float\" />\n    <instance-data label=\"gain\" type=\"float\" />\n    <instance-data label=\"gain_t\" type=\"float\" />\n    <instance-data label=\"env\" type=\"float\" />\n    <instance-data label=\"env_rms\" type=\"float\" />\n    <instance-data label=\"env_peak\" type=\"float\" />\n    <instance-data label=\"count\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "sc4m_1916.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"util/db.h\"\n      #include \"util/rms.h\"\n\n      #define A_TBL 256\n    ]]></code>\n  </global>\n\n  <plugin label=\"sc4m\" id=\"1916\" class=\"CompressorPlugin\">\n    <name>SC4 mono</name>\n    <p>A mono compressor with variable envelope follower for RMS / peak behaviour. Based on the code for SC4.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      unsigned int i;\n      float sample_rate = (float)s_rate;\n\n      rms = rms_env_new();\n      sum = 0.0f;\n      amp = 0.0f;\n      gain = 0.0f;\n      gain_t = 0.0f;\n      env = 0.0f;\n      env_rms = 0.0f;\n      env_peak = 0.0f;\n      count = 0;\n\n      as = malloc(A_TBL * sizeof(float));\n      as[0] = 1.0f;\n      for (i=1; i<A_TBL; i++) {\n\tas[i] = expf(-1.0f / (sample_rate * (float)i / (float)A_TBL));\n      }\n\n      db_init();\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      rms_env_free(plugin_data->rms);\n      free(plugin_data->as);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n\n      const float ga = attack < 2.0f ? 0.0f : as[f_round(attack * 0.001f * (float)(A_TBL-1))];\n      const float gr = as[f_round(release * 0.001f * (float)(A_TBL-1))];\n      const float rs = (ratio - 1.0f) / ratio;\n      const float mug = db2lin(makeup_gain);\n      const float knee_min = db2lin(threshold - knee);\n      const float knee_max = db2lin(threshold + knee);\n      const float ef_a = ga * 0.25f;\n      const float ef_ai = 1.0f - ef_a;\n\n      for (pos = 0; pos < sample_count; pos++) {\n       \tconst float lev_in = input[pos];\n\tsum += lev_in * lev_in;\n\n        if (amp > env_rms) {\n          env_rms = env_rms * ga + amp * (1.0f - ga);\n        } else {\n          env_rms = env_rms * gr + amp * (1.0f - gr);\n        }\n\tround_to_zero(&env_rms);\n        if (lev_in > env_peak) {\n          env_peak = env_peak * ga + lev_in * (1.0f - ga);\n        } else {\n          env_peak = env_peak * gr + lev_in * (1.0f - gr);\n        }\n\tround_to_zero(&env_peak);\n        if ((count++ & 3) == 3) {\n          amp = rms_env_process(rms, sum * 0.25f);\n          sum = 0.0f;\n\n          env = LIN_INTERP(rms_peak, env_rms, env_peak);\n\n\t  if (env <= knee_min) {\n            gain_t = 1.0f;\n\t  } else if (env < knee_max) {\n\t    const float x = -(threshold - knee - lin2db(env)) / knee;\n\t    gain_t = db2lin(-knee * rs * x * x * 0.25f);\n          } else {\n            gain_t = db2lin((threshold - lin2db(env)) * rs);\n          }\n        }\n        gain = gain * ef_a + gain_t * ef_ai;\n        buffer_write(output[pos], input[pos] * gain * mug);\n      }\n      plugin_data->sum = sum;\n      plugin_data->amp = amp;\n      plugin_data->gain = gain;\n      plugin_data->gain_t = gain_t;\n      plugin_data->env = env;\n      plugin_data->env_rms = env_rms;\n      plugin_data->env_peak = env_peak;\n      plugin_data->count = count;\n\n      *(plugin_data->amplitude) = lin2db(env);\n      *(plugin_data->gain_red) = lin2db(gain);\n    ]]></callback>\n\n    <port label=\"rms_peak\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n      <name>RMS/peak</name>\n      <p>The balance between the RMS and peak envelope followers.</p>\n      <p>RMS is generally better for subtle, musical compression and peak is better for heavier, fast compression and percussion.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"attack\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Attack time (ms)</name>\n      <p>The attack time in milliseconds.</p>\n      <range min=\"1.5\" max=\"400\"/>\n    </port>\n\n    <port label=\"release\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Release time (ms)</name>\n      <p>The release time in milliseconds.</p>\n      <range min=\"2\" max=\"800\"/>\n    </port>\n\n    <port label=\"threshold\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>Threshold level (dB)</name>\n      <p>The point at which the compressor will start to kick in.</p>\n      <range min=\"-30\" max=\"0\"/>\n    </port>\n\n    <port label=\"ratio\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Ratio (1:n)</name>\n      <p>The gain reduction ratio used when the signal level exceeds the threshold.</p>\n      <range min=\"1\" max=\"20\"/>\n    </port>\n\n    <port label=\"knee\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Knee radius (dB)</name>\n      <p>The distance from the threshold where the knee curve starts.</p>\n      <range min=\"1\" max=\"10\"/>\n    </port>\n\n    <port label=\"makeup_gain\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Makeup gain (dB)</name>\n      <p>Controls the gain of the makeup input signal in dB's.</p>\n      <range min=\"0\" max=\"+24\"/>\n    </port>\n\n    <port label=\"amplitude\" dir=\"output\" type=\"control\">\n      <name>Amplitude (dB)</name>\n      <p>The level of the input signal, in decibels.</p>\n      <range min=\"-40\" max=\"+12\"/>\n    </port>\n\n    <port label=\"gain_red\" dir=\"output\" type=\"control\">\n      <name>Gain reduction (dB)</name>\n      <p>The degree of gain reduction applied to the input signal, in decibels.</p>\n      <range min=\"-24\" max=\"0\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"rms\" type=\"rms_env *\" />\n    <instance-data label=\"as\" type=\"float *\" />\n\n    <instance-data label=\"sum\" type=\"float\" />\n    <instance-data label=\"amp\" type=\"float\" />\n    <instance-data label=\"gain\" type=\"float\" />\n    <instance-data label=\"gain_t\" type=\"float\" />\n    <instance-data label=\"env\" type=\"float\" />\n    <instance-data label=\"env_rms\" type=\"float\" />\n    <instance-data label=\"env_peak\" type=\"float\" />\n    <instance-data label=\"count\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "se4_1883.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"util/db.h\"\n      #include \"util/rms.h\"\n\n      #define A_TBL 256\n    ]]></code>\n  </global>\n\n  <plugin label=\"se4\" id=\"1883\" class=\"CompressorPlugin\">\n    <name>SE4</name>\n    <p>A stereo expander with variable envelope follower for RMS / peak behaviour. Based on the code for SC1.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      unsigned int i;\n      float sample_rate = (float)s_rate;\n\n      rms = rms_env_new();\n      sum = 0.0f;\n      amp = 0.0f;\n      gain = 0.0f;\n      gain_t = 0.0f;\n      env = 0.0f;\n      env_rms = 0.0f;\n      env_peak = 0.0f;\n      count = 0;\n\n      as = malloc(A_TBL * sizeof(float));\n      as[0] = 1.0f;\n      for (i=1; i<A_TBL; i++) {\n\tas[i] = expf(-1.0f / (sample_rate * (float)i / (float)A_TBL));\n      }\n\n      db_init();\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      rms_env_free(plugin_data->rms);\n      free(plugin_data->as);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n\n      const float ga = attack < 2.0f ? 0.0f : as[f_round(attack * 0.001f * (float)(A_TBL-1))];\n      const float gr = as[f_round(release * 0.001f * (float)(A_TBL-1))];\n      const float rs = ratio / (ratio - 1.0f);\n      const float mug = db2lin(attenuation);\n      const float knee_min = db2lin(threshold - knee);\n      const float knee_max = db2lin(threshold + knee);\n      const float ef_a = ga * 0.25f;\n      const float ef_ai = 1.0f - ef_a;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tconst float la = fabs(left_in[pos]);\n\tconst float ra = fabs(right_in[pos]);\n\tconst float lev_in = f_max(la, ra);\n        sum += lev_in * lev_in;\n\n        if (amp > env_rms) {\n          env_rms = env_rms * ga + amp * (1.0f - ga);\n        } else {\n          env_rms = env_rms * gr + amp * (1.0f - gr);\n        }\n        if (lev_in > env_peak) {\n          env_peak = env_peak * ga + lev_in * (1.0f - ga);\n        } else {\n          env_peak = env_peak * gr + lev_in * (1.0f - gr);\n        }\n        if ((count++ & 3) == 3) {\n          amp = rms_env_process(rms, sum * 0.25f);\n          sum = 0.0f;\n\t  if (isnan(env_rms)) {\n\t    // This can happen sometimes, but I don't know why\n\t    env_rms = 0.0f;\n\t  }\n\n          env = LIN_INTERP(rms_peak, env_rms, env_peak);\n\n\t  if (env <= knee_min) {\n            gain_t = 1.0f;\n\t  } else if (env < knee_max) {\n\t    const float x = -(threshold - knee - lin2db(env)) / knee;\n\t    gain_t = db2lin(-knee * rs * x * x * 0.25f);\n          } else {\n            gain_t = db2lin((threshold - lin2db(env)) * rs);\n          }\n        }\n        gain = gain * ef_a + gain_t * ef_ai;\n        buffer_write(left_out[pos], left_in[pos] * gain * mug);\n        buffer_write(right_out[pos], right_in[pos] * gain * mug);\n      }\n      plugin_data->sum = sum;\n      plugin_data->amp = amp;\n      plugin_data->gain = gain;\n      plugin_data->gain_t = gain_t;\n      plugin_data->env = env;\n      plugin_data->env_rms = env_rms;\n      plugin_data->env_peak = env_peak;\n      plugin_data->count = count;\n\n      *(plugin_data->amplitude) = lin2db(env);\n      *(plugin_data->gain_exp) = lin2db(gain);\n    ]]></callback>\n\n    <port label=\"rms_peak\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n      <name>RMS/peak</name>\n      <p>The balance between the RMS and peak envelope followers.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"attack\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Attack time (ms)</name>\n      <p>The attack time in milliseconds.</p>\n      <range min=\"1.5\" max=\"400\"/>\n    </port>\n\n    <port label=\"release\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Release time (ms)</name>\n      <p>The release time in milliseconds.</p>\n      <range min=\"2\" max=\"800\"/>\n    </port>\n\n    <port label=\"threshold\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>Threshold level (dB)</name>\n      <p>The point at which the expander will start to kick in.</p>\n      <range min=\"-30\" max=\"0\"/>\n    </port>\n\n    <port label=\"ratio\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Ratio (1:n)</name>\n      <p>The gain expansion ratio used when the signal level exceeds the threshold.</p>\n      <range min=\"1\" max=\"20\"/>\n    </port>\n\n    <port label=\"knee\" dir=\"input\" type=\"control\" hint=\"default_low\">\n      <name>Knee radius (dB)</name>\n      <p>The distance from the threshold where the knee curve starts.</p>\n      <range min=\"1\" max=\"10\"/>\n    </port>\n\n    <port label=\"attenuation\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Attenuation (dB)</name>\n      <p>Controls the gain of the output signal in dB's. Used to correct for excessive amplitude caused by the extra dynamic range.</p>\n      <range min=\"-24\" max=\"0\"/>\n    </port>\n\n    <port label=\"amplitude\" dir=\"output\" type=\"control\">\n      <name>Amplitude (dB)</name>\n      <p>The level of the input signal, in decibels.</p>\n      <range min=\"-40\" max=\"+12\"/>\n    </port>\n\n    <port label=\"gain_exp\" dir=\"output\" type=\"control\">\n      <name>Gain expansion (dB)</name>\n      <p>The degree of gain expansion applied to the input signal, in decibels.</p>\n      <range min=\"0\" max=\"+24\"/>\n    </port>\n\n    <port label=\"left_in\" dir=\"input\" type=\"audio\">\n      <name>Left input</name>\n    </port>\n\n    <port label=\"right_in\" dir=\"input\" type=\"audio\">\n      <name>Right input</name>\n    </port>\n\n    <port label=\"left_out\" dir=\"output\" type=\"audio\">\n      <name>Left output</name>\n    </port>\n\n    <port label=\"right_out\" dir=\"output\" type=\"audio\">\n      <name>Right output</name>\n    </port>\n\n    <instance-data label=\"rms\" type=\"rms_env *\" />\n    <instance-data label=\"as\" type=\"float *\" />\n\n    <instance-data label=\"sum\" type=\"float\" />\n    <instance-data label=\"amp\" type=\"float\" />\n    <instance-data label=\"gain\" type=\"float\" />\n    <instance-data label=\"gain_t\" type=\"float\" />\n    <instance-data label=\"env\" type=\"float\" />\n    <instance-data label=\"env_rms\" type=\"float\" />\n    <instance-data label=\"env_peak\" type=\"float\" />\n    <instance-data label=\"count\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "shaper_1187.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t</global>\n\n\t<plugin label=\"shaper\" id=\"1187\" class=\"WaveshaperPlugin\">\n\t\t<name>Wave shaper</name>\n\t\t<p>This plugin reshapes the wave by an exponential function, inspiration was taken from the Nord module of the same name.</p>\n\t\t<p>If you are getting rubbish out then it's probably because the host isn't using the input/output range hints, which are very important for this plugin.</p>\n\n\t\t<callback event=\"run\"><![CDATA[\nint pos;\nfloat shape = 0.0f;\n\nif (shapep < 1.0f && shapep > -1.0f) {\n\tshape = 1.0f;\n} else if (shapep < 0) {\n\tshape = -1.0f / shapep;\n} else {\n\tshape = shapep;\n}\n\nfor (pos = 0; pos < sample_count; pos++) {\n\tif (input[pos] < 0.0f) {\n\t\tbuffer_write(output[pos], -pow(-input[pos], shape));\n\t} else {\n\t\tbuffer_write(output[pos], pow(input[pos], shape));\n\t}\n}\n\t\t]]></callback>\n\n\t\t<port label=\"shapep\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Waveshape</name>\n\t\t\t<p>Positive values have an expanding effect, and negative values have a compressing effect.</p>\n\t\t\t<range min=\"-10\" max=\"+10\"/>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "sifter_1210.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <code><![CDATA[\n#include \"ladspa-util.h\"\n\n#define MAX_BSIZE 1000\n\nint partition(LADSPA_Data array[], int left, int right);\n\nvoid q_sort(LADSPA_Data array[], int left, int right) {\n\tfloat pivot = partition(array, left, right);\n\n\tif (left < pivot) {\n\t\tq_sort(array, left, pivot-1);\n\t}\n\tif (right > pivot) {\n\t\tq_sort(array, pivot+1, right);\n\t}\n}\n\nint partition(LADSPA_Data array[], int left, int right) {\n\tfloat pivot = array[left];\n\n\twhile (left < right) {\n\t\twhile (array[right] >= pivot && left < right) {\n\t\t\tright--;\n\t\t}\n\t\tif (left != right) {\n\t\t\tarray[left] = array[right];\n\t\t\tleft++;\n\t\t}\n\t\twhile (array[left] <= pivot && left < right) {\n\t\t\tleft++;\n\t\t}\n\t\tif (left != right) {\n\t\t\tarray[right] = array[left];\n\t\t\tright--;\n\t\t}\n\t}\n\tarray[left] = pivot;\n\n\treturn left;\n}\n    ]]></code>\n  </global>\n\n  <plugin label=\"sifter\" id=\"1210\" class=\"TimePlugin,DistortionPlugin\">\n    <name>Signal sifter</name>\n    <p>Sorts and mixes blocks of the input signal to give a \"bumpy ramp\" effect.</p>\n    <p>Certain types of input will produce silence on the output (mostly ones with only low frequency components).</p>\n    <p>This is a very odd effect, and doesn't really have any music applications, but can produce some interesting noises.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      long i;\n      float scla = (float)MAX_BSIZE * 0.5f;\n      float sclb = (float)MAX_BSIZE;\n\n      b1 = (LADSPA_Data *)calloc(MAX_BSIZE, sizeof(LADSPA_Data));\n      b2 = (LADSPA_Data *)calloc(MAX_BSIZE, sizeof(LADSPA_Data));\n      ob = (LADSPA_Data *)calloc(MAX_BSIZE, sizeof(LADSPA_Data));\n      rc = (LADSPA_Data *)calloc(MAX_BSIZE, sizeof(LADSPA_Data));\n\n      // Calculate raised cosine table, to build windowing function from\n      rc[0] = cos(((0.0f - scla) / sclb) * M_PI);\n      rc[0] *= rc[0];\n      for (i=1; i<MAX_BSIZE / 2; i++) {\n        rc[i] = cos((((float)i - scla) / sclb) * M_PI);\n        rc[i] *= rc[i];\n        rc[MAX_BSIZE - i] = rc[i];\n      }\n      rc[MAX_BSIZE / 2] = 1.0f;\n\n      b1ptr = 0;\n      b2ptr = 0;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      b1ptr = 0;\n      b2ptr = 0;\n      memset(b1, 0, MAX_BSIZE * sizeof(LADSPA_Data));\n      memset(b2, 0, MAX_BSIZE * sizeof(LADSPA_Data));\n      memset(ob, 0, MAX_BSIZE * sizeof(LADSPA_Data));\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->b1);\n      free(plugin_data->b2);\n      free(plugin_data->ob);\n      free(plugin_data->rc);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\nunsigned long pos, i;\nlong bsize = f_round(LIMIT(size, 1, MAX_BSIZE));\n\nfor (pos = 0; pos < sample_count; pos++) {\n\tif (b1ptr >= bsize) {\n\t\tfloat wstep = (float)MAX_BSIZE / (float)b1ptr, wpos = 0.0f;\n\n\t\tq_sort(b1, 0, b1ptr);\n\t\tfor (i=0; i<b1ptr; i++) {\n\t\t\tob[i] += b1[i] * rc[f_round(wpos)];\n\t\t\twpos += wstep;\n\t\t}\n\t\tb1ptr = 0;\n\t\tb2ptr = (bsize+1) / 2;\n\t}\n\n\tif (b2ptr >= bsize) {\n\t\tfloat wstep = (float)MAX_BSIZE / (float)b2ptr, wpos = 0.0f;\n\t\tint offset = (b2ptr+1)/2;\n\n\t\tq_sort(b2, 0, b2ptr);\n\t\tfor (i=0; i<offset; i++) {\n\t\t\tob[i + offset] += b2[i] * rc[f_round(wpos)];\n\t\t\twpos += wstep;\n\t\t}\n\t\tfor (; i<b2ptr; i++) {\n\t\t\tob[i - offset] += b2[i] * rc[f_round(wpos)];\n\t\t\twpos += wstep;\n\t\t}\n\t\tb2ptr = 0;\n\t}\n\n\tif (bsize < 2) {\n\t\tob[b1ptr] = input[pos];\n\t}\n\n\tb1[b1ptr] = input[pos];\n\tb2[b2ptr] = input[pos];\n\tbuffer_write(output[pos], ob[b1ptr]);\n\tob[b1ptr] = 0.0f;\n\tb1ptr++;\n\tb2ptr++;\n}\n\nplugin_data->b1ptr = b1ptr;\nplugin_data->b2ptr = b2ptr;\n    ]]></callback>\n\n    <port label=\"size\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Sift size</name>\n      <range min=\"1\" max=\"MAX_BSIZE\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"b1ptr\" type=\"long\"/>\n    <instance-data label=\"b2ptr\" type=\"long\"/>\n    <instance-data label=\"b1\" type=\"LADSPA_Data *\"/>\n    <instance-data label=\"b2\" type=\"LADSPA_Data *\"/>\n    <instance-data label=\"ob\" type=\"LADSPA_Data *\"/>\n    <instance-data label=\"rc\" type=\"LADSPA_Data *\"/>\n\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "sin_cos_1881.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"ladspa-util.h\"\n    </code>\n  </global>\n\n  <plugin label=\"sinCos\" id=\"1881\" class=\"OscillatorPlugin\">\n    <name>Sine + cosine oscillator</name>\n    <p>This is a simple oscillator that outputs sinewaves with a 90 degree phase shift between them.</p>\n    <p>The current implementation is very inefficient, but I will improve it later.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      fs = (float)s_rate;\n      phi = 0.0;\n      last_om = 0.0;\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      const double target_om = 2.0 * M_PI * f_clamp(freq, 0.0f, 0.5f) * pow(2.0, f_clamp(pitch, 0.0f, 16.0f)) / fs;\n      const double om_d = (target_om - last_om) / (double)sample_count;\n      double om = last_om;\n\n      for (pos = 0; pos < sample_count; pos++) {\n        buffer_write(sine[pos], sin(phi));\n        buffer_write(cosine[pos], cos(phi));\n\tom += om_d;\n\tphi += om;\n      }\n      while (phi > 2.0 * M_PI) {\n\tphi -= 2.0 * M_PI;\n      }\n\n      plugin_data->phi = phi;\n      plugin_data->last_om = target_om;\n    ]]></callback>\n\n    <port label=\"freq\" dir=\"input\" type=\"control\" hint=\"default_440,sample_rate,logarithmic\">\n      <name>Base frequency (Hz)</name>\n      <p>The base frequency of the output waves.</p>\n     <range min=\"0.000001\" max=\"0.5\"/>\n    </port>\n\n    <port label=\"pitch\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Pitch offset</name>\n      <p>The pitch offset of the output waves. Final oscillator frequency is $base + 2\\^pitch$.</p>\n     <range min=\"0\" max=\"8\"/>\n    </port>\n\n    <port label=\"sine\" dir=\"output\" type=\"audio\">\n      <name>Sine output</name>\n    </port>\n\n    <port label=\"cosine\" dir=\"output\" type=\"audio\">\n      <name>Cosine output</name>\n    </port>\n\n    <instance-data label=\"phi\" type=\"double\" />\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"last_om\" type=\"double\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "single_para_1203.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"util/biquad.h\"\n    </code>\n  </global>\n\n  <plugin label=\"singlePara\" id=\"1203\" class=\"ParaEQPlugin\">\n    <name>Single band parametric</name>\n    <p>A single band of a parametric filter.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      fs = (float)s_rate;\n      filter = malloc(sizeof(biquad));\n      biquad_init(filter);\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      biquad_init(filter);\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->filter);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n\n      eq_set_params(filter, fc, gain, bw, fs);\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tbuffer_write(output[pos], biquad_run(filter, input[pos]));\n      }\n    ]]></callback>\n\n    <port label=\"gain\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Gain (dB)</name>\n      <p>The attenuation/gain of the eq.</p>\n      <range min=\"-70\" max=\"+30\"/>\n    </port>\n\n    <port label=\"fc\" dir=\"input\" type=\"control\" hint=\"sample_rate,default_440\">\n      <name>Frequency (Hz)</name>\n      <p>The centre frequency (ie. point of most/least attenuation).</p>\n      <p>Beware of high values for Frequency and Bandwidth, if the high pitch (Frequency * 2$^{Bandwidth}$) goes over half the sample rate you will get aliasing.</p>\n      <p>Note: if your host offers you a frequency range between 0 and 0.4 then it's not rendering the input parameter correctly, the input frequency will actually be that number multiplied by the sample rate (e.g. 44.1kHz).</p>\n      <range min=\"0\" max=\"0.4\"/>\n    </port>\n\n    <port label=\"bw\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Bandwidth (octaves)</name>\n      <p>The pitch difference from the centre before the attenuation has reached half the gain.</p>\n      <range min=\"0\" max=\"4\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n      <range min=\"-1.0\" max=\"+1.0\"/>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n      <range min=\"-1.0\" max=\"+1.0\"/>\n    </port>\n\n    <instance-data label=\"fs\" type=\"float\"/>\n    <instance-data label=\"filter\" type=\"biquad *\"/>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "sinus_wavewrapper_1198.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t</global>\n\n\t<plugin label=\"sinusWavewrapper\" id=\"1198\" class=\"WaveshaperPlugin\">\n\t\t<name>Sinus wavewrapper</name>\n                <p>Produces an unusual distortion effect, for a more amp like tone, see the valve saturation plugin (section \\ref{valve}).</p>\n\n\t\t<callback event=\"run\"><![CDATA[\n\t\t\tfloat coef = wrap * M_PI;\n\t\t\tunsigned long pos;\n\n\t\t\tif (coef < 0.05f) {\n\t\t\t\tcoef = 0.05f;\n\t\t\t}\n\n\t\t\tfor (pos = 0; pos < sample_count; pos++) {\n\t\t\t\tbuffer_write(output[pos], sin(input[pos] * coef));\n\t\t\t}\n\t\t]]></callback>\n\n\t\t<port label=\"wrap\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Wrap degree</name>\n\t\t\t<range min=\"0\" max=\"10\"/>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "smooth_decimate_1414.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"ladspa-util.h\"\n    </code>\n  </global>\n\n  <plugin label=\"smoothDecimate\" id=\"1414\" class=\"DistortionPlugin\">\n    <name>Smooth Decimator</name>\n\n    <callback event=\"instantiate\"><![CDATA[\n      buffer = calloc(8, sizeof(float));\n      buffer_pos = 0;\n      accum = 0.0f;\n      fs = (float)s_rate;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      buffer_pos = 0;\n      accum = 0.0f;\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float smoothed;\n      float inc = (rate / fs);\n      inc = f_clamp(inc, 0.0f, 1.0f);\n\n      for (pos = 0; pos < sample_count; pos++) {\n\taccum += inc;\n\tif (accum >= 1.0f) {\n\t  accum -= 1.0f;\n\t  buffer_pos = (buffer_pos + 1) & 7;\n\t  buffer[buffer_pos] = input[pos];\n\t}\n\tsmoothed = cube_interp(accum, buffer[(buffer_pos - 3) & 7],\n                                      buffer[(buffer_pos - 2) & 7],\n                                      buffer[(buffer_pos - 1) & 7],\n                                      buffer[buffer_pos]);\n\tbuffer_write(output[pos], LIN_INTERP(smooth, buffer[(buffer_pos - 3) & 7], smoothed));\n      }\n\n      plugin_data->accum = accum;\n      plugin_data->buffer_pos = buffer_pos;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer);\n    ]]></callback>\n\n    <port label=\"rate\" dir=\"input\" type=\"control\" hint=\"sample_rate,default_maximum\">\n      <name>Resample rate</name>\n      <p>The rate at which the output signal will be resampled</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"smooth\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>Smoothing</name>\n      <p>The amount of smoothing on the output signal.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"accum\" type=\"float\" />\n    <instance-data label=\"buffer\" type=\"float *\" />\n    <instance-data label=\"buffer_pos\" type=\"int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "split_1406.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Frank Neumann &lt;franky@users.sourceforge.net&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t</global>\n\n\t<plugin label=\"split\" id=\"1406\" class=\"UtilityPlugin\">\n\t\t<name>Mono to Stereo splitter</name>\n\t\t<p>Takes a mono input signal, and outputs it to both left and right channel, thus \\\"stereophizing\" it.</p>\n\n\t\t<callback event=\"run\">\n\t\t\tunsigned long pos;\n\n\t\t\tfor (pos = 0; pos &lt; sample_count; pos++) {\n\t\t\t\tconst LADSPA_Data in = input[pos];\n\n\t\t\t\tbuffer_write(out1[pos], in);\n\t\t\t\tbuffer_write(out2[pos], in);\n\t\t\t}\n\t\t</callback>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\n\t\t<port label=\"out2\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output 1</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\n\t\t<port label=\"out1\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output 2</name>\n\t\t\t<range min=\"-1\" max=\"+1\"/>\n\t\t</port>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "step_muxer_1212.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #define FADE_IN  1\n      #define STABLE   2\n      #define FADE_OUT 3\n    ]]></code>\n  </global>\n\n  <plugin label=\"stepMuxer\" id=\"1212\" class=\"UtilityPlugin\">\n    <name>Step Demuxer</name>\n    <p>Inputs up to 8 signals and switches between them on the output when the signal on the clock input goes high.</p>\n    <p>This plugin is untested, and may not work.</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      sample_rate = s_rate;\n      ch_state = malloc(sizeof(int) * 8);\n      ch_gain = malloc(sizeof(float) * 8);\n      current_ch = 0;\n      last_clock = 0.0f;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      int i;\n\n      ch_state[0] = STABLE;\n      ch_gain[0] = 1.0f;\n      for (i = 1; i < 8; i++) {\n        ch_state[i] = STABLE;\n        ch_gain[i] = 0.0f;\n      }\n      current_ch = 0;\n      last_clock = 0.0f;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->ch_state);\n      free(plugin_data->ch_gain);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float fade_inc = 1.0f / (xfadet * sample_rate * 1000.0f);\n      float accum;\n      int ch;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\n\t// Calculate output value for this sample\n        accum = 0.0f;\n        accum += input0[pos] * ch_gain[0];\n        accum += input1[pos] * ch_gain[1];\n        accum += input2[pos] * ch_gain[2];\n        accum += input3[pos] * ch_gain[3];\n        accum += input4[pos] * ch_gain[4];\n        accum += input5[pos] * ch_gain[5];\n        accum += input6[pos] * ch_gain[6];\n        accum += input7[pos] * ch_gain[7];\n        buffer_write(output[pos], accum);\n\n\t// Run crossfades\n        for (ch = 0; ch < 8; ch++) {\n\n          // Channel is still being faded in\n\t  if (ch_state[ch] == FADE_IN) {\n\t    ch_gain[ch] += fade_inc;\n            if (ch_gain[ch] >= 1.0f) {\n              ch_gain[ch] = 1.0f;\n              ch_state[ch] = STABLE;\n            }\n\n          // Channel is still being faded out\n          } else if (ch_state[ch] == FADE_OUT) {\n\t    ch_gain[ch] -= fade_inc;\n            if (ch_gain[ch] <= 0.0f) {\n              ch_gain[ch] = 0.0f;\n              ch_state[ch] = STABLE;\n            }\n\t  }\n        }\n\n\t// Check for clock signal\n\tif (last_clock <= 0.0f && clock[pos] > 0.0f) {\n\t  ch_state[current_ch] = FADE_OUT;\n\t  current_ch = (current_ch + 1) % 8;\n\t  ch_state[current_ch] = FADE_IN;\n        }\n      }\n\n      // Save state data\n      plugin_data->current_ch = current_ch;\n      plugin_data->last_clock = last_clock;\n    ]]></callback>\n\n    <port label=\"xfadet\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Crossfade time (in ms)</name>\n      <range min=\"0\" max=\"100\"/>\n    </port>\n\n    <port label=\"clock\" dir=\"input\" type=\"audio\">\n      <name>Clock</name>\n    </port>\n\n    <port label=\"input0\" dir=\"input\" type=\"audio\">\n      <name>Input 1</name>\n    </port>\n\n    <port label=\"input1\" dir=\"input\" type=\"audio\">\n      <name>Input 2</name>\n    </port>\n\n    <port label=\"input2\" dir=\"input\" type=\"audio\">\n      <name>Input 3</name>\n    </port>\n\n    <port label=\"input3\" dir=\"input\" type=\"audio\">\n      <name>Input 4</name>\n    </port>\n\n    <port label=\"input4\" dir=\"input\" type=\"audio\">\n      <name>Input 5</name>\n    </port>\n\n    <port label=\"input5\" dir=\"input\" type=\"audio\">\n      <name>Input 6</name>\n    </port>\n\n    <port label=\"input6\" dir=\"input\" type=\"audio\">\n      <name>Input 7</name>\n    </port>\n\n    <port label=\"input7\" dir=\"input\" type=\"audio\">\n      <name>Input 8</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"sample_rate\" type=\"float\"/>\n    <instance-data label=\"current_ch\" type=\"int\"/>\n    <instance-data label=\"last_clock\" type=\"LADSPA_Data\"/>\n    <instance-data label=\"ch_state\" type=\"int *\"/>\n    <instance-data label=\"ch_gain\" type=\"float *\"/>\n\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "surround_encoder_1401.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"ladspa-util.h\"\n\n#define D_SIZE 256\n#define NZEROS 200\n\n/* The non-zero taps of the Hilbert transformer */\nstatic float xcoeffs[] = {\n     +0.0008103736f, +0.0008457886f, +0.0009017196f, +0.0009793364f,\n     +0.0010798341f, +0.0012044365f, +0.0013544008f, +0.0015310235f,\n     +0.0017356466f, +0.0019696659f, +0.0022345404f, +0.0025318040f,\n     +0.0028630784f, +0.0032300896f, +0.0036346867f, +0.0040788644f,\n     +0.0045647903f, +0.0050948365f, +0.0056716186f, +0.0062980419f,\n     +0.0069773575f, +0.0077132300f, +0.0085098208f, +0.0093718901f,\n     +0.0103049226f, +0.0113152847f, +0.0124104218f, +0.0135991079f,\n     +0.0148917649f, +0.0163008758f, +0.0178415242f, +0.0195321089f,\n     +0.0213953037f, +0.0234593652f, +0.0257599469f, +0.0283426636f,\n     +0.0312667947f, +0.0346107648f, +0.0384804823f, +0.0430224431f,\n     +0.0484451086f, +0.0550553725f, +0.0633242001f, +0.0740128560f,\n     +0.0884368322f, +0.1090816773f, +0.1412745301f, +0.1988673273f,\n     +0.3326528346f, +0.9997730178f, -0.9997730178f, -0.3326528346f,\n     -0.1988673273f, -0.1412745301f, -0.1090816773f, -0.0884368322f,\n     -0.0740128560f, -0.0633242001f, -0.0550553725f, -0.0484451086f,\n     -0.0430224431f, -0.0384804823f, -0.0346107648f, -0.0312667947f,\n     -0.0283426636f, -0.0257599469f, -0.0234593652f, -0.0213953037f,\n     -0.0195321089f, -0.0178415242f, -0.0163008758f, -0.0148917649f,\n     -0.0135991079f, -0.0124104218f, -0.0113152847f, -0.0103049226f,\n     -0.0093718901f, -0.0085098208f, -0.0077132300f, -0.0069773575f,\n     -0.0062980419f, -0.0056716186f, -0.0050948365f, -0.0045647903f,\n     -0.0040788644f, -0.0036346867f, -0.0032300896f, -0.0028630784f,\n     -0.0025318040f, -0.0022345404f, -0.0019696659f, -0.0017356466f,\n     -0.0015310235f, -0.0013544008f, -0.0012044365f, -0.0010798341f,\n     -0.0009793364f, -0.0009017196f, -0.0008457886f, -0.0008103736f,\n};\n\n    ]]></code>\n  </global>\n\n  <plugin label=\"surroundEncoder\" id=\"1401\" class=\"UtilityPlugin\">\n    <name>Surround matrix encoder</name>\n    <p>I haven't been able to test this plugin, so there may be bugs. I have successfully tested the algorithm, but the implementation is suspect.</p>\n    <p>\\subsubsection{What does it do?}</p>\n    <p>It allows you to encode four channels of sound into a stereo compatible stream that will be decoded by a Dolby\\footnote{\"Dolby\" is a trademark of Dolby Laboratories.} Surround/Pro-Logic decoder into Left, Right, Center and Surround signals.</p>\n    <p>This is not a proper implementation of Pro-logic, there is no Dolby B processing done on the surround channel, which would help, but would be using Dolby intellectual property.</p>\n    <p>\\subsubsection{Caveats}</p>\n    <p>Obviously you can't wedge four channels into two without loss, so something has to give. You will probably notice significant cross-talk between the channels, but the decoder should do cross-talk correction, which will help a lot. A side effect of this is that it will make left-right panning unusual, the sources will dwell near the left and right speakers and zip across the centre channel. Because of this it is only really possible to master surround recordings through a pre-logic decoder. Do not attempt to use a conventional 5 point surround multichannel setup, it behaves very differently.</p>\n    <p>In addition to this, output from this process is not entirely mono compatible, in mono output the L, C and R will be preserved as per a stereo recording (centre will be mixed equally), but the surround channel will be totally lost.</p>\n    <p>Careful gain control on the output is required, as the level of the output will be greater than the L and R inputs, but different to the sum amplitude of the input signals.</p>\n    <p>Widely panned reverb fed to the L and R channels will often leak into the S channel, if this is not desired (often it is) reduce the width of the stereo image.</p>\n    <p>The encoding will survive some processes (eg. copying to CD, MD etc.), but may not survive conversion to MP3 or recording to tape with azimuth errors.</p>\n    <p>\\subsubsection{Legalese}</p>\n    <p>This is a four channel matrix encoder, it happens to be compatible with Dolby Surround Pro-Logic.</p>\n    <p>This implementation does not convey a license nor imply a right under any patent, or any other industrial or intellectual property right of Dolby Laboratories.</p>\n\n    <callback event=\"instantiate\">\n      buffer_size = (int)(0.0072f * s_rate);\n      buffer_pos = 0;\n      buffer = calloc(buffer_size, sizeof(LADSPA_Data));\n      \n      delay = calloc(D_SIZE, sizeof(LADSPA_Data));\n\n      dptr = 0;\n    </callback>\n\n    <callback event=\"activate\">\n      memset(buffer, 0, buffer_size * sizeof(LADSPA_Data));\n    </callback>\n\n    <callback event=\"cleanup\">\n      free(plugin_data->buffer);\n      \n      free(plugin_data->delay);\n    </callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      LADSPA_Data s_delayed;\n      unsigned int i;\n      float hilb;\n\n      for (pos = 0; pos < sample_count; pos++) {\n        delay[dptr] = s[pos];\n\thilb = 0.0f;\n\tfor (i = 0; i < NZEROS/2; i++) {\n\t  hilb += (xcoeffs[i] * delay[(dptr - i*2) & (D_SIZE - 1)]);\n\t}\n\tdptr = (dptr + 1) & (D_SIZE - 1);\n      \n      \n        s_delayed = buffer[buffer_pos];\n\tbuffer[buffer_pos++] = hilb;\n\tbuffer_pos %= buffer_size;\n\n        buffer_write(lt[pos], l[pos] + c[pos] * 0.707946f -\n                     s_delayed * 0.707946f);\n        buffer_write(rt[pos], r[pos] + c[pos] * 0.707946f +\n                     s_delayed * 0.707946f);\n      }\n      \n      plugin_data->dptr = dptr;\n\n      plugin_data->buffer_pos = buffer_pos;\n    ]]></callback>\n\n    <port label=\"l\" dir=\"input\" type=\"audio\">\n      <name>L</name>\n      <p>Left channel input. Can be treated as per normal stereo recoding, except that the speaker should be at -22.5$^\\circ$, rather than the normal stereo -30$^\\circ$.</p>\n    </port>\n\n    <port label=\"r\" dir=\"input\" type=\"audio\">\n      <name>R</name>\n      <p>Right channel input. As per left channel.</p>\n    </port>\n\n    <port label=\"c\" dir=\"input\" type=\"audio\">\n      <name>C</name>\n      <p>Center channel input. Will be directly in front of the listener, stereo and mono compatible.</p>\n    </port>\n\n    <port label=\"s\" dir=\"input\" type=\"audio\">\n      <name>S</name>\n      <p>Surround channel. Should sound from the rear speakers, may also leak into the left and right. Has slight delay and bandwidth reduction (cut below 100 Hz, and above 7 KHz) for leakage and noise reduction and enhanced psychoacoustic effects.</p>\n\n      <p>Not mono compatible.</p>\n    </port>\n\n    <port label=\"lt\" dir=\"output\" type=\"audio\">\n      <name>Lt</name>\n    </port>\n\n    <port label=\"rt\" dir=\"output\" type=\"audio\">\n      <name>Rt</name>\n    </port>\n\n    <instance-data label=\"buffer_size\" type=\"unsigned int\" />\n    <instance-data label=\"buffer_pos\" type=\"unsigned int\" />\n    <instance-data label=\"buffer\" type=\"LADSPA_Data *\" />\n    \n    <instance-data label=\"delay\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"dptr\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "svf_1214.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n\t\t<code><![CDATA[\n#include \"ladspa-util.h\"\n\n// Constants to match filter types\n#define F_LP 1\n#define F_HP 2\n#define F_BP 3\n#define F_BR 4\n#define F_AP 5\n\n// Number of filter oversamples\n#define F_R 3\n\n/* Structure to hold parameters for SV filter */\n\ntypedef struct {\n\tfloat f;     // 2.0*sin(PI*fs/(fc*r));\n\tfloat q;     // 2.0*cos(pow(q, 0.1)*PI*0.5);\n\tfloat qnrm;  // sqrt(m/2.0f+0.01f);\n\tfloat h;     // high pass output\n\tfloat b;     // band pass output\n\tfloat l;     // low pass output\n\tfloat p;     // peaking output (allpass with resonance)\n\tfloat n;     // notch output\n\tfloat *op;   // pointer to output value\n} sv_filter;\n\n/* Store data in SVF struct, takes the sampling frequency, cutoff frequency\n   and Q, and fills in the structure passed */\n\nstatic inline void setup_svf(sv_filter *sv, float fs, float fc, float q, int t) {\n\tsv->f = 2.0f * sin(M_PI * fc / (float)(fs * F_R));\n\tsv->q = 2.0f * cos(pow(q, 0.1f) * M_PI * 0.5f);\n\tsv->qnrm = sqrt(sv->q/2.0+0.01);\n\tswitch(t) {\n\tcase F_LP:\n\t\tsv->op = &(sv->l);\n\t\tbreak;\n\tcase F_HP:\n\t\tsv->op = &(sv->h);\n\t\tbreak;\n\tcase F_BP:\n\t\tsv->op = &(sv->b);\n\t\tbreak;\n\tcase F_BR:\n\t\tsv->op = &(sv->n);\n\t\tbreak;\n\tdefault:\n\t\tsv->op = &(sv->p);\n\t}\n}\n\n/* Run one sample through the SV filter. Filter is by andy@vellocet */\n\nstatic inline float run_svf(sv_filter *sv, float in) {\n\tfloat out;\n\tint i;\n\n\tin = sv->qnrm * in ;\n\tfor (i=0; i < F_R; i++) {\n\t\t// very slight waveshape for extra stability\n\t\tsv->b = flush_to_zero(sv->b - sv->b * sv->b * sv->b * 0.001f);\n\n\t\t// regular state variable code here\n\t\t// the notch and peaking outputs are optional\n\t\tsv->h = flush_to_zero(in - sv->l - sv->q * sv->b);\n\t\tsv->b = sv->b + sv->f * sv->h;\n\t\tsv->l = flush_to_zero(sv->l + sv->f * sv->b);\n\t\tsv->n = sv->l + sv->h;\n\t\tsv->p = sv->l - sv->h;\n\n\t\tout = *(sv->op);\n\t\tin = out;\n\t}\n\n\treturn out;\n}\n\t\t]]></code>\n\t</global>\n\n\t<plugin label=\"svf\" id=\"1214\" class=\"FilterPlugin\">\n\t\t<name>State Variable Filter</name>\n\t\t<p>An oversampled state variable filter with a few tweaks.</p>\n\t\t<p>Quite a nice State Variable Filter, tends to be unstable with high resonance and Q values, but good when kept under control.</p>\n\t\t<callback event=\"instantiate\">\nsample_rate = s_rate;\n\nsvf = calloc(1, sizeof(sv_filter));\n\t\t</callback>\n\n\t\t<callback event=\"activate\">\nsetup_svf(svf, 0, 0, 0, 0);\n\t\t</callback>\n\n\t\t<callback event=\"cleanup\">\nfree(plugin_data->svf);\n\t\t</callback>\n\n\t\t<callback event=\"run\"><![CDATA[\nlong int pos;\n\nsetup_svf(svf, sample_rate, filt_freq, filt_q, f_round(filt_type));\n\nfor (pos = 0; pos < sample_count; pos++) {\n\tbuffer_write(output[pos], run_svf(svf, input[pos] + (svf->b * filt_res)));\n}\n\t\t]]></callback>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t\t<range min=\"-1\" max=\"1\"/>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t\t<range min=\"-1\" max=\"1\"/>\n\t\t</port>\n\n\t\t<port label=\"filt_type\" dir=\"input\" type=\"control\" hint=\"integer,default_0\">\n\t\t\t<name>Filter type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)</name>\n\t\t\t<range min=\"0\" max=\"5\"/>\n\t\t\t<p>Select between no filtering, low-pass, high-pass, band-pass, band-reject and all-pass.</p>\n\t\t</port>\n\n\t\t<port label=\"filt_freq\" dir=\"input\" type=\"control\" hint=\"default_440\">\n\t\t\t<name>Filter freq</name>\n\t\t\t<range min=\"0\" max=\"6000\"/>\n\t\t\t<p>Cutoff frequency, beware of high values with low sample rates.</p>\n\t\t</port>\n\n\t\t<port label=\"filt_q\" dir=\"input\" type=\"control\" hint=\"default_low\">\n\t\t\t<name>Filter Q</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t\t<p>The filters Q, or cutoff slope.</p>\n\t\t</port>\n\n\t\t<port label=\"filt_res\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Filter resonance</name>\n\t\t\t<range min=\"0\" max=\"1\"/>\n\t\t\t<p>The filter's resonance, sort of separate from Q but very related (implemented with feedback).</p>\n\t\t\t<p>Do not use with the bandpass mode.</p>\n\t\t</port>\n\n\t\t<instance-data label=\"sample_rate\" type=\"int\"/>\n\t\t<instance-data label=\"svf\" type=\"sv_filter *\"/>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "tape_delay_1211.xml",
    "content": "<?xml version=\"1.0\" ?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\" ?>\n<ladspa>\n\t<global>\n\t\t<meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n\t\t<meta name=\"copyright\" value=\"GPL\"/>\n\t\t<code><![CDATA[\n#include \"ladspa-util.h\"\n\n#define BASE_BUFFER 8 // Tape length (inches)\n\t\t]]></code>\n\t</global>\n\n\t<plugin label=\"tapeDelay\" id=\"1211\" class=\"DelayPlugin,SimulatorPlugin\">\n\t\t<name>Tape Delay Simulation</name>\n                <p>Correctly models the tape motion and some of the smear effect, there is no simulation for the head saturation yet, as I don't have a good model of it. When I get one I will add it.</p>\n                <p>The way the tape accelerates and decelerates gives a nicer delay effect for many purposes.</p>\n\n\t\t<callback event=\"instantiate\"><![CDATA[\n\t\t\tunsigned int mbs = BASE_BUFFER * s_rate;\n\t\t\tsample_rate = s_rate;\n\t\t\tfor (buffer_size = 4096; buffer_size < mbs;\n\t\t\t     buffer_size *= 2);\n\t\t\tbuffer = malloc(buffer_size * sizeof(LADSPA_Data));\n\t\t\tbuffer_mask = buffer_size - 1;\n\t\t\tphase = 0;\n\t\t\tlast_phase = 0;\n\t\t\tlast_in = 0.0f;\n\t\t\tlast2_in = 0.0f;\n\t\t\tlast3_in = 0.0f;\n\t\t\tz0 = 0.0f;\n\t\t\tz1 = 0.0f;\n\t\t\tz2 = 0.0f;\n\t\t]]></callback>\n\n\t\t<callback event=\"activate\">\n\t\t\tint i;\n\n\t\t\tfor (i = 0; i &lt; buffer_size; i++) {\n\t\t\t\tbuffer[i] = 0;\n\t\t\t}\n\t\t\tphase = 0;\n\t\t\tlast_phase = 0;\n\t\t\tlast_in = 0.0f;\n\t\t\tlast2_in = 0.0f;\n\t\t\tlast3_in = 0.0f;\n\t\t\tz0 = 0.0f;\n\t\t\tz1 = 0.0f;\n\t\t\tz2 = 0.0f;\n\t\t</callback>\n\n\t\t<callback event=\"cleanup\"><![CDATA[\n\t\t\tfree(plugin_data->buffer);\n\t\t]]></callback>\n\n\t\t<callback event=\"run\"><![CDATA[\nunsigned int pos;\nfloat increment = f_clamp(speed, 0.0f, 40.0f);\nfloat lin_int, lin_inc;\nunsigned int track;\nunsigned int fph;\nLADSPA_Data out;\n\nconst float da = DB_CO(da_db);\nconst float t1a = DB_CO(t1a_db);\nconst float t2a = DB_CO(t2a_db);\nconst float t3a = DB_CO(t3a_db);\nconst float t4a = DB_CO(t4a_db);\nconst unsigned int t1d_s = f_round(t1d * sample_rate);\nconst unsigned int t2d_s = f_round(t2d * sample_rate);\nconst unsigned int t3d_s = f_round(t3d * sample_rate);\nconst unsigned int t4d_s = f_round(t4d * sample_rate);\n\nfor (pos = 0; pos < sample_count; pos++) {\n\tfph = f_trunc(phase);\n\tlast_phase = fph;\n\tlin_int = phase - (float)fph;\n\n\tout = buffer[(unsigned int)(fph - t1d_s) & buffer_mask] * t1a;\n\tout += buffer[(unsigned int)(fph - t2d_s) & buffer_mask] * t2a;\n\tout += buffer[(unsigned int)(fph - t3d_s) & buffer_mask] * t3a;\n\tout += buffer[(unsigned int)(fph - t4d_s) & buffer_mask] * t4a;\n\n\tphase += increment;\n\tlin_inc = 1.0f / (floor(phase) - last_phase + 1);\n\tlin_inc = lin_inc > 1.0f ? 1.0f : lin_inc;\n\tlin_int = 0.0f;\n\tfor (track = last_phase; track < phase; track++) {\n\t\tlin_int += lin_inc;\n\t\tbuffer[track & buffer_mask] =\n\t\t cube_interp(lin_int, last3_in, last2_in, last_in, input[pos]);\n\t}\n\tlast3_in = last2_in;\n\tlast2_in = last_in;\n\tlast_in = input[pos];\n\tout += input[pos] * da;\n\tbuffer_write(output[pos], out);\n\tif (phase >= buffer_size) {\n\t\tphase -= buffer_size;\n\t}\n}\n\n// Store current phase in instance\nplugin_data->phase = phase;\nplugin_data->last_phase = last_phase;\nplugin_data->last_in = last_in;\nplugin_data->last2_in = last2_in;\nplugin_data->last3_in = last3_in;\nplugin_data->z0 = z0;\nplugin_data->z1 = z1;\nplugin_data->z2 = z2;\n\t\t]]></callback>\n\n\t\t<port label=\"speed\" dir=\"input\" type=\"control\" hint=\"default_1\">\n\t\t\t<name>Tape speed (inches/sec, 1=normal)</name>\n\t\t\t<range min=\"0\" max=\"10\"/>\n\t\t</port>\n\n\t\t<port label=\"da_db\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n\t\t\t<name>Dry level (dB)</name>\n\t\t\t<range min=\"-90\" max=\"0\"/>\n\t\t</port>\n\n\t\t<port label=\"t1d\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Tap 1 distance (inches)</name>\n\t\t\t<range min=\"0\" max=\"4\"/>\n\t\t</port>\n\n\t\t<port label=\"t1a_db\" dir=\"input\" type=\"control\" hint=\"default_0\">\n\t\t\t<name>Tap 1 level (dB)</name>\n\t\t\t<range min=\"-90\" max=\"0\"/>\n\t\t</port>\n\n\t\t<port label=\"t2d\" dir=\"input\" type=\"control\" hint=\"default_low\">\n\t\t\t<name>Tap 2 distance (inches)</name>\n\t\t\t<range min=\"0\" max=\"4\"/>\n\t\t</port>\n\n\t\t<port label=\"t2a_db\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n\t\t\t<name>Tap 2 level (dB)</name>\n\t\t\t<range min=\"-90\" max=\"0\"/>\n\t\t</port>\n\n\t\t<port label=\"t3d\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n\t\t\t<name>Tap 3 distance (inches)</name>\n\t\t\t<range min=\"0\" max=\"4\"/>\n\t\t</port>\n\n\t\t<port label=\"t3a_db\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n\t\t\t<name>Tap 3 level (dB)</name>\n\t\t\t<range min=\"-90\" max=\"0\"/>\n\t\t</port>\n\n\t\t<port label=\"t4d\" dir=\"input\" type=\"control\" hint=\"default_high\">\n\t\t\t<name>Tap 4 distance (inches)</name>\n\t\t\t<range min=\"0\" max=\"4\"/>\n\t\t</port>\n\n\t\t<port label=\"t4a_db\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n\t\t\t<name>Tap 4 level (dB)</name>\n\t\t\t<range min=\"-90\" max=\"0\"/>\n\t\t</port>\n\n\t\t<port label=\"input\" dir=\"input\" type=\"audio\">\n\t\t\t<name>Input</name>\n\t\t</port>\n\n\t\t<port label=\"output\" dir=\"output\" type=\"audio\">\n\t\t\t<name>Output</name>\n\t\t</port>\n\n\t\t<instance-data label=\"buffer\" type=\"LADSPA_Data *\"/>\n\t\t<instance-data label=\"buffer_size\" type=\"unsigned int\"/>\n\t\t<instance-data label=\"buffer_mask\" type=\"unsigned int\"/>\n\t\t<instance-data label=\"phase\" type=\"float\"/>\n\t\t<instance-data label=\"last_phase\" type=\"unsigned int\"/>\n\t\t<instance-data label=\"last_in\" type=\"LADSPA_Data\"/>\n\t\t<instance-data label=\"last2_in\" type=\"LADSPA_Data\"/>\n\t\t<instance-data label=\"last3_in\" type=\"LADSPA_Data\"/>\n\t\t<instance-data label=\"sample_rate\" type=\"int\"/>\n                <instance-data label=\"z0\" type=\"LADSPA_Data\"/>\n                <instance-data label=\"z1\" type=\"LADSPA_Data\"/>\n                <instance-data label=\"z2\" type=\"LADSPA_Data\"/>\n\t</plugin>\n</ladspa>\n"
  },
  {
    "path": "timetest/autotimetest.pl",
    "content": "#!/usr/bin/perl -w\n\n$html = 0;\n$skip = 0;\n\nwhile (@ARGV) {\n\t$plugin = shift(@ARGV).\"\";\n\n\tif ($plugin eq \"--html\") {\n\t\t$html = 1;\n\t\tprint \"<table cellpadding=\\\"4\\\" cellspacing=\\\"0\\\" border=\\\"1\\\">\\n\";\n\t\tprint \"<tr><th>UID</th><th>Name</th><th>PIII MHz</th><th>Cycles /<br>sample</th></tr>\\n\";\n\t\tnext;\n\t}\n\n\t@data = `analyseplugin $plugin`;\n\n\t$port = 0;\n\t$ins = 0;\n\t$id = 0;\n\t$seen = 0;\n\n\tfor (@data) {\n\t\tif (/Plugin Name: \"(.*?)\"/) {\n\t\t\tif ($seen) {\n\t\t\t\t#&run($port, $ins, $id, $title);\n\t\t\t\t&run;\n\t\t\t}\n\t\t\tif (/Debug/) {\n\t\t\t\t$skip = 1;\n\t\t\t}\n\t\t\t$title = $1;\n\t\t\t$seen = 1;\n\t\t\t$ins = 0;\n\t\t\t$id = 0;\n\t\t\t$port = 0;\n\t\t}\n\t\tif (/Plugin Label: \"(.*?)\"/) {\n\t\t\t$label = $1;\n\t\t}\n\t\tif (/Plugin Unique ID: (\\d+)/) {\n\t\t\t$id = $1;\n\t\t}\n\t\tif (/\"(.*?)\" input, control, ([0-9.e-]+).*? to ([0-9.e-]+)/i) {\n\t\t\t#$name[$port] = $1;\n\t\t\t$min[$port] = $2;\n\t\t\tif ($min[$port] eq \"...\") {\n\t\t\t\t$min[$port] = 0.0;\n\t\t\t}\n\t\t\t$max[$port] = $3;\n\t\t\tif ($max[$port] eq \"...\") {\n\t\t\t\t$max[$port] = $min[$port];\n\t\t\t}\n\t\t\t$port++;\n\t\t}\n\t\tif (/input, audio/) {\n\t\t\t$ins++;\n\t\t}\n\t}\n\n\tif ($skip) {\n\t\t$skip = 0;\n\t\tnext;\n\t}\n\n\t&run;\n}\n\n#&run;\n#&run($port, $ins, $id, $title);\n\nif ($html) {\n\tprint \"</table>\\n\";\n}\n\nsub run {\n\t#local ($port, $ins, $id, $title) = @_;\n\n\tmy $afile = \"XXX\";\n\tif ($ins == 1) {\n\t\t$afile = \"happyness-ext-m.wav\";\n\t} elsif ($ins == 2) {\n\t\t$afile = \"happyness-ext-s.wav\";\n\t} else {\n\t\tprint STDERR \"No valid input file for $id\\n\";\n\t\t#next;\n\t}\n\n\tif ($html) {\n\t\tprintf(\"<tr><td>$id</td><td><a href=\\\"/ladspa-swh/docs/ladspa-swh.html#id$id\\\">$title</a></td>\");\n\t} else {\n\t\tprintf(\"%-48s \", $title);\n\t}\n\n\tmy $base = \"\";\n\tfor $i (0..$port-1) {\n\t\t$base .= \" \".($min[$i]+$max[$i])/2;\n\t}\n\n\t$cycles = 9999999999999;\n\t$pers = 99999999;\n\tfor (1..5) {\n\t\t$cmd = \"applyplugin ../testdata/$afile /dev/null $plugin $label$base 2>&1\";\n\t\t$out = `$cmd`;\n\t\tlast if ($? != 0);\n                chomp $out;\n                $out =~ /Plugin cycles: (\\d+) \\((\\d+)\\//;\n\t\tif (!$1) {\n\t\t\tprint STDERR \"$? $out\\n$cmd\\n\";\n\t\t\t$err = 1;\n\t\t}\n                if ($1 < $cycles) {\n                        $cycles = $1;\n                }\n                if ($2 < $pers) {\n                        $pers = $2;\n                }\n\t}\n\tif ($err || $?) {\n\t\tif ($html) {\n\t\t\tprint \"<td>???</td><td>???</td>\\n\\n\";\n\t\t} else {\n\t\t\tprint \"???\\n$cmd\\n\";\n\t\t}\n\t\t$err = 0;\n\t\treturn;\n\t}\n\t$cycles /= 8000000.0;\n\tif ($html) {\n\t\tprintf \"<td align=\\\"right\\\">%.1f</td><td align=\\\"right\\\">$pers</td></tr>\\n\", $cycles;\n\t} else {\n\t\tprintf \"%3.1f\\t%d\\n\", $cycles, $pers;\n\t}\n}\n"
  },
  {
    "path": "timetest/timecmp",
    "content": "#!/usr/bin/perl -w\n\nmy $pattern = shift @ARGV;\n\nmy $reps = 4;\n\nopen(RC, \"timetest.rc\");\nwhile(<RC>) {\n\tnext if /^\\s*#/;\n\tnext if /^\\s*$/;\n\tnext if ($pattern && !/$pattern/);\n\t@stuff = split(\"\\t\");\n\t$name = $stuff[0];\n\t$line = $stuff[1];\n\tchomp $line;\n\t$line =~ /(\\S+\\.so)/;\n\t$command = $line.\" 2>&1\";\n\t$cycles = 10000000000;\n\t$pers = 100000;\n\tmy $count;\n\tfor $count (1..$reps+1) {\n\t\t$out = `$command`;\n\t\tchomp $out;\n\t\t$out =~ /Plugin cycles: (\\d+) \\((\\d+)\\//;\n\t\tif ($1 < $cycles) {\n\t\t\t$cycles = $1;\n\t\t}\n\t\tif ($2 < $pers) {\n\t\t\t$pers = $2;\n\t\t}\n\t}\n\t$out =~ /UID: (\\d+)/;\n\t$UID = $1;\n\t$acycles = $cycles;\n\t\n\t$line =~ s/(.*\\.\\.)/$1\\/icc-so/;\n#print $line.\"\\n\";\n\t$command = $line.\" 2>&1\";\n\t$cycles = 10000000000;\n\t$pers = 100000;\n\t$ok = 1;\n\tfor $count (1..$reps+1) {\n\t\t$out = `$command`;\n\t\tchomp $out;\n\t\tunless ($out =~ /Plugin cycles: (\\d+) \\((\\d+)\\//) {\n\t\t\tprint(\"ERROR\\t$name\\n\");\n\t\t\t$ok = 0;\n\t\t\tlast;\n\t\t}\n\t\tif ($1 < $cycles) {\n\t\t\t$cycles = $1;\n\t\t}\n\t\tif ($2 < $pers) {\n\t\t\t$pers = $2;\n\t\t}\n\t}\n\tnext if !$ok;\n\t$out =~ /UID: (\\d+)/;\n\t$UID = $1;\n\tprint sprintf(\"%.3f\", ($cycles/$acycles)).\"\\t$name\\n\";\n}\n"
  },
  {
    "path": "timetest/timetest",
    "content": "#!/usr/bin/perl -w\n\nmy $pattern = shift @ARGV;\n\nmy $reps = 4;\n\nopen(RC, \"timetest.rc\");\nopen(DATA, \">timetest.results\");\nprint(\"<table bgcolor=\\\"#000000\\\" border=\\\"1\\\" cellpadding=\\\"4\\\" cellspacing=\\\"0\\\">\\n\");\nprint(\"<tr><th bgcolor=\\\"#FFFFFF\\\">Plugin</th><th bgcolor=\\\"#FFFFFF\\\">PIII MHz used to process<br>44.1k/16bit mono file</th><th bgcolor=\\\"#FFFFFF\\\">Cycles per sample</th></tr>\\n\");\nwhile(<RC>) {\n\tnext if /^\\s*#/;\n\tnext if /^\\s*$/;\n\tnext if ($pattern && !/$pattern/);\n\t@stuff = split(\"\\t\");\n\t$name = $stuff[0];\n\t$line = $stuff[1];\n\tchomp $line;\n\t$line =~ /(\\S+\\.so)/;\n\t$command = $line.\" 2>&1\";\n\t$cycles = 10000000000;\n\t$pers = 100000;\n\tmy $count;\n\tfor $count (1..$reps+1) {\n\t\t$out = `$command`;\n\t\tchomp $out;\n\t\t$out =~ /Plugin cycles: (\\d+) \\((\\d+)\\//;\n\t\tif ($1 < $cycles) {\n\t\t\t$cycles = $1;\n\t\t}\n\t\tif ($2 < $pers) {\n\t\t\t$pers = $2;\n\t\t}\n\t}\n\t$out =~ /UID: (\\d+)/;\n\t$UID = $1;\n\t$cycles /= 1000000;\n\t$doc = \"http://plugin.org.uk/ladspa-swh/docs/ladspa-swh.html#id$UID\";\n\tprint(\"<tr><td bgcolor=\\\"#FFFFFF\\\"><a href=\\\"$doc\\\">\", $name, \"</a></td><td bgcolor=\\\"#FFFFFF\\\" align=\\\"right\\\">\", sprintf(\"%.2f\", $cycles/8), \"</td><td bgcolor=\\\"#FFFFFF\\\" align=\\\"right\\\">\", sprintf(\"%.0f\", $pers),\"</td></tr>\\n\");\n\tprint DATA \"$UID \".sprintf(\"%.2f\", $cycles/8).\" \".sprintf(\"%.0f\", $pers).\"\\n\";\n}\nprint(\"</table>\\n\");\n"
  },
  {
    "path": "timetest/timetest.rc",
    "content": "Amp\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../amp_1181.so amp 0\nFast overdrive\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../foverdrive_1196.so foverdrive 1\n#Overdrive (with colouration)\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../overdrive_1182.so overdrive 0 0.5 0.5 0.5\nComb filter\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../comb_1190.so comb 500 50 150\nWaveshaper\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../shaper_1187.so shaper 5\nRingmod w/ LFO\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../ringmod_1188.so ringmod_1i1o1l 2 50 0.3 0.4 0.5 0.6\nAudio divider\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../divider_1186.so divider 8\nDiode processor\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../diode_1185.so diode 1.5\nDecliper\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../declip_1195.so declip\nPitch scaler\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../pitch_scale_1193.so pitchScale 0.7\nPitch scaler (high quality)\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../pitch_scale_1194.so pitchScaleHQ 0.7\n16 band EQ\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../mbeq_1197.so mbeq -70 -60 -50 -40 -30 -20 -10 -5 +5 +10 +5 0 0 0 0 0\nSinus wavewrapper\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../sinus_wavewrapper_1198.so sinusWavewrapper 0.2\nHermes filter\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../hermes_filter_1200.so hermesFilter 3 0 0.27 1 100 1 40 1 1.5 1 2 -4 -4 -50 -70 -70 -70 200 1000 3 1 3 5 1500 0.65 0 130 0 5 400 0.8 0 0 -177 1 150 0.9 0.97 30 30 0.025 0.9 0.5 0.05 0.7 0.5 0.1 0.5 0.5 0 -20 -20\nChorus (3 voice)\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../multivoice_chorus_1201.so multivoiceChorus 3 20 3 1 10 0\nFlanger\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../flanger_1191.so flanger 1 0.3 0.5 0.7\nDecimator\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../decimator_1202.so decimator 4 1000\nAnalogue style oscilator\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../analogue_osc_1205.so analogueOsc 50 0\nTransient processor\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../transient_1206.so transient 0.7 -0.7\nFractional Delay\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../fad_delay_1192.so fadDelay 3 -10\nDC offset remover\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../dc_remove_1207.so dcRemove\nRetro flanger\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../retro_flange_1208.so retroFlange 5 4\nValve saturation\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../valve_1209.so valve 0.5 0.5\nSifter\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../sifter_1210.so sifter 32\nTape style delay (4 taps)\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../tape_delay_1211.so tapeDelay 1 -10 0.1 -10 0.2 -10 0.3 -10 0.4 -10\nFoldover distorter\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../foldover_1213.so foldover 0.5 0.5\nState variable filter\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../amp_1181.so amp -89 ../svf_1214.so svf 2 3000 0.5 0.5\nGSM phone effect\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../gsm_1215.so gsm 0.5 1 0\nGVerb (reverb)\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../gverb_1216.so gverb 150 5 0.5 0.25 0 0 0\nLFO Phaser\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../phasers_1217.so lfoPhaser 10 0.5 0.6 1\n4x4 pole allpass\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../phasers_1217.so fourByFourPole 1000 0.7 2000 -0.7 3000 0.8 4000 -0.8\nAuto phaser\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../phasers_1217.so autoPhaser 1 0.1 0.0001 0.6 0.01\nHarmonic generator\tapplyplugin ../testdata/happyness-ext-m.wav /dev/null ../harmonic_gen_1220.so harmonicGen 1 0 0 0 0 0 0 0 0 0\n"
  },
  {
    "path": "transient_1206.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n#include \"ladspa-util.h\"\n\n#define BUFFER_SIZE 10240\n#define SSTAB 0.00001f\n#define ASTAB 0.02f\n    ]]></code>\n  </global>\n\n  <plugin label=\"transient\" id=\"1206\" class=\"DynamicsPlugin\">\n    <name>Transient mangler</name>\n\n    <callback event=\"instantiate\">\nbuffer = calloc(BUFFER_SIZE, sizeof(float));\nfast_buffer_sum = 0.1;\nmedi_buffer_sum = 0.1;\nslow_buffer_sum = 0.1;\nbuffer_pos = 0;\nfast_track = 0.0;\nmedi_track = 0.0;\nslow_track = 0.0;\ncount = 0;\nsample_rate = s_rate;\n    </callback>\n\n    <callback event=\"activate\">\nmemset(buffer, '\\0', BUFFER_SIZE * sizeof(float));\nfast_buffer_sum = 0.1;\nmedi_buffer_sum = 0.1;\nslow_buffer_sum = 0.1;\nbuffer_pos = 0;\nfast_track = 0.1;\nmedi_track = 0.1;\nslow_track = 0.1;\ncount = 0;\n    </callback>\n\n    <callback event=\"cleanup\"><![CDATA[\nfree(plugin_data->buffer);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\nunsigned long pos;\nconst int fast_sum_size = (2 * sample_rate) / 1000;\nconst int medi_sum_size = (25 * sample_rate) / 1000;\nconst int slow_sum_size = (100 * sample_rate) / 1000;\nconst float fast_track_lag = 1.5f / fast_sum_size;\nconst float medi_track_lag = 1.0f / medi_sum_size;\nconst float slow_track_lag = 1.3f / slow_sum_size;\nfloat ratio;\nLADSPA_Data in;\n\nfor (pos = 0; pos < sample_count; pos++) {\n\tin = input[pos];\n\tbuffer[buffer_pos] = fabs(in);\n\tfast_buffer_sum += buffer[buffer_pos];\n\tmedi_buffer_sum += buffer[buffer_pos];\n\tslow_buffer_sum += buffer[buffer_pos];\n\tfast_buffer_sum -= buffer[MOD(buffer_pos - fast_sum_size, BUFFER_SIZE)];\n\tmedi_buffer_sum -= buffer[MOD(buffer_pos - medi_sum_size, BUFFER_SIZE)];\n\tslow_buffer_sum -= buffer[MOD(buffer_pos - slow_sum_size, BUFFER_SIZE)];\n\tif (count++ > slow_sum_size) {\n\t\tfast_track += (fast_buffer_sum/fast_sum_size - fast_track)\n\t\t * fast_track_lag;\n\t\tmedi_track += (medi_buffer_sum/medi_sum_size - medi_track)\n\t\t * medi_track_lag;\n\t\tslow_track += (slow_buffer_sum/slow_sum_size - slow_track)\n\t\t * slow_track_lag;\n\t}\n\n\t// Attack\n\tratio = (fast_track + ASTAB) / (medi_track + ASTAB);\n\tif (ratio * attack > 1.0f) {\n\t\tin *= ratio * attack;\n\t} else if (ratio * attack < -1.0f) {\n\t\tin /= ratio * -attack;\n\t}\n\n\t// Sustain\n\tratio = (slow_track + SSTAB) / (medi_track + SSTAB);\n\tif (ratio * sustain > 1.0f) {\n\t\tin *= ratio * sustain;\n\t} else if (ratio * sustain < -1.0f) {\n\t\tin /= ratio * -sustain;\n\t}\n\n\tbuffer_write(output[pos], in);\n\tbuffer_pos = (buffer_pos + 1) % BUFFER_SIZE;\n}\n\nplugin_data->count = count;\nplugin_data->fast_track = fast_track;\nplugin_data->medi_track = medi_track;\nplugin_data->slow_track = slow_track;\nplugin_data->buffer_pos = buffer_pos;\nplugin_data->fast_buffer_sum = fast_buffer_sum;\nplugin_data->medi_buffer_sum = medi_buffer_sum;\nplugin_data->slow_buffer_sum = slow_buffer_sum;\n    ]]></callback>\n\n    <port label=\"attack\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Attack speed</name>\n      <range min=\"-1\" max=\"1\"/>\n    </port>\n\n    <port label=\"sustain\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Sustain time</name>\n      <range min=\"-1\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n      <range min=\"-1.0\" max=\"1.0\"/>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n      <range min=\"-1.0\" max=\"1.0\"/>\n    </port>\n\n    <instance-data label=\"count\" type=\"long\"/>\n\n    <!-- Current value of the env followers -->\n    <instance-data label=\"fast_track\" type=\"float\"/>\n    <instance-data label=\"medi_track\" type=\"float\"/>\n    <instance-data label=\"slow_track\" type=\"float\"/>\n\n    <!-- Ring buffer for tracking -->\n    <instance-data label=\"buffer\" type=\"float *\"/>\n    <instance-data label=\"buffer_pos\" type=\"int\"/>\n\n    <!-- Total amplitude inside sub buffers -->\n    <instance-data label=\"fast_buffer_sum\" type=\"float\"/>\n    <instance-data label=\"medi_buffer_sum\" type=\"float\"/>\n    <instance-data label=\"slow_buffer_sum\" type=\"float\"/>\n\n    <instance-data label=\"sample_rate\" type=\"int\"/>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "triple_para_1204.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"util/biquad.h\"\n    </code>\n  </global>\n\n  <plugin label=\"triplePara\" id=\"1204\" class=\"ParaEQPlugin\">\n    <name>Triple band parametric with shelves</name>\n    <p>Actually five bands of eq, but the first and last are locked to shelving filters.</p>\n    <p>For details see the single band parametric (section \\ref{singlePara}).</p>\n\n    <callback event=\"instantiate\"><![CDATA[\nfs = s_rate;\n\nfilters = calloc(5, sizeof(biquad));\nbiquad_init(&filters[0]);\nbiquad_init(&filters[1]);\nbiquad_init(&filters[2]);\nbiquad_init(&filters[3]);\nbiquad_init(&filters[4]);\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\nbiquad_init(&filters[0]);\nbiquad_init(&filters[1]);\nbiquad_init(&filters[2]);\nbiquad_init(&filters[3]);\nbiquad_init(&filters[4]);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\nunsigned long pos;\nfloat in;\n\nls_set_params(&filters[0], fc_L, gain_L, bw_L, fs);\neq_set_params(&filters[1], fc_1, gain_1, bw_1, fs);\neq_set_params(&filters[2], fc_2, gain_2, bw_2, fs);\neq_set_params(&filters[3], fc_3, gain_3, bw_3, fs);\nhs_set_params(&filters[4], fc_H, gain_H, bw_H, fs);\n\nfor (pos = 0; pos < sample_count; pos++) {\n\tin = biquad_run(&filters[0], input[pos]);\n\tin = biquad_run(&filters[1], in);\n\tin = biquad_run(&filters[2], in);\n\tin = biquad_run(&filters[3], in);\n\tin = biquad_run(&filters[4], in);\n\tbuffer_write(output[pos], in);\n}\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\nbiquad_init(&filters[0]);\nbiquad_init(&filters[1]);\nbiquad_init(&filters[2]);\nbiquad_init(&filters[3]);\nbiquad_init(&filters[4]);\n    ]]></callback>\n\n    <callback event=\"cleanup\">\nfree(plugin_data->filters);\n    </callback>\n\n    <port label=\"gain_L\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Low-shelving gain (dB)</name>\n      <range min=\"-70\" max=\"+30\"/>\n    </port>\n\n    <port label=\"fc_L\" dir=\"input\" type=\"control\" hint=\"logarithmic,sample_rate,default_minimum\">\n      <name>Low-shelving frequency (Hz)</name>\n      <range min=\"0.0001\" max=\"0.49\"/>\n    </port>\n\n    <port label=\"bw_L\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>Low-shelving slope</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"gain_1\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Band 1 gain (dB)</name>\n      <range min=\"-70\" max=\"+30\"/>\n    </port>\n\n    <port label=\"fc_1\" dir=\"input\" type=\"control\" hint=\"logarithmic,sample_rate,default_low\">\n      <name>Band 1 frequency (Hz)</name>\n      <range min=\"0.0001\" max=\"0.49\"/>\n    </port>\n\n    <port label=\"bw_1\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Band 1 bandwidth (octaves)</name>\n      <range min=\"0\" max=\"4\"/>\n    </port>\n\n    <port label=\"gain_2\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Band 2 gain (dB)</name>\n      <range min=\"-70\" max=\"+30\"/>\n    </port>\n\n    <port label=\"fc_2\" dir=\"input\" type=\"control\" hint=\"logarithmic,sample_rate,default_middle\">\n      <name>Band 2 frequency (Hz)</name>\n      <range min=\"0.0001\" max=\"0.49\"/>\n    </port>\n\n    <port label=\"bw_2\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Band 2 bandwidth (octaves)</name>\n      <range min=\"0\" max=\"4\"/>\n    </port>\n\n    <port label=\"gain_3\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Band 3 gain (dB)</name>\n      <range min=\"-70\" max=\"+30\"/>\n    </port>\n\n    <port label=\"fc_3\" dir=\"input\" type=\"control\" hint=\"logarithmic,sample_rate,default_high\">\n      <name>Band 3 frequency (Hz)</name>\n      <range min=\"0.0001\" max=\"0.49\"/>\n    </port>\n\n    <port label=\"bw_3\" dir=\"input\" type=\"control\" hint=\"default_1\">\n      <name>Band 3 bandwidth (octaves)</name>\n      <range min=\"0\" max=\"4\"/>\n    </port>\n\n    <port label=\"gain_H\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>High-shelving gain (dB)</name>\n      <range min=\"-70\" max=\"+30\"/>\n    </port>\n\n    <port label=\"fc_H\" dir=\"input\" type=\"control\" hint=\"logarithmic,sample_rate,default_maximum\">\n      <name>High-shelving frequency (Hz)</name>\n      <range min=\"0.0001\" max=\"0.49\"/>\n    </port>\n\n    <port label=\"bw_H\" dir=\"input\" type=\"control\" hint=\"default_middle\">\n      <name>High-shelving slope</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n      <range min=\"-1.0\" max=\"+1.0\"/>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n      <range min=\"-1.0\" max=\"+1.0\"/>\n    </port>\n\n    <instance-data label=\"fs\" type=\"float\"/>\n    <instance-data label=\"filters\" type=\"biquad *\"/>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "util/Makefile.am",
    "content": "LIBTOOL=libtool\nRANLIB=ranlib\n\nnoinst_HEADERS = rms.h db.h blo.h pitchscale.h waveguide_nl.h biquad.h iir.h buffer.h ls_filter.h\n\nnoinst_LIBRARIES = librms.a libdb.a libblo.a libpitchscale.a libiir.a\n\nlibrms_a_SOURCES = rms.c\nlibdb_a_SOURCES = db.c\nlibblo_a_SOURCES = blo.c\nlibblo_a_CFLAGS = -I@top_srcdir@\nlibpitchscale_a_SOURCES = pitchscale.c\nlibpitchscale_a_CFLAGS = $(FFTW_CFLAGS)\n#libpitchscale_a_LIBS = $(FFTW_LIBS)\nlibiir_a_SOURCES = iir.c\nlibiir_a_CPPFLAGS = -I@top_srcdir@\n#libbuffer_a_SOURCES = buffer.c\n# Disable autoheader. \nAUTOHEADER=echo\n"
  },
  {
    "path": "util/biquad.h",
    "content": "#ifndef BIQUAD_H\n#define BIQUAD_H\n\n#define LN_2_2 0.34657359f // ln(2)/2\n\n#include \"ladspa-util.h\"\n\n#ifndef LIMIT\n#define LIMIT(v,l,u) (v<l?l:(v>u?u:v))\n#endif\n\n#ifndef BIQUAD_TYPE\n#define BIQUAD_TYPE float\n#endif\n\ntypedef BIQUAD_TYPE bq_t;\n\n/* Biquad filter (adapted from lisp code by Eli Brandt,\n   http://www.cs.cmu.edu/~eli/) */\n\ntypedef struct {\n\tbq_t a1;\n\tbq_t a2;\n\tbq_t b0;\n\tbq_t b1;\n\tbq_t b2;\n\tbq_t x1;\n\tbq_t x2;\n\tbq_t y1;\n\tbq_t y2;\n} biquad;\n\nstatic inline void biquad_init(biquad *f) {\n\tf->x1 = 0.0f;\n\tf->x2 = 0.0f;\n\tf->y1 = 0.0f;\n\tf->y2 = 0.0f;\n}\n\nstatic inline void eq_set_params(biquad *f, bq_t fc, bq_t gain, bq_t bw,\n\t\t\t  bq_t fs);\nstatic inline void eq_set_params(biquad *f, bq_t fc, bq_t gain, bq_t bw,\n\t\t\t  bq_t fs)\n{\n\tbq_t w = 2.0f * M_PI * LIMIT(fc, 1.0f, fs/2.0f) / fs;\n\tbq_t cw = cosf(w);\n\tbq_t sw = sinf(w);\n\tbq_t J = pow(10.0f, gain * 0.025f);\n\tbq_t g = sw * sinhf(LN_2_2 * LIMIT(bw, 0.0001f, 4.0f) * w / sw);\n\tbq_t a0r = 1.0f / (1.0f + (g / J));\n\n\tf->b0 = (1.0f + (g * J)) * a0r;\n\tf->b1 = (-2.0f * cw) * a0r;\n\tf->b2 = (1.0f - (g * J)) * a0r;\n\tf->a1 = -(f->b1);\n\tf->a2 = ((g / J) - 1.0f) * a0r;\n}\n\nstatic inline void ls_set_params(biquad *f, bq_t fc, bq_t gain, bq_t slope,\n\t\t\t  bq_t fs);\nstatic inline void ls_set_params(biquad *f, bq_t fc, bq_t gain, bq_t slope,\n\t\t\t  bq_t fs)\n{\n\tbq_t w = 2.0f * M_PI * LIMIT(fc, 1.0, fs/2.0) / fs;\n\tbq_t cw = cosf(w);\n\tbq_t sw = sinf(w);\n\tbq_t A = powf(10.0f, gain * 0.025f);\n\tbq_t b = sqrt(((1.0f + A * A) / LIMIT(slope, 0.0001f, 1.0f)) - ((A -\n\t\t\t\t\t1.0f) * (A - 1.0)));\n\tbq_t apc = cw * (A + 1.0f);\n\tbq_t amc = cw * (A - 1.0f);\n\tbq_t bs = b * sw;\n\tbq_t a0r = 1.0f / (A + 1.0f + amc + bs);\n\n\tf->b0 = a0r * A * (A + 1.0f - amc + bs);\n\tf->b1 = a0r * 2.0f * A * (A - 1.0f - apc);\n\tf->b2 = a0r * A * (A + 1.0f - amc - bs);\n\tf->a1 = a0r * 2.0f * (A - 1.0f + apc);\n\tf->a2 = a0r * (-A - 1.0f - amc + bs);\n}\n\nstatic inline void hs_set_params(biquad *f, bq_t fc, bq_t gain, bq_t slope,\n\t\t\t  bq_t fs);\nstatic inline void hs_set_params(biquad *f, bq_t fc, bq_t gain, bq_t slope,\n\t\t\t  bq_t fs)\n{\n\tbq_t w = 2.0f * M_PI * LIMIT(fc, 1.0, fs/2.0) / fs;\n\tbq_t cw = cosf(w);\n\tbq_t sw = sinf(w);\n\tbq_t A = powf(10.0f, gain * 0.025f);\n\tbq_t b = sqrt(((1.0f + A * A) / LIMIT(slope, 0.0001f, 1.0f)) - ((A -\n\t\t\t\t\t1.0f) * (A - 1.0f)));\n\tbq_t apc = cw * (A + 1.0f);\n\tbq_t amc = cw * (A - 1.0f);\n\tbq_t bs = b * sw;\n\tbq_t a0r = 1.0f / (A + 1.0f - amc + bs);\n\n\tf->b0 = a0r * A * (A + 1.0f + amc + bs);\n\tf->b1 = a0r * -2.0f * A * (A - 1.0f + apc);\n\tf->b2 = a0r * A * (A + 1.0f + amc - bs);\n\tf->a1 = a0r * -2.0f * (A - 1.0f - apc);\n\tf->a2 = a0r * (-A - 1.0f + amc + bs);\n}\n\nstatic inline void lp_set_params(biquad *f, bq_t fc, bq_t bw, bq_t fs)\n{\n\tbq_t omega = 2.0 * M_PI * fc/fs;\n\tbq_t sn = sin(omega);\n\tbq_t cs = cos(omega);\n\tbq_t alpha = sn * sinh(M_LN2 / 2.0 * bw * omega / sn);\n\n        const float a0r = 1.0 / (1.0 + alpha);\n        f->b0 = a0r * (1.0 - cs) * 0.5;\n\tf->b1 = a0r * (1.0 - cs);\n        f->b2 = a0r * (1.0 - cs) * 0.5;\n        f->a1 = a0r * (2.0 * cs);\n        f->a2 = a0r * (alpha - 1.0);\n}\n\nstatic inline void hp_set_params(biquad *f, bq_t fc, bq_t bw, bq_t fs)\n{\n\tbq_t omega = 2.0 * M_PI * fc/fs;\n\tbq_t sn = sin(omega);\n\tbq_t cs = cos(omega);\n\tbq_t alpha = sn * sinh(M_LN2 / 2.0 * bw * omega / sn);\n\n        const float a0r = 1.0 / (1.0 + alpha);\n        f->b0 = a0r * (1.0 + cs) * 0.5;\n        f->b1 = a0r * -(1.0 + cs);\n        f->b2 = a0r * (1.0 + cs) * 0.5;\n        f->a1 = a0r * (2.0 * cs);\n        f->a2 = a0r * (alpha - 1.0);\n}\n\nstatic inline void bp_set_params(biquad *f, bq_t fc, bq_t bw, bq_t fs)\n{\n\tbq_t omega = 2.0 * M_PI * fc/fs;\n\tbq_t sn = sin(omega);\n\tbq_t cs = cos(omega);\n\tbq_t alpha = sn * sinh(M_LN2 / 2.0 * bw * omega / sn);\n\n        const float a0r = 1.0 / (1.0 + alpha);\n        f->b0 = a0r * alpha;\n        f->b1 = 0.0;\n        f->b2 = a0r * -alpha;\n        f->a1 = a0r * (2.0 * cs);\n        f->a2 = a0r * (alpha - 1.0);\n}\n\nstatic inline bq_t biquad_run(biquad *f, const bq_t x) {\n\tbq_t y;\n\n\ty = f->b0 * x + f->b1 * f->x1 + f->b2 * f->x2\n\t\t      + f->a1 * f->y1 + f->a2 * f->y2;\n\ty = flush_to_zero(y);\n\tf->x2 = f->x1;\n\tf->x1 = x;\n\tf->y2 = f->y1;\n\tf->y1 = y;\n\n\treturn y;\n}\n\nstatic inline bq_t biquad_run_fb(biquad *f, bq_t x, const bq_t fb) {\n\tbq_t y;\n\n\tx += f->y1 * fb * 0.98;\n\ty = f->b0 * x + f->b1 * f->x1 + f->b2 * f->x2\n\t\t      + f->a1 * f->y1 + f->a2 * f->y2;\n\ty = flush_to_zero(y);\n\tf->x2 = f->x1;\n\tf->x1 = x;\n\tf->y2 = f->y1;\n\tf->y1 = y;\n\n\treturn y;\n}\n\n#endif\n"
  },
  {
    "path": "util/blo.c",
    "content": "/*\n    Copyright (C) 2002 Steve Harris <steve@plugin.org.uk>\n\n    This program is free software; you can redistribute it and/or modify\n    it under the terms of the GNU General Public License as published by\n    the Free Software Foundation; either version 2 of the License, or\n    (at your option) any later version.\n\n    This program is distributed in the hope that it will be useful,\n    but WITHOUT ANY WARRANTY; without even the implied warranty of\n    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n    GNU General Public License for more details.\n\n    You should have received a copy of the GNU General Public License\n    along with this program; if not, write to the Free Software\n    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.\n*/\n\n#include <stdlib.h>\n#include <math.h>\n#include <fcntl.h>\n#include <sys/types.h>\n#ifndef _WIN32\n#include <sys/mman.h>\n#endif\n\n#include \"blo.h\"\n\n/* Create the lookup tables needed to generate the bandlimited signals, we\n * create sin tables (As well as the usual sin, square, saw), which is almost\n * completely pointless, but doesn't cost much ram.\n *\n * Memory use is roughly 8 * table_size * num_of_harmonics, eg. 2048 point\n * tables with 64 harmonics costs ~1Meg. The oscilators will be accurate down\n * to sample_rate / (2 * number_of_harmonics) Hz, below that they will sound a\n * bit soft.\n */\n\nblo_h_tables *blo_h_tables_new(int table_size)\n{\n\tblo_h_tables *this;\n\tfloat *all_tables = NULL;\n\tfloat *table;\n\tfloat table_size_f = table_size;\n\tfloat max;\n\tunsigned int table_count = 0;\n\tint i;\n\tunsigned int h;\n\tsize_t all_tables_size = sizeof(float) * (table_size + BLO_TABLE_WR)\n\t\t                        * (BLO_N_HARMONICS - 1) * 2;\n#ifndef _WIN32\n\tint shm_fd;\n#endif\n\tchar shm_path[128];\n\n\tthis = malloc(sizeof(blo_h_tables));\n\tthis->alloc_size = all_tables_size;\n\tthis->table_size = table_size;\n\tthis->table_mask = table_size - 1;\n\tthis->store_type = BLO_MMAP;\n\n\tsnprintf(shm_path, 128, \"/blo-1-%dx%dx%d.tbl\", BLO_N_WAVES,\n\t\t\tBLO_N_HARMONICS, table_size + BLO_TABLE_WR);\n#ifndef _WIN32\n\tif ((shm_fd = shm_open(shm_path, O_RDONLY, 0)) > 0) {\n\t\t/* There is an existing SHM segment that matches what we want */\n\n\t\tall_tables = mmap(0, all_tables_size, PROT_READ, MAP_SHARED,\n\t\t\t\tshm_fd, 0);\n\t\tclose(shm_fd);\n\t\tthis->alloc_space = all_tables;\n\n\t\t/* Map the pointers to the correct places in SHM */\n\n\t\t/* The zero harmonics tables (trivial) */\n\t\ttable = BLO_NEXT_TABLE;\n\t\tfor (i=0; i<BLO_N_WAVES; i++) {\n\t\t\tthis->h_tables[i][0] = table;\n\t\t}\n\n\t\t/* The 1st harmonic table (trivial) */\n\t\ttable = BLO_NEXT_TABLE;\n\t\tfor (i=0; i<BLO_N_WAVES; i++) {\n\t\t\tthis->h_tables[i][1] = table;\n\t\t}\n\n\t\t/* The sin 2nd+ harmonics sine tables (trivial) */\n\t\tfor (h=2; h<BLO_N_HARMONICS; h++) {\n\t\t\tthis->h_tables[BLO_SINE][h] = table;\n\t\t}\n\n\t\t/* The tri 2nd+ harmonics tables */\n\t\ttable = this->h_tables[BLO_TRI][1];\n\t\tfor (h=2; h<BLO_N_HARMONICS; h++) {\n\t\t\tif (h % 2 == 0) {\n\t\t\t\t/* Even harmonic - add no partials */\n\t\t\t\tthis->h_tables[BLO_TRI][h] = table;\n\t\t\t} else {\n\t\t\t\t/* Odd harmonic add sin(hp)/h^2 */\n\t\t\t\ttable = BLO_NEXT_TABLE;\n\t\t\t\tthis->h_tables[BLO_TRI][h] = table;\n\t\t\t}\n\t\t}\n\n\t\t/* The square 2nd+ harmonics tables */\n\t\ttable = this->h_tables[BLO_SQUARE][1];\n\t\tfor (h=2; h<BLO_N_HARMONICS; h++) {\n\t\t\tif (h % 2 == 0) {\n\t\t\t\t/* Even harmonic - add no partials */\n\t\t\t\tthis->h_tables[BLO_SQUARE][h] = table;\n\t\t\t} else {\n\t\t\t\t/* Odd harmonic add sin(hp)/h */\n\t\t\t\ttable = BLO_NEXT_TABLE;\n\t\t\t\tthis->h_tables[BLO_SQUARE][h] = table;\n\t\t\t}\n\t\t}\n\n\t\t/* The saw 2nd+ harmonics tables */\n\t\tfor (h=2; h<BLO_N_HARMONICS; h++) {\n\t\t\t/* All harmonics add sin(hp)/h */\n\t\t\ttable = BLO_NEXT_TABLE;\n\t\t\tthis->h_tables[BLO_SAW][h] = table;\n\t\t}\n\n\t\treturn this;\n\t} else if ((shm_fd = shm_open(shm_path, O_CREAT | O_RDWR, 0644)) > 0) {\n\t\t/* There is no existing SHM segment, but we can make one */\n\t\tint err = ftruncate(shm_fd, all_tables_size);\n\n\t\tif (!err) {\n\t\t\tall_tables = mmap(0, all_tables_size, PROT_READ | PROT_WRITE,\n\t\t\t\t\tMAP_SHARED, shm_fd, 0);\n\t\t}\n\t\tclose(shm_fd);\n\t}\n#endif\n\n\t/* Fallback case, can't map a SHM segment, just malloc it and suffer */\n\tif (!all_tables) {\n\t\tall_tables = malloc(all_tables_size);\n\t\tthis->store_type = BLO_MALLOC;\n\t}\n\tthis->alloc_space = all_tables;\n\n\t/* Calculate the harmonic amplitudes and place the index pointers */\n\n\t/* Make a zero harmonics table (trivial) */\n\ttable = BLO_NEXT_TABLE;\n\tfor (i=0; i<table_size + BLO_TABLE_WR; i++) {\n\t\ttable[i] = 0.0f;\n\t}\n\tfor (i=0; i<BLO_N_WAVES; i++) {\n\t\tthis->h_tables[i][0] = table;\n\t}\n\n\t/* Make a 1st harmonic table (trivial) */\n\ttable = BLO_NEXT_TABLE;\n\tfor (i=0; i<table_size + BLO_TABLE_WR; i++) {\n\t\ttable[i] = BLO_SIN_GEN((float)i);\n\t}\n\tfor (i=0; i<BLO_N_WAVES; i++) {\n\t\tthis->h_tables[i][1] = table;\n\t}\n\n\t/* Make the sin 2nd+ harmonics tables (trivial) */\n\tfor (h=2; h<BLO_N_HARMONICS; h++) {\n\t\tthis->h_tables[BLO_SINE][h] = table;\n\t}\n\n\t/* Make the tri 2nd+ harmonics tables */\n\ttable = this->h_tables[BLO_TRI][1];\n\tfor (h=2; h<BLO_N_HARMONICS; h++) {\n\t\tif (h % 2 == 0) {\n\t\t\t/* Even harmonic - add no partials */\n\t\t\tthis->h_tables[BLO_TRI][h] = table;\n\t\t} else {\n\t\t\tfloat sign = 1.0f;\n\t\t\tif (h % 4 == 3) {\n\t\t\t\tsign = -1.0f;\n\t\t\t}\n\t\t\t/* Odd harmonic add sin(hp)/h^2 */\n\t\t\ttable = BLO_NEXT_TABLE;\n\t\t\tthis->h_tables[BLO_TRI][h] = table;\n\t\t\tfor (i=0; i<table_size + BLO_TABLE_WR; i++) {\n\t\t\t\ttable[i] = this->h_tables[BLO_TRI][h - 1][i] +\n\t\t\t\t sign * BLO_SIN_GEN((float)i * (float)h) /\n\t\t\t\t ((float)h * (float) h);\n\t\t\t}\n\t\t}\n\t}\n\n\t/* Make the square 2nd+ harmonics tables */\n\ttable = this->h_tables[BLO_SQUARE][1];\n\tfor (h=2; h<BLO_N_HARMONICS; h++) {\n\t\tif (h % 2 == 0) {\n\t\t\t/* Even harmonic - add no partials */\n\t\t\tthis->h_tables[BLO_SQUARE][h] = table;\n\t\t} else {\n\t\t\t/* Odd harmonic add sin(hp)/h */\n\t\t\ttable = BLO_NEXT_TABLE;\n\t\t\tthis->h_tables[BLO_SQUARE][h] = table;\n\t\t\tfor (i=0; i<table_size + BLO_TABLE_WR; i++) {\n\t\t\t\ttable[i] =\n\t\t\t       \t this->h_tables[BLO_SQUARE][h - 1][i] +\n\t\t\t\t BLO_SIN_GEN((float)i * (float)h) / (float)h;\n\t\t\t}\n\t\t}\n\t}\n\n\t/* Make the saw 2nd+ harmonics tables */\n\tfor (h=2; h<BLO_N_HARMONICS; h++) {\n\t\t/* All harmonics add sin(hp)/h */\n\t\ttable = BLO_NEXT_TABLE;\n\t\tthis->h_tables[BLO_SAW][h] = table;\n\t\tfor (i=0; i<table_size + BLO_TABLE_WR; i++) {\n\t\t\ttable[i] = this->h_tables[BLO_SAW][h - 1][i] +\n\t\t\t BLO_SIN_GEN((float)i * (float)h) / (float)h;\n\t\t}\n\t}\n\n\t/* Normalise table levels */\n\tfor (h=1; h<table_count; h++) {\n\t\ttable = all_tables + (h * (table_size + BLO_TABLE_WR));\n\t\tmax = 0.0f;\n\t\tfor (i=0; i<table_size; i++) {\n\t\t\tif (fabs(table[i]) > max) {\n\t\t\t\tmax = fabs(table[i]);\n\t\t\t}\n\t\t}\n\t\tmax = 1.0f / max;\n\t\tfor (i=0; i<table_size + BLO_TABLE_WR; i++) {\n\t\t\ttable[i] *= max;\n\t\t}\n\t}\n\n#ifndef _WIN32\n\tmsync(all_tables, all_tables_size, MS_ASYNC);\n#endif\n\n\treturn this;\n}\n\nvoid blo_h_tables_free(blo_h_tables *tables)\n{\n\tif (tables->store_type == BLO_MMAP) {\n#ifndef _WIN32\n\t\tmunmap(tables->alloc_space, tables->alloc_size);\n#endif\n\t} else {\n\t\tfree(tables->alloc_space);\n\t}\n\tfree(tables);\n}\n\nblo_h_osc *blo_h_new(blo_h_tables *tables, unsigned int wave, float sample_rate)\n{\n\tblo_h_osc *this = malloc(sizeof(blo_h_osc));\n\n\tthis->tables = tables;\n\tthis->wave = wave;\n\tthis->sample_rate = sample_rate;\n\tthis->nyquist = sample_rate * 0.49f;\n\tthis->ph.all = 0;\n\tthis->ph_coef = ((float)(tables->table_size) * 65536.0f) / sample_rate;\n\tthis->ph_mask = tables->table_size * 65536 - 1;\n\tthis->table_mask = tables->table_mask;\n\tthis->table_size = tables->table_size;\n\tthis->table = tables->h_tables[0][0];\n\tthis->table_b = tables->h_tables[0][0];\n\n\treturn this;\n}\n\nvoid blo_h_free(blo_h_osc *osc)\n{\n\tfree(osc);\n}\n"
  },
  {
    "path": "util/blo.h",
    "content": "/*\n    Copyright (C) 2002 Steve Harris <steve@plugin.org.uk>\n\n    This program is free software; you can redistribute it and/or modify\n    it under the terms of the GNU General Public License as published by\n    the Free Software Foundation; either version 2 of the License, or\n    (at your option) any later version.\n\n    This program is distributed in the hope that it will be useful,\n    but WITHOUT ANY WARRANTY; without even the implied warranty of\n    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n    GNU General Public License for more details.\n\n    You should have received a copy of the GNU General Public License\n    along with this program; if not, write to the Free Software\n    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.\n*/\n\n#include <math.h>\n#include <stdio.h>\n#ifndef _MSC_VER\n#include <unistd.h>\n#endif\n\n#include \"ladspa-util.h\"\n\n#define BLO_N_WAVES 4\n#define BLO_SINE    0\n#define BLO_TRI     1\n#define BLO_SQUARE  2\n#define BLO_SAW     3\n\n#define BLO_MMAP    0\n#define BLO_MALLOC  1\n\n#ifndef BLO_N_HARMONICS\n#define BLO_N_HARMONICS 64\n#endif\n\n/* The wraparaound off the end of the basic wavetable, used by the\n * interpolators. */\n#define BLO_TABLE_WR 4\n\n#define BLO_SIN_GEN(phase) sin((phase) * 2.0f * (float)M_PI / table_size_f)\n#define BLO_NEXT_TABLE     (all_tables + (table_count++ * (table_size + BLO_TABLE_WR)))\n\ntypedef struct {\n\tfloat *h_tables[BLO_N_WAVES][BLO_N_HARMONICS];\n\tfloat *alloc_space;\n\tsize_t alloc_size;\n\tint table_size;\n\tint table_mask;\n\tint store_type;\n} blo_h_tables;\n\ntypedef union {\n\tint all;\n\tstruct {\n\t\tunsigned short fr;\n\t\tshort in;\n\t} part;\n} blo_fixp;\n\ntypedef struct {\n\tblo_h_tables *tables;\n\tfloat sample_rate;\n\tfloat nyquist;\n\tunsigned int wave;\n\tblo_fixp ph;\n\tblo_fixp om;\n\tfloat ph_coef;\n\tint ph_mask;\n\tint table_mask;\n\tint table_size;\n\tint topbit;\n\tfloat *table;\n\tfloat *table_b;\n\tfloat xfade;\n} blo_h_osc;\n\nblo_h_tables *blo_h_tables_new(int table_size);\n\nvoid blo_h_tables_free(blo_h_tables *tables);\n\nblo_h_osc *blo_h_new(blo_h_tables *tables, unsigned int wave,\n\t       \tfloat sample_rate);\n\nvoid blo_h_free(blo_h_osc *osc);\n\n/* Set frequency for static oscilator, less cycles, but won't modulate as well\n * You can't use blo_osc_hd_run_* until you've called the _hd version of this\n * function.\n */\n\nstatic inline void blo_hs_set_freq(blo_h_osc *this, const float f)\n{\n\tunsigned int tab_num;\n\tconst float ff = fabs(f) + 0.00001f; // Prevent div by zero\n\n\t// This needs to be a cast, no idea why\n\tthis->om.all = (int)(f * this->ph_coef);\n\ttab_num = f_round(this->nyquist / ff - 0.5f);\n\tif (tab_num >= BLO_N_HARMONICS) {\n\t\ttab_num = BLO_N_HARMONICS - 1;\n\t}\n\tthis->table_b = this->tables->h_tables[this->wave][tab_num];\n}\n\n/* Set frequency for dynamic oscilator, can only used with _hd run calls.\n */\n\nstatic inline void blo_hd_set_freq(blo_h_osc *this, const float f)\n{\n\tint tab_num;\n\tconst float ff = fabs(f) + 0.00001f; // Prevent div by zero\n\n\tthis->om.all = f_round(f * this->ph_coef);\n\ttab_num = f_abs(f_round(this->nyquist / ff - 0.5f));\n\tif (tab_num >= BLO_N_HARMONICS) {\n\t\ttab_num = BLO_N_HARMONICS - 1;\n\t} else if (tab_num < 0) {\n\t\ttab_num = 0;\n\t}\n\tthis->table = this->tables->h_tables[this->wave][tab_num];\n\tthis->xfade = this->nyquist / ff - tab_num;\n\tif (this->xfade > 1.0f) {\n\t\tthis->xfade = 1.0f;\n\t}\n\tif (--tab_num < 0) {\n\t\ttab_num = 0;\n\t}\n\tthis->table_b = this->tables->h_tables[this->wave][tab_num];\n}\n\n/* Run static oscilator, returns amplitude for current phase and advances the\n * phase. Uses linear interpoation */\n\nstatic inline float blo_hs_run_lin(blo_h_osc *this)\n{\n\tconst float frac = (float)(this->ph.part.fr) * 0.00001525878f;\n\tconst int idx = this->ph.part.in;\n\n\tthis->ph.all += this->om.all;\n\tthis->ph.all &= this->ph_mask;\n\tif (this->topbit != (this->ph.all & this->table_size)) {\n\t\tthis->topbit = this->ph.all & this->table_size;\n\t\tthis->table = this->table_b;\n\t}\n\n\treturn this->table[idx] * (1.0f - frac) + this->table[idx+1] * frac;\n}\n\n/* Run static oscilator, returns amplitude for current phase and advances the\n * phase. Uses cubic interpoation */\n\nstatic inline float blo_hs_run_cub(blo_h_osc *this)\n{\n\tconst float frac = (float)(this->ph.part.fr) * 0.00001525878f;\n\tconst int idx = this->ph.part.in;\n\tfloat *t = this->table;\n\n\tthis->ph.all += this->om.all;\n\tthis->ph.all &= this->ph_mask;\n\n\tif (this->topbit != (this->ph.all & this->table_size)) {\n\t\tthis->topbit = this->ph.all & this->table_size;\n\t\tthis->table = this->table_b;\n\t\tt = this->table_b;\n\t}\n\n\treturn cube_interp(frac, t[idx], t[idx+1], t[idx+2], t[idx+3]);\n}\n\n/* Run dynamic oscilator, returns amplitude for current phase and advances the\n * phase, ensures harmonics won't suddently pop into existence, takes more\n * cycles and has slightly less high frequency partials than the static\n * version */\n\nstatic inline float blo_hd_run_lin(blo_h_osc * const this)\n{\n\tfloat low, high;\n\tconst float frac = (float)(this->ph.part.fr) * 0.00001525878f;\n\tconst int idx = this->ph.part.in;\n\n\tthis->ph.all += this->om.all;\n\tthis->ph.all &= this->ph_mask;\n\n\tlow = LIN_INTERP(frac, this->table_b[idx], this->table_b[idx+1]);\n\thigh = LIN_INTERP(frac, this->table[idx], this->table[idx+1]);\n\n\treturn LIN_INTERP(this->xfade, low, high);\n}\n\n/* Run dynamic oscilator, returns amplitude for current phase and advances the\n * phase, ensures harmonics won't suddently pop into existence, takes more\n * cycles and has slightly less high frequency partials than the static\n * version. This one uses cubic interpolation. */\n\nstatic inline float blo_hd_run_cub(blo_h_osc * const this)\n{\n\tfloat low, high;\n\tconst float frac = (float)(this->ph.part.fr) * 0.00001525878f;\n\tconst int idx = this->ph.part.in;\n\tconst float *tl = this->table_b;\n\tconst float *th = this->table;\n\n\n\tthis->ph.all += this->om.all;\n\tthis->ph.all &= this->ph_mask;\n\n\tlow = cube_interp(frac, tl[idx], tl[idx+1], tl[idx+2], tl[idx+3]);\n\thigh = cube_interp(frac, th[idx], th[idx+1], th[idx+2], th[idx+3]);\n\n\treturn LIN_INTERP(this->xfade, low, high);\n}\n"
  },
  {
    "path": "util/buffer.c",
    "content": ""
  },
  {
    "path": "util/buffer.h",
    "content": "#ifndef _BUFFER_H\n#define _BUFFER_H\n\n/* subtract buffer b from a, save in c\n *\n * this could be sped up by vector operations\n */\n\nstatic inline void buffer_sub(const float* a, const float *b, float *c, int cnt) {\n\tint i;\n\tfor(i=0;i<cnt;++i)\n\t\t*c++ = *a++ - *b++;\n}\n\n#endif\n"
  },
  {
    "path": "util/db.c",
    "content": "#include <stdio.h>\n#include <math.h>\n\n#include \"db.h\"\n\nfloat db_data[DB_TABLE_SIZE];\nfloat lin_data[LIN_TABLE_SIZE];\n\nvoid db_init()\n{\n\tunsigned int i;\n\n\tfor (i=0; i<LIN_TABLE_SIZE; i++) {\n\t\tlin_data[i] = powf(10.0f, ((DB_MAX - DB_MIN) *\n\t\t   \t(float)i/(float)LIN_TABLE_SIZE + DB_MIN) / 20.0f);\n\t}\n\n\tfor (i=0; i<DB_TABLE_SIZE; i++) {\n\t\tdb_data[i] = 20.0f * log10f((LIN_MAX - LIN_MIN) *\n\t\t\t(float)i/(float)DB_TABLE_SIZE + LIN_MIN);\n\t}\n}\n"
  },
  {
    "path": "util/db.h",
    "content": "#ifndef _DB_H\n#define _DB_H\n\n#include \"../ladspa-util.h\"\n\nvoid db_init();\nstatic inline float f_lin2db_cube(float lin);\nstatic inline float f_db2lin_cube(float db);\nstatic inline float f_lin2db_lerp(float lin);\nstatic inline float f_db2lin_lerp(float db);\n\nextern float db_data[];\nextern float lin_data[];\n\n#define DB_TABLE_SIZE 1024\n#define DB_MIN -60.0f\n#define DB_MAX 24.0f\n#define LIN_TABLE_SIZE 1024\n#define LIN_MIN 0.0000000002f\n#define LIN_MAX 9.0f\n\n#ifdef DB_DEFAULT_CUBE\n#define db2lin(a) f_db2lin_cube(a)\n#define lin2db(a) f_lin2db_cube(a)\n#else\n#define db2lin(a) f_db2lin_lerp(a)\n#define lin2db(a) f_lin2db_lerp(a)\n#endif\n\nstatic inline float f_db2lin_cube(float db)\n{\n\tfloat scale = (db - DB_MIN) * (float)LIN_TABLE_SIZE / (DB_MAX - DB_MIN);\n\tint base = f_round(scale - 0.5f);\n\tfloat ofs = scale - base;\n\n\tif (base < 1) {\n\t\treturn 0.0f;\n\t} else if (base > LIN_TABLE_SIZE - 3) {\n\t\treturn lin_data[LIN_TABLE_SIZE - 2];\n\t}\n\treturn cube_interp(ofs, lin_data[base-1], lin_data[base], lin_data[base+1], lin_data[base+2]);\n}\n\nstatic inline float f_db2lin_lerp(float db)\n{\n\tfloat scale = (db - DB_MIN) * (float)LIN_TABLE_SIZE / (DB_MAX - DB_MIN);\n\tint base = f_round(scale - 0.5f);\n\tfloat ofs = scale - base;\n\n\tif (base < 1) {\n\t\treturn 0.0f;\n\t} else if (base > LIN_TABLE_SIZE - 3) {\n\t\treturn lin_data[LIN_TABLE_SIZE - 2];\n\t}\n\treturn (1.0f - ofs) * lin_data[base] + ofs * lin_data[base+1];\n}\n\nstatic inline float f_lin2db_cube(float lin)\n{\n\tfloat scale = (lin - LIN_MIN) * (float)DB_TABLE_SIZE / (LIN_MAX - LIN_MIN);\n\tint base = f_round(scale - 0.5f);\n\tfloat ofs = scale - base;\n\n\tif (base < 2) {\n\t\treturn db_data[2] * scale * 0.5f - 23 * (2.0f - scale);\n\t} else if (base > DB_TABLE_SIZE - 3) {\n\t\treturn db_data[DB_TABLE_SIZE - 2];\n\t}\n\treturn cube_interp(ofs, db_data[base-1], db_data[base], db_data[base+1], db_data[base+2]);\n}\n\nstatic inline float f_lin2db_lerp(float lin)\n{\n\tfloat scale = (lin - LIN_MIN) * (float)DB_TABLE_SIZE / (LIN_MAX - LIN_MIN);\n\tint base = f_round(scale - 0.5f);\n\tfloat ofs = scale - base;\n\n\tif (base < 2) {\n\t\treturn db_data[2] * scale * 0.5f - 23.0f * (2.0f - scale);\n\t} else if (base > DB_TABLE_SIZE - 2) {\n\t\treturn db_data[DB_TABLE_SIZE - 1];\n\t}\n\treturn (1.0f - ofs) * db_data[base] + ofs * db_data[base+1];\n}\n\n#endif\n"
  },
  {
    "path": "util/iir.c",
    "content": "/*\n * iir.c\n * Copyright (C) 2000-2003 Alexander Ehlert\n *\n * This program is free software; you can redistribute it and/or modify\n * it under the terms of the GNU General Public License as published by\n * the Free Software Foundation; either version 2 of the License, or\n * (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program; if not, write to the Free Software\n * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n *\n * A port of my glame lowpass/highpass/bandpass filters due to public demand in #lad\n * Try out the original at glame.sourceforge.net ;-)\n */\n\n#include <string.h>\n#include \"../config.h\"\n#include <math.h>\n#include <stdlib.h>\n#include \"iir.h\"\n\t\n/* To get better filter accuracy I decided to compute the single\n * stages of the filter seperatly and apply them one by one \n * to the sample data. According to the DSPGUIDE chapter 20 pp339\n * filters are more stable when applied in stages.\n * Who doesn't like that can still combine\n * all stages to one stage by just convoluting the single stages. \n * But in the moment it's up to the user that he knows what he's doing. \n * float accuracy can't be enough for certain parameters.\n */\n\n#define DPRINTF(x)\n\n/* (hopefully) generic description of an iir filter */\n\n\n\niir_stage_t *init_iir_stage(int mode, int nstages, int na, int nb){\n\tiir_stage_t *dum=NULL;\n\tint i;\n\tif ((dum=ALLOCN(1,iir_stage_t))){\n\t\tdum->mode=mode;\n\t\tdum->nstages=0;\n\t\tdum->availst=nstages;\n\t\tdum->na=na;\n\t\tdum->nb=nb;\n\t\tdum->fc=-1.0;\n\t\tdum->coeff=(gliirt **)malloc(nstages*sizeof(gliirt *));\n\t\tfor(i=0;i<nstages;i++)\n\t\t\tdum->coeff[i]=(gliirt *)malloc((na+nb)*sizeof(gliirt));\n\t}\n\treturn dum;\n}\n\n/* be sure to combine stages with some na, nb count! */\nvoid combine_iir_stages(int mode, iir_stage_t* gt, iir_stage_t *first, iir_stage_t *second, int upf, int ups){\n\tint stages, i, j, cnt;\n\t\n\tif ( (upf==-1) && (ups==-1))\n\t\treturn;\n\n\tstages = first->nstages + second->nstages;\n\tgt->nstages = stages;\n\n\tcnt = first->na + first->nb;\n\t\n\t/* copy coefficients */\n\tif (upf!=-1) \n\t\tfor(i=0; i<first->nstages; i++)\n\t\t\tfor(j=0; j<cnt; j++)\n\t\t\t\tgt->coeff[i][j]=first->coeff[i][j];\n\n\tif (ups!=-1)\n\t\tfor(i=first->nstages; i<stages; i++)\n\t\t\tfor(j=0; j<cnt; j++)\n\t\t\t\tgt->coeff[i][j]=second->coeff[i-first->nstages][j];\n}\n\nvoid free_iir_stage(iir_stage_t *gt){\n\tint i;\n\tfor(i=0;i<gt->availst;i++)\n\t\tif (gt->coeff[i]) free(gt->coeff[i]);\n\tif (gt->coeff) free(gt->coeff);\n\tif (gt) free(gt);\n}\n\n/* center: frequency already normalized between 0 and 0.5 of sampling\n * bandwidth given in octaves between lower and upper -3dB point\n */\n\nvoid calc_2polebandpass(iirf_t* iirf, iir_stage_t* gt, float fc, float bw, long sample_rate)\n{\n\tdouble omega, alpha, bandwidth, center, gain;\n\tint i;\n\t\n\tif ( (gt->fc==fc) && (gt->bw==bw) )\n\t\treturn;\n\n\t/*reset_iirf_t(iirf, gt,  1);*/\n\tgt->fc = fc;\n\tgt->bw = bw;\n\tgt->nstages = 1;\n\n\tfc = CLAMP(fc, 0.0, (float)sample_rate*0.45f); /* if i go all the way up to 0.5 it doesn't work */\n\t\t\n\tcenter = fc/(float)sample_rate;\n\t/* bandwidth is given in octaves */\n\tbandwidth = log((fc+bw*0.5)/MAX(fc-bw*0.5,0.01))/log(2.0);\n\n\tomega = 2.0*M_PI*center;\n\talpha = sin(omega)*sinh(log(2.0)/2.0*bandwidth*omega/sin(omega));\n\n\tgt->coeff[0][0] = alpha;\n\tgt->coeff[0][1] = 0.0;\n\tgt->coeff[0][2] = -alpha;\n\tgt->coeff[0][3] = 2.0 * cos(omega);\n\tgt->coeff[0][4] = alpha - 1.0;\n\tgain = 1.0 + alpha;\n\tfor(i=0;i<5;i++)\n\t\tgt->coeff[0][i]/=gain;\n}\n\n/* chebyshev calculates coefficients for a chebyshev filter\n * a,b coefficients\n * n   number of poles(2,4,6,...)\n * m   0..lowpass, 1..highpass\n * fc  cutoff frequency in percent of samplerate\n * pr  percent ripple in passband (0.5 is optimal)\n *\n * Code from DSPGUIDE Chapter 20, pp341 \n * online version http://www.dspguide.com\n */\n\n#define chebtype double\n\nint chebyshev_stage(iir_stage_t *gt, int n){\n\tchebtype h,rp,ip,es,kx,vx,t,w,m,d,k,gain;\n\tchebtype x[3], y[2], a[3], b[2];\n\tint res=-1,i;\n\t\n\tif (n>gt->availst)\n\t\tgoto _error;\n\tif (gt->na+gt->nb!=5)\n\t\tgoto _error;\n\t\n\th=M_PI/((chebtype)gt->np*2.0)+n*M_PI/(chebtype)gt->np;\n\trp=-cos(h);\n\tip=sin(h);\n\n\tif(gt->ppr>0.0) {\n\t\th=100.0/(100.0-gt->ppr);\n\t\tes=sqrt(h*h-1.0);\n\t\th=1.0/es;\n\t\tvx=1.0/(chebtype)gt->np*log(h+sqrt(h*h+1.0));\n\t\tkx=1.0/(chebtype)gt->np*log(h+sqrt(h*h-1.0));\n\t\tkx=(exp(kx)+exp(-kx))/2.0;\n\t\th=exp(vx);\n\t\trp*=(h-1.0/h)*0.5/kx;\n\t\tip*=(h+1.0/h)*0.5/kx;\n\t}\n\n\tt=2.0*tan(0.5);\n\tw=2.0*M_PI*gt->fc;\n\tm=rp*rp+ip*ip;\n\td=4.0-4.0*rp*t+m*t*t;\n\tx[0]=t*t/d;\n\tx[1]=2*x[0];\n\tx[2]=x[0];\n\ty[0]=(8.0-2.0*m*t*t)/d;\n\ty[1]=(-4.0-4.0*rp*t-m*t*t)/d;\n\n\tif (gt->mode==IIR_STAGE_HIGHPASS)\n\t\tk=-cos(w*0.5+0.5)/cos(w*0.5-0.5);\n\telse\n\t\tk=sin(0.5-w*0.5)/sin(0.5+w*0.5);\n\td=1+y[0]*k-y[1]*k*k;\n\ta[0]=(x[0]-x[1]*k+x[2]*k*k)/d;\n\ta[1]=(-2.0*x[0]*k+x[1]+x[1]*k*k-2.0*x[2]*k)/d;\n\ta[2]=(x[0]*k*k-x[1]*k+x[2])/d;\n\tb[0]=(2.0*k+y[0]+y[0]*k*k-2.0*y[1]*k)/d;\n\tb[1]=(-k*k-y[0]*k+y[1])/d;\n\tif(gt->mode==IIR_STAGE_HIGHPASS){\n\t\ta[1]=-a[1];\n\t\tb[0]=-b[0];\n\t}\n\n\tif(gt->mode==IIR_STAGE_HIGHPASS)\n\t\tgain=(a[0]-a[1]+a[2])/(1.0+b[0]-b[1]);\n\telse\n\t\tgain=(a[0]+a[1]+a[2])/(1.0-b[0]-b[1]);\n\tfor(i=0;i<3;i++) a[i]/=gain;\n\n\tgt->coeff[n][0]=(gliirt)(a[0]);\n\tgt->coeff[n][1]=(gliirt)(a[1]);\n\tgt->coeff[n][2]=(gliirt)(a[2]);\n\tgt->coeff[n][3]=(gliirt)(b[0]);\n\tgt->coeff[n][4]=(gliirt)(b[1]);\n\t\n\tres=0;\n_error:\n\treturn res;\n}\n\nint chebyshev(iirf_t* iirf, iir_stage_t* gt, int n, int mode, float fc, float pr){\n\tint i;\n\t\n\tif ( (gt->fc==fc) && (gt->np==n) && (gt->ppr=pr) )\n\t\treturn -1;\n\n\tif (n%2!=0)\n\t\treturn -1;\n\t\t\n\tif ((mode!=IIR_STAGE_HIGHPASS) && (mode!=IIR_STAGE_LOWPASS))      \n\t\treturn -1;\t\n\t\n\tfc=CLAMP(fc, 0.0001f, 0.4999f);\n\n\tif ((n/2)>gt->nstages)\n\t\treset_iirf_t(iirf,gt,n/2);\n\t\n\tgt->ppr=pr;\n\tgt->fc=fc;\n\tgt->np=n;\n\tgt->nstages=n/2;\n\tfor(i=0;i<n/2;i++)\n\t\tchebyshev_stage(gt,i);\t\n\n\treturn 0;\n}\t\n"
  },
  {
    "path": "util/iir.h",
    "content": "#ifndef IIR_H\n#define IIR_H\n\n#include <ladspa-util.h>\n\n/* header file for IIR framework */\n\ntypedef struct iir_stage iir_stage_t;\ntypedef struct iirf iirf_t;\n// defines this to float if your brave and you'll see what happens..\n#define gliirt float\n#define CLAMP(x,mi,ma) ( (x < mi) ? mi : ( (x>ma) ? ma : x))\n#ifndef MIN\n#define MIN(a, b) ((a)<(b)?(a):(b))\n#endif\n#ifndef MAX\n#define MAX(a, b) ((a)>(b)?(a):(b))\n#endif\n/* alloc zeroed mem, malloc/calloc syntax. */\n#define ALLOC(type) (type *)calloc(1, sizeof(type))\n#define ALLOCN(n, type) (n == 0 ? NULL : (type *)calloc((n), sizeof(type)))\n\n/* supported filter modes by lib */\n#define IIR_STAGE_LOWPASS    0\n#define IIR_STAGE_HIGHPASS   1\n#define IIR_STAGE_BANDPASS   2\n#define IIR_STAGE_BANDPASS_A 3\n\nstruct iir_stage {\n\tint np;\t\t/* Number of poles */\n\tint mode;\t/* Filter mode low/high/bandpass... */\n\tint availst;    /* Number of allocated stages */\n\tint nstages;\t/* Number of active filterstages */\n\tint na;\t\t/* number of a coefficients per stage */\n\tint nb;\t\t/* number of b coefficients per stage */\n\tgliirt fc;\t/* cutoff/center frequency */\n\tgliirt bw;\t/* bandwidth for bandpass */\n\tgliirt ppr;\t/* percent of ripple in passband */\n\tgliirt spr;\t/* percent of ripple in stopband */\n\tgliirt **coeff;\t/* Actual filter coefficients */\n};\n\nstruct iirf {\n\tgliirt *iring;\n\tgliirt *oring;\n\tint\tipos;\n\tint\topos;\n};\n// allocate ringbuffers for iir calculation\nstatic inline iirf_t* init_iirf_t(iir_stage_t* gt) {\n\tint i;\n\tiirf_t* iirf=ALLOCN(gt->availst,iirf_t);\n\t\n\tfor(i=0;i<gt->availst;i++){\n\t\tiirf[i].iring=ALLOCN(gt->na,gliirt);\n\t\tiirf[i].oring=ALLOCN(gt->nb+1,gliirt);\n\t\tiirf[i].ipos=0;\n\t\tiirf[i].opos=0;\n\t}\n\n\treturn iirf;\n};\n\nstatic inline void free_iirf_t(iirf_t* iirf, iir_stage_t* gt) {\n\tint i;\n\tfor(i=0;i<gt->availst;i++){\n\t\tif (iirf[i].iring) free(iirf[i].iring);\n\t\tif (iirf[i].oring) free(iirf[i].oring);\n\t}\n\tif (iirf) free(iirf);\n};\n\nstatic inline void reset_iirf_t(iirf_t* iirf, iir_stage_t* gt, int n) {\n\tint i;\n\tfor(i=0;i<n; ++i) {\n\t\tmemset(iirf[i].iring, 0, sizeof(gliirt)*gt->na);\n\t\tmemset(iirf[i].oring, 0, sizeof(gliirt)*(gt->nb+1));\n\t}\n};\n\niir_stage_t *init_iir_stage(int mode, int nstages, int na, int nb);\nvoid combine_iir_stages(int mode, iir_stage_t* gt, iir_stage_t *first, iir_stage_t *second, int upf, int ups);\nvoid free_iir_stage(iir_stage_t *gt);\nvoid calc_2polebandpass(iirf_t* iirf, iir_stage_t* gt, float fc, float bw, long sample_rate);\n// for chebyshev we need iir stages with na=3, nb=2\n// na are the forward coefficients\n// nb are the recursive coefficients\nint chebyshev(iirf_t* iirf, iir_stage_t* gt, int n, int mode, float fc, float pr);\n\n/* calculate butterworth coefficients\n * coefficient calculation taken from http://musicdsp.org/showArchiveComment.php?ArchiveID=38\n * mode = 0 -> lowpass\n * mode !=0 -> highpass\n * \n * f -> cutoff frequency\n * r -> resonance \n */\n\nstatic inline void butterworth_stage(iir_stage_t *gt, int mode, float f, float r, long sample_rate)\n{\n\tfloat c, a1, a2, a3, b1, b2;\n\t\n\t/* lowpass coefficients */\n\n\tif (mode==0) {\n\t\tc = 1.0f / tan(M_PI * f / sample_rate ) ;\n\n\t\ta1 = 1.0f / ( 1.0f + r * c + c * c);\n\t\ta2 = 2.0f * a1;\n\t\ta3 = a1;\n\t\tb1 = -2.0f * ( 1.0f - c*c) * a1;\n\t\tb2 = -( 1.0f - r * c + c * c) * a1;\n\t} else {\n\t/* highpass coefficients */\n\t\tc = tan(M_PI * f / sample_rate );\n\n\t\ta1 = 1.0f / ( 1.0f + r * c + c * c);\n\t\ta2 = -2.0f*a1;\n\t\ta3 = a1;\n\t\tb1 = -2.0f * ( c*c - 1.0f) * a1;\n\t\tb2 = -( 1.0f - r * c + c * c) * a1;\n\t}\n\t\n\tgt->fc = f;\n\tgt->nstages = 1;\n\t\n\tgt->coeff[0][0] = a1;\n\tgt->coeff[0][1] = a2;\n\tgt->coeff[0][2] = a3;\n\tgt->coeff[0][3] = b1;\n\tgt->coeff[0][4] = b2;\n};\n\n/* process function */\nstatic inline void iir_process_buffer(iirf_t* iirf, iir_stage_t* gt, const float *indata, float *outdata, const long numSampsToProcess, int add) {\n\tunsigned long pos;\n\tint i,nb,nt,j,z,ipos,opos;\n\n\tif(gt->nstages==0) {\n\t\tif (indata==outdata)\n\t\t\treturn;\n\t\tmemcpy(outdata, indata, numSampsToProcess*sizeof(float));\n\t\treturn;\n\t}\n\n\tnb=gt->nb+1;\n\tnt=gt->na+gt->nb;\n\n\tipos = iirf[0].ipos;\n\topos = iirf[0].opos;\n\n\tif (add==0) \n\t\tfor(pos=0; pos<numSampsToProcess; pos++) {\n\t\t\tiirf[0].iring[ipos]=indata[pos];\n\t\t\tfor(i=0;i<gt->nstages;i++){\n\t\t\t\tif (i>0)\n\t\t\t\t\tiirf[i].iring[ipos]=iirf[i-1].oring[opos];\n\t\t\t\tiirf[i].oring[opos]=0.0;\n\t\t\t\t/* y[n]=a0*x[n]+a1*x[n-1]+... */\n\t\t\t\tz=ipos;\n\t\t\t\tfor(j=0;j<gt->na;j++){\n\t\t\t\t\tif(z==-1)\n\t\t\t\t\t\tz=gt->na-1;\n\t\t\t\t\tiirf[i].oring[opos]+=gt->coeff[i][j]*iirf[i].iring[z--];\n\t\t\t\t}\n\t\t\t\t/* y[n]=y[n]+b1*y[n-1]+b2*y[n-2]+... */\n\t\t\t\tz=opos-1;\n\t\t\t\tfor(j=gt->na;j<nt;j++){\n\t\t\t\t\tif (z==-1)\n\t\t\t\t\t\tz=gt->nb;\n\t\t\t\t\tiirf[i].oring[opos]+=gt->coeff[i][j]*iirf[i].oring[z--];\n\t\t\t\t}\n\t\t\t}\n\t\t\t/* No matter if we process it in place */\n\t\t\toutdata[pos]=(float)iirf[gt->nstages-1].oring[opos];\n\t\t\t\n\t\t\t/* Adjust ringbuffers */\n\t\t\tipos++;\n\t\t\tif (ipos==gt->na)\n\t\t\t\tipos=0;\n\t\t\topos++;\n\t\t\tif (opos==nb)\n\t\t\t\topos=0;\t\n\t\t}\n\telse\n\t\tfor(pos=0; pos<numSampsToProcess; pos++) {\n\t\t\tiirf[0].iring[ipos]=indata[pos];\n\t\t\tfor(i=0;i<gt->nstages;i++){\n\t\t\t\tif (i>0)\n\t\t\t\t\tiirf[i].iring[ipos]=iirf[i-1].oring[opos];\n\t\t\t\tiirf[i].oring[opos]=0.0;\n\t\t\t\t/* y[n]=a0*x[n]+a1*x[n-1]+... */\n\t\t\t\tz=ipos;\n\t\t\t\tfor(j=0;j<gt->na;j++){\n\t\t\t\t\tif(z==-1)\n\t\t\t\t\t\tz=gt->na-1;\n\t\t\t\t\tiirf[i].oring[opos]+=gt->coeff[i][j]*iirf[i].iring[z--];\n\t\t\t\t}\n\t\t\t\t/* y[n]=y[n]+b1*y[n-1]+b2*y[n-2]+... */\n\t\t\t\tz=opos-1;\n\t\t\t\tfor(j=gt->na;j<nt;j++){\n\t\t\t\t\tif (z==-1)\n\t\t\t\t\t\tz=gt->nb;\n\t\t\t\t\tiirf[i].oring[opos]+=gt->coeff[i][j]*iirf[i].oring[z--];\n\t\t\t\t}\n\t\t\t}\n\t\t\t/* Now it matters if we process it in place */\n\t\t\toutdata[pos]+=(float)iirf[gt->nstages-1].oring[opos];\n\t\t\t\n\t\t\t/* Adjust ringbuffers */\n\t\t\tipos++;\n\t\t\tif (ipos==gt->na)\n\t\t\t\tipos=0;\n\t\t\topos++;\n\t\t\tif (opos==nb)\n\t\t\t\topos=0;\t\n\t\t}\n\n\tiirf[0].ipos = ipos;\n\tiirf[0].opos = opos;\n};\n\n/* process function for 3a and 2b coeffs */\nstatic inline void iir_process_buffer_1s_5(iirf_t* iirf, iir_stage_t* gt, const float *indata, \n\t\t\t\t\t   float *outdata, const long numSampsToProcess, int add) {\n\tunsigned long pos;\t\n\n\tif (add==0) \n\t\tfor(pos=0; pos<numSampsToProcess; pos++) {\n\t\t\tiirf[0].iring[0]=iirf[0].iring[1];\n\t\t\tiirf[0].iring[1]=iirf[0].iring[2];\n\t\t\tiirf[0].iring[2]=indata[pos];\n\t\t\tiirf[0].oring[0]=iirf[0].oring[1];\n\t\t\tiirf[0].oring[1]=iirf[0].oring[2];\n\t\t\t/* y[n]=a0*x[n]+a1*x[n-1]+... */\n\t\t\t/* y[n]=y[n]+b1*y[n-1]+b2*y[n-2]+... */\n\t\t\tiirf[0].oring[2] = flush_to_zero(gt->coeff[0][0]*iirf[0].iring[2] +\n\t\t\t\tgt->coeff[0][1]*iirf[0].iring[1] +\n\t\t\t\tgt->coeff[0][2]*iirf[0].iring[0] +\n\t\t\t\tgt->coeff[0][3]*iirf[0].oring[1] +\n\t\t\t\tgt->coeff[0][4]*iirf[0].oring[0]);\n\t\t\toutdata[pos]=(float)iirf[0].oring[2];\n\t\t}\n\telse\n\t\tfor(pos=0; pos<numSampsToProcess; pos++) {\n\t\t\tiirf[0].iring[0]=iirf[0].iring[1];\n\t\t\tiirf[0].iring[1]=iirf[0].iring[2];\n\t\t\tiirf[0].iring[2]=indata[pos];\n\t\t\tiirf[0].oring[0]=iirf[0].oring[1];\n\t\t\tiirf[0].oring[1]=iirf[0].oring[2];\n\t\t\t/* y[n]=a0*x[n]+a1*x[n-1]+... */\n\t\t\t/* y[n]=y[n]+b1*y[n-1]+b2*y[n-2]+... */\n\t\t\toutdata[pos] += iirf[0].oring[2] = flush_to_zero(gt->coeff[0][0]*iirf[0].iring[2] +\n\t\t\t\tgt->coeff[0][1]*iirf[0].iring[1] +\n\t\t\t\tgt->coeff[0][2]*iirf[0].iring[0] +\n\t\t\t\tgt->coeff[0][3]*iirf[0].oring[1] +\n\t\t\t\tgt->coeff[0][4]*iirf[0].oring[0]);\t\n\t\t}\n};\n\n/* process function */\nstatic inline void iir_process_buffer_ns_5(iirf_t* iirf, iir_stage_t* gt, const float *indata, float *outdata, const long numSampsToProcess, int add) {\n\tunsigned long pos;\n\tint i;\n\n\tif (add==0) \n\t\tfor(pos=0; pos<numSampsToProcess; pos++) {\n\t\t\tiirf[0].iring[0]=iirf[0].iring[1];\n\t\t\tiirf[0].iring[1]=iirf[0].iring[2];\n\t\t\tiirf[0].iring[2]=indata[pos];\n\n\t\t\tiirf[0].oring[0]=iirf[0].oring[1];\n\t\t\tiirf[0].oring[1]=iirf[0].oring[2];\n\t\t\t/* y[n]=a0*x[n]+a1*x[n-1]+... */\n\t\t\t/* y[n]=y[n]+b1*y[n-1]+b2*y[n-2]+... */\n\t\t\tiirf[0].oring[2] = flush_to_zero(gt->coeff[0][0]*iirf[0].iring[2] +\n\t\t\t\tgt->coeff[0][1]*iirf[0].iring[1] +\n\t\t\t\tgt->coeff[0][2]*iirf[0].iring[0] +\n\t\t\t\tgt->coeff[0][3]*iirf[0].oring[1] +\n\t\t\t\tgt->coeff[0][4]*iirf[0].oring[0]);\n\n\t\t\tfor(i=1;i<gt->nstages;i++){\t\t\t\t\n\t\t\t\tiirf[i].iring[0]=iirf[i].iring[1];\n\t\t\t\tiirf[i].iring[1]=iirf[i].iring[2];\t\t\t\t\n                iirf[i].iring[2]=iirf[i-1].oring[2];\n\n\t\t\t\tiirf[i].oring[0]=iirf[i].oring[1];\n\t\t\t\tiirf[i].oring[1]=iirf[i].oring[2];\n\t\t\t\t/* y[n]=a0*x[n]+a1*x[n-1]+... */\n\t\t\t\t/* y[n]=y[n]+b1*y[n-1]+b2*y[n-2]+... */\n\t\t\t\tiirf[i].oring[2] = \n\t\t\t\t\tflush_to_zero(gt->coeff[i][0]*iirf[i].iring[2] +\n                        gt->coeff[i][1]*iirf[i].iring[1] +\n                        gt->coeff[i][2]*iirf[i].iring[0] +\n                        gt->coeff[i][3]*iirf[i].oring[1] +\n                        gt->coeff[i][4]*iirf[i].oring[0]);\t\t\t\t\n\t\t\t}\n\t\t\t/* No matter if we process it in place */\n\t\t\toutdata[pos]=(float)iirf[gt->nstages-1].oring[2];\n\t\t}\n\telse\n\t\tfor(pos=0; pos<numSampsToProcess; pos++) {\n\t\t\tiirf[0].iring[0]=iirf[0].iring[1];\n\t\t\tiirf[0].iring[1]=iirf[0].iring[2];\n\t\t\tiirf[0].iring[2]=indata[pos];\n\n\t\t\tiirf[0].oring[0]=iirf[0].oring[1];\n\t\t\tiirf[0].oring[1]=iirf[0].oring[2];\n\t\t\t/* y[n]=a0*x[n]+a1*x[n-1]+... */\n\t\t\t/* y[n]=y[n]+b1*y[n-1]+b2*y[n-2]+... */\n\t\t\tiirf[0].oring[2] = flush_to_zero(gt->coeff[0][0]*iirf[0].iring[2] +\n\t\t\t\tgt->coeff[0][1]*iirf[0].iring[1] +\n\t\t\t\tgt->coeff[0][2]*iirf[0].iring[0] +\n\t\t\t\tgt->coeff[0][3]*iirf[0].oring[1] +\n\t\t\t\tgt->coeff[0][4]*iirf[0].oring[0]);\n\n\t\t\tfor(i=1;i<gt->nstages;i++){\t\t\t\t\n\t\t\t\tiirf[i].iring[0]=iirf[i].iring[1];\n\t\t\t\tiirf[i].iring[1]=iirf[i].iring[2];\t\t\t\t\n\t\t\t\tiirf[i].iring[2]=iirf[i-1].oring[2];\n\n\t\t\t\tiirf[i].oring[0]=iirf[i].oring[1];\n\t\t\t\tiirf[i].oring[1]=iirf[i].oring[2];\n\t\t\t\t/* y[n]=a0*x[n]+a1*x[n-1]+... */\n\t\t\t\t/* y[n]=y[n]+b1*y[n-1]+b2*y[n-2]+... */\n\t\t\t\tiirf[i].oring[2] = flush_to_zero(\n\t\t\t\t\tgt->coeff[i][0]*iirf[i].iring[2] +\n\t\t\t\t\tgt->coeff[i][1]*iirf[i].iring[1] +\n\t\t\t\t\tgt->coeff[i][2]*iirf[i].iring[0] +\n\t\t\t\t\tgt->coeff[i][3]*iirf[i].oring[1] +\n\t\t\t\t\tgt->coeff[i][4]*iirf[i].oring[0]);\t\t\t\t\n\t\t\t}\n\t\t\t/* No matter if we process it in place */\n\t\t\toutdata[pos]+=(float)iirf[gt->nstages-1].oring[2];\n\t\t}\t\n};\n\n#endif \n"
  },
  {
    "path": "util/ls_filter.h",
    "content": "#ifndef LS_FILTER_H\n#define LS_FILTER_H\n\n#include <util/biquad.h>\n\n#define FILT_MIDI_2_FREQ(m) (m * 80.0f + 10.0f)\n#define FILT_MIDI_2_RESO(m) (m * 0.00787f)\n\n#define LSF_BW 0.9\n#define LSF_FB 0.9f\n\ntypedef struct {\n    biquad filt;\n    biquad bp_filt;\n    bq_t scale;\n    bq_t resonance;\n} ls_filt;\n\ntypedef enum {\n    LS_FILT_TYPE_LP = 0,\n    LS_FILT_TYPE_BP = 1,\n    LS_FILT_TYPE_HP = 2\n} ls_filt_type;\n\nstatic inline void ls_filt_init(ls_filt *f)\n{\n\tbiquad_init(&(f->filt));\n\tbiquad_init(&(f->bp_filt));\n}\n\nstatic inline void ls_filt_setup(ls_filt *f, ls_filt_type t, bq_t cutoff,\n\t\t\t\t bq_t resonance, bq_t fs)\n{\n\tbp_set_params(&(f->bp_filt), cutoff, 0.7, fs);\n\n\tswitch(t) {\n\tcase LS_FILT_TYPE_LP:\n\t\tlp_set_params(&(f->filt), cutoff, 1.0 - resonance * LSF_BW, fs);\n\t\tbreak;\n\tcase LS_FILT_TYPE_BP:\n\t\tbp_set_params(&(f->filt), cutoff, 1.0 - resonance * LSF_BW, fs);\n\t\tbreak;\n\tcase LS_FILT_TYPE_HP:\n\t\thp_set_params(&(f->filt), cutoff, 1.0 - resonance * LSF_BW, fs);\n\t\tbreak;\n\tdefault:\n\t\t/* oops, its not a known type - should really happen, but\n\t\t   lets make the output silent just in case */\n\t\tlp_set_params(&(f->filt), 1.0, 1.0, fs);\n\t\tbreak;\n\t}\n\n\tf->scale = 1.0f - resonance * 0.7f;\n\tf->resonance = resonance;\n}\n\nstatic inline bq_t ls_filt_run(ls_filt *f, bq_t in)\n{\n\treturn biquad_run(&(f->filt), in) * f->scale +\n\t  biquad_run_fb(&(f->bp_filt), in, f->resonance * LSF_FB) *\n\t  f->resonance;\n}\n\n#endif\n"
  },
  {
    "path": "util/pitchscale.c",
    "content": "/****************************************************************************\n*\n* NAME: smsPitchScale.cp\n* VERSION: 1.01\n* HOME URL: http://www.dspdimension.com\n* KNOWN BUGS: none\n*\n* SYNOPSIS: Routine for doing pitch scaling while maintaining\n* duration using the Short Time Fourier Transform.\n*\n* DESCRIPTION: The routine takes a pitchScale factor value which is between 0.5\n* (one octave down) and 2. (one octave up). A value of exactly 1 does not change\n* the pitch. numSampsToProcess tells the routine how many samples in indata[0...\n* numSampsToProcess-1] should be pitch scaled and moved to outdata[0 ...\n* numSampsToProcess-1]. The two buffers can be identical (ie. it can process the\n* data in-place). fftFrameLength defines the FFT frame size used for the\n* processing. Typical values are 1024, 2048 and 4096. It may be any value <=\n* MAX_FFT_FRAME_LENGTH but it MUST be a power of 2. osamp is the STFT\n* oversampling factor which also determines the overlap between adjacent STFT\n* frames. It should at least be 4 for moderate scaling ratios. A value of 32 is\n* recommended for best quality. sampleRate takes the sample rate for the signal \n* in unit Hz, ie. 44100 for 44.1 kHz audio. The data passed to the routine in \n* indata[] should be in the range [-1.0, 1.0), which is also the output range \n* for the data. \n*\n* COPYRIGHT 1999 Stephan M. Sprenger <sms@dspdimension.com>\n*\n* \t\t\t\t\t\tThe Wide Open License (WOL)\n*\n* Permission to use, copy, modify, distribute and sell this software and its\n* documentation for any purpose is hereby granted without fee, provided that\n* the above copyright notice and this license appear in all source copies. \n* THIS SOFTWARE IS PROVIDED \"AS IS\" WITHOUT EXPRESS OR IMPLIED WARRANTY OF\n* ANY KIND. See http://www.dspguru.com/wol.htm for more information.\n*\n*****************************************************************************/\n\n#include <string.h>\n#include \"../config.h\"\n\n#include \"pitchscale.h\"\n\nstatic float ps_in[MAX_FRAME_LENGTH*2], ps_out[MAX_FRAME_LENGTH*2];\nstatic fft_plan aplan = NULL, splan = NULL;\n\nvoid pitch_scale(sbuffers *buffers, const double pitchScale, const long\n\t\tfftFrameLength, const long osamp, const long numSampsToProcess,\n\t\tconst double sampleRate, const float *indata, float *outdata,\n\t\tconst int adding, const float gain) {\n/*\n\tRoutine smsPitchScale(). See top of file for explanation Purpose: doing\n\tpitch scaling while maintaining duration using the Short Time Fourier\n\tTransform.  Author: (c)1999 Stephan M. Sprenger <sms@dspdimension.com>\n*/\n\tdouble magn, phase, tmp;\n\tdouble freqPerBin, expct;\n        long i,k, qpd, index, inFifoLatency, stepSize,\n\t  fftFrameSize2;\n\tdouble phaseArr[MAX_FRAME_LENGTH];\n\tfloat ri[16];\n\n\tfloat *gInFIFO = buffers->gInFIFO;\n\tfloat *gOutFIFO = buffers->gOutFIFO;\n\tfloat *gLastPhase = buffers->gLastPhase;\n\tfloat *gSumPhase = buffers->gSumPhase;\n\tfloat *gOutputAccum = buffers->gOutputAccum;\n\tfloat *gAnaFreq = buffers->gAnaFreq;\n\tfloat *gAnaMagn = buffers->gAnaMagn;\n\tfloat *gSynFreq = buffers->gSynFreq;\n\tfloat *gSynMagn = buffers->gSynMagn;\n\tfloat *gWindow = buffers->gWindow;\n\tlong gRover = buffers->gRover;\n\n\tif (aplan == NULL) {\n\t\tint i;\n\n\t\tfor (i=0; i<fftFrameLength; i++) {\n\t\t\tps_in[i + fftFrameLength] = 0.0f;\n\t\t}\n#ifdef FFTW3\n\t\taplan = fftwf_plan_r2r_1d(fftFrameLength, ps_in, ps_out, FFTW_R2HC, FFTW_MEASURE);\n\t\tsplan = fftwf_plan_r2r_1d(fftFrameLength, ps_in, ps_out, FFTW_HC2R, FFTW_MEASURE);\n#else\n\t\taplan = rfftw_create_plan(fftFrameLength, FFTW_REAL_TO_COMPLEX, FFTW_ESTIMATE);\n\t\tsplan = rfftw_create_plan(fftFrameLength, FFTW_COMPLEX_TO_REAL, FFTW_ESTIMATE);\n#endif\n\t}\n\n\t/* set up some handy variables */\n\tfftFrameSize2 = fftFrameLength/2;\n\tstepSize = fftFrameLength/osamp;\n\tfreqPerBin = sampleRate*2.0/(double)fftFrameLength;\n\texpct = 2.0*M_PI*(double)stepSize/(double)fftFrameLength;\n\tinFifoLatency = fftFrameLength-stepSize;\n\tif (gRover == false) gRover = inFifoLatency;\n\n\t/* main processing loop */\n\tfor (i = 0; i < numSampsToProcess; i++){\n\n\t\t/* As long as we have not yet collected enough data just read in */\n\t\tgInFIFO[gRover] = indata[i];\n\t\tif (adding) {\n\t\t\toutdata[i] += (gOutFIFO[gRover-inFifoLatency] * gain);\n\t\t} else {\n\t\t\toutdata[i] = gOutFIFO[gRover-inFifoLatency];\n\t\t}\n\t\tgRover++;\n\n\t\t/* As long as we have not yet collected enough data just read in */\n\t\t/* now we have enough data for processing */\n\t\tif (gRover >= fftFrameLength) {\n\t\t\tgRover = inFifoLatency;\n\n\t\t\t/* do windowing and store */\n\t\t\tfor (k = 0; k < fftFrameLength; k++) {\n\t\t\t\tps_in[k] = gInFIFO[k] * gWindow[k];\n\t\t\t}\n\n\t\t/* As long as we have not yet collected enough data just read in */\n\n\t\t\t/* ***************** ANALYSIS ******************* */\n\t\t\t/* do transform */\n#ifdef FFTW3\n\t\t\tfftwf_execute(aplan);\n#else\n\t\t\trfftw_one(aplan, ps_in, ps_out);\n#endif\n\n\t\t\t/* this is the analysis step */\n\n\t\t\t/* Hard math first, we can 3dnow this */\n\t\t\tfor (k = 1; k <= fftFrameSize2; k+=8) {\n\t\t\t\tfloat *mb = &gAnaMagn[k];\n\t\t\t\n\t\t\t\tri[0] = ps_out[k];\n\t\t\t\tri[2] = ps_out[k+1];\n\t\t\t\tri[4] = ps_out[k+2];\n\t\t\t\tri[6] = ps_out[k+3];\n\t\t\t\tri[8] = ps_out[k+4];\n\t\t\t\tri[10] = ps_out[k+5];\n\t\t\t\tri[12] = ps_out[k+6];\n\t\t\t\tri[14] = ps_out[k+7];\n\t\t\t\n\t\t\t\tri[1] = ps_out[fftFrameLength - k];\n\t\t\t\tri[3] = ps_out[fftFrameLength - (k + 1)];\n\t\t\t\tri[5] = ps_out[fftFrameLength - (k + 2)];\n\t\t\t\tri[7] = ps_out[fftFrameLength - (k + 3)];\n\t\t\t\tri[9] = ps_out[fftFrameLength - (k + 4)];\n\t\t\t\tri[11] = ps_out[fftFrameLength - (k + 5)];\n\t\t\t\tri[13] = ps_out[fftFrameLength - (k + 6)];\n\t\t\t\tri[15] = ps_out[fftFrameLength - (k + 7)];\n\n\t\t\t\t/* compute magnitude and phase. */\n#ifdef ACCEL_3DNOW\n#warning Using processor specific 3DNow! accelerations\n\t\t\t\t__asm__ __volatile__ (\n\t\t\t\t\" \\n\\\n\t\t\t\tfemms  \\n\\\n\t\t\t\tmovq (%%eax), %%mm0  \\n\\\n\t\t\t\tmovq 8(%%eax), %%mm1  \\n\\\n\t\t\t\tmovq 16(%%eax), %%mm2  \\n\\\n\t\t\t\tmovq 24(%%eax), %%mm3  \\n\\\n\t\t\t\tmovq 32(%%eax), %%mm4  \\n\\\n\t\t\t\tmovq 40(%%eax), %%mm5 \\n\\\n\t\t\t\tmovq 48(%%eax), %%mm6 \\n\\\n\t\t\t\tmovq 56(%%eax), %%mm7 \\n\\\n\t\t\t\t# do the squares and add \\n\\\n\t\t\t\tpfmul\t%%mm0, %%mm0 \\n\\\n\t\t\t\tpfacc   %%mm0, %%mm0 \\n\\\n\t\t\t\tpfmul\t%%mm1, %%mm1 \\n\\\n\t\t\t\tpfacc   %%mm1, %%mm1 \\n\\\n\t\t\t\tpfmul\t%%mm2, %%mm2 \\n\\\n\t\t\t\tpfacc\t%%mm2, %%mm2 \\n\\\n\t\t\t\tpfmul\t%%mm3, %%mm3 \\n\\\n\t\t\t\tpfacc   %%mm3, %%mm3 \\n\\\n\t\t\t\tpfmul\t%%mm4, %%mm4 \\n\\\n\t\t\t\tpfacc\t%%mm4, %%mm4 \\n\\\n\t\t\t\tpfmul\t%%mm5, %%mm5 \\n\\\n\t\t\t\tpfacc   %%mm5, %%mm5 \\n\\\n\t\t\t\tpfmul\t%%mm6, %%mm6 \\n\\\n\t\t\t\tpfacc\t%%mm6, %%mm6 \\n\\\n\t\t\t\tpfmul\t%%mm7, %%mm7 \\n\\\n\t\t\t\tpfacc   %%mm7, %%mm7 \\n\\\n\t\t\t\t# Recip square roots. \\n\\\n\t\t\t\tpfrsqrt %%mm0, %%mm0 \\n\\\n\t\t\t\tpfrsqrt %%mm1, %%mm1 \\n\\\n\t\t\t\tpfrsqrt %%mm2, %%mm2 \\n\\\n\t\t\t\tpfrsqrt %%mm3, %%mm3 \\n\\\n\t\t\t\tpfrsqrt %%mm4, %%mm4 \\n\\\n\t\t\t\tpfrsqrt %%mm5, %%mm5 \\n\\\n\t\t\t\tpfrsqrt %%mm6, %%mm6 \\n\\\n\t\t\t\tpfrsqrt %%mm7, %%mm7 \\n\\\n\t\t\t\tpfrcp %%mm0, %%mm0 \\n\\\n\t\t\t\tpfrcp %%mm1, %%mm1 \\n\\\n\t\t\t\tpfrcp %%mm2, %%mm2 \\n\\\n\t\t\t\tpfrcp %%mm3, %%mm3 \\n\\\n\t\t\t\tpfrcp %%mm4, %%mm4 \\n\\\n\t\t\t\tpfrcp %%mm5, %%mm5 \\n\\\n\t\t\t\tpfrcp %%mm6, %%mm6 \\n\\\n\t\t\t\tpfrcp %%mm7, %%mm7 \\n\\\n\t\t\t\t# ship em out\t\t\t \\n\\\n\t\t\t\tmovd\t%%mm0, (%%edx) \\n\\\n\t\t\t\tmovd\t%%mm1, 4(%%edx) \\n\\\n\t\t\t\tmovd\t%%mm2, 8(%%edx) \\n\\\n\t\t\t\tmovd\t%%mm3, 12(%%edx) \\n\\\n\t\t\t\tmovd\t%%mm4, 16(%%edx) \\n\\\n\t\t\t\tmovd\t%%mm5, 20(%%edx) \\n\\\n\t\t\t\tmovd\t%%mm6, 24(%%edx) \\n\\\n\t\t\t\tmovd\t%%mm7, 28(%%edx) \\n\\\n\t\t\t\tfemms \\n\\\n\t\t\t\t\"\n\t\t\t\t:\n\t\t\t\t: \"a\" (ri), \"d\" (mb)\n\t\t\t\t: \"memory\");\n\t\t\t\t\t\t\t\t\t\n\n#else\n\t\t\t\tmb[0] = sqrt(ri[0]*ri[0]+ ri[1]*ri[1]);\n\t\t\t\tmb[1] = sqrt(ri[2]*ri[2] + ri[3]*ri[3]);\n\t\t\t\tmb[2] = sqrt(ri[4]*ri[4] + ri[5]*ri[5]);\n\t\t\t\tmb[3] = sqrt(ri[6]*ri[6] + ri[7]*ri[7]);\n#endif\n\n\t\t\t\tphaseArr[k] = atan2(ri[1], ri[0]);\n\t\t\t\tphaseArr[k+1] = atan2(ri[3], ri[2]);\n\t\t\t\tphaseArr[k+2] = atan2(ri[5], ri[4]);\n\t\t\t\tphaseArr[k+3] = atan2(ri[7], ri[6]);\n\t\t\t\tphaseArr[k+4] = atan2(ri[9], ri[8]);\n\t\t\t\tphaseArr[k+5] = atan2(ri[11], ri[10]);\n\t\t\t\tphaseArr[k+6] = atan2(ri[13], ri[12]);\n\t\t\t\tphaseArr[k+7] = atan2(ri[15], ri[14]);\n\t\t\t}\n\t\t\t\n\t\t\tfor (k = 1; k <= fftFrameSize2; k++) {\n\n\t\t\t\t/* compute phase difference */\n\t\t\t\ttmp = phaseArr[k] - gLastPhase[k];\n\t\t\t\tgLastPhase[k] = phaseArr[k];\n\n\t\t\t\t/* subtract expected phase difference */\n\t\t\t\ttmp -= (double)k*expct;\n\n\t\t\t\t/* map delta phase into +/- Pi interval */\n\t\t\t\tqpd = tmp/M_PI;\n\t\t\t\tif (qpd >= 0) qpd += qpd&1;\n\t\t\t\telse qpd -= qpd&1;\n\t\t\t\ttmp -= M_PI*(double)qpd;\n\n\t\t\t\t/* get deviation from bin frequency from the +/- Pi interval */\n\t\t\t\ttmp = osamp*tmp/(2.0f*M_PI);\n\n\t\t\t\t/* compute the k-th partials' true frequency */\n\t\t\t\ttmp = (double)k*freqPerBin + tmp*freqPerBin;\n\n\t\t\t\t/* store magnitude and true frequency in analysis arrays */\n\t\t\t\tgAnaFreq[k] = tmp;\n\n\t\t\t}\n\n\t\t\t/* ***************** PROCESSING ******************* */\n\t\t\t/* this does the actual pitch scaling */\n\t\t\tmemset(gSynMagn, 0, fftFrameLength*sizeof(float));\n\t\t\tmemset(gSynFreq, 0, fftFrameLength*sizeof(float));\n\t\t\tfor (k = 0; k <= fftFrameSize2; k++) {\n\t\t\t\tindex = k/pitchScale;\n\t\t\t\tif (index <= fftFrameSize2) {\n\t\t\t\t\t/* new bin overrides existing if magnitude is higher */ \n\t\t\t\t\tif (gAnaMagn[index] > gSynMagn[k]) {\n\t\t\t\t\t\tgSynMagn[k] = gAnaMagn[index];\n\t\t\t\t\t\tgSynFreq[k] = gAnaFreq[index] * pitchScale;\n\t\t\t\t\t}\n\n\t\t\t\t\t/* fill empty bins with nearest neighbour */\n\n\t\t\t\t\tif ((gSynFreq[k] == 0.) && (k > 0)) {\n\t\t\t\t\t\tgSynFreq[k] = gSynFreq[k-1];\n\t\t\t\t\t\tgSynMagn[k] = gSynMagn[k-1];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\n\t\t\t/* ***************** SYNTHESIS ******************* */\n\t\t\t/* this is the synthesis step */\n\t\t\tfor (k = 1; k <= fftFrameSize2; k++) {\n\n\t\t\t\t/* get magnitude and true frequency from synthesis arrays */\n\t\t\t\tmagn = gSynMagn[k];\n\t\t\t\ttmp = gSynFreq[k];\n\n\t\t\t\t/* subtract bin mid frequency */\n\t\t\t\ttmp -= (double)k*freqPerBin;\n\n\t\t\t\t/* get bin deviation from freq deviation */\n\t\t\t\ttmp /= freqPerBin;\n\n\t\t\t\t/* take osamp into account */\n\t\t\t\ttmp = 2.*M_PI*tmp/osamp;\n\n\t\t\t\t/* add the overlap phase advance back in */\n\t\t\t\ttmp += (double)k*expct;\n\n\t\t\t\t/* accumulate delta phase to get bin phase */\n\t\t\t\tgSumPhase[k] += tmp;\n\t\t\t\tphase = gSumPhase[k];\n\n\t\t\t\tps_in[k] = magn*cosf(phase);\n\t\t\t\tps_in[fftFrameLength - k] = magn*sinf(phase);\n\t\t\t} \n\n\t\t\t/* do inverse transform */\n#ifdef FFTW3\n\t\t\tfftwf_execute(splan);\n#else\n\t\t\trfftw_one(splan, ps_in, ps_out);\n#endif\n\n\t\t\t/* do windowing and add to output accumulator */ \n\t\t\tfor(k=0; k < fftFrameLength; k++) {\n\t\t\t\tgOutputAccum[k] += 2.0f*gWindow[k]*ps_out[k]/(fftFrameSize2*osamp);\n\t\t\t}\n\t\t\tfor (k = 0; k < stepSize; k++) gOutFIFO[k] = gOutputAccum[k];\n\n\t\t\t/* shift accumulator */\n\t\t\tmemmove(gOutputAccum, gOutputAccum+stepSize, fftFrameLength*sizeof(float));\n\n\t\t\t/* move input FIFO */\n\t\t\tfor (k = 0; k < inFifoLatency; k++) gInFIFO[k] = gInFIFO[k+stepSize];\n\t\t}\n\t}\n\n\tbuffers->gRover = gRover;\n}\n"
  },
  {
    "path": "util/pitchscale.h",
    "content": "#ifndef PITCHSCALE_H\n#define PITCHSCALE_H\n\n#include <config.h>\n\n#ifndef _USE_MATH_DEFINES\n#define _USE_MATH_DEFINES\n#endif\n\n#include <math.h>\n\n#ifdef FFTW3\n\n#include <fftw3.h>\n\ntypedef fftwf_plan fft_plan;\ntypedef float fftw_real;\n\n#else\n\n#ifdef EXPLICIT_S\n#include <srfftw.h>\n#else\n#include <rfftw.h>\n#endif //EXPLICIT_S\n\ntypedef rfftw_plan fft_plan;\n\n#endif //FFTW3\n\ntypedef struct {\n\tfloat *gInFIFO;\n\tfloat *gOutFIFO;\n\tfloat *gLastPhase;\n\tfloat *gSumPhase;\n\tfloat *gOutputAccum;\n\tfloat *gAnaFreq;\n\tfloat *gAnaMagn;\n\tfloat *gSynFreq;\n\tfloat *gSynMagn;\n\tfloat *gWindow;\n\tlong   gRover;\n} sbuffers;\n\n#define MAX_FRAME_LENGTH 4096\n\n#define true  1\n#define false 0\n\nvoid pitch_scale(sbuffers *buffers, const double pitchScale, const long\n\t\tfftFrameLength, const long osamp, const long numSampsToProcess,\n\t\tconst double sampleRate, const float *indata, float *outdata,\n\t\tconst int adding, const float gain);\n\n#endif\n"
  },
  {
    "path": "util/rms.c",
    "content": "#include <stdlib.h>\n#include \"rms.h\"\n\nrms_env *rms_env_new()\n{\n\trms_env *new = (rms_env *)calloc(1, sizeof(rms_env));\n\n\treturn new;\n}\n\nvoid rms_env_reset(rms_env *r)\n{\n\tunsigned int i;\n\n\tfor (i=0; i<RMS_BUF_SIZE; i++) {\n\t\tr->buffer[i] = 0.0f;\n\t}\n\tr->pos = 0;\n\tr->sum = 0.0f;\n}\n\nvoid rms_env_free(rms_env *r)\n{\n\tfree(r);\n}\n"
  },
  {
    "path": "util/rms.h",
    "content": "#ifndef _RMS_H\n#define _RMS_H\n\n#include <math.h>\n\n#define RMS_BUF_SIZE 64\n\ntypedef struct {\n\tfloat        buffer[RMS_BUF_SIZE];\n\tunsigned int pos;\n\tfloat        sum;\n} rms_env;\n\nrms_env *rms_env_new();\n\nstatic inline float rms_env_process(rms_env *r, float x);\n\nvoid rms_env_reset(rms_env *r);\n\nvoid rms_env_free(rms_env *r);\n\ninline static float rms_env_process(rms_env *r, const float x)\n{\n\tr->sum -= r->buffer[r->pos];\n\tr->sum += x;\n\tif (r->sum < 1.0e-6) {\n\t\tr->sum = 0.0f;\n\t}\n\tr->buffer[r->pos] = x;\n\tr->pos = (r->pos + 1) & (RMS_BUF_SIZE - 1);\n\n\treturn sqrt(r->sum / (float)RMS_BUF_SIZE);\n}\n\n#endif\n"
  },
  {
    "path": "util/waveguide_nl.h",
    "content": "#ifndef WAVEGUIDE_NL_H\n#define WAVEGUIDE_NL_H\n\n#include <stdlib.h>\n#include <string.h>\n\ntypedef struct {\n\tint size;\n\tfloat *buffer[2];\n\tint ptr;\n\tint delay;\n\tfloat fc;\n\tfloat lp[2];\n\tfloat a1a;\n\tfloat a1b;\n\tfloat zm1[2];\n} waveguide_nl;\n\nwaveguide_nl *waveguide_nl_new(int size, float fc, float da, float db)\n{\n\twaveguide_nl *wg = malloc(sizeof(waveguide_nl));\n\twg->size = size;\n\twg->delay = size;\n\twg->buffer[0] = calloc(size, sizeof(float));\n\twg->buffer[1] = calloc(size, sizeof(float));\n\twg->ptr = 0;\n\twg->fc = fc;\n\twg->lp[0] = 0.0f;\n\twg->lp[1] = 0.0f;\n\twg->zm1[0] = 0.0f;\n\twg->zm1[1] = 0.0f;\n\twg->a1a = (1.0f - da) / (1.0f + da);\n\twg->a1b = (1.0f - db) / (1.0f + db);\n\n\treturn wg;\n}\n\nvoid waveguide_nl_reset(waveguide_nl *wg)\n{\n\tmemset(wg->buffer[0], 0, wg->size * sizeof(float));\n\tmemset(wg->buffer[1], 0, wg->size * sizeof(float));\n\twg->lp[0] = 0.0f;\n\twg->lp[1] = 0.0f;\n\twg->zm1[0] = 0.0f;\n\twg->zm1[1] = 0.0f;\n}\n\nvoid waveguide_nl_free(waveguide_nl *wg)\n{\n\tif (!wg) {\n\t\treturn;\n\t}\n\tfree(wg->buffer[0]);\n\tfree(wg->buffer[1]);\n\tfree(wg);\n}\n\nvoid waveguide_nl_set_delay(waveguide_nl *wg, int delay)\n{\n\tif (delay > wg->size) {\n\t\twg->delay = wg->size;\n\t} else if (delay < 1) {\n\t\twg->delay = 1;\n\t} else {\n\t\twg->delay = delay;\n\t}\n}\n\nvoid waveguide_nl_set_fc(waveguide_nl *wg, float fc)\n{\n\twg->fc = fc;\n}\n\nvoid waveguide_nl_set_ap(waveguide_nl *wg, float da, float db)\n{\n\twg->a1a = (1.0f - da) / (1.0f + da);\n\twg->a1b = (1.0f - db) / (1.0f + db);\n}\n\nvoid waveguide_nl_process_lin(waveguide_nl *wg, float in0, float in1, float *out0, float *out1)\n{\n\tfloat tmp;\n\n\t*out0 = wg->buffer[0][(wg->ptr + wg->delay) % wg->size];\n\t*out0 = wg->lp[0] * (wg->fc - 1.0f) + wg->fc * *out0;\n\twg->lp[0] = *out0;\n\ttmp = *out0 * -(wg->a1a) + wg->zm1[0];\n\twg->zm1[0] = tmp * wg->a1a + *out0;\n\t*out0 = tmp;\n\n\t*out1 = wg->buffer[1][(wg->ptr + wg->delay) % wg->size];\n\t*out1 = wg->lp[1] * (wg->fc - 1.0f) + wg->fc * *out1;\n\twg->lp[1] = *out1;\n\ttmp = *out1 * -(wg->a1a) + wg->zm1[1];\n\twg->zm1[1] = tmp * wg->a1a + *out1;\n\t*out1 = tmp;\n\n\twg->buffer[0][wg->ptr] = in0;\n\twg->buffer[1][wg->ptr] = in1;\n\twg->ptr--;\n\tif (wg->ptr < 0) {\n\t\twg->ptr += wg->size;\n\t}\n}\n\nvoid waveguide_nl_process(waveguide_nl *wg, float in0, float in1, float *out0, float *out1)\n{\n\tfloat tmp;\n\tfloat a1;\n\tfloat b;\n\n\t*out0 = wg->buffer[0][(wg->ptr + wg->delay) % wg->size];\n\t*out0 = wg->lp[0] * (wg->fc - 1.0f) + wg->fc * *out0;\n\twg->lp[0] = *out0;\n\tb = (*out0 + 1.0) * 6.0f;\n\tif (b > 1.0f) {\n\t\tb = 1.0f;\n\t} \n\t\n\tif (b < 0.0f) {\n\t\tb = 0.0f;\n\t}\n\ta1 = b * wg->a1a + (1.0f - b) * wg->a1b;\n\ttmp = *out0 * -a1 + wg->zm1[0];\n\twg->zm1[0] = tmp * a1 + *out0;\n\t*out0 = tmp;\n\n\t*out1 = wg->buffer[1][(wg->ptr + wg->delay) % wg->size];\n\t*out1 = wg->lp[1] * (wg->fc - 1.0f) + wg->fc * *out1;\n\twg->lp[1] = *out1;\n\tb = (*out1 + 1.0) * 6.0f;\n\tif (b > 1.0f) {\n\t\tb = 1.0f;\n\t}\n\t\n\tif (b < 0.0f) {\n\t\tb = 0.0f;\n\t}\n\ta1 = b * wg->a1a + (1.0f - b) * wg->a1b;\n\ttmp = *out1 * -a1 + wg->zm1[1];\n\twg->zm1[1] = tmp * a1 + *out1;\n\t*out1 = tmp;\n\n\twg->buffer[0][wg->ptr] = in0;\n\twg->buffer[1][wg->ptr] = in1;\n\twg->ptr--;\n\tif (wg->ptr < 0) {\n\t\twg->ptr += wg->size;\n\t}\n}\n\n#endif\n"
  },
  {
    "path": "valve_1209.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"ladspa-util.h\"\n    ]]></code>\n  </global>\n\n  <plugin label=\"valve\" id=\"1209\" class=\"DistortionPlugin,SimulatorPlugin\">\n    <name>Valve saturation</name>\n    <p>A model of valve (tube) distortion, lacking some of the harmonics you would get in a real tube amp, but sounds good nonetheless.</p>\n    <p>Taken from Ragnar Bendiksen's thesis: \\url{https://web.archive.org/web/20050212034404/http://www.notam02.no/~rbendiks/Diplom/Innhold.html}.</p>\n\n    <callback event=\"activate\"><![CDATA[\n      itm1 = 0.0f;\n      otm1 = 0.0f;\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\nunsigned long pos;\nLADSPA_Data fx;\n\nconst float q = q_p - 0.999f;\nconst float dist = dist_p * 40.0f + 0.1f;\n\nif (q == 0.0f) {\n\tfor (pos = 0; pos < sample_count; pos++) {\n\t\tif (input[pos] == q) {\n\t\t\tfx = 1.0f / dist;\n\t\t} else {\n\t\t\tfx = input[pos] / (1.0f - f_exp(-dist * input[pos]));\n\t\t}\n\t\totm1 = 0.999f * otm1 + fx - itm1;\n\t\tround_to_zero(&otm1);\n\t\titm1 = fx;\n\t\tbuffer_write(output[pos], otm1);\n\t}\n} else {\n\tfor (pos = 0; pos < sample_count; pos++) {\n\t\tif (input[pos] == q) {\n\t\t\tfx = 1.0f / dist + q / (1.0f - f_exp(dist * q));\n\t\t} else {\n\t\t\tfx = (input[pos] - q) /\n\t\t\t (1.0f - f_exp(-dist * (input[pos] - q))) +\n\t\t\t q / (1.0f - f_exp(dist * q));\n\t\t}\n\t\totm1 = 0.999f * otm1 + fx - itm1;\n\t\tround_to_zero(&otm1);\n\t\titm1 = fx;\n\t\tbuffer_write(output[pos], otm1);\n\t}\n}\n\nplugin_data->itm1 = itm1;\nplugin_data->otm1 = otm1;\n    ]]></callback>\n\n    <port label=\"q_p\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Distortion level</name>\n      <p>How hard the signal is driven against the limit of the amplifier.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"dist_p\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Distortion character</name>\n      <p>The hardness of the sound, low for soft, high for hard.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"itm1\" type=\"LADSPA_Data\"/>\n    <instance-data label=\"otm1\" type=\"LADSPA_Data\"/>\n\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "valve_rect_1405.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"ladspa-util.h\"\n    ]]></code>\n  </global>\n\n  <plugin label=\"valveRect\" id=\"1405\" class=\"DistortionPlugin,SimulatorPlugin\">\n    <name>Valve rectifier</name>\n\n    <callback event=\"instantiate\"><![CDATA[\n      // Number of samples in averaging buffer\n      avg_size = s_rate / 9;\n      // Reciprocal of obove\n      avg_sizer = 9.0f / (float)s_rate;\n      // Averaging buffer\n      avg = calloc(avg_size, sizeof(float));\n      // Sum of samples in averaging buffer\n      avgs = 0.0f;\n      // Position in averaging buffer\n      apos = 0;\n      // Last value in lowpass 1\n      lp1tm1 = 0.0f;\n      // Last value in lowpass 2\n      lp2tm1 = 0.0f;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      memset(avg, 0, avg_size * sizeof(float));\n      avgs = 0.0f;\n      apos = 0;\n      lp1tm1 = 0.0f;\n      lp2tm1 = 0.0f;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->avg);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float q, x, fx;\n      const float dist = dist_p * 40.0f + 0.1f;\n\n      for (pos = 0; pos < sample_count; pos++) {\n        x = fabs(input[pos]);\n        if (x > lp1tm1) {\n          lp1tm1 = x;\n        } else {\n          lp1tm1 = 0.9999f * lp1tm1 + 0.0001f * x;\n        }\n\n        avgs -= avg[apos];\n        avgs += lp1tm1;\n        avg[apos++] = lp1tm1;\n        apos %= avg_size;\n\n        lp2tm1 = 0.999f * lp2tm1 + avgs*avg_sizer * 0.001f;\n\tq = lp1tm1 * sag - lp2tm1 * 1.02f - 1.0f;\n\tif (q > -0.01f) {\n          q = -0.01f;\n        } else if (q < -1.0f) {\n          q = -1.0f;\n        }\n\n        if (input[pos] == q) {\n          fx = 1.0f / dist + q / (1.0f - f_exp(dist * q));\n        } else {\n          fx = (input[pos] - q) /\n           (1.0f - f_exp(-dist * (input[pos] - q))) +\n           q / (1.0f - f_exp(dist * q));\n        }\n\n        buffer_write(output[pos], fx);\n      }\n\n      plugin_data->lp1tm1 = lp1tm1;\n      plugin_data->lp2tm1 = lp2tm1;\n      plugin_data->avgs = avgs;\n      plugin_data->apos = apos;\n    ]]></callback>\n\n    <port label=\"sag\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Sag level</name>\n      <p>The level of power supply sag that will be caused by attacks.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"dist_p\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Distortion</name>\n      <p>How harsh the distortion caused by the sag will be.</p>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"lp1tm1\" type=\"float\" />\n    <instance-data label=\"lp2tm1\" type=\"float\" />\n    <instance-data label=\"avg\" type=\"float *\" />\n    <instance-data label=\"avg_size\" type=\"int\" />\n    <instance-data label=\"avg_sizer\" type=\"float\" />\n    <instance-data label=\"avgs\" type=\"float\" />\n    <instance-data label=\"apos\" type=\"unsigned int\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "vocoder_1337.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Achim Settelmeier &lt;settel-linux@sirlab.de&gt; (adapted by Josh Green and Hexasoft)\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include \"util/iir.h\"\n\n      #define MAX_BANDS\t\t16\n      #define AMPLIFIER\t\t16.0\n\n      // 0 = formant, 1 = carrier, 2 = output, 3 = output2, 4 = bandcount, 5 = pan\n      #define START_BANDS\t6\t\t\t\t/* start of bands level */\n      #define PORT_COUNT\tSTART_BANDS + MAX_BANDS\t\t/* bands level */\n\n      struct bandpasses\n      {\n        LADSPA_Data c[MAX_BANDS], f[MAX_BANDS], att[MAX_BANDS];\n\n        LADSPA_Data freq[MAX_BANDS];\n        LADSPA_Data low1[MAX_BANDS], low2[MAX_BANDS];\n        LADSPA_Data mid1[MAX_BANDS], mid2[MAX_BANDS];\n        LADSPA_Data high1[MAX_BANDS], high2[MAX_BANDS];\n        LADSPA_Data y[MAX_BANDS];\n      };\n\n      void doBandpasses(struct bandpasses *bands, LADSPA_Data sample, int num_bands);\n\n      struct bands_out{\n        LADSPA_Data decay[MAX_BANDS];\n        LADSPA_Data oldval[MAX_BANDS];\n        LADSPA_Data level[MAX_BANDS];     /* 0.0 - 1.0 level of this output band */\n      };\n\n      const LADSPA_Data decay_table[] =\n      {\n        1/100.0,\n        1/100.0, 1/100.0, 1/100.0,\n        1/125.0, 1/125.0, 1/125.0,\n        1/166.0, 1/166.0, 1/166.0,\n        1/200.0, 1/200.0, 1/200.0,\n        1/250.0, 1/250.0, 1/250.0\n      };\n\n      void doBandpasses(struct bandpasses *bands, LADSPA_Data sample, int num_bands)\n      {\n        int i;\n        for (i=0; i < num_bands; i++)\n        {\n          bands->high1[i] = sample - bands->f[i] * bands->mid1[i] - bands->low1[i];\n          bands->mid1[i] += bands->high1[i] * bands->c[i];\n          bands->low1[i] += bands->mid1[i];\n\n          bands->high2[i] = bands->low1[i] - bands->f[i] * bands->mid2[i] - bands->low2[i];\n          bands->mid2[i] += bands->high2[i] * bands->c[i];\n          bands->low2[i] += bands->mid2[i];\n          bands->y[i]     = bands->high2[i] * bands->att[i];\n        }\n      }\n    ]]></code>\n  </global>\n\n  <!-- TODO: Get real LADSPA ID from ladspa.org, vocoder was previously \"1337\" -->\n  <plugin label=\"vocoder\" id=\"1337\" class=\"DistortionPlugin,GeneratorPlugin\">\n    <name>Vocoder</name>\n    <p><![CDATA[\n    Makes a human voice sound synthetic; often used to speak like a robot, with a metallic and monotonous voice.  Using a human voice as the formant and an instrument as the carrier, creates an effect of an instrument speaking.\n    ]]></p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      memset(&bands_carrier, 0, sizeof bands_carrier);\n      memset(&bands_formant, 0, sizeof bands_formant);\n      memset(&bands_out, 0, sizeof bands_out);\n\n      sample_rate = s_rate;\n      main_vol = 1.0 * AMPLIFIER;\n\n      ctrl_band_levels = malloc(MAX_BANDS * sizeof(LADSPA_Data));\n      num_bands = -1;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      int i;\n      for (i = 0; i < MAX_BANDS; i++)\n      {\n        bands_out.oldval[i] = 0.0f;\n      }\n\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->ctrl_band_levels);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      int i, j, numbands, pan;\n      float a;\n      LADSPA_Data x, c;\n      float fl, fr;\n\n      // Bind band level controls\n      plugin_data->ctrl_band_levels[0] = band1;\n      plugin_data->ctrl_band_levels[1] = band2;\n      plugin_data->ctrl_band_levels[2] = band3;\n      plugin_data->ctrl_band_levels[3] = band4;\n      plugin_data->ctrl_band_levels[4] = band5;\n      plugin_data->ctrl_band_levels[5] = band6;\n      plugin_data->ctrl_band_levels[6] = band7;\n      plugin_data->ctrl_band_levels[7] = band8;\n      plugin_data->ctrl_band_levels[8] = band9;\n      plugin_data->ctrl_band_levels[9] = band10;\n      plugin_data->ctrl_band_levels[10] = band11;\n      plugin_data->ctrl_band_levels[11] = band12;\n      plugin_data->ctrl_band_levels[12] = band13;\n      plugin_data->ctrl_band_levels[13] = band14;\n      plugin_data->ctrl_band_levels[14] = band15;\n      plugin_data->ctrl_band_levels[15] = band16;\n\n      numbands = (int)(*plugin_data->ctrl_band_count);\n      if (numbands < 1 || numbands > MAX_BANDS) numbands = MAX_BANDS;\n\n      /* initialize bandpass information if num_bands control has changed,\n         or on first run */\n      if (plugin_data->num_bands != numbands)\n      {\n        plugin_data->num_bands = numbands;\n\n        memset(&plugin_data->bands_formant, 0, sizeof(struct bandpasses));\n        for(i=0; i < numbands; i++)\n        {\n          a = 16.0 * i/(double)numbands;  // stretch existing bands\n\n          if (a < 4.0)\n            plugin_data->bands_formant.freq[i] = 150 + 420 * a / 4.0;\n          else\n            plugin_data->bands_formant.freq[i] = 600 * pow (1.23, a - 4.0);\n\n            c = plugin_data->bands_formant.freq[i] * 2 * M_PI / plugin_data->sample_rate;\n            plugin_data->bands_formant.c[i] = c * c;\n\n            plugin_data->bands_formant.f[i] = 0.4/c;\n            plugin_data->bands_formant.att[i] =\n              1/(6.0 + ((exp (plugin_data->bands_formant.freq[i]\n\t\t\t    / plugin_data->sample_rate) - 1) * 10));\n\n            plugin_data->bands_out.decay[i] = decay_table[(int)a];\n            plugin_data->bands_out.level[i] =\n\t      CLAMP (plugin_data->ctrl_band_levels[i], 0.0, 1.0);\n        }\n        memcpy(&plugin_data->bands_carrier,\n          &plugin_data->bands_formant, sizeof(struct bandpasses));\n\n      }\n      else\t\t       /* get current values of band level controls */\n      {\n        for (i = 0; i < numbands; i++)\n\t  plugin_data->bands_out.level[i] = CLAMP (plugin_data->ctrl_band_levels[i],\n            0.0, 1.0);\n      }\n\n      for (i=0; i < sample_count; i++)\n      {\n        doBandpasses (&(plugin_data->bands_carrier),\n          plugin_data->port_carrier[i],\n          plugin_data->num_bands);\n        doBandpasses (&(plugin_data->bands_formant),\n\t  plugin_data->port_formant[i],\n          plugin_data->num_bands);\n\n        LADSPA_Data sample = 0.0;\n        for (j=0; j < numbands; j++)\n\t{\n\t  plugin_data->bands_out.oldval[j] = plugin_data->bands_out.oldval[j]\n\t    + (fabs (plugin_data->bands_formant.y[j])\n\t       - plugin_data->bands_out.oldval[j])\n\t    * plugin_data->bands_out.decay[j];\n\t  x = plugin_data->bands_carrier.y[j] * plugin_data->bands_out.oldval[j];\n\n\t  sample += x * plugin_data->bands_out.level[j];\n\t}\n\t/* treat paning + main volume */\n        pan = (int)(*plugin_data->ctrl_pan);\n        fl = fr = 1.0f;\n        if (pan != 0) { /* no paning, don't compute useless values */\n          if (pan > 0) { /* reduce left */\n            fl = (100.-pan)/100.;\n          } else {\n            fr = (100.+pan)/100.;\n          }\n        }\n        /* apply volume and paning */\n        plugin_data->port_output[i] = sample * plugin_data->main_vol * fl;\n        plugin_data->port_output2[i] = sample * plugin_data->main_vol * fr;\n      }\n\n      // Suppress unused warnings\n      (void)(sample_rate);\n      (void)(num_bands);\n      (void)(main_vol);\n      (void)(bands_formant);\n      (void)(bands_carrier);\n      (void)(bands_out);\n      (void)(ctrl_band_levels);\n      (void)(port_formant);\n      (void)(port_carrier);\n      (void)(port_output);\n      (void)(port_output2);\n      (void)(ctrl_band_count);\n      (void)(ctrl_pan);\n      (void)(run_adding_gain);\n\n    ]]></callback>\n\n    <port label=\"port_formant\" dir=\"input\" type=\"audio\">\n      <name>Formant-in</name>\n      <p>Signal to use as formant, such as a human voice.</p>\n    </port>\n\n    <port label=\"port_carrier\" dir=\"input\" type=\"audio\">\n      <name>Carrier-in</name>\n      <p>Signal to use as carrier. Use a saw wave, not a sine wave, as carrier should contain a broad wave spectrum, with several overtones.</p>\n    </port>\n\n    <port label=\"port_output\" dir=\"output\" type=\"audio\">\n      <name>Output-out</name>\n      <p>Left output.</p>\n    </port>\n\n    <port label=\"port_output2\" dir=\"output\" type=\"audio\">\n      <name>Output2-out</name>\n      <p>Right output.</p>\n    </port>\n\n    <port label=\"ctrl_band_count\" dir=\"input\" type=\"control\" hint=\"integer\">\n      <name>Number of bands</name>\n      <range min=\"1\" max=\"MAX_BANDS\"/>\n      <p>Number of frequency bands to divide the signals. Use as an equalizer.</p>\n    </port>\n\n    <port label=\"ctrl_pan\" dir=\"input\" type=\"control\" hint=\"integer\">\n      <name>Left/Right</name>\n      <range min=\"-100\" max=\"+100\"/>\n      <p>Pan between left and right outputs.</p>\n    </port>\n\n    <!-- Start band levels -->\n    <port label=\"band1\" dir=\"input\" type=\"control\">\n      <name>Band 1 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"band2\" dir=\"input\" type=\"control\">\n      <name>Band 2 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"band3\" dir=\"input\" type=\"control\">\n      <name>Band 3 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"band4\" dir=\"input\" type=\"control\">\n      <name>Band 4 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"band5\" dir=\"input\" type=\"control\">\n      <name>Band 5 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"band6\" dir=\"input\" type=\"control\">\n      <name>Band 6 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"band7\" dir=\"input\" type=\"control\">\n      <name>Band 7 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"band8\" dir=\"input\" type=\"control\">\n      <name>Band 8 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"band9\" dir=\"input\" type=\"control\">\n      <name>Band 9 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"band10\" dir=\"input\" type=\"control\">\n      <name>Band 10 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"band11\" dir=\"input\" type=\"control\">\n      <name>Band 11 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"band12\" dir=\"input\" type=\"control\">\n      <name>Band 12 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"band13\" dir=\"input\" type=\"control\">\n      <name>Band 13 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"band14\" dir=\"input\" type=\"control\">\n      <name>Band 14 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"band15\" dir=\"input\" type=\"control\">\n      <name>Band 15 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <port label=\"band16\" dir=\"input\" type=\"control\">\n      <name>Band 16 Level</name>\n      <range min=\"0\" max=\"1\"/>\n    </port>\n\n    <instance-data label=\"sample_rate\" type=\"LADSPA_Data\" />\n    <!-- Current number of bands -->\n    <instance-data label=\"num_bands\" type=\"int\" />\n    <!-- Main volume -->\n    <instance-data label=\"main_vol\" type=\"float\" />\n    <!-- All bands in one struct now -->\n    <instance-data label=\"bands_formant\" type=\"struct bandpasses\" />\n    <!-- All bands in one struct now -->\n    <instance-data label=\"bands_carrier\" type=\"struct bandpasses\" />\n    <!-- All bands in one struct now -->\n    <instance-data label=\"bands_out\" type=\"struct bands_out\" />\n    <!-- Level controls for each band -->\n    <instance-data label=\"ctrl_band_levels\" type=\"LADSPA_Data *\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "vynil_1905.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code><![CDATA[\n      #include <stdlib.h>\n      #include <limits.h>\n\n      #include \"ladspa-util.h\"\n      #include \"util/biquad.h\"\n\n      #define BUF_LEN 0.1\n      #define CLICK_BUF_SIZE 4096\n\n      #define df(x) ((sinf(x) + 1.0f) * 0.5f)\n\n      inline static float noise();\n      inline static float noise()\n      {\n         static unsigned int randSeed = 23;\n         randSeed = (randSeed * 196314165) + 907633515;\n         return randSeed / (float)INT_MAX - 1.0f;\n      }\n\n    ]]></code>\n  </global>\n\n  <plugin label=\"vynil\" id=\"1905\" class=\"DistortionPlugin\">\n    <name>VyNil (Vinyl Effect)</name>\n\n    <callback event=\"instantiate\"><![CDATA[\n      unsigned int i;\n      unsigned int buffer_size;\n\n      fs = (float)s_rate;\n      buffer_size = 4096;\n      while (buffer_size < s_rate * BUF_LEN) {\n\tbuffer_size *= 2;\n      }\n      buffer_m = malloc(sizeof(LADSPA_Data) * buffer_size);\n      buffer_s = malloc(sizeof(LADSPA_Data) * buffer_size);\n      buffer_mask = buffer_size - 1;\n      buffer_pos = 0;\n      click_buffer_omega.all = 0;\n      click_buffer_pos.all = 0;\n      click_gain = 0;\n      phi = 0.0f; /* Angular phase */\n\n      click_buffer = malloc(sizeof(LADSPA_Data) * CLICK_BUF_SIZE);\n      for (i=0; i<CLICK_BUF_SIZE; i++) {\n\tif (i<CLICK_BUF_SIZE / 2) {\n\t  click_buffer[i] = (double)i / (double)(CLICK_BUF_SIZE / 2);\n\t  click_buffer[i] *= click_buffer[i];\n\t  click_buffer[i] *= click_buffer[i];\n\t  click_buffer[i] *= click_buffer[i];\n\t} else {\n\t  click_buffer[i] = click_buffer[CLICK_BUF_SIZE - i];\n\t}\n      }\n\n      sample_cnt = 0;\n      def = 0.0f;\n      def_target = 0.0f;\n\n      lowp_m = calloc(sizeof(biquad), 1);\n      lowp_s = calloc(sizeof(biquad), 1);\n      highp = calloc(sizeof(biquad), 1);\n      noise_filt = calloc(sizeof(biquad), 1);\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      memset(buffer_m, 0, sizeof(LADSPA_Data) * (buffer_mask + 1));\n      memset(buffer_s, 0, sizeof(LADSPA_Data) * (buffer_mask + 1));\n      buffer_pos = 0;\n      click_buffer_pos.all = 0;\n      click_buffer_omega.all = 0;\n      click_gain = 0;\n      phi = 0.0f;\n\n      lp_set_params(lowp_m, 16000.0, 0.5, fs);\n      lp_set_params(lowp_s, 16000.0, 0.5, fs);\n      lp_set_params(highp, 10.0, 0.5, fs);\n      lp_set_params(noise_filt, 1000.0, 0.5, fs);\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float deflec = def;\n      float deflec_target = def_target;\n      float src_m, src_s;\n\n      /* angular velocity of platter * 16 */\n      const float omega = 960.0f / (rpm * fs);\n      const float age = (2000 - year) * 0.01f;\n      const unsigned int click_prob = (age*age*(float)RAND_MAX)/10 + click * 0.02 * RAND_MAX;\n      const float noise_amp = (click + wear * 0.3f) * 0.12f + (1993.0f - year) * 0.0031f;\n      const float bandwidth = (year - 1880.0f) * (rpm * 1.9f);\n      const float noise_bandwidth = bandwidth * (0.25 - wear * 0.02) + click * 200.0 + 300.0;\n      const float stereo = f_clamp((year - 1940.0f) * 0.02f, 0.0f, 1.0f);\n      const float wrap_gain = age * 3.1f + 0.05f;\n      const float wrap_bias = age * 0.1f;\n\n      lp_set_params(lowp_m, bandwidth * (1.0 - wear * 0.86), 2.0, fs);\n      lp_set_params(lowp_s, bandwidth * (1.0 - wear * 0.89), 2.0, fs);\n      hp_set_params(highp, (2000-year) * 8.0, 1.5, fs);\n      lp_set_params(noise_filt, noise_bandwidth, 4.0 + wear * 2.0, fs);\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tunsigned int o1, o2;\n\tfloat ofs;\n\n\tif ((sample_cnt & 15) == 0) {\n\t  const float ang = phi * 2.0f * M_PI;\n\t  const float w = warp * (2000.0f - year) * 0.01f;\n\t  deflec_target = w*df(ang)*0.5f + w*w*df(2.0f*ang)*0.31f +\n                             w*w*w*df(3.0f*ang)*0.129f;\n\t  phi += omega;\n\t  while (phi > 1.0f) {\n\t    phi -= 1.0f;\n\t  }\n\t  if ((unsigned int)rand() < click_prob) {\n\t    click_buffer_omega.all = ((rand() >> 6) + 1000) * rpm;\n\t    click_gain = noise_amp * 5.0f * noise();\n\t  }\n\t}\n\tdeflec = deflec * 0.1f + deflec_target * 0.9f;\n\n\t/* matrix into mid_side representation (this is roughly what stereo\n         * LPs do) */\n\tbuffer_m[buffer_pos] = in_l[pos] + in_r[pos];\n\tbuffer_s[buffer_pos] = in_l[pos] - in_r[pos];\n\n\t/* cacluate the effects of the surface warping */\n\tofs = fs * 0.009f * deflec;\n\to1 = f_round(floorf(ofs));\n\to2 = f_round(ceilf(ofs));\n\tofs -= o1;\n\tsrc_m = LIN_INTERP(ofs, buffer_m[(buffer_pos - o1 - 1) & buffer_mask], buffer_m[(buffer_pos - o2 - 1) & buffer_mask]);\n\tsrc_s = LIN_INTERP(ofs, buffer_s[(buffer_pos - o1 - 1) & buffer_mask], buffer_s[(buffer_pos - o2 - 1) & buffer_mask]);\n\n\tsrc_m = biquad_run(lowp_m, src_m + click_buffer[click_buffer_pos.part.in & (CLICK_BUF_SIZE - 1)] * click_gain);\n\n\t/* waveshaper */\n\tsrc_m = LIN_INTERP(age, src_m, sinf(src_m * wrap_gain + wrap_bias));\n\n\t/* output highpass */\n\tsrc_m = biquad_run(highp, src_m) + biquad_run(noise_filt, noise()) * noise_amp + click_buffer[click_buffer_pos.part.in & (CLICK_BUF_SIZE - 1)] * click_gain * 0.5f;\n\n\t/* stereo seperation filter */\n\tsrc_s = biquad_run(lowp_s, src_s) * stereo;\n\n        buffer_write(out_l[pos], (src_s + src_m) * 0.5f);\n        buffer_write(out_r[pos], (src_m - src_s) * 0.5f);\n\n\t/* roll buffer indexes */\n\tbuffer_pos = (buffer_pos + 1) & buffer_mask;\n\tclick_buffer_pos.all += click_buffer_omega.all;\n\tif (click_buffer_pos.part.in >= CLICK_BUF_SIZE) {\n\t  click_buffer_pos.all = 0;\n\t  click_buffer_omega.all = 0;\n\t}\n\tsample_cnt++;\n      }\n\n      plugin_data->buffer_pos = buffer_pos;\n      plugin_data->click_buffer_pos = click_buffer_pos;\n      plugin_data->click_buffer_omega = click_buffer_omega;\n      plugin_data->click_gain = click_gain;\n      plugin_data->sample_cnt = sample_cnt;\n      plugin_data->def_target = deflec_target;\n      plugin_data->def = deflec;\n      plugin_data->phi = phi;\n    ]]></callback>\n\n    <callback event=\"cleanup\"><![CDATA[\n      free(plugin_data->buffer_m);\n      free(plugin_data->buffer_s);\n      free(plugin_data->click_buffer);\n      free(plugin_data->highp);\n      free(plugin_data->lowp_m);\n      free(plugin_data->lowp_s);\n      free(plugin_data->noise_filt);\n    ]]></callback>\n\n    <port label=\"year\" dir=\"input\" type=\"control\" hint=\"default_maximum\">\n      <name>Year</name>\n      <p>The date of the recording/playback equipment to be simulated.</p>\n      <range min=\"1900\" max=\"1990\"/>\n    </port>\n\n    <port label=\"rpm\" dir=\"input\" type=\"control\" hint=\"default_minimum\">\n      <name>RPM</name>\n      <p>The rotational speed of the platter.</p>\n      <range min=\"33\" max=\"78\"/>\n    </port>\n\n    <port label=\"warp\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Surface warping</name>\n      <p>The degree of variation in height of the record surface.</p>\n      <range min=\"0.0\" max=\"1.0\"/>\n    </port>\n\n    <port label=\"click\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Crackle</name>\n      <p>The number of scratches on the record surface.</p>\n      <range min=\"0.0\" max=\"1.0\"/>\n    </port>\n\n    <port label=\"wear\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Wear</name>\n      <p>The amount of wear on the grooves.</p>\n      <range min=\"0.0\" max=\"1.0\"/>\n    </port>\n\n    <port label=\"in_l\" dir=\"input\" type=\"audio\">\n      <name>Input L</name>\n    </port>\n    <port label=\"in_r\" dir=\"input\" type=\"audio\">\n      <name>Input R</name>\n    </port>\n\n    <port label=\"out_l\" dir=\"output\" type=\"audio\">\n      <name>Output L</name>\n    </port>\n    <port label=\"out_r\" dir=\"output\" type=\"audio\">\n      <name>Output R</name>\n    </port>\n\n    <instance-data label=\"fs\" type=\"float\" />\n    <instance-data label=\"buffer_m\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_s\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"buffer_mask\" type=\"unsigned int\" />\n    <instance-data label=\"buffer_pos\" type=\"unsigned int\" />\n\n    <instance-data label=\"click_buffer\" type=\"LADSPA_Data *\" />\n    <instance-data label=\"click_buffer_pos\" type=\"fixp16\" />\n    <instance-data label=\"click_buffer_omega\" type=\"fixp16\" />\n    <instance-data label=\"click_gain\" type=\"float\" />\n\n    <instance-data label=\"phi\" type=\"float\" />\n    <instance-data label=\"sample_cnt\" type=\"unsigned int\" />\n    <instance-data label=\"def\" type=\"float\" />\n    <instance-data label=\"def_target\" type=\"float\" />\n\n    <instance-data label=\"lowp_m\" type=\"biquad *\" />\n    <instance-data label=\"lowp_s\" type=\"biquad *\" />\n    <instance-data label=\"noise_filt\" type=\"biquad *\" />\n    <instance-data label=\"highp\" type=\"biquad *\" />\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "wave_terrain_1412.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n  </global>\n\n  <plugin label=\"waveTerrain\" id=\"1412\" class=\"OscillatorPlugin\">\n    <name>Wave Terrain Oscillator</name>\n    <p>A Wave Terrain oscillator, taken from Curtis Roads' example in {\\em The Computer Music Tutorial}.</p>\n    <p>Inputs x and y move the cursor around on a 2D landscape \"wavetable\" that is used to generate the output. The function used is  z = (x - y) * (x - 1) * (x + 1) * (y - 1) * (y + 1).</p>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      float x, y;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\tx = xb[pos];\n\ty = yb[pos];\n        buffer_write(zb[pos], (x - y) * (x - 1.0f) * (x + 1.0f) * (y - 1.0f) * (y + 1.0f) );\n      }\n    ]]></callback>\n\n    <port label=\"xb\" dir=\"input\" type=\"audio\" hint=\"default_0\">\n      <name>x</name>\n    </port>\n\n    <port label=\"yb\" dir=\"input\" type=\"audio\" hint=\"default_0\">\n      <name>y</name>\n    </port>\n\n    <port label=\"zb\" dir=\"output\" type=\"audio\">\n      <name>z</name>\n    </port>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "xfade_1915.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n    <code>\n      #include \"ladspa-util.h\"\n    </code>\n  </global>\n\n  <plugin label=\"xfade\" id=\"1915\" class=\"MixerPlugin\">\n    <name>Crossfade</name>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      const float coefB = (xfade + 1.0f) * 0.5f;\n      const float coefA = 1.0f - coefB;\n\n      for (pos = 0; pos < sample_count; pos++) {\n        buffer_write(outputL[pos], inputLA[pos] * coefA + inputLB[pos] * coefB);\n        buffer_write(outputR[pos], inputRA[pos] * coefA + inputRB[pos] * coefB);\n      }\n    ]]></callback>\n\n    <port label=\"xfade\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Crossfade</name>\n      <p>Controls the degree to which the inputs are mixed into the output. A\nvalue of -1 means that the output is just the A input, and a value of 1.0\nmeans that it is just the B input.</p>\n      <range min=\"-1\" max=\"1\"/>\n    </port>\n\n    <port label=\"inputLA\" dir=\"input\" type=\"audio\">\n      <name>Input A left</name>\n    </port>\n    <port label=\"inputRA\" dir=\"input\" type=\"audio\">\n      <name>Input A right</name>\n    </port>\n\n    <port label=\"inputLB\" dir=\"input\" type=\"audio\">\n      <name>Input B left</name>\n    </port>\n    <port label=\"inputRB\" dir=\"input\" type=\"audio\">\n      <name>Input B right</name>\n    </port>\n\n    <port label=\"outputL\" dir=\"output\" type=\"audio\">\n      <name>Output left</name>\n    </port>\n    <port label=\"outputR\" dir=\"output\" type=\"audio\">\n      <name>Output right</name>\n    </port>\n  </plugin>\n\n  <plugin label=\"xfade4\" id=\"1917\" class=\"MixerPlugin\">\n    <name>Crossfade (4 outs)</name>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      const float coefB = (xfade + 1.0f) * 0.5f;\n      const float coefA = 1.0f - coefB;\n\n      for (pos = 0; pos < sample_count; pos++) {\n        buffer_write(outputLA[pos], inputLA[pos] * coefA);\n        buffer_write(outputRA[pos], inputRA[pos] * coefA);\n        buffer_write(outputLB[pos], inputLB[pos] * coefB);\n        buffer_write(outputRB[pos], inputRB[pos] * coefB);\n      }\n    ]]></callback>\n\n    <port label=\"xfade\" dir=\"input\" type=\"control\" hint=\"default_0\">\n      <name>Crossfade</name>\n      <p>Controls the degree to which the inputs are mixed into the output. A\nvalue of -1 means that the output is just the A input, and a value of 1.0\nmeans that it is just the B input.</p>\n      <range min=\"-1\" max=\"1\"/>\n    </port>\n\n    <port label=\"inputLA\" dir=\"input\" type=\"audio\">\n      <name>Input A left</name>\n    </port>\n    <port label=\"inputRA\" dir=\"input\" type=\"audio\">\n      <name>Input A right</name>\n    </port>\n\n    <port label=\"inputLB\" dir=\"input\" type=\"audio\">\n      <name>Input B left</name>\n    </port>\n    <port label=\"inputRB\" dir=\"input\" type=\"audio\">\n      <name>Input B right</name>\n    </port>\n\n    <port label=\"outputLA\" dir=\"output\" type=\"audio\">\n      <name>Output A left</name>\n    </port>\n    <port label=\"outputRA\" dir=\"output\" type=\"audio\">\n      <name>Output A right</name>\n    </port>\n\n    <port label=\"outputLB\" dir=\"output\" type=\"audio\">\n      <name>Output B left</name>\n    </port>\n    <port label=\"outputRB\" dir=\"output\" type=\"audio\">\n      <name>Output B right</name>\n    </port>\n  </plugin>\n</ladspa>\n"
  },
  {
    "path": "zm1_1428.xml",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE ladspa SYSTEM \"ladspa-swh.dtd\">\n<?xml-stylesheet href=\"ladspa.css\" type=\"text/css\"?>\n\n<ladspa>\n  <global>\n    <meta name=\"maker\" value=\"Steve Harris &lt;steve@plugin.org.uk&gt;\"/>\n    <meta name=\"copyright\" value=\"GPL\"/>\n    <meta name=\"properties\" value=\"HARD_RT_CAPABLE\"/>\n  </global>\n\n  <plugin label=\"zm1\" id=\"1428\" class=\"UtilityPlugin\">\n    <name>z-1</name>\n    <p>A plugin that implements the $z^{-1}$ function (a single sample delay).</p>\n\n    <callback event=\"instantiate\"><![CDATA[\n      xm1 = 0.0f;\n    ]]></callback>\n\n    <callback event=\"activate\"><![CDATA[\n      xm1 = 0.0f;\n    ]]></callback>\n\n    <callback event=\"run\"><![CDATA[\n      unsigned long pos;\n      LADSPA_Data tmp;\n\n      for (pos = 0; pos < sample_count; pos++) {\n\ttmp = input[pos];\n        buffer_write(output[pos], xm1);\n\txm1 = tmp;\n      }\n      plugin_data->xm1 = xm1;\n    ]]></callback>\n\n    <port label=\"input\" dir=\"input\" type=\"audio\">\n      <name>Input</name>\n    </port>\n\n    <port label=\"output\" dir=\"output\" type=\"audio\">\n      <name>Output</name>\n    </port>\n\n    <instance-data label=\"xm1\" type=\"LADSPA_Data\" />\n  </plugin>\n</ladspa>\n"
  }
]