#
# (c) Copyright 1993, 1994, Silicon Graphics, Inc.
# ALL RIGHTS RESERVED
# Permission to use, copy, modify, and distribute this software for
# any purpose and without fee is hereby granted, provided that the above
# copyright notice appear in all copies and that both the copyright notice
# and this permission notice appear in supporting documentation, and that
# the name of Silicon Graphics, Inc. not be used in advertising
# or publicity pertaining to distribution of the software without specific,
# written prior permission.
#
# THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS"
# AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE,
# INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR
# FITNESS FOR A PARTICULAR PURPOSE.  IN NO EVENT SHALL SILICON
# GRAPHICS, INC.  BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT,
# SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY
# KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION,
# LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF
# THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC.  HAS BEEN
# ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON
# ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE
# POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE.
#
# US Government Users Restricted Rights
# Use, duplication, or disclosure by the Government is subject to
# restrictions set forth in FAR 52.227.19(c)(2) or subparagraph
# (c)(1)(ii) of the Rights in Technical Data and Computer Software
# clause at DFARS 252.227-7013 and/or in similar or successor
# clauses in the FAR or the DOD or NASA FAR Supplement.
# Unpublished-- rights reserved under the copyright laws of the
# United States.  Contractor/manufacturer is Silicon Graphics,
# Inc., 2011 N.  Shoreline Blvd., Mountain View, CA 94039-7311.
#
# OpenGL(TM) is a trademark of Silicon Graphics, Inc.
#

