package Savage.ShipsMilitary.FrigateMEKO200Greece;

import org.web3d.x3d.jsail.Core.*;
import org.web3d.x3d.jsail.EnvironmentalEffects.*;
import org.web3d.x3d.jsail.fields.*;
import org.web3d.x3d.jsail.Geometry3D.*;
import org.web3d.x3d.jsail.Grouping.*;
import org.web3d.x3d.jsail.Interpolation.*;
import org.web3d.x3d.jsail.Navigation.*;
import org.web3d.x3d.jsail.PointingDeviceSensor.*;
import org.web3d.x3d.jsail.Rendering.*;
import org.web3d.x3d.jsail.Shape.*;
import org.web3d.x3d.jsail.Texturing.*;
import org.web3d.x3d.jsail.Time.*;

// Javadoc metadata annotations follow, see below for X3DJSAIL Java source code.
/**
 * <p> MEKO-200HN Greek Frigate is used for coastal defense. </p>
 <p> Related links: Catalog page <a href="../../../../ShipsMilitary/FrigateMEKO200Greece/MEKO200Index.html" target="_blank">MEKO200</a>,  source <a href="../../../../ShipsMilitary/FrigateMEKO200Greece/MEKO200.java">MEKO200.java</a>, <a href="https://www.web3d.org/x3d/content/examples/X3dResources.html" target="_blank">X3D Resources</a>, <a href="https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html" target="_blank">X3D Scene Authoring Hints</a>, and <a href="https://www.web3d.org/x3d/content/X3dTooltips.html" target="_blank">X3D Tooltips</a>. </p>
	<table style="color:black; border:0px solid; border-spacing:10px 0px;">
        <caption>Scene Meta Information</caption>
		<tr style="background-color:silver; border-color:silver;">
			<td style="text-align:center; padding:10px 0px;"><i>meta tags</i></td>
			<td style="text-align:left;   padding:10px 0px;">&nbsp; Document Metadata </td>
		</tr>

		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> title </i> </td>
			<td> <a href="../../../../ShipsMilitary/FrigateMEKO200Greece/MEKO200.x3d">MEKO200.x3d</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> description </i> </td>
			<td> MEKO-200HN Greek Frigate is used for coastal defense. </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> creator </i> </td>
			<td> Georgios Floros and Andreas Kavousanos-Kavousanakis </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> translator </i> </td>
			<td> Andreas Kavousanos-Kavousanakis </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> created </i> </td>
			<td> 16 September 2003 </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> modified </i> </td>
			<td> 7 April 2024 </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
			<td> <a href="http://www.blohmvoss.de" target="_blank">http://www.blohmvoss.de</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> rights </i> </td>
			<td> Copyright (c) Georgios Floros, Andreas Kavousanos-Kavousanakis </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> drawing </i> </td>
			<td> <a href="../../../../ShipsMilitary/FrigateMEKO200Greece/HelicopterLandingDeck.png">HelicopterLandingDeck.png</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> subject </i> </td>
			<td> MEKO200 frigate, Hellenic Navy HN </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> accessRights </i> </td>
			<td> The "author" Georgios Floros created this model in .flt format. The "translator" Andreas Kavousanos- Kavousanakis used "Deep Exploration" trial version by "Right Hemisphere" in order to translate the original model into VRML 2.0 format non recognizable by the X3D Editor. The source code was pasted into a "Wordpad" file and was manually recreated in X3D format by the translator. The "author" has released all his rights to the "translator". </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> identifier </i> </td>
			<td> <a href="https://www.web3d.org/x3d/content/examples/Savage/ShipsMilitary/FrigateMEKO200Greece/MEKO200.x3d" target="_blank">https://www.web3d.org/x3d/content/examples/Savage/ShipsMilitary/FrigateMEKO200Greece/MEKO200.x3d</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> generator </i> </td>
			<td> X3D-Edit 3.2, <a href="https://www.web3d.org/x3d/tools/X3D-Edit" target="_blank">https://www.web3d.org/x3d/tools/X3D-Edit</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> license </i> </td>
			<td> <a href="../../../../ShipsMilitary/FrigateMEKO200Greece/../../license.html">../../license.html</a> </td>
		</tr>
		<tr style="background-color:silver; border-color:silver;">
			<td style="text-align:center;" colspan="2">  &nbsp; </td>
		</tr>
	</table>

	<p>
		This program uses the
		<a href="https://www.web3d.org/specifications/java/X3DJSAIL.html" target="_blank">X3D Java Scene Access Interface Library (X3DJSAIL)</a>.
		It has been produced using the 
		<a href="https://www.web3d.org/x3d/stylesheets/X3dToJava.xslt" target="_blank">X3dToJava.xslt</a>
		stylesheet
	       (<a href="https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/stylesheets/X3dToJava.xslt" target="_blank">version control</a>)
                which is used to create Java source code from an original <code>.x3d</code> model.
	</p>

	* @author Georgios Floros and Andreas Kavousanos-Kavousanakis
 */

public class MEKO200
{
	/** Default constructor to create this object. */
	public MEKO200 ()
	{
	  initialize();
	}

