[grass] 03/09: New upstream version 7.4.0

Bas Couwenberg sebastic at debian.org
Fri Jan 26 11:44:44 UTC 2018


This is an automated email from the git hooks/post-receive script.

sebastic pushed a commit to branch master
in repository grass.

commit 41c56b65c2fba7b06d6e44da8ba296c88d04a378
Author: Bas Couwenberg <sebastic at xs4all.nl>
Date:   Fri Jan 26 11:28:32 2018 +0100

    New upstream version 7.4.0
---
 ChangeLog_7.4.0.gz                                 |  Bin 0 -> 882545 bytes
 ChangeLog_7.4.0RC2.gz                              |  Bin 881734 -> 0 bytes
 contributors.csv                                   |    2 +-
 display/d.text/d.text.html                         |   16 +-
 display/d.text/d_text.png                          |  Bin 0 -> 23691 bytes
 doc/howto_release.txt                              |  347 +--
 doc/infrastructure.txt                             |   17 +-
 gui/wxpython/core/ws.py                            |    6 +-
 gui/wxpython/datacatalog/tree.py                   |    4 +-
 gui/wxpython/photo2image/g.gui.photo2image.html    |   10 +-
 gui/wxpython/photo2image/g.gui.photo2image.py      |    2 +-
 gui/wxpython/photo2image/ip2i_manager.py           |    4 +-
 gui/wxpython/photo2image/ip2i_mapdisplay.py        |    2 +-
 gui/wxpython/photo2image/ip2i_statusbar.py         |    2 +-
 gui/wxpython/photo2image/ip2i_toolbars.py          |    2 +-
 imagery/i.atcorr/aerosolmodel.cpp                  |    2 +-
 imagery/i.atcorr/iwave.cpp                         | 3145 +++++---------------
 .../i.ortho.photo/i.ortho.photo/i.ortho.photo.html |    4 +-
 imagery/i.ortho.photo/i.ortho.photo/menu.c         |   11 -
 include/Make/Grass.make                            |    2 +-
 include/VERSION                                    |    2 +-
 lib/Makefile                                       |    2 +-
 lib/raster/gdal.c                                  |    7 +-
 mswindows/osgeo4w/package.sh                       |    3 +-
 mswindows/osgeo4w/setup_x86.hint.tmpl              |    4 +-
 mswindows/osgeo4w/setup_x86_64.hint.tmpl           |    4 +-
 raster/r.horizon/r.horizon.html                    |    6 +-
 .../r.series.accumulate/r.series.accumulate.html   |   46 +-
 raster/r.series/r.series.html                      |   51 +-
 raster/r.sun/r.sun.html                            |    4 +-
 rpm/grass.spec                                     |  555 ++++
 scripts/r.fillnulls/r.fillnulls.py                 |    9 +-
 temporal/t.rast.algebra/t.rast.algebra.html        |    4 +-
 vector/v.clean/v.clean.html                        |    5 +-
 vector/v.generalize/main.c                         |    2 +
 35 files changed, 1546 insertions(+), 2736 deletions(-)

diff --git a/ChangeLog_7.4.0.gz b/ChangeLog_7.4.0.gz
new file mode 100644
index 0000000..78da67f
Binary files /dev/null and b/ChangeLog_7.4.0.gz differ
diff --git a/ChangeLog_7.4.0RC2.gz b/ChangeLog_7.4.0RC2.gz
deleted file mode 100644
index bf89ad8..0000000
Binary files a/ChangeLog_7.4.0RC2.gz and /dev/null differ
diff --git a/contributors.csv b/contributors.csv
index cbc71ca..529a269 100644
--- a/contributors.csv
+++ b/contributors.csv
@@ -38,7 +38,7 @@ job,Job Spijker,<spijker geo.uu.nl>,Netherlands,-,-
 john,John Huddleston,<jhudd.lamar colostate.edu>,USA,-,-
 justin,Justin Hickey,<jhickey hpcc.nectec.or.th>,Thailand,-,-
 malcolm,Malcolm Blue,<mblue nb.sympatico.ca>,Canada,-,-
-markus,Markus Neteler,<neteler osgeo.org>,Italy,neteler,yes
+markus,Markus Neteler,<neteler osgeo.org>,Germany,neteler,yes
 martin,Martin Wegmann,<wegmann biozentrum.uni-wuerzburg.de>,Germany,wegmann,yes
 martinl,Martin Landa,<landa.martin gmail.com>,Czech Republic,martinl,yes
 massimo,Massimo Cuomo,<m.cuomo acsys.it>,Switzerland,-,-
diff --git a/display/d.text/d.text.html b/display/d.text/d.text.html
index b175435..cac2763 100644
--- a/display/d.text/d.text.html
+++ b/display/d.text/d.text.html
@@ -70,6 +70,7 @@ color yellow, in bold, and using 4/100'ths (4%) of the
 active frame's vertical space per line:
 <p>
 
+<!--
 <div class="code"><pre>
 <b>d.text</b> << EOF
 .C yellow
@@ -79,10 +80,19 @@ active frame's vertical space per line:
 This is a test of d.text
 EOF
 </pre></div>
-
-
 The user presses <em>control-d</em> 
 (the "Ctrl" and "d" keys) to end input to <em>d.text</em> (equal to EOF).
+-->
+
+<div class="code"><pre>
+d.text text="This is a test of d.text" color=yellow bgcolor=gray size=4
+</pre></div>
+
+<div align="center" style="margin: 10px">
+<img src='d_text.png' width="600" border="1">
+<br>
+<i>Displayed Text</i>
+</div>
 
 <h2>NOTES</h2>
 
@@ -109,4 +119,4 @@ U.S. Army Construction Engineering
 Research Laboratory
 <p>Updates by Huidae Cho
 
-<p><i>Last changed: $Date: 2014-12-12 00:12:46 +0100 (Fri, 12 Dec 2014) $</i>
+<p><i>Last changed: $Date: 2018-01-20 16:59:07 +0100 (Sat, 20 Jan 2018) $</i>
diff --git a/display/d.text/d_text.png b/display/d.text/d_text.png
new file mode 100644
index 0000000..264a5d0
Binary files /dev/null and b/display/d.text/d_text.png differ
diff --git a/doc/howto_release.txt b/doc/howto_release.txt
index aaecef4..c6d1d4c 100644
--- a/doc/howto_release.txt
+++ b/doc/howto_release.txt
@@ -1,6 +1,6 @@
 How to release GRASS GIS binaries and source code
 
-$Date: 2017-11-12 20:51:43 +0100 (Sun, 12 Nov 2017) $
+$Date: 2018-01-26 10:12:26 +0100 (Fri, 26 Jan 2018) $
 
 Note: This text contains *some* rules only applicable to the
       development coordinator (currently Markus Neteler, PSC Chair).
@@ -14,148 +14,161 @@ Contents
 ###########################################
 (A) HOWTO create a release
 