set wN001 {0.019249 0.011340 -0.999750}
set wN002 {-0.132579 0.954547 0.266952}
set wN003 {-0.196061 0.980392 -0.019778}
set wN004 {0.695461 0.604704 0.388158}
set wN005 {0.870600 0.425754 0.246557}
set wN006 {-0.881191 0.392012 0.264251}
set wN008 {-0.341437 0.887477 0.309523}
set wN009 {0.124035 -0.992278 0.000000}
set wN010 {0.242536 0.000000 -0.970143}
set wN011 {0.588172 0.000000 0.808736}
set wN012 {0.929824 -0.340623 -0.139298}
set wN013 {0.954183 0.267108 -0.134865}
set wN014 {0.495127 0.855436 -0.151914}
set wN015 {-0.390199 0.906569 -0.160867}
set wN016 {-0.923605 0.354581 -0.145692}
set wN017 {-0.955796 -0.260667 -0.136036}
set wN018 {-0.501283 -0.853462 -0.142540}
set wN019 {0.405300 -0.901974 -0.148913}
set wN020 {0.909913 -0.392746 -0.133451}
set wN021 {0.936494 0.331147 -0.115414}
set wN022 {0.600131 0.793724 -0.099222}
set wN023 {-0.231556 0.968361 -0.093053}
set wN024 {-0.844369 0.525330 -0.105211}
set wN025 {-0.982725 -0.136329 -0.125164}
set wN026 {-0.560844 -0.822654 -0.093241}
set wN027 {0.263884 -0.959981 -0.093817}
set wN028 {0.842057 -0.525192 -0.122938}
set wN029 {0.921620 0.367565 -0.124546}
set wN030 {0.613927 0.784109 -0.090918}
set wN031 {-0.448754 0.888261 -0.098037}
set wN032 {-0.891865 0.434376 -0.126077}
set wN033 {-0.881447 -0.448017 -0.149437}
set wN034 {-0.345647 -0.922057 -0.174183}
set wN035 {0.307998 -0.941371 -0.137688}
set wN036 {0.806316 -0.574647 -0.140124}
set wN037 {0.961346 0.233646 -0.145681}
set wN038 {0.488451 0.865586 -0.110351}
set wN039 {-0.374290 0.921953 -0.099553}
set wN040 {-0.928504 0.344533 -0.138485}
set wN041 {-0.918419 -0.371792 -0.135189}
set wN042 {-0.520666 -0.833704 -0.183968}
set wN043 {0.339204 -0.920273 -0.195036}
set wN044 {0.921475 -0.387382 -0.028636}
set wN045 {0.842465 0.533335 -0.076204}
set wN046 {0.380110 0.924939 0.002073}
set wN047 {-0.276128 0.961073 -0.009579}
set wN048 {-0.879684 0.473001 -0.049250}
set wN049 {-0.947184 -0.317614 -0.044321}
set wN050 {-0.642059 -0.764933 -0.051363}
set wN051 {0.466794 -0.880921 -0.077990}
set wN052 {0.898509 -0.432277 0.076279}
set wN053 {0.938985 0.328141 0.103109}
set wN054 {0.442420 0.895745 0.043647}
set wN055 {-0.255163 0.966723 0.018407}
set wN056 {-0.833769 0.540650 0.111924}
set wN057 {-0.953653 -0.289939 0.080507}
set wN058 {-0.672357 -0.730524 0.119461}
set wN059 {0.522249 -0.846652 0.102157}
set wN060 {0.885868 -0.427631 0.179914}
set wN062 {0.648942 0.743116 0.163255}
set wN063 {-0.578967 0.807730 0.111219}
set wN065 {-0.909864 -0.352202 0.219321}
set wN066 {-0.502541 -0.818090 0.279610}
set wN067 {0.322919 -0.915358 0.240504}
set wN068 {0.242536 0.000000 -0.970143}
set wN069 {0.000000 1.000000 0.000000}
set wN070 {0.000000 1.000000 0.000000}
set wN071 {0.000000 1.000000 0.000000}
set wN072 {0.000000 1.000000 0.000000}
set wN073 {0.000000 1.000000 0.000000}
set wN074 {0.000000 1.000000 0.000000}
set wN075 {0.031220 0.999025 -0.031220}
set wN076 {0.000000 1.000000 0.000000}
set wN077 {0.446821 0.893642 0.041889}
set wN078 {0.863035 -0.100980 0.494949}
set wN079 {0.585597 -0.808215 0.062174}
set wN080 {0.000000 1.000000 0.000000}
set wN081 {1.000000 0.000000 0.000000}
set wN082 {0.000000 1.000000 0.000000}
set wN083 {-1.000000 0.000000 0.000000}
set wN084 {-0.478893 0.837129 -0.264343}
set wN085 {0.000000 1.000000 0.000000}
set wN086 {0.763909 0.539455 -0.354163}
set wN087 {0.446821 0.893642 0.041889}
set wN088 {0.385134 -0.908288 0.163352}
set wN089 {-0.605952 0.779253 -0.159961}
set wN090 {0.000000 1.000000 0.000000}
set wN091 {0.000000 1.000000 0.000000}
set wN092 {0.000000 1.000000 0.000000}
set wN093 {0.000000 1.000000 0.000000}
set wN094 {1.000000 0.000000 0.000000}
set wN095 {-1.000000 0.000000 0.000000}
set wN096 {0.644444 -0.621516 0.445433}
set wN097 {-0.760896 -0.474416 0.442681}
set wN098 {0.636888 -0.464314 0.615456}
set wN099 {-0.710295 0.647038 0.277168}
set wN100 {0.009604 0.993655 0.112063}
set iwP001 {18.74 13.19 3.76}
set wP001 {18.74 13.19 3.76}
set wP002 {0.00 390.42 10292.57}
set wP003 {55.80 622.31 8254.35}
set wP004 {20.80 247.66 10652.13}
set wP005 {487.51 198.05 9350.78}
set wP006 {-457.61 199.04 9353.01}
set wP008 {-34.67 247.64 10663.71}
set iwP009 {97.46 67.63 593.82}
set iwP010 {-84.33 67.63 588.18}
set iwP011 {118.69 8.98 -66.91}
set wP009 {97.46 67.63 593.82}
set wP010 {-84.33 67.63 588.18}
set wP011 {118.69 8.98 -66.91}
set iwP012 {156.48 -31.95 924.54}
set iwP013 {162.00 110.22 924.54}
set iwP014 {88.16 221.65 924.54}
set iwP015 {-65.21 231.16 924.54}
set iwP016 {-156.48 121.97 924.54}
set iwP017 {-162.00 -23.93 924.54}
set iwP018 {-88.16 -139.10 924.54}
set iwP019 {65.21 -148.61 924.54}
set iwP020 {246.87 -98.73 1783.04}
set iwP021 {253.17 127.76 1783.04}
set iwP022 {132.34 270.77 1783.04}
set iwP023 {-97.88 285.04 1783.04}
set iwP024 {-222.97 139.80 1783.04}
set iwP025 {-225.29 -86.68 1783.04}
set iwP026 {-108.44 -224.15 1783.04}
set iwP027 {97.88 -221.56 1783.04}
set iwP028 {410.55 -200.66 3213.87}
set iwP029 {432.19 148.42 3213.87}
set iwP030 {200.66 410.55 3213.87}
set iwP031 {-148.42 432.19 3213.87}
set iwP032 {-407.48 171.88 3213.87}
set iwP033 {-432.19 -148.42 3213.87}
set iwP034 {-148.88 -309.74 3213.87}
set iwP035 {156.38 -320.17 3213.87}
set iwP036 {523.39 -303.81 4424.57}
set iwP037 {574.66 276.84 4424.57}
set iwP038 {243.05 492.50 4424.57}
set iwP039 {-191.23 520.13 4424.57}
set iwP040 {-523.39 304.01 4424.57}
set iwP041 {-574.66 -231.83 4424.57}
set iwP042 {-266.95 -578.17 4424.57}
set iwP043 {211.14 -579.67 4424.57}
set iwP044 {680.57 -370.27 5943.46}
set iwP045 {834.01 363.09 5943.46}
set iwP046 {371.29 614.13 5943.46}
set iwP047 {-291.43 621.86 5943.46}
set iwP048 {-784.13 362.60 5943.46}
set iwP049 {-743.29 -325.82 5943.46}
set iwP050 {-383.24 -804.77 5943.46}
set iwP051 {283.47 -846.09 5943.46}
set wP012 {156.48 -31.95 924.54}
set wP013 {162.00 110.22 924.54}
set wP014 {88.16 221.65 924.54}
set wP015 {-65.21 231.16 924.54}
set wP016 {-156.48 121.97 924.54}
set wP017 {-162.00 -23.93 924.54}
set wP018 {-88.16 -139.10 924.54}
set wP019 {65.21 -148.61 924.54}
set wP020 {246.87 -98.73 1783.04}
set wP021 {253.17 127.76 1783.04}
set wP022 {132.34 270.77 1783.04}
set wP023 {-97.88 285.04 1783.04}
set wP024 {-222.97 139.80 1783.04}
set wP025 {-225.29 -86.68 1783.04}
set wP026 {-108.44 -224.15 1783.04}
set wP027 {97.88 -221.56 1783.04}
set wP028 {410.55 -200.66 3213.87}
set wP029 {432.19 148.42 3213.87}
set wP030 {200.66 410.55 3213.87}
set wP031 {-148.42 432.19 3213.87}
set wP032 {-407.48 171.88 3213.87}
set wP033 {-432.19 -148.42 3213.87}
set wP034 {-148.88 -309.74 3213.87}
set wP035 {156.38 -320.17 3213.87}
set wP036 {523.39 -303.81 4424.57}
set wP037 {574.66 276.84 4424.57}
set wP038 {243.05 492.50 4424.57}
set wP039 {-191.23 520.13 4424.57}
set wP040 {-523.39 304.01 4424.57}
set wP041 {-574.66 -231.83 4424.57}
set wP042 {-266.95 -578.17 4424.57}
set wP043 {211.14 -579.67 4424.57}
set wP044 {680.57 -370.27 5943.46}
set wP045 {834.01 363.09 5943.46}
set wP046 {371.29 614.13 5943.46}
set wP047 {-291.43 621.86 5943.46}
set wP048 {-784.13 362.60 5943.46}
set wP049 {-743.29 -325.82 5943.46}
set wP050 {-383.24 -804.77 5943.46}
set wP051 {283.47 -846.09 5943.46}
set wP052 {599.09 -332.24 7902.59}
set wP053 {735.48 306.26 7911.92}
set wP054 {321.55 558.53 7902.59}
set wP055 {-260.54 559.84 7902.59}
set wP056 {-698.66 320.83 7902.59}
set wP057 {-643.29 -299.16 7902.59}
set wP058 {-341.47 -719.30 7902.59}
set wP059 {252.57 -756.12 7902.59}
set wP060 {458.39 -265.31 9355.44}
set wP062 {224.04 438.98 9364.77}
set wP063 {-165.71 441.27 9355.44}
set wP065 {-473.99 -219.71 9355.44}
set wP066 {-211.97 -479.87 9355.44}
set wP067 {192.86 -504.03 9355.44}
set iwP068 {-112.44 9.25 -64.42}
set iwP069 {1155.63 0.00 -182.46}
set iwP070 {-1143.13 0.00 -181.54}
set iwP071 {1424.23 0.00 -322.09}
set iwP072 {-1368.01 0.00 -310.38}
set iwP073 {1255.57 2.31 114.05}
set iwP074 {-1149.38 0.00 117.12}
set iwP075 {718.36 0.00 433.36}
set iwP076 {-655.90 0.00 433.36}
set wP068 {-112.44 9.25 -64.42}
set wP069 {1155.63 0.00 -182.46}
set wP070 {-1143.13 0.00 -181.54}
set wP071 {1424.23 0.00 -322.09}
set wP072 {-1368.01 0.00 -310.38}
set wP073 {1255.57 2.31 114.05}
set wP074 {-1149.38 0.00 117.12}
set wP075 {718.36 0.00 433.36}
set wP076 {-655.90 0.00 433.36}
set wP077 {1058.00 -2.66 7923.51}
set wP078 {-1016.51 -15.47 7902.87}
set wP079 {-1363.99 -484.50 7593.38}
set wP080 {1478.09 -861.47 7098.12}
set wP081 {1338.06 -284.68 7024.15}
set wP082 {-1545.51 -860.64 7106.60}
set wP083 {1063.19 -70.46 7466.60}
set wP084 {-1369.18 -288.11 7015.34}
set wP085 {1348.44 -482.50 7591.41}
set wP086 {-1015.45 -96.80 7474.86}
set wP087 {731.04 148.38 7682.58}
set wP088 {-697.03 151.82 7668.81}
set wP089 {-686.82 157.09 7922.29}
set wP090 {724.73 147.75 7931.39}
set iwP091 {0.00 327.10 2346.55}
set iwP092 {0.00 552.28 2311.31}
set iwP093 {0.00 721.16 2166.41}
set iwP094 {0.00 693.42 2388.80}
set iwP095 {0.00 389.44 2859.97}
set wP091 {0.00 327.10 2346.55}
set wP092 {0.00 552.28 2311.31}
set wP093 {0.00 721.16 2166.41}
set wP094 {0.00 693.42 2388.80}
set wP095 {0.00 389.44 2859.97}
set iwP096 {222.02 -183.67 10266.89}
set iwP097 {-128.90 -182.70 10266.89}
set iwP098 {41.04 88.31 10659.36}
set iwP099 {-48.73 88.30 10659.36}
set wP096 {222.02 -183.67 10266.89}
set wP097 {-128.90 -182.70 10266.89}
set wP098 {41.04 88.31 10659.36}
set wP099 {-48.73 88.30 10659.36}
set wP100 {0.00 603.42 9340.68}
set wP104 {-9.86 567.62 7858.65}
set wP105 {31.96 565.27 7908.46}
set wP106 {22.75 568.13 7782.83}
set wP107 {58.93 568.42 7775.94}
set wP108 {55.91 565.59 7905.86}
set wP109 {99.21 566.00 7858.65}
set wP110 {-498.83 148.14 9135.10}
set wP111 {-495.46 133.24 9158.48}
set wP112 {-490.82 146.23 9182.76}
set wP113 {-489.55 174.11 9183.66}
set wP114 {-492.92 189.00 9160.28}
set wP115 {-497.56 176.02 9136.00}
set wP116 {526.54 169.68 9137.70}
set wP117 {523.49 184.85 9161.42}
set wP118 {518.56 171.78 9186.06}
set wP119 {516.68 143.53 9186.98}
set wP120 {519.73 128.36 9163.26}
set wP121 {524.66 141.43 9138.62}