	/** Create and initialize the X3D model for this object. */
	public final void initialize()
	{
            try { // catch-all
  x3dModel = new X3D().setProfile(X3D.PROFILE_IMMERSIVE).setVersion(X3D.VERSION_3_3)
  .setHead(new head()
    .addMeta(new meta().setName(meta.NAME_TITLE      ).setContent("MEKO200.x3d"))
    .addMeta(new meta().setName(meta.NAME_DESCRIPTION).setContent("MEKO-200HN Greek Frigate is used for coastal defense."))
    .addMeta(new meta().setName(meta.NAME_CREATOR    ).setContent("Georgios Floros and Andreas Kavousanos-Kavousanakis"))
    .addMeta(new meta().setName(meta.NAME_TRANSLATOR ).setContent("Andreas Kavousanos-Kavousanakis"))
    .addMeta(new meta().setName(meta.NAME_CREATED    ).setContent("16 September 2003"))
    .addMeta(new meta().setName(meta.NAME_MODIFIED   ).setContent("7 April 2024"))
    .addMeta(new meta().setName(meta.NAME_REFERENCE  ).setContent("http://www.blohmvoss.de"))
    .addMeta(new meta().setName(meta.NAME_RIGHTS     ).setContent("Copyright (c) Georgios Floros, Andreas Kavousanos-Kavousanakis"))
    .addMeta(new meta().setName(meta.NAME_DRAWING    ).setContent("HelicopterLandingDeck.png"))
    .addMeta(new meta().setName(meta.NAME_SUBJECT    ).setContent("MEKO200 frigate, Hellenic Navy HN"))
    .addMeta(new meta().setName(meta.NAME_ACCESSRIGHTS).setContent("The \"author\" Georgios Floros created this model in .flt format. The \"translator\" Andreas Kavousanos- Kavousanakis used \"Deep Exploration\" trial version by \"Right Hemisphere\" in order to translate the original model into VRML 2.0 format non recognizable by the X3D Editor. The source code was pasted into a \"Wordpad\" file and was manually recreated in X3D format by the translator. The \"author\" has released all his rights to the \"translator\"."))
    .addMeta(new meta().setName(meta.NAME_IDENTIFIER ).setContent("https://www.web3d.org/x3d/content/examples/Savage/ShipsMilitary/FrigateMEKO200Greece/MEKO200.x3d"))
    .addMeta(new meta().setName(meta.NAME_GENERATOR  ).setContent("X3D-Edit 3.2, https://www.web3d.org/x3d/tools/X3D-Edit"))
    .addMeta(new meta().setName(meta.NAME_LICENSE    ).setContent("../../license.html")))
  .setScene(new Scene()
    .addChild(new WorldInfo().setTitle("MEKO200.x3d"))
    .addChild(new Transform()
      .addChild(new Background().setGroundAngle(new double[] {1.309,1.570796}).setGroundColor(new MFColor(new double[] {0.1,0.1,0.0,0.4,0.25,0.2,0.6,0.6,0.6})).setSkyAngle(new double[] {1.309,1.571}).setSkyColor(new MFColor(new double[] {0.0,0.2,0.7,0.0,0.5,1.0,1.0,1.0,1.0})))
      .addChild(new Viewpoint().setDescription("STBD Side").setFieldOfView(1).setJump(false).setPosition(-55.0,30.0,100.0))
      .addChild(new Viewpoint().setDescription("Inside The RIB").setJump(false).setOrientation(0.0,-1.0,0.0,1.8819).setPosition(-55.1,12.8,5.8))
      .addChild(new Viewpoint().setDescription("Inside The Bridge").setJump(false).setOrientation(0.0,-1.0,0.0,1.649).setPosition(-29.2,12.8,1.1))
      .addChild(new Viewpoint().setDescription("Bow").setJump(false).setOrientation(-0.07,0.992,0.102,1.4301).setPosition(62.5,23.7,17.3))
      .addChild(new Viewpoint().setDescription("PORT Side").setFieldOfView(1).setJump(false).setOrientation(0.0,1.0,0.0,3.14).setPosition(-55.0,30.0,-100.0))
      .addChild(new Viewpoint().setDescription("Sonar Dome Looking Up").setJump(false).setOrientation(0.042,0.96,-0.276,1.9627).setPosition(16.6,-10.5,-31.2))
      .addChild(new Viewpoint().setDescription("Above Looking Down").setJump(false).setOrientation(-0.292,-0.877,-0.381,2.3077).setPosition(-120.0,120.6,-54.8))
      .addChild(new Viewpoint().setDescription("Harpoon Launchers").setJump(false).setOrientation(-0.274,-0.921,-0.276,1.6528).setPosition(-55.7,20.5,0.1))
      .addChild(new Viewpoint().setDescription("GMVLS").setJump(false).setOrientation(-0.298,-0.911,-0.286,1.6867).setPosition(-90.5,42.9,-0.3))
      .addChild(new Viewpoint().setDescription("AFT Looking The HELI Deck").setJump(false).setOrientation(-0.126,0.984,0.129,1.5846).setPosition(-77.9,14.9,1.6))
      .addChild(new Viewpoint().setDescription("HELI Deck").setJump(false).setOrientation(-0.126,0.984,0.128,1.5954).setPosition(-86.6,6.7,2.0))
      .addChild(new Viewpoint().setDescription("Stern HELI").setJump(false).setOrientation(0.075,-0.993,0.087,1.6897).setPosition(-124.7,9.8,1.5))
      .addChild(new Viewpoint().setDescription("Stern Propellers").setJump(false).setOrientation(0.075,-0.993,0.087,1.6891).setPosition(-122.0,-2.4,-3.5)))
    .addChild(new ExternProtoDeclare("BGM109").setName("BGM109").setUrl(new String[] {"TomahawkPrototype.x3d#BGM109","TomahawkPrototype.wrl#BGM109","https://www.web3d.org/x3d/content/examples/Savage/Weapons/Missiles/TomahawkPrototype.wrl#BGM109","https://www.web3d.org/x3d/content/examples/Savage/Weapons/Missiles/TomahawkPrototype.x3d#BGM109"})
      .addField(new field().setName("STARTLAUNCH").setType(field.TYPE_SFBOOL).setAccessType(field.ACCESSTYPE_INPUTONLY))
      .addField(new field().setName("THETIME").setType(field.TYPE_SFTIME).setAccessType(field.ACCESSTYPE_INPUTONLY)))
    .addChild(new Transform().setRotation(-0.58,-0.58,-0.58,2.09)
      .addChild(new Transform()
        .addComments(" MEKO 200 VESSEL ")
        .addChild(new Shape()
          .addComments(" 1st DECK ")
          .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,-1,4,5,6,2,1,-1,6,5,7,8,-1,9,10,11,12,-1,11,10,13,14,15,-1,15,14,16,17,-1,18,19,20,-1,21,22,23,-1,24,25,26,27,-1,28,24,27,29,-1,30,28,29,31,-1,25,21,19,26,-1,32,33,34,35,36,-1,33,30,31,34,-1}).setNormalIndex(new int[] {0,1,1,0,-1,2,3,3,1,1,-1,3,3,4,4,-1,4,5,5,4,-1,5,5,6,7,7,-1,7,7,8,8,-1,9,10,9,-1,11,12,12,-1,13,14,14,13,-1,15,13,13,15,-1,16,15,15,16,-1,14,11,10,14,-1,17,18,18,17,17,-1,18,16,16,18,-1})
            .setCoord(new Coordinate().setPoint(getCoordinate_7_35_point()))
            .setNormal(new Normal().setVector(new MFVec3f(new double[] {0.000475,-0.019235,0.999815,0.000471,-0.017438,0.999848,0.000468,-0.015640,0.999878,0.000468,-0.007820,0.999969,0.000468,0.000000,1.000000,0.000471,-0.008119,0.999967,0.000475,-0.016238,0.999868,0.000475,-0.017721,0.999843,0.000475,-0.019204,0.999815,0.000592,-0.025890,0.999665,0.000592,-0.027783,0.999614,0.000592,-0.027854,0.999612,0.000592,-0.026031,0.999661,0.000652,-0.069213,0.997602,0.000603,-0.052878,0.998601,0.000750,-0.030799,0.999525,0.000546,0.022759,0.999741,0.000000,0.000000,1.000000,0.000142,0.022356,0.999750}))))
          .setAppearance(new Appearance("App")
            .setMaterial(new Material("Mat").setAmbientIntensity(0.02).setDiffuseColor(0.5294,0.5294,0.5294).setShininess(0.55))))
        .addChild(new Shape()
          .addComments(" 2nd DECK ")
          .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,-1,3,2,4,5,6,7,-1,8,9,10,-1,11,12,13,-1,14,15,16,17,-1,18,19,20,21,-1,17,16,1,22,-1,0,18,21,23,-1}).setNormalIndex(new int[] {0,1,2,2,-1,2,2,3,3,3,3,-1,4,4,4,-1,5,5,5,-1,6,6,7,8,-1,9,10,10,11,-1,8,7,1,12,-1,0,9,11,13,-1})
            .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-6.270653,-26.400000,8.123830,6.273218,-26.400000,8.117238,5.972303,-22.992625,8.205757,-5.969645,-22.992625,8.212349,5.831791,-21.815949,8.236315,2.378542,-19.573383,8.296439,-2.375791,-19.573383,8.299256,-5.829039,-21.815949,8.242906,-5.298594,-63.993597,7.649422,-7.045781,-63.993597,7.650033,-7.045781,-66.849551,7.650033,7.048119,-66.853152,7.643441,7.048119,-63.993597,7.643441,5.300102,-63.993597,7.645496,5.300000,-33.697867,7.936346,6.725386,-33.697697,7.936346,6.429520,-28.169972,8.071258,5.300534,-28.170000,8.071865,-6.427013,-28.169981,8.077849,-6.722928,-33.697731,7.936346,-5.300000,-33.697799,7.936346,-5.298253,-28.170000,8.077243,2.463785,-26.400000,8.119240,-2.463785,-26.400000,8.121829})))
            .setNormal(new Normal().setVector(new MFVec3f(new double[] {0.000531,-0.026017,0.999661,0.000525,-0.025965,0.999663,0.000539,-0.026021,0.999661,0.000552,-0.026026,0.999661,0.000350,0.000000,1.000000,0.001176,0.000000,0.999999,0.000003,-0.024508,0.999700,0.000264,-0.025211,0.999682,0.000176,-0.016809,0.999859,0.000267,-0.025804,0.999667,-0.000001,-0.025590,0.999673,0.000178,-0.017204,0.999852,0.000525,-0.025915,0.999664,0.000536,-0.026017,0.999661}))))
          .setAppearance(new Appearance().setUSE("App")))
        .addChild(new Shape()
          .addComments(" HULL ")
          .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(getIndexedFaceSet_6_46_coordIndex()).setNormalIndex(getIndexedFaceSet_6_46_normalIndex())
            .setCoord(new Coordinate().setPoint(getCoordinate_7_46_point()))
            .setNormal(new Normal().setVector(getNormal_7_47_vector())))
          .setAppearance(new Appearance().setUSE("App")))
        .addChild(new Shape()
          .addComments(" HELLICOPTER DECK ")
          .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,4,-1}).setNormalIndex(new int[] {0,1,2,3,4,-1}).setTexCoordIndex(new int[] {0,1,2,3,4,-1})
            .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-7.41463,-109.788,5.15021,0.000468956,-110.773,5.14674,7.42025,-109.788,5.14327,7.41784,-86.4076,5.14327,-7.41784,-86.4076,5.15021})))
            .setNormal(new Normal().setVector(new MFVec3f(new double[] {0.000467901,6.43549e-008,1,0.00046772,9.1808e-009,1,0.000467613,1.12576e-009,1,0.000467687,4.82448e-008,1,0.000467709,2.22022e-008,1.0})))
            .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {0.674805,0.984619,0.496094,0.98999,0.31958,0.968506,-0.0253906,-0.00390625,1.03638,0.00488281}))))
          .setAppearance(new Appearance()
            .setMaterial(new Material().setDiffuseColor(0.0,0.0,0.0))
            .setTexture(new ImageTexture().setUrl(new String[] {"HelicopterLandingDeck.png","https://www.web3d.org/x3d/content/examples/Savage/ShipsMilitary/FrigateMEKO200Greece/HelicopterLandingDeck.png"}))))
        .addChild(new Shape()
          .addComments(" SUPER STRUCTURE ")
          .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(getIndexedFaceSet_6_59_coordIndex()).setNormalIndex(getIndexedFaceSet_6_59_normalIndex())
            .setCoord(new Coordinate().setPoint(getCoordinate_7_59_point()))
            .setNormal(new Normal().setVector(getNormal_7_60_vector())))
          .setAppearance(new Appearance().setUSE("App")))
        .addChild(new Shape()
          .addComments(" BRIDGE WINDOWS ")
          .setGeometry(new IndexedFaceSet().setCoordIndex(new int[] {0,1,2,3,-1,4,5,6,7,-1,8,9,10,11,-1,12,13,14,15,-1,16,17,18,19,-1}).setNormalIndex(new int[] {0,0,0,0,-1,0,0,0,0,-1,0,0,0,0,-1,1,2,1,0,-1,3,3,3,3,-1})
            .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-2.025,-26.8975,12.9,-1.375,-26.8975,12.9,-1.375,-26.9567,12.2,-2.025,-26.9567,12.2,-1.175,-26.8975,12.9,-0.525,-26.8975,12.9,-0.525,-26.9567,12.2,-1.175,-26.9567,12.2,-0.325,-26.8975,12.9,0.325,-26.8975,12.9,0.325,-26.9567,12.2,-0.325,-26.9567,12.2,0.525,-26.8975,12.9,1.175,-26.8975,12.9,1.175,-26.9567,12.2,0.525,-26.9567,12.2,1.375,-26.8975,12.9,2.025,-26.8975,12.9,2.025,-26.9567,12.2,1.375,-26.9567,12.2})))
            .setNormal(new Normal().setVector(new MFVec3f(new double[] {0,0.996437,-0.0843357,-1.46196e-006,0.996437,-0.0843371,-2.92393e-006,0.996437,-0.0843384,0.0,0.996437,-0.0843384}))))
          .setAppearance(new Appearance("BRIDGE_WINDOW")
            .setMaterial(new Material().setAmbientIntensity(0.130719).setDiffuseColor(0.223529,0.392157,0.592157).setShininess(0.062500).setSpecularColor(0.937255,0.937255,0.584314))))
        .addChild(new Transform("RUDDER").setCenter(0.0,-107.0,0.0)
          .addComments(" CHANGE ROTATION OF RUDDER ")
          .addChild(new Shape()
            .addComments(" RUDDER ")
            .setGeometry(new IndexedFaceSet().setCoordIndex(new int[] {0,0,1,1,-1,2,1,1,3,-1,3,1,0,4,-1,4,0,0,5,-1,5,0,1,2,-1,2,3,4,5,-1}).setNormalIndex(new int[] {0,0,0,0,-1,1,1,0,1,-1,2,2,2,2,-1,3,3,0,3,-1,4,4,4,4,-1,0,0,0,0,-1})
              .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {0.0,-106.0,-4.88265,0.0,-108.3,-4.88265,-0.25,-108.55,-1.18265,0.25,-108.55,-1.18265,0.25,-104.2,-1.18265,-0.25,-104.2,-1.18265})))
              .setNormal(new Normal().setVector(new MFVec3f(new double[] {0.0,0.0,1.0,0.0,-0.997725,-0.0674139,0.997725,0.0,-0.0674139,0.0,0.899235,-0.437466,-0.997725,0.0,-0.0674139}))))
            .setAppearance(new Appearance().setUSE("App")))
          .addChild(new TouchSensor("RUDDERBUT").setDescription("Touch Here to rotate rudder"))
          .addChild(new TimeSensor("ClockRudder").setCycleInterval(10))
          .addChild(new OrientationInterpolator("Rudder_Path").setKey(new double[] {0.0,0.25,0.50,0.75,1.0}).setKeyValue(new MFRotation(new double[] {0.0,0.0,1.0,0.0,0.0,0.0,1.0,0.61,0.0,0.0,1.0,0.0,0.0,0.0,1.0,-0.61,0.0,0.0,1.0,0.0})))
          .addChild(new ROUTE().setFromNode("ClockRudder").setFromField("fraction_changed").setToNode("Rudder_Path").setToField("set_fraction"))
          .addChild(new ROUTE().setFromNode("Rudder_Path").setFromField("value_changed").setToNode("RUDDER").setToField("set_rotation"))
          .addChild(new ROUTE().setFromNode("RUDDERBUT").setFromField("touchTime").setToNode("ClockRudder").setToField("set_startTime"))
          .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setScale(0.12,0.7,0.12).setTranslation(0.0,-107.0,-1.0)
            .addChild(new Shape()
              .setGeometry(new Cylinder())
              .setAppearance(new Appearance().setUSE("App")))))
        .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setScale(1.0,1.0,3.0).setTranslation(0.0,-21.0,-4.0)
          .addComments(" SONAR DOME (ADDED BY TRANSLATOR) ")
          .addChild(new Shape()
            .setAppearance(new Appearance().setUSE("App"))
            .setGeometry(new Cylinder()))
          .addChild(new Transform().setTranslation(0.0,-1.0,0.0)
            .addChild(new Shape()
              .setAppearance(new Appearance().setUSE("App"))
              .setGeometry(new Sphere()))))
        .addChild(new Shape()
          .addComments(" CHIMNEYS ")
          .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,-1,3,4,1,0,-1,5,6,4,7,-1,8,9,6,5,-1,10,11,9,8,-1,12,13,11,10,-1,14,15,13,12,-1,16,17,15,14,-1,18,19,17,16,-1,20,19,18,-1,20,21,19,20,-1,22,21,20,-1,23,24,21,22,-1,25,26,24,23,-1,27,28,26,25,-1,29,28,27,-1,30,31,28,29,-1,32,31,30,-1,2,1,31,32,-1,33,34,35,36,-1,37,34,33,-1,38,39,34,37,-1,40,39,38,-1,41,42,39,40,-1,43,44,42,41,-1,45,46,44,43,-1,47,46,45,-1,47,48,46,47,-1,49,48,47,-1,50,51,48,49,-1,52,53,51,50,-1,54,55,53,52,-1,56,57,55,54,-1,58,59,57,56,-1,60,61,59,58,-1,62,63,61,60,-1,64,35,63,65,-1,36,35,64,-1}).setNormalIndex(new int[] {0,1,2,-1,3,4,1,0,-1,5,6,4,7,-1,8,9,6,5,-1,10,11,9,8,-1,12,13,11,10,-1,14,15,13,12,-1,16,17,15,14,-1,18,19,17,16,-1,20,19,18,-1,20,21,19,20,-1,22,21,20,-1,23,24,21,22,-1,25,26,24,23,-1,27,28,26,25,-1,29,28,27,-1,30,31,28,29,-1,32,31,30,-1,2,1,31,32,-1,33,34,35,36,-1,37,34,33,-1,38,39,34,37,-1,40,39,38,-1,41,42,39,40,-1,43,44,42,41,-1,45,46,44,43,-1,47,46,45,-1,47,48,46,47,-1,49,48,47,-1,50,51,48,49,-1,52,53,51,50,-1,54,55,53,52,-1,56,57,55,54,-1,58,59,57,56,-1,60,61,59,58,-1,62,63,61,60,-1,64,35,63,65,-1,36,35,64,-1})
            .setCoord(new Coordinate().setPoint(getCoordinate_7_94_point()))
            .setNormal(new Normal().setVector(getNormal_7_95_vector())))
          .setAppearance(new Appearance().setUSE("App")))
        .addChild(new Transform()
          .addComments(" HELI DOOR ")
          .addChild(new Shape()
            .setGeometry(new IndexedFaceSet().setCoordIndex(new int[] {0,1,2,3,4,-1}).setNormalIndex(new int[] {0,1,2,3,4,-1}).setTexCoordIndex(new int[] {0,1,2,3,4,-1})
              .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-7.41784,-86.4076,5.15021,7.41784,-86.4076,5.14327,7.04812,-85.8476,7.64344,6.54583,-85.1246,10.9,-6.5615,-85.1246,10.9})))
              .setNormal(new Normal().setVector(new MFVec3f(new double[] {0.000176185,-0.976011,0.21772,0.000102229,-0.975818,0.218585,0.000264278,-0.976018,0.21769,0.000213163,-0.976108,0.217288,0.0,-0.975998,0.217781})))
              .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {0.0,0.0,0.998779,0.000976563,0.974609,0.430664,0.941895,0.990234,0.059082,0.988037}))))
            .setAppearance(new Appearance()
              .setTexture(new ImageTexture().setUrl(new String[] {"HelicopterHangarDoor.png","https://www.web3d.org/x3d/content/examples/Savage/ShipsMilitary/FrigateMEKO200Greece/HelicopterHangarDoor.png"}))))))
      .addChild(new Transform()
        .addComments(" SHAFTS ")
        .addChild(new Transform()
          .addComments(" PORT SHAFT ")
          .addChild(new Shape("FAT_SHAFT")
            .addComments(" HUB AND PART OF V-BRACKET ")
            .setGeometry(new IndexedFaceSet().setCoordIndex(new int[] {0,1,2,3,4,5,6,7,8,9,10,11,-1,12,1,0,13,-1,14,2,1,12,-1,15,3,2,14,-1,16,4,3,15,-1,17,5,4,16,-1,18,6,5,17,-1,19,7,6,18,-1,20,8,7,19,-1,21,9,8,20,-1,22,10,9,21,-1,23,11,10,22,-1,13,0,11,23,-1,23,22,21,20,19,18,17,16,15,14,12,13,-1,24,25,26,27,28,29,-1,30,31,32,33,34,35,36,37,38,39,40,41,-1,42,30,31,43,-1,43,31,32,44,-1,44,32,33,45,-1,45,33,34,46,-1,46,34,35,47,-1,47,35,36,48,-1,48,36,37,49,-1,49,37,38,50,-1,50,38,39,51,-1,51,39,40,52,-1,52,40,41,53,-1,53,41,30,42,-1,42,43,44,45,46,47,48,49,50,51,52,53,-1,54,31,30,-1,54,32,31,-1,54,33,32,-1,54,34,33,-1,54,35,34,-1,54,36,35,-1,54,37,36,-1,54,38,37,-1,54,39,38,-1,54,40,39,-1,54,41,40,-1,54,30,41,-1}).setNormalIndex(new int[] {0,1,2,3,4,5,0,1,2,3,4,5,-1,6,7,8,9,-1,10,11,7,6,-1,12,13,11,10,-1,14,15,13,12,-1,16,17,15,14,-1,18,19,17,16,-1,20,21,19,18,-1,22,23,21,20,-1,24,25,23,22,-1,26,27,25,24,-1,28,29,27,26,-1,9,8,29,28,-1,30,31,32,33,34,35,36,37,32,33,34,38,-1,39,39,40,41,41,42,-1,43,44,45,46,47,48,49,50,51,52,53,54,-1,55,56,57,58,-1,58,57,59,60,-1,60,59,61,62,-1,62,61,63,64,-1,64,63,65,66,-1,66,65,67,68,-1,68,67,69,70,-1,70,69,71,72,-1,72,71,73,74,-1,74,73,75,76,-1,76,75,77,78,-1,78,77,56,55,-1,79,80,81,82,83,84,85,86,87,82,88,89,-1,90,91,92,-1,90,93,91,-1,90,94,93,-1,90,95,94,-1,90,96,95,-1,90,97,96,-1,90,98,97,-1,90,99,98,-1,90,100,99,-1,90,101,100,-1,90,102,101,-1,90,92,102,-1})
              .setCoord(new Coordinate().setPoint(getCoordinate_8_108_point()))
              .setNormal(new Normal().setVector(getNormal_8_109_vector())))
            .setAppearance(new Appearance("HUB")
              .setMaterial(new Material().setAmbientIntensity(0.281046).setDiffuseColor(0.6980,0.1333,0.0))))
          .addChild(new Transform()
            .addComments(" TURNING PARTS ")
            .addChild(new Transform().setScale(1.4,1.4,1.4).setTranslation(1.22,41.0,1.22)
              .addChild(new Transform("PORT_PROP").setCenter(-3.3,-104.0,-3.45)
                .addChild(new Shape()
                  .addComments(" PROPELLER ")
                  .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,4,5,6,7,-1,8,9,10,11,4,12,13,14,-1,15,16,17,18,4,19,20,21,-1,22,23,24,25,26,27,28,29,-1,30,31,32,33,34,35,36,37,-1}).setNormalIndex(new int[] {0,1,2,3,4,5,6,7,-1,8,9,10,11,4,12,13,14,-1,15,16,17,18,4,19,20,21,-1,22,23,24,25,26,27,28,29,-1,30,31,32,33,34,35,36,37,-1})
                    .setCoord(new Coordinate().setPoint(getCoordinate_11_114_point()))
                    .setNormal(new Normal().setVector(getNormal_11_115_vector())))
                  .setAppearance(new Appearance("PROPELLER")
                    .setMaterial(new Material().setDiffuseColor(1.0,0.7255,0.0588).setShininess(0.7))))
                .addChild(new TimeSensor("Clock").setCycleInterval(0.8).setLoop(true))
                .addChild(new OrientationInterpolator("PortPath").setKey(new double[] {0.0,0.50,1.0}).setKeyValue(new MFRotation(new double[] {0.0,1.0,0.0,0.0,0.0,1.0,0.0,-3.14,0.0,1.0,0.0,-6.28})))
                .addChild(new ROUTE().setFromNode("Clock").setFromField("fraction_changed").setToNode("PortPath").setToField("set_fraction"))
                .addChild(new ROUTE().setFromNode("PortPath").setFromField("value_changed").setToNode("PORT_PROP").setToField("set_rotation"))))
            .addChild(new Transform().setScale(0.72,1.2,0.72).setTranslation(-3.3,-104.0,-3.45)
              .addComments(" PROPELLER BULLET NOSE (ADDED BY TRANSLATOR) ")
              .addChild(new Shape("BULLET_NOSE")
                .setGeometry(new Sphere())
                .setAppearance(new Appearance().setUSE("PROPELLER"))))
            .addChild(new Transform("SHAFT").setCenter(-3.3,-104.0,-3.45)
              .addChild(new Shape("THIN_SHAFT")
                .addComments(" INNER (THIN) SHAFT ")
                .setGeometry(new IndexedFaceSet().setCoordIndex(new int[] {0,1,2,3,-1,3,2,4,5,-1,5,4,6,7,-1,7,6,8,9,-1,9,8,10,11,-1,11,10,1,0,-1}).setNormalIndex(new int[] {0,0,0,0,-1,1,2,1,3,-1,4,5,4,6,-1,7,7,7,7,-1,8,9,8,10,-1,11,12,11,13,-1})
                  .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-3.17021,-92.5523,-2.75812,-3.17021,-100.011,-3.34043,-3.42021,-100.011,-3.34043,-3.42021,-92.5523,-2.75812,-3.54521,-100.029,-3.12468,-3.54521,-92.5704,-2.54238,-3.42021,-100.047,-2.90894,-3.42021,-92.5886,-2.32663,-3.17021,-100.047,-2.90894,-3.17021,-92.5886,-2.32663,-3.04521,-100.029,-3.12468,-3.04521,-92.5704,-2.54238})))
                  .setNormal(new Normal().setVector(new MFVec3f(new double[] {0.0,0.0778341,-0.996966,-0.866022,0.0389176,-0.49849,-0.866021,0.0389176,-0.49849,-0.866022,0.0389176,-0.49849,-0.866022,-0.0389175,0.498489,-0.866022,-0.0389175,0.498489,-0.866021,-0.0389176,0.49849,0.0,-0.077834,0.996966,0.866022,-0.0389175,0.498489,0.866022,-0.0389174,0.498489,0.866021,-0.0389176,0.49849,0.866022,0.0389176,-0.49849,0.866021,0.0389176,-0.49849,0.866022,0.0389176,-0.49849}))))
                .setAppearance(new Appearance().setUSE("App")))))
          .addChild(new Transform().setTranslation(-3.3,-102.0,-2.2)
            .addComments(" V-BRACKET (ADDED BY TRANSLATOR) ")
            .addChild(new Transform("V_Bracket").setRotation(1.0,0.0,0.0,1.2).setScale(0.2,1.4,0.6)
              .addChild(new Shape()
                .setAppearance(new Appearance().setUSE("HUB"))
                .setGeometry(new Cylinder())))))
        .addChild(new Transform()
          .addComments(" STARBOARD SHAFT ")
          .addChild(new Transform().setTranslation(6.5,0.0,0.0)
            .addChild(new Shape().setUSE("FAT_SHAFT")
              .addComments(" HUB AND PART OF V-BRACKET "))
            .addChild(new Transform()
              .addComments(" TURNING PARTS ")
              .addChild(new Shape()
                .addComments(" INNER (THIN) SHAFT ")
                .setGeometry(new IndexedFaceSet().setCoordIndex(new int[] {0,1,2,3,-1,3,2,4,5,-1,5,4,6,7,-1,7,6,8,9,-1,9,8,10,11,-1,11,10,1,0,-1}).setNormalIndex(new int[] {0,0,0,0,-1,1,2,1,3,-1,4,5,4,6,-1,7,7,7,7,-1,8,9,8,10,-1,11,12,11,13,-1})
                  .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-3.17021,-92.5523,-2.75812,-3.17021,-100.011,-3.34043,-3.42021,-100.011,-3.34043,-3.42021,-92.5523,-2.75812,-3.54521,-100.029,-3.12468,-3.54521,-92.5704,-2.54238,-3.42021,-100.047,-2.90894,-3.42021,-92.5886,-2.32663,-3.17021,-100.047,-2.90894,-3.17021,-92.5886,-2.32663,-3.04521,-100.029,-3.12468,-3.04521,-92.5704,-2.54238})))
                  .setNormal(new Normal().setVector(new MFVec3f(new double[] {0.0,0.0778341,-0.996966,-0.866022,0.0389176,-0.49849,-0.866021,0.0389176,-0.49849,-0.866022,0.0389176,-0.49849,-0.866022,-0.0389175,0.498489,-0.866022,-0.0389175,0.498489,-0.866021,-0.0389176,0.49849,0.0,-0.077834,0.996966,0.866022,-0.0389175,0.498489,0.866022,-0.0389174,0.498489,0.866021,-0.0389176,0.49849,0.866022,0.0389176,-0.49849,0.866021,0.0389176,-0.49849,0.866022,0.0389176,-0.49849}))))
                .setAppearance(new Appearance().setUSE("App")))
              .addChild(new Transform().setScale(1.4,1.4,1.4).setTranslation(-8.0,41.0,1.22)
                .addChild(new Transform("STARB_PROP").setCenter(3.3,-104.0,-3.45)
                  .addChild(new Shape()
                    .addComments(" PROPELLER ")
                    .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,4,5,6,7,-1,8,9,10,3,11,12,13,14,-1,15,16,17,3,18,19,20,21,-1,22,23,24,25,26,27,28,29,-1,30,31,32,33,34,35,36,37,-1}).setNormalIndex(new int[] {0,1,2,3,4,5,6,7,-1,8,9,10,3,11,12,13,14,-1,15,16,17,3,18,19,20,21,-1,22,23,24,25,26,27,28,29,-1,30,31,32,33,34,35,36,37,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {2.9488,-104.035,-1.77509,2.77021,-104.125,-1.93317,2.77559,-104.085,-2.38134,3.29521,-103.694,-3.45248,3.81482,-103.487,-2.33129,3.82021,-103.521,-1.8826,3.64162,-103.637,-1.74172,3.29521,-103.844,-1.65876,1.57136,-103.91,-3.27398,1.65884,-103.994,-3.49802,2.08848,-103.98,-3.63124,2.40962,-103.465,-2.59626,1.9833,-103.474,-2.45233,1.78546,-103.566,-2.58399,1.58331,-103.74,-2.89819,2.57622,-103.762,-5.04261,2.80887,-103.866,-5.03488,3.06902,-103.893,-4.66868,2.22827,-103.346,-4.00992,1.95941,-103.313,-4.36929,2.01572,-103.397,-4.60343,2.23719,-103.573,-4.90364,4.58755,-103.798,-4.60886,4.64386,-103.92,-4.39192,4.37501,-103.947,-4.03203,3.30806,-103.696,-3.42455,3.53425,-103.298,-4.5907,3.7944,-103.264,-4.95638,4.02705,-103.365,-4.9813,4.36608,-103.575,-4.8757,4.81454,-103.968,-2.57167,4.6167,-104.081,-2.45721,4.19038,-104.066,-2.60062,3.30479,-103.698,-3.40679,4.51152,-103.386,-3.5355,4.94116,-103.394,-3.40177,5.02864,-103.515,-3.19492,5.01669,-103.744,-2.8525})))
                      .setNormal(new Normal().setVector(getNormal_12_150_vector())))
                    .setAppearance(new Appearance().setUSE("PROPELLER")))
                  .addChild(new TimeSensor().setUSE("Clock"))
                  .addChild(new OrientationInterpolator("StarbPath").setKey(new double[] {0.0,0.50,1.0}).setKeyValue(new MFRotation(new double[] {0.0,1.0,0.0,0.0,0.0,1.0,0.0,3.14,0.0,1.0,0.0,6.28})))
                  .addChild(new ROUTE().setFromNode("Clock").setFromField("fraction_changed").setToNode("StarbPath").setToField("set_fraction"))
                  .addChild(new ROUTE().setFromNode("StarbPath").setFromField("value_changed").setToNode("STARB_PROP").setToField("set_rotation"))))
              .addChild(new Transform().setScale(0.72,1.2,0.72).setTranslation(-3.3,-104.0,-3.45)
                .addComments(" PROPELLER BULLET NOSE (ADDED BY TRANSLATOR) ")
                .addChild(new Shape().setUSE("BULLET_NOSE")))))
          .addChild(new Transform().setTranslation(3.3,-102.0,-2.1)
            .addComments(" V-BRACKET (ADDED BY TRANSLATOR) ")
            .addChild(new Transform().setUSE("V_Bracket")))))
      .addChild(new Transform()
        .addComments(" MODULES ")
        .addChild(new Transform()
          .addChild(new Transform("GMVLS")
            .addComments(" GMVLS ")
            .addChild(new Shape()
              .addComments(" MOTION ADDED BY TRANSLATOR ")
              .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,-1,4,1,0,5,-1,6,2,1,4,-1,7,3,2,6,-1,5,0,3,7,-1}).setNormalIndex(new int[] {0,0,0,0,-1,1,1,1,1,-1,2,2,2,2,-1,3,3,3,3,-1,4,4,4,4,-1})
                .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-2.7,-70.3,11.598,2.7,-70.3,11.598,2.7,-64.3,11.598,-2.7,-64.3,11.598,2.7,-70.3,10.898,-2.7,-70.3,10.898,2.7,-64.3,10.898,-2.7,-64.3,10.898})))
                .setNormal(new Normal().setVector(new MFVec3f(new double[] {0.0,0.0,1.0,0.0,-1.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,-1.0,0.0,0.0}))))
              .setAppearance(new Appearance().setUSE("PROPELLER")))
            .addChild(new TouchSensor("GMVLSBUT").setDescription("Touch Here to open GMVLS Hutch"))
            .addChild(new TimeSensor("Clock2").setCycleInterval(30))
            .addChild(new PositionInterpolator("GMVLSHutch").setKey(new double[] {0.0,0.12,0.24,0.36,0.48,0.60,0.72,0.84,0.96}).setKeyValue(new MFVec3f(new double[] {0.0,0.0,0.0,0.0,-2.0,0.0,0.0,-4.0,0.0,0.0,-6.0,0.0,0.0,-6.0,0.0,0.0,-6.0,0.0,0.0,-4.0,0.0,0.0,-2.0,0.0,0.0,0.0,0.0})))
            .addChild(new ROUTE().setFromNode("Clock2").setFromField("fraction_changed").setToNode("GMVLSHutch").setToField("set_fraction"))
            .addChild(new ROUTE().setFromNode("GMVLSHutch").setFromField("value_changed").setToNode("GMVLS").setToField("set_translation"))
            .addChild(new ROUTE().setFromNode("GMVLSBUT").setFromField("touchTime").setToNode("Clock2").setToField("set_startTime")))
          .addChild(new Transform().setRotation(0.0,1.0,0.0,3.14).setTranslation(0.0,-67.5,9.0)
            .addComments(" LAUNCHERS ADDED BY TRANSLATOR 0 -67.5 9 NO SCALING ")
            .addChild(new Shape("box")
              .setAppearance(new Appearance()
                .setMaterial(new Material().setDiffuseColor(0.0,0.0,0.0)))
              .setGeometry(new Extrusion().setBeginCap(false).setCrossSection(new MFVec2f(new double[] {-2.5,2.5,2.5,2.5,2.5,-2.5,-2.5,-2.5})).setSolid(false).setSpine(new MFVec3f(new double[] {0.0,0.0,-2.5,0.0,0.0,2.5}))))
            .addChild(new Transform().setRotation(0.0,0.0,1.0,3.14)
              .addChild(new Shape().setUSE("box")))
            .addChild(new Transform()
              .addChild(new Transform().setTranslation(-2.0,-2.0,0.0)
                .addChild(new Transform("Launcher").setRotation(1.0,0.0,0.0,1.57).setScale(0.4,1.0,0.4)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setHeight(5))
                    .setAppearance(new Appearance().setUSE("HUB")))))
              .addChild(new Transform().setTranslation(-2.0,-1.0,0.0)
                .addChild(new Transform().setUSE("Launcher")))
              .addChild(new Transform().setTranslation(-2.0,1.0,0.0)
                .addChild(new Transform().setUSE("Launcher")))
              .addChild(new Transform().setTranslation(-2.0,2.0,0.0)
                .addChild(new Transform().setUSE("Launcher")))
              .addChild(new Transform().setTranslation(-1.0,-2.0,0.0)
                .addChild(new Transform().setUSE("Launcher")))
              .addChild(new Transform().setTranslation(-1.0,-1.0,0.0)
                .addChild(new Transform().setUSE("Launcher")))
              .addChild(new Transform().setTranslation(-1.0,1.0,0.0)
                .addChild(new Transform().setUSE("Launcher")))
              .addChild(new Transform().setTranslation(-1.0,2.0,0.0)
                .addChild(new Transform().setUSE("Launcher")))
              .addChild(new Transform().setTranslation(1.0,-2.0,0.0)
                .addChild(new Transform().setUSE("Launcher")))
              .addChild(new Transform().setTranslation(1.0,-1.0,0.0)
                .addChild(new Transform().setUSE("Launcher")))
              .addChild(new Transform().setTranslation(1.0,1.0,0.0)
                .addChild(new Transform().setUSE("Launcher")))
              .addChild(new Transform().setTranslation(1.0,2.0,0.0)
                .addChild(new Transform().setUSE("Launcher")))
              .addChild(new Transform().setTranslation(2.0,-2.0,0.0)
                .addChild(new Transform().setUSE("Launcher")))
              .addChild(new Transform().setTranslation(2.0,-1.0,0.0)
                .addChild(new Transform().setUSE("Launcher")))
              .addChild(new Transform().setTranslation(2.0,1.0,0.0)
                .addChild(new Transform().setUSE("Launcher")))
              .addChild(new Transform().setTranslation(2.0,2.0,0.0)
                .addChild(new Transform("NO_Top_Launcher").setRotation(1.0,0.0,0.0,1.57).setScale(0.4,1.0,0.4)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setBottom(false).setHeight(5))
                    .setAppearance(new Appearance().setUSE("HUB"))))
                .addChild(new Transform("Moving_Launcher")
                  .addChild(new Transform().setUSE("Launcher"))
                  .addChild(new PositionInterpolator("Launch_move").setKey(new double[] {0.0,0.12,0.24,0.36,0.48,0.60,0.72,0.84,0.96}).setKeyValue(new MFVec3f(new double[] {0.0,0.0,0.0,0.0,0.0,0.25,0.0,0.0,0.5,0.0,0.0,0.5,0.0,0.0,0.5,0.0,0.0,0.5,0.0,0.0,0.25,0.0,0.0,0.0,0.0,0.0,0.0})))
                  .addChild(new ROUTE().setFromNode("Clock2").setFromField("fraction_changed").setToNode("Launch_move").setToField("set_fraction"))
                  .addChild(new ROUTE().setFromNode("Launch_move").setFromField("value_changed").setToNode("Moving_Launcher").setToField("set_translation")))))
            .addChild(new Transform("MISSILE").setRotation(1.0,0.0,0.0,-1.57).setTranslation(2.0,2.0,-2.05)
              .addChild(new Transform("TLAMVIEW")
                .addChild(new Viewpoint().setDescription("SEA SPARROW").setJump(false).setOrientation(0.0,1.0,0.0,3.14).setPosition(0.0,10.0,-30.0)))
              .addChild(new Transform()
                .addChild(new Transform()
                  .addChild(new TimeSensor("VLSCLOCK"))
                  .addChild(new OrientationInterpolator("VLSORIENT").setKey(new double[] {.3,1.0}).setKeyValue(new MFRotation(new double[] {1.0,0.0,0.0,1.57,1.0,0.0,0.0,0.0})))
                  .addChild(new PositionInterpolator("VLSPOSIT").setKey(new double[] {.3,1.0}).setKeyValue(new MFVec3f(new double[] {0.0,7.8,.3,0.0,7.5,0.0}))))
                .addChild(new Transform("THAWK")
                  .addChild(new Transform()
                    .addChild(new ProtoInstance("BGM109", "TLAM").setContainerField("children"))
                    .addChild(new Transform().setRotation(0.0,1.0,0.0,-1.57)
                      .addChild(new Viewpoint().setDescription("RIDE SEA SPARROW").setJump(false).setOrientation(1.0,0.0,0.0,1.0).setPosition(0.0,-20.0,10.0))))
                  .addChild(new TimeSensor("TLAMCLOCK").setCycleInterval(15))
                  .addChild(new PositionInterpolator("TLAMPOSIT").setKey(new double[] {0.0,0.2,0.25,0.3,0.4,0.5,0.6,0.7,0.8,0.95,1.0}).setKeyValue(new MFVec3f(new double[] {0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,55.0,0.0,0.0,200.0,0.0,300.0,300.0,0.0,450.0,100.0,0.0,5000.0,100.0,0.0,10000.0,70.0,0.0,10155.0,5.0,-50.0})))
                  .addChild(new PositionInterpolator("TLAMVIEWPOSIT").setKey(new double[] {0.0,0.2,0.25,0.3,0.4,0.5,0.6,0.7,0.8,0.95,1.0}).setKeyValue(new MFVec3f(new double[] {0.0,10.0,-30.0,0.0,10.0,-30.0,0.0,10.0,-30.0,0.0,10.0,-30.0,0.0,55.0,-100.0,0.0,200.0,-20.0,300.0,300.0,-20.0,450.0,100.0,-20.0,5000.0,100.0,0.0,10000.0,20.0,-70.0,10165.0,85.0,-90.0})))
                  .addChild(new PositionInterpolator("TLAMSCALE").setKey(new double[] {0.0,0.99,1.0}).setKeyValue(new MFVec3f(new double[] {1.0,1.0,1.0,1.0,1.0,1.0,0.01,0.01,0.01})))
                  .addChild(new OrientationInterpolator("TLAMANGLE").setKey(new double[] {0.0,0.2,0.25,0.3,0.4,0.5,0.6,0.7,0.8,0.95,1.0}).setKeyValue(new MFRotation(new double[] {0.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,-1.57,0.0,0.0,1.0,-1.65,0.0,0.0,1.0,-1.75,0.0,0.0,1.0,-1.65,0.0,0.0,1.0,-1.75})))
                  .addChild(new OrientationInterpolator("TLAMVIEWANGLE").setKey(new double[] {0.0,0.2,0.25,0.3,0.4,0.5,0.6,0.7,0.8,0.95,1.0}).setKeyValue(new MFRotation(new double[] {0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.23})))
                  .addChild(new ROUTE().setFromNode("TLAMCLOCK").setFromField("fraction_changed").setToNode("TLAMPOSIT").setToField("set_fraction"))
                  .addChild(new ROUTE().setFromNode("TLAMCLOCK").setFromField("fraction_changed").setToNode("TLAMANGLE").setToField("set_fraction"))
                  .addChild(new ROUTE().setFromNode("TLAMCLOCK").setFromField("fraction_changed").setToNode("TLAMSCALE").setToField("set_fraction"))
                  .addChild(new ROUTE().setFromNode("TLAMPOSIT").setFromField("value_changed").setToNode("THAWK").setToField("set_translation"))
                  .addChild(new ROUTE().setFromNode("TLAMANGLE").setFromField("value_changed").setToNode("THAWK").setToField("set_rotation"))
                  .addChild(new ROUTE().setFromNode("TLAMSCALE").setFromField("value_changed").setToNode("THAWK").setToField("set_scale"))
                  .addChild(new ROUTE().setFromNode("TLAMCLOCK").setFromField("fraction_changed").setToNode("TLAMVIEWANGLE").setToField("set_fraction"))
                  .addChild(new ROUTE().setFromNode("TLAMCLOCK").setFromField("fraction_changed").setToNode("TLAMVIEWPOSIT").setToField("set_fraction"))
                  .addChild(new ROUTE().setFromNode("TLAMVIEWANGLE").setFromField("value_changed").setToNode("TLAMVIEW").setToField("set_rotation"))
                  .addChild(new ROUTE().setFromNode("TLAMVIEWPOSIT").setFromField("value_changed").setToNode("TLAMVIEW").setToField("set_translation"))
                  .addChild(new ROUTE().setFromNode("VLSCLOCK").setFromField("isActive").setToNode("TLAM").setToField("STARTLAUNCH"))
                  .addChild(new ROUTE().setFromNode("GMVLSBUT").setFromField("touchTime").setToNode("TLAM").setToField("THETIME"))
                  .addChild(new ROUTE().setFromNode("GMVLSBUT").setFromField("touchTime").setToNode("VLSCLOCK").setToField("set_startTime"))
                  .addChild(new ROUTE().setFromNode("VLSCLOCK").setFromField("fraction_changed").setToNode("VLSORIENT").setToField("set_fraction"))
                  .addChild(new ROUTE().setFromNode("VLSCLOCK").setFromField("fraction_changed").setToNode("VLSPOSIT").setToField("set_fraction"))
                  .addChild(new ROUTE().setFromNode("GMVLSBUT").setFromField("touchTime").setToNode("TLAMCLOCK").setToField("set_startTime")))))))
        .addChild(new Transform("STIR_AFT").setCenter(0.0,-55.5,15.0)
          .addComments(" STIR AFT ")
          .addChild(new Shape()
            .addComments(" MOTION ADDED BY TRANSLATOR ")
            .setGeometry(new IndexedFaceSet().setCoordIndex(new int[] {0,1,2,3,4,5,-1,6,7,8,9,10,11,-1,12,13,14,15,-1,16,17,13,12,-1,18,19,17,16,-1,15,14,19,18,-1,1,8,16,12,15,-1,20,21,22,23,24,25,26,27,-1,27,26,28,-1,26,25,28,-1,25,24,28,-1,24,23,28,-1,23,22,28,-1,22,21,28,-1,21,20,28,-1,20,27,28,-1}).setNormalIndex(new int[] {0,0,0,0,0,0,-1,1,1,1,1,1,1,-1,2,2,2,2,-1,1,1,1,1,-1,3,3,3,3,-1,0,0,0,0,-1,4,4,4,4,-1,5,6,7,8,9,10,11,8,-1,12,13,14,-1,13,15,14,-1,15,16,14,-1,16,17,14,-1,17,18,14,-1,18,19,14,-1,19,20,14,-1,20,12,14,-1})
              .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {0.583859,-54.7888,15.9148,0.583859,-54.5931,16.9907,0.583859,-56.1023,17.1723,0.583859,-56.1023,16.823,0.583859,-55.2639,16.6274,0.583859,-55.5713,15.9148,-0.583859,-55.5713,15.9148,-0.583859,-55.2639,16.6274,-0.583859,-56.1023,16.823,-0.583859,-56.1023,17.1723,-0.583859,-54.5931,16.9907,-0.583859,-54.7888,15.9148,-0.9,-56.0848,15.9031,-0.9,-56.0848,14.4031,0.9,-56.0848,14.4031,0.9,-56.0848,15.9031,-0.9,-54.7848,15.9031,-0.9,-54.7848,14.4031,0.9,-54.7848,15.9031,0.9,-54.7848,14.4031,-0.707107,-56.1048,17.6785,-5.52104e-017,-56.1048,17.9714,0.707107,-56.1048,17.6785,1,-56.1049,16.9714,0.707107,-56.105,16.2643,-5.52287e-017,-56.105,15.9714,-0.707107,-56.105,16.2643,-1,-56.1049,16.9714,-1.40942e-016,-56.8049,16.9714})))
              .setNormal(new Normal().setVector(new MFVec3f(new double[] {1,0,0,-1,0,0,0,-1,0,0,1,0,0,0,1,0,1,-7.63998e-005,0,1,-7.81448e-005,0,1,-7.68361e-005,0,1,-7.55272e-005,0,1,-7.0324e-005,0,1,-6.51209e-005,0,1,-7.20584e-005,-0.573463,-0.819232,6.20902e-005,-0.405498,-0.819262,-0.405439,0,-1,7.49845e-005,0,-0.819274,-0.573403,0.405498,-0.819262,-0.405439,0.573463,-0.819232,6.20902e-005,0.405499,-0.819201,0.405561,0.0,-0.819188,0.573525,-0.405499,-0.819201,0.405561}))))
            .setAppearance(new Appearance().setUSE("App")))
          .addChild(new TimeSensor("ClockRadar").setCycleInterval(18))
          .addChild(new OrientationInterpolator("STIR_Path").setKey(new double[] {0.0,0.25,0.50,0.75,1.0}).setKeyValue(new MFRotation(new double[] {0.0,0.0,1.0,0.0,0.0,0.0,1.0,2.1,0.0,0.0,1.0,0.0,0.0,0.0,1.0,-2.1,0.0,0.0,1.0,0.0})))
          .addChild(new ROUTE().setFromNode("ClockRadar").setFromField("fraction_changed").setToNode("STIR_Path").setToField("set_fraction"))
          .addChild(new ROUTE().setFromNode("STIR_Path").setFromField("value_changed").setToNode("STIR_AFT").setToField("set_rotation"))
          .addChild(new TouchSensor("STIRBUT").setDescription("Touch Here to ROTATE STIR"))
          .addChild(new ROUTE().setFromNode("STIRBUT").setFromField("touchTime").setToNode("ClockRadar").setToField("set_startTime")))
        .addChild(new Transform("STIR_FWD").setCenter(0.0,-36.7,16.0).setTranslation(0.0,-0.4,0.0)
          .addComments(" STIR FWD ")
          .addChild(new Shape()
            .addComments(" MOTION ADDED BY TRANSLATOR ")
            .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,4,5,-1,6,7,8,9,10,11,-1,12,13,14,15,-1,16,17,13,12,-1,18,19,17,16,-1,15,14,19,18,-1,18,16,12,15,-1,20,21,22,23,24,25,26,27,-1,27,26,28,-1,26,25,28,-1,25,24,28,-1,24,23,28,-1,23,22,28,-1,22,21,28,-1,21,20,28,-1,20,27,28,-1}).setNormalIndex(new int[] {0,0,0,0,0,0,-1,1,1,1,1,1,1,-1,2,2,2,2,-1,1,1,1,1,-1,3,3,3,3,-1,0,0,0,0,-1,4,4,4,4,-1,5,6,7,8,9,10,11,12,-1,13,14,15,-1,14,16,15,-1,16,17,15,-1,17,18,15,-1,18,19,15,-1,19,20,15,-1,20,21,15,-1,21,13,15,-1})
              .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-0.583859,-37.0983,17.3867,-0.583859,-37.2939,18.4626,-0.583859,-35.7848,18.6443,-0.583859,-35.7848,18.295,-0.583859,-36.6232,18.0993,-0.583859,-36.3158,17.3867,0.583859,-36.3158,17.3867,0.583859,-36.6232,18.0993,0.583859,-35.7848,18.295,0.583859,-35.7848,18.6443,0.583859,-37.2939,18.4626,0.583859,-37.0983,17.3867,0.9,-35.8023,17.375,0.9,-35.8023,15.875,-0.9,-35.8023,15.875,-0.9,-35.8023,17.375,0.9,-37.1023,17.375,0.9,-37.1023,15.875,-0.9,-37.1023,17.375,-0.9,-37.1023,15.875,0.707107,-35.7822,19.1504,0.0,-35.7822,19.4433,-0.707107,-35.7822,19.1504,-1.0,-35.7822,18.4433,-0.707107,-35.7821,17.7362,0.0,-35.7821,17.4433,0.707107,-35.7821,17.7362,1.0,-35.7822,18.4433,0.0,-35.0822,18.4434})))
              .setNormal(new Normal().setVector(new MFVec3f(new double[] {-1,0,0,1,0,0,0,1,0,0,-1,0,0,0,1,0,-1,-7.63998e-005,0,-1,-7.81453e-005,0,-1,-7.68362e-005,0,-1,-7.55271e-005,0,-1,-7.63998e-005,0,-1,-7.81448e-005,0,-1,-7.68361e-005,0,-1,-7.55272e-005,0.573463,0.819232,6.16001e-005,0.4055,0.819262,-0.405437,0,1,7.58445e-005,0,0.819275,-0.5734,-0.4055,0.819262,-0.405437,-0.573463,0.819232,6.16001e-005,-0.405499,0.819201,0.405562,0.0,0.819188,0.573525,0.405499,0.819201,0.405562}))))
            .setAppearance(new Appearance().setUSE("App")))
          .addChild(new TimeSensor().setUSE("ClockRadar"))
          .addChild(new OrientationInterpolator("STIR_Path1").setKey(new double[] {0.0,0.25,0.50,0.75,1.0}).setKeyValue(new MFRotation(new double[] {0.0,0.0,1.0,0.0,0.0,0.0,1.0,2.1,0.0,0.0,1.0,0.0,0.0,0.0,1.0,-2.1,0.0,0.0,1.0,0.0})))
          .addChild(new ROUTE().setFromNode("ClockRadar").setFromField("fraction_changed").setToNode("STIR_Path1").setToField("set_fraction"))
          .addChild(new ROUTE().setFromNode("STIR_Path1").setFromField("value_changed").setToNode("STIR_FWD").setToField("set_rotation"))
          .addChild(new TouchSensor().setUSE("STIRBUT")))
        .addChild(new Transform("BASE_PHALANX_AFT").setCenter(-4.0,-81.5,13.0)
          .addComments(" PHALANX AFT ")
          .addChild(new Shape()
            .addComments(" PHALANX BASE ")
            .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,-1,4,5,0,3,-1,6,5,4,7,-1,1,0,5,6,-1,7,4,3,2,-1,8,9,10,11,-1,12,13,8,11,-1,14,13,12,15,-1,9,8,13,14,-1,15,12,11,10,-1,16,17,18,19,-1,20,16,19,21,-1,22,20,21,23,-1,24,22,23,25,-1,26,24,25,27,-1,28,26,27,29,-1,30,31,28,29,-1,32,33,31,30,-1,34,35,33,32,-1,36,37,35,34,-1,38,39,37,36,-1,18,17,39,38,-1,17,16,20,22,24,26,28,31,33,35,37,39,-1,21,19,18,38,36,34,32,30,29,27,25,23,-1,40,41,42,43,-1,44,45,40,43,-1,46,47,48,49,-1,50,47,46,51,-1,42,41,50,51,-1,40,47,50,41,-1,40,45,48,47,-1,51,46,43,42,-1,46,49,44,43,-1,52,53,54,55,-1,56,57,52,55,-1,58,59,60,61,-1,62,59,58,63,-1,54,53,62,63,-1,52,59,62,53,-1,52,57,60,59,-1,63,58,55,54,-1,58,61,56,55,-1,64,65,66,67,-1,68,65,64,69,-1,70,68,69,71,-1,66,65,68,70,-1,71,69,64,67,-1,72,73,74,75,-1,76,73,72,77,-1,78,79,76,77,-1}).setNormalIndex(new int[] {0,0,0,0,-1,1,1,1,1,-1,2,2,2,2,-1,3,3,3,3,-1,4,4,4,4,-1,0,0,0,0,-1,1,1,1,1,-1,2,2,2,2,-1,3,3,3,3,-1,4,4,4,4,-1,5,6,7,8,-1,9,5,8,10,-1,11,9,10,12,-1,13,11,12,14,-1,15,13,14,16,-1,17,15,16,17,-1,18,19,17,17,-1,20,21,19,18,-1,22,23,21,20,-1,24,25,23,22,-1,26,27,25,24,-1,7,6,27,26,-1,2,2,2,2,2,2,2,2,2,2,2,2,-1,28,29,30,31,32,0,33,34,35,36,0,0,-1,37,37,37,37,-1,38,38,38,38,-1,39,39,39,39,-1,40,40,40,40,-1,1,1,1,1,-1,4,4,4,4,-1,4,4,4,4,-1,3,3,3,3,-1,3,3,3,3,-1,37,37,37,37,-1,38,38,38,38,-1,39,39,39,39,-1,40,40,40,40,-1,1,1,1,1,-1,4,4,4,4,-1,4,4,4,4,-1,3,3,3,3,-1,3,3,3,3,-1,3,3,3,3,-1,1,1,1,1,-1,4,4,4,4,-1,2,2,2,2,-1,0,0,0,0,-1,3,3,3,3,-1,41,41,41,41,-1,4,4,4,4,-1})
              .setCoord(new Coordinate().setPoint(getCoordinate_8_290_point()))
              .setNormal(new Normal().setVector(getNormal_8_291_vector())))
            .setAppearance(new Appearance().setUSE("App")))
          .addComments(" ROTATION FOR THE WHOLE PHALANX ")
          .addChild(new TimeSensor("ClockRadarPH").setCycleInterval(18))
          .addChild(new OrientationInterpolator("Base_Phalanx_path").setKey(new double[] {0.0,0.25,0.50,0.75,1.0}).setKeyValue(new MFRotation(new double[] {0.0,0.0,1.0,0.0,0.0,0.0,1.0,2.2,0.0,0.0,1.0,0.0,0.0,0.0,-1.0,2.2,0.0,0.0,1.0,0.0})))
          .addChild(new ROUTE().setFromNode("ClockRadarPH").setFromField("fraction_changed").setToNode("Base_Phalanx_path").setToField("set_fraction"))
          .addChild(new ROUTE().setFromNode("Base_Phalanx_path").setFromField("value_changed").setToNode("BASE_PHALANX_AFT").setToField("set_rotation"))
          .addChild(new Transform().setTranslation(-4.0,-81.5,12.1)
            .addComments(" BASE ADDITION (By Tranlator) ")
            .addChild(new Shape()
              .setAppearance(new Appearance().setUSE("App"))
              .setGeometry(new Box().setSize(2.2,2.1,0.2))))
          .addChild(new TouchSensor("PHALLANXBUT").setDescription("Touch Here to ROTATE PHALANX"))
          .addChild(new ROUTE().setFromNode("PHALLANXBUT").setFromField("touchTime").setToNode("ClockRadarPH").setToField("set_startTime"))
          .addChild(new Transform("PHALANX_AFT").setCenter(-4.0,-81.5,13.0)
            .addComments(" Rotating Parts ")
            .addChild(new Shape()
              .addComments(" MOTION ADDED BY TRANSLATOR ")
              .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,4,5,-1,6,5,4,7,-1,7,4,3,8,-1,8,3,2,9,-1,9,2,1,10,-1,10,1,0,11,-1,11,0,5,6,-1,6,7,8,9,10,11,-1,12,13,14,15,16,17,-1}).setNormalIndex(new int[] {0,0,0,0,0,0,-1,1,1,1,1,-1,2,2,2,2,-1,3,3,3,3,-1,4,4,4,4,-1,5,5,5,5,-1,6,6,6,6,-1,7,7,7,7,7,7,-1,7,7,7,7,7,7,-1})
                .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-4.00388,-81.9147,13.5445,-4.12123,-81.9147,13.4738,-4.11869,-81.9147,13.3368,-3.9988,-81.9147,13.2705,-3.88145,-81.9147,13.3412,-3.88399,-81.9147,13.4782,-3.88399,-80.7923,13.4782,-3.88145,-80.7923,13.3412,-3.9988,-80.7923,13.2705,-4.11869,-80.7923,13.3368,-4.12123,-80.7923,13.4738,-4.00388,-80.7923,13.5445,-3.92737,-81.9149,13.4741,-3.92394,-81.9149,13.3847,-3.99962,-81.9149,13.337,-4.07874,-81.9149,13.3787,-4.08218,-81.9149,13.4681,-4.0065,-81.9149,13.5158})))
                .setNormal(new Normal().setVector(new MFVec3f(new double[] {0.0,-1.0,0.0,0.999829,0.0,0.0185154,0.515951,0.0,-0.856618,-0.48388,0.0,-0.875134,-0.999829,0.0,-0.0185137,-0.515952,0.0,0.856618,0.48388,0.0,0.875134,0.0,1.0,0.0}))))
              .setAppearance(new Appearance()
                .setMaterial(new Material().setDiffuseColor(0.0,0.0,0.0).setShininess(0.5))))
            .addChild(new Shape()
              .addComments(" MOTION ADDED BY TRANSLATOR ")
              .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {6,5,4,7,-1,7,4,3,8,-1,8,3,2,9,-1,9,2,1,10,-1,10,1,0,11,-1,11,0,5,6,-1,6,7,8,9,10,11,-1}).setNormalIndex(new int[] {1,1,1,1,-1,2,2,2,2,-1,3,3,3,3,-1,4,4,4,4,-1,5,5,5,5,-1,6,6,6,6,-1,0,0,0,0,0,0,-1})
                .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-3.92737,-81.9149,13.4741,-3.92394,-81.9149,13.3847,-3.99962,-81.9149,13.337,-4.07874,-81.9149,13.3787,-4.08218,-81.9149,13.4681,-4.0065,-81.9149,13.5158,-4.0065,-82.9764,13.5158,-4.08218,-82.9764,13.4681,-4.07874,-82.9764,13.3787,-3.99962,-82.9764,13.337,-3.92394,-82.9764,13.3847,-3.92737,-82.9764,13.4741})))
                .setNormal(new Normal().setVector(new MFVec3f(new double[] {0.0,-1.0,0.0,-0.532912,0.0,0.846171,-0.999261,0.0,-0.0384323,-0.466346,0.0,-0.884602,0.532912,0.0,-0.846171,0.999261,0.0,0.0384323,0.466346,0.0,0.884602}))))
              .setAppearance(new Appearance()
                .setMaterial(new Material().setDiffuseColor(0.0,0.0,0.0).setShininess(0.5))))
            .addChild(new Shape()
              .addComments(" PHALANX RADAR ")
              .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,-1,3,2,4,5,-1,6,7,8,9,-1,7,10,11,8,-1,12,6,9,13,-1,14,12,13,15,-1,16,14,15,17,-1,18,16,17,19,-1,20,18,19,4,-1,21,20,4,2,-1,22,21,2,1,-1,23,22,1,24,-1,25,23,24,26,-1,10,25,26,11,-1,27,28,29,-1,27,30,28,-1,27,31,30,-1,27,32,31,-1,27,33,32,-1,27,34,33,-1,27,35,34,-1,27,36,35,-1,27,37,36,-1,27,38,37,-1,27,39,38,-1,31,32,22,23,-1,21,22,32,33,-1,23,25,30,31,-1,28,30,25,10,-1,29,7,6,39,-1,29,39,27,-1,38,39,6,12,-1,10,7,29,28,-1,14,37,38,12,-1,36,37,14,16,-1,35,36,16,18,-1,34,35,18,20,-1,33,34,20,21,-1,40,9,8,41,-1,13,9,40,42,-1,15,13,42,43,-1,17,15,43,44,-1,19,17,44,45,-1,4,19,45,5,-1,46,24,1,0,-1,47,26,24,46,-1,48,11,26,47,-1,41,8,11,48,-1}).setNormalIndex(new int[] {0,1,2,3,-1,3,2,4,5,-1,6,7,8,9,-1,7,10,11,8,-1,12,6,9,13,-1,14,12,13,15,-1,16,14,15,17,-1,18,16,17,19,-1,20,18,19,4,-1,21,20,4,2,-1,22,21,2,1,-1,23,22,1,24,-1,25,23,24,26,-1,10,25,26,11,-1,27,28,29,-1,27,30,28,-1,27,31,30,-1,27,32,31,-1,27,33,32,-1,27,34,33,-1,27,35,34,-1,27,36,35,-1,27,37,36,-1,27,38,37,-1,27,39,38,-1,31,32,22,23,-1,21,22,32,33,-1,23,25,30,31,-1,28,30,25,10,-1,29,7,6,39,-1,29,39,27,-1,38,39,6,12,-1,10,7,29,28,-1,14,37,38,12,-1,36,37,14,16,-1,35,36,16,18,-1,34,35,18,20,-1,33,34,20,21,-1,40,9,8,41,-1,13,9,40,42,-1,15,13,42,43,-1,17,15,43,44,-1,19,17,44,45,-1,4,19,45,5,-1,46,24,1,0,-1,47,26,24,46,-1,48,11,26,47,-1,41,8,11,48,-1})
                .setCoord(new Coordinate().setPoint(getCoordinate_9_317_point()))
                .setNormal(new Normal().setVector(getNormal_9_318_vector())))
              .setAppearance(new Appearance("PhalanxRadar")
                .setMaterial(new Material().setAmbientIntensity(0.722876).setDiffuseColor(1.000000,1.000000,1.000000).setShininess(0.062500).setSpecularColor(0.407843,0.407843,0.407843))))
            .addChild(new TimeSensor("ClockPhalanx").setCycleInterval(18))
            .addChild(new OrientationInterpolator("Phalanx_path").setKey(new double[] {0.0,0.25,0.50,0.75,1.0}).setKeyValue(new MFRotation(new double[] {1.0,0.0,0.0,0.0,1.0,0.0,0.0,-0.4,1.0,0.0,0.0,-0.8,1.0,0.0,0.0,-0.4,1.0,0.0,0.0,0.0})))
            .addChild(new ROUTE().setFromNode("ClockPhalanx").setFromField("fraction_changed").setToNode("Phalanx_path").setToField("set_fraction"))
            .addChild(new ROUTE().setFromNode("Phalanx_path").setFromField("value_changed").setToNode("PHALANX_AFT").setToField("set_rotation"))
            .addChild(new ROUTE().setFromNode("PHALLANXBUT").setFromField("touchTime").setToNode("ClockPhalanx").setToField("set_startTime"))
            .addChild(new Shape()
              .addComments(" BARREL ")
              .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,3,2,1,-1}).setNormalIndex(new int[] {0,0,0,0,-1})
                .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-3.55016,-80.9042,13.7209,-3.55016,-81.915,13.7209,-4.45993,-81.915,13.7209,-4.45993,-80.9042,13.7209})))
                .setNormal(new Normal().setVector(new MFVec3f(new double[] {0.0,0.0,1.0}))))
              .setAppearance(new Appearance().setUSE("App")))))
        .addChild(new Transform().setRotation(0.0,0.0,1.0,3.14).setTranslation(-4.0,-104.0,-2.85)
          .addComments(" PHALANX FWD ")
          .addChild(new Transform().setUSE("BASE_PHALANX_AFT")))
        .addChild(new Transform()
          .addComments(" 5 inch GUN ")
          .addChild(new Shape()
            .addComments(" BASE ")
            .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,-1,3,2,4,5,-1,5,4,6,7,-1,7,6,1,0,-1,0,3,5,7,-1}).setNormalIndex(new int[] {0,0,0,0,-1,1,1,1,1,-1,2,2,2,2,-1,3,3,3,3,-1,4,4,4,4,-1})
              .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-2.25,-16.825,6.5,-2.25,-16.825,5.75,2.25,-16.825,5.75,2.25,-16.825,6.5,2.25,-11.575,5.75,2.25,-11.575,6.5,-2.25,-11.575,5.75,-2.25,-11.575,6.5})))
              .setNormal(new Normal().setVector(new MFVec3f(new double[] {0.0,-1.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,-1.0,0.0,0.0,0.0,0.0,1.0}))))
            .setAppearance(new Appearance().setUSE("App")))
          .addChild(new Transform("GUN").setCenter(0.0,-13.5,6.4)
            .addComments(" TURRET ")
            .addChild(new Shape()
              .addComments(" DOME ")
              .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,4,5,6,7,8,-1,9,10,11,12,-1,10,2,1,11,-1,12,11,13,14,-1,11,1,0,13,-1,14,13,15,16,-1,13,0,8,15,-1,16,15,17,18,-1,15,8,17,-1,18,19,20,21,-1,19,7,20,-1,18,17,19,-1,17,8,7,19,-1,21,20,22,-1,20,7,6,22,-1,21,22,23,24,-1,22,6,5,23,-1,24,23,25,26,-1,23,5,4,25,-1,26,25,27,-1,25,4,3,27,-1,26,27,28,29,-1,27,3,28,-1,30,29,28,-1,3,2,30,28,-1,29,30,10,9,-1,30,2,10,-1,31,24,26,32,-1,32,26,29,33,-1,33,29,9,34,-1,34,9,35,-1,35,36,37,38,-1,36,12,37,-1,38,37,39,40,-1,37,12,39,-1,40,41,42,43,-1,41,14,42,-1,40,39,41,-1,39,12,14,41,-1,43,42,44,45,-1,42,14,44,-1,35,46,36,-1,46,9,12,36,-1,47,45,44,-1,14,16,47,44,-1,45,47,48,49,-1,47,16,48,-1,49,16,18,50,-1,50,18,21,51,-1,51,21,24,31,-1}).setNormalIndex(new int[] {0,0,1,2,3,4,5,6,7,-1,8,9,10,11,-1,9,12,13,10,-1,14,15,16,17,-1,15,18,18,16,-1,19,20,21,22,-1,20,23,24,21,-1,22,21,25,26,-1,21,24,25,-1,26,27,28,29,-1,27,30,28,-1,26,25,27,-1,25,24,30,27,-1,29,28,31,-1,28,30,32,31,-1,29,31,33,34,-1,31,32,35,33,-1,34,33,36,37,-1,33,35,38,36,-1,37,36,39,-1,36,38,40,39,-1,37,39,41,42,-1,39,40,41,-1,43,42,41,-1,40,12,43,41,-1,42,43,9,8,-1,43,12,9,-1,44,34,37,45,-1,45,37,42,46,-1,46,42,8,47,-1,47,8,48,-1,49,50,51,52,-1,50,14,51,-1,53,51,54,55,-1,51,14,54,-1,55,56,57,58,-1,56,17,57,-1,55,54,56,-1,54,14,17,56,-1,58,57,59,60,-1,57,17,59,-1,48,61,62,-1,61,8,11,62,-1,63,64,65,-1,19,22,63,65,-1,64,63,66,67,-1,63,22,66,-1,67,22,26,68,-1,68,26,29,69,-1,69,29,34,44,-1})
                .setCoord(new Coordinate().setPoint(getCoordinate_9_342_point()))
                .setNormal(new Normal().setVector(getNormal_9_343_vector())))
              .setAppearance(new Appearance().setUSE("App")))
            .addChild(new Shape()
              .addComments(" FRONT OF BARREL ")
              .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {1,12,13,0,-1,2,14,12,1,-1,3,15,14,2,-1,4,16,15,3,-1,5,16,4,-1,5,17,16,-1,6,18,17,5,-1,7,19,18,6,-1,8,19,7,-1,8,20,19,-1,9,21,20,8,-1,10,22,21,9,-1,11,23,22,10,-1,0,13,23,11,-1,11,10,9,8,7,6,5,4,3,2,1,0,-1}).setNormalIndex(new int[] {6,7,8,9,-1,10,11,7,6,-1,12,13,11,10,-1,0,14,13,12,-1,1,14,0,-1,1,15,14,-1,3,16,17,2,-1,4,18,16,3,-1,5,18,4,-1,5,19,18,-1,20,21,19,5,-1,22,23,21,20,-1,24,25,23,22,-1,9,8,25,24,-1,26,27,28,29,30,31,30,29,28,27,26,31,-1})
                .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {5.55112e-017,-11.8,6.84547,0.75,-12.001,6.84546,1.29904,-12.55,6.84546,1.5,-13.3,6.84546,1.29904,-14.05,6.84546,0.75,-14.599,6.84546,5.55112e-017,-14.8,6.84547,-0.75,-14.599,6.84547,-1.29904,-14.05,6.84548,-1.5,-13.3,6.84548,-1.29904,-12.55,6.84548,-0.75,-12.001,6.84547,0.600691,-12.2596,6.5,-2.34787e-006,-12.0986,6.5,1.04043,-12.6993,6.5,1.20138,-13.3,6.5,1.04043,-13.9007,6.5,0.600693,-14.6195,6.5,-2.30333e-016,-14.7805,6.5,-0.600693,-14.6195,6.5,-1.04043,-13.9007,6.5,-1.20139,-13.3,6.5,-1.04043,-12.6993,6.5,-0.600696,-12.2596,6.5})))
                .setNormal(new Normal().setVector(new MFVec3f(new double[] {0.674822,-0.451667,-0.58362,0.670852,-0.564511,-0.48092,0.239833,-0.895081,-0.375911,0.00566904,-0.944932,-0.327218,-0.470174,-0.82396,-0.316269,-0.698117,-0.492911,-0.519299,0.319023,0.687406,-0.652455,0.435794,0.619985,-0.652459,0.0674164,0.754825,-0.652452,-0.0674219,0.754828,-0.652448,0.619982,0.435796,-0.652461,0.687398,0.319023,-0.652463,0.754815,0.0674174,-0.652464,0.754815,-0.0674179,-0.652464,0.718908,-0.424612,-0.550341,0.808194,-0.494404,-0.31998,-0.0888219,-0.994461,-0.0561974,0.258434,-0.96449,-0.0545043,-0.575039,-0.740002,-0.348893,-0.713277,-0.265488,-0.648654,-0.754838,-0.0674193,-0.652437,-0.754838,0.067419,-0.652437,-0.687419,0.319031,-0.652438,-0.619998,0.435804,-0.65244,-0.435806,0.619995,-0.652441,-0.319031,0.687412,-0.652445,6.38418e-006,0,1,6.59889e-006,0,1,7.11832e-006,0,1,6.42575e-006,0,1,6.6889e-006,0,1,6.99361e-006,0.0,1.0}))))
              .setAppearance(new Appearance().setUSE("App")))
            .addChild(new Transform("BARREL").setCenter(0.0,-12.5,8.8)
              .addComments(" BARREL ")
              .addChild(new Shape()
                .addComments(" MOTION ADDED BY TRANSLATOR ")
                .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,4,5,6,7,8,9,10,11,-1}).setNormalIndex(new int[] {0,1,2,3,4,5,6,7,8,9,10,11,-1})
                  .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {0.00882843,-6.76845,9.43344,0.0604037,-6.76702,9.41714,0.0968877,-6.76353,9.37733,0.108504,-6.75893,9.32468,0.0921412,-6.75443,9.2733,0.0521826,-6.75125,9.23696,-0.000664514,-6.75024,9.22539,-0.0522398,-6.75167,9.24169,-0.0887237,-6.75516,9.28149,-0.10034,-6.75977,9.33414,-0.0839773,-6.76426,9.38552,-0.0440187,-6.76744,9.42186})))
                  .setNormal(new Normal().setVector(new MFVec3f(new double[] {-5.74176e-005,0.996195,0.0871573,-5.71623e-005,0.996194,0.0871629,-5.81642e-005,0.996194,0.0871632,-5.91699e-005,0.996195,0.0871575,-5.93215e-005,0.996194,0.0871583,-6.03466e-005,0.996194,0.0871624,-6.05275e-005,0.996193,0.0871714,-6.09075e-005,0.996194,0.0871631,-5.9982e-005,0.996195,0.0871575,-5.93487e-005,0.996195,0.0871569,-5.89639e-005,0.996194,0.0871594,-5.76709e-005,0.996194,0.0871629}))))
                .setAppearance(new Appearance().setUSE("App")))
              .addChild(new TimeSensor().setUSE("ClockRadar"))
              .addChild(new OrientationInterpolator("BARREL_Path1").setKey(new double[] {0.0,0.25,0.50,0.75,1.0}).setKeyValue(new MFRotation(new double[] {1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.4,1.0,0.0,0.0,0.8,1.0,0.0,0.0,0.4,1.0,0.0,0.0,0.0})))
              .addChild(new ROUTE().setFromNode("ClockRadar").setFromField("fraction_changed").setToNode("BARREL_Path1").setToField("set_fraction"))
              .addChild(new ROUTE().setFromNode("BARREL_Path1").setFromField("value_changed").setToNode("BARREL").setToField("set_rotation"))
              .addChild(new Shape()
                .addComments(" MOTION ADDED BY TRANSLATOR ")
                .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {12,1,0,13,-1,14,2,1,12,-1,15,3,2,14,-1,16,4,3,15,-1,17,5,4,16,-1,18,6,5,17,-1,19,7,6,18,-1,20,8,7,19,-1,21,9,8,20,-1,22,10,9,21,-1,23,11,10,22,-1,13,0,11,23,-1}).setNormalIndex(new int[] {0,1,2,3,-1,4,5,1,0,-1,6,7,5,4,-1,8,9,7,6,-1,10,11,9,8,-1,12,13,11,10,-1,14,15,13,12,-1,16,17,15,14,-1,18,19,17,16,-1,20,21,19,18,-1,22,23,21,20,-1,3,2,23,22,-1})
                  .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {0.00882843,-6.76845,9.43344,0.0604037,-6.76702,9.41714,0.0968877,-6.76353,9.37733,0.108504,-6.75893,9.32468,0.0921412,-6.75443,9.2733,0.0521826,-6.75125,9.23696,-0.000664514,-6.75024,9.22539,-0.0522398,-6.75167,9.24169,-0.0887237,-6.75516,9.28149,-0.10034,-6.75977,9.33414,-0.0839773,-6.76426,9.38552,-0.0440187,-6.76744,9.42186,0.117066,-12.453,9.00806,0.0139154,-12.4559,9.04066,0.190034,-12.446,8.92844,0.213267,-12.4368,8.82315,0.180541,-12.4278,8.7204,0.100624,-12.4215,8.6477,-0.00507054,-12.4195,8.62456,-0.108221,-12.4223,8.65716,-0.181189,-12.4293,8.73677,-0.204422,-12.4385,8.84206,-0.171696,-12.4475,8.94482,-0.0917789,-12.4538,9.01751})))
                  .setNormal(new Normal().setVector(new MFVec3f(new double[] {0.461647,-0.0590777,0.885094,0.611511,-0.0507146,0.789609,0.134072,-0.0681554,0.988625,-0.0436374,-0.06887,0.996671,0.843237,-0.0285805,0.536781,0.925097,-0.0148098,0.379441,0.998879,0.0144497,0.0450658,0.990802,0.0299382,-0.131969,0.886873,0.0584829,-0.458297,0.791023,0.0715389,-0.60759,0.53723,0.0917206,-0.838434,0.379289,0.098846,-0.919984,0.043635,0.105257,-0.993487,-0.13408,0.104542,-0.985441,-0.461655,0.0954644,-0.881908,-0.611515,0.0871013,-0.786424,-0.843237,0.0649676,-0.533602,-0.925098,0.0511968,-0.376261,-0.998882,0.0219371,-0.0418826,-0.990804,0.00644853,0.135153,-0.886875,-0.0220961,0.46148,-0.791022,-0.0351525,0.610777,-0.537229,-0.055334,0.841619,-0.379287,-0.0624593,0.923169}))))
                .setAppearance(new Appearance().setUSE("App"))))
            .addComments(" ROTATION FOR THE WHOLE 5 inch GUN ")
            .addChild(new TimeSensor().setUSE("ClockRadar"))
            .addChild(new OrientationInterpolator("Base_GUN_path").setKey(new double[] {0.0,0.25,0.50,0.75,1.0}).setKeyValue(new MFRotation(new double[] {0.0,0.0,1.0,0.0,0.0,0.0,1.0,2.2,0.0,0.0,1.0,0.0,0.0,0.0,1.0,-2.2,0.0,0.0,1.0,0.0})))
            .addChild(new ROUTE().setFromNode("ClockRadar").setFromField("fraction_changed").setToNode("Base_GUN_path").setToField("set_fraction"))
            .addChild(new ROUTE().setFromNode("Base_GUN_path").setFromField("value_changed").setToNode("GUN").setToField("set_rotation")))
          .addChild(new TouchSensor().setUSE("STIRBUT")))
        .addChild(new Transform("MAST_FWD").setRotation(0.0,-0.71,-0.71,3.14).setScale(0.35,0.5,0.35).setTranslation(0.0,-39.0,15.7)
          .addComments(" MAST FWD ")
          .addChild(new Group()
            .addChild(new Transform().setTranslation(3.0,7.5,0.0)
              .addChild(new Shape()
                .setGeometry(new Cylinder().setHeight(15).setRadius(.5))
                .setAppearance(new Appearance().setUSE("App"))))
            .addChild(new Transform().setTranslation(-3.0,7.5,0.0)
              .addChild(new Shape()
                .setGeometry(new Cylinder().setHeight(15).setRadius(.5))
                .setAppearance(new Appearance().setUSE("App"))))
            .addChild(new Transform().setRotation(1.0,0.0,0.0,.18).setTranslation(3.0,7.65,-6.0)
              .addChild(new Shape()
                .setGeometry(new Cylinder().setHeight(15.5).setRadius(.5))
                .setAppearance(new Appearance().setUSE("App"))))
            .addChild(new Transform().setRotation(1.0,0.0,0.0,.18).setTranslation(-3.0,7.65,-6.0)
              .addChild(new Shape()
                .setGeometry(new Cylinder().setHeight(15.5).setRadius(.5))
                .setAppearance(new Appearance().setUSE("App"))))
            .addChild(new Group()
              .addChild(new Transform().setRotation(1.0,0.0,0.0,2.0).setTranslation(3.0,1.8,-3.75)
                .addChild(new Shape()
                  .setGeometry(new Cylinder().setHeight(7.5).setRadius(.3))
                  .setAppearance(new Appearance().setUSE("App"))))
              .addChild(new Transform().setRotation(1.0,0.0,0.0,-2.0).setTranslation(3.0,1.8,-3.75)
                .addChild(new Shape()
                  .setGeometry(new Cylinder().setHeight(7.5).setRadius(.3))
                  .setAppearance(new Appearance().setUSE("App"))))
              .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setTranslation(3.0,3.5,-3.3)
                .addChild(new Shape()
                  .setGeometry(new Cylinder().setHeight(6.2).setRadius(.3))
                  .setAppearance(new Appearance().setUSE("App"))))
              .addChild(new Transform().setRotation(1.0,0.0,0.0,-2.0).setTranslation(3.0,5.0,-3.75)
                .addChild(new Shape()
                  .setGeometry(new Cylinder().setHeight(7.4).setRadius(.3))
                  .setAppearance(new Appearance().setUSE("App"))))
              .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setTranslation(3.0,7.25,-3.3)
                .addChild(new Shape()
                  .setGeometry(new Cylinder().setHeight(5.75).setRadius(.3))
                  .setAppearance(new Appearance().setUSE("App"))))
              .addChild(new Transform().setRotation(1.0,0.0,0.0,-1.9).setTranslation(3.0,8.5,-3.35)
                .addChild(new Shape()
                  .setGeometry(new Cylinder().setHeight(6.3).setRadius(.3))
                  .setAppearance(new Appearance().setUSE("App"))))
              .addChild(new Transform().setRotation(1.0,0.0,0.0,-1.9).setTranslation(3.0,11.5,-3.0)
                .addChild(new Shape()
                  .setGeometry(new Cylinder().setHeight(5.75).setRadius(.3))
                  .setAppearance(new Appearance().setUSE("App"))))
              .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setTranslation(3.0,7.25,-3.3)
                .addChild(new Shape()
                  .setGeometry(new Cylinder().setHeight(5.75).setRadius(.3))
                  .setAppearance(new Appearance().setUSE("App"))))
              .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setTranslation(3.0,12.75,-2.8)
                .addChild(new Shape()
                  .setGeometry(new Cylinder().setHeight(5).setRadius(.3))
                  .setAppearance(new Appearance().setUSE("App"))))
              .addChild(new Transform().setRotation(1.0,0.0,0.0,-1.9).setTranslation(3.0,13.75,-2.75)
                .addChild(new Shape()
                  .setGeometry(new Cylinder().setHeight(5.25).setRadius(.3))
                  .setAppearance(new Appearance().setUSE("App"))))
              .addChild(new Transform().setTranslation(0.0,15.0,-1.0)
                .addChild(new Shape()
                  .setGeometry(new Box().setSize(6.0,.3,6.5))
                  .setAppearance(new Appearance()
                    .setMaterial(new Material().setDiffuseColor(.5,.5,.5))))
                .addChild(new Transform().setTranslation(0.0,0.0,-4.0)
                  .addChild(new Shape()
                    .setGeometry(new Box().setSize(12.0,.3,.3))
                    .setAppearance(new Appearance()
                      .setMaterial(new Material().setDiffuseColor(.5,.5,.5)))))
                .addChild(new Transform().setScale(1.2,1.2,1.2).setTranslation(0.0,2.2,0.0)
                  .addComments(" RADAR HERE "))))
            .addChild(new Transform().setTranslation(-6.0,0.0,0.0)
              .addChild(new Group()
                .addChild(new Transform().setRotation(1.0,0.0,0.0,2.0).setTranslation(3.0,1.8,-3.75)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setHeight(7.5).setRadius(.3))
                    .setAppearance(new Appearance().setUSE("App"))))
                .addChild(new Transform().setRotation(1.0,0.0,0.0,-2.0).setTranslation(3.0,1.8,-3.75)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setHeight(7.5).setRadius(.3))
                    .setAppearance(new Appearance().setUSE("App"))))
                .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setTranslation(3.0,3.5,-3.3)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setHeight(6.2).setRadius(.3))
                    .setAppearance(new Appearance().setUSE("App"))))
                .addChild(new Transform().setRotation(1.0,0.0,0.0,-2.0).setTranslation(3.0,5.0,-3.75)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setHeight(7.4).setRadius(.3))
                    .setAppearance(new Appearance().setUSE("App"))))
                .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setTranslation(3.0,7.25,-3.3)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setHeight(5.75).setRadius(.3))
                    .setAppearance(new Appearance().setUSE("App"))))
                .addChild(new Transform().setRotation(1.0,0.0,0.0,-1.9).setTranslation(3.0,8.5,-3.35)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setHeight(6.3).setRadius(.3))
                    .setAppearance(new Appearance().setUSE("App"))))
                .addChild(new Transform().setRotation(1.0,0.0,0.0,-1.9).setTranslation(3.0,11.5,-3.0)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setHeight(5.75).setRadius(.3))
                    .setAppearance(new Appearance().setUSE("App"))))
                .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setTranslation(3.0,12.75,-2.8)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setHeight(5).setRadius(.3))
                    .setAppearance(new Appearance().setUSE("App"))))
                .addChild(new Transform().setRotation(1.0,0.0,0.0,-1.9).setTranslation(3.0,13.75,-2.75)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setHeight(5.25).setRadius(.3))
                    .setAppearance(new Appearance().setUSE("App"))))))
            .addChild(new Transform().setTranslation(0.0,12.5,-5.0)
              .addChild(new Shape()
                .setGeometry(new Box().setSize(1.0,25.0,1.0))
                .setAppearance(new Appearance()
                  .setMaterial(new Material().setDiffuseColor(.45,.45,.45)))))
            .addChild(new Group()
              .addChild(new Transform().setRotation(0.0,1.0,0.0,1.57)
                .addChild(new Transform().setRotation(1.0,0.0,0.0,2.0).setTranslation(0.0,1.8,0.0)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setHeight(7).setRadius(.3))
                    .setAppearance(new Appearance().setUSE("App"))))
                .addChild(new Transform().setRotation(1.0,0.0,0.0,-2.0).setTranslation(0.0,1.8,0.0)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setHeight(7).setRadius(.3))
                    .setAppearance(new Appearance().setUSE("App"))))
                .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setTranslation(0.0,3.5,0.0)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setHeight(6.2).setRadius(.3))
                    .setAppearance(new Appearance().setUSE("App"))))
                .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setTranslation(0.0,7.25,0.0)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setHeight(5.75).setRadius(.3))
                    .setAppearance(new Appearance().setUSE("App"))))
                .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setTranslation(0.0,12.75,0.0)
                  .addChild(new Shape()
                    .setGeometry(new Cylinder().setHeight(5).setRadius(.3))
                    .setAppearance(new Appearance().setUSE("App"))))))
            .addChild(new Transform().setRotation(1.0,0.0,0.0,.18).setTranslation(0.0,0.0,-7.3)
              .addChild(new Group()
                .addChild(new Transform().setRotation(0.0,1.0,0.0,1.57)
                  .addChild(new Transform().setRotation(1.0,0.0,0.0,2.0).setTranslation(0.0,1.8,0.0)
                    .addChild(new Shape()
                      .setGeometry(new Cylinder().setHeight(7).setRadius(.3))
                      .setAppearance(new Appearance().setUSE("App"))))
                  .addChild(new Transform().setRotation(1.0,0.0,0.0,-2.0).setTranslation(0.0,1.8,0.0)
                    .addChild(new Shape()
                      .setGeometry(new Cylinder().setHeight(7).setRadius(.3))
                      .setAppearance(new Appearance().setUSE("App"))))
                  .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setTranslation(0.0,3.5,0.0)
                    .addChild(new Shape()
                      .setGeometry(new Cylinder().setHeight(6.2).setRadius(.3))
                      .setAppearance(new Appearance().setUSE("App"))))
                  .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setTranslation(0.0,7.25,0.0)
                    .addChild(new Shape()
                      .setGeometry(new Cylinder().setHeight(5.75).setRadius(.3))
                      .setAppearance(new Appearance().setUSE("App"))))
                  .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setTranslation(0.0,12.75,0.0)
                    .addChild(new Shape()
                      .setGeometry(new Cylinder().setHeight(5).setRadius(.3))
                      .setAppearance(new Appearance().setUSE("App")))))))
            .addChild(new Transform().setTranslation(0.0,21.5,-5.0)
              .addChild(new Shape()
                .setGeometry(new Box().setSize(15.0,.5,.5))
                .setAppearance(new Appearance()
                  .setMaterial(new Material().setDiffuseColor(.67,.67,.67))))
              .addChild(new Transform()
                .addChild(new Shape()
                  .setGeometry(new Cylinder().setHeight(.2).setRadius(2))
                  .setAppearance(new Appearance()
                    .setMaterial(new Material().setDiffuseColor(.5,.5,.5)))))
              .addChild(new Transform().setTranslation(7.3,1.0,0.0)
                .addChild(new Shape()
                  .setGeometry(new Box().setSize(.5,2.0,.5))
                  .setAppearance(new Appearance()
                    .setMaterial(new Material().setDiffuseColor(.6,.6,.6)))))
              .addChild(new Transform().setTranslation(-7.3,1.0,0.0)
                .addChild(new Shape()
                  .setGeometry(new Box().setSize(.5,2.0,.5))
                  .setAppearance(new Appearance()
                    .setMaterial(new Material().setDiffuseColor(.6,.6,.6))))))))
        .addChild(new Transform().setTranslation(0.0,-52.2,16.8)
          .addComments(" MAST AFT ")
          .addChild(new Transform()
            .addChild(new Shape()
              .setGeometry(new Box().setSize(1.5,1.5,1.5))
              .setAppearance(new Appearance()
                .setMaterial(new Material().setDiffuseColor(0.0,0.0,0.0))))
            .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setTranslation(0.0,0.0,0.5)
              .addChild(new Shape()
                .setGeometry(new Cylinder().setRadius(0.1))
                .setAppearance(new Appearance()
                  .setMaterial(new Material().setDiffuseColor(0.0,0.0,0.0))))))
          .addChild(new Transform().setRotation(1.0,0.0,0.0,1.57).setTranslation(0.0,0.0,1.5)
            .addChild(new Group()
              .addChild(new Transform("AntRot").setScale(2.5,.3,1.0)
                .addChild(new Shape()
                  .setGeometry(new Extrusion().setCreaseAngle(0.95).setCrossSection(new MFVec2f(new double[] {1.0,0.0,.92,-.38,.71,-.71,.38,-.92,0.0,-1.0,-.38,-.92,-.71,-.71,-.92,-.38,-1.0,0.0})).setSolid(false).setSpine(new MFVec3f(new double[] {0.0,0.0,0.0,0.0,6.0,0.0})))
                  .setAppearance(new Appearance()
                    .setMaterial(new Material().setDiffuseColor(0.0,0.0,0.0).setTransparency(0.6)))))
              .addChild(new TimeSensor("CLOCK").setCycleInterval(4.0).setLoop(true))
              .addChild(new OrientationInterpolator("AntPathInt").setKey(new double[] {0.0,0.5,1.0}).setKeyValue(new MFRotation(new double[] {0.0,1.0,0.0,0.0,0.0,1.0,0.0,3.14,0.0,1.0,0.0,6.28})))
              .addChild(new ROUTE().setFromNode("CLOCK").setFromField("fraction_changed").setToNode("AntPathInt").setToField("set_fraction"))
              .addChild(new ROUTE().setFromNode("AntPathInt").setFromField("value_changed").setToNode("AntRot").setToField("set_rotation")))))
        .addChild(new Transform()
          .addComments(" HARPOON PORT ")
          .addChild(new Shape("HARPOON_PORT")
            .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,4,5,6,7,-1,8,1,0,9,-1,10,2,1,8,-1,11,3,2,10,-1,12,4,3,11,-1,13,5,4,12,-1,14,6,5,13,-1,15,7,6,14,-1,9,0,7,15,-1,15,14,13,12,11,10,8,9,-1,16,17,18,19,20,21,22,23,-1,23,24,25,16,-1,16,25,26,17,-1,17,26,27,18,-1,18,27,28,19,-1,19,28,29,20,-1,20,29,30,21,-1,21,30,31,22,-1,22,31,24,23,-1,24,31,30,29,28,27,26,25,-1,32,33,34,35,36,37,38,39,-1,40,33,32,41,-1,42,34,33,40,-1,43,35,34,42,-1,44,36,35,43,-1,45,37,36,44,-1,46,38,37,45,-1,47,39,38,46,-1,41,32,39,47,-1,47,46,45,44,43,42,40,41,-1,48,49,50,51,52,53,54,55,-1,55,56,57,48,-1,48,57,58,49,-1,49,58,59,50,-1,50,59,60,51,-1,51,60,61,52,-1,52,61,62,53,-1,53,62,63,54,-1,54,63,56,55,-1,56,63,62,61,60,59,58,57,-1,64,65,66,67,-1,68,69,70,71,-1,72,73,74,75,-1}).setNormalIndex(new int[] {0,1,2,3,0,4,5,6,-1,7,8,7,9,-1,10,11,10,12,-1,13,14,13,15,-1,16,17,16,18,-1,19,20,19,21,-1,22,23,22,24,-1,25,26,25,27,-1,28,29,28,30,-1,31,32,33,34,35,36,37,38,-1,39,40,41,42,43,44,45,46,-1,28,29,28,30,-1,25,26,25,27,-1,47,48,47,49,-1,19,20,19,21,-1,16,17,16,18,-1,50,51,50,52,-1,10,11,10,12,-1,7,8,7,9,-1,0,53,54,55,0,55,54,53,-1,56,57,58,59,56,60,61,62,-1,63,64,63,65,-1,66,67,66,68,-1,69,70,69,71,-1,72,73,72,74,-1,75,20,75,76,-1,77,78,77,79,-1,80,81,80,82,-1,83,29,83,84,-1,45,44,43,85,86,87,88,85,-1,89,90,91,92,93,94,95,96,-1,83,29,83,84,-1,80,81,80,82,-1,97,98,97,99,-1,75,20,75,76,-1,72,73,72,74,-1,100,101,100,102,-1,66,67,66,68,-1,63,64,63,65,-1,103,104,105,106,107,108,109,110,-1,111,111,111,111,-1,112,112,112,112,-1,113,113,113,113,-1})
              .setCoord(new Coordinate().setPoint(getCoordinate_8_574_point()))
              .setNormal(new Normal().setVector(getNormal_8_575_vector())))
            .setAppearance(new Appearance().setUSE("App"))))
        .addChild(new Transform()
          .addComments(" HARPOON STBD ")
          .addChild(new Shape("HARPOON_STBD")
            .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,4,5,6,7,-1,8,7,6,9,-1,9,6,5,10,-1,10,5,4,11,-1,11,4,3,12,-1,12,3,2,13,-1,13,2,1,14,-1,14,1,0,15,-1,15,0,7,8,-1,8,9,10,11,12,13,14,15,-1,16,17,18,19,20,21,22,23,-1,23,24,25,16,-1,22,26,24,23,-1,21,27,26,22,-1,20,28,27,21,-1,19,29,28,20,-1,18,30,29,19,-1,17,31,30,18,-1,16,25,31,17,-1,24,26,27,28,29,30,31,25,-1,32,33,34,35,36,37,38,39,-1,40,39,38,41,-1,41,38,37,42,-1,42,37,36,43,-1,43,36,35,44,-1,44,35,34,45,-1,45,34,33,46,-1,46,33,32,47,-1,47,32,39,40,-1,40,41,42,43,44,45,46,47,-1,48,49,50,51,52,53,54,55,-1,55,56,57,48,-1,54,58,56,55,-1,53,59,58,54,-1,52,60,59,53,-1,51,61,60,52,-1,50,62,61,51,-1,49,63,62,50,-1,48,57,63,49,-1,56,58,59,60,61,62,63,57,-1,64,65,66,67,-1,68,69,70,71,-1,72,73,74,75,-1}).setNormalIndex(new int[] {0,1,2,3,0,1,2,3,-1,4,5,4,6,-1,7,8,7,9,-1,10,11,10,12,-1,13,14,13,15,-1,16,17,16,18,-1,19,20,19,21,-1,22,23,22,24,-1,25,26,25,27,-1,28,29,30,31,32,33,34,35,-1,36,37,38,39,32,40,41,42,-1,43,44,43,45,-1,22,23,22,24,-1,46,47,46,48,-1,16,17,16,18,-1,13,14,13,15,-1,49,50,49,51,-1,7,8,7,9,-1,52,53,52,54,-1,55,56,57,3,58,59,60,3,-1,61,62,63,64,65,66,67,68,-1,69,70,69,71,-1,72,73,72,74,-1,75,76,75,77,-1,78,79,78,80,-1,81,17,81,82,-1,83,84,83,85,-1,86,87,86,88,-1,89,44,89,90,-1,91,92,93,94,95,96,97,98,-1,99,100,101,102,95,103,104,105,-1,106,107,106,108,-1,86,87,86,88,-1,109,110,109,111,-1,81,17,81,82,-1,78,79,78,80,-1,112,113,112,114,-1,72,73,72,74,-1,115,116,115,117,-1,118,119,120,64,121,122,123,124,-1,125,125,125,125,-1,126,126,126,126,-1,127,127,127,127,-1})
              .setCoord(new Coordinate().setPoint(getCoordinate_8_580_point()))
              .setNormal(new Normal().setVector(getNormal_8_581_vector())))
            .setAppearance(new Appearance().setUSE("App"))))
        .addChild(new Transform("PAK_PORT")
          .addComments(" RIB ")
          .addChild(new Shape()
            .addComments(" BODY ")
            .setGeometry(new IndexedFaceSet().setSolid(false).setCoordIndex(new int[] {0,1,2,3,4,-1,5,3,2,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,-1,24,25,7,-1,25,8,7,-1,26,27,28,-1,29,28,30,-1,28,27,30,-1,31,29,32,-1,29,29,30,32,-1,33,31,25,-1,31,31,32,25,-1,24,34,25,-1,34,33,25,-1,35,32,11,-1,11,30,12,-1,15,14,26,-1,13,12,27,-1,13,27,14,-1,27,26,14,-1,30,27,12,-1,32,30,11,-1,32,35,9,-1,25,32,8,-1,32,9,8,-1,36,2,1,24,-1,24,1,0,34,-1,37,38,39,40,-1,40,41,42,37,-1,34,0,4,43,-1,43,4,3,44,-1,22,21,45,-1,22,45,46,-1,21,47,45,-1,19,48,45,-1,18,49,48,-1,16,26,49,-1,16,49,17,-1,49,18,17,-1,26,16,15,-1,18,48,19,-1,19,45,47,-1,46,33,34,-1,46,34,34,43,-1,46,45,31,31,-1,46,31,33,-1,45,48,29,29,-1,45,29,31,-1,48,49,28,-1,48,28,29,-1,28,49,26,-1,23,22,46,-1,23,46,43,-1,50,51,52,53,-1,53,39,38,50,-1}).setNormalIndex(new int[] {0,1,2,2,3,-1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,-1,5,6,7,-1,6,8,7,-1,9,10,11,-1,12,11,13,-1,11,10,13,-1,14,12,15,-1,12,12,13,15,-1,16,14,17,-1,14,14,15,17,-1,18,19,17,-1,19,16,17,-1,20,15,21,-1,21,13,22,-1,23,24,9,-1,25,22,10,-1,25,10,24,-1,10,9,24,-1,13,10,22,-1,15,13,21,-1,15,20,26,-1,6,15,8,-1,15,26,8,-1,27,28,27,5,-1,18,29,30,19,-1,31,32,33,34,-1,35,36,35,37,-1,38,39,40,41,-1,42,43,44,45,-1,46,47,48,-1,46,48,49,-1,47,50,48,-1,51,52,48,-1,53,54,52,-1,55,56,54,-1,55,54,57,-1,54,53,57,-1,56,55,58,-1,53,52,51,-1,51,48,50,-1,59,60,38,-1,59,38,0,41,-1,59,48,14,14,-1,59,14,60,-1,48,52,12,12,-1,48,12,14,-1,52,54,61,-1,52,61,12,-1,61,54,56,-1,62,46,49,-1,62,49,42,-1,63,64,63,65,-1,66,33,32,67,-1})
              .setCoord(new Coordinate().setPoint(getCoordinate_8_586_point()))
              .setNormal(new Normal().setVector(getNormal_8_587_vector())))
            .setAppearance(new Appearance().setUSE("App")))
          .addChild(new Shape()
            .addComments(" GLASS ")
            .setGeometry(new IndexedFaceSet().setCoordIndex(new int[] {2,3,1,0,-1,0,5,4,2,-1}).setNormalIndex(new int[] {0,1,0,2,-1,3,4,3,5,-1})
              .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-5.99777,-52.8003,12.9829,-6.60391,-53.1317,12.9805,-5.99777,-52.2805,12.2562,-6.70229,-52.6691,12.2562,-5.29324,-52.6691,12.2562,-5.39162,-53.1317,12.9805})))
              .setNormal(new Normal().setVector(new MFVec3f(new double[] {-0.408841,0.742589,0.530482,-0.409625,0.742609,0.529849,-0.408057,0.742568,0.531114,0.408861,0.742631,0.530407,0.408378,0.743163,0.530034,0.409344,0.742099,0.530779}))))
            .setAppearance(new Appearance().setUSE("BRIDGE_WINDOW"))))
        .addChild(new Transform().setTranslation(12.0,0.0,0.0)
          .addChild(new Transform().setUSE("PAK_PORT")))))
    .addChild(new Group()
      .addChild(new Transform().setScale(100.0,0.5,100.0).setTranslation(0.0,8.0,0.0)
        .addChild(new Transform().setTranslation(0.0,35.0,100.0)
          .addChild(new Transform().setRotation(0.0,1.0,0.0,-1.57)
            .addChild(new Transform().setTranslation(0.0,150.0,0.0)
              .addChild(new Transform().setRotation(1.0,0.0,0.0,-1.57).setScale(100.0,100.0,10.0).setTranslation(-150.0,-200.0,150.0)
                .addChild(new Group()
                  .addChild(new Transform()
                    .addChild(new Shape()
                      .setGeometry(new Extrusion("flag").setCrossSection(new MFVec2f(new double[] {0.0,3.0,0.0,-3.0})).setSolid(false).setSpine(new MFVec3f(new double[] {0.0,0.0,0.00,0.0,0.2,0.10,0.0,0.4,0.19,0.0,0.6,0.28,0.0,0.8,0.36,0.0,1.0,0.42,0.0,1.2,0.47,0.0,1.4,0.49,0.0,1.6,0.50,0.0,1.8,0.49,0.0,2.0,0.45,0.0,2.2,0.40,0.0,2.4,0.34,0.0,2.6,0.26,0.0,2.8,0.17,0.0,3.0,0.07,0.0,3.2,-0.03,0.0,3.4,-0.13,0.0,3.6,-0.22,0.0,3.8,-0.31,0.0,4.0,-0.38,0.0,4.2,-0.44,0.0,4.4,-0.48,0.0,4.6,-0.50,0.0,4.8,-0.50,0.0,5.0,-0.48,0.0,5.2,-0.44,0.0,5.4,-0.39,0.0,5.6,-0.32,0.0,5.8,-0.23,0.0,6.0,-0.14,0.0,6.2,-0.04,0.0,6.4,0.06,0.0,6.6,0.16,0.0,6.8,0.25,0.0,7.0,0.33,0.0,7.2,0.40,0.0,7.4,0.45,0.0,7.6,0.48,0.0,7.8,0.50,0.0,8.0,0.49,0.0,8.2,0.47,0.0,8.4,0.43,0.0,8.6,0.37,0.0,8.8,0.29,0.0,9.0,0.21,0.0,9.2,0.11,0.0,9.4,0.01,0.0,9.6,-0.09,0.0,9.8,-0.18,0.0,10.0,-0.27,0.0,10.2,-0.35,0.0,10.4,-0.41,0.0,10.6,-0.46,0.0,10.8,-0.49,0.0,11.0,-0.50,0.0,11.2,-0.49,0.0,11.4,-0.46,0.0,11.6,-0.41})))
                      .setAppearance(new Appearance()
                        .setMaterial(new Material().setEmissiveColor(0.1,0.4,1.0).setShininess(0.7).setTransparency(0.1)))))))))))
      .addChild(new TimeSensor("flagclock").setCycleInterval(10).setLoop(true))
      .addChild(new CoordinateInterpolator("flagflutter").setKey(new double[] {0.0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0}).setKeyValue(getflagflutter_4_613_keyValue()))
      .addChild(new ROUTE().setFromNode("flagclock").setFromField("fraction_changed").setToNode("flagflutter").setToField("set_fraction"))
      .addChild(new ROUTE().setFromNode("flagflutter").setFromField("value_changed").setToNode("flag").setToField("set_spine"))));
            }
            catch (Exception ex)
            {       
                System.err.println ("*** Further hints on X3DJSAIL errors and exceptions at");
                System.err.println ("*** https://www.web3d.org/specifications/java/X3DJSAIL.html");
                throw (ex);
            }
	}
	// end of initialize() method


		/** Define subarrays using type int[] */
		private int[] getIndexedFaceSet_6_46_coordIndex_1()
		{
			int[] value = {0,1,2,-1,3,4,5,-1,6,3,5,7,8,9,-1,10,11,9,8,-1,12,13,11,10,-1,14,15,13,12,-1,16,17,15,14,-1,18,17,16,19,-1,20,18,19,21,-1,22,21,23,24,-1,25,20,26,27,-1,22,28,26,-1,21,22,26,20,-1,29,30,31,-1,32,33,34,35,-1,31,36,29,-1,36,37,38,-1,36,39,37,-1,39,40,37,-1,40,41,37,-1,37,41,42,-1,41,43,42,-1,38,37,44,-1,44,37,45,-1,45,37,46,-1,37,42,46,-1,46,42,47,-1,47,42,48,-1,42,49,48,-1,48,1,50,-1,48,49,1,-1,50,1,51,-1,51,1,52,-1,52,1,0,-1,38,29,36,-1,53,29,38,-1,44,54,38,-1,54,53,38,-1,45,54,44,-1,46,55,45,-1,55,54,45,-1,47,55,46,-1,47,56,55,-1,48,56,47,-1,50,56,48,-1,51,56,50,-1,52,57,51,-1,57,56,51,-1,0,57,52,-1,4,58,0,-1,58,57,0,-1,3,58,4,-1,59,60,35,61,-1,62,63,60,59,-1,28,64,63,62,-1,65,63,64,-1,65,60,63,-1,66,60,65,-1,66,35,60,-1,67,61,68,-1,69,59,67,-1,59,61,67,-1,70,62,69,-1,62,59,69,-1,27,62,70,-1,27,28,62,-1,26,28,27,-1,71,68,34,-1,71,67,68,-1,72,67,71,-1,72,69,67,-1,73,69,72,-1,74,70,69,73,-1,25,70,74,-1,25,27,70,-1,75,34,33,76,-1,77,71,34,75,-1,78,71,77,-1,78,72,71,-1,79,73,72,78,-1,80,74,73,79,-1,81,74,80,-1,18,25,81,-1,25,74,81,-1,20,25,18,-1,82,13,15,-1,82,83,13,-1,84,75,85,-1,75,76,85,-1,86,77,84,-1,77,75,84,-1,78,77,86,-1,87,78,86,-1,87,79,78,-1,88,79,87,-1,89,79,88,-1,89,80,79,-1,90,80,89,-1,90,81,80,-1,17,81,90,-1,17,18,81,-1,91,84,92,-1,84,85,92,-1,93,86,91,-1,86,84,91,-1,94,86,93,-1,94,87,86,-1,95,88,94,-1,88,87,94,-1,96,88,95,-1,96,89,88,-1,82,89,96,-1,82,90,89,-1,96,97,83,-1,15,90,82,-1,15,17,90,-1,92,98,91,-1,98,99,91,-1,91,99,93,-1,99,100,93,-1,93,100,94,-1,100,101,94,-1,94,101,95,-1,95,97,96,-1,95,101,97,-1,96,83,82,-1,102,99,103,-1,99,98,103,-1,104,99,102,-1,105,100,104,-1,100,99,104,-1,106,100,105,-1,106,101,100,-1,107,101,106,-1,107,97,101,-1,108,97,107,-1,108,83,97,-1,109,83,108,-1,11,83,109,-1,11,13,83,-1,110,102,111,-1,102,103,111,-1,112,102,110,-1,113,102,112,-1,113,104,102,-1,105,104,113,-1,114,105,113,-1,114,106,105,-1,115,106,114,-1,115,107,106,-1,116,107,115,-1,116,108,107,-1,117,109,116,-1,109,108,116,-1,9,11,117,-1,11,109,117,-1,118,111,119,-1,30,111,118,-1,120,111,30,-1,121,111,120,-1,121,110,111,-1,112,110,121,-1,113,112,121,-1,122,113,121,-1,122,114,113,-1,115,114,122,-1,123,115,122,-1,123,116,115,-1,124,116,123,-1,125,116,124,-1,125,117,116,-1,6,117,125,-1,9,117,6,-1,58,124,57,-1,124,123,57,-1,3,125,58,-1,53,30,29,-1,54,30,53,-1,55,30,54,-1,55,120,30,-1,56,120,55,-1,126,127,128,129,-1,56,121,120,-1,122,121,56,-1,57,122,56,-1,57,123,122,-1,125,124,58,-1,6,125,3,-1,118,119,31,-1,30,118,31,-1,130,131,132,-1,130,133,131,-1,134,135,136,-1,134,137,135,-1,138,139,135,-1,138,140,139,-1,49,43,49,-1,140,141,139,-1,140,142,141,-1,42,142,140,-1,42,43,142,-1,143,140,138,-1,144,140,143,-1,145,140,144,-1,145,42,140,-1,146,42,145,-1,147,42,146,-1,147,49,42,-1,148,1,147,-1,1,49,147,-1,149,1,148,-1,150,1,149,-1,2,1,150,-1,135,137,138,-1,138,137,151,-1,138,152,143,-1,138,151,152,-1,143,152,144,-1,144,153,145,-1,144,152,153,-1,145,153,146,-1,153,154,146,-1,146,154,147,-1,147,154,148,-1,148,154,149,-1,149,155,150,-1,130,126,156,133,-1,133,156,157,158,-1,158,157,64,28,-1,149,154,155,-1,150,155,2,-1,2,159,4,-1,2,155,159,-1,4,159,5,-1,135,135,139,-1,135,134,135,-1,160,156,126,-1,160,157,156,-1,65,157,160,-1,65,64,157,-1,131,133,161,-1,161,158,162,-1,161,133,158,-1,162,158,24};
			return value;
		}
		private int[] getIndexedFaceSet_6_46_coordIndex_2()
		{
			int[] value = {-1,158,28,24,-1,24,28,22,-1,127,132,163,-1,132,131,163,-1,163,131,164,-1,131,161,164,-1,164,161,165,-1,165,161,162,166,-1,166,162,23,-1,162,24,23,-1,167,128,127,168,-1,168,127,163,169,-1,169,163,170,-1,163,164,170,-1,170,164,165,171,-1,171,165,166,172,-1,172,166,173,-1,173,23,19,-1,173,166,23,-1,19,23,21,-1,174,168,175,-1,174,167,168,-1,175,169,176,-1,175,168,169,-1,176,169,170,-1,176,170,177,-1,170,171,177,-1,177,171,178,-1,178,171,179,-1,171,172,179,-1,179,172,180,-1,172,173,180,-1,180,173,16,-1,173,19,16,-1,181,175,182,-1,181,174,175,-1,182,176,183,-1,182,175,176,-1,183,176,184,-1,176,177,184,-1,184,178,185,-1,184,177,178,-1,185,178,186,-1,178,179,186,-1,186,179,187,-1,179,180,187,-1,187,180,14,-1,180,16,14,-1,182,188,181,-1,182,189,188,-1,183,189,182,-1,183,190,189,-1,184,190,183,-1,184,191,190,-1,185,191,184,-1,186,192,185,-1,192,191,185,-1,187,193,186,-1,193,192,186,-1,14,12,187,-1,12,193,187,-1,194,189,195,-1,194,188,189,-1,195,189,196,-1,196,190,197,-1,196,189,190,-1,197,190,198,-1,190,191,198,-1,198,191,199,-1,191,192,199,-1,199,192,200,-1,192,193,200,-1,200,193,201,-1,201,193,10,-1,193,12,10,-1,202,195,203,-1,202,194,195,-1,203,195,204,-1,204,195,205,-1,195,196,205,-1,205,196,197,-1,205,197,206,-1,197,198,206,-1,206,198,207,-1,198,199,207,-1,207,199,208,-1,199,200,208,-1,208,201,209,-1,208,200,201,-1,209,10,8,-1,209,201,10,-1,210,202,211,-1,211,202,212,-1,212,202,213,-1,213,202,214,-1,202,203,214,-1,214,203,204,-1,214,204,205,-1,214,205,215,-1,205,206,215,-1,215,206,207,-1,215,207,216,-1,207,208,216,-1,216,208,217,-1,217,208,218,-1,208,209,218,-1,218,209,7,-1,7,209,8,-1,136,212,134,-1,134,212,137,-1,137,212,151,-1,151,212,152,-1,152,212,153,-1,212,213,153,-1,153,213,154,-1,213,214,154,-1,154,214,215,-1,154,215,155,-1,215,216,155,-1,155,217,159,-1,155,216,217,-1,159,218,5,-1,159,217,218,-1,5,218,7,-1,136,210,211,-1,136,211,212,-1};
			return value;
		}


		/** Define subarrays using type int[] */
		private int[] getIndexedFaceSet_6_46_normalIndex_1()
		{
			int[] value = {0,1,2,-1,3,4,5,-1,6,3,5,7,8,9,-1,10,11,9,8,-1,12,13,11,10,-1,14,15,13,12,-1,16,17,15,14,-1,18,17,16,19,-1,20,18,19,21,-1,22,21,23,24,-1,25,20,26,27,-1,22,28,26,-1,21,22,26,20,-1,29,30,31,-1,32,32,33,34,-1,31,35,29,-1,35,36,37,-1,35,38,36,-1,38,39,36,-1,39,40,36,-1,36,40,41,-1,40,42,41,-1,37,36,43,-1,43,36,44,-1,44,36,45,-1,36,41,45,-1,45,41,46,-1,46,41,47,-1,41,48,47,-1,47,1,49,-1,47,48,1,-1,49,1,50,-1,50,1,51,-1,51,1,0,-1,37,29,35,-1,52,29,37,-1,43,53,37,-1,53,52,37,-1,44,53,43,-1,45,54,44,-1,54,53,44,-1,46,54,45,-1,46,55,54,-1,47,55,46,-1,49,55,47,-1,50,55,49,-1,51,56,50,-1,56,55,50,-1,0,56,51,-1,4,57,0,-1,57,56,0,-1,3,57,4,-1,58,59,34,60,-1,61,62,59,58,-1,28,63,62,61,-1,64,62,63,-1,64,59,62,-1,65,59,64,-1,65,34,59,-1,66,60,67,-1,68,58,66,-1,58,60,66,-1,69,61,68,-1,61,58,68,-1,27,61,69,-1,27,28,61,-1,26,28,27,-1,70,67,33,-1,70,66,67,-1,71,66,70,-1,71,68,66,-1,72,68,71,-1,73,69,68,72,-1,25,69,73,-1,25,27,69,-1,74,33,32,75,-1,76,70,33,74,-1,77,70,76,-1,77,71,70,-1,78,72,71,77,-1,79,73,72,78,-1,80,73,79,-1,18,25,80,-1,25,73,80,-1,20,25,18,-1,81,13,15,-1,81,82,13,-1,83,74,84,-1,74,75,84,-1,85,76,83,-1,76,74,83,-1,77,76,85,-1,86,77,85,-1,86,78,77,-1,87,78,86,-1,88,78,87,-1,88,79,78,-1,89,79,88,-1,89,80,79,-1,17,80,89,-1,17,18,80,-1,90,83,91,-1,83,84,91,-1,92,85,90,-1,85,83,90,-1,93,85,92,-1,93,86,85,-1,94,87,93,-1,87,86,93,-1,95,87,94,-1,95,88,87,-1,81,88,95,-1,81,89,88,-1,95,96,82,-1,15,89,81,-1,15,17,89,-1,91,97,90,-1,97,98,90,-1,90,98,92,-1,98,99,92,-1,92,99,93,-1,99,100,93,-1,93,100,94,-1,94,96,95,-1,94,100,96,-1,95,82,81,-1,101,98,102,-1,98,97,102,-1,103,98,101,-1,104,99,103,-1,99,98,103,-1,105,99,104,-1,105,100,99,-1,106,100,105,-1,106,96,100,-1,107,96,106,-1,107,82,96,-1,108,82,107,-1,11,82,108,-1,11,13,82,-1,109,101,110,-1,101,102,110,-1,111,101,109,-1,112,101,111,-1,112,103,101,-1,104,103,112,-1,113,104,112,-1,113,105,104,-1,114,105,113,-1,114,106,105,-1,115,106,114,-1,115,107,106,-1,116,108,115,-1,108,107,115,-1,9,11,116,-1,11,108,116,-1,117,110,118,-1,30,110,117,-1,119,110,30,-1,120,110,119,-1,120,109,110,-1,111,109,120,-1,112,111,120,-1,121,112,120,-1,121,113,112,-1,114,113,121,-1,122,114,121,-1,122,115,114,-1,123,115,122,-1,124,115,123,-1,124,116,115,-1,6,116,124,-1,9,116,6,-1,57,123,56,-1,123,122,56,-1,3,124,57,-1,52,30,29,-1,53,30,52,-1,54,30,53,-1,54,119,30,-1,55,119,54,-1,125,126,127,127,-1,55,120,119,-1,121,120,55,-1,56,121,55,-1,56,122,121,-1,124,123,57,-1,6,124,3,-1,117,118,31,-1,30,117,31,-1,128,129,130,-1,128,131,129,-1,132,133,134,-1,132,135,133,-1,136,137,133,-1,136,138,137,-1,48,42,48,-1,138,139,137,-1,138,140,139,-1,41,140,138,-1,41,42,140,-1,141,138,136,-1,142,138,141,-1,143,138,142,-1,143,41,138,-1,144,41,143,-1,145,41,144,-1,145,48,41,-1,146,1,145,-1,1,48,145,-1,147,1,146,-1,148,1,147,-1,2,1,148,-1,133,135,136,-1,136,135,149,-1,136,150,141,-1,136,149,150,-1,141,150,142,-1,142,151,143,-1,142,150,151,-1,143,151,144,-1,151,152,144,-1,144,152,145,-1,145,152,146,-1,146,152,147,-1,147,153,148,-1,128,125,154,131,-1,131,154,155,156,-1,156,155,63,28,-1,147,152,153,-1,148,153,2,-1,2,157,4,-1,2,153,157,-1,4,157,5,-1,133,133,137,-1,133,132,133,-1,158,154,125,-1,158,155,154,-1,64,155,158,-1,64,63,155,-1,129,131,159,-1,159,156,160,-1,159,131,156,-1,160,156,24};
			return value;
		}
		private int[] getIndexedFaceSet_6_46_normalIndex_2()
		{
			int[] value = {-1,156,28,24,-1,24,28,22,-1,126,130,161,-1,130,129,161,-1,161,129,162,-1,129,159,162,-1,162,159,163,-1,163,159,160,164,-1,164,160,23,-1,160,24,23,-1,165,127,126,166,-1,166,126,161,167,-1,167,161,168,-1,161,162,168,-1,168,162,163,169,-1,169,163,164,170,-1,170,164,171,-1,171,23,19,-1,171,164,23,-1,19,23,21,-1,172,166,173,-1,172,165,166,-1,173,167,174,-1,173,166,167,-1,174,167,168,-1,174,168,175,-1,168,169,175,-1,175,169,176,-1,176,169,177,-1,169,170,177,-1,177,170,178,-1,170,171,178,-1,178,171,16,-1,171,19,16,-1,179,173,180,-1,179,172,173,-1,180,174,181,-1,180,173,174,-1,181,174,182,-1,174,175,182,-1,182,176,183,-1,182,175,176,-1,183,176,184,-1,176,177,184,-1,184,177,185,-1,177,178,185,-1,185,178,14,-1,178,16,14,-1,180,186,179,-1,180,187,186,-1,181,187,180,-1,181,188,187,-1,182,188,181,-1,182,189,188,-1,183,189,182,-1,184,190,183,-1,190,189,183,-1,185,191,184,-1,191,190,184,-1,14,12,185,-1,12,191,185,-1,192,187,193,-1,192,186,187,-1,193,187,194,-1,194,188,195,-1,194,187,188,-1,195,188,196,-1,188,189,196,-1,196,189,197,-1,189,190,197,-1,197,190,198,-1,190,191,198,-1,198,191,199,-1,199,191,10,-1,191,12,10,-1,200,193,201,-1,200,192,193,-1,201,193,202,-1,202,193,203,-1,193,194,203,-1,203,194,195,-1,203,195,204,-1,195,196,204,-1,204,196,205,-1,196,197,205,-1,205,197,206,-1,197,198,206,-1,206,199,207,-1,206,198,199,-1,207,10,8,-1,207,199,10,-1,208,200,209,-1,209,200,210,-1,210,200,211,-1,211,200,212,-1,200,201,212,-1,212,201,202,-1,212,202,203,-1,212,203,213,-1,203,204,213,-1,213,204,205,-1,213,205,214,-1,205,206,214,-1,214,206,215,-1,215,206,216,-1,206,207,216,-1,216,207,7,-1,7,207,8,-1,134,210,132,-1,132,210,135,-1,135,210,149,-1,149,210,150,-1,150,210,151,-1,210,211,151,-1,151,211,152,-1,211,212,152,-1,152,212,213,-1,152,213,153,-1,213,214,153,-1,153,215,157,-1,153,214,215,-1,157,216,5,-1,157,215,216,-1,5,216,7,-1,134,208,209,-1,134,209,210,-1};
			return value;
		}


		/** Define subarrays using type double[] */
		private double[] getCoordinate_7_46_point_1()
		{
			double[] value = {-0.175693,-5.996343,-3.715493,-0.000000,-0.015209,-3.663296,0.175693,-5.996404,-3.715493,-0.310738,-12.008707,-3.767962,0.000000,-5.996547,-3.715495,0.310738,-12.008767,-3.767962,-0.452313,-17.354416,-3.814613,0.452313,-17.354477,-3.814614,0.565574,-22.805516,-3.862184,-0.565574,-22.805456,-3.862184,0.763780,-28.255045,-3.909742,-0.763780,-28.254984,-3.909741,0.707150,-33.695847,-3.957223,-0.707150,-33.695786,-3.957222,0.678835,-39.158378,-4.004894,-0.678835,-39.158317,-4.004893,0.650520,-44.616364,-4.052525,-0.650520,-44.616303,-4.052524,-0.678835,-50.049102,-4.099935,0.678835,-50.049102,-4.099935,-0.215967,-70.757007,-4.100000,0.219447,-70.757008,-4.100000,0.213106,-95.480427,-4.100000,0.219447,-70.757006,-3.626379,0.213106,-95.479213,-2.073747,-0.215967,-70.757005,-3.624889,-0.209626,-95.480426,-4.100000,-0.209626,-95.479212,-2.066808,0.000000,-104.148162,-1.047058,-2.377744,-12.009191,2.403636,-3.538666,-17.355061,2.488581,-5.011208,-12.001490,6.023425,-7.417842,-109.773358,5.150206,-7.417842,-70.757007,5.150206,-7.417842,-70.757007,2.743418,-7.417842,-108.942351,2.741587,-4.287353,-5.970437,6.202057,-1.018253,-0.008426,3.801166,-2.123730,-5.987670,3.678356,-3.102915,-0.003477,6.378513,-2.002222,3.001739,6.467086,-1.073537,4.524930,6.511759,-0.000000,1.877531,2.495625,0.000150,4.892815,6.522045,-1.452150,-5.988929,2.656062,-1.045364,-5.989993,1.792201,-0.798786,-5.991032,0.948981,-0.727357,-5.991901,0.243468,-0.707196,-5.994421,-1.802750,-0.000000,-0.006674,0.003828,-0.653646,-5.995051,-2.314245,-0.529341,-5.995876,-2.984413,-0.370015,-5.996441,-3.442858,-2.037962,-12.009191,1.752387,-1.669865,-12.009191,0.648096,-1.499974,-12.009191,-0.569456,-1.273453,-12.009191,-2.013529,-1.046932,-12.009191,-2.834669,-0.707150,-12.009191,-3.344342,-6.823224,-104.148162,0.840510,-6.823224,-108.289872,0.839869,-7.417842,-104.148162,2.743418,-4.727902,-104.148162,-0.669763,-4.727902,-107.768349,-0.670969,0.000000,-108.624840,-1.050170,0.000469,-110.773107,5.146737,-7.414627,-109.788425,5.150206,-6.790959,-95.479214,0.823183,-7.417842,-95.479214,2.743418,-5.164209,-95.479214,-0.354795,-4.059917,-95.479214,-1.119305,-6.823224,-70.757007,-0.144729,-6.426812,-70.757007,-0.975751,-5.832193,-70.757007,-1.910152,-4.727902,-70.757007,-2.674661,-7.417842,-50.049101,2.743418,-7.417842,-50.049101,5.150206,-6.823224,-50.049101,-0.144729,-6.426812,-50.049101,-1.447226,-5.832193,-50.049101,-2.381627,-4.727902,-50.049101,-3.146136,-3.963393,-50.049101,-3.400972,-3.312144,-39.159634,-3.259397,-3.057308,-33.697181,-3.202766,-7.304582,-44.617788,2.800048,-7.389527,-44.617788,5.235152,-6.087030,-44.617788,-0.965868,-5.605672,-44.617788,-1.900269,-5.209260,-44.617788,-2.409942,-4.331490,-44.617788,-3.061190,-3.510350,-44.617788,-3.344342,-6.993115,-39.159634,2.856678,-7.304582,-39.159634,5.320097,-5.775563,-39.159634,-0.626087,-5.180945,-39.159634,-1.843638,-4.586326,-39.159634,-2.523202,-4.048338,-39.159634,-2.976245,-3.765187,-33.697181,-2.721408,-7.078060,-33.697418,5.433358,-6.511757,-33.697181,3.026569};
			return value;
		}
		private double[] getCoordinate_7_46_point_2()
		{
			double[] value = {-4.954424,-33.697181,-1.050814,-4.501381,-33.697181,-1.843638,-5.860509,-28.256459,3.139830,-6.766594,-28.256459,5.574934,-5.265890,-28.256459,1.780702,-4.586326,-28.256459,0.110108,-3.935078,-28.256459,-1.447226,-3.453720,-28.256459,-2.296681,-2.830787,-28.256459,-2.919615,-2.037962,-28.256459,-3.400972,-5.067684,-22.806762,3.224775,-6.285236,-22.806762,5.716510,-4.246545,-22.806762,1.780702,-3.821817,-22.806762,0.761356,-3.113938,-22.806762,-1.333966,-2.745841,-22.806762,-2.126790,-2.122908,-22.806762,-3.004560,-1.131877,-22.806762,-3.599178,-4.161599,-17.355061,3.394666,-5.633987,-17.355061,5.858085,-3.142253,-17.355061,1.780702,-2.830787,-17.355061,1.072823,-2.066277,-17.355061,-1.928584,-1.839756,-17.355061,-2.409942,-1.499974,-17.355061,-2.947930,-0.990301,-17.355061,-3.485918,7.417842,-108.940758,2.734649,7.417842,-70.757007,2.736479,7.417842,-70.757007,5.143268,7.417842,-109.770969,5.143268,7.417842,-104.148162,2.736479,6.790959,-95.479214,0.816244,7.417842,-95.479214,2.736479,6.823224,-104.148162,0.833572,3.170569,-12.009191,3.529304,4.286813,-5.970492,6.196975,5.010901,-12.001520,6.017486,2.377744,-12.009191,2.396697,2.123730,-5.987670,3.671418,3.102589,-0.004005,6.374821,1.018253,-0.008288,3.794227,2.046886,3.000509,6.464650,1.075337,4.524093,6.510461,1.452150,-5.988929,2.649123,1.045364,-5.989993,1.785263,0.798786,-5.991032,0.942043,0.727357,-5.991901,0.236530,0.707196,-5.994421,-1.809689,0.653646,-5.995051,-2.321184,0.529341,-5.995876,-2.991352,0.370015,-5.996441,-3.449796,2.037962,-12.009191,1.745449,1.669865,-12.009191,0.641157,1.499974,-12.009191,-0.576395,1.273453,-12.009191,-2.020468,1.046932,-12.009191,-2.841608,6.823224,-108.288279,0.832931,4.727902,-107.766901,-0.677908,4.727902,-104.148162,-0.676701,0.707150,-12.009191,-3.351280,7.420254,-109.788069,5.143268,5.164209,-95.479214,-0.361734,4.059917,-95.479214,-1.126243,6.823224,-70.757007,-0.151667,6.426812,-70.757007,-0.982690,5.832193,-70.757007,-1.917090,4.727902,-70.757007,-2.681599,7.417842,-50.049101,5.143268,7.417842,-50.049101,2.736479,6.823224,-50.049101,-0.151667,6.426812,-50.049101,-1.454165,5.832193,-50.049101,-2.388565,4.727902,-50.049101,-3.153074,3.963393,-50.049101,-3.407911,7.389527,-44.617788,5.228213,7.304582,-44.617788,2.793110,6.087030,-44.617788,-0.972807,5.605672,-44.617788,-1.907207,5.209260,-44.617788,-2.416880,4.331490,-44.617788,-3.068129,3.510350,-44.617788,-3.351280,7.304582,-39.159634,5.313159,6.993115,-39.159634,2.849740,5.775563,-39.159634,-0.633025,5.180945,-39.159634,-1.850577,4.586326,-39.159634,-2.530141,4.048338,-39.159634,-2.983183,3.312144,-39.159634,-3.266335,7.078060,-33.697388,5.426420,6.511757,-33.697181,3.019631,4.954424,-33.697181,-1.057752,4.501381,-33.697181,-1.850577,3.765187,-33.697181,-2.728347,3.057308,-33.697181,-3.209705,6.766594,-28.256459,5.567995,5.860509,-28.256459,3.132891,5.265890,-28.256459,1.773764,4.586326,-28.256459,0.103169,3.935078,-28.256459,-1.454165,3.453720,-28.256459,-2.303620};
			return value;
		}
		private double[] getCoordinate_7_46_point_3()
		{
			double[] value = {2.830787,-28.256459,-2.926553,2.037962,-28.256459,-3.407911,6.285236,-22.806762,5.709571,5.067684,-22.806762,3.217837,4.246545,-22.806762,1.773764,3.821817,-22.806762,0.754418,3.113938,-22.806762,-1.340904,2.745841,-22.806762,-2.133729,2.122908,-22.806762,-3.011499,1.131877,-22.806762,-3.606117,5.633987,-17.355061,5.851147,4.161599,-17.355061,3.387728,3.538666,-17.355061,2.481643,3.142253,-17.355061,1.773764,2.830787,-17.355061,1.065885,2.066277,-17.355061,-1.935522,1.839756,-17.355061,-2.416880,1.499974,-17.355061,-2.954868,0.990301,-17.355061,-3.492856};
			return value;
		}


		/** Define subarrays using type double[] */
		private double[] getNormal_7_47_vector_1()
		{
			double[] value = {-0.552225,0.010850,-0.833625,-0.002075,0.200822,-0.979626,0.547932,0.010796,-0.836453,-0.424719,0.029829,-0.904833,-0.001299,-0.006011,-0.999981,0.419924,0.029665,-0.907074,-0.375395,0.019979,-0.926649,0.368555,0.019850,-0.929394,0.210718,0.014551,-0.977439,-0.215663,0.014683,-0.976357,0.245159,0.018184,-0.969312,-0.248762,0.018522,-0.968387,0.177119,0.010841,-0.984130,-0.178659,0.010855,-0.983851,0.156943,0.011391,-0.987542,-0.158363,0.011401,-0.987315,0.137354,0.012940,-0.990438,-0.138663,0.012976,-0.990255,-0.336998,-0.007396,-0.941476,0.336101,-0.007326,-0.941797,-0.707040,-0.007991,-0.707128,0.707041,-0.007931,-0.707128,0.711359,-0.127013,-0.691257,0.589838,-0.042161,-0.806420,0.656076,-0.060806,-0.752241,-0.590415,-0.042249,-0.805993,-0.711374,-0.126872,-0.691268,-0.656231,-0.060550,-0.752127,-0.000588,-0.124599,-0.992207,-0.838795,0.155193,-0.521860,-0.878040,0.165702,-0.448986,-0.800704,0.148792,-0.580289,-1.000000,-0.000000,0.000000,-0.994851,-0.000000,-0.101348,-0.867650,-0.413484,-0.276071,-0.762813,0.146033,-0.629913,-0.841558,0.199133,-0.502123,-0.849320,0.152612,-0.505337,-0.746195,0.206753,-0.632808,-0.709253,0.326185,-0.624951,-0.590276,0.494389,-0.638086,-0.000206,0.686520,-0.727111,0.003550,0.836862,-0.547402,-0.859260,0.173011,-0.481394,-0.939853,0.145736,-0.308929,-0.959917,0.143950,-0.240493,-0.990046,0.119231,-0.074780,-0.992674,0.106543,-0.056980,-0.000042,0.569902,0.821713,-0.986072,0.084997,-0.142963,-0.963681,0.070834,-0.257490,-0.887452,0.045753,-0.458623,-0.909275,0.155904,-0.385893,-0.931472,0.185903,-0.312729,-0.963673,0.167908,-0.207703,-0.973073,0.116864,-0.198675,-0.893598,0.078711,-0.441913,-0.678471,0.038225,-0.733632,-0.770828,0.000800,-0.637043,-0.444505,-0.703558,-0.554456,-0.953201,0.001023,-0.302335,-0.367632,-0.025564,-0.929620,-0.284142,-0.561329,-0.777286,-0.000507,-0.574995,-0.818157,-0.014778,-0.933482,-0.358321,-0.074317,-0.938725,-0.336559,-0.856643,-0.013576,-0.515732,-0.961578,-0.004470,-0.274495,-0.629508,-0.028951,-0.776455,-0.370412,-0.045949,-0.927730,-0.949889,-0.006905,-0.312512,-0.829323,-0.029858,-0.557971,-0.720163,-0.039383,-0.692686,-0.379249,-0.040867,-0.924392,-0.996070,0.009831,-0.088020,-0.999997,0.002607,0.000000,-0.965203,0.038082,-0.258714,-0.903623,0.040560,-0.426405,-0.712756,0.043566,-0.700058,-0.423276,0.017939,-0.905823,-0.249517,0.000108,-0.968370,-0.315871,0.023693,-0.948506,-0.429065,0.041906,-0.902301,-0.984574,0.043169,-0.169557,-0.999629,0.014171,-0.023241,-0.925673,0.078376,-0.370118,-0.840133,0.081604,-0.536206,-0.697909,0.065739,-0.713163,-0.466215,0.043770,-0.883588,-0.287004,0.027285,-0.957541,-0.967841,0.070080,-0.241606,-0.994681,0.039247,-0.095236,-0.921308,0.091747,-0.377854,-0.837916,0.085244,-0.539102,-0.711950,0.076879,-0.698009,-0.532014,0.049999,-0.845258,-0.670209,0.081061,-0.737732,-0.978725,0.066018,-0.194267,-0.941550,0.103949,-0.320434,-0.902328,0.123298,-0.413039};
			return value;
		}
		private double[] getNormal_7_47_vector_2()
		{
			double[] value = {-0.814097,0.106590,-0.570864,-0.906960,0.134045,-0.399320,-0.947052,0.090723,-0.307997,-0.914123,0.145601,-0.378391,-0.918207,0.154346,-0.364792,-0.886517,0.135368,-0.442450,-0.789566,0.108240,-0.604044,-0.604907,0.072864,-0.792955,-0.459751,0.047704,-0.886765,-0.873571,0.155237,-0.461275,-0.879718,0.142466,-0.453651,-0.885666,0.163742,-0.434493,-0.923495,0.171713,-0.343032,-0.917379,0.146381,-0.370119,-0.865832,0.126033,-0.484200,-0.691772,0.081363,-0.717517,-0.461393,0.030811,-0.886661,-0.834846,0.126754,-0.535691,-0.851383,0.127259,-0.508873,-0.910925,0.140759,-0.387817,-0.914585,0.162064,-0.370499,-0.932321,0.138068,-0.334237,-0.860790,0.103534,-0.498319,-0.795580,0.082877,-0.600153,-0.628063,0.048221,-0.776667,0.867808,-0.413136,-0.276096,0.994851,0.000000,-0.101348,1.000000,0.000000,0.000000,0.953199,0.001001,-0.302342,0.856643,-0.013576,-0.515732,0.961578,-0.004470,-0.274495,0.770799,0.000817,-0.637078,0.822422,0.150102,-0.548718,0.759641,0.140897,-0.634897,0.802202,0.147961,-0.578428,0.835549,0.156976,-0.526514,0.842359,0.153497,-0.516595,0.764079,0.203629,-0.612143,0.845220,0.204211,-0.493864,0.789516,0.370430,-0.489333,0.625867,0.519146,-0.582046,0.859260,0.173009,-0.481394,0.939853,0.145735,-0.308929,0.959840,0.144083,-0.240723,0.990044,0.119250,-0.074780,0.992668,0.106592,-0.057001,0.986065,0.085079,-0.142962,0.963673,0.070952,-0.257488,0.884640,0.045402,-0.464059,0.909275,0.155904,-0.385893,0.931472,0.185903,-0.312729,0.963673,0.167908,-0.207703,0.973073,0.116864,-0.198675,0.892930,0.078584,-0.443284,0.518168,-0.623762,-0.585170,0.239375,-0.681083,-0.691972,0.367193,-0.025614,-0.929792,0.676323,0.038464,-0.735600,0.050163,-0.936928,-0.345903,0.629508,-0.028951,-0.776455,0.370305,-0.045900,-0.927776,0.949889,-0.006905,-0.312512,0.829323,-0.029858,-0.557971,0.720163,-0.039383,-0.692686,0.378878,-0.040876,-0.924543,0.999997,0.002607,0.000000,0.996070,0.009831,-0.088020,0.965203,0.038082,-0.258714,0.903623,0.040560,-0.426405,0.712756,0.043566,-0.700058,0.423276,0.017939,-0.905823,0.248332,0.000093,-0.968675,0.999629,0.014171,-0.023241,0.984574,0.043169,-0.169557,0.925673,0.078376,-0.370118,0.840133,0.081604,-0.536206,0.697909,0.065739,-0.713163,0.466215,0.043770,-0.883588,0.285884,0.027247,-0.957877,0.994681,0.039247,-0.095236,0.967841,0.070080,-0.241606,0.921308,0.091747,-0.377854,0.837916,0.085244,-0.539102,0.711950,0.076879,-0.698009,0.532014,0.049999,-0.845258,0.314675,0.023666,-0.948904,0.978725,0.066018,-0.194267,0.941550,0.103949,-0.320434,0.902328,0.123298,-0.413039,0.814097,0.106590,-0.570864,0.670209,0.081061,-0.737732,0.427766,0.041774,-0.902924,0.947052,0.090723,-0.307997,0.906960,0.134045,-0.399320,0.914123,0.145601,-0.378390,0.918207,0.154346,-0.364792,0.886518,0.135368,-0.442450,0.789566,0.108240,-0.604044,0.604907,0.072864,-0.792955,0.458089,0.047378,-0.887643};
			return value;
		}
		private double[] getNormal_7_47_vector_3()
		{
			double[] value = {0.879718,0.142466,-0.453651,0.873571,0.155237,-0.461275,0.885666,0.163742,-0.434493,0.923495,0.171713,-0.343032,0.917379,0.146381,-0.370119,0.865832,0.126034,-0.484200,0.691772,0.081363,-0.717517,0.456301,0.030590,-0.889300,0.851383,0.127259,-0.508873,0.834846,0.126754,-0.535691,0.871325,0.165446,-0.461973,0.910925,0.140759,-0.387817,0.914585,0.162064,-0.370499,0.932321,0.138068,-0.334237,0.860790,0.103534,-0.498319,0.795580,0.082877,-0.600153,0.624542,0.048162,-0.779505};
			return value;
		}


		/** Define subarrays using type int[] */
		private int[] getIndexedFaceSet_6_59_coordIndex_1()
		{
			int[] value = {0,1,2,3,4,-1,5,6,7,8,9,1,10,11,-1,12,13,7,14,-1,15,16,17,1,-1,16,18,19,17,-1,20,21,22,23,-1,0,29,28,27,30,31,8,9,-1,32,33,34,35,-1,36,37,38,39,-1,39,38,33,32,-1,40,41,37,36,-1,42,43,44,45,-1,35,34,43,42,-1,45,44,46,47,-1,48,49,50,51,52,53,-1,54,55,26,25,-1,56,57,58,59,-1,51,55,54,52,-1,24,60,57,56,-1,61,30,27,26,-1,51,31,30,61,-1,62,29,0,58,-1,60,28,29,62,-1,63,64,65,66,-1,67,68,69,70,-1,71,72,73,74,-1,75,22,21,76,77,78,79,80,-1,2,81,82,-1,51,83,31,-1,49,83,51,-1,49,84,83,-1,49,51,50,-1,85,59,58,82,81,86,-1,87,41,40,-1,87,88,41,-1,81,88,87,86,-1,89,90,49,48,-1,47,90,89,-1,47,46,90,-1,91,83,84,-1,91,5,83,-1,92,93,5,91,-1,2,93,92,-1,2,1,93,-1,92,91,84,2,-1,94,95,96,97,-1,98,21,95,94,-1,97,96,22,99,-1,100,101,99,102,-1,103,100,102,104,-1,22,105,103,104,-1,21,22,99,98,-1,106,107,108,98,-1,107,109,110,108,-1,109,111,21,110,-1,6,112,113,106,-1,112,114,107,113,-1,114,115,109,107,-1,115,77,111,109,-1,5,116,112,6,-1,116,117,114,112,-1,117,118,115,114,-1,118,78,77,115,-1,93,119,116,5,-1,119,120,117,116,-1,120,121,122,123,-1,124,125,126,127,-1,128,129,130,131,-1,132,133,134,135,-1,136,137,138,139,-1,140,118,117,141,-1,121,79,78,118,-1,10,142,119,93,-1,142,143,120,119,-1,143,144,121,120,-1,144,80,79,121,-1,145,100,143,142,-1,100,103,144,143,-1,103,105,80,144,-1,95,72,71,96,-1,20,73,72,95,-1,23,74,73,20,-1,96,71,74,23,-1,23,20,95,96,-1,146,147,148,149,-1,150,64,147,146,-1,151,65,64,150,-1,149,148,65,151,-1,147,68,67,148,-1,63,69,68,147,-1,66,70,69,63,-1,148,67,70,66,-1,152,18,16,15,-1,10,17,19,142,-1,10,142,145,101,-1,112,153,14,6,-1,14,153,154,12,-1,13,12,154,155,-1};
			return value;
		}


		/** Define subarrays using type int[] */
		private int[] getIndexedFaceSet_6_59_normalIndex_1()
		{
			int[] value = {0,1,2,3,4,-1,5,5,5,5,5,5,5,5,-1,5,5,5,5,-1,5,5,5,5,-1,6,6,6,6,-1,7,8,9,10,-1,11,11,11,11,11,11,11,11,-1,12,13,14,15,-1,16,17,18,19,-1,20,21,13,12,-1,22,23,17,16,-1,24,25,26,27,-1,15,14,28,29,-1,27,26,30,31,-1,32,33,34,35,36,37,-1,38,38,39,38,-1,40,40,40,40,-1,40,40,40,40,-1,41,42,41,41,-1,43,44,45,39,-1,35,46,44,43,-1,47,48,0,49,-1,42,50,48,47,-1,11,11,11,11,-1,11,11,11,11,-1,11,11,11,11,-1,51,9,8,52,53,54,55,56,-1,57,57,57,-1,35,58,46,-1,33,58,35,-1,33,59,58,-1,33,35,34,-1,6,60,49,61,6,6,-1,62,23,22,-1,62,63,23,-1,64,65,64,66,-1,67,68,67,69,-1,31,70,71,-1,31,30,70,-1,72,73,74,-1,72,75,73,-1,76,77,75,72,-1,78,77,76,-1,78,79,77,-1,80,81,80,82,-1,83,84,85,83,-1,86,87,88,32,-1,89,90,89,91,-1,92,93,94,95,-1,96,92,95,97,-1,98,99,96,97,-1,100,101,100,102,-1,103,104,105,106,-1,104,107,108,105,-1,107,109,110,108,-1,32,32,32,32,-1,32,32,32,32,-1,32,111,32,32,-1,111,112,113,32,-1,75,114,115,116,-1,114,117,118,115,-1,117,119,120,118,-1,119,121,122,120,-1,77,123,114,75,-1,123,124,117,114,-1,124,125,126,126,-1,126,126,126,126,-1,126,126,126,126,-1,126,126,126,126,-1,127,127,127,127,-1,127,119,117,127,-1,125,128,121,119,-1,129,130,123,77,-1,130,131,124,123,-1,131,132,125,124,-1,132,133,128,125,-1,6,6,6,6,-1,6,134,135,6,-1,134,136,137,135,-1,84,138,138,85,-1,139,140,139,88,-1,141,141,141,141,-1,90,142,143,144,-1,5,5,5,5,-1,145,146,147,145,-1,148,148,149,148,-1,150,150,150,150,-1,151,152,151,151,-1,146,153,153,147,-1,154,154,154,149,-1,155,155,155,155,-1,152,156,156,156,-1,83,83,83,83,-1,129,157,158,130,-1,32,32,32,32,-1,115,159,160,116,-1,32,32,32,32,-1,83,83,83,83,-1};
			return value;
		}


		/** Define subarrays using type double[] */
		private double[] getCoordinate_7_59_point_1()
		{
			double[] value = {-4.9371,-63.9918,10.9,-4.93674,-28.3894,10.9,-5.29825,-28.17,8.07724,-5.35216,-39.636,7.65787,-5.35272,-63.9936,7.65636,2.2827,-26.8155,10.9,4.2,-27.9545,10.9,4.932,-28.3867,10.9,4.93216,-28.55,10.9,-4.93736,-28.5504,10.9,-4.2,-27.9496,10.9,-2.31504,-26.8152,10.9,6.3,-34.7,10.9,4.93183,-34.7,10.9,6.3,-29.2037,10.9,-4.93489,-34.7,10.9,-6.3,-34.7,10.9,-6.3,-29.2037,10.9,-6.3,-34.7,12.0,-6.3,-29.362,12.0,3.29995,-35.4,13.8725,3.29935,-30.6004,13.8725,-3.30011,-30.5997,13.8725,-3.29996,-35.4,13.8725,-7.41784,-86.4076,5.15021,7.41784,-86.4076,5.14327,7.04812,-85.8476,7.64344,6.54583,-85.1246,10.9,-6.5615,-85.1246,10.9,-6.5615,-66.6478,10.9,6.54583,-66.6512,10.9,4.91968,-63.9918,10.9,-2.50228,-19.2076,5.80799,-2.37579,-19.5734,8.29926,2.37854,-19.5734,8.29644,2.50228,-19.2076,5.80503,-6.28524,-22.8068,5.71651,-5.96965,-22.9926,8.21235,-5.82904,-21.8159,8.24291,-6.13728,-21.5682,5.74867,-6.76659,-28.2565,5.57493,-6.42701,-28.17,8.07785,6.13728,-21.5682,5.74174,5.83179,-21.8159,8.23631,5.9723,-22.9926,8.20576,6.28524,-22.8068,5.70957,6.42952,-28.17,8.07126,6.76659,-28.2565,5.568,5.3,-33.6976,5.42729,5.3,-33.6979,7.93635,5.3,-39.6359,7.64867,5.3001,-63.9936,7.6455,5.3,-63.9936,5.14426,5.3,-50.0491,5.14426,7.41784,-63.9936,5.14327,7.04812,-63.9936,7.64344,-7.41784,-63.9936,5.15021,-7.04578,-63.9936,7.65003,-5.29859,-63.9936,7.64942,-5.3,-63.9936,5.14922,-7.04578,-85.8476,7.65003,7.04812,-66.8531,7.64344,-7.04578,-66.8495,7.65003,-1.8018,-53.7,14.3,-1.8018,-57.276,14.3,1.8018,-57.276,14.3,1.8018,-53.7,14.3,1.35135,-51.096,16.6,-1.35135,-51.096,16.6,-1.35135,-53.328,16.6,1.35135,-53.328,16.6,-3.069,-41.769,15.8725,3.069,-41.769,15.8725,3.069,-35.631,15.8725,-3.069,-35.631,15.8725,-4.2,-29.8827,13.845,4.2,-29.8827,13.845,4.2,-27.9704,13.7716,2.28284,-26.8274,13.7277,-2.2998,-26.8274,13.7278,-4.2,-27.9606,13.7713,-5.3,-33.6978,7.93635,-5.3,-39.6359,7.65202,4.92031,-28.3891,10.9,5.30053,-28.17,8.07187,-5.3,-50.0491,5.14922,-5.3,-33.6976,5.43249,-7.07806,-33.6974,5.43336,-6.72293,-33.6977,7.93635,7.07806,-33.6974,5.42642,6.72539,-33.6977,7.93635,2.46378,-26.4,8.11924,-2.46378,-26.4,8.12183,-2.2998,-26.8156,10.9,3.3,-42.0,10.9,3.3,-42.0,13.8725,-3.3,-42.0,13.8725,-3.3,-42.0,10.9,3.3,-30.6,10.9,-3.3,-30.6,10.9};
			return value;
		}
		private double[] getCoordinate_7_59_point_2()
		{
			double[] value = {-4.2,-29.8816,12.2,-4.2,-29.8816,10.9,-3.3,-30.5999,12.2,-4.2,-29.8816,12.9,-3.3,-30.5998,12.9,-4.2,-29.8816,13.8725,4.2,-29.8816,10.9,4.2,-29.8816,12.2,3.29972,-30.6002,12.2,4.2,-29.8816,12.9,3.29956,-30.6002,12.9,4.2,-29.8816,13.8725,4.2,-28.1156,12.0,4.2,-29.8816,12.0,4.2,-28.1009,12.2,4.2,-28.0428,12.9,2.28284,-26.9737,12.0,2.28284,-26.9567,12.2,2.28284,-26.8975,12.9,-2.2998,-26.9737,12.0,-2.2998,-26.9567,12.2,-2.2998,-26.8975,12.9,-2.025,-26.8975,12.9,-2.025,-26.9567,12.2,-1.375,-26.8975,12.9,-1.175,-26.8975,12.9,-1.175,-26.9567,12.2,-1.375,-26.9567,12.2,-0.525,-26.8975,12.9,-0.325,-26.8975,12.9,-0.325,-26.9567,12.2,-0.525,-26.9567,12.2,0.325,-26.8975,12.9,0.525,-26.8975,12.9,0.525,-26.9567,12.2,0.325,-26.9567,12.2,1.175,-26.8975,12.9,1.375,-26.8975,12.9,1.375,-26.9567,12.2,1.175,-26.9567,12.2,2.025,-26.8975,12.9,2.025,-26.9567,12.2,-4.2,-28.1078,12.0,-4.2,-28.0912,12.2,-4.2,-28.033,12.9,-4.2,-29.8816,12.0,-2.2,-50.4,10.9,-1.8018,-50.724,14.3,1.8018,-50.724,14.3,2.2,-50.4,10.9,-2.2,-57.6,10.9,2.2,-57.6,10.9,-4.93183,-34.7,12.0,6.3,-29.362,12.0,6.3,-34.7,12.0,4.93183,-34.7,12.0};
			return value;
		}


		/** Define subarrays using type double[] */
		private double[] getNormal_7_60_vector_1()
		{
			double[] value = {-0.956047,0.269758,0.114917,-0.991897,1.3641e-005,0.127047,-0.991898,1.71721e-005,0.127035,-0.991895,1.40775e-005,0.127063,-0.991891,1.49506e-005,0.127095,0,0,-1,-1,0,0,1.44546e-007,5.96087e-007,1,6.30026e-006,0.0287662,0.999586,1.11338e-006,0.0230122,0.999735,0,3.97344e-007,1,0,0,1,-0.18675,0.970579,0.151989,-0.37359,0.91484,0.153292,0.186923,0.970578,0.151782,0.373756,0.914841,0.152878,-0.985718,0.104074,0.132397,-0.986816,0.0939735,0.131769,-0.984518,0.114172,0.133,-0.984519,0.114154,0.133007,-0.540266,0.828192,0.149032,-0.540266,0.828192,0.149032,-0.988565,0.0736455,0.131587,-0.988943,0.0621462,0.134644,0.984661,0.114178,0.131932,0.984665,0.114158,0.131921,0.985859,0.104085,0.131334,0.986951,0.0939921,0.130738,0.540422,0.828197,0.148435,0.540422,0.828197,0.148435,0.988776,0.0725189,0.130625,0.989083,0.062226,0.133578,1,0,0,0.998618,-0.000919795,0.0525416,1,2.78435e-006,-3.45494e-005,0.986065,0.152985,0.0653542,1,0,-4.06064e-005,1,1.04301e-006,-1.44884e-005,0.989242,0,0.146288,0.988937,0,0.148338,0,1,0,-0.989105,0,0.147213,-0.989088,0,0.147327,0.973984,0.178879,0.139131,0.92596,0.357815,0.120694,0.988313,0,0.152437,0.956499,0.269524,0.111653,-0.926459,0.35815,0.11577,-0.974655,0.179049,0.13412,-0.961564,0.270129,0.0492479,-0.989079,0,0.147384,-2.57808e-006,0.038345,0.999265,1.01698e-005,0.0383483,0.999264,4.61431e-006,0.0383449,0.999265,8.51815e-006,0.0383486,0.999264,4.35657e-006,0.0383478,0.999264,6.54247e-007,0.0383461,0.999265,0.9999,-0.000675766,0.0141134,0.992014,-0.00153703,0.126119,0.991112,-0.003356,0.13299,-1,-2.89053e-005,0.000281311,-1,-1.92702e-005,0.00018754,-0.989329,0.0512794,0.13638,-0.988877,0.0493454,0.140311,-7.45652e-005,-1,-9.94365e-005,-4.82558e-005,-1,-0.000118126,-0.000100875,-1,-8.07469e-005,0.000119189,-1,-0.000107066,0.000120432,-1,-0.000106185,0.000117946,-1,-0.000107946,0.989475,0.0513868,0.135276,0.98888,0.0529928,0.138956,0.355549,0.9221,0.152698,0.516002,0.843755,0.147717,0.526089,0.83952,0.135777,0.26265,0.953784,0.145984,-0.181071,0.971037,0.155886,-0.266614,0.95273,0.145681,-0.516571,0.8441,0.143697,-0.508061,0.851267,0.131219,-0.000516252,0.0259541,-0.999663,-0.000525281,0.0259145,-0.999664,-0.000507223,0.0259937,-0.999662,0,-1,0,0,-0.997062,0.0766037,0,-0.999266,0.0383018,1,2.85171e-005,0.000109366,1,5.70342e-005,0.000218732,0.999263,2.13154e-005,0.0383746,-1,-4.78917e-006,-1.83674e-005,-0.997062,-1.12504e-006,0.0765974,-1,0,-3.67348e-005,-0.623798,-0.781586,2.33174e-005,-0.623839,-0.781553,0,-0.623808,-0.781578,3.49762e-005,-0.623766,-0.781611,4.67449e-005,-0.623752,-0.781622,1.73078e-005,-0.623744,-0.781629,3.46156e-005,-0.623744,-0.781629,-5.25637e-007,-0.623744,-0.781628,0.0};
			return value;
		}
		private double[] getNormal_7_60_vector_2()
		{
			double[] value = {-4.79766e-005,-1,-1.73265e-005,-9.59533e-005,-1,8.91866e-005,0,-1,-0.00012384,0.623821,-0.781567,2.00283e-005,0.623797,-0.781586,1.28133e-005,0.623815,-0.781572,2.61655e-005,0.623839,-0.781553,4.00566e-005,0.623777,-0.781603,1.33293e-005,0.623791,-0.781591,2.61426e-005,0.623759,-0.781617,0,0.623772,-0.781606,1.9994e-005,1,9.23915e-008,1.7469e-007,1,2.77175e-007,5.24069e-007,1,1.38587e-007,2.62034e-007,0.2659,0.96345,0.032573,0.509241,0.856246,0.0867014,0.506979,0.852861,0.1249,0.227071,0.970426,-0.081932,0.51101,0.856815,-0.0688246,0.317934,0.944759,-0.0796774,0.511407,0.856354,-0.0715616,0.176265,0.980836,-0.0830164,0.511754,0.856129,-0.0717711,-0.265704,0.96372,0.0254159,-0.265106,0.960803,-0.0810918,-0.265259,0.960761,-0.08109,0,0.996437,-0.0843357,0,0.996437,-0.0843384,-0.352451,0.932534,-0.0784767,-0.508747,0.852145,0.122577,-0.512427,0.858352,0.0254968,-0.511411,0.856348,-0.0716005,-0.51179,0.856123,-0.0715851,-0.512088,0.855982,-0.0711349,-1,-8.27403e-008,-1.8243e-007,-1,0,-1.8243e-007,-1,-2.48221e-007,0,-1,-1.2411e-007,-2.73646e-007,0,-0.993396,0.114737,0.993397,3.40911e-006,0.114726,0.993398,0,0.114715,0,0.993395,0.114748,-0.993396,0,0.114737,-0.993397,3.10409e-006,0.114727,-0.993398,6.20818e-006,0.114718,0.0,0.99549,0.0948648,0.0,0.990414,0.138129,0.0,0.993188,0.11652,-0.993212,0.0,0.116323,-0.989909,0.0,0.141707,0.0,-0.99549,0.0948648,0.993212,0.0,0.116323,0.985954,0.0,0.167015,0.0,0.987172,0.159663,-0.981357,0.0,0.192196,0.0,-0.987171,0.159665,0.981357,0.0,0.192196,-0.508853,0.85207,0.122655,-0.508873,0.852065,0.122611,0.506545,0.853417,0.122849,0.506893,0.853063,0.123863};
			return value;
		}





		/** Define subarrays using type double[] */
		private double[] getNormal_8_109_vector_1()
		{
			double[] value = {0,0.996515,0.0834171,0,0.996515,0.083413,0,0.996517,0.0833953,0,0.996515,0.0834086,0,0.996515,0.0834195,0,0.996515,0.0834147,0.575061,0.0682436,-0.815259,0.420974,0.0756644,-0.903912,0.81811,0.0479693,-0.573057,0.907073,0.035116,-0.419507,0.0889621,0.0830853,-0.992564,-0.0889619,0.0830853,-0.992564,-0.420974,0.0756644,-0.903912,-0.575061,0.0682435,-0.815259,-0.818111,0.0479693,-0.573057,-0.907073,0.035116,-0.419507,-0.996035,0.0074209,-0.0886524,-0.996035,-0.00742089,0.0886523,-0.907073,-0.035116,0.419507,-0.818111,-0.0479693,0.573057,-0.575061,-0.0682435,0.815259,-0.420974,-0.0756644,0.903912,-0.0889619,-0.0830853,0.992564,0.0889621,-0.0830853,0.992564,0.420974,-0.0756644,0.903912,0.575061,-0.0682436,0.815259,0.81811,-0.0479693,0.573057,0.907073,-0.035116,0.419507,0.996035,-0.00742089,0.0886523,0.996035,0.00742089,-0.0886524,0,-0.996515,-0.0834147,0,-0.996515,-0.0834195,0,-0.996515,-0.0834086,0,-0.996517,-0.0833953,0,-0.996515,-0.083413,0,-0.996515,-0.0834171,0,-0.996515,-0.0834147,0,-0.996515,-0.0834195,0,-0.996515,-0.0834171,0,0.996495,0.0836567,0,0.996494,0.0836683,0,0.996492,0.0836916,0,0.996493,0.08368,0,0.996515,0.0834147,0,0.996513,0.0834348,0,0.996513,0.0834358,0,0.996514,0.0834267,0,0.996513,0.0834388,0,0.996514,0.0834247,0,0.996515,0.0834147,0,0.996515,0.0834118,0,0.996515,0.0834186,0,0.996514,0.0834269,0,0.996515,0.0834158,0,0.996515,0.0834133,-0.995791,0.0146326,0.0904763,-0.995791,0.0294707,-0.0867848,-0.906851,-0.0130558,0.42125,-0.81791,-0.025906,0.574762,-0.574921,-0.0461752,0.816905,-0.420871,-0.0535943,0.905536,-0.0889409,-0.0610134,0.994166,0.0889405,-0.0610134,0.994166,0.420871,-0.0535943,0.905536,0.574921,-0.0461752,0.816905,0.81791,-0.025906,0.574762,0.906851,-0.0130558,0.42125,0.995791,0.0146325,0.0904763,0.995791,0.0294706,-0.0867847,0.906851,0.057159,-0.417558,0.81791,0.0700092,-0.571071,0.57492,0.0902785,-0.813214,0.420871,0.0976975,-0.901844,0.0889411,0.105117,-0.990475,-0.0889403,0.105117,-0.990475,-0.420871,0.0976975,-0.901844,-0.574921,0.0902785,-0.813213,-0.81791,0.0700093,-0.571071,-0.906851,0.0571591,-0.417558,0,0.996516,0.0834046,0,0.996515,0.0834088,0,0.996513,0.0834392,0,0.996509,0.0834832,0,0.996512,0.0834502,0,0.996515,0.083413,0,0.996516,0.0834046,0,0.996515,0.0834088,0,0.996513,0.0834393,0,0.996512,0.0834502,0,0.996515,0.0834131,7.84579e-008,-0.996515,-0.0834192,-0.480388,-0.852285,0.20697,-0.5547,-0.829151,-0.0694054,-0.277356,-0.869226,0.409293,0.0,-0.875426,0.483353,0.277356,-0.869226,0.409293,0.480389,-0.852285,0.20697,0.5547,-0.829151,-0.0694054,0.480385,-0.806016,-0.345787,0.277349,-0.78908,-0.548115};
			return value;
		}
		private double[] getNormal_8_109_vector_2()
		{
			double[] value = {0.0,-0.782881,-0.622172,-0.277349,-0.78908,-0.548115,-0.480385,-0.806016,-0.345787};
			return value;
		}












		/** Define subarrays using type double[] */
		private double[] getNormal_8_575_vector_1()
		{
			double[] value = {0.819152,0,0.573577,0.819152,8.21778e-007,0.573577,0.819152,-2.2692e-007,0.573577,0.819152,1.6046e-007,0.573577,0.819152,8.21764e-007,0.573577,0.819152,-2.2693e-007,0.573577,0.819152,1.60463e-007,0.573577,-0.219498,0.92388,0.313476,-0.219498,0.92388,0.313476,-0.219498,0.92388,0.313475,-0.529915,0.382685,0.756797,-0.529915,0.382685,0.756797,-0.529915,0.382685,0.756797,-0.529917,-0.382679,0.756799,-0.529916,-0.382679,0.756799,-0.529917,-0.382679,0.756799,-0.219498,-0.92388,0.313476,-0.219498,-0.92388,0.313476,-0.219498,-0.92388,0.313475,0.219498,-0.92388,-0.313476,0.219498,-0.92388,-0.313476,0.219498,-0.92388,-0.313476,0.529916,-0.38268,-0.756799,0.529916,-0.382679,-0.756799,0.529916,-0.38268,-0.756799,0.529915,0.382686,-0.756797,0.529915,0.382685,-0.756797,0.529915,0.382686,-0.756797,0.219498,0.92388,-0.313476,0.219498,0.92388,-0.313476,0.219498,0.92388,-0.313476,-0.819152,1.14728e-006,-0.573577,-0.819152,-4.4393e-007,-0.573576,-0.819152,-3.02252e-008,-0.573577,-0.819152,-2.22267e-006,-0.573577,-0.819152,-1.54747e-007,-0.573577,-0.819152,1.69832e-007,-0.573576,-0.819152,2.24021e-007,-0.573577,-0.819152,2.22267e-006,-0.573577,-0.819152,0,-0.573576,-0.819152,0,-0.573577,-0.819152,0,-0.573576,-0.819152,0,-0.573577,-0.819153,0,-0.573575,-0.819154,0,-0.573573,-0.819152,0,-0.573576,-0.819152,0,-0.573577,0.529915,-0.382686,-0.756797,0.529915,-0.382685,-0.756797,0.529915,-0.382686,-0.756797,-0.529915,-0.382685,0.756797,-0.529915,-0.382685,0.756797,-0.529915,-0.382685,0.756797,0.819153,0,0.573576,0.819154,0,0.573574,0.819152,0,0.573576,0.819152,0,0.573576,0.819152,0,0.573577,0.81915,0,0.573579,0.819152,0,0.573577,0.819152,0,0.573576,0.819153,0,0.573574,0.819152,0,0.573576,-0.219497,0.92388,0.313475,-0.219497,0.92388,0.313475,-0.219497,0.92388,0.313475,-0.529916,0.382683,0.756798,-0.529916,0.382682,0.756798,-0.529916,0.382683,0.756798,-0.529916,-0.382683,0.756798,-0.529916,-0.382682,0.756798,-0.529916,-0.382683,0.756798,-0.219497,-0.92388,0.313475,-0.219497,-0.92388,0.313475,-0.219497,-0.92388,0.313475,0.219498,-0.92388,-0.313476,0.219498,-0.92388,-0.313475,0.529915,-0.382685,-0.756797,0.529915,-0.382685,-0.756797,0.529915,-0.382685,-0.756797,0.529915,0.382685,-0.756797,0.529915,0.382685,-0.756797,0.529915,0.382685,-0.756797,0.219498,0.92388,-0.313476,0.219498,0.92388,-0.313475,-0.819153,0,-0.573576,-0.819151,0,-0.573578,-0.819148,0,-0.573582,-0.819152,0,-0.573577,-0.819153,-1.97809e-006,-0.573576,-0.819152,8.51375e-007,-0.573576,-0.819152,2.24048e-007,-0.573576,-0.819153,5.33533e-006,-0.573576,-0.819153,1.14731e-006,-0.573576,-0.819152,-6.21917e-007,-0.573576,-0.819152,-3.86245e-007,-0.573576,-0.819153,-5.33533e-006,-0.573576,0.529917,-0.382679,-0.756799,0.529916,-0.38268,-0.756799,0.529917,-0.382679,-0.756799};
			return value;
		}
		private double[] getNormal_8_575_vector_2()
		{
			double[] value = {-0.529917,-0.382677,0.7568,-0.529917,-0.382677,0.7568,-0.529917,-0.382677,0.7568,0.819152,2.83483e-006,0.573576,0.819152,7.06695e-007,0.573576,0.819152,-3.57283e-007,0.573576,0.819152,-1.86276e-007,0.573576,0.819152,-2.83483e-006,0.573576,0.819152,-9.53917e-007,0.573576,0.819152,4.25527e-007,0.573576,0.819152,1.37991e-007,0.573576,-0.819152,0.0,-0.573577,-0.819152,0.0,-0.573576,1.0,0.0,0.0};
			return value;
		}



		/** Define subarrays using type double[] */
		private double[] getNormal_8_581_vector_1()
		{
			double[] value = {-0.819152,1.60463e-007,0.573577,-0.819152,-2.26927e-007,0.573577,-0.819152,8.21778e-007,0.573577,-0.819152,0,0.573577,0.219506,0.923874,0.313487,0.219506,0.923874,0.313487,0.219506,0.923874,0.313487,0.529915,0.382685,0.756797,0.529915,0.382685,0.756797,0.529915,0.382685,0.756797,0.529915,-0.382685,0.756797,0.529915,-0.382685,0.756797,0.529915,-0.382685,0.756797,0.219498,-0.92388,0.313476,0.219498,-0.92388,0.313476,0.219498,-0.92388,0.313475,-0.219498,-0.92388,-0.313476,-0.219498,-0.92388,-0.313476,-0.219498,-0.92388,-0.313476,-0.529915,-0.382686,-0.756797,-0.529915,-0.382685,-0.756797,-0.529915,-0.382686,-0.756797,-0.529915,0.382686,-0.756797,-0.529915,0.382685,-0.756797,-0.529915,0.382686,-0.756797,-0.219506,0.923874,-0.313487,-0.219506,0.923874,-0.313487,-0.219506,0.923874,-0.313487,0.819152,2.22257e-006,-0.573577,0.819152,2.23989e-007,-0.573577,0.819152,1.69845e-007,-0.573576,0.819152,-1.5473e-007,-0.573577,0.819152,-2.22267e-006,-0.573577,0.819152,-3.02124e-008,-0.573577,0.819152,-4.43929e-007,-0.573576,0.819152,1.14723e-006,-0.573577,0.819152,2.22267e-006,-0.573577,0.819152,1.5473e-007,-0.573577,0.819152,-1.69855e-007,-0.573576,0.819152,-2.2403e-007,-0.573577,0.819152,-1.14728e-006,-0.573577,0.819152,4.43919e-007,-0.573576,0.819152,3.02124e-008,-0.573577,-0.219498,0.92388,-0.313476,-0.219498,0.92388,-0.313476,-0.219498,0.92388,-0.313476,-0.529916,-0.38268,-0.756799,-0.529916,-0.382679,-0.756799,-0.529916,-0.38268,-0.756799,0.529917,-0.382679,0.756799,0.529916,-0.382679,0.756799,0.529917,-0.382679,0.756799,0.219498,0.92388,0.313476,0.219498,0.92388,0.313476,0.219498,0.92388,0.313475,-0.819152,-8.21778e-007,0.573577,-0.819152,2.2692e-007,0.573577,-0.819152,-1.6046e-007,0.573577,-0.819152,-8.21764e-007,0.573577,-0.819152,2.2693e-007,0.573577,-0.819152,-1.60463e-007,0.573577,-0.819152,9.53909e-007,0.573576,-0.819152,-4.25547e-007,0.573576,-0.819152,-1.38005e-007,0.573576,-0.819152,-2.83483e-006,0.573576,-0.819152,-7.06708e-007,0.573576,-0.819152,3.5726e-007,0.573576,-0.819152,1.86262e-007,0.573576,-0.819152,2.83483e-006,0.573576,0.219497,0.92388,0.313475,0.219497,0.92388,0.313475,0.219497,0.92388,0.313475,0.529916,0.382683,0.756798,0.529916,0.382682,0.756798,0.529916,0.382683,0.756798,0.529917,-0.382677,0.7568,0.529917,-0.382677,0.7568,0.529917,-0.382677,0.7568,0.219497,-0.92388,0.313475,0.219497,-0.92388,0.313475,0.219497,-0.92388,0.313475,-0.219498,-0.92388,-0.313476,-0.219498,-0.92388,-0.313475,-0.529917,-0.382679,-0.756799,-0.529916,-0.38268,-0.756799,-0.529917,-0.382679,-0.756799,-0.529915,0.382685,-0.756797,-0.529915,0.382685,-0.756797,-0.529915,0.382685,-0.756797,-0.219498,0.92388,-0.313476,-0.219498,0.92388,-0.313475,0.819153,-5.33533e-006,-0.573576,0.819153,-1.14728e-006,-0.573576,0.819152,6.21962e-007,-0.573576,0.819152,3.8627e-007,-0.573576,0.819153,5.33533e-006,-0.573576,0.819153,1.9781e-006,-0.573576,0.819152,-8.51341e-007,-0.573576,0.819152,-2.2402e-007,-0.573576,0.819153,-5.3351e-006,-0.573576};
			return value;
		}
		private double[] getNormal_8_581_vector_2()
		{
			double[] value = {0.819152,-3.86168e-007,-0.573576,0.819152,-6.21945e-007,-0.573576,0.819153,1.14728e-006,-0.573576,0.819152,2.2402e-007,-0.573576,0.819152,8.51366e-007,-0.573576,0.819153,-1.97797e-006,-0.573576,-0.219506,0.923874,-0.313487,-0.219506,0.923874,-0.313487,-0.219506,0.923874,-0.313487,-0.529915,-0.382685,-0.756797,-0.529915,-0.382685,-0.756797,-0.529915,-0.382685,-0.756797,0.529916,-0.382683,0.756798,0.529916,-0.382682,0.756798,0.529916,-0.382683,0.756798,0.219505,0.923874,0.313486,0.219505,0.923874,0.313486,0.219506,0.923874,0.313486,-0.819152,1.3795e-007,0.573576,-0.819152,4.25541e-007,0.573576,-0.819152,-9.53909e-007,0.573576,-0.819152,-1.86262e-007,0.573576,-0.819152,-3.57275e-007,0.573576,-0.819152,7.06633e-007,0.573576,-0.819152,2.8347e-006,0.573576,0.819152,0.0,-0.573577,0.819152,0.0,-0.573576,-1.0,0.0,0.0};
			return value;
		}




		/** Define subarrays using type double[] */
		private double[] getflagflutter_4_613_keyValue_1()
		{
			double[] value = {0.0,0.0,0.00,0.0,0.2,0.10,0.0,0.4,0.19,0.0,0.6,0.28,0.0,0.8,0.26,0.0,1.0,0.42,0.0,1.2,0.37,0.0,1.4,0.39,0.0,1.6,0.30,0.0,1.8,0.39,0.0,2.0,0.35,0.0,2.2,0.30,0.0,2.4,0.24,0.0,2.6,0.26,0.0,2.8,0.17,0.0,3.0,0.07,0.0,3.2,-0.03,0.0,3.4,-0.13,0.0,3.6,-0.22,0.0,3.8,-0.21,0.0,4.0,-0.28,0.0,4.2,-0.34,0.0,4.4,-0.38,0.0,4.6,-0.30,0.0,4.8,-0.30,0.0,5.0,-0.38,0.0,5.2,-0.34,0.0,5.4,-0.29,0.0,5.6,-0.22,0.0,5.8,-0.23,0.0,6.0,-0.14,0.0,6.2,-0.04,0.0,6.4,0.06,0.0,6.6,0.16,0.0,6.8,0.25,0.0,7.0,0.23,0.0,7.2,0.30,0.0,7.4,0.35,0.0,7.6,0.38,0.0,7.8,0.30,0.0,8.0,0.39,0.0,8.2,0.37,0.0,8.4,0.33,0.0,8.6,0.27,0.0,8.8,0.29,0.0,9.0,0.21,0.0,9.2,0.11,0.0,9.4,0.01,0.0,9.6,-0.09,0.0,9.8,-0.18,0.0,10.0,-0.27,0.0,10.2,-0.25,0.0,10.4,-0.31,0.0,10.6,-0.36,0.0,10.8,-0.39,0.0,11.0,-0.30,0.0,11.2,-0.39,0.0,11.4,-0.36,0.0,11.6,-0.31,0.0,0.0,-0.29,0.0,0.2,-0.21,0.0,0.4,-0.11,0.0,0.6,-0.01,0.0,0.8,0.09,0.0,1.0,0.18,0.0,1.2,0.27,0.0,1.4,0.25,0.0,1.6,0.31,0.0,1.8,0.36,0.0,2.0,0.39,0.0,2.2,0.30,0.0,2.4,0.39,0.0,2.6,0.36,0.0,2.8,0.31,0.0,3.0,0.25,0.0,3.2,0.27,0.0,3.4,0.18,0.0,3.6,0.08,0.0,3.8,-0.02,0.0,4.0,-0.11,0.0,4.2,-0.21,0.0,4.4,-0.29,0.0,4.6,-0.27,0.0,4.8,-0.33,0.0,5.0,-0.37,0.0,5.2,-0.30,0.0,5.4,-0.30,0.0,5.6,-0.38,0.0,5.8,-0.35,0.0,6.0,-0.30,0.0,6.2,-0.23,0.0,6.4,-0.24,0.0,6.6,-0.15,0.0,6.8,-0.06,0.0,7.0,0.04,0.0,7.2,0.14,0.0,7.4,0.23,0.0,7.6,0.22,0.0,7.8,0.29,0.0,8.0,0.34};
			return value;
		}
		private double[] getflagflutter_4_613_keyValue_2()
		{
			double[] value = {0.0,8.2,0.38,0.0,8.4,0.30,0.0,8.6,0.30,0.0,8.8,0.37,0.0,9.0,0.33,0.0,9.2,0.28,0.0,9.4,0.20,0.0,9.6,0.22,0.0,9.8,0.13,0.0,10.0,0.03,0.0,10.2,-0.07,0.0,10.4,-0.17,0.0,10.6,-0.26,0.0,10.8,-0.24,0.0,11.0,-0.31,0.0,11.2,-0.36,0.0,11.4,-0.39,0.0,11.6,-0.30,0.0,0.0,-0.38,0.0,0.2,-0.34,0.0,0.4,-0.28,0.0,0.6,-0.20,0.0,0.8,-0.22,0.0,1.0,-0.13,0.0,1.2,-0.03,0.0,1.4,0.07,0.0,1.6,0.17,0.0,1.8,0.26,0.0,2.0,0.24,0.0,2.2,0.30,0.0,2.4,0.36,0.0,2.6,0.39,0.0,2.8,0.30,0.0,3.0,0.39,0.0,3.2,0.37,0.0,3.4,0.32,0.0,3.6,0.26,0.0,3.8,0.28,0.0,4.0,0.19,0.0,4.2,0.10,0.0,4.4,0.00,0.0,4.6,-0.10,0.0,4.8,-0.20,0.0,5.0,-0.28,0.0,5.2,-0.26,0.0,5.4,-0.32,0.0,5.6,-0.37,0.0,5.8,-0.39,0.0,6.0,-0.30,0.0,6.2,-0.39,0.0,6.4,-0.35,0.0,6.6,-0.30,0.0,6.8,-0.24,0.0,7.0,-0.26,0.0,7.2,-0.17,0.0,7.4,-0.07,0.0,7.6,0.03,0.0,7.8,0.13,0.0,8.0,0.22,0.0,8.2,0.21,0.0,8.4,0.28,0.0,8.6,0.34,0.0,8.8,0.38,0.0,9.0,0.30,0.0,9.2,0.30,0.0,9.4,0.38,0.0,9.6,0.34,0.0,9.8,0.29,0.0,10.0,0.21,0.0,10.2,0.23,0.0,10.4,0.14,0.0,10.6,0.04,0.0,10.8,-0.06,0.0,11.0,-0.16,0.0,11.2,-0.25,0.0,11.4,-0.23,0.0,11.6,-0.30,0.0,0.0,-0.38,0.0,0.2,-0.30,0.0,0.4,-0.30,0.0,0.6,-0.38,0.0,0.8,-0.34,0.0,1.0,-0.29,0.0,1.2,-0.22,0.0,1.4,-0.23,0.0,1.6,-0.14,0.0,1.8,-0.04,0.0,2.0,0.06,0.0,2.2,0.16,0.0,2.4,0.25,0.0,2.6,0.23,0.0,2.8,0.30,0.0,3.0,0.35,0.0,3.2,0.38,0.0,3.4,0.30,0.0,3.6,0.39,0.0,3.8,0.37,0.0,4.0,0.33,0.0,4.2,0.27,0.0,4.4,0.29};
			return value;
		}
		private double[] getflagflutter_4_613_keyValue_3()
		{
			double[] value = {0.0,4.6,0.21,0.0,4.8,0.11,0.0,5.0,0.01,0.0,5.2,-0.09,0.0,5.4,-0.18,0.0,5.6,-0.27,0.0,5.8,-0.25,0.0,6.0,-0.31,0.0,6.2,-0.36,0.0,6.4,-0.39,0.0,6.6,-0.30,0.0,6.8,-0.39,0.0,7.0,-0.36,0.0,7.2,-0.31,0.0,7.4,-0.25,0.0,7.6,-0.27,0.0,7.8,-0.18,0.0,8.0,-0.08,0.0,8.2,0.02,0.0,8.4,0.12,0.0,8.6,0.21,0.0,8.8,0.20,0.0,9.0,0.27,0.0,9.2,0.33,0.0,9.4,0.37,0.0,9.6,0.30,0.0,9.8,0.30,0.0,10.0,0.38,0.0,10.2,0.35,0.0,10.3,0.29,0.0,10.6,0.23,0.0,10.8,0.24,0.0,11.0,0.15,0.0,11.2,0.05,0.0,11.4,-0.05,0.0,11.6,-0.14,0.0,0.0,-0.29,0.0,0.2,-0.27,0.0,0.4,-0.33,0.0,0.6,-0.37,0.0,0.8,-0.30,0.0,1.0,-0.30,0.0,1.2,-0.38,0.0,1.4,-0.35,0.0,1.6,-0.30,0.0,1.8,-0.23,0.0,2.0,-0.24,0.0,2.2,-0.15,0.0,2.4,-0.06,0.0,2.6,0.04,0.0,2.8,0.14,0.0,3.0,0.23,0.0,3.2,0.22,0.0,3.4,0.29,0.0,3.6,0.34,0.0,3.8,0.38,0.0,4.0,0.30,0.0,4.2,0.30,0.0,4.4,0.38,0.0,4.6,0.33,0.0,4.8,0.28,0.0,5.0,0.20,0.0,5.2,0.22,0.0,5.4,0.13,0.0,5.6,0.03,0.0,5.8,-0.07,0.0,6.0,-0.17,0.0,6.2,-0.26,0.0,6.4,-0.24,0.0,6.6,-0.31,0.0,6.8,-0.36,0.0,7.0,-0.39,0.0,7.2,-0.30,0.0,7.4,-0.39,0.0,7.6,-0.37,0.0,7.8,-0.32,0.0,8.0,-0.26,0.0,8.2,-0.28,0.0,8.4,-0.19,0.0,8.6,-0.10,0.0,8.8,0.00,0.0,9.0,0.10,0.0,9.2,0.20,0.0,9.4,0.28,0.0,9.6,0.26,0.0,9.8,0.32,0.0,10.0,0.37,0.0,10.2,0.39,0.0,10.3,0.30,0.0,10.6,0.39,0.0,10.8,0.35,0.0,11.0,0.30,0.0,11.2,0.24,0.0,11.4,0.26,0.0,11.6,0.17,0.0,0.0,0.00,0.0,0.2,-0.10,0.0,0.4,-0.20,0.0,0.6,-0.28,0.0,0.8,-0.26};
			return value;
		}
		private double[] getflagflutter_4_613_keyValue_4()
		{
			double[] value = {0.0,1.0,-0.32,0.0,1.2,-0.37,0.0,1.4,-0.39,0.0,1.6,-0.30,0.0,1.8,-0.39,0.0,2.0,-0.35,0.0,2.2,-0.30,0.0,2.4,-0.24,0.0,2.6,-0.26,0.0,2.8,-0.17,0.0,3.0,-0.07,0.0,3.2,0.03,0.0,3.4,0.13,0.0,3.6,0.22,0.0,3.8,0.21,0.0,4.0,0.28,0.0,4.2,0.34,0.0,4.4,0.38,0.0,4.6,0.30,0.0,4.8,0.30,0.0,5.0,0.38,0.0,5.2,0.34,0.0,5.4,0.29,0.0,5.6,0.22,0.0,5.8,0.23,0.0,6.0,0.14,0.0,6.2,0.04,0.0,6.4,-0.06,0.0,6.6,-0.16,0.0,6.8,-0.25,0.0,7.0,-0.23,0.0,7.2,-0.30,0.0,7.4,-0.35,0.0,7.6,-0.38,0.0,7.8,-0.30,0.0,8.0,-0.39,0.0,8.2,-0.37,0.0,8.4,-0.33,0.0,8.6,-0.27,0.0,8.8,-0.29,0.0,9.0,-0.21,0.0,9.2,-0.11,0.0,9.4,-0.01,0.0,9.6,0.09,0.0,9.8,0.18,0.0,10.0,0.27,0.0,10.2,0.25,0.0,10.4,0.31,0.0,10.6,0.36,0.0,10.8,0.39,0.0,11.0,0.30,0.0,11.2,0.39,0.0,11.4,0.36,0.0,11.6,0.31,0.0,0.0,0.29,0.0,0.2,0.21,0.0,0.4,0.11,0.0,0.6,0.01,0.0,0.8,-0.09,0.0,1.0,-0.18,0.0,1.2,-0.27,0.0,1.4,-0.25,0.0,1.6,-0.31,0.0,1.8,-0.36,0.0,2.0,-0.39,0.0,2.2,-0.30,0.0,2.4,-0.39,0.0,2.6,-0.36,0.0,2.8,-0.31,0.0,3.0,-0.25,0.0,3.2,-0.27,0.0,3.4,-0.18,0.0,3.6,-0.08,0.0,3.8,0.02,0.0,4.0,0.11,0.0,4.2,0.21,0.0,4.4,0.20,0.0,4.6,0.27,0.0,4.8,0.33,0.0,5.0,0.37,0.0,5.2,0.30,0.0,5.4,0.30,0.0,5.6,0.38,0.0,5.8,0.35,0.0,6.0,0.29,0.0,6.2,0.23,0.0,6.4,0.24,0.0,6.6,0.15,0.0,6.8,0.05,0.0,7.0,-0.05,0.0,7.2,-0.14,0.0,7.4,-0.24,0.0,7.6,-0.22,0.0,7.8,-0.29,0.0,8.0,-0.34,0.0,8.2,-0.38,0.0,8.4,-0.30,0.0,8.6,-0.30,0.0,8.8,-0.37,0.0,9.0,-0.33};
			return value;
		}
		private double[] getflagflutter_4_613_keyValue_5()
		{
			double[] value = {0.0,9.2,-0.28,0.0,9.4,-0.20,0.0,9.6,-0.22,0.0,9.8,-0.12,0.0,10.0,-0.03,0.0,10.2,0.07,0.0,10.4,0.17,0.0,10.6,0.26,0.0,10.8,0.24,0.0,11.0,0.31,0.0,11.2,0.36,0.0,11.4,0.39,0.0,11.6,0.30,0.0,0.0,0.38,0.0,0.2,0.33,0.0,0.3,0.28,0.0,0.6,0.20,0.0,0.8,0.22,0.0,1.0,0.13,0.0,1.2,0.03,0.0,1.4,-0.07,0.0,1.6,-0.17,0.0,1.8,-0.26,0.0,2.0,-0.24,0.0,2.2,-0.31,0.0,2.4,-0.36,0.0,2.6,-0.39,0.0,2.8,-0.30,0.0,3.0,-0.39,0.0,3.2,-0.37,0.0,3.4,-0.32,0.0,3.6,-0.26,0.0,3.8,-0.28,0.0,4.0,-0.19,0.0,4.2,-0.10,0.0,4.4,0.00,0.0,4.6,0.10,0.0,4.8,0.20,0.0,5.0,0.28,0.0,5.2,0.26,0.0,5.4,0.32,0.0,5.6,0.37,0.0,5.8,0.39,0.0,6.0,0.30,0.0,6.2,0.39,0.0,6.4,0.35,0.0,6.6,0.30,0.0,6.8,0.24,0.0,7.0,0.26,0.0,7.2,0.17,0.0,7.4,0.07,0.0,7.6,-0.03,0.0,7.8,-0.13,0.0,8.0,-0.22,0.0,8.2,-0.21,0.0,8.4,-0.28,0.0,8.6,-0.34,0.0,8.8,-0.38,0.0,9.0,-0.30,0.0,9.2,-0.30,0.0,9.4,-0.38,0.0,9.6,-0.34,0.0,9.8,-0.29,0.0,10.0,-0.21,0.0,10.2,-0.23,0.0,10.3,-0.14,0.0,10.6,-0.04,0.0,10.8,0.06,0.0,11.0,0.16,0.0,11.2,0.25,0.0,11.4,0.23,0.0,11.6,0.30,0.0,0.0,0.38,0.0,0.2,0.30,0.0,0.4,0.30,0.0,0.6,0.38,0.0,0.8,0.34,0.0,1.0,0.29,0.0,1.2,0.22,0.0,1.4,0.23,0.0,1.6,0.14,0.0,1.8,0.04,0.0,2.0,-0.06,0.0,2.2,-0.16,0.0,2.4,-0.25,0.0,2.6,-0.23,0.0,2.8,-0.30,0.0,3.0,-0.35,0.0,3.2,-0.38,0.0,3.4,-0.30,0.0,3.6,-0.39,0.0,3.8,-0.37,0.0,4.0,-0.33,0.0,4.2,-0.27,0.0,4.4,-0.29,0.0,4.6,-0.21,0.0,4.8,-0.11,0.0,5.0,-0.01,0.0,5.2,0.09,0.0,5.4,0.18};
			return value;
		}
		private double[] getflagflutter_4_613_keyValue_6()
		{
			double[] value = {0.0,5.6,0.27,0.0,5.8,0.25,0.0,6.0,0.31,0.0,6.2,0.36,0.0,6.4,0.39,0.0,6.6,0.30,0.0,6.8,0.39,0.0,7.0,0.36,0.0,7.2,0.31,0.0,7.4,0.25,0.0,7.6,0.27,0.0,7.8,0.18,0.0,8.0,0.08,0.0,8.2,-0.02,0.0,8.4,-0.12,0.0,8.6,-0.21,0.0,8.8,-0.20,0.0,9.0,-0.27,0.0,9.2,-0.33,0.0,9.4,-0.37,0.0,9.6,-0.30,0.0,9.8,-0.30,0.0,10.0,-0.38,0.0,10.2,-0.35,0.0,10.4,-0.29,0.0,10.6,-0.22,0.0,10.8,-0.24,0.0,11.0,-0.15,0.0,11.2,-0.05,0.0,11.4,0.05,0.0,11.6,0.14,0.0,0.0,0.20,0.0,0.2,0.27,0.0,0.3,0.33,0.0,0.6,0.37,0.0,0.8,0.30,0.0,1.0,0.30,0.0,1.2,0.38,0.0,1.4,0.35,0.0,1.6,0.29,0.0,1.8,0.23,0.0,2.0,0.24,0.0,2.2,0.15,0.0,2.4,0.06,0.0,2.6,-0.04,0.0,2.8,-0.14,0.0,3.0,-0.24,0.0,3.2,-0.22,0.0,3.4,-0.29,0.0,3.6,-0.34,0.0,3.8,-0.38,0.0,4.0,-0.30,0.0,4.2,-0.30,0.0,4.4,-0.37,0.0,4.6,-0.33,0.0,4.8,-0.28,0.0,5.0,-0.20,0.0,5.2,-0.22,0.0,5.4,-0.12,0.0,5.6,-0.03,0.0,5.8,0.07,0.0,6.0,0.17,0.0,6.2,0.26,0.0,6.4,0.24,0.0,6.6,0.31,0.0,6.8,0.36,0.0,7.0,0.39,0.0,7.2,0.30,0.0,7.4,0.39,0.0,7.6,0.36,0.0,7.8,0.32,0.0,8.0,0.26,0.0,8.2,0.28,0.0,8.4,0.19,0.0,8.6,0.10,0.0,8.8,0.00,0.0,9.0,-0.10,0.0,9.2,-0.20,0.0,9.4,-0.28,0.0,9.6,-0.26,0.0,9.8,-0.32,0.0,10.0,-0.37,0.0,10.2,-0.39,0.0,10.4,-0.30,0.0,10.6,-0.39,0.0,10.8,-0.35,0.0,11.0,-0.30,0.0,11.2,-0.24,0.0,11.4,-0.26,0.0,11.6,-0.16,0.0,0.0,0.00,0.0,0.2,0.10,0.0,0.4,0.20,0.0,0.6,0.28,0.0,0.8,0.26,0.0,1.0,0.32,0.0,1.2,0.37,0.0,1.4,0.39,0.0,1.6,0.30,0.0,1.8,0.39};
			return value;
		}
		private double[] getflagflutter_4_613_keyValue_7()
		{
			double[] value = {0.0,2.0,0.35,0.0,2.2,0.30,0.0,2.4,0.24,0.0,2.6,0.26,0.0,2.8,0.17,0.0,3.0,0.07,0.0,3.2,-0.03,0.0,3.4,-0.13,0.0,3.6,-0.22,0.0,3.8,-0.21,0.0,4.0,-0.28,0.0,4.2,-0.34,0.0,4.4,-0.38,0.0,4.6,-0.30,0.0,4.8,-0.30,0.0,5.0,-0.38,0.0,5.2,-0.34,0.0,5.4,-0.29,0.0,5.6,-0.21,0.0,5.8,-0.23,0.0,6.0,-0.14,0.0,6.2,-0.04,0.0,6.4,0.06,0.0,6.6,0.16,0.0,6.8,0.25,0.0,7.0,0.23,0.0,7.2,0.30,0.0,7.4,0.35,0.0,7.6,0.38,0.0,7.8,0.30,0.0,8.0,0.39,0.0,8.2,0.37,0.0,8.4,0.33,0.0,8.6,0.27,0.0,8.8,0.29,0.0,9.0,0.20,0.0,9.2,0.11,0.0,9.4,0.01,0.0,9.6,-0.09,0.0,9.8,-0.18,0.0,10.0,-0.27,0.0,10.2,-0.25,0.0,10.4,-0.31,0.0,10.6,-0.36,0.0,10.8,-0.39,0.0,11.0,-0.30,0.0,11.2,-0.39,0.0,11.4,-0.36,0.0,11.6,-0.31};
			return value;
		}

		/** Large attribute array: Coordinate point field, scene-graph level=7, element #35, 111 total numbers made up of 37 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getCoordinate_7_35_point()
		{
			MFVec3f Coordinate_7_35_point = new MFVec3f(new double[] {-7.078060,-33.697418,5.433358,-7.304582,-39.590214,5.320097,-5.300000,-39.590214,5.319145,-5.300000,-33.697596,5.432487,-7.389527,-44.617788,5.235152,-7.417842,-50.049101,5.150206,-5.300000,-50.049101,5.149216,-7.417842,-63.993597,5.150206,-5.300000,-63.993597,5.149216,7.417842,-63.993597,5.143268,7.417842,-50.049101,5.143268,5.300000,-50.049101,5.144258,5.300000,-63.993597,5.144258,7.389527,-44.617788,5.228213,7.304582,-39.590214,5.313159,5.300000,-39.590214,5.314111,7.078060,-33.697388,5.426420,5.300000,-33.697596,5.427291,6.137279,-21.568194,5.741736,5.855287,-19.207598,5.803038,2.502281,-19.207598,5.805025,-5.855287,-19.207598,5.809977,-6.137279,-21.568194,5.748674,-2.502281,-19.207598,5.807990,-5.011208,-12.001490,6.023425,-5.633987,-17.582805,5.858085,5.633987,-17.582805,5.851147,5.010901,-12.001520,6.017486,-4.287353,-5.970437,6.202057,4.286813,-5.970492,6.196975,-3.102915,-0.003477,6.378513,3.102589,-0.004005,6.374821,-1.073537,4.524930,6.511759,-2.002222,3.001739,6.467086,2.046886,3.000509,6.464650,1.075337,4.524093,6.510461,0.000150,4.892815,6.522045});
			return Coordinate_7_35_point;
		}
		/** Large attribute array: IndexedFaceSet coordIndex field, scene-graph level=6, element #46, 1510 total numbers.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFInt32 getIndexedFaceSet_6_46_coordIndex()
		{
			MFInt32 IndexedFaceSet_6_46_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_6_46_coordIndex_1()))
				.append(new MFInt32(getIndexedFaceSet_6_46_coordIndex_2()));
			return IndexedFaceSet_6_46_coordIndex;
		}
		/** Large attribute array: IndexedFaceSet normalIndex field, scene-graph level=6, element #46, 1510 total numbers.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFInt32 getIndexedFaceSet_6_46_normalIndex()
		{
			MFInt32 IndexedFaceSet_6_46_normalIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_6_46_normalIndex_1()))
				.append(new MFInt32(getIndexedFaceSet_6_46_normalIndex_2()));
			return IndexedFaceSet_6_46_normalIndex;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=7, element #46, 657 total numbers made up of 219 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getCoordinate_7_46_point()
		{
			MFVec3f Coordinate_7_46_point = new MFVec3f()/*2.finalize*/
				.append(new MFVec3f(getCoordinate_7_46_point_1()))
				.append(new MFVec3f(getCoordinate_7_46_point_2()))
				.append(new MFVec3f(getCoordinate_7_46_point_3()));
			return Coordinate_7_46_point;
		}
		/** Large attribute array: Normal vector field, scene-graph level=7, element #47, 651 total numbers made up of 217 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getNormal_7_47_vector()
		{
			MFVec3f Normal_7_47_vector = new MFVec3f()/*2.finalize*/
				.append(new MFVec3f(getNormal_7_47_vector_1()))
				.append(new MFVec3f(getNormal_7_47_vector_2()))
				.append(new MFVec3f(getNormal_7_47_vector_3()));
			return Normal_7_47_vector;
		}
		/** Large attribute array: IndexedFaceSet coordIndex field, scene-graph level=6, element #59, 494 total numbers.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFInt32 getIndexedFaceSet_6_59_coordIndex()
		{
			MFInt32 IndexedFaceSet_6_59_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_6_59_coordIndex_1()));
			return IndexedFaceSet_6_59_coordIndex;
		}
		/** Large attribute array: IndexedFaceSet normalIndex field, scene-graph level=6, element #59, 494 total numbers.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFInt32 getIndexedFaceSet_6_59_normalIndex()
		{
			MFInt32 IndexedFaceSet_6_59_normalIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_6_59_normalIndex_1()));
			return IndexedFaceSet_6_59_normalIndex;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=7, element #59, 468 total numbers made up of 156 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getCoordinate_7_59_point()
		{
			MFVec3f Coordinate_7_59_point = new MFVec3f()/*2.finalize*/
				.append(new MFVec3f(getCoordinate_7_59_point_1()))
				.append(new MFVec3f(getCoordinate_7_59_point_2()));
			return Coordinate_7_59_point;
		}
		/** Large attribute array: Normal vector field, scene-graph level=7, element #60, 483 total numbers made up of 161 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getNormal_7_60_vector()
		{
			MFVec3f Normal_7_60_vector = new MFVec3f()/*2.finalize*/
				.append(new MFVec3f(getNormal_7_60_vector_1()))
				.append(new MFVec3f(getNormal_7_60_vector_2()));
			return Normal_7_60_vector;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=7, element #94, 198 total numbers made up of 66 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getCoordinate_7_94_point()
		{
			MFVec3f Coordinate_7_94_point = new MFVec3f(new double[] {3.94658,-60.3308,10.9,4.34353,-62.0853,15.0997,4.00419,-62.2763,10.9,3.94811,-59.9382,10.9,4.3661,-60.0994,15.254,3.76817,-59.035,10.9,4.17652,-59.3547,15.3408,4.00527,-59.9213,10.9,3.11654,-58.3781,10.9,3.64163,-58.8095,15.4623,2.21916,-58.1269,10.9,2.90477,-58.61,15.586,1.31369,-58.3536,10.9,2.16337,-58.8095,15.6786,0.645649,-59.0026,10.9,1.61609,-59.3547,15.7154,0.4,-59.9,10.9,1.40958,-60.0994,15.6865,0.4,-62.3,10.9,1.387,-62.0853,15.5323,0.644988,-63.1944,10.9,1.57659,-62.83,15.4454,1.29849,-63.8302,10.9,1.31401,-63.845,10.9,2.11147,-63.3751,15.3239,2.21916,-64.07,10.9,2.84834,-63.5747,15.2003,3.1156,-63.8177,10.9,3.58973,-63.3751,15.1076,3.70961,-63.2181,10.9,3.76664,-63.1614,10.9,4.13701,-62.83,15.0708,3.98151,-62.3589,10.9,-3.98151,-62.3589,10.9,-4.13701,-62.83,15.0708,-4.34353,-62.0853,15.0997,-4.00419,-62.2763,10.9,-3.76664,-63.1614,10.9,-3.70961,-63.2181,10.9,-3.58973,-63.3751,15.1076,-3.1156,-63.8177,10.9,-2.21916,-64.07,10.9,-2.84834,-63.5747,15.2003,-1.31401,-63.845,10.9,-2.11147,-63.3751,15.3239,-1.29849,-63.8302,10.9,-1.57659,-62.83,15.4454,-0.644988,-63.1944,10.9,-1.387,-62.0853,15.5323,-0.4,-62.3,10.9,-0.4,-59.9,10.9,-1.40958,-60.0994,15.6865,-0.645649,-59.0026,10.9,-1.61609,-59.3547,15.7154,-1.31369,-58.3536,10.9,-2.16337,-58.8095,15.6786,-2.21916,-58.1269,10.9,-2.90477,-58.61,15.586,-3.11654,-58.3781,10.9,-3.64163,-58.8095,15.4623,-3.76817,-59.035,10.9,-4.17652,-59.3547,15.3408,-4.00527,-59.9213,10.9,-4.3661,-60.0994,15.254,-3.94658,-60.3308,10.9,-3.94811,-59.9382,10.9});
			return Coordinate_7_94_point;
		}
		/** Large attribute array: Normal vector field, scene-graph level=7, element #95, 198 total numbers made up of 66 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getNormal_7_95_vector()
		{
			MFVec3f Normal_7_95_vector = new MFVec3f(new double[] {0.995968,0.012811,-0.0887847,0.994477,-0.0610756,-0.0853583,0.983169,-0.168001,-0.0718003,0.995402,-0.00387947,-0.0957037,0.982169,0.170553,-0.079097,0.906926,0.417935,-0.0530562,0.820446,0.570678,-0.0345776,0.963709,0.257797,-0.0693236,0.581195,0.8137,0.0102329,0.430135,0.902058,0.0357116,0.102632,0.990889,0.0872071,-0.072956,0.990923,0.112914,-0.400904,0.90251,0.157327,-0.554156,0.813513,0.176372,-0.795081,0.571922,0.20187,-0.884485,0.417113,0.209054,-0.962486,0.171913,0.209922,-0.974171,0.0834993,0.209808,-0.97352,-0.0883965,0.21082,-0.85725,-0.158088,0.490032,-0.663349,-0.316689,0.677995,-0.763884,-0.611434,0.206468,-0.680567,-0.705725,0.196929,-0.547107,-0.816291,0.185322,-0.395566,-0.903048,0.167428,-0.0701871,-0.989785,0.124096,0.103655,-0.989712,0.0986193,0.428938,-0.902124,0.0467315,0.612563,-0.790308,0.0133921,0.707952,-0.706233,-0.00618277,0.816836,-0.57625,-0.0267513,0.922017,-0.383633,-0.0520523,0.963069,-0.261187,-0.06541,-0.962782,-0.262218,-0.0655153,-0.863965,-0.50218,-0.0371525,-0.988829,-0.126998,-0.0780237,-0.990123,-0.118703,-0.0746042,-0.864777,-0.500791,-0.0370037,-0.707138,-0.707048,-0.00623609,-0.505339,-0.862268,0.0335529,-0.507418,-0.861053,0.0333931,-0.102754,-0.989789,0.0987937,0.0711037,-0.989708,0.124188,0.395597,-0.90304,0.167398,0.546359,-0.816809,0.185242,0.679515,-0.706696,0.197078,0.703918,-0.512535,0.491739,0.663349,-0.316689,0.677995,0.968149,-0.132985,0.21214,0.968476,-0.130173,0.212389,0.974058,0.0850711,0.209699,0.962779,0.170331,0.209868,0.884041,0.418088,0.208984,0.795933,0.57072,0.201917,0.553861,0.813729,0.176303,0.401875,0.902058,0.157443,0.0733297,0.990891,0.112952,-0.102264,0.990921,0.0872772,-0.429263,0.902467,0.0358633,-0.581527,0.813463,0.0102069,-0.819712,0.571742,-0.0343998,-0.907359,0.416987,-0.0531175,-0.964218,0.255753,-0.0698163,-0.992719,0.0826137,-0.0876598,-0.995816,0.00724718,-0.0910946,-0.995402,-0.00387956,-0.0957036});
			return Normal_7_95_vector;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=8, element #108, 165 total numbers made up of 55 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getCoordinate_8_108_point()
		{
			MFVec3f Coordinate_8_108_point = new MFVec3f(new double[] {-2.9055,-82.5883,-1.91155,-3.07021,-82.5745,-2.07569,-3.29521,-82.5695,-2.13577,-3.52021,-82.5745,-2.07569,-3.68492,-82.5883,-1.91155,-3.74521,-82.607,-1.68734,-3.68492,-82.6258,-1.46312,-3.52021,-82.6395,-1.29899,-3.29521,-82.6446,-1.23891,-3.07021,-82.6395,-1.29899,-2.9055,-82.6258,-1.46312,-2.84521,-82.607,-1.68734,-3.07021,-92.5397,-2.90985,-2.9055,-92.5534,-2.74572,-3.29521,-92.5347,-2.96993,-3.52021,-92.5397,-2.90985,-3.68492,-92.5534,-2.74572,-3.74521,-92.5722,-2.5215,-3.68492,-92.591,-2.29728,-3.52021,-92.6047,-2.13315,-3.29521,-92.6097,-2.07307,-3.07021,-92.6047,-2.13315,-2.9055,-92.591,-2.29728,-2.84521,-92.5722,-2.5215,-3.17021,-92.5596,-2.67087,-3.42021,-92.5596,-2.67087,-3.54521,-92.5777,-2.45512,-3.42021,-92.5959,-2.23937,-3.17021,-92.5959,-2.23937,-3.04521,-92.5777,-2.45512,-3.89521,-104.482,-3.51843,-3.81482,-104.507,-3.21947,-3.59521,-104.525,-3.00062,-3.29521,-104.532,-2.92052,-2.99521,-104.525,-3.00062,-2.77559,-104.507,-3.21947,-2.69521,-104.482,-3.51843,-2.77559,-104.457,-3.81738,-2.99521,-104.438,-4.03623,-3.29521,-104.432,-4.11634,-3.59521,-104.438,-4.03623,-3.81482,-104.457,-3.81738,-3.79521,-99.9975,-3.14306,-3.72822,-100.018,-2.89393,-3.54521,-100.034,-2.71155,-3.29521,-100.039,-2.6448,-3.04521,-100.034,-2.71155,-2.86219,-100.018,-2.89393,-2.79521,-99.9975,-3.14306,-2.86219,-99.9766,-3.39218,-3.04521,-99.9614,-3.57456,-3.29521,-99.9558,-3.64131,-3.54521,-99.9614,-3.57456,-3.72822,-99.9766,-3.39218,-3.29521,-104.88,-3.55179});
			return Coordinate_8_108_point;
		}
		/** Large attribute array: Normal vector field, scene-graph level=8, element #109, 309 total numbers made up of 103 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getNormal_8_109_vector()
		{
			MFVec3f Normal_8_109_vector = new MFVec3f()/*2.finalize*/
				.append(new MFVec3f(getNormal_8_109_vector_1()))
				.append(new MFVec3f(getNormal_8_109_vector_2()));
			return Normal_8_109_vector;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=11, element #114, 114 total numbers made up of 38 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getCoordinate_11_114_point()
		{
			MFVec3f Coordinate_11_114_point = new MFVec3f(new double[] {-3.29521,-103.844,-1.65876,-3.64162,-103.637,-1.74172,-3.82021,-103.521,-1.8826,-3.81482,-103.487,-2.33129,-3.29521,-103.694,-3.45248,-2.77559,-104.085,-2.38134,-2.77021,-104.125,-1.93317,-2.9488,-104.035,-1.77509,-1.58331,-103.74,-2.89819,-1.78546,-103.566,-2.58399,-1.9833,-103.474,-2.45233,-2.40962,-103.465,-2.59626,-2.08848,-103.98,-3.63124,-1.65884,-103.994,-3.49802,-1.57136,-103.91,-3.27398,-2.23719,-103.573,-4.90364,-2.01572,-103.397,-4.60343,-1.95941,-103.313,-4.36929,-2.22827,-103.346,-4.00992,-3.06902,-103.893,-4.66868,-2.80887,-103.866,-5.03488,-2.57622,-103.762,-5.04261,-4.36608,-103.575,-4.8757,-4.02705,-103.365,-4.9813,-3.7944,-103.264,-4.95638,-3.53425,-103.298,-4.5907,-3.30806,-103.696,-3.42455,-4.37501,-103.947,-4.03203,-4.64386,-103.92,-4.39192,-4.58755,-103.798,-4.60886,-5.01669,-103.744,-2.8525,-5.02864,-103.515,-3.19492,-4.94116,-103.394,-3.40177,-4.51152,-103.386,-3.5355,-3.30479,-103.698,-3.40679,-4.19038,-104.066,-2.60062,-4.6167,-104.081,-2.45721,-4.81454,-103.968,-2.57167});
			return Coordinate_11_114_point;
		}
		/** Large attribute array: Normal vector field, scene-graph level=11, element #115, 114 total numbers made up of 38 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getNormal_11_115_vector()
		{
			MFVec3f Normal_11_115_vector = new MFVec3f(new double[] {-0.500008,-0.863004,-0.0722176,-0.500022,-0.863,-0.0721778,-0.500004,-0.863006,-0.0722252,-0.5,-0.863008,-0.0722374,-0.129921,-0.937518,0.32277,-0.499999,-0.863007,-0.0722413,-0.500001,-0.863007,-0.0722324,-0.499998,-0.863008,-0.0722414,-0.15451,-0.902673,0.401631,-0.154508,-0.902675,0.401627,-0.154514,-0.902671,0.401634,-0.154524,-0.902665,0.401645,-0.154515,-0.902671,0.401634,-0.15452,-0.902668,0.40164,-0.154513,-0.902672,0.401632,0.404489,-0.887524,0.220659,0.404508,-0.887521,0.220634,0.404512,-0.887521,0.220627,0.40451,-0.887521,0.22063,0.404511,-0.887521,0.220629,0.404514,-0.88752,0.220625,0.404503,-0.887522,0.22064,0.404509,-0.83849,-0.365112,0.404503,-0.838495,-0.365108,0.404497,-0.838501,-0.3651,0.404505,-0.838494,-0.365109,0.404509,-0.838491,-0.36511,0.404511,-0.838488,-0.365114,0.404509,-0.838491,-0.365111,0.404508,-0.838492,-0.365109,-0.154517,-0.823343,-0.546105,-0.154514,-0.823342,-0.546108,-0.154509,-0.823341,-0.54611,-0.154506,-0.823339,-0.546115,-0.154512,-0.823339,-0.546113,-0.154511,-0.823341,-0.54611,-0.154519,-0.823345,-0.546102,-0.154525,-0.823346,-0.546097});
			return Normal_11_115_vector;
		}
		/** Large attribute array: Normal vector field, scene-graph level=12, element #150, 114 total numbers made up of 38 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getNormal_12_150_vector()
		{
			MFVec3f Normal_12_150_vector = new MFVec3f(new double[] {0.499998,-0.863008,-0.0722414,0.500001,-0.863007,-0.0722324,0.499999,-0.863007,-0.0722413,0.125488,-0.942867,0.308633,0.5,-0.863008,-0.0722374,0.500004,-0.863006,-0.0722252,0.500022,-0.863,-0.0721778,0.500008,-0.863004,-0.0722176,0.154513,-0.902672,0.401632,0.15452,-0.902668,0.40164,0.154515,-0.902671,0.401634,0.154513,-0.902677,0.401623,0.154513,-0.902682,0.401611,0.154512,-0.902675,0.401626,0.15451,-0.902673,0.401631,-0.404503,-0.887522,0.22064,-0.404514,-0.88752,0.220625,-0.404511,-0.887521,0.220629,-0.40451,-0.887521,0.22063,-0.404512,-0.887521,0.220627,-0.404508,-0.887521,0.220634,-0.404489,-0.887524,0.220659,-0.404508,-0.838492,-0.365109,-0.404509,-0.838491,-0.365111,-0.404511,-0.838488,-0.365114,-0.404509,-0.838491,-0.36511,-0.404505,-0.838494,-0.365109,-0.404497,-0.838501,-0.3651,-0.404503,-0.838495,-0.365108,-0.404509,-0.83849,-0.365112,0.154525,-0.823346,-0.546097,0.154519,-0.823345,-0.546102,0.154511,-0.823341,-0.54611,0.154512,-0.823339,-0.546113,0.154506,-0.823339,-0.546115,0.154509,-0.823341,-0.54611,0.154514,-0.823342,-0.546108,0.154517,-0.823343,-0.546105});
			return Normal_12_150_vector;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=8, element #290, 240 total numbers made up of 80 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getCoordinate_8_290_point()
		{
			MFVec3f Coordinate_8_290_point = new MFVec3f(new double[] {-4.15667,-79.2924,12.1594,-4.15667,-79.2924,10.8016,-5.16752,-79.2924,10.8016,-5.16752,-79.2924,12.1594,-5.16752,-80.0,12.1594,-4.15667,-80.0,12.1594,-4.15667,-80.0,10.8292,-5.16752,-80.0,10.8292,-2.84257,-79.2924,12.1594,-2.84257,-79.2924,10.8016,-3.85342,-79.2924,10.8016,-3.85342,-79.2924,12.1594,-3.85342,-80.0,12.1594,-2.84257,-80.0,12.1594,-2.84257,-80.0,10.8292,-3.85342,-80.0,10.8292,-3.77294,-81.9547,13.0922,-3.73908,-81.9547,12.9659,-3.73909,-80.944,12.9659,-3.77294,-80.944,13.0922,-3.86544,-81.9547,13.1847,-3.86544,-80.944,13.1847,-3.99179,-81.9547,13.2186,-3.9918,-80.944,13.2186,-4.11815,-81.9547,13.1847,-4.11816,-80.944,13.1847,-4.21065,-81.9547,13.0922,-4.21065,-80.944,13.0922,-4.2445,-81.9547,12.9659,-4.24451,-80.944,12.9659,-4.21065,-80.944,12.8395,-4.21065,-81.9547,12.8395,-4.11815,-80.944,12.747,-4.11815,-81.9547,12.747,-3.9918,-80.944,12.7132,-3.99179,-81.9547,12.7132,-3.86544,-80.944,12.747,-3.86544,-81.9547,12.747,-3.77294,-80.944,12.8395,-3.77294,-81.9547,12.8395,-4.86427,-80.9177,12.6,-4.86427,-81.0726,13.7209,-4.45993,-81.0726,13.7209,-4.45993,-80.9177,12.6,-4.45993,-80.455,12.1372,-4.86427,-80.455,12.1372,-4.45993,-81.915,12.5865,-4.86427,-81.915,12.5865,-4.86427,-82.3643,12.1372,-4.45993,-82.3643,12.1372,-4.86427,-81.7465,13.7209,-4.45993,-81.7465,13.7209,-3.55016,-80.9177,12.6,-3.55016,-81.0726,13.7209,-3.14582,-81.0726,13.7209,-3.14582,-80.9177,12.6,-3.14582,-80.455,12.1372,-3.55016,-80.455,12.1372,-3.14582,-81.915,12.5865,-3.55016,-81.915,12.5865,-3.55016,-82.3643,12.1372,-3.14582,-82.3643,12.1372,-3.55016,-81.7465,13.7209,-3.14582,-81.7465,13.7209,-2.79763,-80.2022,12.0361,-2.79763,-82.617,12.0361,-2.79763,-82.617,10.8956,-2.79763,-80.2022,10.8384,-5.21245,-82.617,12.0361,-5.21245,-80.2022,12.0361,-5.21245,-82.617,10.8956,-5.21245,-80.2022,10.8384,-3.55016,-81.915,13.2209,-3.55016,-80.9042,13.2209,-3.55016,-80.9042,13.7209,-3.55016,-81.915,13.7209,-4.45993,-80.9042,13.2209,-4.45993,-81.915,13.2209,-4.45993,-81.915,13.7209,-4.45993,-80.9042,13.7209});
			return Coordinate_8_290_point;
		}
		/** Large attribute array: Normal vector field, scene-graph level=8, element #291, 126 total numbers made up of 42 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getNormal_8_291_vector()
		{
			MFVec3f Normal_8_291_vector = new MFVec3f(new double[] {0,1,0,0,0,1,0,-1,0,1,0,0,-1,0,0,0.907073,5.56291e-006,0.420974,1,6.13282e-006,2.57628e-006,1,6.13282e-006,2.57628e-006,0.818111,5.01734e-006,0.575061,0.575062,3.52677e-006,0.81811,0.420975,2.5608e-006,0.907072,0.0889631,5.45598e-007,0.996035,-0.0889621,-5.45593e-007,0.996035,-0.420977,-2.56081e-006,0.907071,-0.575065,-3.5268e-006,0.818107,-0.818115,-5.01738e-006,0.575055,-0.907076,-5.56297e-006,0.420968,-1,-6.13286e-006,-6.23243e-006,-0.90707,-5.56294e-006,-0.420979,-0.818107,-5.01734e-006,-0.575065,-0.575059,-3.52676e-006,-0.818112,-0.420974,-2.58177e-006,-0.907073,-0.0889631,-5.45598e-007,-0.996035,0.0889631,5.45598e-007,-0.996035,0.420975,2.58178e-006,-0.907072,0.575062,3.52676e-006,-0.81811,0.818111,5.01734e-006,-0.57506,0.907074,5.56292e-006,-0.420971,-5.81007e-006,1,2.16833e-005,-1.66518e-005,1,2.18919e-005,-1.58734e-005,1,-1.13972e-006,-1.16201e-005,1,-3.1747e-005,0,1,-4.12405e-005,-5.81007e-006,1,-3.33038e-005,-1.66518e-005,1,-5.60162e-006,-1.58734e-005,1,-1.13974e-006,-1.16201e-005,1,2.32401e-005,0.0,0.99058,0.136938,0.0,0.707153,0.707061,0.0,-0.707105,0.707109,0.0,-0.989152,0.146895,0.0,0.0,-1.0});
			return Normal_8_291_vector;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=9, element #317, 147 total numbers made up of 49 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getCoordinate_9_317_point()
		{
			MFVec3f Coordinate_9_317_point = new MFVec3f(new double[] {-4.25774,-81.8473,13.7209,-4.25775,-81.8473,15.2147,-4.44275,-81.6623,15.2147,-4.44273,-81.6623,13.7209,-4.51047,-81.4096,15.2147,-4.51045,-81.4096,13.7209,-3.62599,-81.1907,15.4674,-3.56735,-81.4096,15.4674,-3.49963,-81.4096,15.2147,-3.56735,-81.1569,15.2147,-3.62599,-81.6284,15.4674,-3.56734,-81.6623,15.2147,-3.78621,-81.0305,15.4674,-3.75235,-80.9719,15.2147,-4.00506,-80.9719,15.4674,-4.00506,-80.9042,15.2147,-4.22391,-81.0305,15.4674,-4.25777,-80.9719,15.2147,-4.38412,-81.1907,15.4674,-4.44276,-81.1569,15.2147,-4.44276,-81.4096,15.4674,-4.38411,-81.6284,15.4674,-4.2239,-81.7886,15.4674,-4.00505,-81.8473,15.4674,-4.00504,-81.915,15.2147,-3.78619,-81.7886,15.4674,-3.75234,-81.8473,15.2147,-4.00506,-81.4096,15.7201,-3.7862,-81.5359,15.6524,-3.75234,-81.4096,15.6524,-3.87869,-81.6284,15.6524,-4.00505,-81.6623,15.6524,-4.1314,-81.6284,15.6524,-4.2239,-81.5359,15.6524,-4.25776,-81.4096,15.6524,-4.22391,-81.2832,15.6524,-4.13141,-81.1907,15.6524,-4.00506,-81.1569,15.6524,-3.8787,-81.1907,15.6524,-3.7862,-81.2832,15.6524,-3.56737,-81.1569,13.7209,-3.49966,-81.4096,13.7209,-3.75236,-80.9719,13.7209,-4.00506,-80.9042,13.7209,-4.25776,-80.9719,13.7209,-4.44274,-81.1569,13.7209,-4.00504,-81.915,13.7209,-3.75235,-81.8473,13.7209,-3.56736,-81.6623,13.7209});
			return Coordinate_9_317_point;
		}
		/** Large attribute array: Normal vector field, scene-graph level=9, element #318, 147 total numbers made up of 49 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getNormal_9_318_vector()
		{
			MFVec3f Normal_9_318_vector = new MFVec3f(new double[] {-0.575048,-0.81812,-1.36365e-005,-0.417374,-0.899366,0.130155,-0.811144,-0.570181,0.130154,-0.907068,-0.420984,-1.503e-005,-0.993017,-0.0373234,0.111916,-1,-1.69849e-005,-1.40452e-005,0.750413,0.389503,0.534011,0.889423,-0.0531145,0.453989,0.987561,0.0882186,0.130155,0.828068,0.538342,0.156497,0.743404,-0.442343,0.50168,0.899362,-0.417381,0.130157,0.490712,0.743707,0.453985,0.496943,0.85789,0.130661,0.037882,0.844628,0.534011,0.00141647,0.991426,0.13066,-0.422634,0.754784,0.501679,-0.494481,0.859312,0.130661,-0.743401,0.442349,0.50168,-0.857889,0.496944,0.130661,-0.864978,0.011381,0.50168,-0.754782,-0.422634,0.501682,-0.442342,-0.743404,0.501682,-0.0113794,-0.864979,0.50168,0.0882152,-0.987561,0.13016,0.422631,-0.754783,0.501682,0.570184,-0.811141,0.130155,-7.12368e-006,1.19188e-005,1,0.451294,-0.305471,0.838464,0.573579,1.05536e-005,0.81915,0.238091,-0.490195,0.838464,-0.038903,-0.543566,0.838465,-0.305476,-0.45129,0.838464,-0.490195,-0.238099,0.838461,-0.543575,0.0389056,0.838459,-0.451299,0.305482,0.838457,-0.238104,0.490204,0.838455,-1.52583e-005,0.498236,0.867041,0.286784,0.496743,0.819147,0.431476,0.24912,0.867045,0.866017,0.500014,-1.31952e-005,0.996036,-0.0889491,-1.38079e-005,0.420957,0.907081,-1.32928e-005,-0.0889791,0.996033,-1.41903e-005,-0.575069,0.818105,-1.23952e-005,-0.907079,0.420961,-1.33343e-005,-0.0889491,-0.996036,-1.41903e-005,0.420985,-0.907067,-1.32927e-005,0.818119,-0.57505,-1.28607e-005});
			return Normal_9_318_vector;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=9, element #342, 156 total numbers made up of 52 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getCoordinate_9_342_point()
		{
			MFVec3f Coordinate_9_342_point = new MFVec3f(new double[] {-0.4,-15.3,9.64547,0.4,-15.3,9.64547,0.4,-13.3,9.64547,0.34641,-13.1,9.64547,0.2,-12.9536,9.64547,-3.36536e-016,-12.9,9.64547,-0.2,-12.9536,9.64547,-0.34641,-13.1,9.64547,-0.4,-13.3,9.64547,1,-13.3,8.74547,0.801619,-13.2947,9.24546,0.801619,-15.4442,9.24546,1,-15.4571,8.74547,-0.801619,-15.4442,9.24546,-1,-15.4571,8.74547,-0.801619,-13.2947,9.24546,-1,-13.3,8.74547,-0.730021,-13.0275,9.24546,-0.866025,-12.8,8.74547,-0.694223,-12.8939,9.24546,-0.498613,-12.6983,9.24546,-0.5,-12.434,8.74547,-0.40081,-12.6004,9.24546,-2.08119e-016,-12.4931,9.24546,-6.245e-017,-12.3,8.74547,0.40081,-12.6004,9.24546,0.5,-12.434,8.74547,0.498613,-12.6983,9.24546,0.694223,-12.8939,9.24546,0.866025,-12.8,8.74547,0.730021,-13.0275,9.24546,5.55112e-017,-11.8,6.84547,0.75,-12.001,6.84546,1.29904,-12.55,6.84546,1.5,-13.3,6.84546,1.29904,-14.05,6.84546,1.11017,-15.1136,8.04546,0.907894,-15.3159,8.04546,0.75,-14.599,6.84546,0.631576,-15.3899,8.04546,5.55112e-017,-14.8,6.84547,-0.631576,-15.3899,8.04546,-0.907894,-15.3159,8.04546,-0.75,-14.599,6.84547,-1.11017,-15.1136,8.04546,-1.29904,-14.05,6.84548,1.11017,-13.5763,8.04546,-1.11017,-13.5763,8.04546,-1.18421,-13.3,8.04546,-1.5,-13.3,6.84548,-1.29904,-12.55,6.84548,-0.75,-12.001,6.84547});
			return Coordinate_9_342_point;
		}
		/** Large attribute array: Normal vector field, scene-graph level=9, element #343, 210 total numbers made up of 70 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getNormal_9_343_vector()
		{
			MFVec3f Normal_9_343_vector = new MFVec3f(new double[] {0,0,1,0,-1.58946e-006,1,0,-5.35014e-006,1,0,-1.02744e-005,1,0,-1.77958e-005,1,0,-1.21547e-005,1,0,-5.93191e-006,1,0,-3.17892e-006,1.0,0.954542,0.0717194,0.28932,0.829021,0.114669,0.547335,0.871069,0.0,0.49116,0.973702,0.0,0.227823,0.699395,0.124128,0.703874,0.70568,0.0,0.708531,0.198205,-0.974565,-0.104587,0.0,-0.971425,0.237347,0.0,-0.991282,0.131754,-0.197785,-0.971601,-0.12989,0.0,-0.940769,0.339047,-0.96459,0.0,0.263754,-0.795048,0.0,0.606546,-0.853879,0.0877295,0.513025,-0.952217,0.082335,0.294115,-0.70568,0.0,0.708531,-0.701992,0.0931415,0.706068,-0.814403,0.218217,0.537707,-0.838975,0.441782,0.317725,-0.72287,0.417296,0.550748,-0.596399,0.596397,0.537233,-0.506029,0.80259,0.315886,-0.609249,0.351422,0.710858,-0.371549,0.720613,0.585379,-0.404532,0.575254,0.710941,-0.010109,0.834971,0.550201,-0.00143607,0.951425,0.307876,-0.0624884,0.699628,0.71177,0.408847,0.728211,0.550047,0.503859,0.803811,0.316251,0.296003,0.63745,0.711365,0.596398,0.596397,0.537233,0.589802,0.383687,0.710575,0.716331,0.472059,0.513839,0.837593,0.443961,0.318335,0.79222,0.212273,0.572126,0.086056,0.963487,0.253549,0.556271,0.791376,0.253548,0.877432,0.407217,0.253548,0.967075,0.0,0.254492,0.971003,-0.126595,0.202796,0.674822,-0.451667,-0.58362,0.663336,-0.663338,-0.346363,0.502161,-0.770571,-0.392497,0.670852,-0.564511,-0.48092,0.239833,-0.895081,-0.375911,0.118848,-0.93819,-0.325076,0.00566904,-0.944932,-0.327218,-0.121156,-0.936847,-0.328083,-0.418163,-0.812459,-0.406264,-0.470174,-0.82396,-0.316269,-0.652761,-0.652759,-0.384459,-0.698117,-0.492911,-0.519299,0.98784,0.0,0.155474,0.98784,0.0,0.155474,-0.975853,-0.101238,0.193551,-0.961304,-0.168618,0.217859,-0.98784,0.0,0.155475,-0.936155,-0.250843,0.246358,-0.963487,0.0860552,0.25355,-0.791376,0.55627,0.25355,-0.407216,0.877432,0.25355});
			return Normal_9_343_vector;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=8, element #574, 228 total numbers made up of 76 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getCoordinate_8_574_point()
		{
			MFVec3f Coordinate_8_574_point = new MFVec3f(new double[] {-1.3806,-46.449,14.7052,-1.50228,-46.5369,14.879,-1.55268,-46.749,14.951,-1.50228,-46.9612,14.879,-1.3806,-47.049,14.7052,-1.25893,-46.9612,14.5315,-1.20853,-46.749,14.4595,-1.25893,-46.5369,14.5315,-6.41719,-46.5369,11.4375,-6.29552,-46.449,11.2638,-6.46759,-46.749,11.5095,-6.41719,-46.9612,11.4375,-6.29552,-47.049,11.2638,-6.17384,-46.9612,11.09,-6.12344,-46.749,11.018,-6.17384,-46.5369,11.09,-6.17384,-45.7369,11.09,-6.12344,-45.949,11.018,-6.17384,-46.1612,11.09,-6.29552,-46.249,11.2638,-6.41719,-46.1612,11.4375,-6.46759,-45.949,11.5095,-6.41719,-45.7369,11.4375,-6.29552,-45.649,11.2638,-1.3806,-45.649,14.7052,-1.25893,-45.7369,14.5315,-1.20853,-45.949,14.4595,-1.25893,-46.1612,14.5315,-1.3806,-46.249,14.7052,-1.50228,-46.1612,14.879,-1.55268,-45.949,14.951,-1.50228,-45.7369,14.879,-0.921743,-45.649,14.0499,-1.04342,-45.7369,14.2237,-1.09382,-45.949,14.2956,-1.04342,-46.1612,14.2237,-0.921743,-46.249,14.0499,-0.800069,-46.1612,13.8761,-0.74967,-45.949,13.8042,-0.800069,-45.7369,13.8761,-5.95833,-45.7369,10.7822,-5.83666,-45.649,10.6084,-6.00873,-45.949,10.8542,-5.95833,-46.1612,10.7822,-5.83666,-46.249,10.6084,-5.71498,-46.1612,10.4347,-5.66458,-45.949,10.3627,-5.71498,-45.7369,10.4347,-5.71498,-46.5369,10.4347,-5.66458,-46.749,10.3627,-5.71498,-46.9612,10.4347,-5.83666,-47.049,10.6084,-5.95833,-46.9612,10.7822,-6.00873,-46.749,10.8542,-5.95833,-46.5369,10.7822,-5.83666,-46.449,10.6084,-0.921743,-46.449,14.0499,-0.800069,-46.5369,13.8761,-0.74967,-46.749,13.8042,-0.800069,-46.9612,13.8761,-0.921743,-47.049,14.0499,-1.04342,-46.9612,14.2237,-1.09382,-46.749,14.2956,-1.04342,-46.5369,14.2237,-3.68056,-45.662,13.4569,-2.88138,-45.662,12.3156,-2.88138,-47.036,12.3156,-3.68056,-47.036,13.4569,-5.7227,-45.662,12.027,-4.92353,-45.662,10.8857,-4.92353,-47.036,10.8857,-5.7227,-47.036,12.027,-2.88138,-47.0363,10.8915,-2.88138,-45.6394,10.8915,-2.88138,-45.6394,12.3225,-2.88138,-47.0363,12.3225});
			return Coordinate_8_574_point;
		}
		/** Large attribute array: Normal vector field, scene-graph level=8, element #575, 342 total numbers made up of 114 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getNormal_8_575_vector()
		{
			MFVec3f Normal_8_575_vector = new MFVec3f()/*2.finalize*/
				.append(new MFVec3f(getNormal_8_575_vector_1()))
				.append(new MFVec3f(getNormal_8_575_vector_2()));
			return Normal_8_575_vector;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=8, element #580, 228 total numbers made up of 76 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getCoordinate_8_580_point()
		{
			MFVec3f Coordinate_8_580_point = new MFVec3f(new double[] {1.25893,-44.8579,14.5315,1.20853,-45.07,14.4595,1.25893,-45.2821,14.5315,1.3806,-45.37,14.7052,1.50228,-45.2821,14.879,1.55268,-45.07,14.951,1.50228,-44.8579,14.879,1.3806,-44.77,14.7052,6.29552,-44.77,11.2638,6.41719,-44.8579,11.4375,6.46759,-45.07,11.5095,6.41719,-45.2821,11.4375,6.29552,-45.37,11.2638,6.17384,-45.2821,11.09,6.12344,-45.07,11.018,6.17384,-44.8579,11.09,6.29552,-43.97,11.2638,6.41719,-44.0579,11.4375,6.46759,-44.27,11.5095,6.41719,-44.4821,11.4375,6.29552,-44.57,11.2638,6.17384,-44.4821,11.09,6.12344,-44.27,11.018,6.17384,-44.0579,11.09,1.25893,-44.0579,14.5315,1.3806,-43.97,14.7052,1.20853,-44.27,14.4595,1.25893,-44.4821,14.5315,1.3806,-44.57,14.7052,1.50228,-44.4821,14.879,1.55268,-44.27,14.951,1.50228,-44.0579,14.879,0.800069,-44.0579,13.8761,0.74967,-44.27,13.8042,0.800069,-44.4821,13.8761,0.921743,-44.57,14.0499,1.04342,-44.4821,14.2237,1.09382,-44.27,14.2956,1.04342,-44.0579,14.2237,0.921743,-43.97,14.0499,5.83666,-43.97,10.6084,5.95833,-44.0579,10.7822,6.00873,-44.27,10.8542,5.95833,-44.4821,10.7822,5.83666,-44.57,10.6084,5.71498,-44.4821,10.4347,5.66458,-44.27,10.3627,5.71498,-44.0579,10.4347,5.83666,-44.77,10.6084,5.95833,-44.8579,10.7822,6.00873,-45.07,10.8542,5.95833,-45.2821,10.7822,5.83666,-45.37,10.6084,5.71498,-45.2821,10.4347,5.66458,-45.07,10.3627,5.71498,-44.8579,10.4347,0.800069,-44.8579,13.8761,0.921743,-44.77,14.0499,0.74967,-45.07,13.8042,0.800069,-45.2821,13.8761,0.921743,-45.37,14.0499,1.04342,-45.2821,14.2237,1.09382,-45.07,14.2956,1.04342,-44.8579,14.2237,3.68056,-45.357,13.4569,2.88138,-45.357,12.3156,2.88138,-43.983,12.3156,3.68056,-43.983,13.4569,5.7227,-45.357,12.027,4.92353,-45.357,10.8857,4.92353,-43.983,10.8857,5.7227,-43.983,12.027,2.88138,-45.3572,12.3225,2.88138,-43.9604,12.3225,2.88138,-43.9604,10.8915,2.88138,-45.3572,10.8915});
			return Coordinate_8_580_point;
		}
		/** Large attribute array: Normal vector field, scene-graph level=8, element #581, 384 total numbers made up of 128 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getNormal_8_581_vector()
		{
			MFVec3f Normal_8_581_vector = new MFVec3f()/*2.finalize*/
				.append(new MFVec3f(getNormal_8_581_vector_1()))
				.append(new MFVec3f(getNormal_8_581_vector_2()));
			return Normal_8_581_vector;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=8, element #586, 162 total numbers made up of 54 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getCoordinate_8_586_point()
		{
			MFVec3f Coordinate_8_586_point = new MFVec3f(new double[] {-5.99777,-58.2479,10.8988,-4.87531,-58.2479,11.3014,-4.75103,-58.2479,12.2562,-7.2445,-58.2479,12.2562,-7.12023,-58.2479,11.3014,-7.24689,-57.6445,12.2562,-4.74865,-57.6445,12.2562,-4.7504,-55.1481,12.2562,-4.84243,-53.3552,12.2562,-4.97871,-52.613,12.2562,-5.08759,-52.1732,12.2562,-5.19439,-51.8826,12.2562,-5.31229,-51.6397,12.2562,-5.48893,-51.3505,12.2562,-5.71335,-51.0614,12.2562,-5.99777,-50.8812,12.2562,-6.28218,-51.0614,12.2562,-6.50661,-51.3505,12.2562,-6.68325,-51.6397,12.2562,-6.80114,-51.8826,12.2562,-6.90794,-52.1732,12.2562,-7.01683,-52.613,12.2562,-7.15311,-53.3552,12.2562,-7.24513,-55.1481,12.2562,-4.87531,-55.1481,11.3014,-5.00375,-53.3552,11.3845,-5.99777,-51.3248,11.6941,-5.73278,-51.5845,11.6478,-5.99777,-51.5915,11.3795,-5.99777,-51.9949,11.0592,-5.44679,-51.9808,11.5761,-5.99777,-52.613,10.8999,-5.17355,-52.589,11.4661,-5.99777,-53.3552,10.8993,-5.99777,-55.1475,10.8991,-5.09144,-52.1685,12.2562,-4.75103,-55.1481,12.2562,-7.04136,-57.4602,13.1519,-5.99777,-57.4553,13.1799,-5.99777,-52.8003,12.9829,-6.60391,-53.1317,12.9805,-6.70229,-52.6691,12.2562,-7.24653,-57.6403,12.2562,-7.12023,-55.1481,11.3014,-7.2445,-55.1481,12.2562,-6.82198,-52.589,11.4661,-6.99179,-53.3552,11.3845,-6.9041,-52.1685,12.2562,-6.54875,-51.9808,11.5761,-6.26276,-51.5845,11.6478,-4.95417,-57.4602,13.1519,-4.74901,-57.6403,12.2562,-5.29324,-52.6691,12.2562,-5.39162,-53.1317,12.9805});
			return Coordinate_8_586_point;
		}
		/** Large attribute array: Normal vector field, scene-graph level=8, element #587, 204 total numbers made up of 68 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getNormal_8_587_vector()
		{
			MFVec3f Normal_8_587_vector = new MFVec3f(new double[] {0,-1,-9.47528e-006,0,-1,-2.73991e-006,0,-1,3.99546e-006,0,-1,-4.94789e-007,0,0,1,0.990861,0.0384348,-0.129298,0.979277,0.119802,-0.16329,0.985767,0.0636366,-0.155605,0.968389,0.152841,-0.197133,0.502761,0.662088,-0.555762,0.636484,0.569387,-0.520275,0.572521,0.563477,-0.595578,1.59575e-007,0.994438,-0.10532,0.76133,0.525092,-0.380335,4.93679e-007,0.628257,-0.778006,0.880681,0.310777,-0.357517,0.4386,0.000383069,-0.898682,0.444272,0.0696434,-0.893181,0.337384,0.0225868,-0.941096,0.371561,0.0226569,-0.928132,0.926646,0.28331,-0.247107,0.857176,0.390419,-0.335891,0.76431,0.483425,-0.426768,0.445192,0.702843,-0.554811,0.558606,0.630649,-0.53874,0.721634,0.498002,-0.480872,0.951178,0.207723,-0.228281,0.991635,-1.38987e-007,-0.129073,0.991635,0,-0.129073,0.337612,-2.02718e-006,-0.941285,0.337497,4.53163e-005,-0.941327,-0.0269815,0.0422707,0.998742,0.00899683,0.0422844,0.999065,-0.00899665,0.0422844,0.999065,-0.0269818,0.0422708,0.998742,-0.973788,0.106502,0.200985,-0.973904,0.10662,0.200357,-0.973671,0.106384,0.201614,-0.363125,0.0169872,-0.931586,-0.337612,9.26515e-005,-0.941285,-0.337496,4.53121e-005,-0.941327,-0.337205,0.033836,-0.940823,-0.991282,0.0256211,-0.129244,-0.991635,-2.77976e-007,-0.129073,-0.991635,-1.38988e-007,-0.129073,-0.991635,0.0,-0.129072,-0.96839,0.152841,-0.197133,-0.951178,0.207723,-0.228281,-0.880681,0.310777,-0.357517,-0.979277,0.119802,-0.16329,-0.926646,0.28331,-0.247107,-0.857175,0.39042,-0.335891,-0.702897,0.48479,-0.520494,-0.76431,0.483424,-0.426769,-0.636484,0.569387,-0.520276,-0.558606,0.630649,-0.53874,-0.50276,0.662088,-0.555762,-0.721634,0.498002,-0.480873,-0.445192,0.702844,-0.554811,-0.56723,0.088918,-0.818745,-0.4386,0.000383069,-0.898682,-0.572521,0.563477,-0.595578,-0.985767,0.0636366,-0.155605,0.973812,0.106475,0.200884,0.973657,0.106592,0.201568,0.973965,0.106358,0.200199,0.0269815,0.0422707,0.998742,0.0269812,0.0422708,0.998742});
			return Normal_8_587_vector;
		}
		/** Large attribute array: CoordinateInterpolator DEF='flagflutter' keyValue field, scene-graph level=4, element #613, 1947 total numbers made up of 649 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getflagflutter_4_613_keyValue()
		{
			MFVec3f flagflutter_4_613_keyValue = new MFVec3f()/*2.finalize*/
				.append(new MFVec3f(getflagflutter_4_613_keyValue_1()))
				.append(new MFVec3f(getflagflutter_4_613_keyValue_2()))
				.append(new MFVec3f(getflagflutter_4_613_keyValue_3()))
				.append(new MFVec3f(getflagflutter_4_613_keyValue_4()))
				.append(new MFVec3f(getflagflutter_4_613_keyValue_5()))
				.append(new MFVec3f(getflagflutter_4_613_keyValue_6()))
				.append(new MFVec3f(getflagflutter_4_613_keyValue_7()));
			return flagflutter_4_613_keyValue;
		}

	/** The initialized model object, created within initialize() method. */
	private X3D x3dModel;

	/** 
	 * Provide a 
	 * <a href="https://dzone.com/articles/java-copy-shallow-vs-deep-in-which-you-will-swim" target="_blank">shallow copy</a>
	 * of the X3D model.
	 * @see <a href="https://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3D.html">X3D</a>
	 * @return MEKO200 model
	 */
	public X3D getX3dModel()
	{	  
		return x3dModel;
	}
	   
    /** 
     * Default main() method provided for test purposes, uses CommandLine to set global ConfigurationProperties for this object.
     * @param args array of input parameters, provided as arguments
     * @see <a href="https://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3D.html#handleArguments-java.lang.String:A-">X3D.handleArguments(args)</a>
     * @see <a href="https://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3D.html#validationReport--">X3D.validationReport()</a>
     * @see <a href="https://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html">CommandLine</a>
     * @see <a href="https://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html#USAGE">CommandLine.USAGE</a>
     * @see <a href="https://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/ConfigurationProperties.html">ConfigurationProperties</a>
     */
    public static void main(String args[])
    {
        System.out.println("Build this X3D model, showing validation diagnostics...");
        X3D thisExampleX3dModel = new MEKO200().getX3dModel();
//      System.out.println("X3D model construction complete.");
	
        // next handle command line arguments
        boolean hasArguments = (args != null) && (args.length > 0);
        boolean validate = true; // default
        boolean argumentsLoadNewModel = false;
        String  fileName = new String();

        if (args != null)
        {
                for (String arg : args)
                {
                        if (arg.toLowerCase().startsWith("-v") || arg.toLowerCase().contains("validate"))
                        {
                                validate = true; // making sure
                        }
                        if (arg.toLowerCase().endsWith(X3D.FILE_EXTENSION_X3D) ||
                                arg.toLowerCase().endsWith(X3D.FILE_EXTENSION_CLASSICVRML) ||
                                arg.toLowerCase().endsWith(X3D.FILE_EXTENSION_X3DB) ||
                                arg.toLowerCase().endsWith(X3D.FILE_EXTENSION_VRML97) ||
                                arg.toLowerCase().endsWith(X3D.FILE_EXTENSION_EXI) ||
                                arg.toLowerCase().endsWith(X3D.FILE_EXTENSION_GZIP) ||
                                arg.toLowerCase().endsWith(X3D.FILE_EXTENSION_ZIP) ||
                                arg.toLowerCase().endsWith(X3D.FILE_EXTENSION_HTML) ||
                                arg.toLowerCase().endsWith(X3D.FILE_EXTENSION_XHTML))
                        {
                                argumentsLoadNewModel = true;
                                fileName = arg;
                        }
                }
        }
        if      (argumentsLoadNewModel)
                System.out.println("WARNING: \"Savage.ShipsMilitary.FrigateMEKO200Greece.MEKO200\" model invocation is attempting to load file \"" + fileName + "\" instead of simply validating itself... file loading ignored.");
        else if (hasArguments) // if no arguments provided, this method produces usage warning
                thisExampleX3dModel.handleArguments(args);
	
        if (validate)
        {
            //  System.out.println("--- TODO fix duplicated outputs ---"); // omit when duplicated outputs problem is solved/refactored
		String validationResults = thisExampleX3dModel.validationReport();
            //  System.out.println("-----------------------------------"); // omit when duplicated outputs problem is solved/refactored
                System.out.print("Savage.ShipsMilitary.FrigateMEKO200Greece.MEKO200 self-validation test confirmation: ");
                if (!validationResults.equals("success"))
                    System.out.println();
                System.out.println(validationResults.trim());

                // experimental: test X3DJSAIL output files
                // ShipsMilitary/FrigateMEKO200Greece/MEKO200_JavaExport.* file validation is checked when building X3D Example Archives
                String filenameX3D  = "ShipsMilitary/FrigateMEKO200Greece/MEKO200_JavaExport.x3d"; 
                String filenameX3DV = "ShipsMilitary/FrigateMEKO200Greece/MEKO200_JavaExport.x3dv"; 
                String filenameJSON = "ShipsMilitary/FrigateMEKO200Greece/MEKO200_JavaExport.json";
                thisExampleX3dModel.toFileX3D        (filenameX3D);
                thisExampleX3dModel.toFileClassicVRML(filenameX3DV);
// TODO         thisExampleX3dModel.toFileJSON       (filenameJSON);
        }
    }
}
