package Savage.ShipsCivilian.CargoShips;

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

// Javadoc metadata annotations follow, see below for X3DJSAIL Java source code.
/**
 * <p> Basic Container Ship. </p>
 <p> Related links: Catalog page <a href="../../../../ShipsCivilian/CargoShips/ContainerShipBlueIndex.html" target="_blank">ContainerShipBlue</a>,  source <a href="../../../../ShipsCivilian/CargoShips/ContainerShipBlue.java">ContainerShipBlue.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="../../../../ShipsCivilian/CargoShips/ContainerShipBlue.x3d">ContainerShipBlue.x3d</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> description </i> </td>
			<td> Basic Container Ship </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> creator </i> </td>
			<td> Donated to the MOVES Institute (Delta 3D Group) by Naval Education and Training Command. Translated from the Delta3D open asset library. </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> translator </i> </td>
			<td> LT Patrick Sullivan </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> created </i> </td>
			<td> 23 March 2005 </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> translated </i> </td>
			<td> 30 January 2006 </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> modified </i> </td>
			<td> 20 October 2019 </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> identifier </i> </td>
			<td> <a href="https://www.web3d.org/x3d/content/examples/Savage/ShipsCivilian/CargoShips/ContainerShipBlue.x3d" target="_blank">https://www.web3d.org/x3d/content/examples/Savage/ShipsCivilian/CargoShips/ContainerShipBlue.x3d</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> generator </i> </td>
			<td> VizX3D, <a href="http://www.vivaty.com/downloads/studio" target="_blank">http://www.vivaty.com/downloads/studio</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> license </i> </td>
			<td> <a href="../../../../ShipsCivilian/CargoShips/../../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 Donated to the MOVES Institute (Delta 3D Group) by Naval Education and Training Command. Translated from the Delta3D open asset library.
 */

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

	/** Create and initialize the X3D model for this object. */
	public final void initialize()
	{
            try { // catch-all
  x3dModel = new X3D().setProfile(X3D.PROFILE_INTERCHANGE).setVersion(X3D.VERSION_3_0)
  .setHead(new head()
    .addMeta(new meta().setName(meta.NAME_TITLE      ).setContent("ContainerShipBlue.x3d"))
    .addMeta(new meta().setName(meta.NAME_DESCRIPTION).setContent("Basic Container Ship"))
    .addMeta(new meta().setName(meta.NAME_CREATOR    ).setContent("Donated to the MOVES Institute (Delta 3D Group) by Naval Education and Training Command. Translated from the Delta3D open asset library."))
    .addMeta(new meta().setName(meta.NAME_TRANSLATOR ).setContent("LT Patrick Sullivan"))
    .addMeta(new meta().setName(meta.NAME_CREATED    ).setContent("23 March 2005"))
    .addMeta(new meta().setName(meta.NAME_TRANSLATED ).setContent("30 January 2006"))
    .addMeta(new meta().setName(meta.NAME_MODIFIED   ).setContent("20 October 2019"))
    .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_IDENTIFIER ).setContent("https://www.web3d.org/x3d/content/examples/Savage/ShipsCivilian/CargoShips/ContainerShipBlue.x3d"))
    .addMeta(new meta().setName(meta.NAME_GENERATOR  ).setContent("VizX3D, http://www.vivaty.com/downloads/studio"))
    .addMeta(new meta().setName(meta.NAME_LICENSE    ).setContent("../../license.html")))
  .setScene(new Scene()
    .addChild(new WorldInfo().setTitle("Blue Container Ship")
      .setMetadata(new MetadataSet().setName("SMAL").setReference("https://www.web3d.org/x3d/content/examples/Savage/Tools/SMAL/SMAL.html")
        .setMetadata(new MetadataString().setName("version").setValue(new String[] {"1.0"})
          .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"This is the version of SMAL employed, not of the model."})))
        .setMetadata(new MetadataSet().setName("EntityDefinition")
          .addComments(" Identifying metadata for the current simulation of interest ")
          .setMetadata(new MetadataSet().setName("Classification")
            .setMetadata(new MetadataString().setName("level").setValue(new String[] {"UNCLASSIFIED"})
              .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"UNCLASSIFIED","FOUO","CONFIDENTIAL","SECRET"})))
            .setMetadata(new MetadataString().setName("reference")
              .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"The published source of classified information, if any, contained in the Metadata."})))
            .setMetadata(new MetadataString().setName("rationale")
              .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"The specific element which contains the information classifying this document."}))))
          .setMetadata(new MetadataSet().setName("IdentificationParameters")
            .setMetadata(new MetadataString().setName("name").setValue(new String[] {"Blue Container Ship"})
              .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"The plain language name of the vehicle this model represents, i.e. the base class (DDG-51), or vehicle designation (M1A2)."}))))
          .setMetadata(new MetadataSet().setName("X3DArchiveModel")
            .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"This is a placeholder element which ensures the proper validation of autogenerated SMAL code."})))
          .setMetadata(new MetadataSet().setName("PhysicalParameters")
            .setMetadata(new MetadataSet().setName("PhysicalConstraints")
              .setMetadata(new MetadataFloat().setName("height").setValue(new double[] {46.63})
                .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"The maximum structural height of the object in meters. This may be used for clearance checking or other calculations."})))
              .setMetadata(new MetadataFloat().setName("width").setValue(new double[] {50.0})
                .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"The maximum width, beam, or wingspan of the vehicle in meters. This may be used for clearance checking or other calculations."})))
              .setMetadata(new MetadataFloat().setName("length").setValue(new double[] {303.28})
                .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"The maximum structural length of the object in meters. This may be used for clearance checking or other calculations."})))
              .setMetadata(new MetadataFloat().setName("draft").setValue(new double[] {17.0})
                .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"The vertical distance in meters from the deepest point (keel or other structure) to the waterline of a vehicle at its stated displacement or gross weight."})))
              .setMetadata(new MetadataFloat().setName("grossWeight").setValue(new double[] {48872554.0})
                .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"The standard operational weight of the vehicle in pounds or kilograms. This may be used in physics calculations."}))))
            .setMetadata(new MetadataSet().setName("DynamicResponseConstraints")
              .setMetadata(new MetadataFloat().setName("centerOfGravity").setValue(new double[] {0.0,0.0,0.0})
                .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"Sets the Center of Gravity of the object as an (x, y, z) distance in meters from the physical center of the object, which is located at (0, 0, 0)."})))
              .setMetadata(new MetadataFloat().setName("centerOfBuoyancy").setValue(new double[] {0.0,0.0,0.0})
                .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"Sets the Center of Buoyancy of the object as an (x, y, z) distance in meters from the physical center of the object, which is located at (0, 0, 0)."})))
              .setMetadata(new MetadataFloat().setName("maximumSpeed").setValue(new double[] {14.0})
                .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"The maximum rated speed for this vehicle in mph or kph."})))
              .setMetadata(new MetadataFloat().setName("cruiseSpeed").setValue(new double[] {10.0})
                .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"The published cruise speed for this vehicle in mph or kph."}))))
            .setMetadata(new MetadataSet().setName("TacticalConstraints")
              .addComments(" none defined ")))
          .setMetadata(new MetadataSet().setName("NetworkedCommunicationParameterSet")
            .setMetadata(new MetadataSet().setName("DisConfiguration")
              .setMetadata(new MetadataInteger().setName("entityKind").setValue(new int[] {1})
                .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"The DIS enumeration for the overall type of this object (for vehicles this value should be 1)."})))
              .setMetadata(new MetadataInteger().setName("entityDomain").setValue(new int[] {3})
                .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"The DIS enumeration for the domain of operations of this object (air, surface, sub-surface, etc.)."})))
              .setMetadata(new MetadataInteger().setName("entityCountry").setValue(new int[] {225})
                .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"The DIS enumeration for the country of origin of this object (the value for United States is 225)."})))
              .setMetadata(new MetadataInteger().setName("entityCategory").setValue(new int[] {61})
                .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"The DIS enumeration for the type of this vehicle (cruiser or destroyer, tank or truck, bomber or fighter, etc.)."})))
              .setMetadata(new MetadataInteger().setName("entitySubCategory").setValue(new int[] {1})
                .setMetadata(new MetadataString().setName("appinfo").setValue(new String[] {"The DIS enumeration for the class designation of this vehicle (CG-47 Ticonderoga, DDG-51 Arleigh Burke, M1A2, M880, B-52, F-22, etc."}))))))))
    .addChild(new NavigationInfo("NavInfo3").setAvatarSize(new double[] {.25,1.6,.75}))
    .addChild(new Transform("dad_GROUND")
      .addChild(new Group("GROUND")
        .addChild(new Transform("dad_Import_Base").setRotation(1.0,0.0,0.0,1.571).setScale(.305,.305,.305)
          .addChild(new Group("Import_Base")
            .addChild(new Transform("dad_Group4")
              .addChild(new Group("Group4")
                .addChild(new Transform("dad_A_1")
                  .addChild(new Shape("A_1")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture("CNTSHIPB_TEX").setUrl(new String[] {"textures/CNTSHIPB.jpg","https://www.web3d.org/x3d/content/examples/Savage/ShipsCivilian/textures/CNTSHIPB.jpg"}))
                      .setMaterial(new Material("material0_mat").setAmbientIntensity(0.588).setDiffuseColor(.58823,.58823,.58823).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,7,8,9,-1,4,7,9,-1,4,9,10,-1,4,10,11,-1,2,4,11,-1,2,11,12,-1,2,12,13,-1,3,2,13,-1,3,13,14,-1,3,14,15,-1,15,8,7,-1,3,15,7,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,2,1,0,-1,0,3,2,-1,3,4,5,-1,2,3,5,-1,2,5,6,-1,2,6,7,-1,2,2,7,-1,2,7,6,-1,2,6,8,-1,3,2,8,-1,3,8,9,-1,3,9,10,-1,10,4,3,-1,3,10,3,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-280.14664,-21.65905,-113.50053,-280.1752,-28.4157,-113.50053,-282.94632,-25.62096,-128.89949,-282.94128,-24.43028,-128.89949,-284.13699,-25.61593,-128.89951,-286.93185,-28.38715,-113.50059,-286.90329,-21.63049,-113.50059,-284.13196,-24.42525,-128.89951,-285.35669,-23.15576,-128.89952,-286.13333,-25.00857,-128.89952,-285.37241,-26.86787,-128.89951,-283.51959,-27.64451,-128.89951,-281.66031,-26.88356,-128.89949,-280.88364,-25.03075,-128.89948,-281.64459,-23.17146,-128.89949,-283.49741,-22.39481,-128.89951})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.75,.995,.873,.995,.822,1.691,.801,1.691,.778,1.691,.811,1.691,.845,1.691,.859,1.691,.811,1.691,.778,1.691,.764,1.691}))))))
                .addChild(new Transform("dad_Box01")
                  .addChild(new Shape("Box01")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material1_mat").setAmbientIntensity(0.835).setDiffuseColor(.83529,.83529,.83529).setShininess(0.010).setSpecularColor(.88235,.88235,.88235)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-363.74851,-51.34228,-79.4364,-488.87168,-50.81351,-79.4364,-488.41715,56.73736,-79.4364,-363.29401,56.20859,-79.4364})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.745,.499,.373,.499,.373,.993,.745,.993}))))))
                .addChild(new Transform("dad_Box02")
                  .addChild(new Shape("Box02")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material2_mat").setAmbientIntensity(0.835).setDiffuseColor(.83529,.83529,.83529).setShininess(0.010).setSpecularColor(.88235,.88235,.88235)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,4,6,7,-1,4,7,8,-1,9,6,5,-1,5,10,9,-1,11,1,0,-1,0,12,11,-1,13,14,15,-1,15,16,13,-1,17,12,18,-1,19,20,21,-1,22,23,24,-1,25,26,3,-1,3,2,25,-1,27,28,8,-1,8,7,27,-1,29,30,31,-1,32,33,9,-1,9,10,32,-1,34,35,26,-1,26,36,34,-1,37,38,39,-1,39,12,37,-1,40,41,42,-1,43,40,42,-1,43,42,44,-1,45,43,44,-1,45,44,46,-1,47,45,46,-1,48,47,46,-1,48,46,49,-1,49,50,51,-1,48,49,51,-1,32,35,52,-1,52,53,32,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,4,6,7,-1,4,7,8,-1,9,6,5,-1,5,5,9,-1,10,1,0,-1,0,11,10,-1,12,13,14,-1,14,15,12,-1,16,11,17,-1,18,19,19,-1,20,21,22,-1,23,24,3,-1,3,2,23,-1,25,8,8,-1,8,7,25,-1,26,27,28,-1,29,30,9,-1,9,5,29,-1,31,32,24,-1,24,23,31,-1,33,34,10,-1,10,11,33,-1,35,36,37,-1,31,35,37,-1,31,37,38,-1,39,31,38,-1,39,38,40,-1,41,39,40,-1,42,41,40,-1,42,40,43,-1,43,44,45,-1,42,43,45,-1,29,32,32,-1,32,29,29,-1})
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_84_point()))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.574,.334,.606,.334,.606,.31,.574,.31,.465,.334,.465,.31,.433,.31,.433,.334,.465,.334,.459,.31,.581,.334,.574,.334,.574,.344,.574,.262,.465,.262,.465,.344,.574,.339,.574,.339,.459,.262,.465,.262,.459,.338,.459,.339,.459,.339,.581,.31,.574,.31,.459,.334,.581,.339,.581,.339,.581,.338,.465,.262,.459,.262,.581,.262,.574,.262,.574,.339,.581,.339,.581,.285,.581,.296,.6,.296,.6,.182,.578,.262,.44,.182,.534,.262,.459,.262,.44,.296,.459,.296,.459,.285}))))))
                .addChild(new Transform("dad_Box04")
                  .addChild(new Shape("Box04")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material3_mat").setAmbientIntensity(0.588).setDiffuseColor(.58823,.58823,.58823).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,3,2,6,-1,6,5,3,-1,2,1,7,-1,7,6,2,-1,1,0,4,-1,4,7,1,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,8,9,10,-1,10,11,8,-1,12,13,14,-1,14,15,12,-1,16,17,18,-1,18,19,16,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-271.82159,4.98823,-113.12012,-270.89142,2.44012,-119.74518,-270.90558,-.91072,-119.74518,-271.85727,-3.45087,-113.12012,-267.70993,4.97085,-113.12012,-267.74557,-3.46825,-113.12012,-268.67575,-.92014,-119.74518,-268.66159,2.4307,-119.74518})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {1.63,.957,1.551,1.151,1.449,1.151,1.371,.957,1.371,.957,1.63,.957,1.552,1.151,1.449,1.151,2.043,1.588,1.849,1.549,1.849,1.456,2.043,1.417,1.551,1.549,1.449,1.548,1.449,1.455,1.552,1.456,1.151,1.548,.957,1.587,.957,1.415,1.151,1.455}))))))
                .addChild(new Transform("dad_Box38")
                  .addChild(new Shape("Box38")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material4_mat").setAmbientIntensity(0.906).setDiffuseColor(.90588,.90588,.90588).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,1,4,5,-1,5,2,1,-1,4,6,7,-1,7,5,4,-1,8,9,10,-1,10,11,8,-1,11,10,12,-1,12,13,11,-1,13,12,14,-1,14,15,13,-1,3,2,10,-1,10,9,3,-1,2,5,12,-1,12,10,2,-1,5,7,14,-1,14,12,5,-1,7,6,15,-1,15,14,7,-1,6,4,13,-1,13,15,6,-1,4,1,11,-1,11,13,4,-1,1,0,8,-1,8,11,1,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-305.39792,-60.05267,-33.30794,-305.37854,-55.46419,-36.81933,-305.39569,-59.52151,-37.72317,-305.42365,-66.13725,-33.30794,-305.38434,-56.84094,-45.306,-305.39569,-59.52151,-44.08044,-305.46021,-74.79334,-51.86951,-305.46454,-75.81682,-50.46682,-304.06766,-60.05828,-33.30794,-304.09335,-66.14287,-33.30794,-304.0654,-59.52713,-37.72317,-304.04825,-55.46981,-36.81933,-304.0654,-59.52713,-44.08044,-304.05408,-56.84656,-45.306,-304.13428,-75.82244,-50.46682,-304.12994,-74.79896,-51.86951}))))))
                .addChild(new Transform("dad_Box39")
                  .addChild(new Shape("Box39")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material5_mat").setAmbientIntensity(0.906).setDiffuseColor(.90588,.90588,.90588).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,1,4,5,-1,5,2,1,-1,4,6,7,-1,7,5,4,-1,8,9,10,-1,10,11,8,-1,11,10,12,-1,12,13,11,-1,13,12,14,-1,14,15,13,-1,3,2,10,-1,10,9,3,-1,2,5,12,-1,12,10,2,-1,5,7,14,-1,14,12,5,-1,7,6,15,-1,15,14,7,-1,6,4,13,-1,13,15,6,-1,4,1,11,-1,11,13,4,-1,1,0,8,-1,8,11,1,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-319.2764,-59.99402,-33.30794,-319.25702,-55.40554,-36.81933,-319.27417,-59.46286,-37.72317,-319.30212,-66.0786,-33.30794,-319.26282,-56.78229,-45.306,-319.27417,-59.46286,-44.08044,-319.33871,-74.7347,-51.86951,-319.34302,-75.75817,-50.46682,-317.94614,-59.99964,-33.30794,-317.97183,-66.08422,-33.30794,-317.94388,-59.46848,-37.72317,-317.92673,-55.41116,-36.81933,-317.94388,-59.46848,-44.08044,-317.93256,-56.78791,-45.306,-318.01276,-75.76379,-50.46682,-318.00842,-74.74032,-51.86951}))))))
                .addChild(new Transform("dad_Box40")
                  .addChild(new Shape("Box40")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material6_mat").setAmbientIntensity(0.796).setDiffuseColor(.79608,.79608,.79608).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,3,4,5,-1,1,0,6,-1,7,8,9,-1,10,11,12,-1,13,5,4,-1,14,12,11,-1,8,7,15,-1,2,1,4,-1,16,11,8,-1,17,12,18,-1,19,7,20,-1,21,5,0,-1,22,9,8,-1,17,23,24,-1,4,25,26,-1,27,12,18,-1,28,29,30,-1,17,31,23,-1,32,26,25,-1,17,33,34,-1,17,18,33,-1,11,10,35,-1,6,19,20,-1,22,36,9,-1,13,27,18,-1,10,37,4,-1,14,15,7,-1,11,16,38,-1,3,2,4,-1,0,39,21,-1,22,1,36,-1,40,28,30,-1,35,10,4,-1,33,41,34,-1,8,17,24,-1,42,29,43,-1,28,12,29,-1,33,4,41,-1,7,12,14,-1,29,44,30,-1,42,0,30,-1,18,5,13,-1,6,0,19,-1,24,23,32,-1,28,40,18,-1,18,12,28,-1,15,16,8,-1,38,16,15,-1,37,10,27,-1,12,27,10,-1,9,20,7,-1,6,20,9,-1,11,38,14,-1,15,14,38,-1,6,36,1,-1,9,36,6,-1,25,4,1,-1,32,25,45,-1,26,41,4,-1,0,40,30,-1,12,43,29,-1,5,21,3,-1,2,3,21,-1,21,39,2,-1,2,39,0,-1,4,37,13,-1,27,13,37,-1,24,32,45,-1,17,34,31,-1,42,44,29,-1,42,30,44,-1})
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_111_point())))))
                .addChild(new Transform("dad_Box41")
                  .addChild(new Shape("Box41")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material7_mat").setAmbientIntensity(0.906).setDiffuseColor(.90588,.90588,.90588).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,1,4,5,-1,5,2,1,-1,4,6,7,-1,7,5,4,-1,8,9,10,-1,10,11,8,-1,11,10,12,-1,12,13,11,-1,13,12,14,-1,14,15,13,-1,3,2,10,-1,10,9,3,-1,2,5,12,-1,12,10,2,-1,5,7,14,-1,14,12,5,-1,7,6,15,-1,15,14,7,-1,6,4,13,-1,13,15,6,-1,4,1,11,-1,11,13,4,-1,1,0,8,-1,8,11,1,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-304.88644,60.95728,-33.30795,-304.90582,56.3688,-36.81934,-304.88867,60.42612,-37.72318,-304.86072,67.04187,-33.30795,-304.90003,57.74556,-45.30601,-304.88867,60.42612,-44.08045,-304.82413,75.69796,-51.86951,-304.81982,76.72144,-50.46682,-303.55615,60.95165,-33.30795,-303.53046,67.03625,-33.30795,-303.55841,60.4205,-37.72318,-303.57556,56.36318,-36.81934,-303.55841,60.4205,-44.08045,-303.56973,57.73993,-45.30601,-303.48953,76.71581,-50.46682,-303.49387,75.69235,-51.86951}))))))
                .addChild(new Transform("dad_Box42")
                  .addChild(new Shape("Box42")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material8_mat").setAmbientIntensity(0.906).setDiffuseColor(.90588,.90588,.90588).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,1,4,5,-1,5,2,1,-1,4,6,7,-1,7,5,4,-1,8,9,10,-1,10,11,8,-1,11,10,12,-1,12,13,11,-1,13,12,14,-1,14,15,13,-1,3,2,10,-1,10,9,3,-1,2,5,12,-1,12,10,2,-1,5,7,14,-1,14,12,5,-1,7,6,15,-1,15,14,7,-1,6,4,13,-1,13,15,6,-1,4,1,11,-1,11,13,4,-1,1,0,8,-1,8,11,1,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-318.76495,61.01594,-33.30794,-318.78433,56.42746,-36.81934,-318.76718,60.48478,-37.72317,-318.73922,67.10053,-33.30794,-318.77853,57.80421,-45.306,-318.76718,60.48478,-44.08044,-318.70264,75.75661,-51.86951,-318.69833,76.78009,-50.46682,-317.43466,61.01032,-33.30794,-317.40896,67.0949,-33.30794,-317.43692,60.47916,-37.72317,-317.45407,56.42184,-36.81934,-317.43692,60.47916,-44.08044,-317.44824,57.79859,-45.306,-317.36804,76.77447,-50.46682,-317.37238,75.751,-51.86952}))))))
                .addChild(new Transform("dad_ChamferCyl")
                  .addChild(new Shape("ChamferCyl")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material9_mat").setAmbientIntensity(0.588).setDiffuseColor(.58823,.58823,.58823).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,0,2,3,-1,3,2,4,-1,3,4,5,-1,5,4,6,-1,5,6,7,-1,7,6,8,-1,7,8,9,-1,9,8,10,-1,9,10,11,-1,11,10,12,-1,11,12,13,-1,13,12,14,-1,13,14,15,-1,15,14,16,-1,15,16,17,-1,17,16,18,-1,17,18,19,-1,19,18,20,-1,19,20,21,-1,21,20,22,-1,21,22,23,-1,23,22,1,-1,23,1,0,-1,1,24,25,-1,1,25,2,-1,2,25,26,-1,2,26,4,-1,4,26,27,-1,4,27,6,-1,6,27,28,-1,6,28,8,-1,8,28,29,-1,8,29,10,-1,10,29,30,-1,10,30,12,-1,12,30,31,-1,12,31,14,-1,14,31,32,-1,14,32,16,-1,16,32,33,-1,16,33,18,-1,18,33,34,-1,18,34,20,-1,20,34,35,-1,20,35,22,-1,22,35,24,-1,22,24,1,-1}).setTexCoordIndex(new int[] {0,1,2,-1,0,2,3,-1,3,2,4,-1,3,4,5,-1,5,4,6,-1,5,6,7,-1,7,6,8,-1,7,8,5,-1,5,8,2,-1,5,2,9,-1,9,2,10,-1,9,10,0,-1,0,10,11,-1,0,11,12,-1,12,11,13,-1,12,13,14,-1,14,13,15,-1,14,15,16,-1,16,15,13,-1,16,13,17,-1,17,13,11,-1,17,11,18,-1,18,11,1,-1,18,1,0,-1,1,19,20,-1,1,20,2,-1,2,20,21,-1,2,21,4,-1,4,21,22,-1,4,22,6,-1,6,22,21,-1,6,21,8,-1,8,21,23,-1,8,23,2,-1,2,23,19,-1,2,19,10,-1,10,19,24,-1,10,24,11,-1,11,24,25,-1,11,25,13,-1,13,25,26,-1,13,26,15,-1,15,26,27,-1,15,27,13,-1,13,27,28,-1,13,28,11,-1,11,28,19,-1,11,19,1,-1})
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_130_point()))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.391,.466,.391,.447,.377,.446,.381,.466,.367,.446,.374,.466,.364,.446,.371,.466,.367,.446,.381,.466,.391,.447,.404,.447,.4,.466,.414,.447,.407,.466,.417,.447,.41,.466,.407,.466,.4,.466,.374,.174,.352,.174,.336,.174,.33,.174,.352,.174,.396,.175,.412,.175,.418,.175,.412,.175,.396,.175}))))))
                .addChild(new Transform("dad_Container0")
                  .addChild(new Shape("Container0")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material10_mat").setAmbientIntensity(0.584).setDiffuseColor(.58431,.58431,.58431).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {304.8595,-54.16804,-32.47493,304.85947,-54.16804,-79.1146,305.31403,53.38353,-79.1146,305.31403,53.38353,-32.47493,-247.63836,-51.83303,-79.1146,-247.63836,-51.83303,-32.47493,-247.18381,55.71854,-32.47493,-247.18381,55.71854,-79.1146})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.375,.52,.375,.994,.733,.994,.733,.52,.375,.994,.375,.52,.733,.52,.733,.994}))))))
                .addChild(new Transform("dad_ContainerS")
                  .addChild(new Shape("ContainerS")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material11_mat").setAmbientIntensity(0.835).setDiffuseColor(.83529,.83529,.83529).setShininess(0.010).setSpecularColor(.88235,.88235,.88235)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,0,4,2,-1,2,1,0,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-247.63836,-51.83303,-32.47493,-247.63836,-51.83303,-79.1146,304.85947,-54.16804,-79.1146,304.8595,-54.16804,-32.47493,-247.18381,55.71854,-32.47493,305.31403,53.38353,-32.47493,305.31403,53.38353,-79.1146,-247.18381,55.71854,-79.1146})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.004,.541,.004,.997,.37,.997,.37,.541,.37,.541}))))))
                .addChild(new Transform("dad_ContainerT")
                  .addChild(new Shape("ContainerT")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material12_mat").setAmbientIntensity(0.835).setDiffuseColor(.83529,.83529,.83529).setShininess(0.010).setSpecularColor(.88235,.88235,.88235)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {304.85947,-54.16804,-79.1146,-247.63836,-51.83303,-79.1146,-247.18381,55.71854,-79.1146,305.31403,53.38353,-79.1146})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.358,.503,.012,.503,.012,.994,.358,.994}))))))
                .addChild(new Transform("dad_Cylinder01")
                  .addChild(new Shape("Cylinder01")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material13_mat").setAmbientIntensity(0.796).setDiffuseColor(.79608,.79608,.79608).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,0,3,1,-1,0,4,3,-1,0,5,4,-1,0,6,5,-1,0,7,6,-1,0,8,7,-1,0,9,8,-1,0,10,9,-1,0,2,10,-1,2,11,12,-1,2,1,11,-1,1,13,11,-1,1,3,13,-1,3,14,13,-1,3,4,14,-1,4,15,14,-1,4,5,15,-1,5,16,15,-1,5,6,16,-1,6,17,16,-1,6,7,17,-1,7,18,17,-1,7,8,18,-1,8,19,18,-1,8,9,19,-1,9,20,19,-1,9,10,20,-1,10,12,20,-1,10,2,12,-1,21,12,11,-1,21,11,13,-1,21,13,14,-1,21,14,15,-1,21,15,16,-1,21,16,17,-1,21,17,18,-1,21,18,19,-1,21,19,20,-1,21,20,12,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {467.431,-2.3636,-51.11507,466.73569,-3.31219,-51.11507,467.42602,-3.53973,-51.11507,466.31088,-2.72232,-51.11507,466.31397,-1.99543,-51.11507,466.74371,-1.40916,-51.11507,467.43597,-1.18746,-51.11507,468.12631,-1.41501,-51.11507,468.55112,-2.00488,-51.11507,468.54804,-2.73177,-51.11507,468.11829,-3.31804,-51.11507,466.73569,-3.31219,-97.07228,467.42603,-3.53973,-97.07228,466.31088,-2.72232,-97.07228,466.31397,-1.99542,-97.07228,466.74371,-1.40916,-97.07229,467.43597,-1.18746,-97.07229,468.12631,-1.41501,-97.07229,468.55112,-2.00488,-97.07229,468.54804,-2.73177,-97.07229,468.11829,-3.31803,-97.07228,467.431,-2.3636,-97.07229}))))))
                .addChild(new Transform("dad_Cylinder02")
                  .addChild(new Shape("Cylinder02")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material14_mat").setAmbientIntensity(0.796).setDiffuseColor(.79608,.79608,.79608).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,0,3,1,-1,0,4,3,-1,0,5,4,-1,0,6,5,-1,0,7,6,-1,0,8,7,-1,0,9,8,-1,0,10,9,-1,0,2,10,-1,2,11,12,-1,2,1,11,-1,1,13,11,-1,1,3,13,-1,3,14,13,-1,3,4,14,-1,4,15,14,-1,4,5,15,-1,5,16,15,-1,5,6,16,-1,6,17,16,-1,6,7,17,-1,7,18,17,-1,7,8,18,-1,8,19,18,-1,8,9,19,-1,9,20,19,-1,9,10,20,-1,10,12,20,-1,10,2,12,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {467.43082,-2.3636,-68.87646,464.4248,-6.46442,-68.87646,467.40933,-7.44811,-68.87646,462.58856,-3.91436,-68.87646,462.60184,-.77197,-68.87646,464.45956,1.76248,-68.87646,467.4523,2.7209,-68.87646,470.43683,1.73721,-68.87646,472.27307,-.81284,-68.87646,472.2598,-3.95524,-68.87646,470.40207,-6.48968,-68.87646,464.4248,-6.46442,-71.47331,467.40933,-7.44811,-71.47331,462.58856,-3.91436,-71.47332,462.60184,-.77197,-71.47332,464.45956,1.76248,-71.47332,467.4523,2.7209,-71.47332,470.43683,1.73721,-71.47332,472.27307,-.81284,-71.47332,472.2598,-3.95524,-71.47332,470.40207,-6.48968,-71.47332}))))))
                .addChild(new Transform("dad_Cylinder04")
                  .addChild(new Shape("Cylinder04")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material15_mat").setAmbientIntensity(0.588).setDiffuseColor(.58823,.58823,.58823).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,0,3,1,-1,0,4,3,-1,0,5,4,-1,0,6,5,-1,0,7,6,-1,0,8,7,-1,0,9,8,-1,0,10,9,-1,0,2,10,-1,2,11,12,-1,2,1,11,-1,1,13,11,-1,1,3,13,-1,3,14,13,-1,3,4,14,-1,4,15,14,-1,4,5,15,-1,5,16,15,-1,5,6,16,-1,6,17,16,-1,6,7,17,-1,7,18,17,-1,7,8,18,-1,8,19,18,-1,8,9,19,-1,9,20,19,-1,9,10,20,-1,10,12,20,-1,10,2,12,-1,21,12,11,-1,21,11,13,-1,21,13,14,-1,21,14,15,-1,21,15,16,-1,21,16,17,-1,21,17,18,-1,21,18,19,-1,21,19,20,-1,21,20,12,-1}).setTexCoordIndex(new int[] {0,1,2,-1,0,3,1,-1,0,4,3,-1,0,5,4,-1,0,6,5,-1,0,7,6,-1,0,8,7,-1,0,9,8,-1,0,10,9,-1,0,2,10,-1,11,12,13,-1,11,14,12,-1,15,16,17,-1,15,18,16,-1,18,19,16,-1,18,20,19,-1,20,21,19,-1,20,22,21,-1,23,24,25,-1,23,26,24,-1,26,27,24,-1,26,28,27,-1,29,30,31,-1,29,32,30,-1,32,33,30,-1,32,34,33,-1,34,35,33,-1,34,36,35,-1,37,13,38,-1,37,11,13,-1,39,40,41,-1,39,41,42,-1,39,42,43,-1,39,43,44,-1,39,44,45,-1,39,45,46,-1,39,46,47,-1,39,47,48,-1,39,48,49,-1,39,49,40,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-269.70783,7.14551,-149.97717,-269.59522,6.98912,-149.97717,-269.70865,6.9528,-149.97717,-269.52481,7.08518,-149.97717,-269.52429,7.20428,-149.97717,-269.5939,7.30093,-149.97717,-269.707,7.33821,-149.97717,-269.82043,7.30189,-149.97717,-269.89084,7.20583,-149.97717,-269.89136,7.08673,-149.97717,-269.82175,6.99008,-149.97717,-269.59522,6.98912,-145.63519,-269.70865,6.9528,-145.63519,-269.52481,7.08518,-145.63519,-269.52429,7.20428,-145.63519,-269.5939,7.30093,-145.63519,-269.707,7.33821,-145.63519,-269.82043,7.30189,-145.63519,-269.89084,7.20583,-145.63519,-269.89136,7.08673,-145.63519,-269.82175,6.99008,-145.63519,-269.70783,7.14551,-145.63519})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {1.304,.499,1.309,.494,1.31,.499,1.306,.491,1.302,.491,1.299,.494,1.298,.499,1.299,.503,1.302,.506,1.306,.506,1.309,.503,.967,.499,1.094,.494,1.094,.499,.967,.494,1.309,1.033,1.306,.906,1.309,.906,1.306,1.033,1.302,.906,1.302,1.033,1.299,.906,1.299,1.033,2.033,.494,1.906,.499,1.906,.494,2.033,.499,1.906,.503,2.033,.503,1.701,1.033,1.698,.906,1.701,.906,1.698,1.033,1.694,.906,1.694,1.033,1.691,.906,1.691,1.033,.967,.503,1.094,.503,1.696,.499,1.69,.499,1.691,.494,1.694,.491,1.698,.491,1.701,.494,1.702,.499,1.701,.503,1.698,.506,1.694,.506,1.691,.503}))))))
                .addChild(new Transform("dad_Deck")
                  .addChild(new Shape("Deck")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material16_mat").setAmbientIntensity(0.661).setDiffuseColor(.6549,.67059,.58431).setShininess(0.100).setSpecularColor(.77647,.77647,.77647)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,0,2,3,-1,0,3,4,-1,0,4,5,-1,0,5,6,-1,0,6,7,-1,0,7,8,-1,4,9,10,-1,4,10,11,-1,12,11,13,-1,13,11,14,-1,14,11,15,-1,15,11,16,-1,16,11,10,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-495.48389,59.29427,-33.3635,-425.41715,66.7458,-33.3655,-255.95102,82.1472,-33.37267,311.78209,76.94329,-33.45202,311.11662,-80.51632,-33.4521,-256.64017,-80.92155,-33.37268,-425.97007,-64.08836,-33.36549,-495.97135,-56.04488,-33.36347,-495.76221,1.62484,-33.36348,311.78209,76.9433,-33.45202,327.56087,76.87656,-41.17085,326.8954,-80.58301,-41.17093,419.0577,-67.03141,-47.98714,459.02288,-49.99583,-50.85132,496.45571,-2.5684,-53.34825,459.4251,45.17374,-50.85123,419.60533,62.54649,-47.98705}))))))
                .addChild(new Transform("dad_Line10")
                  .addChild(new Shape("Line10")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material17_mat").setAmbientIntensity(0.588).setDiffuseColor(.58823,.58823,.58823).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(getIndexedFaceSet_11_188_coordIndex()).setTexCoordIndex(getIndexedFaceSet_11_188_texCoordIndex())
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_188_point()))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.734,.045,.734,.061,.74,.044,.734,.017,.734,.024,.738,.024,.011,.105,.011,.088,.011,.133,.011,.086,.011,.133,.055,.044,.033,.066,.063,.046,.063,.035,.063,.013,.054,.013,.063,.014,.062,.133,.186,.133,.186,.086,.062,.104,.602,.134,.602,.086,.186,.069,.063,.086,.602,.077,.602,.047,.186,.049,.602,.023,.186,.022,.602,.008,.186,.002,.063,.022,.724,.071,.724,.046,.724,.023,.724,.01,.699,.01,.699,.023,.699,.046,.699,.074,.722,.086,.7,.086,.681,.077,.681,.086,.681,.046,.033,.087,.033,.105,.681,.009,.681,.023,.681,.134,.614,.148,.681,.161,.054,.022,.705,.135,.73,.135,.71,.167,.738,.172,.033,.133,.734,.045,.734,.024,.011,.088,.011,.105,.011,.133,.063,.046,.063,.035,.063,.014,.062,.133,.062,.104,.602,.086,.602,.134,.063,.086,.602,.077,.602,.047,.186,.049,.602,.023,.063,.022,.724,.046,.724,.023,.699,.023,.699,.046,.699,.074,.7,.086,.681,.077,.681,.086,.681,.046,.033,.087,.033,.105,.681,.023,.681,.134,.614,.148,.681,.161,.705,.135,.71,.167,.033,.133}))))))
                .addChild(new Transform("dad_Name_pt")
                  .addChild(new Shape("Name_pt")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material23_mat").setAmbientIntensity(0.588).setDiffuseColor(.58823,.58823,.58823).setShininess(0.100).setSpecularColor(.89804,.89804,.89804).setTransparency(1)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,1,0,4,-1,4,5,1,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {419.22731,-49.43284,-35.26573,419.10445,-62.18632,-44.4848,451.6628,-44.52924,-44.48479,451.6628,-31.34021,-35.26573,387.74394,-59.55811,-35.26572,387.74394,-69.6764,-44.48479}))))))
                .addChild(new Transform("dad_Name_sb")
                  .addChild(new Shape("Name_sb")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material24_mat").setAmbientIntensity(0.588).setDiffuseColor(.58823,.58823,.58823).setShininess(0.100).setSpecularColor(.89804,.89804,.89804).setTransparency(1)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,2,1,-1,1,5,4,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {451.6628,39.96911,-44.48478,419.61113,57.70132,-44.4848,419.62618,44.94725,-35.26573,451.66277,26.71817,-35.26573,387.74391,55.4751,-35.26572,387.74385,65.61713,-44.48479}))))))
                .addChild(new Transform("dad_Name_sn")
                  .addChild(new Shape("Name_sn")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material25_mat").setAmbientIntensity(0.588).setDiffuseColor(.58823,.58823,.58823).setShininess(0.100).setSpecularColor(.89804,.89804,.89804).setTransparency(1)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,3,2,1,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-500.88263,37.07541,-33.50378,-500.88263,-37.03171,-33.50378,-500.88263,37.07541,-18.57174,-500.88263,-37.03171,-18.57174}))))))
                .addChild(new Transform("dad_Object02")
                  .addChild(new Shape("Object02")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material26_mat").setAmbientIntensity(0.835).setDiffuseColor(.83529,.83529,.83529).setShininess(0.010).setSpecularColor(.88235,.88235,.88235)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,8,9,10,-1,10,11,8,-1,9,4,7,-1,7,10,9,-1,11,10,12,-1,12,13,11,-1,10,7,6,-1,6,12,10,-1,14,15,16,-1,16,17,14,-1,12,6,5,-1,5,18,12,-1,19,18,9,-1,9,8,19,-1,18,5,4,-1,4,9,18,-1,0,3,19,-1,19,8,0,-1,3,2,13,-1,13,19,3,-1,2,1,11,-1,11,13,2,-1,1,0,8,-1,8,11,1,-1,15,14,13,-1,13,12,15,-1,14,17,19,-1,19,13,14,-1,17,16,18,-1,18,19,17,-1,16,15,12,-1,12,18,16,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,8,9,10,-1,10,11,8,-1,9,4,7,-1,7,10,9,-1,11,10,12,-1,12,13,11,-1,10,7,6,-1,6,12,10,-1,14,15,16,-1,16,17,14,-1,12,6,5,-1,5,18,12,-1,19,18,9,-1,9,8,19,-1,18,5,4,-1,4,9,18,-1,0,3,19,-1,19,8,0,-1,3,2,13,-1,13,19,3,-1,2,1,11,-1,11,13,2,-1,1,0,8,-1,8,11,1,-1,15,14,13,-1,13,12,15,-1,14,17,19,-1,19,13,14,-1,17,16,18,-1,18,19,17,-1,16,15,12,-1,12,18,16,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-297.74661,-75.83881,-39.84083,-297.74707,-75.94785,-39.84083,-294.1806,-75.96504,-43.12736,-294.18014,-75.85601,-43.12736,-324.86829,-72.82394,-39.84083,-326.01743,-71.76205,-43.12736,-326.05154,-79.83237,-43.12736,-324.89346,-78.77863,-39.84083,-305.51477,-73.83403,-39.84083,-315.36176,-72.61576,-39.84083,-315.38806,-78.83871,-39.84083,-305.53198,-77.90818,-39.84083,-316.21323,-79.87777,-43.12736,-301.86887,-79.41396,-43.12736,-305.57565,-78.08731,-44.88348,-315.38471,-78.04585,-44.88348,-315.36642,-73.72045,-44.88348,-305.55737,-73.7619,-44.88348,-316.17899,-71.77312,-43.12736,-301.83881,-72.29497,-43.12736})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.579,.425,.579,.425,.598,.452,.598,.452,.441,.425,.435,.452,.435,.452,.441,.425,.54,.425,.49,.425,.489,.425,.54,.425,.485,.452,.558,.452,.539,.466,.49,.466,.49,.466,.54,.466,.485,.452,.559,.452}))))))
                .addChild(new Transform("dad_Object04")
                  .addChild(new Shape("Object04")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material27_mat").setAmbientIntensity(0).setDiffuseColor(0.0,0.0,0.0).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,0,2,3,-1,0,3,4,-1,0,4,5,-1,0,5,6,-1,0,6,7,-1,0,7,8,-1,0,8,9,-1,0,9,10,-1,0,10,11,-1,0,11,12,-1,0,12,1,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-319.78357,1.0858,-117.17855,-319.80887,-4.89673,-117.17855,-324.47934,-4.07547,-117.17855,-327.89157,-1.87125,-117.17855,-329.13129,1.12531,-117.17855,-327.86627,4.11128,-117.17855,-324.43552,6.28658,-117.17855,-319.7583,7.06834,-117.17855,-315.08783,6.24708,-117.17855,-311.67557,4.04286,-117.17855,-310.43585,1.0463,-117.17855,-311.70087,-1.93968,-117.17855,-315.13162,-4.11497,-117.17855}))))))
                .addChild(new Transform("dad_Object05")
                  .addChild(new Shape("Object05")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material28_mat").setAmbientIntensity(0.796).setDiffuseColor(.79608,.79608,.79608).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,8,9,10,-1,10,11,8,-1,8,12,13,-1,13,9,8,-1,10,14,15,-1,15,11,10,-1,10,9,16,-1,16,17,10,-1,8,11,18,-1,18,19,8,-1,20,16,9,-1,21,20,9,-1,21,9,13,-1,22,18,11,-1,23,22,11,-1,23,11,15,-1,12,8,19,-1,12,19,24,-1,12,24,25,-1,14,10,17,-1,14,17,26,-1,14,26,27,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-272.15363,55.27737,-92.77086,-272.22632,38.07844,-92.77087,-256.56089,38.01223,-92.77087,-256.4882,55.21117,-92.77087,-256.90667,-43.80999,-92.77088,-272.57211,-43.74379,-92.77087,-272.64507,-61.01093,-92.77087,-256.97964,-61.07714,-92.77088,-250.43549,50.58174,-49.44229,-250.43549,50.58174,-47.35446,-250.88755,-56.38674,-47.35446,-250.88755,-56.38674,-49.4423,-280.90668,50.71052,-49.4423,-280.90668,50.71052,-47.35446,-281.35873,-56.25796,-47.35447,-281.35873,-56.25796,-49.4423,-253.42249,37.99898,-47.35446,-253.76827,-43.82325,-47.35446,-253.76832,-43.82325,-49.4423,-253.42253,37.99898,-49.44229,-254.16135,38.00209,-47.35446,-280.9599,38.11535,-47.35446,-254.61746,-43.81966,-49.4423,-281.30569,-43.70688,-49.4423,-254.27166,38.00257,-49.44229,-280.9599,38.11535,-49.4423,-254.50715,-43.82013,-47.35446,-281.30569,-43.70688,-47.35447}))))))
                .addChild(new Transform("dad_Object09")
                  .addChild(new Shape("Object09")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material29_mat").setAmbientIntensity(0.835).setDiffuseColor(.83529,.83529,.83529).setShininess(0.010).setSpecularColor(.88235,.88235,.88235)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.5710).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-354.53023,51.18837,-33.55992,-354.53023,51.18837,-62.14212,-354.98547,-56.53149,-62.14212,-354.98547,-56.53149,-33.55991})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.014,.219,.014,.458,.301,.458,.301,.219}))))))
                .addChild(new Transform("dad_Object10")
                  .addChild(new Shape("Object10")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material30_mat").setAmbientIntensity(0.835).setDiffuseColor(.83529,.83529,.83529).setShininess(0.010).setSpecularColor(.88235,.88235,.88235)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.5710).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,8,9,10,-1,10,11,8,-1,9,4,7,-1,7,10,9,-1,11,10,12,-1,12,13,11,-1,10,7,6,-1,6,12,10,-1,14,15,16,-1,16,17,14,-1,12,6,5,-1,5,18,12,-1,19,18,9,-1,9,8,19,-1,18,5,4,-1,4,9,18,-1,0,3,19,-1,19,8,0,-1,3,2,13,-1,13,19,3,-1,2,1,11,-1,11,13,2,-1,1,0,8,-1,8,11,1,-1,15,14,13,-1,13,12,15,-1,14,17,19,-1,19,13,14,-1,17,16,18,-1,18,19,17,-1,16,15,12,-1,12,18,16,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,8,9,10,-1,10,11,8,-1,9,4,7,-1,7,10,9,-1,11,10,12,-1,12,13,11,-1,10,7,6,-1,6,12,10,-1,14,15,16,-1,16,17,14,-1,12,6,5,-1,5,18,12,-1,19,18,9,-1,9,8,19,-1,18,5,4,-1,4,9,18,-1,0,3,19,-1,19,8,0,-1,3,2,13,-1,13,19,3,-1,2,1,11,-1,11,13,2,-1,1,0,8,-1,8,11,1,-1,15,14,13,-1,13,12,15,-1,14,17,19,-1,19,13,14,-1,17,16,18,-1,18,19,17,-1,16,15,12,-1,12,18,16,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-297.74661,73.1955,-39.84084,-297.74707,73.08647,-39.84084,-294.1806,73.06928,-43.12736,-294.18014,73.17831,-43.12736,-324.86829,76.21038,-39.84084,-326.01743,77.27226,-43.12736,-326.05154,69.20195,-43.12736,-324.89346,70.25568,-39.84084,-305.51477,75.20029,-39.84084,-315.36176,76.41856,-39.84084,-315.38806,70.19561,-39.84084,-305.53198,71.12614,-39.84084,-316.21323,69.15655,-43.12736,-301.86887,69.62035,-43.12736,-305.57565,70.94701,-44.88349,-315.38471,70.98846,-44.88349,-315.36642,75.31387,-44.88349,-305.55737,75.27241,-44.88349,-316.17899,77.2612,-43.12736,-301.83881,76.73934,-43.12736})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.579,.425,.579,.425,.598,.452,.598,.452,.441,.425,.435,.452,.435,.452,.441,.425,.54,.425,.49,.425,.489,.425,.54,.425,.485,.452,.558,.452,.539,.466,.49,.466,.49,.466,.54,.466,.485,.452,.559,.452}))))))
                .addChild(new Transform("dad_Pyramid03")
                  .addChild(new Shape("Pyramid03")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material31_mat").setAmbientIntensity(0.588).setDiffuseColor(.58823,.58823,.58823).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.5710).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,7,8,9,-1,4,7,9,-1,4,9,10,-1,4,10,11,-1,2,4,11,-1,2,11,12,-1,2,12,13,-1,3,2,13,-1,3,13,14,-1,3,14,15,-1,15,8,7,-1,3,15,7,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,2,1,4,-1,4,3,2,-1,3,5,6,-1,2,3,6,-1,2,6,7,-1,2,7,8,-1,2,2,8,-1,2,8,7,-1,2,7,9,-1,3,2,9,-1,3,9,10,-1,3,10,11,-1,11,5,3,-1,3,11,3,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-280.14664,29.18415,-113.50057,-280.1752,22.4275,-113.50057,-282.94644,25.22225,-128.89951,-282.94141,26.41293,-128.89951,-284.13712,25.22727,-128.89951,-286.93185,22.45606,-113.50057,-286.90329,29.21271,-113.50057,-284.13208,26.41796,-128.89951,-285.35681,27.68744,-128.89951,-286.13345,25.83464,-128.89951,-285.3725,23.97534,-128.89951,-283.51972,23.1987,-128.89951,-281.6604,23.95965,-128.89951,-280.88376,25.81245,-128.89951,-281.64472,27.67175,-128.89951,-283.49753,28.4484,-128.89951})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.752,.028,.872,.028,.823,.671,.802,.671,.752,.028,.779,.671,.812,.671,.845,.671,.858,.671,.812,.671,.779,.671,.766,.671}))))))
                .addChild(new Transform("dad_smcontrsid")
                  .addChild(new Shape("smcontrsid")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material32_mat").setAmbientIntensity(0.835).setDiffuseColor(.83529,.83529,.83529).setShininess(0.010).setSpecularColor(.88235,.88235,.88235)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.5710).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-363.74853,-51.3423,-32.79672,-363.74853,-51.3423,-79.43639,-363.29401,56.20857,-79.43639,-363.29401,56.20857,-32.79672,-488.87171,-50.8135,-79.43639,-488.87171,-50.8135,-32.79672,-488.41715,56.73738,-32.79672,-488.41715,56.73738,-79.43639})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.366,.501,.366,1.0,.744,1.0,.744,.501,.366,1.0,.366,.501,.744,.501,.744,1.0}))))))
                .addChild(new Transform("dad_smcontside")
                  .addChild(new Shape("smcontside")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material33_mat").setAmbientIntensity(0.588).setDiffuseColor(.58823,.58823,.58823).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.5710).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,3,2,-1,2,5,4,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-488.87171,-50.8135,-32.79672,-488.87171,-50.8135,-79.43639,-363.74853,-51.3423,-79.43639,-363.74853,-51.3423,-32.79672,-488.41715,56.73738,-32.79672,-363.29401,56.20857,-32.79672,-363.29401,56.20857,-79.43639,-488.41715,56.73738,-79.43639})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.38,.509,.38,.989,.744,.989,.744,.509,.38,.509,.38,.989}))))))
                .addChild(new Transform("dad_Sphere01")
                  .addChild(new Shape("Sphere01")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material34_mat").setAmbientIntensity(0.796).setDiffuseColor(.79608,.79608,.79608).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.5710).setCoordIndex(new int[] {0,1,2,-1,0,2,3,-1,0,3,4,-1,0,4,5,-1,0,5,6,-1,0,6,7,-1,0,7,8,-1,0,8,9,-1,0,9,10,-1,0,10,1,-1,1,11,12,-1,1,12,2,-1,2,12,13,-1,2,13,3,-1,3,13,14,-1,3,14,4,-1,4,14,15,-1,4,15,5,-1,5,15,16,-1,5,16,6,-1,6,16,17,-1,6,17,7,-1,7,17,18,-1,7,18,8,-1,8,18,19,-1,8,19,9,-1,9,19,20,-1,9,20,10,-1,10,20,11,-1,10,11,1,-1,11,21,22,-1,11,22,12,-1,12,22,23,-1,12,23,13,-1,13,23,24,-1,13,24,14,-1,14,24,25,-1,14,25,15,-1,15,25,26,-1,15,26,16,-1,16,26,27,-1,16,27,17,-1,17,27,28,-1,17,28,18,-1,18,28,29,-1,18,29,19,-1,19,29,30,-1,19,30,20,-1,20,30,21,-1,20,21,11,-1,21,31,32,-1,21,32,22,-1,22,32,33,-1,22,33,23,-1,23,33,34,-1,23,34,24,-1,24,34,35,-1,24,35,25,-1,25,35,36,-1,25,36,26,-1,26,36,37,-1,26,37,27,-1,27,37,38,-1,27,38,28,-1,28,38,39,-1,28,39,29,-1,29,39,40,-1,29,40,30,-1,30,40,31,-1,30,31,21,-1,41,32,31,-1,41,33,32,-1,41,34,33,-1,41,35,34,-1,41,36,35,-1,41,37,36,-1,41,38,37,-1,41,39,38,-1,41,40,39,-1,41,31,40,-1})
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_273_point())))))
                .addChild(new Transform("dad_SuperStruc")
                  .addChild(new Shape("SuperStruc")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material35_mat").setAmbientIntensity(0.835).setDiffuseColor(.83529,.83529,.83529).setShininess(0.010).setSpecularColor(.88235,.88235,.88235)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.5710).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,4,6,7,-1,7,8,9,-1,4,7,9,-1,10,11,12,-1,12,13,10,-1,14,15,16,-1,16,17,14,-1,18,19,6,-1,18,6,5,-1,18,5,20,-1,18,20,21,-1,22,23,24,-1,25,22,24,-1,26,27,28,-1,29,26,28,-1,24,29,28,-1,24,28,30,-1,25,24,30,-1,31,32,33,-1,34,35,36,-1,36,37,38,-1,34,36,38,-1,34,38,39,-1,33,34,39,-1,31,33,39,-1,40,41,42,-1,42,43,40,-1,44,45,46,-1,46,47,44,-1,48,49,50,-1,50,51,48,-1,44,52,53,-1,44,53,54,-1,45,44,54,-1,55,56,47,-1,47,46,55,-1,57,52,58,-1,58,59,57,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,4,6,7,-1,7,8,9,-1,4,7,9,-1,10,11,12,-1,12,13,10,-1,14,15,16,-1,16,17,14,-1,18,14,6,-1,18,6,5,-1,18,5,0,-1,18,0,19,-1,20,21,22,-1,19,20,22,-1,23,24,25,-1,26,23,25,-1,22,26,25,-1,22,25,27,-1,19,22,27,-1,28,29,30,-1,31,32,33,-1,33,34,35,-1,31,33,35,-1,31,35,36,-1,30,31,36,-1,28,30,36,-1,37,38,39,-1,39,40,37,-1,41,42,43,-1,43,44,41,-1,45,3,46,-1,46,47,45,-1,41,48,49,-1,41,49,50,-1,42,41,50,-1,51,52,44,-1,44,43,51,-1,53,54,55,-1,55,56,53,-1})
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_280_point()))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.047,.46,.002,.463,.002,.412,.047,.412,.059,.46,.059,.46,.251,.46,.251,.46,.251,.5,.059,.5,.047,.161,.263,.161,.263,.221,.047,.221,.263,.46,.263,.412,.309,.412,.309,.463,.263,.229,.047,.229,.047,.239,.047,.283,.013,.283,.047,.162,.047,.221,.014,.221,.013,.162,.014,.229,.263,.221,.263,.162,.297,.162,.297,.283,.263,.283,.263,.239,.263,.229,.296,.229,.296,.221,.263,.46,.309,.463,.309,.412,.263,.412,.251,.459,.258,.283,.18,.283,.059,.459,.047,.46,.002,.412,.002,.463,.251,.46,.263,.46,.263,.283,.047,.283,.047,.46,.251,.5,.251,.46,.059,.46,.059,.5}))))))
                .addChild(new Transform("dad_SupStructS")
                  .addChild(new Shape("SupStructS")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material36_mat").setAmbientIntensity(0.835).setDiffuseColor(.83529,.83529,.83529).setShininess(0.010).setSpecularColor(.88235,.88235,.88235)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.5710).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,8,9,10,-1,10,11,8,-1,12,13,14,-1,14,15,12,-1,16,17,18,-1,18,19,16,-1,9,20,17,-1,17,21,9,-1,22,23,24,-1,24,25,22,-1,16,21,17,-1,26,27,28,-1,28,29,30,-1,26,28,30,-1,9,8,20,-1,31,32,33,-1,34,31,33,-1,35,34,33,-1,36,37,38,-1,36,38,39,-1,28,40,41,-1,29,28,41,-1,42,29,41,-1,43,44,45,-1,43,45,46,-1,43,46,47,-1,46,45,35,-1,46,35,48,-1,49,46,48,-1,50,51,42,-1,42,41,50,-1,35,33,52,-1,52,48,35,-1,53,54,55,-1,53,55,56,-1,57,58,42,-1,57,42,51,-1,59,57,51,-1,60,61,62,-1,62,63,60,-1,64,65,66,-1,66,67,64,-1,15,14,24,-1,15,24,23,-1,68,44,43,-1,43,69,68,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,8,9,10,-1,10,11,8,-1,12,13,14,-1,14,15,12,-1,16,17,18,-1,18,19,16,-1,9,20,17,-1,17,21,9,-1,22,23,24,-1,24,25,22,-1,16,21,17,-1,26,27,28,-1,28,0,29,-1,26,28,29,-1,9,8,20,-1,18,30,31,-1,19,18,31,-1,32,19,31,-1,33,34,35,-1,33,35,36,-1,28,37,38,-1,0,28,38,-1,1,0,38,-1,39,10,40,-1,39,40,41,-1,39,41,42,-1,41,40,32,-1,41,32,43,-1,44,41,43,-1,45,46,1,-1,1,38,45,-1,32,31,47,-1,47,43,32,-1,48,49,50,-1,48,50,51,-1,52,53,1,-1,52,1,46,-1,54,52,46,-1,55,56,57,-1,57,48,55,-1,58,59,60,-1,60,47,58,-1,15,14,24,-1,15,24,23,-1,10,10,39,-1,39,11,10,-1})
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_288_point()))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.295,.414,.258,.414,.258,.463,.295,.463,.295,.463,.258,.463,.258,.414,.295,.414,.302,.46,.295,.463,.295,.46,.302,.46,.302,.46,.295,.46,.295,.464,.31,.498,.258,.463,.186,.498,.186,.46,.258,.46,.31,.498,.294,.463,.186,.46,.186,.498,.258,.463,.258,.46,.302,.46,.302,.236,.3,.236,.295,.46,.186,.288,.221,.288,.258,.414,.237,.171,.302,.171,.3,.228,.237,.228,.237,.236,.237,.246,.302,.46,.295,.414,.3,.236,.302,.236,.237,.246,.237,.236,.237,.288,.221,.288,.237,.288,.237,.171,.237,.228,.3,.228,.302,.171,.186,.46,.258,.46,.186,.288,.064,.171,.064,.288,.237,.288,.064,.288,.064,.171,.237,.171}))))))
                .addChild(new Transform("dad_TowerTop")
                  .addChild(new Shape("TowerTop")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material37_mat").setAmbientIntensity(0.796).setDiffuseColor(.79608,.79608,.79608).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.5710).setCoordIndex(getIndexedFaceSet_11_295_coordIndex())
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_295_point())))))
                .addChild(new Transform("dad_TowSide1")
                  .addChild(new Shape("TowSide1")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CNTSHIPB_TEX"))
                      .setMaterial(new Material("material38_mat").setAmbientIntensity(0.588).setDiffuseColor(.58823,.58823,.58823).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,8,9,10,-1,10,11,8,-1,12,13,14,-1,14,15,12,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,0,4,5,-1,5,6,0,-1,7,8,9,-1,9,10,7,-1,7,11,12,-1,12,13,7,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-282.94632,-25.62096,-128.89949,-280.1752,-28.4157,-113.50053,-286.93185,-28.38715,-113.50059,-284.13699,-25.61593,-128.89951,-282.94128,-24.43028,-128.89949,-284.13196,-24.42525,-128.89951,-286.90329,-21.63049,-113.50059,-280.14664,-21.65905,-113.50053,-282.9463,25.22225,-128.8995,-280.17518,22.4275,-113.50055,-286.93183,22.45606,-113.5006,-284.13697,25.22728,-128.89952,-282.94126,26.41293,-128.8995,-284.13194,26.41797,-128.89952,-286.90327,29.21271,-113.50059,-280.14662,29.18415,-113.50055})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.824,.672,.874,.037,.752,.037,.802,.672,.802,.672,.752,.037,.874,.037,.82,.672,.87,.037,.748,.037,.798,.672,.798,.672,.748,.037,.87,.037}))))))))))))
    .addChild(new Viewpoint("VP1").setDescription("Blue Container Ship Starboard").setPosition(0.0,2.0,305.0))
    .addChild(new Viewpoint("VP2").setDescription("Blue Container Ship Front").setOrientation(0.0,1.0,0.0,1.571).setPosition(305.0,2.0,0.0))
    .addChild(new Viewpoint("VP3").setDescription("Blue Container Ship Port").setOrientation(0.0,1.0,0.0,3.142).setPosition(0.0,2.0,-305.0))
    .addChild(new Viewpoint("VP4").setDescription("Blue Container Ship Back").setOrientation(0.0,1.0,0.0,-1.571).setPosition(-305.0,2.0,0.0))
    .addChild(new Viewpoint("VP5").setDescription("Blue Container Ship Top").setOrientation(1.0,0.0,0.0,-1.571).setPosition(0.0,305.0,0.0))
    .addChild(new Viewpoint("VP6").setDescription("Blue Container Ship Bottom").setOrientation(1.0,0.0,0.0,1.571).setPosition(0.0,-305.0,0.0))
    .addChild(new Viewpoint("VP7").setDescription("Blue Container Ship Three-Quarter").setFieldOfView(0.60243).setOrientation(0.124491,-0.945607,-0.300549,-2.39496).setPosition(305.0,305.0,-305.0)));
            }
            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_11_188_coordIndex_1()
		{
			int[] value = {0,1,2,-1,3,4,5,-1,6,7,8,-1,8,7,9,-1,10,6,8,-1,11,12,13,-1,13,14,11,-1,15,16,17,-1,18,19,20,-1,20,21,18,-1,19,22,23,-1,23,20,19,-1,21,20,24,-1,24,25,21,-1,20,23,26,-1,26,24,20,-1,24,26,27,-1,27,28,24,-1,25,24,28,-1,28,13,25,-1,28,27,29,-1,29,30,28,-1,13,28,30,-1,30,14,13,-1,30,29,31,-1,31,32,30,-1,17,30,32,-1,32,15,17,-1,30,17,33,-1,34,1,0,-1,0,35,34,-1,0,2,5,-1,5,4,0,-1,35,0,4,-1,4,36,35,-1,36,4,3,-1,3,37,36,-1,37,38,39,-1,39,36,37,-1,36,39,40,-1,40,35,36,-1,35,40,41,-1,41,34,35,-1,42,34,41,-1,41,43,42,-1,43,41,44,-1,44,45,43,-1,41,40,46,-1,46,44,41,-1,45,44,26,-1,26,23,45,-1,44,46,27,-1,27,26,44,-1,25,13,12,-1,12,47,25,-1,21,25,47,-1,47,48,21,-1,48,47,7,-1,7,6,48,-1,47,12,9,-1,9,7,47,-1,49,31,29,-1,29,50,49,-1,50,29,27,-1,27,46,50,-1,45,23,22,-1,22,51,45,-1,51,22,52,-1,52,53,51,-1,11,14,33,-1,33,54,11,-1,54,33,17,-1,17,16,54,-1,49,50,39,-1,39,38,49,-1,42,43,55,-1,55,56,42,-1,56,55,57,-1,57,58,56,-1,50,46,40,-1,40,39,50,-1,43,45,51,-1,51,55,43,-1,55,51,53,-1,53,57,55,-1,18,21,48,-1,48,59,18,-1,59,48,6,-1,6,10,59,-1,2,1,60,-1,5,61,3,-1,8,62,63,-1,9,62,8,-1,8,63,64,-1,65,12,11,-1,11,66,65,-1,67,16,15,-1,68,69,70,-1,70,71,68,-1,72,73,69,-1,69,68,72,-1,74,68,71,-1,71,75,74,-1,76,72,68,-1,68,74,76,-1,77,76,74,-1,74,78,77,-1,78,74,75,-1,75,65,78,-1,79,77,78,-1,78,80,79,-1,80,78,65,-1,65,66,80,-1,31,79,80,-1,80,32,31,-1,32,80,67,-1,67,15,32,-1,81,80,66,-1,60,1,34,-1,34,82,60,-1,5,2,60,-1,60,61,5,-1,61,60,82,-1,82,83,61,-1,3,61,83,-1,83,37,3,-1,84,38,37,-1,37,83,84,-1,85,84,83,-1,83,82,85,-1,86,85,82,-1,82,34,86,-1,86,34,42,-1,42,87,86,-1,88,86,87,-1,87,89,88,-1,90,85,86,-1,86,88,90,-1,76,88,89,-1,89,72,76,-1,77,90,88,-1,88,76,77,-1,12,65,75,-1,75,91,12,-1,91,75,71,-1,71,92,91,-1,62,91,92,-1,92,63,62,-1,9,12,91,-1,91,62,9,-1,79,31,49,-1,49,93,79,-1,77,79,93,-1,93,90,77,-1,73,72,89,-1,89,94,73,-1,95,73,94,-1,94,96,95,-1,81,66,11,-1,11,54,81,-1,67,81,54,-1,54,16,67,-1,84,93,49,-1,49,38,84,-1,97,87,42,-1,42,56,97,-1,98,97,56,-1,56,58,98,-1,85,90,93,-1,93,84,85,-1,94,89,87,-1,87,97,94,-1,96,94,97,-1,97,98,96,-1,92,71,70,-1,70,99,92,-1,63,92,99,-1,99,64,63,-1,33,14,30,-1,81,67,80,-1};
			return value;
		}


		/** Define subarrays using type int[] */
		private int[] getIndexedFaceSet_11_188_texCoordIndex_1()
		{
			int[] value = {0,1,2,-1,3,4,5,-1,6,7,8,-1,8,7,9,-1,10,6,8,-1,11,12,13,-1,13,14,11,-1,15,16,17,-1,18,19,20,-1,20,21,18,-1,19,22,23,-1,23,20,19,-1,21,20,24,-1,24,25,21,-1,20,23,26,-1,26,24,20,-1,24,26,27,-1,27,28,24,-1,25,24,28,-1,28,13,25,-1,28,27,29,-1,29,30,28,-1,13,28,30,-1,30,14,13,-1,30,29,31,-1,31,32,30,-1,17,30,32,-1,32,15,17,-1,30,17,33,-1,34,1,0,-1,0,35,34,-1,0,2,5,-1,5,4,0,-1,35,0,4,-1,4,36,35,-1,36,4,3,-1,3,37,36,-1,37,38,39,-1,39,36,37,-1,36,39,40,-1,40,35,36,-1,35,40,41,-1,41,34,35,-1,42,34,41,-1,41,43,42,-1,43,41,44,-1,44,45,43,-1,41,40,46,-1,46,44,41,-1,45,44,26,-1,26,23,45,-1,44,46,27,-1,27,26,44,-1,25,13,12,-1,12,47,25,-1,21,25,47,-1,47,48,21,-1,48,47,7,-1,7,6,48,-1,47,12,9,-1,9,7,47,-1,49,31,29,-1,29,50,49,-1,50,29,27,-1,27,46,50,-1,45,23,22,-1,22,51,45,-1,51,22,52,-1,52,53,51,-1,11,14,33,-1,33,54,11,-1,54,33,17,-1,17,16,54,-1,49,50,39,-1,39,38,49,-1,42,43,55,-1,55,56,42,-1,56,55,57,-1,57,58,56,-1,50,46,40,-1,40,39,50,-1,43,45,51,-1,51,55,43,-1,55,51,53,-1,53,57,55,-1,18,21,48,-1,48,59,18,-1,59,48,6,-1,6,10,59,-1,2,1,60,-1,5,61,3,-1,8,62,63,-1,9,62,8,-1,8,63,64,-1,65,12,11,-1,11,66,65,-1,67,16,15,-1,20,19,68,-1,68,69,20,-1,70,71,19,-1,19,20,70,-1,24,20,69,-1,69,72,24,-1,73,70,20,-1,20,24,73,-1,74,73,24,-1,24,75,74,-1,75,24,72,-1,72,65,75,-1,76,74,75,-1,75,30,76,-1,30,75,65,-1,65,66,30,-1,31,76,30,-1,30,32,31,-1,32,30,67,-1,67,15,32,-1,77,30,66,-1,60,1,34,-1,34,78,60,-1,5,2,60,-1,60,61,5,-1,61,60,78,-1,78,79,61,-1,3,61,79,-1,79,37,3,-1,80,38,37,-1,37,79,80,-1,81,80,79,-1,79,78,81,-1,82,81,78,-1,78,34,82,-1,82,34,42,-1,42,83,82,-1,84,82,83,-1,83,85,84,-1,86,81,82,-1,82,84,86,-1,73,84,85,-1,85,70,73,-1,74,86,84,-1,84,73,74,-1,12,65,72,-1,72,87,12,-1,87,72,69,-1,69,88,87,-1,62,87,88,-1,88,63,62,-1,9,12,87,-1,87,62,9,-1,76,31,49,-1,49,89,76,-1,74,76,89,-1,89,86,74,-1,71,70,85,-1,85,90,71,-1,91,71,90,-1,90,92,91,-1,77,66,11,-1,11,54,77,-1,67,77,54,-1,54,16,67,-1,80,89,49,-1,49,38,80,-1,93,83,42,-1,42,56,93,-1,94,93,56,-1,56,58,94,-1,81,86,89,-1,89,80,81,-1,90,85,83,-1,83,93,90,-1,92,90,93,-1,93,94,92,-1,88,69,68,-1,68,95,88,-1,63,88,95,-1,95,64,63,-1,33,14,30,-1,77,67,30,-1};
			return value;
		}






		/** Define subarrays using type int[] */
		private int[] getIndexedFaceSet_11_295_coordIndex_1()
		{
			int[] value = {0,1,2,-1,0,2,3,-1,0,3,4,-1,0,4,5,-1,0,5,6,-1,0,6,7,-1,0,7,8,-1,0,8,1,-1,9,2,1,-1,1,10,9,-1,11,3,2,-1,2,9,11,-1,12,4,3,-1,3,11,12,-1,13,5,4,-1,4,12,13,-1,14,6,5,-1,5,13,14,-1,15,7,6,-1,6,14,15,-1,16,8,7,-1,7,15,16,-1,10,1,8,-1,8,16,10,-1,17,9,10,-1,10,18,17,-1,19,11,9,-1,9,17,19,-1,20,12,11,-1,11,19,20,-1,21,13,12,-1,12,20,21,-1,22,14,13,-1,13,21,22,-1,23,15,14,-1,14,22,23,-1,24,16,15,-1,15,23,24,-1,18,10,16,-1,16,24,18,-1,25,17,18,-1,18,26,25,-1,27,19,17,-1,17,25,27,-1,28,20,19,-1,19,27,28,-1,29,21,20,-1,20,28,29,-1,30,22,21,-1,21,29,30,-1,31,23,22,-1,22,30,31,-1,32,24,23,-1,23,31,32,-1,26,18,24,-1,24,32,26,-1,33,25,26,-1,26,34,33,-1,35,27,25,-1,25,33,35,-1,36,28,27,-1,27,35,36,-1,37,29,28,-1,28,36,37,-1,38,30,29,-1,29,37,38,-1,39,31,30,-1,30,38,39,-1,40,32,31,-1,31,39,40,-1,34,26,32,-1,32,40,34,-1,41,42,43,-1,41,43,44,-1,41,44,45,-1,41,45,46,-1,41,46,47,-1,41,47,48,-1,41,48,49,-1,41,49,42,-1,50,43,42,-1,42,51,50,-1,52,44,43,-1,43,50,52,-1,53,45,44,-1,44,52,53,-1,54,46,45,-1,45,53,54,-1,55,47,46,-1,46,54,55,-1,56,48,47,-1,47,55,56,-1,57,49,48,-1,48,56,57,-1,51,42,49,-1,49,57,51,-1,58,50,51,-1,51,59,58,-1,60,52,50,-1,50,58,60,-1,61,53,52,-1,52,60,61,-1,62,54,53,-1,53,61,62,-1,63,55,54,-1,54,62,63,-1,64,56,55,-1,55,63,64,-1,65,57,56,-1,56,64,65,-1,59,51,57,-1,57,65,59,-1,66,58,59,-1,59,67,66,-1,68,60,58,-1,58,66,68,-1,69,61,60,-1,60,68,69,-1,70,62,61,-1,61,69,70,-1,71,63,62,-1,62,70,71,-1,72,64,63,-1,63,71,72,-1,73,65,64,-1,64,72,73,-1,67,59,65,-1,65,73,67,-1,74,66,67,-1,67,75,74,-1,76,68,66,-1,66,74,76,-1,77,69,68,-1,68,76,77,-1,78,70,69,-1,69,77,78,-1,79,71,70,-1,70,78,79,-1,80,72,71,-1,71,79,80,-1,81,73,72,-1,72,80,81,-1,75,67,73,-1,73,81,75,-1};
			return value;
		}


		/** Large attribute array: Coordinate point field, scene-graph level=12, element #84, 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_12_84_point()
		{
			MFVec3f Coordinate_12_84_point = new MFVec3f(new double[] {-256.88782,-39.43682,-105.07787,-256.97965,-61.163,-104.75045,-272.64508,-61.09681,-104.75044,-272.55328,-39.37035,-104.75044,-256.92429,33.46853,-104.75044,-272.24518,33.53327,-104.75044,-272.15365,55.19152,-104.75044,-256.48819,55.12531,-104.75044,-256.57971,33.46706,-104.71781,-272.22632,37.99258,-104.07649,-272.24518,33.53327,-104.07649,-256.90668,-43.89585,-104.07649,-256.88785,-39.44298,-104.0832,-250.28496,-39.46445,-113.46502,-303.24383,-39.24064,-113.46502,-302.93573,33.66296,-113.46502,-249.97688,33.43916,-113.46502,-253.75221,-39.4498,-104.07649,-253.74957,-39.44982,-104.09081,-302.9169,38.12228,-104.0765,-302.93576,33.66296,-104.0765,-302.93576,33.66296,-103.70789,-254.16136,37.91623,-47.35447,-253.42265,37.91311,-33.37269,-253.4225,37.91311,-47.35447,-272.57211,-43.82966,-104.07649,-272.55328,-39.37461,-104.08093,-256.56088,37.92637,-104.07649,-256.57971,33.46706,-104.07649,-253.76827,-43.90912,-47.35447,-253.76842,-43.90912,-33.37269,-254.50713,-43.906,-47.35447,-302.93573,33.66296,-104.07649,-302.9169,38.12228,-104.07649,-303.26269,-43.69995,-104.07649,-303.24383,-39.24064,-104.07649,-272.57211,-43.82966,-104.0765,-253.75221,-39.4498,-104.0765,-253.76842,-43.90912,-104.0765,-256.90668,-43.89585,-104.0765,-288.39776,-43.76277,-62.14211,-281.30569,-43.79275,-62.14211,-281.36032,-56.71578,-62.14212,-303.26269,-43.69995,-62.14211,-354.98547,-56.40463,-62.14212,-303.25497,-41.87595,-62.14211,-354.53023,51.3152,-62.14212,-303.12896,-12.05598,-62.14211,-302.9169,38.12228,-62.1421,-280.90509,51.00407,-62.14211,-280.9599,38.02948,-62.14211,-288.05197,38.05945,-62.14211,-303.24383,-39.24064,-103.7079,-302.93573,33.66296,-103.70789});
			return Coordinate_12_84_point;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=12, element #111, 138 total numbers made up of 46 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_12_111_point()
		{
			MFVec3f Coordinate_12_111_point = new MFVec3f(new double[] {-269.30801,-.01093,-145.77126,-268.97501,-.0619,-143.32323,-269.06204,-10.5512,-144.88525,-270.52383,-10.54503,-144.88525,-270.17184,-.00728,-143.27347,-270.17185,-.00728,-145.77126,-257.29889,-.1162,-145.77126,-269.3017,1.48527,-145.77126,-268.95541,1.52351,-143.32585,-258.42352,1.42346,-144.88526,-281.04627,1.51907,-144.88525,-270.16553,1.48892,-143.31871,-270.16553,1.48892,-145.77126,-282.1839,-.01103,-145.77125,-270.49655,13.20915,-145.77126,-268.88858,13.20236,-145.77126,-268.96643,12.07153,-144.88525,-270.16553,1.48892,-143.27351,-270.60062,.74265,-145.77126,-268.87296,.73534,-145.77126,-257.29208,1.49177,-145.77126,-270.60172,-11.67585,-145.77126,-268.87295,.73534,-143.33784,-269.30169,1.48527,-119.56203,-269.3017,1.48527,-143.27388,-269.30801,-.01093,-143.27388,-269.30804,-.01093,-119.56203,-282.17709,1.59694,-145.77125,-270.60062,.74265,-146.50626,-269.3017,1.48527,-146.50626,-269.30801,-.01093,-146.50626,-270.16552,1.48892,-119.56203,-268.87295,.73534,-119.56203,-270.60062,.74265,-143.33748,-270.60061,.74264,-119.56203,-270.60062,.74265,-143.33748,-258.42972,-.03833,-144.88526,-281.05243,.05728,-144.88525,-270.42822,12.0777,-144.88525,-268.99374,-11.68265,-145.77126,-270.17185,-.00728,-145.77126,-270.17187,-.00728,-119.56203,-268.87296,.73534,-145.77126,-269.3017,1.48527,-145.77126,-268.87296,.73534,-146.50626,-268.87295,.73534,-143.33784});
			return Coordinate_12_111_point;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=12, element #130, 108 total numbers made up of 36 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_12_130_point()
		{
			MFVec3f Coordinate_12_130_point = new MFVec3f(new double[] {-319.80887,-4.89673,-117.17855,-319.81851,-7.17826,-113.55543,-326.27011,-6.0438,-113.55542,-324.47934,-4.07547,-117.17855,-330.98367,-2.99897,-113.55543,-327.89157,-1.87125,-117.17855,-332.69617,1.14038,-113.55543,-329.13129,1.12531,-117.17855,-330.94876,5.2651,-113.55543,-327.86627,4.11128,-117.17855,-326.20963,8.26998,-113.55541,-324.43552,6.28658,-117.17855,-319.74866,9.34987,-113.55543,-319.7583,7.06834,-117.17855,-313.29703,8.21541,-113.55543,-315.08783,6.24708,-117.17855,-308.58347,5.17058,-113.55541,-311.67557,4.04286,-117.17855,-306.87097,1.03123,-113.55543,-310.43585,1.0463,-117.17855,-308.61838,-3.09349,-113.55542,-311.70087,-1.93968,-117.17855,-313.35751,-6.09837,-113.55543,-315.13162,-4.11497,-117.17855,-327.98294,-12.43286,-62.41907,-338.5636,-10.57234,-62.41907,-346.29382,-5.57881,-62.41906,-349.10233,1.20971,-62.41906,-346.23654,7.97426,-62.41905,-338.46439,12.90227,-62.41906,-327.86835,14.67329,-62.41906,-317.28769,12.81277,-62.41906,-309.55747,7.81924,-62.41906,-306.74896,1.03071,-62.41906,-309.61475,-5.73383,-62.41906,-317.3869,-10.66184,-62.41907});
			return Coordinate_12_130_point;
		}
		/** Large attribute array: IndexedFaceSet coordIndex field, scene-graph level=11, element #188, 720 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_11_188_coordIndex()
		{
			MFInt32 IndexedFaceSet_11_188_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_11_188_coordIndex_1()));
			return IndexedFaceSet_11_188_coordIndex;
		}
		/** Large attribute array: IndexedFaceSet texCoordIndex field, scene-graph level=11, element #188, 720 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_11_188_texCoordIndex()
		{
			MFInt32 IndexedFaceSet_11_188_texCoordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_11_188_texCoordIndex_1()));
			return IndexedFaceSet_11_188_texCoordIndex;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=12, element #188, 300 total numbers made up of 100 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_12_188_point()
		{
			MFVec3f Coordinate_12_188_point = new MFVec3f(new double[] {492.04177,-16.59402,12.75022,492.0052,-2.60265,4.74447,500.34899,-2.58483,13.53095,492.00191,-2.54956,27.82257,492.06969,-13.36583,24.1744,496.52968,-2.5687,23.93623,-495.95738,-51.10377,-18.57842,-495.58418,-27.82267,-9.49032,-495.76225,1.62484,-33.36348,-495.27595,1.62278,-8.2584,-495.97133,-56.04489,-33.36348,-435.77793,1.37134,13.50936,-465.74134,1.49797,1.86695,-425.41257,-30.67293,12.43731,-425.48679,-2.08233,18.16459,-425.47241,1.32779,29.47205,-437.22907,1.37747,29.74622,-425.48612,-1.91856,29.05055,-425.97008,-64.08836,-33.3655,-256.64018,-80.92156,-33.37269,-256.55005,-76.44464,-8.32358,-425.74864,-59.1788,-18.01214,311.11667,-80.51632,-33.4521,311.16673,-65.52496,-8.48306,-256.56021,-73.38319,.49086,-425.67799,-58.61169,-8.54309,310.95634,-62.64354,-3.76647,311.07124,-37.23212,12.03171,-256.51648,-59.43454,10.90992,311.09569,-29.29872,24.63842,-256.42853,-30.0556,24.92667,311.22325,-1.27236,32.21492,-256.31387,.6129,35.55151,-425.48642,-1.98982,24.9468,478.64473,-2.49311,-.39998,478.48616,-25.23253,12.17025,478.52745,-21.71301,24.58544,478.61754,-2.49299,31.16426,444.39089,-2.34835,31.38053,444.23476,-26.29811,24.588,444.2777,-29.03998,12.30767,444.35103,-12.43364,-2.34714,475.55714,-2.48006,-8.40225,444.66722,-15.04633,-8.4075,419.36653,-19.70483,-3.76568,419.34254,-25.38135,-8.41175,419.3279,-28.84485,12.30319,-465.86567,-46.6232,-9.26534,-465.80323,-54.64138,-18.45214,419.44033,-2.2429,31.55206,419.3265,-29.17822,24.58562,419.2515,-46.9239,-33.4521,326.89545,-80.58299,-41.17094,419.05778,-67.0314,-47.98714,-436.64121,1.37498,25.03194,452.3213,-28.76203,-33.99327,485.82252,-2.52344,-33.96012,459.02296,-49.99582,-50.85133,496.45579,-2.56838,-53.34825,-465.8763,-59.52348,-33.36434,492.16048,11.49406,12.75032,492.16112,8.26575,24.17449,-495.33531,31.06979,-9.49034,-495.5117,54.35322,-18.57844,-495.48393,59.29428,-33.3635,-425.14209,33.32686,12.43729,-425.45798,4.73791,18.16458,-425.45868,4.57414,29.05053,-255.89873,77.6697,-8.32357,-255.95103,82.14722,-33.37269,-425.41713,66.74582,-33.36552,-425.23722,61.83455,-18.01215,311.70552,61.95203,-8.48299,311.78214,76.9433,-33.45203,-255.93476,74.60844,.49087,-425.17136,61.26687,-8.5431,311.47075,59.07249,-3.7664,311.37089,33.66101,12.03179,-256.00894,60.65991,10.90992,311.3282,25.72768,24.63849,-256.16931,31.28128,24.92668,-425.45838,4.64541,24.94679,478.67836,20.24684,12.17034,478.68993,16.72709,24.58553,444.43721,21.60188,24.58809,444.50331,24.34329,12.30775,444.43626,7.73691,-2.34705,444.77455,10.34684,-8.40741,419.51414,15.21901,-3.76559,419.53813,20.89554,-8.41166,419.55275,24.35904,12.30328,-465.4589,49.61847,-9.26536,-465.32872,57.63582,-18.45216,419.55419,24.69241,24.58571,419.62916,42.43808,-33.45202,327.56092,76.87659,-41.17087,419.60541,62.54651,-47.98707,452.54429,23.99737,-33.99317,459.42518,45.17376,-50.85123,-465.36055,62.51837,-33.36436});
			return Coordinate_12_188_point;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=12, element #273, 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 getCoordinate_12_273_point()
		{
			MFVec3f Coordinate_12_273_point = new MFVec3f(new double[] {-264.44647,.76646,-146.42462,-263.302,.76162,-146.79648,-263.51773,1.43525,-146.79648,-264.08823,1.85343,-146.79648,-264.79553,1.85641,-146.79648,-265.36954,1.44308,-146.79648,-265.59094,.7713,-146.79648,-265.37521,.09767,-146.79648,-264.80475,-.3205,-146.79648,-264.09741,-.32349,-146.79648,-263.52341,.08984,-146.79648,-262.59467,.75863,-147.77005,-262.94373,1.84859,-147.77005,-263.86679,2.52521,-147.77005,-265.01126,2.53004,-147.77005,-265.94,1.86125,-147.77005,-266.29828,.77429,-147.77005,-265.94922,-.31567,-147.77005,-265.02615,-.99229,-147.77005,-263.88168,-.99712,-147.77005,-262.95294,-.32833,-147.77005,-262.59467,.75863,-148.97342,-262.94373,1.84859,-148.97342,-263.86679,2.52521,-148.97342,-265.01126,2.53004,-148.97342,-265.94,1.86125,-148.97342,-266.29828,.77429,-148.97342,-265.94922,-.31567,-148.97342,-265.02615,-.99229,-148.97342,-263.88168,-.99712,-148.97342,-262.95294,-.32833,-148.97342,-263.302,.76162,-149.94699,-263.51773,1.43525,-149.94699,-264.08823,1.85343,-149.94699,-264.79553,1.85641,-149.94699,-265.36954,1.44308,-149.94699,-265.59094,.7713,-149.94699,-265.37521,.09767,-149.94699,-264.80472,-.3205,-149.94699,-264.09741,-.32349,-149.94699,-263.52341,.08984,-149.94699,-264.44647,.76646,-150.31885});
			return Coordinate_12_273_point;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=12, element #280, 180 total numbers made up of 60 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_12_280_point()
		{
			MFVec3f Coordinate_12_280_point = new MFVec3f(new double[] {-256.56089,37.92638,-104.07649,-256.4882,55.12531,-104.75044,-256.4882,55.12531,-92.77088,-256.56089,37.92638,-92.77088,-253.44144,33.45381,-104.0908,-253.44408,33.45382,-104.07649,-253.75219,-39.44981,-104.07649,-253.74955,-39.44982,-104.09081,-250.28496,-39.46446,-113.46502,-249.97684,33.43917,-113.46501,-253.4226,37.91312,-33.37269,-253.76841,-43.90913,-33.3727,-253.76826,-43.90913,-47.35447,-253.42246,37.91312,-47.35446,-256.90667,-43.89587,-104.07649,-256.90667,-43.89587,-92.77089,-256.97964,-61.163,-92.77089,-256.97964,-61.163,-104.75045,-253.76829,-43.90911,-49.44231,-253.7684,-43.90912,-104.07649,-253.4226,37.91312,-104.07649,-253.42249,37.91312,-49.4423,-280.9599,38.02949,-51.78904,-280.9599,38.02949,-62.14211,-280.90509,51.00409,-62.14211,-280.9599,38.02949,-49.44231,-280.9599,38.02949,-33.55991,-280.9599,38.02949,-47.35448,-280.90668,50.62468,-47.35448,-280.90509,51.00409,-33.55991,-280.90668,50.62468,-49.44231,-281.30569,-43.79274,-47.35448,-281.30569,-43.79274,-33.55991,-281.36032,-56.71579,-33.55991,-281.36032,-56.71578,-62.14211,-281.30569,-43.79274,-62.14211,-281.30569,-43.79274,-51.78905,-281.30569,-43.79274,-49.44232,-281.35876,-56.34385,-49.44232,-281.35876,-56.34385,-47.35448,-272.57211,-43.82965,-104.07651,-272.64507,-61.09679,-104.75045,-272.64507,-61.09679,-92.77089,-272.57211,-43.82965,-92.77088,-303.24383,-39.24063,-103.70789,-303.25497,-41.87594,-62.14212,-303.12896,-12.05597,-62.14212,-302.93573,33.66298,-103.70789,-272.22632,37.99258,-104.07649,-272.22632,37.99258,-92.77088,-272.15363,55.19151,-92.77088,-272.15363,55.19151,-104.75045,-303.24383,-39.24063,-104.07649,-303.26269,-43.69994,-104.07649,-303.26269,-43.69994,-62.14212,-302.9169,38.12229,-62.14212,-302.9169,38.12229,-104.07649,-303.24383,-39.24063,-113.46502,-302.93573,33.66298,-104.07649,-302.93573,33.66298,-113.46502});
			return Coordinate_12_280_point;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=12, element #288, 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 getCoordinate_12_288_point()
		{
			MFVec3f Coordinate_12_288_point = new MFVec3f(new double[] {-256.97964,-61.163,-92.77089,-272.64507,-61.09679,-92.77088,-272.64507,-61.09679,-104.75045,-256.97964,-61.163,-104.75046,-256.4882,55.12529,-104.75045,-272.15363,55.19151,-104.75045,-272.15363,55.19151,-92.77088,-256.4882,55.12529,-92.77088,-253.44144,33.4538,-104.09081,-256.57972,33.46706,-104.71782,-256.57972,33.46706,-104.07649,-253.44408,33.45382,-104.07649,-253.74955,-39.44981,-104.09081,-256.88785,-39.44298,-104.0832,-256.88781,-39.43682,-105.07788,-250.28494,-39.46444,-113.46502,-272.24518,33.53326,-104.75045,-302.93573,33.66296,-113.46502,-302.93573,33.66296,-104.07651,-272.24518,33.53327,-104.07649,-249.97684,33.43915,-113.46502,-256.92426,33.46853,-104.75045,-303.24383,-39.24063,-104.07651,-303.24383,-39.24063,-113.46502,-272.55328,-39.37033,-104.75045,-272.55328,-39.3746,-104.08094,-253.7684,-43.90911,-104.07649,-253.76829,-43.90911,-49.44231,-254.61741,-43.90552,-49.44231,-256.90667,-43.89585,-92.77089,-256.90667,-43.89585,-104.07649,-302.9169,38.12229,-104.07651,-302.9169,38.12229,-62.14211,-288.05197,38.05946,-62.14211,-272.22632,37.99258,-104.07649,-272.22632,37.99258,-92.77088,-280.9599,38.02949,-33.55991,-253.42261,37.91312,-33.3727,-254.16132,37.91623,-47.35448,-280.9599,38.02949,-47.35448,-281.30569,-43.79274,-49.44232,-281.30569,-43.79274,-51.78905,-272.57211,-43.82965,-92.77088,-253.4226,37.91312,-104.07649,-256.56089,37.92636,-104.07649,-256.56089,37.92636,-92.77088,-254.27163,37.91669,-49.44231,-253.42249,37.91312,-49.44231,-280.9599,38.02949,-51.78905,-280.9599,38.02949,-49.44231,-281.30569,-43.79274,-62.14211,-288.39776,-43.76277,-62.14211,-280.9599,38.02949,-62.14212,-281.30569,-43.79274,-33.55991,-281.30569,-43.79274,-47.35448,-254.50711,-43.906,-47.35448,-253.7684,-43.90911,-33.3727,-303.26269,-43.69994,-104.07651,-272.57211,-43.82965,-104.07649,-303.26269,-43.69994,-62.14211,-354.98549,-56.40463,-33.55991,-354.98549,-56.40463,-62.14212,-281.36032,-56.71577,-62.14211,-281.36032,-56.71577,-33.55991,-354.53027,51.31523,-62.14212,-354.53027,51.31523,-33.55991,-280.90509,51.00407,-33.55991,-280.90506,51.00407,-62.14212,-256.57975,33.46706,-104.07649,-253.4441,33.45382,-104.07649});
			return Coordinate_12_288_point;
		}
		/** Large attribute array: IndexedFaceSet coordIndex field, scene-graph level=11, element #295, 576 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_11_295_coordIndex()
		{
			MFInt32 IndexedFaceSet_11_295_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_11_295_coordIndex_1()));
			return IndexedFaceSet_11_295_coordIndex;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=12, element #295, 246 total numbers made up of 82 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_12_295_point()
		{
			MFVec3f Coordinate_12_295_point = new MFVec3f(new double[] {-283.50845,-25.01966,-136.50688,-283.5127,-26.02415,-136.30707,-284.22171,-25.72694,-136.30708,-284.51294,-25.01541,-136.30707,-284.21573,-24.30637,-136.30707,-283.50418,-24.01517,-136.30707,-282.79517,-24.31238,-136.30707,-282.50394,-25.0239,-136.30707,-282.80115,-25.73294,-136.30707,-284.82642,-26.32653,-135.73808,-283.5163,-26.87571,-135.73807,-285.3645,-25.01181,-135.73808,-284.81534,-23.70169,-135.73807,-283.50061,-23.16361,-135.73807,-282.19046,-23.71278,-135.73807,-281.6524,-25.0275,-135.73805,-282.20157,-26.33763,-135.73807,-285.23047,-26.72717,-134.88652,-283.51871,-27.4447,-134.88651,-285.9335,-25.00941,-134.88651,-285.21597,-23.29764,-134.88651,-283.4982,-22.59461,-134.88651,-281.78644,-23.31214,-134.88649,-281.08341,-25.02991,-134.88649,-281.80093,-26.74167,-134.88649,-285.37235,-26.86786,-133.88202,-283.51956,-27.64451,-133.882,-286.1333,-25.00856,-133.88202,-285.35666,-23.15576,-133.88202,-283.49738,-22.3948,-133.882,-281.64456,-23.17145,-133.88199,-280.88361,-25.03075,-133.88197,-281.66025,-26.88355,-133.88199,-285.37238,-26.86786,-128.89951,-283.51959,-27.64451,-128.89951,-286.13333,-25.00856,-128.89952,-285.35669,-23.15576,-128.89952,-283.49741,-22.39481,-128.89951,-281.64459,-23.17145,-128.89949,-280.88364,-25.03075,-128.89948,-281.66028,-26.88355,-128.89949,-283.50845,25.82356,-136.50688,-283.51269,24.81906,-136.30707,-284.22174,25.11627,-136.30708,-284.51294,25.8278,-136.30707,-284.21573,26.53683,-136.30707,-283.50421,26.82804,-136.30707,-282.79517,26.53083,-136.30707,-282.50397,25.81931,-136.30707,-282.80118,25.11027,-136.30707,-284.82644,24.51667,-135.73808,-283.5163,23.9675,-135.73807,-285.3645,25.8314,-135.73807,-284.81534,27.14152,-135.73807,-283.50061,27.6796,-135.73807,-282.19049,27.13043,-135.73807,-281.6524,25.81571,-135.73805,-282.20157,24.50558,-135.73807,-285.23047,24.11603,-134.8865,-283.51871,23.39851,-134.8865,-285.9335,25.8338,-134.8865,-285.21597,27.54557,-134.8865,-283.49823,28.2486,-134.8865,-281.78647,27.53107,-134.88649,-281.08343,25.81331,-134.88647,-281.80093,24.10154,-134.88649,-285.37237,23.97535,-133.88202,-283.51956,23.1987,-133.882,-286.13333,25.83465,-133.88202,-285.35669,27.68745,-133.88202,-283.49737,28.4484,-133.882,-281.64459,27.67176,-133.88199,-280.88364,25.81246,-133.88197,-281.66028,23.95966,-133.88199,-285.37241,23.97535,-128.89952,-283.51959,23.19871,-128.8995,-286.13336,25.83465,-128.89952,-285.35672,27.68745,-128.89952,-283.4974,28.4484,-128.8995,-281.64462,27.67176,-128.89949,-280.88367,25.81246,-128.89947,-281.66031,23.95966,-128.89949});
			return Coordinate_12_295_point;
		}

	/** 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 ContainerShipBlue 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 ContainerShipBlue().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.ShipsCivilian.CargoShips.ContainerShipBlue\" 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.ShipsCivilian.CargoShips.ContainerShipBlue self-validation test confirmation: ");
                if (!validationResults.equals("success"))
                    System.out.println();
                System.out.println(validationResults.trim());

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