proc Whale001 {} {
    glBegin $::GL_POLYGON
    glNormal3fv $::wN001
    glVertex3fv $::wP001
    glNormal3fv $::wN068
    glVertex3fv $::wP068
    glNormal3fv $::wN010
    glVertex3fv $::wP010
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN068
    glVertex3fv $::wP068
    glNormal3fv $::wN076
    glVertex3fv $::wP076
    glNormal3fv $::wN010
    glVertex3fv $::wP010
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN068
    glVertex3fv $::wP068
    glNormal3fv $::wN070
    glVertex3fv $::wP070
    glNormal3fv $::wN076
    glVertex3fv $::wP076
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN076
    glVertex3fv $::wP076
    glNormal3fv $::wN070
    glVertex3fv $::wP070
    glNormal3fv $::wN074
    glVertex3fv $::wP074
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN070
    glVertex3fv $::wP070
    glNormal3fv $::wN072
    glVertex3fv $::wP072
    glNormal3fv $::wN074
    glVertex3fv $::wP074
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN072
    glVertex3fv $::wP072
    glNormal3fv $::wN070
    glVertex3fv $::wP070
    glNormal3fv $::wN074
    glVertex3fv $::wP074
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN074
    glVertex3fv $::wP074
    glNormal3fv $::wN070
    glVertex3fv $::wP070
    glNormal3fv $::wN076
    glVertex3fv $::wP076
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN070
    glVertex3fv $::wP070
    glNormal3fv $::wN068
    glVertex3fv $::wP068
    glNormal3fv $::wN076
    glVertex3fv $::wP076
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN076
    glVertex3fv $::wP076
    glNormal3fv $::wN068
    glVertex3fv $::wP068
    glNormal3fv $::wN010
    glVertex3fv $::wP010
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN068
    glVertex3fv $::wP068
    glNormal3fv $::wN001
    glVertex3fv $::wP001
    glNormal3fv $::wN010
    glVertex3fv $::wP010
    glEnd
}

proc Whale002 {} {
    glBegin $::GL_POLYGON
    glNormal3fv $::wN011
    glVertex3fv $::wP011
    glNormal3fv $::wN001
    glVertex3fv $::wP001
    glNormal3fv $::wN009
    glVertex3fv $::wP009
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN075
    glVertex3fv $::wP075
    glNormal3fv $::wN011
    glVertex3fv $::wP011
    glNormal3fv $::wN009
    glVertex3fv $::wP009
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN069
    glVertex3fv $::wP069
    glNormal3fv $::wN011
    glVertex3fv $::wP011
    glNormal3fv $::wN075
    glVertex3fv $::wP075
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN069
    glVertex3fv $::wP069
    glNormal3fv $::wN075
    glVertex3fv $::wP075
    glNormal3fv $::wN073
    glVertex3fv $::wP073
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN071
    glVertex3fv $::wP071
    glNormal3fv $::wN069
    glVertex3fv $::wP069
    glNormal3fv $::wN073
    glVertex3fv $::wP073
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN001
    glVertex3fv $::wP001
    glNormal3fv $::wN011
    glVertex3fv $::wP011
    glNormal3fv $::wN009
    glVertex3fv $::wP009
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN009
    glVertex3fv $::wP009
    glNormal3fv $::wN011
    glVertex3fv $::wP011
    glNormal3fv $::wN075
    glVertex3fv $::wP075
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN011
    glVertex3fv $::wP011
    glNormal3fv $::wN069
    glVertex3fv $::wP069
    glNormal3fv $::wN075
    glVertex3fv $::wP075
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN069
    glVertex3fv $::wP069
    glNormal3fv $::wN073
    glVertex3fv $::wP073
    glNormal3fv $::wN075
    glVertex3fv $::wP075
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN069
    glVertex3fv $::wP069
    glNormal3fv $::wN071
    glVertex3fv $::wP071
    glNormal3fv $::wN073
    glVertex3fv $::wP073
    glEnd
}