-1. Local work (done by release coordinator)
-
-   - svn up
-   - svn status --no-ignore
-   - check if
-        ( cd doc/raster/r.example/ ; make clean ; make )
-        ( cd doc/vector/v.example/ ; make clean ; make )
-      still compile; fix otherwise
-
-   - fix typos with tools/fix_typos.sh
- 
-   - Check that autoconf scripts are up-to-date (to do only in RC cycle!):
-
-      rm -f config.guess config.sub
-      wget http://git.savannah.gnu.org/cgit/config.git/plain/config.guess
-      wget http://git.savannah.gnu.org/cgit/config.git/plain/config.sub
-      svn diff config.guess config.sub
-      autoconf-2.13
-      # check and submit to SVN:
-      svn ci -m"config.guess + config.sub: updated from http://git.savannah.gnu.org/cgit/config.git/plain/" config.guess config.sub configure
-      # test by running ./configure 
-
-   - make distclean
-
-   - cleanup rubbish:
-       rm -f locale/templates/*.pot
-       rm -f locale/po/messages.mo
-       rm -f demolocation/PERMANENT/.bash*
-       find . -name '*~'     | xargs rm
-       find . -name '*.bak'  | xargs rm
-       find . -name '.#*'    | xargs rm
-       find . -name '*.orig' | xargs rm
-       find . -name '*.rej'  | xargs rm
-       find . -name '*.o'    | xargs rm
-       find . -name '*.pyc'  | xargs rm
-       find . -name 'OBJ.*'  | xargs rm -r
-       rm -f gui/wxpython/menustrings.py gui/wxpython/build_ext.pyc gui/wxpython/xml/menudata.xml gui/wxpython/xml/module_tree_menudata.xml
-       chmod -R a+r *
-
-       svn status
-
-   - Create release branch (only if not yet existing)
-
-   - Update VERSION file to release version:
-      vim include/VERSION
+0. Preparations
+
+#check if still compile; fix otherwise
+( cd doc/raster/r.example/ ; make clean ; make )
+( cd doc/vector/v.example/ ; make clean ; make )
+
+# fix typos in source code with 
+tools/fix_typos.sh
+
+
+1. Local work
+
+# done by release manager
+
+# Only allowed RC cycle, not final!:
+# Check that autoconf scripts are up-to-date:
+
+rm -f config.guess config.sub
+wget http://git.savannah.gnu.org/cgit/config.git/plain/config.guess
+wget http://git.savannah.gnu.org/cgit/config.git/plain/config.sub
+svn diff config.guess config.sub
+autoconf-2.13
+# check and submit to SVN:
+svn ci -m"config.guess + config.sub: updated from http://git.savannah.gnu.org/cgit/config.git/plain/" config.guess config.sub configure
+# test by running ./configure 
+
+# update from SVN
+svn up
+
+# cleanup rubbish:
+rm -f locale/templates/*.pot
+rm -f locale/po/messages.mo
+rm -f demolocation/PERMANENT/.bash*
+find . -name '*~'     | xargs rm
+find . -name '*.bak'  | xargs rm
+find . -name '.#*'    | xargs rm
+find . -name '*.orig' | xargs rm
+find . -name '*.rej'  | xargs rm
+find . -name '*.o'    | xargs rm
+find . -name '*.pyc'  | xargs rm
+find . -name 'OBJ.*'  | xargs rm -r
+rm -f gui/wxpython/menustrings.py gui/wxpython/build_ext.pyc gui/wxpython/xml/menudata.xml gui/wxpython/xml/module_tree_menudata.xml
+chmod -R a+r *
+
+# double check
+svn status --no-ignore
+svn status
+
+# Create release branch (only if not yet existing)
+# ... see below
+
+# Update VERSION file to release version:
+vim include/VERSION
 
 #example:
 7
 4
-0RC1
-2017
-      rm -f include/VERSION~
-
-    - Update OSGeo4W setup.hint file
-       - for RC candidates use 'test' keyword
-       - for final version use 'curr' keyword
-
-      vim mswindows/osgeo4w/setup.hint.tmpl
-
-     #version:
-     MAJOR=`cat include/VERSION | head -1 | tail -1`
-     MINOR=`cat include/VERSION | head -2 | tail -1`
-     RELEASE=`cat include/VERSION | head -3 | tail -1`
-     VERSION=${MAJOR}.${MINOR}.${RELEASE}
-     echo $VERSION
-
-     svn ci -m"GRASS GIS $VERSION" include/VERSION mswindows/osgeo4w/setup.hint.tmpl
-     svn up
-
- o Create Changelog file on release branch:
-     # http://ch.tudelft.nl/~arthur/svn2cl/
-     svn2cl
-     mv ChangeLog ChangeLog_$VERSION
-     head ChangeLog_$VERSION
-     gzip ChangeLog_$VERSION
-
- o   Tag release (http://trac.osgeo.org/grass/browser/grass/tags):
-     http://svnbook.red-bean.com/en/1.4/svn.branchmerge.tags.html
-
-          TODAY=`date +"%Y%m%d"`
-          RELEASETAG=release_${TODAY}_grass_${MAJOR}_${MINOR}_${RELEASE}
-          echo $RELEASETAG
-
-          URL=https://svn.osgeo.org/grass
-          svn copy $URL/grass/branches/releasebranch_7_4 \
-	       $URL/grass/tags/$RELEASETAG \
-	       -m "Tagging release grass_${MAJOR}_${MINOR}_${RELEASE}"
+1RC1
+2018
+
+# cleanup
+rm -f include/VERSION~
+
+# Update OSGeo4W setup.hint file
+### no longer needed
+#vim mswindows/osgeo4w/setup_x86.hint.tmpl
+#vim mswindows/osgeo4w/setup_x86_64.hint.tmpl
+
+#### Changelog and tagging etc
+
+# create version env var for convenience:
+MAJOR=`cat include/VERSION | head -1 | tail -1`
+MINOR=`cat include/VERSION | head -2 | tail -1`
+RELEASE=`cat include/VERSION | head -3 | tail -1`
+VERSION=${MAJOR}.${MINOR}.${RELEASE}
+echo $VERSION
+
+svn ci -m"GRASS GIS $VERSION" include/VERSION
+svn up
+
+# Create Changelog file on release branch:
+# http://ch.tudelft.nl/~arthur/svn2cl/
+svn2cl
+mv ChangeLog ChangeLog_$VERSION
+head ChangeLog_$VERSION
+gzip ChangeLog_$VERSION
+
+# Tag release (http://trac.osgeo.org/grass/browser/grass/tags):
+# see http://svnbook.red-bean.com/en/1.4/svn.branchmerge.tags.html
+
+TODAY=`date +"%Y%m%d"`
+RELEASETAG=release_${TODAY}_grass_${MAJOR}_${MINOR}_${RELEASE}
+echo $RELEASETAG
+
+URL=https://svn.osgeo.org/grass
+svn copy $URL/grass/branches/releasebranch_7_4 \
+	$URL/grass/tags/$RELEASETAG \
+	-m "Tagging release grass_${MAJOR}_${MINOR}_${RELEASE}"
       
       
- o create source package (in the source directory):
-     echo grass-${VERSION}
-
-     mkdir grass-${VERSION}
-     mv * grass-${VERSION}/
-     # do not include the debian control files:
-     mv grass-${VERSION}/debian .
-     # create the package:
-     tar cvfzh grass-${VERSION}.tar.gz grass-${VERSION}/* --exclude=.svn
-     # restore src code location:
-     mv ./grass-${VERSION}/* .
-     rmdir ./grass-${VERSION}
-     # Calculating MD5 sum:
-     md5sum grass-${VERSION}.tar.gz > grass-${VERSION}.md5sum
-
- o reset include/VERSION file to SVN version:
-    vim include/VERSION
+# create source package (in the source directory):
+echo grass-${VERSION}
+
+mkdir grass-${VERSION}
+mv * grass-${VERSION}/
+# do not include the debian control files:
+mv grass-${VERSION}/debian .
+# create the package:
+tar cvfzh grass-${VERSION}.tar.gz grass-${VERSION}/* --exclude=.svn
+# restore src code location:
+mv ./grass-${VERSION}/* .
+rmdir ./grass-${VERSION}
+# Calculating MD5 sum:
+md5sum grass-${VERSION}.tar.gz > grass-${VERSION}.md5sum
+
+# reset include/VERSION file to SVN version:
+vim include/VERSION
 
 #example
 7
 4
-0svn
-2017
-
-    rm -f include/VERSION~
-    svn ci -m"back to SVN" include/VERSION
-
-
- o Store the source tarball (twice) in (use scp -p FILES grass:):
-    SERVER1=grass.osgeo.org
-    SERVER1DIR=/var/www/grass/grass-cms/grass$MAJOR$MINOR/source/
-    SERVER2=upload.osgeo.org
-    SERVER2DIR=/osgeo/download/grass/grass$MAJOR$MINOR/source/
-    echo $SERVER1:$SERVER1DIR
-    echo $SERVER2:$SERVER2DIR
-
-   # copy along with associated files:
-     scp -p grass-$VERSION.* AUTHORS COPYING ChangeLog_$VERSION.gz \
-         INSTALL REQUIREMENTS.html SUBMITTING neteler@$SERVER1:$SERVER1DIR
-     scp -p grass-$VERSION.* AUTHORS COPYING ChangeLog_$VERSION.gz \
-         INSTALL REQUIREMENTS.html SUBMITTING neteler@$SERVER2:$SERVER2DIR
-
-   # Only full release: generate link to "latest" source code
-     ssh neteler@$SERVER1 rm -f $SERVER1DIR/grass-$MAJOR.$MINOR-latest.tar.gz
-     ssh neteler@$SERVER1 "cd $SERVER1DIR ; ln -s grass-$VERSION.tar.gz $SERVER1DIR/grass-$MAJOR.$MINOR-latest.tar.gz"
-
- o update winGRASS related files
-    - Update the winGRASS version
-      grass-addons/tools/wingrass-packager/grass_packager_release.bat
-      grass-addons/tools/wingrass-packager/grass_addons.sh
-      grass-addons/tools/wingrass-packager/grass_copy_wwwroot.sh
-
- o update web site to new version: CMS
+1svn
+2018
+
+rm -f include/VERSION~
+svn ci -m"back to SVN" include/VERSION
+
+
+# Store the source tarball (twice) in (use scp -p FILES grass:):
+SERVER1=grass.osgeo.org
+SERVER1DIR=/var/www/grass/grass-cms/grass$MAJOR$MINOR/source/
+SERVER2=upload.osgeo.org
+SERVER2DIR=/osgeo/download/grass/grass$MAJOR$MINOR/source/
+echo $SERVER1:$SERVER1DIR
+echo $SERVER2:$SERVER2DIR
+
+# upload along with associated files:
+scp -p grass-$VERSION.* AUTHORS COPYING ChangeLog_$VERSION.gz \
+  INSTALL REQUIREMENTS.html SUBMITTING neteler@$SERVER1:$SERVER1DIR
+
+scp -p grass-$VERSION.* AUTHORS COPYING ChangeLog_$VERSION.gz \
+  INSTALL REQUIREMENTS.html SUBMITTING neteler@$SERVER2:$SERVER2DIR
+
+# Only full release!
+# generate link to "latest" source code
+ssh neteler@$SERVER1 rm -f $SERVER1DIR/grass-$MAJOR.$MINOR-latest.tar.gz
+ssh neteler@$SERVER1 "cd $SERVER1DIR ; ln -s grass-$VERSION.tar.gz $SERVER1DIR/grass-$MAJOR.$MINOR-latest.tar.gz"
+
+# update winGRASS related files: Update the winGRASS version
+vim grass-addons/tools/wingrass-packager/grass_packager_release.bat
+vim grass-addons/tools/wingrass-packager/grass_addons.sh
+vim grass-addons/tools/wingrass-packager/grass_copy_wwwroot.sh
+
+###################
+# update web site to new version: CMS
     - News section
     - https://grass.osgeo.org/download/software/
     - https://grass.osgeo.org/download/software/sources/
@@ -165,39 +178,39 @@ Contents
 
      write announcement
       - store in trac:
-           http://trac.osgeo.org/grass/wiki/Release/7.XX.YY-News
-           https://trac.osgeo.org/grass/wiki/Grass7/NewFeatures74  <- major changes only
+    http://trac.osgeo.org/grass/wiki/Release/7.XX.YY-News
+    https://trac.osgeo.org/grass/wiki/Grass7/NewFeatures74  <- major changes only
       - update version in https://grasswiki.osgeo.org/wiki/GRASS-Wiki
       - store in Web as announces/announce_grass$MAJOR$MINOR$RELEASE.html <- how? with protected PHP upload page?
 
      full release:
       - update trac 
-         - milesstone/add next: https://trac.osgeo.org/grass/admin/ticket/milestones
-         - add released version: https://trac.osgeo.org/grass/admin/ticket/versions
+  - milesstone/add next: https://trac.osgeo.org/grass/admin/ticket/milestones
+  - add released version: https://trac.osgeo.org/grass/admin/ticket/versions
       
 
  o upload user HTML manual in case of *final release* from compiled English
    version at (warning: needs stuff to be compiled).
       - download new source code package, compile with most settings
       -  cd dist.$ARCH/docs/html
-         echo www/grass$MAJOR$MINOR/manuals/
-         scp -r * neteler at grass.osgeo.org:/osgeo/grass/grass-cms/grass$MAJOR$MINOR/manuals/
-         scp -r * neteler at upload.osgeo.org:/osgeo/download/grass/grass$MAJOR$MINOR/manuals/
+  echo www/grass$MAJOR$MINOR/manuals/
+  scp -r * neteler at grass.osgeo.org:/osgeo/grass/grass-cms/grass$MAJOR$MINOR/manuals/
+  scp -r * neteler at upload.osgeo.org:/osgeo/download/grass/grass$MAJOR$MINOR/manuals/
 
  o stable release: update cronjob 'cron_grass_HEAD_src_snapshot.sh' on grass.osgeo.org to next but one
-                   release tag for the differences
+     release tag for the differences
 
  o Trac updates:
       - Add new release to https://trac.osgeo.org/grass/admin/ticket/versions
       - Set "complete" flag in https://trac.osgeo.org/grass/milestone/7.4.x --> Edit Milestone
       - Batch modify tickets, set to next milestone (update this query accordingly: two entries to change)
-        https://trac.osgeo.org/grass/query?status=assigned&status=new&status=reopened&milestone=7.4.0&milestone=7.4.1&group=status&col=id&col=summary&col=owner&col=type&col=priority&col=component&col=version&order=priority
-        - Set max items to 1000, then select all shown tickets via Status: assigned/new/reopened sections
-        - Scroll down to "Batch modify": under the "Comment" section, add Field "Milestone" and set to next version
-        - then use "Change ticket" button, done.
+ https://trac.osgeo.org/grass/query?status=assigned&status=new&status=reopened&milestone=7.4.0&milestone=7.4.1&group=status&col=id&col=summary&col=owner&col=type&col=priority&col=component&col=version&order=priority
+ - Set max items to 1000, then select all shown tickets via Status: assigned/new/reopened sections
+ - Scroll down to "Batch modify": under the "Comment" section, add Field "Milestone" and set to next version
+ - then use "Change ticket" button, done.
       - Only in case of new release branch being created:
-         Add Wiki Macro definitions for manual pages G7X:modulename
-         - Edit: https://trac.osgeo.org/grass/wiki/InterMapTxt
+  Add Wiki Macro definitions for manual pages G7X:modulename
+  - Edit: https://trac.osgeo.org/grass/wiki/InterMapTxt
 
 
  o WinGRASS notes:
@@ -242,20 +255,20 @@ Contents
    - publish related announcement press release at:
    
    Our GRASS web site: /announces/
-                       Note: DON'T use relative links there
+  Note: DON'T use relative links there
 
    Our main mailing lists:
-                       http://lists.osgeo.org/mailman/listinfo/grass-announce
-                         <grass-announce at lists.osgeo.org>
-                       http://lists.osgeo.org/mailman/listinfo/grass-dev
-                         <grass-dev at lists.osgeo.org>
-                       http://lists.osgeo.org/mailman/listinfo/grassuser
-                         <grass-user at lists.osgeo.org>
-
-   DebianGIS:          <debian-gis at lists.debian.org>
-   FreeGIS:            <freegis-list at intevation.de>
-   Geowanking:         <geowanking at geowanking.org>
-   OSGeo.org:          <news_item at osgeo.org>
+  http://lists.osgeo.org/mailman/listinfo/grass-announce
+    <grass-announce at lists.osgeo.org>
+  http://lists.osgeo.org/mailman/listinfo/grass-dev
+    <grass-dev at lists.osgeo.org>
+  http://lists.osgeo.org/mailman/listinfo/grassuser
+    <grass-user at lists.osgeo.org>
+
+   DebianGIS:   <debian-gis at lists.debian.org>
+   FreeGIS:     <freegis-list at intevation.de>
+   Geowanking:  <geowanking at geowanking.org>
+   OSGeo.org:   <news_item at osgeo.org>
 
  Email:
    info at osgeo.org
@@ -277,7 +290,7 @@ Contents
    http://directory.fsf.org/wiki/GRASS_%28Geographic_Resources_Analysis_Support_System%29
    https://www.linux-apps.com/p/1128004/edit/ (MN)
    https://news.eoportal.org/web/eoportal/share-your-news (MN)
-            -> Share your news with the EO community
+     -> Share your news with the EO community
    https://www.heise.de/download/product/grass-gis-7105 (update, MN)
 
    See also: https://grass.osgeo.org/wiki/Contact_Databases
@@ -290,17 +303,17 @@ Contents
    http://svnbook.red-bean.com/en/1.1/ch04s07.html
 
    GRASS 7.4 release branch:
-          BRANCH=releasebranch_7_4
-          URL=https://svn.osgeo.org/grass
-          svn copy $URL/grass/trunk \
-                   $URL/grass/branches/$BRANCH \
-                   -m "Release branch for GRASS 7.4.x"
+   BRANCH=releasebranch_7_4
+   URL=https://svn.osgeo.org/grass
+   svn copy $URL/grass/trunk \
+     $URL/grass/branches/$BRANCH \
+     -m "Release branch for GRASS 7.4.x"
 
 
    Switching current local copy to above development branch:
    (http://svnbook.red-bean.com/en/1.1/ch04s05.html)
-           cd /path/to/your/local/copy/trunk
-           svn switch https://svn.osgeo.org/grass/grass/branches/releasebranch_7_4 .
+    cd /path/to/your/local/copy/trunk
+    svn switch https://svn.osgeo.org/grass/grass/branches/releasebranch_7_4 .
 
 ----------
 Example: GRASS GIS 7.4 release branch creation
diff --git a/doc/infrastructure.txt b/doc/infrastructure.txt
index c294cc8..1fe39bb 100644
--- a/doc/infrastructure.txt
+++ b/doc/infrastructure.txt
@@ -1,7 +1,7 @@
 How the GRASS Webserver and related infrastructure works
 
 written by M. Neteler
-Last changed: $Date: 2017-10-23 22:31:51 +0200 (Mon, 23 Oct 2017) $
+Last changed: $Date: 2018-01-25 18:04:08 +0100 (Thu, 25 Jan 2018) $
 
 
 Related Wiki documents:
@@ -165,6 +165,21 @@ Current bugtracker (Jan 2008 - today):
   * https://trac.osgeo.org/grass/report
   * Trac
   * posts new bugs and comments to grass-dev list
+  * Settings:
+
+tracsvn (OSGeo server)
+/var/www/trac/env/grass/conf/trac.ini
+  downloadable_paths = /grass-addons/grass7/*/*,/sandbox/*/*
+  path = /var/www/grass/htdocs
+  link = https://grass.osgeo.org/
+  src = site/grasslogo_vector_small.png
+  smtp_always_cc = grass-dev at lists.osgeo.org
+  smtp_replyto = grass-dev at lists.osgeo.org
+  url = https://grass.osgeo.org
+  .dir = /var/www/svn/repos/grass
+  base_url = https://trac.osgeo.org/grass/
+  database = postgres://postgres@/trac_grass
+
 
 Old bugtracker (Jan 2007 - Dec 2008):
   * http://wald.intevation.org/tracker/?group_id=21
diff --git a/gui/wxpython/core/ws.py b/gui/wxpython/core/ws.py
index 6817946..a378f47 100644
--- a/gui/wxpython/core/ws.py
+++ b/gui/wxpython/core/ws.py
@@ -196,7 +196,11 @@ class RenderWMSMgr(wx.EvtHandler):
             if len(r) < 2:
                 continue
             try:
-                if r[0] in ['cols', 'rows']:
+                if r[0] in ['e-w resol3', 'n-s resol3', 'rows3', 'cols3',
+                            'depths']:
+                    # ignore 3D region values (causing problems in latlong locations)
+                    continue
+                if r[0] in ['cols', 'rows', 'zone', 'proj']:
                     region[r[0]] = int(r[1])
                 else:
                     region[r[0]] = float(r[1])
diff --git a/gui/wxpython/datacatalog/tree.py b/gui/wxpython/datacatalog/tree.py
index e70095a..018f015 100644
--- a/gui/wxpython/datacatalog/tree.py
+++ b/gui/wxpython/datacatalog/tree.py
@@ -568,7 +568,7 @@ class DataCatalogTree(LocationMapTree):
         self.copy_type = self.selected_type
         self.copy_mapset = self.selected_mapset
         self.copy_location = self.selected_location
-        label = _("Map <{layer}> marked for moving.").format(layer=self.copy_layer)
+        label = _("Map <{layer}> marked for moving.").format(layer=self.copy_layer.label)
         self.showNotification.emit(message=label)
 
     def OnCopyMap(self, event):
@@ -578,7 +578,7 @@ class DataCatalogTree(LocationMapTree):
         self.copy_type = self.selected_type
         self.copy_mapset = self.selected_mapset
         self.copy_location = self.selected_location
-        label = _("Map <{layer}> marked for copying.").format(layer=self.copy_layer)
+        label = _("Map <{layer}> marked for copying.").format(layer=self.copy_layer.label)
         self.showNotification.emit(message=label)
 
     def OnRenameMap(self, event):
diff --git a/gui/wxpython/photo2image/g.gui.photo2image.html b/gui/wxpython/photo2image/g.gui.photo2image.html
index 58ea626..75a033f 100644
--- a/gui/wxpython/photo2image/g.gui.photo2image.html
+++ b/gui/wxpython/photo2image/g.gui.photo2image.html
@@ -24,16 +24,16 @@ an extension file (if not given, defaults to \$filename_ip2i_out)
 An example for Location <b>imagery60</b>:
 
 <div class="code"><pre>
-g.gui.iphoto2image group=aerial at PERMANENT raster=gs13.1 at PERMANENT camera=gscamera order=2 extension=try --o
+g.gui.photo2image group=aerial at PERMANENT raster=gs13.1 at PERMANENT camera=gscamera order=2 extension=try --o
 </pre></div>
 
-<h3>Screenshot of g.gui.iphoto2image</h3>
+<h3>Screenshot of g.gui.photo2image</h3>
 
 <div align="center" style="margin: 10px">
 <a href="wxGUI_iphoto2image_frame.jpg">
-<img src="wxGUI_iphoto2image_frame.jpg" width="600" height="375" alt="Screenshot of g.gui.iphoto2image" border=0>
+<img src="wxGUI_iphoto2image_frame.jpg" width="600" height="375" alt="Screenshot of g.gui.photo2image" border=0>
 </a><br>
-<i>Figure: Screenshot of g.gui.iphoto2image</i>
+<i>Figure: Screenshot of g.gui.photo2image</i>
 </div>
 
 <h2>For a detailed operation manual please read</h2>
@@ -66,4 +66,4 @@ Markus Metz<br><br>
 Martin Landa, Czech Technical University in Prague, Czech Republic
 
 <p>
-<i>$Date: 2017-11-11 12:27:38 +0100 (Sat, 11 Nov 2017) $</i>
+<i>$Date: 2018-01-16 21:57:43 +0100 (Tue, 16 Jan 2018) $</i>
diff --git a/gui/wxpython/photo2image/g.gui.photo2image.py b/gui/wxpython/photo2image/g.gui.photo2image.py
index b1b5c84..bf8bf3c 100755
--- a/gui/wxpython/photo2image/g.gui.photo2image.py
+++ b/gui/wxpython/photo2image/g.gui.photo2image.py
@@ -82,7 +82,7 @@ def main():
     from core.settings import UserSettings
     from core.globalvar import CheckWxVersion
     from core.giface import StandaloneGrassInterface
-    from iphoto2image.ip2i_manager import GCPWizard
+    from photo2image.ip2i_manager import GCPWizard
 
     driver = UserSettings.Get(group='display', key='driver', subkey='type')
     if driver == 'png':
diff --git a/gui/wxpython/photo2image/ip2i_manager.py b/gui/wxpython/photo2image/ip2i_manager.py
index c334497..1d7d5d1 100644
--- a/gui/wxpython/photo2image/ip2i_manager.py
+++ b/gui/wxpython/photo2image/ip2i_manager.py
@@ -1,5 +1,5 @@
 """
- at package iphoto2image.ip2i_manager
+ at package photo2image.ip2i_manager
 
 @brief Scanning distortion correction of a photo for GRASS GIS. 
 Includes ground control point management and interactive point 
@@ -49,7 +49,7 @@ from gui_core.gselect import Select, LocationSelect, MapsetSelect
 from gui_core.dialogs import GroupDialog
 from core.gcmd import RunCommand, GMessage, GError, GWarning, EncodeString
 from core.settings import UserSettings
-from iphoto2image.ip2i_mapdisplay import MapFrame
+from photo2image.ip2i_mapdisplay import MapFrame
 from core.giface import Notification
 from gui_core.wrap import SpinCtrl
 
diff --git a/gui/wxpython/photo2image/ip2i_mapdisplay.py b/gui/wxpython/photo2image/ip2i_mapdisplay.py
index e78abe2..cab6803 100644
--- a/gui/wxpython/photo2image/ip2i_mapdisplay.py
+++ b/gui/wxpython/photo2image/ip2i_mapdisplay.py
@@ -1,5 +1,5 @@
 """
- at package iphoto2image.ip2i_mapdisplay
+ at package photo2image.ip2i_mapdisplay
 
 @brief Display to manage ground control points with two toolbars, one
 for various display management functions, one for manipulating GCPs.
diff --git a/gui/wxpython/photo2image/ip2i_statusbar.py b/gui/wxpython/photo2image/ip2i_statusbar.py
index 1eff858..ef02558 100644
--- a/gui/wxpython/photo2image/ip2i_statusbar.py
+++ b/gui/wxpython/photo2image/ip2i_statusbar.py
@@ -1,5 +1,5 @@
 """
- at package iphoto2image.ip2i_statusbar
+ at package photo2image.ip2i_statusbar
 
 @brief Classes for statusbar management in GCP Manager
 
diff --git a/gui/wxpython/photo2image/ip2i_toolbars.py b/gui/wxpython/photo2image/ip2i_toolbars.py
index a7857f5..dbae616 100644
--- a/gui/wxpython/photo2image/ip2i_toolbars.py
+++ b/gui/wxpython/photo2image/ip2i_toolbars.py
@@ -1,5 +1,5 @@
 """
- at package iphoto2image.ip2i_toolbars
+ at package photo2image.ip2i_toolbars
 
 @brief Georectification module - toolbars
 
diff --git a/imagery/i.atcorr/aerosolmodel.cpp b/imagery/i.atcorr/aerosolmodel.cpp
index daf7b67..536be8a 100644
--- a/imagery/i.atcorr/aerosolmodel.cpp
+++ b/imagery/i.atcorr/aerosolmodel.cpp
@@ -616,7 +616,7 @@ void AerosolModel::aeroso(const float xmud)
 	sixs_aer.gasym[i] = 0.f;
 	sixs_aer.phase[i] = 0.f;
  
-	for (int k = 1; k <= 83; ++k) sixs_sos.phasel[i][k] = 0.f;
+	for (int k = 0; k < 83; ++k) sixs_sos.phasel[i][k] = 0.f;
     }
 	
     /* return if iear = 0 */