proc Whale003 {} {
    glBegin $::GL_POLYGON
    glNormal3fv $::wN018
    glVertex3fv $::wP018
    glNormal3fv $::wN001
    glVertex3fv $::wP001
    glNormal3fv $::wN019
    glVertex3fv $::wP019
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN019
    glVertex3fv $::wP019
    glNormal3fv $::wN001
    glVertex3fv $::wP001
    glNormal3fv $::wN012
    glVertex3fv $::wP012
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN017
    glVertex3fv $::wP017
    glNormal3fv $::wN001
    glVertex3fv $::wP001
    glNormal3fv $::wN018
    glVertex3fv $::wP018
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN001
    glVertex3fv $::wP001
    glNormal3fv $::wN017
    glVertex3fv $::wP017
    glNormal3fv $::wN016
    glVertex3fv $::wP016
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN001
    glVertex3fv $::wP001
    glNormal3fv $::wN013
    glVertex3fv $::wP013
    glNormal3fv $::wN012
    glVertex3fv $::wP012
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN001
    glVertex3fv $::wP001
    glNormal3fv $::wN016
    glVertex3fv $::wP016
    glNormal3fv $::wN015
    glVertex3fv $::wP015
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN001
    glVertex3fv $::wP001
    glNormal3fv $::wN014
    glVertex3fv $::wP014
    glNormal3fv $::wN013
    glVertex3fv $::wP013
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN001
    glVertex3fv $::wP001
    glNormal3fv $::wN015
    glVertex3fv $::wP015
    glNormal3fv $::wN014
    glVertex3fv $::wP014
    glEnd
}

proc Whale004 {} {
    glBegin $::GL_POLYGON
    glNormal3fv $::wN014
    glVertex3fv $::wP014
    glNormal3fv $::wN015
    glVertex3fv $::wP015
    glNormal3fv $::wN023
    glVertex3fv $::wP023
    glNormal3fv $::wN022
    glVertex3fv $::wP022
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN015
    glVertex3fv $::wP015
    glNormal3fv $::wN016
    glVertex3fv $::wP016
    glNormal3fv $::wN024
    glVertex3fv $::wP024
    glNormal3fv $::wN023
    glVertex3fv $::wP023
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN016
    glVertex3fv $::wP016
    glNormal3fv $::wN017
    glVertex3fv $::wP017
    glNormal3fv $::wN025
    glVertex3fv $::wP025
    glNormal3fv $::wN024
    glVertex3fv $::wP024
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN017
    glVertex3fv $::wP017
    glNormal3fv $::wN018
    glVertex3fv $::wP018
    glNormal3fv $::wN026
    glVertex3fv $::wP026
    glNormal3fv $::wN025
    glVertex3fv $::wP025
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN013
    glVertex3fv $::wP013
    glNormal3fv $::wN014
    glVertex3fv $::wP014
    glNormal3fv $::wN022
    glVertex3fv $::wP022
    glNormal3fv $::wN021
    glVertex3fv $::wP021
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN012
    glVertex3fv $::wP012
    glNormal3fv $::wN013
    glVertex3fv $::wP013
    glNormal3fv $::wN021
    glVertex3fv $::wP021
    glNormal3fv $::wN020
    glVertex3fv $::wP020
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN018
    glVertex3fv $::wP018
    glNormal3fv $::wN019
    glVertex3fv $::wP019
    glNormal3fv $::wN027
    glVertex3fv $::wP027
    glNormal3fv $::wN026
    glVertex3fv $::wP026
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN019
    glVertex3fv $::wP019
    glNormal3fv $::wN012
    glVertex3fv $::wP012
    glNormal3fv $::wN020
    glVertex3fv $::wP020
    glNormal3fv $::wN027
    glVertex3fv $::wP027
    glEnd
}

proc Whale005 {} {
    glBegin $::GL_POLYGON
    glNormal3fv $::wN022
    glVertex3fv $::wP022
    glNormal3fv $::wN023
    glVertex3fv $::wP023
    glNormal3fv $::wN031
    glVertex3fv $::wP031
    glNormal3fv $::wN030
    glVertex3fv $::wP030
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN021
    glVertex3fv $::wP021
    glNormal3fv $::wN022
    glVertex3fv $::wP022
    glNormal3fv $::wN030
    glVertex3fv $::wP030
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN021
    glVertex3fv $::wP021
    glNormal3fv $::wN030
    glVertex3fv $::wP030
    glNormal3fv $::wN029
    glVertex3fv $::wP029
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN023
    glVertex3fv $::wP023
    glNormal3fv $::wN024
    glVertex3fv $::wP024
    glNormal3fv $::wN031
    glVertex3fv $::wP031
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN024
    glVertex3fv $::wP024
    glNormal3fv $::wN032
    glVertex3fv $::wP032
    glNormal3fv $::wN031
    glVertex3fv $::wP031
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN024
    glVertex3fv $::wP024
    glNormal3fv $::wN025
    glVertex3fv $::wP025
    glNormal3fv $::wN032
    glVertex3fv $::wP032
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN025
    glVertex3fv $::wP025
    glNormal3fv $::wN033
    glVertex3fv $::wP033
    glNormal3fv $::wN032
    glVertex3fv $::wP032
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN020
    glVertex3fv $::wP020
    glNormal3fv $::wN021
    glVertex3fv $::wP021
    glNormal3fv $::wN029
    glVertex3fv $::wP029
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN020
    glVertex3fv $::wP020
    glNormal3fv $::wN029
    glVertex3fv $::wP029
    glNormal3fv $::wN028
    glVertex3fv $::wP028
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN027
    glVertex3fv $::wP027
    glNormal3fv $::wN020
    glVertex3fv $::wP020
    glNormal3fv $::wN028
    glVertex3fv $::wP028
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN027
    glVertex3fv $::wP027
    glNormal3fv $::wN028
    glVertex3fv $::wP028
    glNormal3fv $::wN035
    glVertex3fv $::wP035
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN025
    glVertex3fv $::wP025
    glNormal3fv $::wN026
    glVertex3fv $::wP026
    glNormal3fv $::wN033
    glVertex3fv $::wP033
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN033
    glVertex3fv $::wP033
    glNormal3fv $::wN026
    glVertex3fv $::wP026
    glNormal3fv $::wN034
    glVertex3fv $::wP034
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN026
    glVertex3fv $::wP026
    glNormal3fv $::wN027
    glVertex3fv $::wP027
    glNormal3fv $::wN035
    glVertex3fv $::wP035
    glNormal3fv $::wN034
    glVertex3fv $::wP034
    glEnd
}

proc Whale006 {} {
    glBegin $::GL_POLYGON
    glNormal3fv $::wN092
    glVertex3fv $::wP092
    glNormal3fv $::wN093
    glVertex3fv $::wP093
    glNormal3fv $::wN094
    glVertex3fv $::wP094
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN093
    glVertex3fv $::wP093
    glNormal3fv $::wN092
    glVertex3fv $::wP092
    glNormal3fv $::wN094
    glVertex3fv $::wP094
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN092
    glVertex3fv $::wP092
    glNormal3fv $::wN091
    glVertex3fv $::wP091
    glNormal3fv $::wN095
    glVertex3fv $::wP095
    glNormal3fv $::wN094
    glVertex3fv $::wP094
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN091
    glVertex3fv $::wP091
    glNormal3fv $::wN092
    glVertex3fv $::wP092
    glNormal3fv $::wN094
    glVertex3fv $::wP094
    glNormal3fv $::wN095
    glVertex3fv $::wP095
    glEnd
}

proc Whale007 {} {
    glBegin $::GL_POLYGON
    glNormal3fv $::wN030
    glVertex3fv $::wP030
    glNormal3fv $::wN031
    glVertex3fv $::wP031
    glNormal3fv $::wN039
    glVertex3fv $::wP039
    glNormal3fv $::wN038
    glVertex3fv $::wP038
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN029
    glVertex3fv $::wP029
    glNormal3fv $::wN030
    glVertex3fv $::wP030
    glNormal3fv $::wN038
    glVertex3fv $::wP038
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN029
    glVertex3fv $::wP029
    glNormal3fv $::wN038
    glVertex3fv $::wP038
    glNormal3fv $::wN037
    glVertex3fv $::wP037
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN028
    glVertex3fv $::wP028
    glNormal3fv $::wN029
    glVertex3fv $::wP029
    glNormal3fv $::wN037
    glVertex3fv $::wP037
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN028
    glVertex3fv $::wP028
    glNormal3fv $::wN037
    glVertex3fv $::wP037
    glNormal3fv $::wN036
    glVertex3fv $::wP036
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN035
    glVertex3fv $::wP035
    glNormal3fv $::wN028
    glVertex3fv $::wP028
    glNormal3fv $::wN036
    glVertex3fv $::wP036
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN035
    glVertex3fv $::wP035
    glNormal3fv $::wN036
    glVertex3fv $::wP036
    glNormal3fv $::wN043
    glVertex3fv $::wP043
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN034
    glVertex3fv $::wP034
    glNormal3fv $::wN035
    glVertex3fv $::wP035
    glNormal3fv $::wN043
    glVertex3fv $::wP043
    glNormal3fv $::wN042
    glVertex3fv $::wP042
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN033
    glVertex3fv $::wP033
    glNormal3fv $::wN034
    glVertex3fv $::wP034
    glNormal3fv $::wN042
    glVertex3fv $::wP042
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN033
    glVertex3fv $::wP033
    glNormal3fv $::wN042
    glVertex3fv $::wP042
    glNormal3fv $::wN041
    glVertex3fv $::wP041
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN031
    glVertex3fv $::wP031
    glNormal3fv $::wN032
    glVertex3fv $::wP032
    glNormal3fv $::wN039
    glVertex3fv $::wP039
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN039
    glVertex3fv $::wP039
    glNormal3fv $::wN032
    glVertex3fv $::wP032
    glNormal3fv $::wN040
    glVertex3fv $::wP040
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN032
    glVertex3fv $::wP032
    glNormal3fv $::wN033
    glVertex3fv $::wP033
    glNormal3fv $::wN040
    glVertex3fv $::wP040
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN040
    glVertex3fv $::wP040
    glNormal3fv $::wN033
    glVertex3fv $::wP033
    glNormal3fv $::wN041
    glVertex3fv $::wP041
    glEnd
}

proc Whale008 {} {
    glBegin $::GL_POLYGON
    glNormal3fv $::wN042
    glVertex3fv $::wP042
    glNormal3fv $::wN043
    glVertex3fv $::wP043
    glNormal3fv $::wN051
    glVertex3fv $::wP051
    glNormal3fv $::wN050
    glVertex3fv $::wP050
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN043
    glVertex3fv $::wP043
    glNormal3fv $::wN036
    glVertex3fv $::wP036
    glNormal3fv $::wN051
    glVertex3fv $::wP051
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN051
    glVertex3fv $::wP051
    glNormal3fv $::wN036
    glVertex3fv $::wP036
    glNormal3fv $::wN044
    glVertex3fv $::wP044
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN041
    glVertex3fv $::wP041
    glNormal3fv $::wN042
    glVertex3fv $::wP042
    glNormal3fv $::wN050
    glVertex3fv $::wP050
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN041
    glVertex3fv $::wP041
    glNormal3fv $::wN050
    glVertex3fv $::wP050
    glNormal3fv $::wN049
    glVertex3fv $::wP049
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN036
    glVertex3fv $::wP036
    glNormal3fv $::wN037
    glVertex3fv $::wP037
    glNormal3fv $::wN044
    glVertex3fv $::wP044
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN044
    glVertex3fv $::wP044
    glNormal3fv $::wN037
    glVertex3fv $::wP037
    glNormal3fv $::wN045
    glVertex3fv $::wP045
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN040
    glVertex3fv $::wP040
    glNormal3fv $::wN041
    glVertex3fv $::wP041
    glNormal3fv $::wN049
    glVertex3fv $::wP049
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN040
    glVertex3fv $::wP040
    glNormal3fv $::wN049
    glVertex3fv $::wP049
    glNormal3fv $::wN048
    glVertex3fv $::wP048
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN039
    glVertex3fv $::wP039
    glNormal3fv $::wN040
    glVertex3fv $::wP040
    glNormal3fv $::wN048
    glVertex3fv $::wP048
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN039
    glVertex3fv $::wP039
    glNormal3fv $::wN048
    glVertex3fv $::wP048
    glNormal3fv $::wN047
    glVertex3fv $::wP047
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN037
    glVertex3fv $::wP037
    glNormal3fv $::wN038
    glVertex3fv $::wP038
    glNormal3fv $::wN045
    glVertex3fv $::wP045
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN038
    glVertex3fv $::wP038
    glNormal3fv $::wN046
    glVertex3fv $::wP046
    glNormal3fv $::wN045
    glVertex3fv $::wP045
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN038
    glVertex3fv $::wP038
    glNormal3fv $::wN039
    glVertex3fv $::wP039
    glNormal3fv $::wN047
    glVertex3fv $::wP047
    glNormal3fv $::wN046
    glVertex3fv $::wP046
    glEnd
}