diff --git a/imagery/i.atcorr/iwave.cpp b/imagery/i.atcorr/iwave.cpp
index f1db5f9..a36e44b 100644
--- a/imagery/i.atcorr/iwave.cpp
+++ b/imagery/i.atcorr/iwave.cpp
@@ -2503,385 +2503,212 @@ void IWave::worldview2(int iwa)
 {
 
     /* Panchromatic of worldview2 */
-    static const float sr1[300] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0001, .0003, .0005, .0017, .0030, .0559,
-		.1098, .2713, .4362, .4618, .4875, .4949, .5050, .5152,
-		.5256, .5296, .5356, .5298, .5222, .5272, .5337, .5286,
-		.5231, .5411, .5573, .5582, .5582, .5809, .6055, .6162,
-		.6268, .6121, .5954, .6120, .6307, .6492, .6715, .6637,
-		.6547, .6725, .6931, .6913, .6882, .6783, .6650, .6833,
-		.7016, .7060, .7136, .7098, .7098, .7384, .7658, .7628,
-		.7578, .7592, .7598, .7800, .7941, .7979, .8007, .8114,
-		.8193, .8208, .8230, .8298, .8389, .8489, .8608, .8580,
-		.8585, .8652, .8703, .8779, .8893, .8965, .9093, .9131,
-		.9179, .9142, .9108, .9170, .9249, .9368, .9508, .9440,
-		.9369, .9323, .9294, .9383, .9512, .9600, .9628, .9575,
-		.9539, .9548, .9574, .9682, .9777, .9613, .9492, .9470,
-		.9533, .9467, .9522, .9625, .9696, .9840, 1.0000, .9943,
-		.9940, .9810, .9696, .9683, .9684, .9737, .9789, .9668,
-		.9637, .9523, .9467, .9459, .9529, .9548, .9626, .9621,
-		.9566, .9504, .9410, .9362, .9246, .9234, .9217, .9336,
-		.9408, .9580, .9638, .9581, .9413, .9243, .9030, .8959,
-		.8872, .9105, .9294, .7440, .5539, .3202, .0858, .0514,
-		.0173, .0120, .0066, .0044, .0021, .0015, .0009, .0007,
-		.0005, .0005, .0004, .0004, .0004, .0004, .0004, .0004,
-		.0004, .0004, .0004, .0003, .0003, .0003, .0003, .0003,
-		.0003, .0003, .0002, .0003, .0003, .0003, .0003, .0003,
-		.0002, .0002, .0003, .0003, .0003, .0003, .0002, .0002,
-		.0003, .0003, .0003, .0003, .0003, .0003, .0003, .0003,
-		.0002, .0002, .0002, .0002, .0002, .0002, .0002, .0002,
-		.0002, .0002, .0002, .0002, .0002, .0002, .0002, .0001,
-		.0001, .0001, .0001, .0001, .0001, .0001, .0001, .0001,
-		.0001, .0001, .0001, .0001, .0001, .0001, .0001, .0001,
-		.0001, .0001, .0001, .0001, .0001, .0001, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000
+    static const float sr1[225] = {
+        .0000, .0001, .0003, .0005, .0017, .0030, .0559, .1098,
+        .2713, .4362, .4618, .4875, .4949, .5050, .5152, .5256,
+        .5296, .5356, .5298, .5222, .5272, .5337, .5286, .5231,
+        .5411, .5573, .5582, .5582, .5809, .6055, .6162, .6268,
+        .6121, .5954, .6120, .6307, .6492, .6715, .6637, .6547,
+        .6725, .6931, .6913, .6882, .6783, .6650, .6833, .7016,
+        .7060, .7136, .7098, .7098, .7384, .7658, .7628, .7578,
+        .7592, .7598, .7800, .7941, .7979, .8007, .8114, .8193,
+        .8208, .8230, .8298, .8389, .8489, .8608, .8580, .8585,
+        .8652, .8703, .8779, .8893, .8965, .9093, .9131, .9179,
+        .9142, .9108, .9170, .9249, .9368, .9508, .9440, .9369,
+        .9323, .9294, .9383, .9512, .9600, .9628, .9575, .9539,
+        .9548, .9574, .9682, .9777, .9613, .9492, .9470, .9533,
+        .9467, .9522, .9625, .9696, .9840, 1.0000, .9943, .9940,
+        .9810, .9696, .9683, .9684, .9737, .9789, .9668, .9637,
+        .9523, .9467, .9459, .9529, .9548, .9626, .9621, .9566,
+        .9504, .9410, .9362, .9246, .9234, .9217, .9336, .9408,
+        .9580, .9638, .9581, .9413, .9243, .9030, .8959, .8872,
+        .9105, .9294, .7440, .5539, .3202, .0858, .0514, .0173,
+        .0120, .0066, .0044, .0021, .0015, .0009, .0007, .0005,
+        .0005, .0004, .0004, .0004, .0004, .0004, .0004, .0004,
+        .0004, .0004, .0003, .0003, .0003, .0003, .0003, .0003,
+        .0003, .0002, .0003, .0003, .0003, .0003, .0003, .0002,
+        .0002, .0003, .0003, .0003, .0003, .0002, .0002, .0003,
+        .0003, .0003, .0003, .0003, .0003, .0003, .0003, .0002,
+        .0002, .0002, .0002, .0002, .0002, .0002, .0002, .0002,
+        .0002, .0002, .0002, .0002, .0002, .0002, .0001, .0001,
+        .0001, .0001, .0001, .0001, .0001, .0001, .0001, .0001,
+        .0001
     };
 	
-    /* Blue of worldview2 */
-    static const float sr2[300] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0001, .0001, .0001,
-		.0003, .0010, .0023, .0054, .0198, .0818, .2452, .5033,
-		.7010, .7576, .7783, .7886, .8000, .8017, .8099, .8211,
-		.8260, .8309, .8423, .8627, .8785, .8769, .8783, .8876,
-		.9076, .9306, .9502, .9768, 1.0000, .9789, .8558, .5939,
-		.2976, .1257, .0504, .0182, .0057, .0030, .0017, .0010,
-		.0006, .0004, .0003, .0002, .0001, .0001, .0001, .0001,
-		.0001, .0001, .0001, .0001, .0001, .0001, .0001, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0001, .0001, .0001,
-		.0000, .0000, .0001, .0001, .0001, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0001, .0001, .0000, .0001, .0001, .0001, .0001,
-		.0001, .0001, .0001, .0001, .0001, .0001, .0001, .0000,
-		.0001, .0001, .0001, .0001, .0001, .0001, .0001, .0001,
-		.0001, .0001, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000
+    /* Coastal Blue of worldview2 */
+    static const float sr2[174] = {
+        .0000, .0000, .0002, .0006, .0034, .0274, .1329, .3560,
+        .5926, .7007, .7396, .7653, .7878, .8171, .8387, .8618,
+        .8835, .9051, .9171, .9272, .9477, .9651, .9793, .9859,
+        .9891, .9972, .9746, .8539, .5880, .2816, .0805, .0089,
+        .0013, .0004, .0001, .0001, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0001, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0001,
+        .0001, .0000, .0000, .0000, .0000, .0001, .0002, .0004,
+        .0003, .0001, .0000, .0001, .0003, .0007, .0004, .0001,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0001, .0001, .0002, .0002, .0001, .0001, .0001,
+        .0001, .0002, .0002, .0002, .0001, .0001
     };
 	
-    /* Green of worldview2 */
-    static const float sr3[300] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0001, .0001, .0004, .0011, .0031, .0111, .0405, .1338,
-		.3515, .6060, .7230, .7600, .7794, .7888, .8068, .8280,
-		.8408, .8420, .8443, .8469, .8503, .8597, .8635, .8691,
-		.8826, .9007, .9245, .9422, .9623, .9766, .9857, .9948,
-		1.0000, .9931, .9791, .9077, .6640, .3014, .0929, .0252,
-		.0056, .0025, .0011, .0005, .0002, .0001, .0001, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0001, .0001, .0001, .0001
+    /* Blue of worldview2 */
+    static const float sr3[158] = {
+        .0001, .0001, .0001, .0003, .0010, .0023, .0054, .0198,
+        .0818, .2452, .5033, .7010, .7576, .7783, .7886, .8000,
+        .8017, .8099, .8211, .8260, .8309, .8423, .8627, .8785,
+        .8769, .8783, .8876, .9076, .9306, .9502, .9768, 1.0000,
+        .9789, .8558, .5939, .2976, .1257, .0504, .0182, .0057,
+        .0030, .0017, .0010, .0006, .0004, .0003, .0002, .0001,
+        .0001, .0001, .0001, .0001, .0001, .0001, .0001, .0001,
+        .0001, .0001, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0001, .0001, .0001, .0000, .0000, .0001, .0001, .0001,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0001, .0001, .0000, .0001,
+        .0001, .0001, .0001, .0001, .0001, .0001
     };
 	
-    /* Red of worldview2 */
-    static const float sr4[300] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0001,
-		.0001, .0003, .0006, .0016, .0049, .0228, .0956, .2944,
-		.5961, .8223, .8728, .8853, .9279, .9557, .9650, .9671,
-		.9656, .9578, .9555, .9528, .9558, .9653, .9704, .9765,
-		.9875, .9966, .9991, .9921, .9837, .9783, .8853, .6326,
-		.2918, .0833, .0204, .0056, .0019, .0008, .0004, .0002,
-		.0001, .0001, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000
+    /* Green of worldview2 */
+    static const float sr4[245] = {
+        .0000, .0001, .0001, .0004, .0011, .0031, .0111, .0405,
+        .1338, .3515, .6060, .7230, .7600, .7794, .7888, .8068,
+        .8280, .8408, .8420, .8443, .8469, .8503, .8597, .8635,
+        .8691, .8826, .9007, .9245, .9422, .9623, .9766, .9857,
+        .9948, 1.0000, .9931, .9791, .9077, .6640, .3014, .0929,
+        .0252, .0056, .0025, .0011, .0005, .0002, .0001, .0001,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0001, .0001, .0001, .0001
     };
 	
-    /* NIR1 of worldview2 */
-    static const float sr5[300] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0001, .0001, .0002, .0003, .0004,
-		.0007, .0014, .0029, .0060, .0127, .0277, .0589, .1231,
-		.2602, .5068, .7600, .9406, .9958, .9976, .9889, .9831,
-		.9729, .9583, .9411, .9319, .9194, .9091, .8976, .8821,
-		.8712, .8631, .8443, .8365, .8380, .8412, .8357, .8338,
-		.8425, .8308, .8186, .8168, .8067, .8108, .7942, .7799,
-		.7673, .7496, .7393, .7387, .7341, .7118, .6971, .6805,
-		.6586, .6498, .6325, .6199, .6091, .5990, .5909, .5661,
-		.5071, .4028, .2752, .1577, .0738, .0328, .0138, .0054,
-		.0026, .0018, .0013, .0010, .0009, .0009, .0008, .0007,
-		.0007, .0008, .0007, .0007, .0006, .0006, .0003, .0003,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000
+    /* Yellow of worldview2 */
+    static const float sr5[33] = {
+        .0001, .0001, .0003, .0009, .0022, .0059, .0266, .1347,
+        .3892, .6636, .8482, .8998, .9200, .9326, .9402, .9470,
+        .9524, .9664, .9815, .9897, .9927, 1.0000, .9694, .7594,
+        .4367, .1343, .0309, .0074, .0022, .0007, .0003, .0002,
+        .0001
     };
 	
-    /* Coastal of worldview2 */
-    static const float sr6[300] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0002,
-		.0006, .0034, .0274, .1329, .3560, .5926, .7007, .7396,
-		.7653, .7878, .8171, .8387, .8618, .8835, .9051, .9171,
-		.9272, .9477, .9651, .9793, .9859, .9891, .9972, .9746,
-		.8539, .5880, .2816, .0805, .0089, .0013, .0004, .0001,
-		.0001, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0001, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0001, .0001, .0000, .0000,
-		.0000, .0000, .0001, .0002, .0004, .0003, .0001, .0000,
-		.0001, .0003, .0007, .0004, .0001, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0001, .0001,
-		.0002, .0002, .0001, .0001, .0001, .0001, .0002, .0002,
-		.0002, .0001, .0001, .0001, .0001, .0001, .0001, .0001,
-		.0001, .0001, .0001, .0000, .0001, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000
+    /* Red of worldview2 */
+    static const float sr6[43] = {
+        .0000, .0001, .0001, .0003, .0006, .0016, .0049, .0228,
+        .0956, .2944, .5961, .8223, .8728, .8853, .9279, .9557,
+        .9650, .9671, .9656, .9578, .9555, .9528, .9558, .9653,
+        .9704, .9765, .9875, .9966, .9991, .9921, .9837, .9783,
+        .8853, .6326, .2918, .0833, .0204, .0056, .0019, .0008,
+        .0004, .0002, .0001
     };
 	
-    /* Yellow of worldview2 */
-    static const float sr7[300] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0001,
-		.0001, .0003, .0009, .0022, .0059, .0266, .1347, .3892,
-		.6636, .8482, .8998, .9200, .9326, .9402, .9470, .9524,
-		.9664, .9815, .9897, .9927, 1.0000, .9694, .7594, .4367,
-		.1343, .0309, .0074, .0022, .0007, .0003, .0002, .0001,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000
+    /* Red Edge of worldview2 */
+    static const float sr7[60] = {
+        .0001, .0001, .0002, .0002, .0001, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0001, .0002, .0008, .0031,
+        .0188, .0996, .3468, .6229, .8538, .9528, .9784, .9876,
+        .9890, .9939, .9999, .9993, .9894, .9868, .9810, .9771,
+        .9442, .8464, .6158, .3598, .1388, .0305, .0071, .0022,
+        .0007, .0003, .0001, .0001
     };
 	
-    /* Red Edge of worldview2 */
-    static const float sr8[300] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0001, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0001, .0001, .0001, .0001, .0001, .0002, .0002, .0001,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0001,
-		.0002, .0008, .0031, .0188, .0996, .3468, .6229, .8538,
-		.9528, .9784, .9876, .9890, .9939, .9999, .9993, .9894,
-		.9868, .9810, .9771, .9442, .8464, .6158, .3598, .1388,
-		.0305, .0071, .0022, .0007, .0003, .0001, .0001, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000
+    /* NIR1 of worldview2 */
+    static const float sr8[86] = {
+        .0001, .0001, .0002, .0003, .0004, .0007, .0014, .0029,
+        .0060, .0127, .0277, .0589, .1231, .2602, .5068, .7600,
+        .9406, .9958, .9976, .9889, .9831, .9729, .9583, .9411,
+        .9319, .9194, .9091, .8976, .8821, .8712, .8631, .8443,
+        .8365, .8380, .8412, .8357, .8338, .8425, .8308, .8186,
+        .8168, .8067, .8108, .7942, .7799, .7673, .7496, .7393,
+        .7387, .7341, .7118, .6971, .6805, .6586, .6498, .6325,
+        .6199, .6091, .5990, .5909, .5661, .5071, .4028, .2752,
+        .1577, .0738, .0328, .0138, .0054, .0026, .0018, .0013,
+        .0010, .0009, .0009, .0008, .0007, .0007, .0008, .0007,
+        .0007, .0006, .0006, .0003, .0003, .0000
     };
 	
     /* NIR2 of worldview2 */
-    static const float sr9[300] = {
-		.0000, .0000, .0000, .0001, .0001, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0001, .0005, .0005, .0008, .0010, .0010, .0011,
-		.0011, .0011, .0011, .0011, .0011, .0011, .0010, .0011,
-		.0011, .0012, .0012, .0012, .0014, .0013, .0015, .0022,
-		.0043, .0106, .0306, .1079, .3137, .5719, .7893, .9515,
-		.9871, .9917, .9934, .9997, .9967, .9833, .9709, .9524,
-		.9330, .9224, .9109, .8998, .8921, .8786, .8646, .8505,
-		.8413, .8273, .8082, .7940, .7744, .7603, .7469, .7258,
-		.7090, .6892, .6617, .6406, .6209, .5965, .5747, .5519,
-		.5309, .5116, .4937, .4741, .4543, .4378, .4214, .4060,
-		.3897, .3766, .3635, .3499, .3367, .3270, .3171, .3058,
-		.2949, .2822, .2714, .2608, .2509, .2434, .2357, .2277,
-		.2176, .2087, .1986, .1882, .1787, .1684, .1590, .1481,
-		.1378, .1246, .1096, .0917, .0715, .0503, .0328, .0199,
-		.0098, .0047, .0022, .0010, .0005, .0003, .0002, .0001,
-		.0001, .0001, .0001, .0001, .0001, .0001, .0001, .0001,
-		.0001, .0000, .0000, .0000
+    static const float sr9[288] = {
+        .0000, .0001, .0001, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0001,
+        .0005, .0005, .0008, .0010, .0010, .0011, .0011, .0011,
+        .0011, .0011, .0011, .0011, .0010, .0011, .0011, .0012,
+        .0012, .0012, .0014, .0013, .0015, .0022, .0043, .0106,
+        .0306, .1079, .3137, .5719, .7893, .9515, .9871, .9917,
+        .9934, .9997, .9967, .9833, .9709, .9524, .9330, .9224,
+        .9109, .8998, .8921, .8786, .8646, .8505, .8413, .8273,
+        .8082, .7940, .7744, .7603, .7469, .7258, .7090, .6892,
+        .6617, .6406, .6209, .5965, .5747, .5519, .5309, .5116,
+        .4937, .4741, .4543, .4378, .4214, .4060, .3897, .3766,
+        .3635, .3499, .3367, .3270, .3171, .3058, .2949, .2822,
+        .2714, .2608, .2509, .2434, .2357, .2277, .2176, .2087,
+        .1986, .1882, .1787, .1684, .1590, .1481, .1378, .1246,
+        .1096, .0917, .0715, .0503, .0328, .0199, .0098, .0047,
+        .0022, .0010, .0005, .0003, .0002, .0001, .0001, .0001
+
     };
 	
-    static const float wli[9] = {0.350, 0.350, 0.350, 0.350, 0.350, 0.350, 0.350, 0.350, 0.350};
-    static const float wls[9] = {1.100, 1.100, 1.100, 1.100, 1.100, 1.100, 1.100, 1.100, 1.100};
+    static const float wli[9] = {0.4325, 0.3825, 0.4225, 0.4875, 0.5675, 0.6050, 0.6175, 0.7375, 0.3550};
+    static const float wls[9] = {0.9950, 0.8175, 0.8175, 1.1000, 0.6500, 0.7125, 0.7675, 0.9525, 1.0750};
 
     ffu.wlinf = (float)wli[iwa-1];
     ffu.wlsup = (float)wls[iwa-1];
@@ -2891,23 +2718,23 @@ void IWave::worldview2(int iwa)
 
     switch(iwa)
     {
-    case 1: for(i = 0; i < 300; i++)  ffu.s[40+i] = sr1[i];
+    case 1: for(i = 0; i < 225; i++)  ffu.s[73+i] = sr1[i];
         break;
-    case 2: for(i = 0; i < 300; i++)  ffu.s[40+i] = sr2[i];
+    case 2: for(i = 0; i < 174; i++)  ffu.s[53+i] = sr2[i];
         break;
-    case 3: for(i = 0; i < 300; i++)  ffu.s[40+i] = sr3[i];
+    case 3: for(i = 0; i < 158; i++)  ffu.s[69+i] = sr3[i];
         break;
-    case 4: for(i = 0; i < 300; i++)  ffu.s[40+i] = sr4[i];
+    case 4: for(i = 0; i < 245; i++)  ffu.s[95+i] = sr4[i];
         break;
-    case 5: for(i = 0; i < 300; i++)  ffu.s[40+i] = sr5[i];
+    case 5: for(i = 0; i < 33; i++)  ffu.s[127+i] = sr5[i];
         break;
-    case 6: for(i = 0; i < 300; i++)  ffu.s[40+i] = sr6[i];
+    case 6: for(i = 0; i < 43; i++)  ffu.s[142+i] = sr6[i];
         break;
-    case 7: for(i = 0; i < 300; i++)  ffu.s[40+i] = sr7[i];
+    case 7: for(i = 0; i < 60; i++)  ffu.s[147+i] = sr7[i];
         break;
-    case 8: for(i = 0; i < 300; i++)  ffu.s[40+i] = sr8[i];
+    case 8: for(i = 0; i < 86; i++)  ffu.s[195+i] = sr8[i];
         break;
-    case 9: for(i = 0; i < 300; i++)  ffu.s[40+i] = sr9[i];
+    case 9: for(i = 0; i < 288; i++)  ffu.s[42+i] = sr9[i];
         break;
     }
 }
@@ -4055,2085 +3882,451 @@ void IWave::pleiades1a(int iwa)
 
     ffu.wlinf = (float)wli[iwa-1];
     ffu.wlsup = (float)wls[iwa-1];
-
-    int i;
-    for(i = 0; i < 1501; i++) ffu.s[i] = 0;
-
-    switch(iwa)
-    {
-    case 1: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr1[i];
-        break;
-    case 2: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr2[i];
-        break;
-    case 3: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr3[i];
-        break;
-    case 4: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr4[i];
-        break;
-    case 5: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr5[i];
-        break;
-    }
-}
-
-/* Following filter function created using create_iwave.py */
-
-void IWave::pleiades1b(int iwa)
-{
-
-    /* pleiades1b Blue of pleiades1b */
-    static const float sr1[209] = {
-		.0016, .0013, .0043, .0111, .0176, .0234, .0574, .1346,
-		.2238, .3085, .4616, .6508, .7554, .7477, .7168, .7185,
-		.7567, .8101, .8422, .8234, .7752, .7527, .7802, .8199,
-		.8517, .8603, .8587, .8658, .8828, .9040, .9197, .9326,
-		.9502, .9758, .9950, 1.0000, .9951, .9806, .9417, .8436,
-		.6711, .4633, .2889, .1671, .0902, .0505, .0315, .0238,
-		.0213, .0206, .0196, .0168, .0114, .0067, .0041, .0030,
-		.0024, .0020, .0016, .0011, .0013, .0008, .0006, .0004,
-		.0004, .0004, .0005, .0011, .0020, .0012, .0004, .0001,
-		.0001, .0001, .0001, .0001, .0001, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0001, .0002, .0008, .0011,
-		.0008, .0004, .0004, .0004, .0007, .0016, .0024, .0010,
-		.0003, .0002, .0001, .0001, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0001, .0000, .0001, .0001, .0001,
-		.0002, .0003, .0004, .0007, .0009, .0007, .0006, .0004,
-		.0003, .0002, .0002, .0002, .0002, .0002, .0002, .0002,
-		.0003, .0004, .0004, .0005, .0007, .0010, .0016, .0026,
-		.0046, .0091, .0172, .0238, .0215, .0159, .0120, .0095,
-		.0079, .0072, .0072, .0076, .0084, .0099, .0123, .0163,
-		.0226, .0320, .0444, .0547, .0564, .0480, .0358, .0258,
-		.0189, .0144, .0117, .0099, .0086, .0078, .0072, .0070,
-		.0069, .0069, .0070, .0073, .0074, .0075, .0075, .0071,
-		.0064
-    };
-	
-    /* Pleiades1b Green of pleiades1b */
-    static const float sr2[209] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0001, .0001, .0001, .0002, .0003, .0005, .0006, .0008,
-		.0015, .0041, .0100, .0196, .0325, .0568, .1238, .2859,
-		.5290, .7716, .8838, .9080, .9131, .9137, .9225, .9367,
-		.9498, .9545, .9586, .9642, .9705, .9723, .9675, .9589,
-		.9524, .9525, .9560, .9552, .9490, .9471, .9544, .9711,
-		.9898, 1.0000, .9954, .9698, .9253, .8633, .7948, .7239,
-		.6453, .5439, .4170, .2767, .1575, .0856, .0492, .0327,
-		.0238, .0182, .0141, .0100, .0058, .0030, .0015, .0008,
-		.0005, .0003, .0002, .0001, .0001, .0001, .0001, .0001,
-		.0000, .0001, .0000, .0000, .0001, .0001, .0001, .0003,
-		.0003, .0002, .0001, .0001, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0001,
-		.0003, .0002, .0001, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0001, .0001, .0001, .0003, .0007, .0032, .0142,
-		.0083, .0022, .0009, .0006, .0004, .0004, .0004, .0004,
-		.0005, .0006, .0008, .0011, .0019, .0037, .0064, .0103,
-		.0131, .0133, .0111, .0084, .0066, .0057, .0054, .0056,
-		.0062, .0072, .0089, .0115, .0149, .0193, .0235, .0264,
-		.0270, .0255, .0234, .0214, .0199, .0193, .0191, .0197,
-		.0207, .0220, .0232, .0238, .0230, .0207, .0172, .0133,
-		.0098
-    };
-	
-    /* Pleiades1b Red of pleiades1b */
-    static const float sr3[209] = {
-		.0005, .0009, .0005, .0012, .0051, .0080, .0067, .0109,
-		.0247, .0654, .1225, .0570, .0214, .0128, .0063, .0024,
-		.0009, .0005, .0004, .0004, .0005, .0008, .0010, .0006,
-		.0004, .0003, .0002, .0003, .0004, .0005, .0005, .0004,
-		.0003, .0002, .0001, .0001, .0001, .0001, .0001, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0001, .0001, .0001, .0001, .0001, .0002,
-		.0002, .0002, .0007, .0012, .0021, .0038, .0068, .0123,
-		.0222, .0413, .0781, .1519, .2777, .4510, .6291, .7625,
-		.8329, .8579, .8659, .8693, .8752, .8858, .9006, .9175,
-		.9349, .9478, .9570, .9623, .9648, .9624, .9613, .9620,
-		.9699, .9812, .9934, 1.0000, .9810, .9523, .9132, .8694,
-		.8252, .7830, .7361, .6735, .5878, .4805, .3630, .2523,
-		.1626, .1022, .0641, .0419, .0285, .0205, .0154, .0121,
-		.0099, .0083, .0071, .0061, .0052, .0043, .0035, .0028,
-		.0036, .0030, .0023, .0018, .0013, .0010, .0008, .0006,
-		.0005, .0004, .0004, .0004, .0003, .0003, .0003, .0003,
-		.0003, .0003, .0003, .0003, .0004, .0004, .0005, .0006,
-		.0006, .0007, .0007, .0006, .0005, .0005, .0004, .0003,
-		.0003, .0003, .0002, .0002, .0002, .0002, .0002, .0002,
-		.0002, .0002, .0002, .0003, .0003, .0003, .0003, .0004,
-		.0005, .0006, .0008, .0010, .0013, .0018, .0024, .0033,
-		.0044, .0057, .0069, .0078, .0083, .0084, .0082, .0081,
-		.0080, .0078, .0078, .0080, .0082, .0085, .0088, .0093,
-		.0098, .0101, .0104, .0104, .0102, .0095, .0086, .0073,
-		.0060
-    };
-	
-    /* pleiades1b NIR of pleiades1b */
-    static const float sr4[209] = {
-		.0002, .0008, .0004, .0005, .0017, .0027, .0012, .0007,
-		.0007, .0008, .0008, .0010, .0015, .0022, .0020, .0010,
-		.0005, .0003, .0002, .0002, .0002, .0003, .0004, .0006,
-		.0006, .0004, .0003, .0002, .0002, .0002, .0002, .0002,
-		.0004, .0006, .0007, .0006, .0005, .0004, .0004, .0004,
-		.0004, .0005, .0006, .0006, .0007, .0008, .0008, .0007,
-		.0006, .0006, .0005, .0005, .0005, .0006, .0007, .0012,
-		.0023, .0029, .0020, .0008, .0004, .0002, .0001, .0001,
-		.0001, .0001, .0001, .0001, .0002, .0003, .0005, .0008,
-		.0007, .0003, .0002, .0001, .0001, .0001, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0001, .0001, .0001, .0001,
-		.0001, .0002, .0002, .0002, .0002, .0001, .0001, .0001,
-		.0001, .0001, .0001, .0001, .0001, .0001, .0001, .0001,
-		.0001, .0001, .0001, .0001, .0002, .0002, .0003, .0003,
-		.0004, .0005, .0006, .0008, .0010, .0012, .0014, .0016,
-		.0018, .0020, .0023, .0025, .0029, .0052, .0064, .0080,
-		.0101, .0131, .0171, .0229, .0310, .0427, .0592, .0835,
-		.1179, .1664, .2311, .3159, .4172, .5285, .6410, .7472,
-		.8386, .9088, .9594, .9881, 1.0000, .9992, .9896, .9677,
-		.9514, .9375, .9255, .9152, .9088, .9026, .8967, .8925,
-		.8855, .8777, .8676, .8569, .8474, .8360, .8237, .8130,
-		.8016, .7922, .7828, .7769, .7715, .7631, .7543, .7452,
-		.7349, .7255, .7146, .7031, .6919, .6816, .6705, .6595,
-		.6476, .6292, .6111, .5934, .5761, .5600, .5449, .5306,
-		.5155, .4977, .4734, .4388, .3934, .3368, .2743, .2114,
-		.1536, .1063, .0704, .0459, .0295, .0193, .0127, .0085,
-		.0058
-    };
-	
-    /* Pleiades1b Pan of pleiades1b */
-    static const float sr5[209] = {
-		.0000, .0000, .0000, .0000, .0001, .0001, .0001, .0002,
-		.0004, .0008, .0028, .0056, .0120, .0221, .0389, .0664,
-		.1067, .1614, .2272, .2987, .3678, .4258, .4697, .4992,
-		.5193, .5333, .5467, .5603, .5736, .5855, .5957, .6041,
-		.6120, .6188, .6256, .6319, .6378, .6422, .6444, .6449,
-		.6449, .6451, .6468, .6513, .6591, .6691, .6812, .6937,
-		.7056, .7158, .7251, .7324, .7384, .7439, .7493, .7536,
-		.7581, .7611, .7639, .7652, .7662, .7666, .7675, .7688,
-		.7723, .7771, .7834, .7917, .8015, .8110, .8200, .8291,
-		.8365, .8427, .8482, .8519, .8555, .8583, .8620, .8667,
-		.8716, .8780, .8847, .8913, .8989, .9046, .9105, .9155,
-		.9208, .9253, .9290, .9329, .9370, .9401, .9442, .9469,
-		.9503, .9521, .9543, .9574, .9608, .9663, .9721, .9788,
-		.9846, .9912, .9957, .9991, 1.0000, .9963, .9915, .9870,
-		.9817, .9771, .9746, .9729, .9739, .9742, .9769, .9798,
-		.9828, .9846, .9851, .9837, .9826, .9790, .9746, .9697,
-		.9648, .9598, .9533, .9484, .9445, .9397, .9345, .9297,
-		.9248, .9183, .9112, .9061, .9006, .8953, .8908, .8895,
-		.8885, .8810, .8708, .8567, .8369, .8102, .7729, .7190,
-		.6529, .5711, .4796, .3846, .2948, .2166, .1531, .1057,
-		.0717, .0491, .0338, .0257, .0182, .0132, .0122, .0090,
-		.0084, .0043, .0033, .0027, .0022, .0018, .0015, .0014,
-		.0012, .0011, .0010, .0009, .0009, .0008, .0007, .0007,
-		.0007, .0006, .0006, .0006, .0006, .0006, .0005, .0005,
-		.0005, .0005, .0004, .0004, .0004, .0005, .0004, .0004,
-		.0004, .0004, .0004, .0004, .0003, .0004, .0003, .0003,
-		.0003
-    };
-	
-    static const float wli[5] = {0.430, 0.430, 0.430, 0.430, 0.430};
-    static const float wls[5] = {0.950, 0.950, 0.950, 0.950, 0.950};
-
-    ffu.wlinf = (float)wli[iwa-1];
-    ffu.wlsup = (float)wls[iwa-1];
-
-    int i;
-    for(i = 0; i < 1501; i++) ffu.s[i] = 0;
-
-    switch(iwa)
-    {
-    case 1: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr1[i];
-        break;
-    case 2: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr2[i];
-        break;
-    case 3: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr3[i];
-        break;
-    case 4: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr4[i];
-        break;
-    case 5: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr5[i];
-        break;
-    }
-}
-
-
-void IWave::worldview3(int iwa)
-{
-
-    /* Pan of worldview3 */
-    static const float sr1[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0001, .0002, .0005, .0018, .0040, .0437, .0999,
-		.2023, .3598, .4607, .4963, .5229, .5402, .5483, .5464,
-		.5491, .5563, .5584, .5565, .5580, .5663, .5684, .5652,
-		.5674, .5758, .5779, .5740, .5814, .5982, .6074, .6086,
-		.6140, .6240, .6297, .6323, .6369, .6421, .6537, .6723,
-		.6853, .6929, .6990, .7052, .7116, .7163, .7205, .7239,
-		.7298, .7369, .7446, .7530, .7589, .7626, .7700, .7778,
-		.7844, .7917, .7971, .8030, .8088, .8133, .8203, .8269,
-		.8358, .8451, .8507, .8532, .8567, .8614, .8684, .8768,
-		.8824, .8882, .8900, .8896, .8910, .8936, .9016, .9128,
-		.9218, .9295, .9286, .9244, .9243, .9263, .9334, .9439,
-		.9480, .9513, .9530, .9507, .9534, .9566, .9606, .9626,
-		.9653, .9670, .9676, .9686, .9538, .9360, .9365, .9431,
-		.9533, .9661, .9744, .9783, .9859, .9935, .9972, .9997,
-		.9985, .9964, .9917, .9875, .9869, .9871, .9841, .9803,
-		.9789, .9753, .9744, .9739, .9753, .9755, .9726, .9685,
-		.9654, .9614, .9579, .9573, .9557, .9525, .9487, .9448,
-		.9443, .9420, .9429, .9446, .9411, .9377, .9310, .9255,
-		.9240, .9205, .8438, .7458, .5255, .2833, .1646, .0703,
-		.0337, .0104, .0031, .0017, .0010, .0006, .0004, .0002,
-		.0002, .0001, .0001, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* Coastal_MS7 of worldview3 */
-    static const float sr2[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0002,
-		.0006, .0025, .0226, .1048, .3527, .5648, .6403, .6701,
-		.7018, .7234, .7547, .7860, .8122, .8297, .8511, .8795,
-		.8988, .8979, .9066, .9363, .9680, .9882, 1.0000, .8771,
-		.4725, .1212, .0196, .0037, .0011, .0003, .0001, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0001, .0001, .0001,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* Blue_MS4 of worldview3 */
-    static const float sr3[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0001,
-		.0002, .0004, .0008, .0020, .0052, .0145, .0523, .1391,
-		.3701, .6262, .7571, .7961, .8125, .8259, .8327, .8311,
-		.8464, .8596, .8824, .8860, .9003, .9034, .9042, .9240,
-		.9537, .9661, .9668, .9831, .9967, .9997, .9531, .8053,
-		.5343, .2451, .0889, .0348, .0099, .0041, .0016, .0007,
-		.0004, .0003, .0002, .0001, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0001, .0001, .0001, .0001, .0001, .0001,
-		.0001, .0003, .0003, .0001, .0001, .0001, .0000, .0001,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* Green_MS3 of worldview3 */
-    static const float sr4[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0001, .0007, .0065, .0851,
-		.4023, .6996, .7702, .7801, .8082, .7873, .8085, .8168,
-		.8360, .8423, .7935, .8164, .8616, .8783, .8763, .8792,
-		.8934, .9187, .9544, .9716, .9713, .9720, .9459, .9458,
-		.9834, .9994, .9601, .7693, .4286, .1704, .0586, .0208,
-		.0075, .0030, .0015, .0008, .0004, .0002, .0001, .0001,
-		.0001, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* Yellow_MS6 of worldview3 */
-    static const float sr5[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0002, .0007, .0037, .0342, .2139, .6005, .8636,
-		.8941, .9078, .9180, .9227, .9286, .9467, .9433, .9607,
-		.9878, .9963, .9933, .9959, .9587, .6899, .3138, .0944,
-		.0261, .0093, .0036, .0016, .0007, .0004, .0002, .0001,
-		.0001, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0001, .0003, .0005, .0008, .0019, .0057, .0055,
-		.0016, .0005, .0002, .0001, .0001, .0001, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0001, .0001, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* Red_MS2 of worldview3 */
-    static const float sr6[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0001, .0004, .0020, .0203, .1547,
-		.4879, .8183, .9395, .9432, .9370, .9429, .9488, .9468,
-		.9548, .9586, .9625, .9732, .9790, .9840, .9931, .9922,
-		.9949, .9945, .9875, .9886, .9949, .9993, .9714, .8022,
-		.4694, .1876, .0607, .0229, .0093, .0039, .0018, .0008,
-		.0004, .0003, .0002, .0001, .0001, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* Red Edge_MS5 of worldview3 */
-    static const float sr7[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0001, .0002, .0005,
-		.0012, .0032, .0088, .0326, .1111, .3243, .6486, .8933,
-		.9838, .9935, .9864, .9820, .9795, .9812, .9855, .9921,
-		.9979, .9995, .9895, .9330, .7780, .4940, .2209, .0826,
-		.0292, .0123, .0055, .0027, .0013, .0007, .0004, .0002,
-		.0001, .0001, .0001, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* NIR1_MS1 of worldview3 */
-    static const float sr8[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0001, .0001, .0001, .0003,
-		.0006, .0013, .0027, .0053, .0104, .0231, .0588, .1652,
-		.3962, .6715, .8709, .9739, 1.0000, .9922, .9818, .9712,
-		.9554, .9382, .9261, .9178, .9153, .9139, .9153, .9127,
-		.9056, .8989, .8899, .8803, .8697, .8670, .8662, .8676,
-		.8673, .8596, .8528, .8439, .8341, .8247, .8115, .7939,
-		.7757, .7585, .7400, .7253, .7101, .6925, .6740, .6561,
-		.6427, .6302, .6203, .6125, .6055, .6017, .6020, .6027,
-		.5664, .4018, .2039, .0823, .0309, .0135, .0063, .0033,
-		.0021, .0015, .0010, .0007, .0004, .0002, .0001, .0001,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* NIR2_MS8 of worldview3 */
-    static const float sr9[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0001, .0021,
-		.0050, .0071, .0155, .0519, .1987, .5721, .8996, .9942,
-		.9981, .9767, .9538, .9337, .9134, .8942, .8730, .8531,
-		.8382, .8188, .8047, .7914, .7726, .7577, .7403, .7301,
-		.7191, .7061, .6928, .6801, .6680, .6568, .6439, .6304,
-		.6170, .6000, .5864, .5722, .5544, .5405, .5268, .5100,
-		.4928, .4761, .4612, .4439, .4297, .4132, .3972, .3822,
-		.3674, .3515, .3365, .3214, .3091, .2956, .2844, .2740,
-		.2628, .2523, .2411, .2303, .2218, .2105, .2013, .1933,
-		.1836, .1755, .1660, .1567, .1508, .1429, .1366, .1304,
-		.1232, .1151, .0999, .0731, .0419, .0195, .0082, .0035,
-		.0017, .0008, .0005, .0003, .0002, .0001, .0001, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* SWIR1 of worldview3 */
-    static const float sr10[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0002, .0003, .0003,
-		.0004, .0004, .0005, .0007, .0008, .0011, .0015, .0021,
-		.0030, .0044, .0068, .0111, .0188, .0331, .0607, .1164,
-		.2198, .4033, .6350, .8383, .9524, .9828, .9904, .9904,
-		.9880, .9882, .9949, .9986, .9536, .7801, .5373, .3037,
-		.1597, .0858, .0470, .0273, .0163, .0103, .0067, .0046,
-		.0032, .0023, .0017, .0013, .0010, .0009, .0007, .0006,
-		.0005, .0004, .0004, .0004, .0003, .0003, .0003, .0003,
-		.0003, .0001, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* SWIR2 of worldview3 */
-    static const float sr11[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0001, .0001, .0001, .0001, .0001, .0001, .0001, .0001,
-		.0001, .0001, .0001, .0001, .0001, .0001, .0001, .0002,
-		.0002, .0004, .0006, .0014, .0034, .0098, .0310, .1039,
-		.2858, .6176, .9095, .9226, .8949, .9136, .9476, .9752,
-		.9884, .9883, .9859, .9913, .9971, .9966, 1.0000, .9555,
-		.7257, .4157, .1524, .0495, .0153, .0057, .0023, .0011,
-		.0006, .0003, .0002, .0002, .0001, .0001, .0001, .0001,
-		.0001, .0001, .0001, .0001, .0001, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* SWIR3 of worldview3 */
-    static const float sr12[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0001, .0001, .0002, .0003, .0005, .0013,
-		.0033, .0101, .0339, .1087, .2884, .5790, .7930, .8898,
-		.8970, .9117, .9246, .9352, .9474, .9610, .9773, .9953,
-		.9989, .9866, .9786, .8403, .5534, .2201, .0665, .0197,
-		.0062, .0025, .0011, .0005, .0003, .0001, .0000, .0001,
-		.0000, .0000, .0000, .0001, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0001, .0001, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* SWIR4 of worldview3 */
-    static const float sr13[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0001, .0001, .0002, .0002, .0003, .0004, .0007, .0011,
-		.0019, .0034, .0064, .0131, .0284, .0659, .1419, .3122,
-		.5747, .8196, .9650, .9582, .9516, .9666, .9852, .9952,
-		.9995, .9999, .9997, .9949, .9868, .9743, .9339, .7642,
-		.5640, .3207, .1506, .0712, .0328, .0161, .0082, .0045,
-		.0026, .0015, .0009, .0006, .0004, .0003, .0001, .0001,
-		.0001, .0000, .0001, .0000, .0001, .0000, .0000, .0000,
-		.0000, .0000, .0001, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* SWIR5 of worldview3 */
-    static const float sr14[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0001, .0001, .0001, .0002, .0001, .0000, .0001,
-		.0000, .0002, .0001, .0003, .0005, .0008, .0014, .0027,
-		.0054, .0119, .0282, .0703, .1534, .3105, .5282, .7231,
-		.8960, .9577, .9628, .9709, .9846, .9959, .9999, .9898,
-		.9701, .9473, .9435, .9416, .8180, .6295, .3992, .1832,
-		.0741, .0302, .0124, .0059, .0029, .0016, .0009, .0005,
-		.0003, .0003, .0001, .0001, .0002, .0001, .0000, .0001,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* SWIR6 of worldview3 */
-    static const float sr15[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0001, .0001, .0001, .0001,
-		.0001, .0003, .0004, .0006, .0011, .0019, .0033, .0063,
-		.0125, .0283, .0650, .1343, .2683, .4892, .7200, .9225,
-		.9984, .9977, .9954, .9949, .9915, .9896, .9825, .9642,
-		.9341, .8872, .8615, .8581, .7748, .6345, .4488, .2272,
-		.1005, .0451, .0194, .0093, .0047, .0026, .0015, .0009,
-		.0005, .0004, .0003, .0002, .0001, .0001, .0000, .0001,
-		.0000, .0001, .0000, .0000, .0001, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* SWIR7 of worldview3 */
-    static const float sr16[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0001, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0001, .0001,
-		.0001, .0003, .0006, .0012, .0025, .0061, .0156, .0468,
-		.1112, .2458, .4584, .6318, .7693, .9092, .9488, .9662,
-		.9842, .9932, .9963, .9989, 1.0000, .9969, .9914, .9850,
-		.9769, .9635, .9483, .9148, .7730, .6197, .4182, .2046,
-		.0865, .0340, .0125, .0053, .0024, .0012, .0006, .0003,
-		.0002, .0001, .0001, .0001, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0001, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000
-    };
-	
-    /* SWIR8 of worldview3 */
-    static const float sr17[841] = {
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+
+    int i;
+    for(i = 0; i < 1501; i++) ffu.s[i] = 0;
+
+    switch(iwa)
+    {
+    case 1: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr1[i];
+        break;
+    case 2: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr2[i];
+        break;
+    case 3: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr3[i];
+        break;
+    case 4: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr4[i];
+        break;
+    case 5: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr5[i];
+        break;
+    }
+}
+
+/* Following filter function created using create_iwave.py */
+
+void IWave::pleiades1b(int iwa)
+{
+
+    /* pleiades1b Blue of pleiades1b */
+    static const float sr1[209] = {
+		.0016, .0013, .0043, .0111, .0176, .0234, .0574, .1346,
+		.2238, .3085, .4616, .6508, .7554, .7477, .7168, .7185,
+		.7567, .8101, .8422, .8234, .7752, .7527, .7802, .8199,
+		.8517, .8603, .8587, .8658, .8828, .9040, .9197, .9326,
+		.9502, .9758, .9950, 1.0000, .9951, .9806, .9417, .8436,
+		.6711, .4633, .2889, .1671, .0902, .0505, .0315, .0238,
+		.0213, .0206, .0196, .0168, .0114, .0067, .0041, .0030,
+		.0024, .0020, .0016, .0011, .0013, .0008, .0006, .0004,
+		.0004, .0004, .0005, .0011, .0020, .0012, .0004, .0001,
+		.0001, .0001, .0001, .0001, .0001, .0000, .0000, .0000,
 		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
 		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
 		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
 		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+		.0000, .0000, .0000, .0000, .0001, .0002, .0008, .0011,
+		.0008, .0004, .0004, .0004, .0007, .0016, .0024, .0010,
+		.0003, .0002, .0001, .0001, .0000, .0000, .0000, .0000,
+		.0000, .0000, .0000, .0001, .0000, .0001, .0001, .0001,
+		.0002, .0003, .0004, .0007, .0009, .0007, .0006, .0004,
+		.0003, .0002, .0002, .0002, .0002, .0002, .0002, .0002,
+		.0003, .0004, .0004, .0005, .0007, .0010, .0016, .0026,
+		.0046, .0091, .0172, .0238, .0215, .0159, .0120, .0095,
+		.0079, .0072, .0072, .0076, .0084, .0099, .0123, .0163,
+		.0226, .0320, .0444, .0547, .0564, .0480, .0358, .0258,
+		.0189, .0144, .0117, .0099, .0086, .0078, .0072, .0070,
+		.0069, .0069, .0070, .0073, .0074, .0075, .0075, .0071,
+		.0064
+    };
+	
+    /* Pleiades1b Green of pleiades1b */
+    static const float sr2[209] = {
 		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
 		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+		.0001, .0001, .0001, .0002, .0003, .0005, .0006, .0008,
+		.0015, .0041, .0100, .0196, .0325, .0568, .1238, .2859,
+		.5290, .7716, .8838, .9080, .9131, .9137, .9225, .9367,
+		.9498, .9545, .9586, .9642, .9705, .9723, .9675, .9589,
+		.9524, .9525, .9560, .9552, .9490, .9471, .9544, .9711,
+		.9898, 1.0000, .9954, .9698, .9253, .8633, .7948, .7239,
+		.6453, .5439, .4170, .2767, .1575, .0856, .0492, .0327,
+		.0238, .0182, .0141, .0100, .0058, .0030, .0015, .0008,
+		.0005, .0003, .0002, .0001, .0001, .0001, .0001, .0001,
+		.0000, .0001, .0000, .0000, .0001, .0001, .0001, .0003,
+		.0003, .0002, .0001, .0001, .0000, .0000, .0000, .0000,
 		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0001,
+		.0003, .0002, .0001, .0000, .0000, .0000, .0000, .0000,
 		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
 		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
 		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+		.0000, .0001, .0001, .0001, .0003, .0007, .0032, .0142,
+		.0083, .0022, .0009, .0006, .0004, .0004, .0004, .0004,
+		.0005, .0006, .0008, .0011, .0019, .0037, .0064, .0103,
+		.0131, .0133, .0111, .0084, .0066, .0057, .0054, .0056,
+		.0062, .0072, .0089, .0115, .0149, .0193, .0235, .0264,
+		.0270, .0255, .0234, .0214, .0199, .0193, .0191, .0197,
+		.0207, .0220, .0232, .0238, .0230, .0207, .0172, .0133,
+		.0098
+    };
+	
+    /* Pleiades1b Red of pleiades1b */
+    static const float sr3[209] = {
+		.0005, .0009, .0005, .0012, .0051, .0080, .0067, .0109,
+		.0247, .0654, .1225, .0570, .0214, .0128, .0063, .0024,
+		.0009, .0005, .0004, .0004, .0005, .0008, .0010, .0006,
+		.0004, .0003, .0002, .0003, .0004, .0005, .0005, .0004,
+		.0003, .0002, .0001, .0001, .0001, .0001, .0001, .0000,
 		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
 		.0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
-		.0000, .0001, .0002, .0002, .0002, .0002, .0002, .0002,
-		.0002, .0002, .0002, .0003, .0003, .0003, .0004, .0005,
-		.0009, .0014, .0025, .0049, .0100, .0217, .0479, .0922,
-		.1664, .2868, .4459, .6204, .7669, .8738, .9340, .9624,
-		.9784, .9885, .9946, .9984, 1.0000, .9993, .9970, .9937,
-		.9905, .9896, .9899, .9885, .9839, .9739, .9568, .9309,
-		.9055, .8919, .8997, .9116, .8201, .6699, .5134, .2892,
-		.1348, .0631, .0270, .0123, .0058, .0030, .0017, .0010,
-		.0006, .0005, .0003, .0003, .0002, .0002, .0002, .0002,
-		.0002, .0002, .0002, .0002, .0002, .0002, .0002, .0002,
-		.0002, .0002, .0002, .0000, .0000, .0000, .0000, .0000,
-		.0000
+		.0000, .0000, .0001, .0001, .0001, .0001, .0001, .0002,
+		.0002, .0002, .0007, .0012, .0021, .0038, .0068, .0123,
+		.0222, .0413, .0781, .1519, .2777, .4510, .6291, .7625,
+		.8329, .8579, .8659, .8693, .8752, .8858, .9006, .9175,
+		.9349, .9478, .9570, .9623, .9648, .9624, .9613, .9620,
+		.9699, .9812, .9934, 1.0000, .9810, .9523, .9132, .8694,
+		.8252, .7830, .7361, .6735, .5878, .4805, .3630, .2523,
+		.1626, .1022, .0641, .0419, .0285, .0205, .0154, .0121,
+		.0099, .0083, .0071, .0061, .0052, .0043, .0035, .0028,
+		.0036, .0030, .0023, .0018, .0013, .0010, .0008, .0006,
+		.0005, .0004, .0004, .0004, .0003, .0003, .0003, .0003,
+		.0003, .0003, .0003, .0003, .0004, .0004, .0005, .0006,
+		.0006, .0007, .0007, .0006, .0005, .0005, .0004, .0003,
+		.0003, .0003, .0002, .0002, .0002, .0002, .0002, .0002,
+		.0002, .0002, .0002, .0003, .0003, .0003, .0003, .0004,
+		.0005, .0006, .0008, .0010, .0013, .0018, .0024, .0033,
+		.0044, .0057, .0069, .0078, .0083, .0084, .0082, .0081,
+		.0080, .0078, .0078, .0080, .0082, .0085, .0088, .0093,
+		.0098, .0101, .0104, .0104, .0102, .0095, .0086, .0073,
+		.0060
+    };
+	
+    /* pleiades1b NIR of pleiades1b */
+    static const float sr4[209] = {
+		.0002, .0008, .0004, .0005, .0017, .0027, .0012, .0007,
+		.0007, .0008, .0008, .0010, .0015, .0022, .0020, .0010,
+		.0005, .0003, .0002, .0002, .0002, .0003, .0004, .0006,
+		.0006, .0004, .0003, .0002, .0002, .0002, .0002, .0002,
+		.0004, .0006, .0007, .0006, .0005, .0004, .0004, .0004,
+		.0004, .0005, .0006, .0006, .0007, .0008, .0008, .0007,
+		.0006, .0006, .0005, .0005, .0005, .0006, .0007, .0012,
+		.0023, .0029, .0020, .0008, .0004, .0002, .0001, .0001,
+		.0001, .0001, .0001, .0001, .0002, .0003, .0005, .0008,
+		.0007, .0003, .0002, .0001, .0001, .0001, .0000, .0000,
+		.0000, .0000, .0000, .0000, .0001, .0001, .0001, .0001,
+		.0001, .0002, .0002, .0002, .0002, .0001, .0001, .0001,
+		.0001, .0001, .0001, .0001, .0001, .0001, .0001, .0001,
+		.0001, .0001, .0001, .0001, .0002, .0002, .0003, .0003,
+		.0004, .0005, .0006, .0008, .0010, .0012, .0014, .0016,
+		.0018, .0020, .0023, .0025, .0029, .0052, .0064, .0080,
+		.0101, .0131, .0171, .0229, .0310, .0427, .0592, .0835,
+		.1179, .1664, .2311, .3159, .4172, .5285, .6410, .7472,
+		.8386, .9088, .9594, .9881, 1.0000, .9992, .9896, .9677,
+		.9514, .9375, .9255, .9152, .9088, .9026, .8967, .8925,
+		.8855, .8777, .8676, .8569, .8474, .8360, .8237, .8130,
+		.8016, .7922, .7828, .7769, .7715, .7631, .7543, .7452,
+		.7349, .7255, .7146, .7031, .6919, .6816, .6705, .6595,
+		.6476, .6292, .6111, .5934, .5761, .5600, .5449, .5306,
+		.5155, .4977, .4734, .4388, .3934, .3368, .2743, .2114,
+		.1536, .1063, .0704, .0459, .0295, .0193, .0127, .0085,
+		.0058
+    };
+	
+    /* Pleiades1b Pan of pleiades1b */
+    static const float sr5[209] = {
+		.0000, .0000, .0000, .0000, .0001, .0001, .0001, .0002,
+		.0004, .0008, .0028, .0056, .0120, .0221, .0389, .0664,
+		.1067, .1614, .2272, .2987, .3678, .4258, .4697, .4992,
+		.5193, .5333, .5467, .5603, .5736, .5855, .5957, .6041,
+		.6120, .6188, .6256, .6319, .6378, .6422, .6444, .6449,
+		.6449, .6451, .6468, .6513, .6591, .6691, .6812, .6937,
+		.7056, .7158, .7251, .7324, .7384, .7439, .7493, .7536,
+		.7581, .7611, .7639, .7652, .7662, .7666, .7675, .7688,
+		.7723, .7771, .7834, .7917, .8015, .8110, .8200, .8291,
+		.8365, .8427, .8482, .8519, .8555, .8583, .8620, .8667,
+		.8716, .8780, .8847, .8913, .8989, .9046, .9105, .9155,
+		.9208, .9253, .9290, .9329, .9370, .9401, .9442, .9469,
+		.9503, .9521, .9543, .9574, .9608, .9663, .9721, .9788,
+		.9846, .9912, .9957, .9991, 1.0000, .9963, .9915, .9870,
+		.9817, .9771, .9746, .9729, .9739, .9742, .9769, .9798,
+		.9828, .9846, .9851, .9837, .9826, .9790, .9746, .9697,
+		.9648, .9598, .9533, .9484, .9445, .9397, .9345, .9297,
+		.9248, .9183, .9112, .9061, .9006, .8953, .8908, .8895,
+		.8885, .8810, .8708, .8567, .8369, .8102, .7729, .7190,
+		.6529, .5711, .4796, .3846, .2948, .2166, .1531, .1057,
+		.0717, .0491, .0338, .0257, .0182, .0132, .0122, .0090,
+		.0084, .0043, .0033, .0027, .0022, .0018, .0015, .0014,
+		.0012, .0011, .0010, .0009, .0009, .0008, .0007, .0007,
+		.0007, .0006, .0006, .0006, .0006, .0006, .0005, .0005,
+		.0005, .0005, .0004, .0004, .0004, .0005, .0004, .0004,
+		.0004, .0004, .0004, .0004, .0003, .0004, .0003, .0003,
+		.0003
+    };
+	
+    static const float wli[5] = {0.430, 0.430, 0.430, 0.430, 0.430};
+    static const float wls[5] = {0.950, 0.950, 0.950, 0.950, 0.950};
+
+    ffu.wlinf = (float)wli[iwa-1];
+    ffu.wlsup = (float)wls[iwa-1];
+
+    int i;
+    for(i = 0; i < 1501; i++) ffu.s[i] = 0;
+
+    switch(iwa)
+    {
+    case 1: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr1[i];
+        break;
+    case 2: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr2[i];
+        break;
+    case 3: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr3[i];
+        break;
+    case 4: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr4[i];
+        break;
+    case 5: for(i = 0; i < 209; i++)  ffu.s[72+i] = sr5[i];
+        break;
+    }
+}
+
+
+void IWave::worldview3(int iwa)
+{
+
+    /* Pan of worldview3 */
+    static const float sr1[162] = {
+        .0000, .0001, .0002, .0005, .0018, .0040, .0437, .0999,
+        .2023, .3598, .4607, .4963, .5229, .5402, .5483, .5464,
+        .5491, .5563, .5584, .5565, .5580, .5663, .5684, .5652,
+        .5674, .5758, .5779, .5740, .5814, .5982, .6074, .6086,
+        .6140, .6240, .6297, .6323, .6369, .6421, .6537, .6723,
+        .6853, .6929, .6990, .7052, .7116, .7163, .7205, .7239,
+        .7298, .7369, .7446, .7530, .7589, .7626, .7700, .7778,
+        .7844, .7917, .7971, .8030, .8088, .8133, .8203, .8269,
+        .8358, .8451, .8507, .8532, .8567, .8614, .8684, .8768,
+        .8824, .8882, .8900, .8896, .8910, .8936, .9016, .9128,
+        .9218, .9295, .9286, .9244, .9243, .9263, .9334, .9439,
+        .9480, .9513, .9530, .9507, .9534, .9566, .9606, .9626,
+        .9653, .9670, .9676, .9686, .9538, .9360, .9365, .9431,
+        .9533, .9661, .9744, .9783, .9859, .9935, .9972, .9997,
+        .9985, .9964, .9917, .9875, .9869, .9871, .9841, .9803,
+        .9789, .9753, .9744, .9739, .9753, .9755, .9726, .9685,
+        .9654, .9614, .9579, .9573, .9557, .9525, .9487, .9448,
+        .9443, .9420, .9429, .9446, .9411, .9377, .9310, .9255,
+        .9240, .9205, .8438, .7458, .5255, .2833, .1646, .0703,
+        .0337, .0104, .0031, .0017, .0010, .0006, .0004, .0002,
+        .0002, .0001
+    };
+	
+    /* Coastal_MS7 of worldview3 */
+    static const float sr2[34] = {
+        .0000, .0000, .0002, .0006, .0025, .0226, .1048, .3527,
+        .5648, .6403, .6701, .7018, .7234, .7547, .7860, .8122,
+        .8297, .8511, .8795, .8988, .8979, .9066, .9363, .9680,
+        .9882, 1.0000, .8771, .4725, .1212, .0196, .0037, .0011,
+        .0003, .0001
+    };
+	
+    /* Blue_MS4 of worldview3 */
+    static const float sr3[176] = {
+        .0000, .0001, .0002, .0004, .0008, .0020, .0052, .0145,
+        .0523, .1391, .3701, .6262, .7571, .7961, .8125, .8259,
+        .8327, .8311, .8464, .8596, .8824, .8860, .9003, .9034,
+        .9042, .9240, .9537, .9661, .9668, .9831, .9967, .9997,
+        .9531, .8053, .5343, .2451, .0889, .0348, .0099, .0041,
+        .0016, .0007, .0004, .0003, .0002, .0001, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0001, .0001, .0001, .0001,
+        .0001, .0001, .0001, .0003, .0003, .0001, .0001, .0001
+
+    };
+	
+    /* Green_MS3 of worldview3 */
+    static const float sr4[45] = {
+        .0000, .0001, .0007, .0065, .0851, .4023, .6996, .7702,
+        .7801, .8082, .7873, .8085, .8168, .8360, .8423, .7935,
+        .8164, .8616, .8783, .8763, .8792, .8934, .9187, .9544,
+        .9716, .9713, .9720, .9459, .9458, .9834, .9994, .9601,
+        .7693, .4286, .1704, .0586, .0208, .0075, .0030, .0015,
+        .0008, .0004, .0002, .0001, .0001
+    };
+	
+    /* Yellow_MS6 of worldview3 */
+    static const float sr5[165] = {
+        .0000, .0000, .0002, .0007, .0037, .0342, .2139, .6005,
+        .8636, .8941, .9078, .9180, .9227, .9286, .9467, .9433,
+        .9607, .9878, .9963, .9933, .9959, .9587, .6899, .3138,
+        .0944, .0261, .0093, .0036, .0016, .0007, .0004, .0002,
+        .0001, .0001, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0001, .0003, .0005, .0008, .0019, .0057,
+        .0055, .0016, .0005, .0002, .0001, .0001, .0001, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0000, .0000, .0000, .0000, .0000,
+        .0000, .0000, .0000, .0001, .0001
+    };
+	
+    /* Red_MS2 of worldview3 */
+    static const float sr6[42] = {
+        .0000, .0001, .0004, .0020, .0203, .1547, .4879, .8183,
+        .9395, .9432, .9370, .9429, .9488, .9468, .9548, .9586,
+        .9625, .9732, .9790, .9840, .9931, .9922, .9949, .9945,
+        .9875, .9886, .9949, .9993, .9714, .8022, .4694, .1876,
+        .0607, .0229, .0093, .0039, .0018, .0008, .0004, .0003,
+        .0002, .0001
+    };
+	
+    /* Red Edge_MS5 of worldview3 */
+    static const float sr7[38] = {
+        .0000, .0001, .0002, .0005, .0012, .0032, .0088, .0326,
+        .1111, .3243, .6486, .8933, .9838, .9935, .9864, .9820,
+        .9795, .9812, .9855, .9921, .9979, .9995, .9895, .9330,
+        .7780, .4940, .2209, .0826, .0292, .0123, .0055, .0027,
+        .0013, .0007, .0004, .0002, .0001, .0001
+    };
+	
+    /* NIR1_MS1 of worldview3 */
+    static const float sr8[76] = {
+        .0001, .0001, .0001, .0003, .0006, .0013, .0027, .0053,
+        .0104, .0231, .0588, .1652, .3962, .6715, .8709, .9739,
+        1.0000, .9922, .9818, .9712, .9554, .9382, .9261, .9178,
+        .9153, .9139, .9153, .9127, .9056, .8989, .8899, .8803,
+        .8697, .8670, .8662, .8676, .8673, .8596, .8528, .8439,
+        .8341, .8247, .8115, .7939, .7757, .7585, .7400, .7253,
+        .7101, .6925, .6740, .6561, .6427, .6302, .6203, .6125,
+        .6055, .6017, .6020, .6027, .5664, .4018, .2039, .0823,
+        .0309, .0135, .0063, .0033, .0021, .0015, .0010, .0007,
+        .0004, .0002, .0001, .0001
+    };
+	
+    /* NIR2_MS8 of worldview3 */
+    static const float sr9[89] = {
+        .0000, .0001, .0021, .0050, .0071, .0155, .0519, .1987,
+        .5721, .8996, .9942, .9981, .9767, .9538, .9337, .9134,
+        .8942, .8730, .8531, .8382, .8188, .8047, .7914, .7726,
+        .7577, .7403, .7301, .7191, .7061, .6928, .6801, .6680,
+        .6568, .6439, .6304, .6170, .6000, .5864, .5722, .5544,
+        .5405, .5268, .5100, .4928, .4761, .4612, .4439, .4297,
+        .4132, .3972, .3822, .3674, .3515, .3365, .3214, .3091,
+        .2956, .2844, .2740, .2628, .2523, .2411, .2303, .2218,
+        .2105, .2013, .1933, .1836, .1755, .1660, .1567, .1508,
+        .1429, .1366, .1304, .1232, .1151, .0999, .0731, .0419,
+        .0195, .0082, .0035, .0017, .0008, .0005, .0003, .0002,
+        .0001
     };
 	
-    static const float wli[17] = {0.350, 0.350, 0.350, 0.350, 0.350, 0.350, 0.350, 0.350, 0.350, 0.350, 0.350, 0.350, 0.350, 0.350, 0.350, 0.350, 0.350};
-    static const float wls[17] = {2.450, 2.450, 2.450, 2.450, 2.450, 2.450, 2.450, 2.450, 2.450, 2.450, 2.450, 2.450, 2.450, 2.450, 2.450, 2.450, 2.450};
+    /* SWIR1 of worldview3 */
+    static const float sr10[63] = {
+        .0000, .0000, .0002, .0003, .0003, .0004, .0004, .0005,
+        .0007, .0008, .0011, .0015, .0021, .0030, .0044, .0068,
+        .0111, .0188, .0331, .0607, .1164, .2198, .4033, .6350,
+        .8383, .9524, .9828, .9904, .9904, .9880, .9882, .9949,
+        .9986, .9536, .7801, .5373, .3037, .1597, .0858, .0470,
+        .0273, .0163, .0103, .0067, .0046, .0032, .0023, .0017,
+        .0013, .0010, .0009, .0007, .0006, .0005, .0004, .0004,
+        .0004, .0003, .0003, .0003, .0003, .0003, .0001
+    };
+	
+    /* SWIR2 of worldview3 */
+    static const float sr11[56] = {
+        .0001, .0001, .0001, .0001, .0001, .0001, .0001, .0001,
+        .0001, .0001, .0002, .0002, .0004, .0006, .0014, .0034,
+        .0098, .0310, .1039, .2858, .6176, .9095, .9226, .8949,
+        .9136, .9476, .9752, .9884, .9883, .9859, .9913, .9971,
+        .9966, 1.0000, .9555, .7257, .4157, .1524, .0495, .0153,
+        .0057, .0023, .0011, .0006, .0003, .0002, .0002, .0001,
+        .0001, .0001, .0001, .0001, .0001, .0001, .0001, .0001
+
+    };
+	
+    /* SWIR3 of worldview3 */
+    static const float sr12[39] = {
+        .0000, .0001, .0001, .0002, .0003, .0005, .0013, .0033,
+        .0101, .0339, .1087, .2884, .5790, .7930, .8898, .8970,
+        .9117, .9246, .9352, .9474, .9610, .9773, .9953, .9989,
+        .9866, .9786, .8403, .5534, .2201, .0665, .0197, .0062,
+        .0025, .0011, .0005, .0003, .0001, .0000, .0001
+    };
+	
+    /* SWIR4 of worldview3 */
+    static const float sr13[50] = {
+        .0000, .0001, .0001, .0002, .0002, .0003, .0004, .0007,
+        .0011, .0019, .0034, .0064, .0131, .0284, .0659, .1419,
+        .3122, .5747, .8196, .9650, .9582, .9516, .9666, .9852,
+        .9952, .9995, .9999, .9997, .9949, .9868, .9743, .9339,
+        .7642, .5640, .3207, .1506, .0712, .0328, .0161, .0082,
+        .0045, .0026, .0015, .0009, .0006, .0004, .0003, .0001,
+        .0001, .0001
+    };
+	
+    /* SWIR5 of worldview3 */
+    static const float sr14[54] = {
+        .0001, .0002, .0001, .0000, .0001, .0000, .0002, .0001,
+        .0003, .0005, .0008, .0014, .0027, .0054, .0119, .0282,
+        .0703, .1534, .3105, .5282, .7231, .8960, .9577, .9628,
+        .9709, .9846, .9959, .9999, .9898, .9701, .9473, .9435,
+        .9416, .8180, .6295, .3992, .1832, .0741, .0302, .0124,
+        .0059, .0029, .0016, .0009, .0005, .0003, .0003, .0001,
+        .0001, .0002, .0001, .0000, .0001, .0000
+    };
+	
+    /* SWIR6 of worldview3 */
+    static const float sr15[51] = {
+        .0000, .0001, .0001, .0001, .0001, .0001, .0003, .0004,
+        .0006, .0011, .0019, .0033, .0063, .0125, .0283, .0650,
+        .1343, .2683, .4892, .7200, .9225, .9984, .9977, .9954,
+        .9949, .9915, .9896, .9825, .9642, .9341, .8872, .8615,
+        .8581, .7748, .6345, .4488, .2272, .1005, .0451, .0194,
+        .0093, .0047, .0026, .0015, .0009, .0005, .0004, .0003,
+        .0002, .0001, .0001
+    };
+	
+    /* SWIR7 of worldview3 */
+    static const float sr16[47] = {
+        .0000, .0001, .0001, .0001, .0003, .0006, .0012, .0025,
+        .0061, .0156, .0468, .1112, .2458, .4584, .6318, .7693,
+        .9092, .9488, .9662, .9842, .9932, .9963, .9989, 1.0000,
+        .9969, .9914, .9850, .9769, .9635, .9483, .9148, .7730,
+        .6197, .4182, .2046, .0865, .0340, .0125, .0053, .0024,
+        .0012, .0006, .0003, .0002, .0001, .0001, .0001
+    };
+	
+    /* SWIR8 of worldview3 */
+    static const float sr17[83] = {
+        .0000, .0001, .0002, .0002, .0002, .0002, .0002, .0002,
+        .0002, .0002, .0002, .0003, .0003, .0003, .0004, .0005,
+        .0009, .0014, .0025, .0049, .0100, .0217, .0479, .0922,
+        .1664, .2868, .4459, .6204, .7669, .8738, .9340, .9624,
+        .9784, .9885, .9946, .9984, 1.0000, .9993, .9970, .9937,
+        .9905, .9896, .9899, .9885, .9839, .9739, .9568, .9309,
+        .9055, .8919, .8997, .9116, .8201, .6699, .5134, .2892,
+        .1348, .0631, .0270, .0123, .0058, .0030, .0017, .0010,
+        .0006, .0005, .0003, .0003, .0002, .0002, .0002, .0002,
+        .0002, .0002, .0002, .0002, .0002, .0002, .0002, .0002,
+        .0002, .0002, .0002
+    };
+	
+    static const float wli[17] = {0.4300, 0.3825, 0.4250, 0.4975, 0.5675, 0.6150, 0.6800, 0.7400, 0.8425, 1.1375, 1.5025, 1.6125, 1.6675, 2.0975, 2.1375, 2.2025, 2.2300};
+    static const float wls[17] = {0.8350, 0.4675, 0.8650, 0.6100, 0.9800, 0.7200, 0.7750, 0.9300, 1.0650, 1.2950, 1.6425, 1.7100, 1.7925, 2.2325, 2.2650, 2.3200, 2.4375};
 
     ffu.wlinf = (float)wli[iwa-1];
     ffu.wlsup = (float)wls[iwa-1];
@@ -6143,39 +4336,39 @@ void IWave::worldview3(int iwa)
 
     switch(iwa)
     {
-    case 1: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr1[i];
+    case 1: for(i = 0; i < 162; i++)  ffu.s[72+i] = sr1[i];
         break;
-    case 2: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr2[i];
+    case 2: for(i = 0; i < 34; i++)  ffu.s[53+i] = sr2[i];
         break;
-    case 3: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr3[i];
+    case 3: for(i = 0; i < 176; i++)  ffu.s[70+i] = sr3[i];
         break;
-    case 4: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr4[i];
+    case 4: for(i = 0; i < 45; i++)  ffu.s[99+i] = sr4[i];
         break;
-    case 5: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr5[i];
+    case 5: for(i = 0; i < 165; i++)  ffu.s[127+i] = sr5[i];
         break;
-    case 6: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr6[i];
+    case 6: for(i = 0; i < 42; i++)  ffu.s[146+i] = sr6[i];
         break;
-    case 7: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr7[i];
+    case 7: for(i = 0; i < 38; i++)  ffu.s[172+i] = sr7[i];
         break;
-    case 8: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr8[i];
+    case 8: for(i = 0; i < 76; i++)  ffu.s[196+i] = sr8[i];
         break;
-    case 9: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr9[i];
+    case 9: for(i = 0; i < 89; i++)  ffu.s[237+i] = sr9[i];
         break;
-    case 10: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr10[i];
+    case 10: for(i = 0; i < 63; i++)  ffu.s[355+i] = sr10[i];
         break;
-    case 11: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr11[i];
+    case 11: for(i = 0; i < 56; i++)  ffu.s[501+i] = sr11[i];
         break;
-    case 12: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr12[i];
+    case 12: for(i = 0; i < 39; i++)  ffu.s[545+i] = sr12[i];
         break;
-    case 13: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr13[i];
+    case 13: for(i = 0; i < 50; i++)  ffu.s[567+i] = sr13[i];
         break;
-    case 14: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr14[i];
+    case 14: for(i = 0; i < 54; i++)  ffu.s[739+i] = sr14[i];
         break;
-    case 15: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr15[i];
+    case 15: for(i = 0; i < 51; i++)  ffu.s[755+i] = sr15[i];
         break;
-    case 16: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr16[i];
+    case 16: for(i = 0; i < 47; i++)  ffu.s[781+i] = sr16[i];
         break;
-    case 17: for(i = 0; i < 841; i++)  ffu.s[40+i] = sr17[i];
+    case 17: for(i = 0; i < 83; i++)  ffu.s[792+i] = sr17[i];
         break;
     }
 }
@@ -7870,31 +6063,47 @@ void IWave::parse()
 	else if(iwave <= 165)   worldview3(iwave - 148);
 	else if(iwave <= 178)   sentinel2a(iwave - 165);
 	else G_warning(_("Unsupported iwave value: %d"), iwave);
-    }
-
-    /* set wlinf, wlsup */
-    ffu.wlinf = 0.25;
-    iinf = 0;
-    while (ffu.s[iinf] == 0) {
-	ffu.wlinf += 0.0025;
-	iinf++;
-    }
 
-    ffu.wlsup = 4.0;
-    isup = 1500;
-    while (ffu.s[isup] == 0) {
-	ffu.wlsup -= 0.0025;
-	isup--;
+	if (iwave > 1) {
+	    int imax;
+	    float smax, sthreshold;
+
+	    imax = -1;
+	    smax = 0;
+	    sthreshold = 0.01; /* low threshold for filter functions */
+
+	    /* find maximum response */
+	    for(i = 0; i <= 1500; i++) {
+		if (smax < ffu.s[i]) {
+		    smax = ffu.s[i];
+		    imax = i;
+		}
+	    }
+	    if (smax < sthreshold)
+		G_fatal_error("Invalid filter function");
+	    
+	    /* set wlinf, wlsup */
+	    iinf = imax;
+	    ffu.wlinf = imax * 0.0025 + 0.25;
+	    while (iinf > 0 && ffu.s[iinf - 1] > sthreshold) {
+		iinf--;
+		ffu.wlinf -= 0.0025;
+	    }
+	    isup = imax;
+	    ffu.wlsup = imax * 0.0025 + 0.25;
+	    while (isup < 1500 && ffu.s[isup + 1] > sthreshold) {
+		isup++;
+		ffu.wlsup += 0.0025;
+	    }
+	}
     }
 
-#if 0
     iinf = (int)((ffu.wlinf - 0.25f) / 0.0025f + 1.5f) - 1;	/* remember indexing */
     isup = (int)((ffu.wlsup - 0.25f) / 0.0025f + 1.5f) - 1;	/*		   "         */
-#endif
 
     if(iwave == 1)	/* moved here to avoid unnecessary gotos */
     {
-	for(int i = iinf; i <= isup; i++) cin >> ffu.s[i];
+	for(i = iinf; i <= isup; i++) cin >> ffu.s[i];
 	cin.ignore(numeric_limits<int>::max(),'\n');
     }
 }
diff --git a/imagery/i.ortho.photo/i.ortho.photo/i.ortho.photo.html b/imagery/i.ortho.photo/i.ortho.photo/i.ortho.photo.html
index 760622c..c2dee7f 100644
--- a/imagery/i.ortho.photo/i.ortho.photo/i.ortho.photo.html
+++ b/imagery/i.ortho.photo/i.ortho.photo/i.ortho.photo.html
@@ -54,7 +54,7 @@ Five groups of input parameters are required for ortho-rectification:
 <ul> 
 <li>Aerial image (images),</li>
 <li>Exposure and characteristics of the camera, i.e. its coordinates in
-target coordinate system and height above sea level, focal lenght, yaw, 
+target coordinate system and height above sea level, focal length, yaw, 
 pitch and roll, dimensions of the camera sensor and resolution of aerial
 images,</li>
 <li>Reference surface, i.e. digital elevation model in the target coordinate
@@ -342,4 +342,4 @@ and further image analysis.
 Mike Baba,  DBA Systems, Inc.<br>
 GRASS development team, 199?-2017<br>
 <p>
-<i>Last changed: $Date: 2017-11-18 21:27:17 +0100 (Sat, 18 Nov 2017) $</i>
+<i>Last changed: $Date: 2018-01-09 18:05:58 +0100 (Tue, 09 Jan 2018) $</i>
diff --git a/imagery/i.ortho.photo/i.ortho.photo/menu.c b/imagery/i.ortho.photo/i.ortho.photo/menu.c
index 28ca579..eaf5dbb 100644
--- a/imagery/i.ortho.photo/i.ortho.photo/menu.c
+++ b/imagery/i.ortho.photo/i.ortho.photo/menu.c
@@ -89,17 +89,6 @@ int main(int argc, char **argv)
     if ((p = strchr(group.name, '@')))
 	*p = 0;
 
-    /* get and check the group reference files */
-    /* Skip if you are creating the group right now */
-    if (strcmp(moduletorun, "i.group") != 0){
-    	if (!I_get_group_ref(group.name, &group.group_ref))
-		G_fatal_error(_("Pre-selected group <%s> not found"), group.name);
-	    I_get_group_ref(group.name, &group.group_ref);
-
-	    if (group.group_ref.nfiles <= 0)
-		G_fatal_error(_("Group [%s] contains no files"), group.name);
-    }
-
     I_put_group(group.name);
     /*-----------------------------*/
     /* END of group validity check */
diff --git a/include/Make/Grass.make b/include/Make/Grass.make
index f3a61d6..5a839fd 100644
--- a/include/Make/Grass.make
+++ b/include/Make/Grass.make
@@ -213,7 +213,7 @@ NVIZDEPS         = $(OGSFLIB) $(GISLIB) $(OPENGLLIB)
 OGSFDEPS         = $(BITMAPLIB) $(RASTER3DLIB) $(VECTORLIB) $(DBMILIB) $(RASTERLIB) $(GISLIB) $(TIFFLIBPATH) $(TIFFLIB) $(OPENGLLIB) $(OPENGLULIB) $(MATHLIB)
 PNGDRIVERDEPS    = $(DRIVERLIB) $(GISLIB) $(PNGLIB) $(MATHLIB)
 PSDRIVERDEPS     = $(DRIVERLIB) $(GISLIB) $(MATHLIB)
-RASTERDEPS       = $(GISLIB) $(MATHLIB)
+RASTERDEPS       = $(GISLIB) $(GPROJLIB) $(MATHLIB)
 RLIDEPS          = $(RASTERLIB) $(GISLIB) $(MATHLIB)
 ROWIODEPS        = $(GISLIB)
 RTREEDEPS        = $(GISLIB) $(MATHLIB)
diff --git a/include/VERSION b/include/VERSION
index 41f87f4..9b5b370 100644
--- a/include/VERSION
+++ b/include/VERSION
@@ -1,4 +1,4 @@
 7
 4
-0RC2
+0
 2018
diff --git a/lib/Makefile b/lib/Makefile
index d6f2a27..70fb4a1 100644
--- a/lib/Makefile
+++ b/lib/Makefile
@@ -6,6 +6,7 @@ include $(MODULE_TOPDIR)/include/Make/Vars.make
 SUBDIRS = \
 	datetime \
 	gis \
+	proj \
 	raster \
 	external \
 	gmath \
@@ -21,7 +22,6 @@ SUBDIRS = \
 	display \
 	db \
 	fonts \
-	proj \
 	vector \
 	imagery \
 	cluster \
diff --git a/lib/raster/gdal.c b/lib/raster/gdal.c
index a658638..86e5234 100644
--- a/lib/raster/gdal.c
+++ b/lib/raster/gdal.c
@@ -18,6 +18,7 @@
 #include <grass/config.h>
 #include <grass/gis.h>
 #include <grass/raster.h>
+#include <grass/gprojects.h>
 #include <grass/glocale.h>
 
 #include "R.h"
@@ -431,12 +432,8 @@ struct GDAL_link *Rast_create_gdal_link(const char *name,
 	read_gdal_options();
 	st->projinfo = G_get_projinfo();
 	st->projunits = G_get_projunits();
-#if 0
-	/* We cannot use GPJ_grass_to_wkt() here because that would create a
-	   circular dependency between libgis and libgproj */
 	if (st->projinfo && st->projunits)
-	    st->srswkt = GPJ_grass_to_wkt(st->projinfo, st->projunits);
-#endif
+	    st->srswkt = GPJ_grass_to_wkt(st->projinfo, st->projunits, 0, 0);
 	G_initialize_done(&st->initialized);
     }
 
diff --git a/mswindows/osgeo4w/package.sh b/mswindows/osgeo4w/package.sh
index b1b2a53..63d06ee 100755
--- a/mswindows/osgeo4w/package.sh
+++ b/mswindows/osgeo4w/package.sh
@@ -156,8 +156,7 @@ if ! [ -f mswindows/osgeo4w/configure-stamp ]; then
 	if [ "$MINGW_POSTFIX" = "64" ]; then
 	    conf_host=x86_64-w64-mingw32
             # https://trac.osgeo.org/osgeo4w/ticket/550
-            # LAS support hopefully only temporarily disabled on 64bit
-            conf_opts=
+            conf_opts="--with-liblas=$PWD/mswindows/osgeo4w/liblas-config"
 	else
 	    conf_host=i386-w64-mingw32
             # https://trac.osgeo.org/osgeo4w/ticket/539
diff --git a/mswindows/osgeo4w/setup_x86.hint.tmpl b/mswindows/osgeo4w/setup_x86.hint.tmpl
index bf9450f..ae2c107 100644
--- a/mswindows/osgeo4w/setup_x86.hint.tmpl
+++ b/mswindows/osgeo4w/setup_x86.hint.tmpl
@@ -1,5 +1,5 @@
-sdesc: "GRASS GIS - daily builds of development version"
-ldesc: "Geographic Resources Analysis Support System (GRASS GIS) - daily builds of SVN trunk"
+sdesc: "GRASS GIS"
+ldesc: "Geographic Resources Analysis Support System (GRASS GIS)"
 category: Desktop
 requires: liblas avce00 gpsbabel gs gdal-python matplotlib msvcrt iconv libtiff gdal proj freetype-mingw pdcurses zlib fftw libpng wxpython python-numpy python-pil pyopengl cairo psycopg2 rbatch
 maintainer: MartinLanda
diff --git a/mswindows/osgeo4w/setup_x86_64.hint.tmpl b/mswindows/osgeo4w/setup_x86_64.hint.tmpl
index 659b9f6..6289408 100644
--- a/mswindows/osgeo4w/setup_x86_64.hint.tmpl
+++ b/mswindows/osgeo4w/setup_x86_64.hint.tmpl
@@ -1,5 +1,5 @@
-sdesc: "GRASS GIS - daily builds of development version"
-ldesc: "Geographic Resources Analysis Support System (GRASS GIS) - daily builds of SVN trunk"
+sdesc: "GRASS GIS"
+ldesc: "Geographic Resources Analysis Support System (GRASS GIS)"
 category: Desktop
 requires: liblas avce00 gpsbabel gs gdal-python matplotlib msvcrt iconv libtiff gdal proj pdcurses zlib fftw libpng wxpython python-numpy python-pil pyopengl cairo psycopg2 rbatch
 maintainer: MartinLanda
diff --git a/raster/r.horizon/r.horizon.html b/raster/r.horizon/r.horizon.html
index c81bcc2..0f5694c 100644
--- a/raster/r.horizon/r.horizon.html
+++ b/raster/r.horizon/r.horizon.html
@@ -98,13 +98,13 @@ buffer parameters influence only size of the read elevation map,
 while the analysis in the raster mode will be done only for the
 area specified by the current region definition.
 
-<p>The <i>basename</i> parameter gives the basename of the output
+<p>The <i>output</i> parameter defines the basename of the output
 horizon raster maps. The raster name of each horizon direction
 raster will be constructed as <i>basename_</i>ANGLE, where ANGLE
 is the angle in degrees with the direction. If you use <b>r.horizon</b>
 in the single point mode this option will be ignored. 
 
-<p>The <i>output</i> parameter allows saving the resulting horizon
+<p>The <i>file</i> parameter allows saving the resulting horizon
 angles in a comma separated ASCII file (single point mode only). If
 you use <b>r.horizon</b> in the raster map mode this option will be ignored.
 
@@ -256,4 +256,4 @@ European Commission, Ispra, Italy
 <a href="mailto:Marcel.Suri at jrc.it">Marcel.Suri at jrc.it</a> 
 </ADDRESS>
 
-<p><i>Last changed: $Date: 2017-08-31 21:47:16 +0200 (Thu, 31 Aug 2017) $</i> 
+<p><i>Last changed: $Date: 2018-01-23 16:36:24 +0100 (Tue, 23 Jan 2018) $</i> 
diff --git a/raster/r.series.accumulate/r.series.accumulate.html b/raster/r.series.accumulate/r.series.accumulate.html
index 7f55466..edbb523 100644
--- a/raster/r.series.accumulate/r.series.accumulate.html
+++ b/raster/r.series.accumulate/r.series.accumulate.html
@@ -88,32 +88,38 @@ is given). The <em>low,high</em> thresholds are floating point, so use
 <em>range=0,inf</em> to ignore negative values, or 
 <em>range=-inf,-200.4</em> to ignore values above -200.4).
 <p>
-The number of input raster maps to be processed is given by the limit of the 
-operating system. For example, both the hard and soft limits are 
-typically 1024. The soft limit can be changed with e.g. 
-<tt>ulimit -n 1500</tt> (UNIX-based operating systems) but not higher 
-than the hard limit. If it is too low, you can as superuser add an 
-entry in
+The maximum number of raster maps that can be processed is given by the 
+user-specific limit of the operating system. For example, the soft limits 
+for users are typically 1024 files. The soft limit can be changed with e.g. 
+<tt>ulimit -n 4096</tt> (UNIX-based operating systems) but it cannot be 
+higher than the hard limit. If the latter is too low, you can as superuser
+add an entry in:
 
 <div class="code"><pre>
 /etc/security/limits.conf
 # <domain>      <type>  <item>         <value>
-your_username  hard    nofile          1500
+your_username  hard    nofile          4096
 </pre></div>
 
-This would raise the hard limit to 1500 file. Be warned that more
-files open need more RAM. See also the Wiki page
-<a href="http://grasswiki.osgeo.org/wiki/Large_raster_data_processing">Hints for large raster data processing</a>.
+This will raise the hard limit to 4096 files. Also have a look at the 
+overall limit of the operating system
+<div class="code"><pre>
+cat /proc/sys/fs/file-max
+</pre></div>
+which on modern Linux systems is several 100,000 files.
+
 <p>
-Use the <em>file</em> option to analyze large amount of raster maps 
-without hitting open files limit and the size limit of command line 
-arguments. The computation is slower than the <em>input</em> option 
-method. For every sinlge row in the output map(s) all input maps are 
-opened and closed. The amount of RAM will rise linear with the 
-number of specified input maps. The input and file options are 
-mutually exclusive. Input is a text file with a new line separated 
-list of raster map names and optional weights. As separator between 
-the map name and the weight the character "|" must be used.
+Use the <b>-z</b> flag to analyze large amounts of raster maps without
+hitting open files limit and the <em>file</em> option to avoid hitting
+the size limit of command line arguments.
+Note that the computation using the <em>file</em> option is slower
+than with the <em>input</em> option.
+For every single row in the output map(s) all input maps are 
+opened and closed. The amount of RAM will rise linearly with the number 
+of specified input maps. The <em>input</em> and <em>file</em> options are
+mutually exclusive: the former is a comma separated list of raster map
+names and the latter is a text file with a new line separated list of
+raster map names.
 
 <h2>EXAMPLES</h2>
 
@@ -148,4 +154,4 @@ r.series.accumulate in=MOD11A1.Day,MOD11A1.Night,MYD11A1.Day,MYD11A1.Night out=M
 
 Markus Metz and Soeren Gebbert (based on r.series)
 
-<p><i>Last changed: $Date: 2017-06-21 21:18:24 +0200 (Wed, 21 Jun 2017) $</i>
+<p><i>Last changed: $Date: 2018-01-16 20:08:59 +0100 (Tue, 16 Jan 2018) $</i>
diff --git a/raster/r.series/r.series.html b/raster/r.series/r.series.html
index 18d7e9a..ead4332 100644
--- a/raster/r.series/r.series.html
+++ b/raster/r.series/r.series.html
@@ -88,44 +88,51 @@ time intervals equal (see example).
 <em>r.series</em> can calculate arbitrary quantiles.
 
 <h3>Memory consumption</h3>
-
 Memory usage is not an issue, as <em>r.series</em> only needs to hold
 one row from each map at a time.
 
 <h3>Management of open file limits</h3>
-Number of raster maps to be processed is given by the limit of the
-operating system. For example, both the hard and soft limits are
-typically 1024. The soft limit can be changed with e.g. <tt>ulimit -n 1500</tt>
-(UNIX-based operating systems) but not higher than the hard
-limit. If it is too low, you can as superuser add an entry in
+The maximum number of raster maps that can be processed is given by the 
+user-specific limit of the operating system. For example, the soft limits 
+for users are typically 1024 files. The soft limit can be changed with e.g. 
+<tt>ulimit -n 4096</tt> (UNIX-based operating systems) but it cannot be 
+higher than the hard limit. If the latter is too low, you can as superuser
+add an entry in:
 
 <div class="code"><pre>
 /etc/security/limits.conf
 # <domain>      <type>  <item>         <value>
-your_username  hard    nofile          1500
+your_username  hard    nofile          4096
+</pre></div>
+
+This will raise the hard limit to 4096 files. Also have a look at the 
+overall limit of the operating system
+<div class="code"><pre>
+cat /proc/sys/fs/file-max
 </pre></div>
+which on modern Linux systems is several 100,000 files.
 
-This would raise the hard limit to 1500 file. Be warned that more
-files open need more RAM. See also the Wiki page
-<a href="http://grasswiki.osgeo.org/wiki/Large_raster_data_processing">Hints for large raster data processing</a>.
 <p>
 For each map a weighting factor can be specified using the 
 <em>weights</em> option. Using weights can be meaningful when computing 
-sum or average of maps with different temporal extent. The default 
-weight is 1.0. The number of weights must be identical with the number 
+the sum or average of maps with different temporal extent. The default 
+weight is 1.0. The number of weights must be identical to the number 
 of input maps and must have the same order. Weights can also be 
 specified in the input file.
 
 <p>
-Use the <em>file</em> option to analyze large amount of raster maps 
-without hitting open files limit and the size limit of command line 
-arguments. The computation is slower than the <em>input</em> option 
-method. For every sinlge row in the output map(s) all input maps are 
-opened and closed. The amount of RAM will rise linear with the number 
-of specified input maps. The input and file options are mutually 
-exclusive. Input is a text file with a new line separated list of 
-raster map names and optional weights. As separator between the map 
-name and the weight the character "|" must be used.
+Use the <em>-z</em> flag to analyze large amounts of raster maps without
+hitting open files limit and the <em>file</em> option to avoid hitting
+the size limit of command line arguments. 
+Note that the computation using the <em>file</em> option is slower than
+with the <em>input</em> option.
+For every sinlge row in the output map(s) all input maps are 
+opened and closed. The amount of RAM will rise linearly with the number 
+of specified input maps. The <em>input</em> and <em>file</em> options are
+mutually exclusive: the former is a comma separated list of raster map
+names and the latter is a text file with a new line separated list of
+raster map names and optional weights. As separator between the map name
+and the weight the character "|" must be used.
 
 <h2>EXAMPLES</h2>
 
@@ -213,4 +220,4 @@ r.series file=mapnames.txt \
 
 Glynn Clements
 
-<p><i>Last changed: $Date: 2016-01-29 10:29:57 +0100 (Fri, 29 Jan 2016) $</i>
+<p><i>Last changed: $Date: 2018-01-16 20:08:59 +0100 (Tue, 16 Jan 2018) $</i>
diff --git a/raster/r.sun/r.sun.html b/raster/r.sun/r.sun.html
index 779f8b7..f278d44 100644
--- a/raster/r.sun/r.sun.html
+++ b/raster/r.sun/r.sun.html
@@ -259,7 +259,7 @@ North Carolina example (considering also cast shadows):
 g.region raster=elevation -p
 
 # calculate horizon angles (to speed up the subsequent r.sun calculation)
-r.horizon elevation=elevation step=30 bufferzone=200 basename=horangle \
+r.horizon elevation=elevation step=30 bufferzone=200 output=horangle \
     maxdistance=5000
 
 # slope + aspect
@@ -381,4 +381,4 @@ Thomas Huld, JRC, Italy <br>
 </address>
 
 <p>
-<i>Last changed: $Date: 2017-11-22 22:47:38 +0100 (Wed, 22 Nov 2017) $</i> 
+<i>Last changed: $Date: 2018-01-23 16:36:24 +0100 (Tue, 23 Jan 2018) $</i> 
diff --git a/rpm/grass.spec b/rpm/grass.spec
new file mode 100644
index 0000000..b56db43
--- /dev/null
+++ b/rpm/grass.spec
@@ -0,0 +1,555 @@
+%global shortver 74
+%global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d)
+
+Name:		grass
+Version:	7.4.0
+Release:	1%{?dist}
+Summary:	GRASS GIS - Geographic Resources Analysis Support System
+
+Group:		Applications/Engineering
+License:	GPLv2+
+URL:		https://grass.osgeo.org
+Source0:	https://grass.osgeo.org/%{name}%{shortver}/source/%{name}-%{version}.tar.gz
+Source2:	%{name}-config.h
+# Patch0:		grass72_ctypes_gcc7.diff
+
+BuildRequires:	bison
+BuildRequires:	blas-devel
+BuildRequires:	desktop-file-utils
+BuildRequires:	fftw-devel
+BuildRequires:	flex
+%if (0%{?rhel} > 6 || 0%{?fedora})
+BuildRequires:	freetype-devel
+%endif
+BuildRequires:	gdal-devel
+BuildRequires:	geos-devel
+BuildRequires:	gettext
+BuildRequires:	lapack-devel
+%if (0%{?rhel} > 6 || 0%{?fedora})
+BuildRequires:	libappstream-glib
+%endif
+%if 0%{?fedora}
+BuildRequires:	liblas-devel => 1.8.0-12
+%endif
+BuildRequires:	libpng-devel
+BuildRequires:	libtiff-devel
+BuildRequires:	libXmu-devel
+BuildRequires:	mesa-libGL-devel
+BuildRequires:	mesa-libGLU-devel
+BuildRequires:	mysql-devel
+%if (0%{?rhel} > 6 || 0%{?fedora})
+BuildRequires:	netcdf-devel
+%endif
+BuildRequires:	numpy
+%if (0%{?rhel} > 6 || 0%{?fedora})
+BuildRequires:	postgresql-devel
+%else
+# RHEL6: PG from http://yum.postgresql.org/9.6/redhat/rhel-$releasever-$basearch/
+BuildRequires:  postgresql96-devel postgresql96-libs
+%endif
+BuildRequires:	proj-devel
+BuildRequires:	proj-epsg
+BuildRequires:	proj-nad
+%if (0%{?rhel} <= 6 && !0%{?fedora})
+# argparse is included in python2.7+ but not python2.6
+BuildRequires:  python-argparse
+%endif
+BuildRequires:	python-dateutil
+BuildRequires:	python-devel
+Requires:  python-matplotlib
+##?
+#Requires:  python-matplotlib-wx
+%if (0%{?rhel} > 6 || 0%{?fedora})
+BuildRequires:	python-pillow
+%else
+BuildRequires:	python-imaging
+%endif
+BuildRequires:	readline-devel
+BuildRequires:	sqlite-devel
+BuildRequires:	subversion
+BuildRequires:	unixODBC-devel
+BuildRequires:	wxGTK-devel
+BuildRequires:	zlib-devel
+
+Requires:	geos
+Requires:	numpy
+Requires:	proj-epsg
+Requires:	proj-nad
+Requires:	wxPython
+
+%if "%{_lib}" == "lib"
+%global cpuarch 32
+%else
+%global cpuarch 64
+%endif
+
+Requires:	%{name}%{?isa}-libs = %{version}-%{release}
+
+%description
+GRASS (Geographic Resources Analysis Support System) is a Geographic
+Information System (GIS) used for geospatial data management and
+analysis, image processing, graphics/maps production, spatial
+modeling, and visualization. GRASS is currently used in academic and
+commercial settings around the world, as well as by many governmental
+agencies and environmental consulting companies.
+
+%package libs
+Summary:	GRASS GIS runtime libraries
+Group:		Applications/Engineering
+
+%description libs
+GRASS GIS runtime libraries
+
+%package gui
+Summary:	GRASS GIS GUI
+Group:		Applications/Engineering
+Requires:	%{name}%{?isa}-libs = %{version}-%{release}
+Requires:	%{name}%{?isa} = %{version}-%{release}
+
+%description gui
+GRASS GIS GUI
+
+%package devel
+Summary:	GRASS GIS development headers
+Group:		Applications/Engineering
+Requires:	%{name}%{?isa}-libs = %{version}-%{release}
+
+%description devel
+GRASS GIS development headers
+
+%prep
+%setup -q
+# %patch0 -p1
+
+# Correct mysql_config query
+sed -i -e 's/--libmysqld-libs/--libs/g' configure
+
+# Fixup shebangs
+find -type f | xargs sed -i -e 's,#!/usr/bin/env python,#!%{__python},'
+find -name \*.pl | xargs sed -i -e 's,#!/usr/bin/env perl,#!%{__perl},'
+
+%build
+# Package is not ready for -Werror=format-security or the C++11 standard
+CFLAGS="$(echo ${RPM_OPT_FLAGS} | sed -e 's/ -Werror=format-security//')"
+CXXFLAGS="-std=c++98 ${CFLAGS}"
+%configure \
+	--with-cxx \
+	--with-tiff \
+	--with-png \
+	--with-postgres \
+	--with-mysql \
+	--with-opengl \
+	--with-odbc \
+	--with-fftw \
+	--with-blas \
+	--with-lapack \
+	--with-cairo \
+%if (0%{?rhel} > 6 || 0%{?fedora})
+	--with-freetype \
+%endif
+	--with-nls \
+	--with-readline \
+	--with-regex \
+	--with-openmp \
+	--with-gdal=%{_bindir}/gdal-config \
+	--with-wxwidgets=%{_bindir}/wx-config \
+	--with-geos=%{_bindir}/geos-config \
+%if (0%{?rhel} > 6 || 0%{?fedora})
+	--with-netcdf=%{_bindir}/nc-config \
+%endif
+%if 0%{?fedora}
+	--with-liblas=%{_bindir}/liblas-config \
+%endif
+	--with-mysql-includes=%{_includedir}/mysql \
+%if (0%{?fedora} > 27)
+	--with-mysql-libs=%{_libdir} \
+%else
+	--with-mysql-libs=%{_libdir}/mysql \
+%endif
+%if (0%{?rhel} > 6 || 0%{?fedora})
+        --with-postgres-includes=%{_includedir}/pgsql \
+%else
+	--with-postgres-includes=%{_prefix}/pgsql-9.6/include/ \
+	--with-postgres-libs=%{_prefix}/pgsql-9.6/lib/ \
+%endif
+	--with-cairo-ldflags=-lfontconfig \
+	--with-freetype-includes=%{_includedir}/freetype2 \
+	--with-proj-share=%{_datadir}/proj
+
+%if (0%{?rhel} > 6 || 0%{?fedora})
+make %{?_smp_mflags}
+%else
+# EPEL6: the HTML parser is too strict in Python 6, hence a few manual pages will not be generated
+make %{?_smp_mflags} || echo "EPEL6: ignoring failed manual pages"
+%endif
+
+# by default, grass will be installed to /usr/grass-%%{version}
+# this is not FHS compliant: hide grass-%%{version} in %%{libdir}
+%install
+%make_install \
+	prefix=%{buildroot}%{_libdir} \
+	UNIX_BIN=%{buildroot}%{_bindir}
+
+# libraries and headers are in GISBASE = %%{_libdir}/%%{name}
+# keep them in GISBASE
+
+# fix paths:
+
+# Change GISBASE in startup script
+sed -i -e 's|%{buildroot}%{_libdir}/%{name}-%{version}|%{_libdir}/%{name}-%{version}|g' \
+	%{buildroot}%{_bindir}/%{name}%{shortver}
+# fix GRASS_HOME and RUN_GISBASE in Platform.make
+sed -i -e 's|%{buildroot}%{_libdir}/%{name}-%{version}|%{_libdir}/%{name}-%{version}|g' \
+	%{buildroot}%{_libdir}/%{name}-%{version}/include/Make/Platform.make
+# fix ARCH_DISTDIR in Grass.make
+sed -i -e 's|%{buildroot}%{_libdir}/%{name}-%{version}|%{_libdir}/%{name}-%{version}|g' \
+	%{buildroot}%{_libdir}/%{name}-%{version}/include/Make/Grass.make
+# fix ARCH_BINDIR in Grass.make
+sed -i -e 's|%{buildroot}%{_bindir}|%{_bindir}|g' \
+	%{buildroot}%{_libdir}/%{name}-%{version}/include/Make/Grass.make
+# fix GISDBASE in demolocation
+sed -i -e 's|%{buildroot}%{_libdir}/%{name}-%{version}|%{_libdir}/%{name}-%{version}|g' \
+	%{buildroot}%{_libdir}/%{name}-%{version}/demolocation/.grassrc%{shortver}
+# Correct font path
+sed -i -e 's|%{buildroot}%{_libdir}/%{name}-%{version}|%{_libdir}/%{name}-%{version}|' \
+	%{buildroot}%{_libdir}/%{name}-%{version}/etc/fontcap
+# fix paths in grass.pc
+sed -i -e 's|%{_prefix}/%{name}-%{version}|%{_libdir}/%{name-%{version}}|g' \
+	%{name}.pc
+
+mkdir -p %{buildroot}%{_libdir}/pkgconfig
+install -p -m 644 %{name}.pc %{buildroot}%{_libdir}/pkgconfig
+
+# Create multilib header
+mv %{buildroot}%{_libdir}/%{name}-%{version}/include/%{name}/config.h \
+   %{buildroot}%{_libdir}/%{name}-%{version}/include/%{name}/config-%{cpuarch}.h 
+install -p -m 644 %{SOURCE2} %{buildroot}%{_libdir}/%{name}-%{version}/include/%{name}/config.h
+
+# Make man pages available on the system, convert to utf8 and avoid name conflict
+mkdir -p %{buildroot}%{_mandir}/man1
+for man in $(ls %{buildroot}%{_libdir}/%{name}-%{version}/docs/man/man1/*.1)
+do
+	iconv -f iso8859-1 -t utf8 $man > %{buildroot}%{_mandir}/man1/$(basename $man)"%{name}"
+done
+
+# symlink docs from GISBASE to standard system location
+mkdir -p %{buildroot}%{_docdir}
+# append shortver to destination ? man pages are unversioned
+ln -s %{_libdir}/%{name}-%{version}/docs %{buildroot}%{_docdir}/%{name}%{shortver}
+
+for file in infrastructure.txt ; do
+  iconv -f ISO-8859-1 -t UTF-8 $file > ${file}.tmp && mv -f ${file}.tmp $file
+done
+
+# Make desktop, appdata and icon files available on the system
+mv %{buildroot}%{_libdir}/%{name}-%{version}/share/* %{buildroot}%{_datadir}
+desktop-file-validate %{buildroot}/%{_datadir}/applications/*.desktop
+# EPEL7 fails on url tag, so we ignore failure:
+appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/appdata/*.appdata.xml || echo "Ignoring appstream-util failure"
+
+# Cleanup: nothing to do
+#rm -rf %%{buildroot}%%{_prefix}/%%{name}-%%{version}
+
+# rpm macro for version checking
+mkdir -p ${RPM_BUILD_ROOT}%{macrosdir}
+cat > ${RPM_BUILD_ROOT}%{macrosdir}/macros.%{name} <<EOF
+# %name version is
+%%%{name}_version %{version}
+EOF
+
+%post
+/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
+
+%postun
+if [ $1 -eq 0 ] ; then
+	/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
+	/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+fi
+
+%posttrans
+/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+
+%post libs -p /sbin/ldconfig
+
+%postun libs -p /sbin/ldconfig
+
+%files
+%exclude %{_libdir}/%{name}-%{version}/driver/db/*
+%exclude %{_libdir}/%{name}-%{version}/lib
+%exclude %{_libdir}/%{name}-%{version}/include
+%exclude %{_libdir}/%{name}-%{version}/gui
+%{_libdir}/%{name}-%{version}
+%{_bindir}/*
+%{_datadir}/appdata/*
+%{_datadir}/applications/*
+%{_datadir}/icons/hicolor/*/apps/*
+%{_mandir}/man1/*
+%{_docdir}/%{name}%{shortver}
+
+%files libs
+%license AUTHORS COPYING GPL.TXT CHANGES
+%{_libdir}/%{name}-%{version}/lib/*.%{version}.so
+%{_libdir}/%{name}-%{version}/lib/*.a
+%dir %{_libdir}/%{name}-%{version}/driver
+%dir %{_libdir}/%{name}-%{version}/driver/db
+%{_libdir}/%{name}-%{version}/driver/db/*
+
+%files gui
+%{_libdir}/%{name}-%{version}/gui
+
+%files devel
+%doc TODO doc/* SUBMITTING
+%{macrosdir}/macros.%{name}
+%{_libdir}/pkgconfig/*
+%dir %{_libdir}/%{name}-%{version}/lib
+%{_libdir}/%{name}-%{version}/lib/*[!%{version}].so
+%{_libdir}/%{name}-%{version}/include
+
+%changelog
+* Mon Jan 15 2018 Markus Metz <metz at mundialis.de> - 7.4.0-1
+- New upstream version 7.4.0
+- Fix grass-devel which needs include/grass and include/Make dirs
+
+* Fri Jul 21 2017 Kalev Lember <klember at redhat.com> - 7.2.1-2
+- Rebuilt for Boost 1.64
+
+* Wed May 3 2017 Markus Neteler <neteler at mundialis.de> - 7.2.1-1
+- New upstream version 7.2.1
+
+* Thu Mar 2 2017 Markus Neteler <neteler at mundialis.de> - 7.2.0-3
+- Fix for g.extension which needs include/ dir in grass-devel
+
+* Sat Feb 4 2017 Markus Neteler <neteler at mundialis.de> - 7.2.0-2
+- Fixes for EPEL
+
+* Thu Jan 12 2017 Markus Neteler <neteler at mundialis.de> - 7.2.0-1
+- New upstream version 7.2.0
+
+* Thu Jan 12 2017 Igor Gnatenko <ignatenko at redhat.com> - 7.0.4-5
+- Rebuild for readline 7.x
+
+* Sun Jan 01 2017 Volker Froehlich <volker27 at gmx.at> - 7.0.4-4
+- Rebuild for libgeos
+
+* Fri Oct 7 2016 Orion Poplawski <orion at cora.nwra.com> - 7.0.4-3
+- Add patch to fix desktop file
+- Validate desktop and appdata files
+- Fix script interpreters
+- Convert files to UTF-8 if needed
+
+* Wed Sep 21 2016 Orion Poplawski <orion at cora.nwra.com> - 7.0.4-2
+- Generate rpm macro file for version tracking
+
+* Mon May 9 2016 Devrim Gündüz <devrim at gunduz.org> - 7.0.4-1
+- Update to 7.0.4
+
+* Mon Mar 07 2016 Thomas Kreuzer <thomas.kreuzer at uni-vechta.de> - 7.0.3-1
+- New SPEC file for GRASS GIS 7.0.3
+
+* Tue Sep 23 2014 Richard Hughes <richard at hughsie.com> - 6.4.4-5
+- Install the shipped AppData file
+
+* Sat Aug 16 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 6.4.4-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
+
+* Sat Aug 09 2014 Ralf Corsépius <corsepius at fedoraproject.org> 6.4.4-2
+- Rebase patches against grass-6.4.4.
+- Convert -Werror=format-security into warnings (RHBZ#1106720).
+- Minor spec cleanup.
+
+* Fri Jul 25 2014 Peter Robinson <pbrobinson at fedoraproject.org> 6.4.4-1
+- Update to 6.4.4
+- Make 64bit conditionals generic
+
+* Sat Jun 07 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 6.4.3-8
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
+
+* Wed May 21 2014 Jaroslav Škarvada <jskarvad at redhat.com> - 6.4.3-7
+- Rebuilt for https://fedoraproject.org/wiki/Changes/f21tcl86
+
+* Thu Mar 27 2014 Ville Skyttä <ville.skytta at iki.fi> - 6.4.3-6
+- Don't ship patch backup files
+
+* Mon Oct 14 2013 Volker Fröhlich <volker27 at gmx.at> - 6.4.3-5
+- Solve build failure on PPC tests (BZ#961838)
+
+* Wed Oct 9 2013 Devrim Gündüz <devrim at gunduz.org> - 6.4.3-4
+- Rebuild against new GEOS
+
+* Thu Oct  3 2013 Volker Fröhlich <volker27 at gmx.at> - 6.4.3-3
+- Add patch for release name encoding crash
+- Use upstream desktop file (BZ #986852)
+- Install icons of different sizes
+
+* Sat Sep 14 2013 Volker Fröhlich <volker27 at gmx.at> - 6.4.3-2
+- Remove gcc patch (upstream)
+- Remove useless BR for libjpeg
+- Make config.h a source file instead of defining it in the spec file
+- Truncate changelog
+
+* Thu Sep 12 2013 Devrim GÜNDÜZ <devrim at gunduz.org> - 6.4.3-1
+- Update to 6.4.3
+- Rebuild with new geos.
+
+* Tue Aug 27 2013 Orion Poplawski <orion at cora.nwra.com> - 6.4.2-11
+- Rebuild for gdal 1.10.0
+
+* Sat Aug 03 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 6.4.2-10
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
+
+* Fri Apr 12 2013 Jon Ciesla <limburgher at gmail.com> - 6.4.2-9
+- Drop desktop vendor tag.
+
+* Wed Mar 06 2013 Devrim GÜNDÜZ <devrim at gunduz.org> - 6.4.2-8
+- Rebuild with new geos.
+
+* Fri Jan 25 2013 Devrim GÜNDÜZ <devrim at gunduz.org> - 6.4.2-7
+- Rebuild with geos 3.3.7.
+
+* Sun Nov 18 2012 Volker Fröhlich <volker27 at gmx.at> - 6.4.2-6
+- Rebuild with ever newer geos
+
+* Wed Nov 14 2012 Devrim GÜNDÜZ <devrim at gunduz.org> - 6.4.2-5
+- Rebuild with new geos.
+
+* Thu Jul 19 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 6.4.2-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
+
+* Mon Jul 16 2012 Devrim GÜNDÜZ <devrim at gunduz.org> - 6.4.2-3
+- Rebuilt
+
+* Sun Mar  4 2012 Volker Fröhlich <volker27 at gmx.at> - 6.4.2-2
+- Solve name conflict with "parallel" man pages (BZ 797824)
+- Correct man page encoding conversion
+- Build with multiple workers; assumuption on race-condition was wrong
+
+* Fri Mar  2 2012 Tom Callaway <spot at fedoraproject.org> - 6.4.2-1
+- update to 6.4.2
+
+* Tue Feb 28 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 6.4.1-8
+- Rebuilt for c++ ABI breakage
+
+* Tue Jan 10 2012 Volker Fröhlich <volker27 at gmx.at> - 6.4.1-7
+- Race condition in build system assumed -- going back to one worker
+
+* Mon Jan 9 2012 Devrim GÜNDÜZ <devrim at gunduz.org> - 6.4.1-6
+- Rebuilt with new geos
+
+* Wed Nov 23 2011 Volker Fröhlich <volker27 at gmx.at> - 6.4.1-5
+- Move string substitution back to the install section, because
+  it causes problems otherwise
+- Add patch for libpng API change
+
+* Wed Nov 02 2011 Volker Fröhlich <volker27 at gmx.at> - 6.4.1-4
+- Remove encoding from desktop file
+- Remove BR on wxGTK, because wxGTK requires it anyway
+- Disable Ubuntu patches, because they don't seem to work in Fedora
+- Move all the string substitution for locales and docs to prep
+- Use name macro in Source
+- Drop custom compiler flags -- no evidence they serve a purpose
+- Remove 2 unnecessary chmods
+- Don't use sysconfdir macro in places, where etc means something different
+- Add contributors to documentation
+
+* Wed Nov 02 2011 Volker Fröhlich <volker27 at gmx.at> - 6.4.1-3
+- Patch locale and documentation paths properly for the GUI
+
+* Thu Sep 22 2011 Volker Fröhlich <volker27 at gmx.at> - 6.4.1-2
+- Remove duplicate documentation
+- Correct further documentation paths
+- Create version-less symlinks for library directory and binary
+- Supply all lang files to the files section directly
+- Add ternary operator patch for Python 2.4 (ELGIS)
+
+* Tue Aug 02 2011 Volker Fröhlich <volker27 at gmx.at> - 6.4.1-1
+- Update to 6.4.1
+- Remove explicit lib and include dirs, where not necessary
+- Really build with geos
+- Remove sed call on ncurses
+
+* Tue Aug 02 2011 Volker Fröhlich <volker27 at gmx.at> - 6.4.0-4
+- Correct license to GPLv2+
+- Update URL
+- Replace define with global macro
+- Devel package required itself
+- Simplify setup macro
+- Don't add -lm manually anymore
+- Correct FSF postal address
+- Drop cstdio patch
+- Correct Exec and Icon entry in desktop file
+- Remove wrong and unnecessary translation entries from desktop file
+  GRASS didn't start for the first issue
+- Add numpy as requirement
+- Delete defattr, as the defaults work right
+- Use name macro where possible
+- Devel package required itself
+- Changelog doesn't need encoding conversion anymore
+  Same goes for translators and infrastructure files
+- Use mandir macro on one occasion
+- Introduce "shortversion" macro
+- Beautify case construction for 64 bit build flags
+- Update syntax for Require on base package to guidelines
+- Don't list LOCALE files twice, own directory
+- Don't ship same documentation in different packages
+- Drop README
+- Simplify file list in devel package
+- Replace extra icon source with one from the tarball
+
+* Wed Mar 23 2011 Dan Horák <dan at danny.cz> - 6.4.0-3
+- rebuilt for mysql 5.5.10 (soname bump in libmysqlclient)
+
+* Wed Feb 09 2011 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 6.4.0-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
+
+* Mon Nov 22 2010 Viji Nair <viji [AT] fedoraproject DOT org> - 6.4.0-1
+- Rebuilt with new gdal 1.7.3.
+- Updated to upstream version 6.4.0.
+- Removed grass-gdilib.patch
+- Spec review
+
+* Fri Dec 4 2009 Devrim GÜNDÜZ <devrim at gunduz.org> - 6.3.0-15
+- Rebuilt with new geos
+
+* Fri Aug 21 2009 Tomas Mraz <tmraz at redhat.com> - 6.3.0-14
+- rebuilt with new openssl
+
+* Fri Jul 24 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 6.3.0-13
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
+
+* Mon Mar 23 2009 Lubomir Rintel <lkundrak at v3.sk> - 6.3.0-12
+- Fix build with GCC 4.4
+
+* Tue Feb 24 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 6.3.0-11
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
+
+* Thu Jan 29 2009 Balint Cristian <cristian.balint at gmail.com> - 6.3.0-10
+- email change
+- rebuild for new mysql
+
+* Sun Dec 07 2008 Balint Cristian <rezso at rdsor.ro> 6.3.0-9
+- rebuild against newer gdal
+
+* Sun Dec 07 2008 Balint Cristian <rezso at rdsor.ro> 6.3.0-8
+- rebuild against newer gdal
+
+* Sun Nov 30 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm at gmail.com> 6.3.0-7
+- Rebuild for Python 2.6
+
+* Sun Aug 24 2008 Balint Cristian <rezso at rdsor.ro> 6.3.0-6
+- bz#458427 (prelink fail)
+- bz#458563 (grass not able to display documentation)
+
+* Sat Jul 05 2008 Balint Cristian <rezso at rdsor.ro> 6.3.0-5
+- address bz#454146 (wxPython miss)
+
+* Thu Jun 12 2008 Balint Cristian <rezso at rdsor.ro> 6.3.0-4
+- address bz#341391 (multilib issue)
+
+* Mon May 26 2008 Balint Cristian <rezso at rdsor.ro> 6.3.0-3
+- bugfix initscripts permission
+
+* Thu May 15 2008 Balint Cristian <rezso at rdsor.ro> 6.3.0-2
+- require swig to build
+
+* Thu May 15 2008 Balint Cristian <rezso at rdsor.ro> 6.3.0-1
+- final stable release upstream
diff --git a/scripts/r.fillnulls/r.fillnulls.py b/scripts/r.fillnulls/r.fillnulls.py
index c1fb17f..393cbc0 100755
--- a/scripts/r.fillnulls/r.fillnulls.py
+++ b/scripts/r.fillnulls/r.fillnulls.py
@@ -340,8 +340,11 @@ def main():
 
             # Avoid v.surf.rst warnings
             if pointsnumber < segmax:
-                npmin = pointsnumber + 1
-                segmax = pointsnumber
+                use_npmin = pointsnumber
+                use_segmax = pointsnumber * 2
+            else:
+                use_npmin = npmin
+                use_segmax = segmax
 
             # launch v.surf.rst
             tmp_rmaps.append(holename + '_dem')
@@ -349,7 +352,7 @@ def main():
                 grass.run_command('v.surf.rst', quiet=quiet,
                                   input=holename, elev=holename + '_dem',
                                   tension=tension, smooth=smooth,
-                                  segmax=segmax, npmin=npmin)
+                                  segmax=use_segmax, npmin=use_npmin)
             except CalledModuleError:
                 # GTC Hole is NULL area in a raster map
                 grass.fatal(_("Failed to fill hole %s") % cat)
diff --git a/temporal/t.rast.algebra/t.rast.algebra.html b/temporal/t.rast.algebra/t.rast.algebra.html
index 962285f..d0cbf74 100644
--- a/temporal/t.rast.algebra/t.rast.algebra.html
+++ b/temporal/t.rast.algebra/t.rast.algebra.html
@@ -33,7 +33,7 @@ assigned to STRDS or to the map lists resulting of operations between
 STRDS.
 <p>
 By default, only temporal topological relations among space time datasets
-(STDS) are evaluated. The <b>-s</b> flag can be used to aditionally
+(STDS) are evaluated. The <b>-s</b> flag can be used to additionally
 activate the evaluation of the spatial topology based on the spatial
 extent of maps.
 <p>
@@ -549,5 +549,5 @@ C = if({equal}, B {#,contain} A > 1, (B {+,contain,l} A {-,equal,l} B) {equal,=/
 
 Thomas Leppelt, Sören Gebbert, Thünen Institute of Climate-Smart Agriculture
 
-<p><i>Last changed: $Date: 2017-12-01 15:13:25 +0100 (Fri, 01 Dec 2017) $</i>
+<p><i>Last changed: $Date: 2018-01-09 18:05:58 +0100 (Tue, 09 Jan 2018) $</i>
 
diff --git a/vector/v.clean/v.clean.html b/vector/v.clean/v.clean.html
index 0535d23..d8f51a3 100644
--- a/vector/v.clean/v.clean.html
+++ b/vector/v.clean/v.clean.html
@@ -375,7 +375,8 @@ v.clean input=testmap output=cleanmap type=line \
 <a href="v.info.html">v.info</a>,
 <a href="v.build.html">v.build</a>,
 <a href="g.gui.vdigit.html">g.gui.vdigit</a>,
-<a href="v.edit.html">v.edit</a>
+<a href="v.edit.html">v.edit</a>,
+<a href="v.generalize.html">v.generalize</a>
 </em>
 
 <h2>AUTHORS</h2>
@@ -384,4 +385,4 @@ David Gerdes, U.S. Army Construction Engineering Research Laboratory<br>
 Radim Blazek, ITC-irst, Trento, Italy<br>
 Martin Landa, FBK-irst (formerly ITC-irst), Trento, Italy
 
-<p><i>Last changed: $Date: 2017-04-20 03:19:15 +0200 (Thu, 20 Apr 2017) $</i>
+<p><i>Last changed: $Date: 2018-01-15 22:40:15 +0100 (Mon, 15 Jan 2018) $</i>
diff --git a/vector/v.generalize/main.c b/vector/v.generalize/main.c
index 22ad217..7abc06a 100644
--- a/vector/v.generalize/main.c
+++ b/vector/v.generalize/main.c
@@ -79,6 +79,8 @@ int main(int argc, char *argv[])
     G_add_keyword(_("smoothing"));
     G_add_keyword(_("displacement"));
     G_add_keyword(_("network generalization"));
+    G_add_keyword(_("topology"));
+    G_add_keyword(_("geometry"));
     module->description = _("Performs vector based generalization.");
 
     /* Define the different options as defined in gis.h */

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/grass.git



More information about the Pkg-grass-devel mailing list