proc Whale009 {} {
    glBegin $::GL_POLYGON
    glNormal3fv $::wN050
    glVertex3fv $::wP050
    glNormal3fv $::wN051
    glVertex3fv $::wP051
    glNormal3fv $::wN059
    glVertex3fv $::wP059
    glNormal3fv $::wN058
    glVertex3fv $::wP058
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN051
    glVertex3fv $::wP051
    glNormal3fv $::wN044
    glVertex3fv $::wP044
    glNormal3fv $::wN059
    glVertex3fv $::wP059
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN059
    glVertex3fv $::wP059
    glNormal3fv $::wN044
    glVertex3fv $::wP044
    glNormal3fv $::wN052
    glVertex3fv $::wP052
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN044
    glVertex3fv $::wP044
    glNormal3fv $::wN045
    glVertex3fv $::wP045
    glNormal3fv $::wN053
    glVertex3fv $::wP053
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN044
    glVertex3fv $::wP044
    glNormal3fv $::wN053
    glVertex3fv $::wP053
    glNormal3fv $::wN052
    glVertex3fv $::wP052
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN049
    glVertex3fv $::wP049
    glNormal3fv $::wN050
    glVertex3fv $::wP050
    glNormal3fv $::wN058
    glVertex3fv $::wP058
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN049
    glVertex3fv $::wP049
    glNormal3fv $::wN058
    glVertex3fv $::wP058
    glNormal3fv $::wN057
    glVertex3fv $::wP057
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN048
    glVertex3fv $::wP048
    glNormal3fv $::wN049
    glVertex3fv $::wP049
    glNormal3fv $::wN057
    glVertex3fv $::wP057
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN048
    glVertex3fv $::wP048
    glNormal3fv $::wN057
    glVertex3fv $::wP057
    glNormal3fv $::wN056
    glVertex3fv $::wP056
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN047
    glVertex3fv $::wP047
    glNormal3fv $::wN048
    glVertex3fv $::wP048
    glNormal3fv $::wN056
    glVertex3fv $::wP056
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN047
    glVertex3fv $::wP047
    glNormal3fv $::wN056
    glVertex3fv $::wP056
    glNormal3fv $::wN055
    glVertex3fv $::wP055
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN045
    glVertex3fv $::wP045
    glNormal3fv $::wN046
    glVertex3fv $::wP046
    glNormal3fv $::wN053
    glVertex3fv $::wP053
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN046
    glVertex3fv $::wP046
    glNormal3fv $::wN054
    glVertex3fv $::wP054
    glNormal3fv $::wN053
    glVertex3fv $::wP053
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN046
    glVertex3fv $::wP046
    glNormal3fv $::wN047
    glVertex3fv $::wP047
    glNormal3fv $::wN055
    glVertex3fv $::wP055
    glNormal3fv $::wN054
    glVertex3fv $::wP054
    glEnd
}

proc Whale010 {} {
    glBegin $::GL_POLYGON
    glNormal3fv $::wN080
    glVertex3fv $::wP080
    glNormal3fv $::wN081
    glVertex3fv $::wP081
    glNormal3fv $::wN085
    glVertex3fv $::wP085
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN081
    glVertex3fv $::wP081
    glNormal3fv $::wN083
    glVertex3fv $::wP083
    glNormal3fv $::wN085
    glVertex3fv $::wP085
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN085
    glVertex3fv $::wP085
    glNormal3fv $::wN083
    glVertex3fv $::wP083
    glNormal3fv $::wN077
    glVertex3fv $::wP077
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN083
    glVertex3fv $::wP083
    glNormal3fv $::wN087
    glVertex3fv $::wP087
    glNormal3fv $::wN077
    glVertex3fv $::wP077
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN077
    glVertex3fv $::wP077
    glNormal3fv $::wN087
    glVertex3fv $::wP087
    glNormal3fv $::wN090
    glVertex3fv $::wP090
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN081
    glVertex3fv $::wP081
    glNormal3fv $::wN080
    glVertex3fv $::wP080
    glNormal3fv $::wN085
    glVertex3fv $::wP085
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN083
    glVertex3fv $::wP083
    glNormal3fv $::wN081
    glVertex3fv $::wP081
    glNormal3fv $::wN085
    glVertex3fv $::wP085
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN083
    glVertex3fv $::wP083
    glNormal3fv $::wN085
    glVertex3fv $::wP085
    glNormal3fv $::wN077
    glVertex3fv $::wP077
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN087
    glVertex3fv $::wP087
    glNormal3fv $::wN083
    glVertex3fv $::wP083
    glNormal3fv $::wN077
    glVertex3fv $::wP077
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN087
    glVertex3fv $::wP087
    glNormal3fv $::wN077
    glVertex3fv $::wP077
    glNormal3fv $::wN090
    glVertex3fv $::wP090
    glEnd
}

proc Whale011 {} {
    glBegin $::GL_POLYGON
    glNormal3fv $::wN082
    glVertex3fv $::wP082
    glNormal3fv $::wN084
    glVertex3fv $::wP084
    glNormal3fv $::wN079
    glVertex3fv $::wP079
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN084
    glVertex3fv $::wP084
    glNormal3fv $::wN086
    glVertex3fv $::wP086
    glNormal3fv $::wN079
    glVertex3fv $::wP079
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN079
    glVertex3fv $::wP079
    glNormal3fv $::wN086
    glVertex3fv $::wP086
    glNormal3fv $::wN078
    glVertex3fv $::wP078
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN086
    glVertex3fv $::wP086
    glNormal3fv $::wN088
    glVertex3fv $::wP088
    glNormal3fv $::wN078
    glVertex3fv $::wP078
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN078
    glVertex3fv $::wP078
    glNormal3fv $::wN088
    glVertex3fv $::wP088
    glNormal3fv $::wN089
    glVertex3fv $::wP089
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN088
    glVertex3fv $::wP088
    glNormal3fv $::wN086
    glVertex3fv $::wP086
    glNormal3fv $::wN089
    glVertex3fv $::wP089
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN089
    glVertex3fv $::wP089
    glNormal3fv $::wN086
    glVertex3fv $::wP086
    glNormal3fv $::wN078
    glVertex3fv $::wP078
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN086
    glVertex3fv $::wP086
    glNormal3fv $::wN084
    glVertex3fv $::wP084
    glNormal3fv $::wN078
    glVertex3fv $::wP078
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN078
    glVertex3fv $::wP078
    glNormal3fv $::wN084
    glVertex3fv $::wP084
    glNormal3fv $::wN079
    glVertex3fv $::wP079
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN084
    glVertex3fv $::wP084
    glNormal3fv $::wN082
    glVertex3fv $::wP082
    glNormal3fv $::wN079
    glVertex3fv $::wP079
    glEnd
}

proc Whale012 {} {
    glBegin $::GL_POLYGON
    glNormal3fv $::wN058
    glVertex3fv $::wP058
    glNormal3fv $::wN059
    glVertex3fv $::wP059
    glNormal3fv $::wN067
    glVertex3fv $::wP067
    glNormal3fv $::wN066
    glVertex3fv $::wP066
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN059
    glVertex3fv $::wP059
    glNormal3fv $::wN052
    glVertex3fv $::wP052
    glNormal3fv $::wN060
    glVertex3fv $::wP060
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN059
    glVertex3fv $::wP059
    glNormal3fv $::wN060
    glVertex3fv $::wP060
    glNormal3fv $::wN067
    glVertex3fv $::wP067
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN058
    glVertex3fv $::wP058
    glNormal3fv $::wN066
    glVertex3fv $::wP066
    glNormal3fv $::wN065
    glVertex3fv $::wP065
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN058
    glVertex3fv $::wP058
    glNormal3fv $::wN065
    glVertex3fv $::wP065
    glNormal3fv $::wN057
    glVertex3fv $::wP057
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN056
    glVertex3fv $::wP056
    glNormal3fv $::wN057
    glVertex3fv $::wP057
    glNormal3fv $::wN065
    glVertex3fv $::wP065
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN056
    glVertex3fv $::wP056
    glNormal3fv $::wN065
    glVertex3fv $::wP065
    glNormal3fv $::wN006
    glVertex3fv $::wP006
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN056
    glVertex3fv $::wP056
    glNormal3fv $::wN006
    glVertex3fv $::wP006
    glNormal3fv $::wN063
    glVertex3fv $::wP063
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN056
    glVertex3fv $::wP056
    glNormal3fv $::wN063
    glVertex3fv $::wP063
    glNormal3fv $::wN055
    glVertex3fv $::wP055
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN054
    glVertex3fv $::wP054
    glNormal3fv $::wN062
    glVertex3fv $::wP062
    glNormal3fv $::wN005
    glVertex3fv $::wP005
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN054
    glVertex3fv $::wP054
    glNormal3fv $::wN005
    glVertex3fv $::wP005
    glNormal3fv $::wN053
    glVertex3fv $::wP053
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN053
    glVertex3fv $::wP053
    glNormal3fv $::wN005
    glVertex3fv $::wP005
    glNormal3fv $::wN060
    glVertex3fv $::wP060
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN053
    glVertex3fv $::wP053
    glNormal3fv $::wN060
    glVertex3fv $::wP060
    glNormal3fv $::wN052
    glVertex3fv $::wP052
    glEnd
}

proc Whale013 {} {
    glBegin $::GL_POLYGON
    glNormal3fv $::wN066
    glVertex3fv $::wP066
    glNormal3fv $::wN067
    glVertex3fv $::wP067
    glNormal3fv $::wN096
    glVertex3fv $::wP096
    glNormal3fv $::wN097
    glVertex3fv $::wP097
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN097
    glVertex3fv $::wP097
    glNormal3fv $::wN096
    glVertex3fv $::wP096
    glNormal3fv $::wN098
    glVertex3fv $::wP098
    glNormal3fv $::wN099
    glVertex3fv $::wP099
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN065
    glVertex3fv $::wP065
    glNormal3fv $::wN066
    glVertex3fv $::wP066
    glNormal3fv $::wN097
    glVertex3fv $::wP097
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN067
    glVertex3fv $::wP067
    glNormal3fv $::wN060
    glVertex3fv $::wP060
    glNormal3fv $::wN096
    glVertex3fv $::wP096
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN060
    glVertex3fv $::wP060
    glNormal3fv $::wN005
    glVertex3fv $::wP005
    glNormal3fv $::wN096
    glVertex3fv $::wP096
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN096
    glVertex3fv $::wP096
    glNormal3fv $::wN005
    glVertex3fv $::wP005
    glNormal3fv $::wN098
    glVertex3fv $::wP098
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN006
    glVertex3fv $::wP006
    glNormal3fv $::wN065
    glVertex3fv $::wP065
    glNormal3fv $::wN097
    glVertex3fv $::wP097
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN006
    glVertex3fv $::wP006
    glNormal3fv $::wN097
    glVertex3fv $::wP097
    glNormal3fv $::wN099
    glVertex3fv $::wP099
    glEnd
    glBegin $::GL_POLYGON
    glVertex3fv $::wP005
    glVertex3fv $::wP006
    glVertex3fv $::wP099
    glVertex3fv $::wP098
    glEnd
}

proc Whale014 {} {
    glBegin $::GL_POLYGON
    glNormal3fv $::wN062
    glVertex3fv $::wP062
    glNormal3fv $::wN004
    glVertex3fv $::wP004
    glNormal3fv $::wN005
    glVertex3fv $::wP005
    glEnd
    glBegin $::GL_POLYGON
    glVertex3fv $::wP006
    glVertex3fv $::wP005
    glVertex3fv $::wP004
    glVertex3fv $::wP008
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN063
    glVertex3fv $::wP063
    glNormal3fv $::wN006
    glVertex3fv $::wP006
    glNormal3fv $::wN002
    glVertex3fv $::wP002
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN002
    glVertex3fv $::wP002
    glNormal3fv $::wN006
    glVertex3fv $::wP006
    glNormal3fv $::wN008
    glVertex3fv $::wP008
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN002
    glVertex3fv $::wP002
    glNormal3fv $::wN008
    glVertex3fv $::wP008
    glNormal3fv $::wN004
    glVertex3fv $::wP004
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN062
    glVertex3fv $::wP062
    glNormal3fv $::wN002
    glVertex3fv $::wP002
    glNormal3fv $::wN004
    glVertex3fv $::wP004
    glEnd
}

proc Whale015 {} {
    glBegin $::GL_POLYGON
    glNormal3fv $::wN055
    glVertex3fv $::wP055
    glNormal3fv $::wN003
    glVertex3fv $::wP003
    glNormal3fv $::wN054
    glVertex3fv $::wP054
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN003
    glVertex3fv $::wP003
    glNormal3fv $::wN055
    glVertex3fv $::wP055
    glNormal3fv $::wN063
    glVertex3fv $::wP063
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN003
    glVertex3fv $::wP003
    glNormal3fv $::wN063
    glVertex3fv $::wP063
    glNormal3fv $::wN100
    glVertex3fv $::wP100
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN003
    glVertex3fv $::wP003
    glNormal3fv $::wN100
    glVertex3fv $::wP100
    glNormal3fv $::wN054
    glVertex3fv $::wP054
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN054
    glVertex3fv $::wP054
    glNormal3fv $::wN100
    glVertex3fv $::wP100
    glNormal3fv $::wN062
    glVertex3fv $::wP062
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN100
    glVertex3fv $::wP100
    glNormal3fv $::wN063
    glVertex3fv $::wP063
    glNormal3fv $::wN002
    glVertex3fv $::wP002
    glEnd
    glBegin $::GL_POLYGON
    glNormal3fv $::wN100
    glVertex3fv $::wP100
    glNormal3fv $::wN002
    glVertex3fv $::wP002
    glNormal3fv $::wN062
    glVertex3fv $::wP062
    glEnd
}

proc Whale016 {} {
    glBegin $::GL_POLYGON
    glVertex3fv $::wP104
    glVertex3fv $::wP105
    glVertex3fv $::wP106
    glEnd
    glBegin $::GL_POLYGON
    glVertex3fv $::wP107
    glVertex3fv $::wP108
    glVertex3fv $::wP109
    glEnd
    glBegin $::GL_POLYGON
    glVertex3fv $::wP110
    glVertex3fv $::wP111
    glVertex3fv $::wP112
    glVertex3fv $::wP113
    glVertex3fv $::wP114
    glVertex3fv $::wP115
    glEnd
    glBegin $::GL_POLYGON
    glVertex3fv $::wP116
    glVertex3fv $::wP117
    glVertex3fv $::wP118
    glVertex3fv $::wP119
    glVertex3fv $::wP120
    glVertex3fv $::wP121
    glEnd
}

proc DrawWhale { fishArr ind } {
    upvar 1 $fishArr fish

    set fish($ind,htail) [expr int($fish($ind,htail)) - int((5.0 * $fish($ind,v))) % 360]

    set thrash [expr 70.0 * $fish($ind,v)]

    set seg0 [expr 1.5 * $thrash * sin(($fish($ind,htail)) * $::RRAD)]
    set seg1 [expr 2.5 * $thrash * sin(($fish($ind,htail) + 10.0) * $::RRAD)]
    set seg2 [expr 3.7 * $thrash * sin(($fish($ind,htail) + 15.0) * $::RRAD)]
    set seg3 [expr 4.8 * $thrash * sin(($fish($ind,htail) + 23.0) * $::RRAD)]
    set seg4 [expr 6.0 * $thrash * sin(($fish($ind,htail) + 28.0) * $::RRAD)]
    set seg5 [expr 6.5 * $thrash * sin(($fish($ind,htail) + 35.0) * $::RRAD)]
    set seg6 [expr 6.5 * $thrash * sin(($fish($ind,htail) + 40.0) * $::RRAD)]
    set seg7 [expr 6.5 * $thrash * sin(($fish($ind,htail) + 55.0) * $::RRAD)]

    set pitch [expr $fish($ind,v) * sin(($fish($ind,htail) - 160.0) * $::RRAD)]

    set chomp 0.0
    if { $fish($ind,v) > 2.0 } {
        set chomp [expr -($fish($ind,v) - 2.0) * 200.0]
    }
    lset ::wP012 1 [expr [lindex $::iwP012 1] + $seg5]
    lset ::wP013 1 [expr [lindex $::iwP013 1] + $seg5]
    lset ::wP014 1 [expr [lindex $::iwP014 1] + $seg5]
    lset ::wP015 1 [expr [lindex $::iwP015 1] + $seg5]
    lset ::wP016 1 [expr [lindex $::iwP016 1] + $seg5]
    lset ::wP017 1 [expr [lindex $::iwP017 1] + $seg5]
    lset ::wP018 1 [expr [lindex $::iwP018 1] + $seg5]
    lset ::wP019 1 [expr [lindex $::iwP019 1] + $seg5]

    lset ::wP020 1 [expr [lindex $::iwP020 1] + $seg4]
    lset ::wP021 1 [expr [lindex $::iwP021 1] + $seg4]
    lset ::wP022 1 [expr [lindex $::iwP022 1] + $seg4]
    lset ::wP023 1 [expr [lindex $::iwP023 1] + $seg4]
    lset ::wP024 1 [expr [lindex $::iwP024 1] + $seg4]
    lset ::wP025 1 [expr [lindex $::iwP025 1] + $seg4]
    lset ::wP026 1 [expr [lindex $::iwP026 1] + $seg4]
    lset ::wP027 1 [expr [lindex $::iwP027 1] + $seg4]

    lset ::wP028 1 [expr [lindex $::iwP028 1] + $seg2]
    lset ::wP029 1 [expr [lindex $::iwP029 1] + $seg2]
    lset ::wP030 1 [expr [lindex $::iwP030 1] + $seg2]
    lset ::wP031 1 [expr [lindex $::iwP031 1] + $seg2]
    lset ::wP032 1 [expr [lindex $::iwP032 1] + $seg2]
    lset ::wP033 1 [expr [lindex $::iwP033 1] + $seg2]
    lset ::wP034 1 [expr [lindex $::iwP034 1] + $seg2]
    lset ::wP035 1 [expr [lindex $::iwP035 1] + $seg2]

    lset ::wP036 1 [expr [lindex $::iwP036 1] + $seg1]
    lset ::wP037 1 [expr [lindex $::iwP037 1] + $seg1]
    lset ::wP038 1 [expr [lindex $::iwP038 1] + $seg1]
    lset ::wP039 1 [expr [lindex $::iwP039 1] + $seg1]
    lset ::wP040 1 [expr [lindex $::iwP040 1] + $seg1]
    lset ::wP041 1 [expr [lindex $::iwP041 1] + $seg1]
    lset ::wP042 1 [expr [lindex $::iwP042 1] + $seg1]
    lset ::wP043 1 [expr [lindex $::iwP043 1] + $seg1]

    lset ::wP044 1 [expr [lindex $::iwP044 1] + $seg0]
    lset ::wP045 1 [expr [lindex $::iwP045 1] + $seg0]
    lset ::wP046 1 [expr [lindex $::iwP046 1] + $seg0]
    lset ::wP047 1 [expr [lindex $::iwP047 1] + $seg0]
    lset ::wP048 1 [expr [lindex $::iwP048 1] + $seg0]
    lset ::wP049 1 [expr [lindex $::iwP049 1] + $seg0]
    lset ::wP050 1 [expr [lindex $::iwP050 1] + $seg0]
    lset ::wP051 1 [expr [lindex $::iwP051 1] + $seg0]

    lset ::wP009 1 [expr [lindex $::iwP009 1] + $seg6]
    lset ::wP010 1 [expr [lindex $::iwP010 1] + $seg6]
    lset ::wP075 1 [expr [lindex $::iwP075 1] + $seg6]
    lset ::wP076 1 [expr [lindex $::iwP076 1] + $seg6]

    lset ::wP001 1 [expr [lindex $::iwP001 1] + $seg7]
    lset ::wP011 1 [expr [lindex $::iwP011 1] + $seg7]
    lset ::wP068 1 [expr [lindex $::iwP068 1] + $seg7]
    lset ::wP069 1 [expr [lindex $::iwP069 1] + $seg7]
    lset ::wP070 1 [expr [lindex $::iwP070 1] + $seg7]
    lset ::wP071 1 [expr [lindex $::iwP071 1] + $seg7]
    lset ::wP072 1 [expr [lindex $::iwP072 1] + $seg7]
    lset ::wP073 1 [expr [lindex $::iwP073 1] + $seg7]
    lset ::wP074 1 [expr [lindex $::iwP074 1] + $seg7]

    lset ::wP091 1 [expr [lindex $::iwP091 1] + $seg3 * 1.1]
    lset ::wP092 1 [expr [lindex $::iwP092 1] + $seg3]
    lset ::wP093 1 [expr [lindex $::iwP093 1] + $seg3]
    lset ::wP094 1 [expr [lindex $::iwP094 1] + $seg3]
    lset ::wP095 1 [expr [lindex $::iwP095 1] + $seg3 * 0.9]

    lset ::wP099 1 [expr [lindex $::iwP099 1] + $chomp]
    lset ::wP098 1 [expr [lindex $::iwP098 1] + $chomp]
    lset ::wP097 1 [expr [lindex $::iwP097 1] + $chomp]
    lset ::wP096 1 [expr [lindex $::iwP096 1] + $chomp]

    glPushMatrix

    glRotatef $pitch 1.0 0.0 0.0

    glTranslatef 0.0 0.0 8000.0

    glRotatef 180.0 0.0 1.0 0.0

    glScalef 3.0 3.0 3.0

    glEnable GL_CULL_FACE

    Whale001
    Whale002
    Whale003
    Whale004
    Whale005
    Whale006
    Whale007
    Whale008
    Whale009
    Whale010
    Whale011
    Whale012
    Whale013
    Whale014
    Whale015
    Whale016

    glDisable GL_CULL_FACE

    glPopMatrix
}
