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> Large Commercial Freighter. </p>
 <p> Related links: Catalog page <a href="../../../../ShipsCivilian/CargoShips/FreighterIndex.html" target="_blank">Freighter</a>,  source <a href="../../../../ShipsCivilian/CargoShips/Freighter.java">Freighter.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/Freighter.x3d">Freighter.x3d</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> description </i> </td>
			<td> Large Commercial Freighter </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> identifier </i> </td>
			<td> <a href="https://www.web3d.org/x3d/content/examples/Savage/ShipsCivilian/CargoShips/Freighter.x3d" target="_blank">https://www.web3d.org/x3d/content/examples/Savage/ShipsCivilian/CargoShips/Freighter.x3d</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> generator </i> </td>
			<td> X3D-Edit 3.2, <a href="https://www.web3d.org/x3d/tools/X3D-Edit" target="_blank">https://www.web3d.org/x3d/tools/X3D-Edit</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> 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 Freighter
{
	/** Default constructor to create this object. */
	public Freighter ()
	{
	  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("Freighter.x3d"))
    .addMeta(new meta().setName(meta.NAME_DESCRIPTION).setContent("Large Commercial Freighter"))
    .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_IDENTIFIER ).setContent("https://www.web3d.org/x3d/content/examples/Savage/ShipsCivilian/CargoShips/Freighter.x3d"))
    .addMeta(new meta().setName(meta.NAME_GENERATOR  ).setContent("X3D-Edit 3.2, https://www.web3d.org/x3d/tools/X3D-Edit"))
    .addMeta(new meta().setName(meta.NAME_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().setInfo(new String[] {"http://www.reederei-schepers.de/eng/site01/site01-04/details-unten.htm"}).setTitle("Freighter")
      .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").setValue(new String[] {"http://www.reederei-schepers.de/eng/site01/site01-04/details-unten.htm"})
              .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[] {"Freighter"})
              .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[] {32.0})
                .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[] {23.1})
                .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[] {149.6})
                .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[] {7.4})
                .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[] {20238638.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("maximumSpeed").setValue(new double[] {20.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[] {34.3})
                .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.)."}))))))))
    .addChild(new NavigationInfo("NavInfo9").setAvatarSize(new double[] {.25,1.6,.75}))
    .addChild(new Transform("dad_GROUND").setScale(.305,.305,.305)
      .addChild(new Group("GROUND")
        .addChild(new Transform("dad_Import_Base").setRotation(1.0,0.0,0.0,1.571)
          .addChild(new Group("Import_Base")
            .addChild(new Transform("dad_Group9")
              .addChild(new Group("Group9")
                .addChild(new Transform("dad_Box01")
                  .addChild(new Shape("Box01")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture("FRGHTMAP_TEX").setUrl(new String[] {"textures/FRGHTMAP.jpg","https://www.web3d.org/x3d/content/examples/Savage/ShipsCivilian/CargoShips/textures/FRGHTMAP.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,0,3,-1,3,5,4,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,0,3,-1,3,3,4,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-227.24211,7.17705,-45.0961,-196.9447,9.95829,-45.08174,-196.78586,6.03041,-94.91026,-209.72105,6.03041,-95.07121,-227.24211,-7.85669,-45.0961,-209.72104,-6.71005,-95.07121})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.448,.424,.542,.424,.543,.989,.502,.991,.448,.424}))))))
                .addChild(new Transform("dad_Box01_1")
                  .addChild(new Shape("Box01_1")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_TEX"))
                      .setMaterial(new Material("material1_mat").setAmbientIntensity(0.387).setDiffuseColor(.48628,.36863,.27451).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}).setTexCoordIndex(new int[] {0,0,1,-1,1,1,0,-1,0,2,3,-1,3,1,0,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-196.9447,9.95829,-45.08174,-196.9447,-10.63794,-45.08174,-196.78586,-6.71005,-94.91026,-196.78586,6.03041,-94.91026,-227.24211,-7.85669,-45.0961,-209.72104,-6.71005,-95.07121})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.542,.424,.543,.989,.448,.424,.502,.991}))))))
                .addChild(new Transform("dad_Box02")
                  .addChild(new Shape("Box02")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture("CSIDE_TEX").setUrl(new String[] {"textures/CSIDE.jpg","https://www.web3d.org/x3d/content/examples/Savage/ShipsCivilian/CargoShips/textures/CSIDE.jpg"}))
                      .setMaterial(new Material("material2_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,2,1,7,-1,7,6,2,-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})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {47.2238,-54.09511,-22.84149,47.2238,-54.09511,-70.84149,317.22379,-54.0951,-70.84148,317.22382,-54.0951,-22.84149,47.2238,49.9049,-22.84149,317.22379,49.9049,-22.84149,317.22379,49.9049,-70.84148,47.2238,49.9049,-70.84149})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {1.999,1.001,1.999,2.999,.001,2.999,.001,1.001,.001,1.001,1.999,1.001,1.999,2.999,.001,2.999,.001,.027,1.999,.027,1.999,3.973,.001,3.973}))))))
                .addChild(new Transform("dad_Box04")
                  .addChild(new Shape("Box04")
                    .setAppearance(new Appearance()
                      .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})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-170.30458,5.29457,-85.75368,-170.29847,.5724,-111.27329,-170.29847,-1.1119,-111.27329,-170.30461,-5.83408,-85.75368,-169.19689,5.29457,-85.75368,-169.1969,-5.83407,-85.75368,-169.17767,-1.1119,-111.27329,-169.17765,.5724,-111.27329}))))))
                .addChild(new Transform("dad_Box40")
                  .addChild(new Shape("Box40")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_TEX"))
                      .setMaterial(new Material("material4_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,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,33,-1,6,19,20,-1,22,35,9,-1,13,27,18,-1,10,36,4,-1,14,15,7,-1,11,16,37,-1,3,2,4,-1,0,38,21,-1,22,1,35,-1,5,28,30,-1,33,10,4,-1,33,39,34,-1,8,17,24,-1,19,29,7,-1,28,12,29,-1,33,4,39,-1,7,12,14,-1,29,40,30,-1,19,0,30,-1,18,5,13,-1,6,0,19,-1,24,23,32,-1,28,5,18,-1,18,12,28,-1,15,16,8,-1,37,16,15,-1,36,10,27,-1,12,27,10,-1,9,20,7,-1,6,20,9,-1,11,37,14,-1,15,14,37,-1,6,35,1,-1,9,35,6,-1,25,4,1,-1,32,25,22,-1,26,39,4,-1,0,5,30,-1,12,7,29,-1,5,21,3,-1,2,3,21,-1,21,38,2,-1,2,38,0,-1,4,36,13,-1,27,13,36,-1,24,32,22,-1,17,34,31,-1,19,40,29,-1,19,30,40,-1}).setTexCoordIndex(new int[] {0,1,2,-1,3,4,5,-1,1,0,6,-1,0,7,8,-1,9,10,5,-1,11,5,4,-1,12,5,10,-1,7,0,13,-1,2,1,4,-1,14,10,7,-1,15,5,16,-1,17,0,6,-1,18,5,0,-1,19,8,7,-1,15,20,21,-1,4,21,20,-1,11,5,16,-1,22,23,23,-1,15,24,20,-1,25,20,21,-1,15,26,27,-1,15,16,26,-1,10,9,26,-1,6,17,6,-1,19,8,8,-1,11,11,16,-1,9,9,4,-1,12,13,0,-1,10,14,28,-1,3,2,4,-1,0,13,18,-1,19,1,8,-1,5,22,23,-1,26,9,4,-1,26,24,27,-1,7,15,21,-1,17,23,0,-1,22,5,23,-1,26,4,24,-1,0,5,12,-1,23,29,23,-1,17,0,23,-1,16,5,11,-1,6,0,17,-1,21,20,25,-1,22,5,16,-1,16,5,22,-1,13,14,7,-1,28,14,13,-1,9,9,11,-1,5,11,9,-1,8,6,0,-1,6,6,8,-1,10,28,12,-1,13,12,28,-1,6,8,1,-1,8,8,6,-1,21,4,1,-1,25,21,19,-1,20,24,4,-1,0,5,23,-1,5,0,23,-1,5,18,3,-1,2,3,18,-1,18,13,2,-1,2,13,0,-1,4,9,11,-1,11,11,9,-1,21,25,19,-1,15,27,24,-1,17,29,23,-1,17,23,29,-1})
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_92_point()))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.632,.412,.633,.398,.642,.41,.639,.41,.63,.398,.63,.412,.667,.412,.633,.398,.663,.41,.599,.41,.63,.398,.596,.412,.64,.412,.643,.412,.642,.41,.63,.398,.629,.412,.634,.412,.639,.412,.634,.398,.632,.338,.632,.398,.629,.414,.632,.414,.614,.338,.634,.338,.629,.398,.613,.338,.639,.41,.634,.414}))))))
                .addChild(new Transform("dad_bridge")
                  .addChild(new Shape("bridge")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_TEX"))
                      .setMaterial(new Material("material5_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,1,4,5,-1,5,2,1,-1,4,6,7,-1,7,5,4,-1,8,9,10,-1,10,11,8,-1,8,12,13,-1,13,9,8,-1,12,14,15,-1,15,13,12,-1,14,16,17,-1,17,15,14,-1,16,0,3,-1,3,17,16,-1,18,19,6,-1,6,19,7,-1,18,20,19,-1}).setTexCoordIndex(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,8,12,13,-1,13,9,8,-1,12,14,15,-1,15,13,12,-1,14,16,17,-1,17,15,14,-1,16,0,3,-1,3,17,16,-1,18,19,6,-1,6,19,7,-1,18,20,19,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-150.32628,-.17625,-86.02889,-150.90047,9.87856,-86.02889,-152.02742,9.86918,-78.52595,-151.45323,-.17662,-78.52595,-152.09058,18.72061,-86.02889,-153.21751,18.73151,-78.52594,-153.44609,25.28341,-86.02889,-154.57303,25.28131,-78.52594,-155.68314,-29.12791,-86.02889,-156.78378,-29.14374,-78.52595,-156.8003,-29.28261,-78.53737,-156.79842,-29.28261,-86.02929,-153.44608,-25.63592,-86.02889,-154.57303,-25.64103,-78.52595,-152.09058,-19.07311,-86.02889,-153.21751,-19.05665,-78.52595,-150.90047,-10.23105,-86.02889,-152.02742,-10.23023,-78.52595,-155.68313,28.77541,-86.02889,-156.80031,28.98287,-78.53738,-156.79843,28.98286,-86.0293})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.307,.943,.331,.943,.331,.872,.307,.872,.351,.943,.351,.872,.366,.943,.366,.872,.241,.943,.241,.872,.24,.872,.24,.943,.249,.943,.249,.872,.264,.943,.264,.872,.284,.943,.284,.872,.374,.943,.375,.872,.375,.943}))))))
                .addChild(new Transform("dad_Cylinder02")
                  .addChild(new Shape("Cylinder02")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture("FWD_MAST_TEX").setUrl(new String[] {"textures/FRGHTMAP.jpg","https://www.web3d.org/x3d/content/examples/Savage/ShipsCivilian/CargoShips/textures/FRGHTMAP.jpg"}))
                      .setMaterial(new Material("material6_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}).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,2,1,2,-1,2,1,1,-1,1,3,1,-1,1,3,3,-1,3,4,3,-1,3,4,4,-1,4,5,4,-1,4,5,5,-1,5,6,5,-1,5,6,6,-1,6,7,6,-1,6,7,7,-1,7,8,7,-1,7,8,8,-1,8,9,8,-1,8,9,9,-1,9,10,9,-1,9,10,10,-1,10,2,10,-1,10,2,2,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {540.29645,-.27592,-51.82127,537.9079,-3.56344,-51.82127,540.29645,-4.33952,-51.82127,536.43176,-1.53164,-51.82127,536.43176,.9798,-51.82127,537.9079,3.01159,-51.82127,540.29645,3.78767,-51.82127,542.685,3.01159,-51.82127,544.16113,.9798,-51.82127,544.16113,-1.53164,-51.82127,542.685,-3.56344,-51.82127,537.9079,-3.56344,-53.89669,540.29645,-4.33952,-53.89669,536.43176,-1.53164,-53.89669,536.43176,.9798,-53.89669,537.9079,3.01159,-53.89669,540.29645,3.78767,-53.89669,542.685,3.01159,-53.89669,544.16113,.9798,-53.89669,544.16113,-1.53164,-53.89669,542.685,-3.56344,-53.89669})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.5,.5,.904,.809,1.0,.5,.654,1.0,.346,1.0,.096,.809,.001,.5,.096,.191,.346,.001,.654,.001,.904,.191}))))))
                .addChild(new Transform("dad_Cylinder04")
                  .addChild(new Shape("Cylinder04")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FWD_MAST_TEX"))
                      .setMaterial(new Material("material7_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,0,-1,0,2,1,-1,0,2,2,-1,0,1,2,-1,0,0,1,-1,0,3,0,-1,0,4,3,-1,0,4,4,-1,0,3,4,-1,0,0,3,-1,0,5,6,-1,0,1,5,-1,1,7,5,-1,1,2,7,-1,2,7,7,-1,2,2,7,-1,2,5,7,-1,2,1,5,-1,1,6,5,-1,1,0,6,-1,0,8,6,-1,0,3,8,-1,3,9,8,-1,3,4,9,-1,4,9,9,-1,4,4,9,-1,4,8,9,-1,4,3,8,-1,3,6,8,-1,3,0,6,-1,6,6,5,-1,6,5,7,-1,6,7,7,-1,6,7,5,-1,6,5,6,-1,6,6,8,-1,6,8,9,-1,6,9,9,-1,6,9,8,-1,6,8,6,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-169.69908,4.8338,-115.21002,-169.60855,4.7092,-115.21002,-169.69908,4.67978,-115.21002,-169.5526,4.7862,-115.21002,-169.5526,4.88139,-115.21002,-169.60855,4.95839,-115.21002,-169.69908,4.98781,-115.21002,-169.7896,4.95839,-115.21002,-169.84555,4.88139,-115.21002,-169.84555,4.7862,-115.21002,-169.7896,4.7092,-115.21002,-169.60855,4.7092,-111.73989,-169.69908,4.67978,-111.73989,-169.5526,4.7862,-111.73989,-169.5526,4.88139,-111.73989,-169.60855,4.95839,-111.73989,-169.69908,4.98781,-111.73989,-169.7896,4.95839,-111.73989,-169.84555,4.88139,-111.73989,-169.84555,4.7862,-111.73989,-169.7896,4.7092,-111.73989,-169.69908,4.8338,-111.73989})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.784,.679,.784,.676,.784,.674,.784,.682,.784,.684,.687,.676,.687,.679,.687,.674,.687,.682,.687,.684}))))))
                .addChild(new Transform("dad_fwd_mast")
                  .addChild(new Shape("fwd_mast")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_TEX"))
                      .setMaterial(new Material("material8_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,0,-1,0,2,1,-1,0,2,2,-1,0,1,2,-1,0,0,1,-1,0,3,0,-1,0,4,3,-1,0,4,4,-1,0,3,4,-1,0,0,3,-1,0,5,6,-1,0,1,5,-1,1,7,5,-1,1,2,7,-1,2,7,7,-1,2,2,7,-1,2,5,7,-1,2,1,5,-1,1,6,5,-1,1,0,6,-1,0,8,6,-1,0,3,8,-1,3,9,8,-1,3,4,9,-1,4,9,9,-1,4,4,9,-1,4,8,9,-1,4,3,8,-1,3,6,8,-1,3,0,6,-1,6,6,5,-1,6,5,7,-1,6,7,7,-1,6,7,5,-1,6,5,6,-1,6,6,8,-1,6,8,9,-1,6,9,9,-1,6,9,8,-1,6,8,6,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {540.29645,-.27593,-37.62626,539.74396,-1.03639,-37.62626,540.29645,-1.21591,-37.62626,539.40247,-.5664,-37.62626,539.40247,.01454,-37.62626,539.74396,.48453,-37.62626,540.29645,.66405,-37.62626,540.84894,.48453,-37.62626,541.19043,.01454,-37.62626,541.19043,-.5664,-37.62626,540.84894,-1.03639,-37.62626,539.74396,-1.0364,-74.3555,540.29645,-1.21592,-74.3555,539.40247,-.5664,-74.3555,539.40247,.01454,-74.3555,539.74396,.48453,-74.35551,540.29645,.66405,-74.35551,540.84894,.48453,-74.35551,541.19043,.01454,-74.35551,541.19043,-.5664,-74.35551,540.84894,-1.0364,-74.3555,540.29645,-.27593,-74.35551})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.233,.454,.232,.454,.232,.454,.233,.454,.234,.454,.232,.546,.233,.546,.232,.546,.233,.546,.234,.546}))))))
                .addChild(new Transform("dad_hull")
                  .addChild(new Shape("hull")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_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(getIndexedFaceSet_11_132_coordIndex()).setTexCoordIndex(getIndexedFaceSet_11_132_texCoordIndex())
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_132_point()))
                      .setTexCoord(new TextureCoordinate().setPoint(getTextureCoordinate_12_133_point())))))
                .addChild(new Transform("dad_Name_pt")
                  .addChild(new Shape("Name_pt")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material15_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[] {513.00031,-39.12544,-25.73194,512.9541,-47.67393,-31.91117,538.4444,-33.69047,-31.91116,538.44434,-24.82973,-25.73194,498.08637,-44.27378,-25.73194,498.08637,-51.06361,-31.91117}))))))
                .addChild(new Transform("dad_Name_sb")
                  .addChild(new Shape("Name_sb")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material16_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[] {538.4444,33.0072,-31.91117,512.95404,46.99062,-31.91117,513.00031,38.44213,-25.73194,538.44434,24.14645,-25.73194,498.08637,43.59045,-25.73194,498.08637,50.38027,-31.91117}))))))
                .addChild(new Transform("dad_Name_sn")
                  .addChild(new Shape("Name_sn")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material17_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,1,3,-1,4,0,2,-1,2,5,6,-1,3,5,2,-1,2,6,7,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-244.46899,-42.48309,-11.6227,-244.24939,-23.87562,-4.35944,-244.49115,-.34183,-23.439,-244.10251,-.34183,-3.37488,-244.46347,-46.43208,-23.43899,-244.24939,23.19197,-4.35945,-244.46899,41.79945,-11.62271,-244.4635,45.74843,-23.43901}))))))
                .addChild(new Transform("dad_Object01")
                  .addChild(new Shape("Object01")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture("CENDS_TEX").setUrl(new String[] {"textures/CENDS.jpg","https://www.web3d.org/x3d/content/examples/Savage/ShipsCivilian/CargoShips/textures/CENDS.jpg"}))
                      .setMaterial(new Material("material18_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,0,3,8,-1,8,9,0,-1,6,5,10,-1,10,11,6,-1,9,8,12,-1,12,13,9,-1,11,10,14,-1,14,15,11,-1,6,11,16,-1,16,17,6,-1,8,3,18,-1,18,19,8,-1,12,8,19,-1,19,20,12,-1,11,15,21,-1,21,16,11,-1,16,21,22,-1,22,23,16,-1,20,19,24,-1,24,25,20,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,0,3,8,-1,8,9,0,-1,6,5,10,-1,10,11,6,-1,9,8,12,-1,12,13,9,-1,11,10,14,-1,14,15,11,-1,6,11,16,-1,16,17,6,-1,8,3,18,-1,18,19,8,-1,12,8,19,-1,19,20,12,-1,11,15,21,-1,21,16,11,-1,16,21,22,-1,22,23,16,-1,20,19,24,-1,24,25,20,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-106.31804,-36.08417,-54.73241,-106.31804,-36.08417,-62.73241,-106.31804,11.91584,-62.73241,-106.31804,11.91584,-54.73241,-151.31804,-36.08417,-62.73241,-151.31804,-36.08417,-54.73241,-151.31804,11.91584,-54.73241,-151.31804,11.91584,-62.73241,-106.31804,11.91584,-38.73241,-106.31804,-36.08417,-38.73241,-151.31804,-36.08417,-38.73241,-151.31804,11.91584,-38.73241,-106.31804,11.91584,-22.67742,-106.31804,-36.08417,-22.67742,-151.31804,-36.08417,-22.67742,-151.31804,11.91584,-22.67742,-151.31804,35.91585,-38.73241,-151.31804,35.91586,-54.73241,-106.31804,35.91585,-54.73241,-106.31804,35.91586,-38.73241,-106.31804,35.91585,-22.67742,-151.31804,35.91585,-22.67742,-151.31804,43.91585,-22.67742,-151.31804,43.91585,-38.73241,-106.31804,43.91585,-38.7324,-106.31804,43.91585,-22.67742})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.001,1.344,.001,1.679,1.002,1.679,1.002,1.344,.001,1.679,.001,1.344,1.002,1.344,1.002,1.679,1.002,.674,.001,.674,.001,.674,1.002,.674,1.002,.001,.001,.001,.001,.001,1.002,.001,1.502,.674,1.502,1.344,1.502,1.344,1.502,.674,1.502,.001,1.502,.001,1.669,.001,1.669,.674,1.669,.674,1.669,.001}))))))
                .addChild(new Transform("dad_Object02")
                  .addChild(new Shape("Object02")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material19_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,2,3,0,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-209.72105,6.03041,-95.07121,-196.78586,6.03041,-94.91026,-196.78586,-6.71005,-94.91026,-209.72104,-6.71005,-95.07121}))))))
                .addChild(new Transform("dad_Object03")
                  .addChild(new Shape("Object03")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_TEX"))
                      .setMaterial(new Material("material20_mat").setAmbientIntensity(0.588).setDiffuseColor(.58823,.58823,.58823).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(getIndexedFaceSet_11_172_coordIndex()).setTexCoordIndex(getIndexedFaceSet_11_172_texCoordIndex())
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_172_point()))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {2.006,1.555,2.006,1.558,1.821,1.546,1.823,1.574,1.578,1.546,1.577,1.53,1.821,1.546,1.835,1.66,1.823,1.66,1.823,1.733,1.835,1.733,1.835,1.593,1.823,1.593,1.788,1.733,1.788,1.66,1.784,1.719,1.784,1.67,1.784,1.67,1.611,1.69,1.611,1.677,1.611,1.677,1.628,1.719,1.628,1.67,1.628,1.67,1.621,1.697,1.621,1.67,1.621,1.67,1.614,1.697,1.614,1.67,1.614,1.67,1.801,1.66,1.789,1.66,1.789,1.66,1.789,1.66,1.823,1.635,1.823,1.636,1.835,1.621,1.835,1.64,1.835,1.64,1.835,1.593,1.835,1.621,1.835,1.64,1.835,1.685,1.835,1.689,1.835,1.708,1.835,1.708,1.835,1.689,1.835,1.684,1.986,1.717,1.843,1.717,1.986,1.686,1.843,1.686,1.986,1.643,1.843,1.643,1.986,1.612,1.843,1.612,1.986,1.643,1.843,1.643,1.835,1.708,1.835,1.708,1.789,1.636,1.789,1.636,1.835,1.676,1.835,1.621,1.194,1.0,.903,1.168,.903,.832,1.0,1.0}))))))
                .addChild(new Transform("dad_Object03_1")
                  .addChild(new Shape("Object03_1")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_TEX"))
                      .setMaterial(new Material("material21_mat").setAmbientIntensity(0.387).setDiffuseColor(.48628,.36863,.27451).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,2,3,-1}).setTexCoordIndex(new int[] {0,1,2,-1,0,3,1,-1,0,2,3,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {341.79257,-.10864,-120.45415,341.82379,-.01129,-120.6192,341.79425,-.30279,-120.45415,341.75961,-.01185,-120.28909})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {1.0,1.0,.903,1.168,1.194,1.0,.903,.832}))))))
                .addChild(new Transform("dad_Object04")
                  .addChild(new Shape("Object04")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CENDS_TEX"))
                      .setMaterial(new Material("material22_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}).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[] {317.22382,-54.0951,-22.84149,317.22379,-54.0951,-70.84148,317.22379,49.90491,-70.84148,317.22379,49.90491,-22.84149,47.2238,-54.0951,-70.84149,47.2238,-54.0951,-22.84149,47.2238,49.90491,-22.84149,47.2238,49.90491,-70.84149})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.001,.001,.001,1.999,1.999,1.999,1.999,.001,.001,1.999,.001,.001,1.999,.001,1.999,1.999}))))))
                .addChild(new Transform("dad_Object05")
                  .addChild(new Shape("Object05")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CSIDE_TEX"))
                      .setMaterial(new Material("material23_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,2,1,7,-1,7,6,2,-1,0,3,8,-1,8,9,0,-1,10,11,12,-1,12,13,10,-1,9,8,14,-1,14,15,9,-1,16,17,18,-1,18,19,16,-1,5,4,11,-1,11,10,5,-1,13,12,17,-1,17,16,13,-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,0,3,12,-1,12,13,0,-1,5,4,14,-1,14,15,5,-1,13,12,16,-1,16,17,13,-1,15,14,18,-1,18,19,15,-1,11,10,20,-1,20,21,11,-1,21,20,22,-1,22,23,21,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-151.31804,-36.08417,-54.73241,-151.31804,-36.08416,-62.73241,-106.31804,-36.08417,-62.73241,-106.31804,-36.08417,-54.73241,-151.31804,11.91583,-54.7324,-106.31804,11.91583,-54.73241,-106.31804,11.91583,-62.73241,-151.31804,11.91583,-62.7324,-106.31804,-36.08417,-38.73241,-151.31804,-36.08417,-38.73241,-106.31804,35.91582,-54.7324,-151.31804,35.91582,-54.7324,-151.31804,35.91582,-38.7324,-106.31804,35.91582,-38.73241,-106.31804,-36.08417,-22.67744,-151.31804,-36.08417,-22.67744,-106.31804,43.91582,-38.7324,-151.31804,43.91582,-38.7324,-151.31804,43.91582,-22.67743,-106.31804,43.91582,-22.67743})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.66,2.288,.66,2.609,.331,2.609,.331,2.288,1.67,2.288,1.999,2.288,1.999,2.609,1.67,2.609,.331,.334,.66,.334,.66,2.326,.331,2.326,.331,1.645,.66,1.645,1.67,1.645,1.999,1.645,.331,1.001,.66,1.001,1.67,1.001,1.999,1.001,.66,3.321,.331,3.321,.66,3.653,.331,3.653}))))))
                .addChild(new Transform("dad_Object06")
                  .addChild(new Shape("Object06")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_TEX"))
                      .setMaterial(new Material("material24_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,16,17,18,-1,19,16,18,-1,19,18,20,-1,21,19,20,-1,21,20,22,-1,23,21,22,-1,24,23,22,-1,24,22,25,-1,25,26,27,-1,24,25,27,-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,8,16,18,-1,8,18,19,-1,20,8,19,-1,20,19,21,-1,22,20,21,-1,5,22,21,-1,5,21,23,-1,23,24,25,-1,5,23,25,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-159.30843,28.92176,-78.52594,-159.30843,32.4857,-78.52594,-156.80031,32.4857,-78.52594,-156.80243,28.92176,-78.52594,-196.35672,28.92175,-78.52594,-196.35672,32.48569,-78.52594,-171.82845,32.48569,-78.52594,-171.82845,28.92176,-78.52594,-196.35672,-32.90766,-78.52595,-196.35672,-29.34372,-78.52594,-171.82843,-29.34712,-78.52949,-171.82843,-32.90765,-78.52595,-156.80243,-29.34371,-78.52595,-156.80031,-32.90765,-78.52595,-159.30842,-32.90765,-78.52595,-159.30842,-29.34885,-78.5313,-184.47647,-32.90766,-45.01176,-178.80842,-32.90765,-45.01176,-178.80843,-43.2359,-45.01176,-196.35671,-32.90766,-45.01176,-237.65058,-43.23592,-45.01176,-196.35671,-31.44989,-45.01176,-237.6506,42.85513,-45.01177,-196.35673,-7.6174,-45.01176,-196.35674,32.48569,-45.01176,-178.80844,42.85515,-45.01176,-178.80844,32.4857,-45.01176,-184.4765,32.48569,-45.01176})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.639,.814,.639,.812,.638,.812,.638,.814,.647,.814,.647,.812,.641,.812,.641,.814,.647,.855,.647,.852,.641,.852,.641,.855,.638,.852,.638,.855,.639,.855,.639,.852,.644,.855,.643,.855,.643,.862,.656,.862,.647,.854,.656,.805,.647,.838,.643,.805,.643,.812,.644,.812}))))))
                .addChild(new Transform("dad_Object07")
                  .addChild(new Shape("Object07")
                    .setAppearance(new Appearance()
                      .setMaterial(new Material("material25_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,4,1,0,-1,0,5,4,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-196.35672,28.92175,-78.52594,-196.35672,-29.34372,-78.52594,-196.35672,-29.34372,-78.23135,-196.35672,28.92175,-78.23135,-196.35672,-29.34372,-86.0293,-196.35672,28.92175,-86.0293}))))))
                .addChild(new Transform("dad_Object08")
                  .addChild(new Shape("Object08")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_TEX"))
                      .setMaterial(new Material("material26_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,0,4,5,-1,0,5,6,-1,1,0,6,-1,7,8,3,-1,3,2,7,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,0,4,5,-1,0,5,6,-1,1,0,6,-1,7,8,3,-1,3,2,7,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-196.35672,-29.34371,-78.23135,-196.35674,-31.44988,-45.01176,-196.35674,-7.61739,-45.01176,-196.35674,28.92174,-78.23135,-196.35672,-29.34371,-78.52594,-196.35673,-32.90766,-78.52594,-196.35674,-32.90766,-45.01176,-196.35674,32.48566,-45.01176,-196.35674,32.48566,-78.52594})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.281,.885,.277,.547,.316,.547,.374,.885,.281,.888,.275,.888,.275,.547,.38,.547,.38,.888}))))))
                .addChild(new Transform("dad_Object09")
                  .addChild(new Shape("Object09")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUrl(new String[] {"textures/SS_STRN.jpg","https://www.web3d.org/x3d/content/examples/Savage/ShipsCivilian/CargoShips/textures/SS_STRN.jpg"}))
                      .setMaterial(new Material("material27_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}).setTexCoordIndex(new int[] {0,1,2,-1,0,2,3,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-237.65056,-43.17481,-45.01175,-237.65058,-43.17481,-22.1687,-237.65059,42.91622,-22.16872,-237.65059,42.91622,-45.01176})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.001,1.0,.001,.001,1.0,.001,1.0,1.0}))))))
                .addChild(new Transform("dad_Object10")
                  .addChild(new Shape("Object10")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_TEX"))
                      .setMaterial(new Material("material28_mat").setAmbientIntensity(0.588).setDiffuseColor(.58823,.58823,.58823).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(getIndexedFaceSet_11_234_coordIndex()).setTexCoordIndex(getIndexedFaceSet_11_234_texCoordIndex())
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_234_point()))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {2.006,1.555,2.006,1.558,1.821,1.546,1.823,1.574,1.578,1.546,1.577,1.53,1.821,1.546,1.835,1.66,1.823,1.66,1.823,1.733,1.835,1.733,1.835,1.593,1.823,1.593,1.788,1.733,1.788,1.66,1.784,1.719,1.784,1.67,1.784,1.67,1.611,1.69,1.611,1.677,1.611,1.677,1.628,1.719,1.628,1.67,1.628,1.67,1.621,1.697,1.621,1.67,1.621,1.67,1.614,1.697,1.614,1.67,1.614,1.67,1.801,1.66,1.789,1.66,1.789,1.66,1.789,1.66,1.823,1.635,1.823,1.636,1.835,1.621,1.835,1.64,1.835,1.64,1.835,1.593,1.835,1.621,1.835,1.64,1.835,1.685,1.835,1.689,1.835,1.708,1.835,1.708,1.835,1.689,1.835,1.684,1.986,1.717,1.843,1.717,1.986,1.686,1.843,1.686,1.986,1.643,1.843,1.643,1.986,1.612,1.843,1.612,1.986,1.643,1.843,1.643,1.835,1.708,1.835,1.708,1.789,1.636,1.789,1.636,1.835,1.676,1.835,1.621,1.194,1.0,.903,1.168,.903,.832,1.0,1.0}))))))
                .addChild(new Transform("dad_Object10_1")
                  .addChild(new Shape("Object10_1")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_TEX"))
                      .setMaterial(new Material("material29_mat").setAmbientIntensity(0.387).setDiffuseColor(.48628,.36863,.27451).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,2,3,-1}).setTexCoordIndex(new int[] {0,1,2,-1,0,3,1,-1,0,2,3,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {20.2039,.86563,-119.63818,20.17182,.96271,-119.80323,20.2039,.67148,-119.63818,20.23599,.96271,-119.47312})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {1.0,1.0,.903,1.168,1.194,1.0,.903,.832}))))))
                .addChild(new Transform("dad_Object11")
                  .addChild(new Shape("Object11")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CSIDE_TEX"))
                      .setMaterial(new Material("material30_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,1,0,-1,0,4,7,-1,8,3,2,-1,2,9,8,-1,10,11,12,-1,12,13,10,-1,14,8,9,-1,9,15,14,-1,16,17,18,-1,18,19,16,-1,11,6,5,-1,5,12,11,-1,17,10,13,-1,13,18,17,-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,3,2,-1,2,13,12,-1,14,6,5,-1,5,15,14,-1,16,12,13,-1,13,17,16,-1,18,14,15,-1,15,19,18,-1,20,21,22,-1,22,23,20,-1,24,20,23,-1,23,25,24,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {393.98596,32.14278,-54.65691,348.98596,32.14278,-54.65691,348.98596,32.14278,-46.65691,393.98596,32.14279,-46.65691,393.98596,-15.85721,-54.65691,393.98597,-15.85721,-46.65691,348.98597,-15.85721,-46.65691,348.98596,-15.85721,-54.65691,393.98597,32.14279,-30.65691,348.98597,32.14279,-30.65693,348.98597,-39.85721,-30.65691,348.98597,-39.85721,-46.65691,393.98597,-39.85721,-46.65691,393.98597,-39.85721,-30.65691,393.98597,32.14279,-22.65692,348.98597,32.14278,-22.65692,348.98597,-47.85721,-22.65692,348.98597,-47.85721,-30.65692,393.98597,-47.85721,-30.65691,393.98597,-47.85721,-22.65692})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.33,3.0,.664,3.0,.664,2.75,.33,2.75,.67,3.0,.67,2.75,.336,2.75,.336,3.0,.664,2.661,.664,.678,.33,.678,.33,2.661,.33,2.25,.664,2.25,.336,2.25,.67,2.25,.33,2.0,.664,2.0,.336,2.0,.67,2.0,.664,3.652,.664,2.661,.33,2.661,.33,3.652,.664,3.982,.33,3.982}))))))
                .addChild(new Transform("dad_Object12")
                  .addChild(new Shape("Object12")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CSIDE_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.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,2,1,7,-1,7,6,2,-1,0,3,8,-1,8,9,0,-1,10,11,12,-1,12,13,10,-1,9,8,14,-1,14,15,9,-1,16,17,18,-1,18,19,16,-1,5,4,11,-1,11,10,5,-1,13,12,17,-1,17,16,13,-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,0,3,12,-1,12,13,0,-1,5,4,14,-1,14,15,5,-1,13,12,16,-1,16,17,13,-1,15,14,18,-1,18,19,15,-1,20,10,21,-1,21,22,20,-1,22,21,23,-1,23,24,22,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-104.45936,-36.08417,-46.33718,-104.45936,-36.08416,-54.33717,-14.31525,-36.08417,-54.33717,-14.31525,-36.08417,-46.33718,-104.45936,11.91584,-46.33717,-14.31525,11.91584,-46.33717,-14.31525,11.91584,-54.33717,-104.45935,11.91584,-54.33717,-14.31525,-36.08416,-30.33717,-104.45936,-36.08417,-30.33717,-14.31525,35.91586,-46.33717,-104.45935,35.91586,-46.33717,-104.45935,35.91585,-30.33716,-14.31525,35.91585,-30.33716,-14.31525,-36.08417,-22.33717,-104.45936,-36.08417,-22.33717,-14.31525,43.91585,-30.33716,-104.45935,43.91585,-30.33716,-104.45935,43.91585,-22.33716,-14.31525,43.91585,-22.33716})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {1.322,2.674,1.322,2.99,.663,2.99,.663,2.674,1.338,2.674,1.997,2.674,1.997,2.99,1.338,2.99,.663,.626,1.322,.626,1.322,2.875,.663,2.875,.663,2.041,1.322,2.041,1.338,2.041,1.997,2.041,.663,1.725,1.322,1.725,1.338,1.725,1.997,1.725,.663,2.875,1.322,3.999,.663,3.999,1.322,4.374,.663,4.374}))))))
                .addChild(new Transform("dad_Object13")
                  .addChild(new Shape("Object13")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_TEX"))
                      .setMaterial(new Material("material32_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,3,2,4,-1,5,4,6,-1,7,6,8,-1,9,8,10,-1,1,11,2,-1,4,2,6,-1,8,6,10,-1,11,10,2,-1,6,2,10,-1,12,13,14,-1,12,14,15,-1,12,15,1,-1,15,16,17,-1,15,17,1,-1}).setTexCoordIndex(new int[] {0,1,2,-1,3,2,4,-1,5,4,6,-1,7,6,8,-1,9,8,10,-1,1,11,2,-1,4,2,6,-1,8,6,10,-1,11,10,2,-1,6,2,10,-1,0,12,13,-1,0,13,14,-1,0,14,1,-1,14,15,16,-1,14,16,1,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {439.31982,62.5801,-29.67871,439.31982,-63.26355,-29.67877,426.70923,62.58012,-23.50977,-53.10642,64.82153,-23.44636,-188.49142,51.94037,-23.44062,-220.39984,48.42688,-23.4397,-244.4635,45.74845,-23.43902,-244.49115,-.34183,-23.43901,-244.46347,-46.43208,-23.439,-188.49142,-52.62397,-23.44061,-53.10641,-65.50509,-23.44636,426.70923,-63.26356,-23.50982,439.31982,62.58009,-29.67871,512.92999,51.43846,-35.12625,544.81256,37.68868,-37.41532,574.5686,-.3417,-39.41095,544.81256,-38.37205,-37.41539,512.92999,-52.12186,-35.12633})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.927,.975,.927,.783,.921,.975,.694,.979,.63,.959,.615,.954,.603,.95,.603,.879,.603,.809,.63,.8,.694,.78,.921,.783,.962,.958,.977,.937,.991,.879,.977,.821,.962,.8}))))))
                .addChild(new Transform("dad_Object14")
                  .addChild(new Shape("Object14")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CENDS_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.178).setCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,0,3,8,-1,8,9,0,-1,6,5,10,-1,10,11,6,-1,9,8,12,-1,12,13,9,-1,11,10,14,-1,14,15,11,-1,6,11,16,-1,16,17,6,-1,8,3,18,-1,18,19,8,-1,12,8,19,-1,19,20,12,-1,11,15,21,-1,21,16,11,-1,16,21,22,-1,22,23,16,-1,20,19,24,-1,24,25,20,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,0,3,8,-1,8,9,0,-1,6,5,10,-1,10,11,6,-1,9,8,12,-1,12,13,9,-1,11,10,14,-1,14,15,11,-1,6,11,16,-1,16,17,6,-1,8,3,18,-1,18,19,8,-1,12,8,19,-1,19,20,12,-1,11,15,21,-1,21,16,11,-1,16,21,22,-1,22,23,16,-1,20,19,24,-1,24,25,20,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-14.31525,-36.08417,-46.33718,-14.31525,-36.08416,-54.33718,-14.31525,11.91583,-54.33718,-14.31525,11.91583,-46.33718,-104.45936,-36.08416,-54.33718,-104.45936,-36.08417,-46.33718,-104.45936,11.91583,-46.33718,-104.45935,11.91583,-54.33718,-14.31525,11.91583,-30.33718,-14.31525,-36.08416,-30.33718,-104.45936,-36.08416,-30.33718,-104.45936,11.91583,-30.33718,-14.31525,11.91583,-22.33718,-14.31525,-36.08417,-22.33718,-104.45936,-36.08417,-22.33718,-104.45936,11.91583,-22.33718,-104.45935,35.91582,-30.33718,-104.45935,35.91582,-46.33718,-14.31525,35.91582,-46.33718,-14.31525,35.91582,-30.33718,-14.31525,35.91582,-22.33718,-104.45936,35.91582,-22.33718,-104.45935,43.91582,-22.33718,-104.45935,43.91582,-30.33718,-14.31525,43.91582,-30.33718,-14.31525,43.91582,-22.33718})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.97,.999,.97,1.332,2.97,1.332,2.97,.999,.97,1.332,.97,.999,2.97,.999,2.97,1.332,2.97,.334,.97,.334,.97,.334,2.97,.334,2.97,.001,.97,.001,.97,.001,2.97,.001,3.969,.334,3.969,.999,3.969,.999,3.969,.334,3.969,.001,3.969,.001,4.303,.001,4.303,.334,4.303,.334,4.303,.001}))))))
                .addChild(new Transform("dad_Object15")
                  .addChild(new Shape("Object15")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("CENDS_TEX"))
                      .setMaterial(new Material("material34_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,3,2,-1,2,9,8,-1,10,5,4,-1,4,11,10,-1,12,8,9,-1,9,13,12,-1,14,10,11,-1,11,15,14,-1,16,11,4,-1,4,17,16,-1,18,3,8,-1,8,19,18,-1,19,8,12,-1,12,20,19,-1,21,15,11,-1,11,16,21,-1,22,21,16,-1,16,23,22,-1,24,19,20,-1,20,25,24,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,0,-1,4,5,6,-1,6,7,4,-1,8,3,2,-1,2,9,8,-1,10,5,4,-1,4,11,10,-1,12,8,9,-1,9,13,12,-1,14,10,11,-1,11,15,14,-1,16,11,4,-1,4,17,16,-1,18,3,8,-1,8,19,18,-1,19,8,12,-1,12,20,19,-1,21,15,11,-1,11,16,21,-1,22,21,16,-1,16,23,22,-1,24,19,20,-1,20,25,24,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {393.98596,-15.85721,-54.65691,393.98596,32.14278,-54.65691,393.98596,32.14279,-46.65691,393.98597,-15.85721,-46.65691,348.98597,-15.85721,-46.65692,348.98596,32.14278,-46.65691,348.98596,32.14278,-54.65691,348.98596,-15.85721,-54.65691,393.98597,-15.85721,-30.65692,393.98597,32.14279,-30.65691,348.98597,32.14278,-30.65693,348.98597,-15.85721,-30.65693,393.98597,-15.85721,-22.65692,393.98597,32.14279,-22.65693,348.98597,32.14278,-22.65693,348.98597,-15.85721,-22.65693,348.98597,-39.85721,-30.65692,348.98597,-39.85721,-46.65692,393.98597,-39.85721,-46.65691,393.98597,-39.85721,-30.65692,393.98597,-39.85721,-22.65692,348.98597,-39.85721,-22.65693,348.98597,-47.85721,-22.65692,348.98597,-47.85721,-30.65693,393.98597,-47.85721,-30.65692,393.98597,-47.85721,-22.65692})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {2.97,1.332,.97,1.332,.97,.999,2.97,.999,2.97,.999,.97,.999,.97,1.332,2.97,1.332,2.97,.334,.97,.334,.97,.334,2.97,.334,2.97,.001,.97,.001,.97,.001,2.97,.001,3.969,.334,3.969,.999,3.969,.999,3.969,.334,3.969,.001,3.969,.001,4.303,.001,4.303,.334,4.303,.334,4.303,.001}))))))
                .addChild(new Transform("dad_Pyramid02")
                  .addChild(new Shape("Pyramid02")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUrl(new String[] {"textures/NAVTWR.jpg","https://www.web3d.org/x3d/content/examples/Savage/ShipsCivilian/CargoShips/textures/NAVTWR.jpg"}))
                      .setMaterial(new Material("material35_mat").setAmbientIntensity(0).setDiffuseColor(0.0,0.0,0.0).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(getIndexedFaceSet_11_290_coordIndex()).setTexCoordIndex(getIndexedFaceSet_11_290_texCoordIndex())
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_290_point()))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.001,.001,1.0,.001,.588,.669,.412,.669,.412,.669,0.0,.001,.499,.495,.648,.495,.604,.6,.499,.644,.394,.6,.351,.495,.394,.39,.499,.347,.604,.39,.69,.966,.6,.991,.495,.991,.495,.966,.501,.966,.501,.991,.396,.991,.306,.966,.695,.966,.606,.991,.505,.966,.505,.991,.4,.991,.31,.966,.699,.966,.61,.991,.499,.966,.499,.991,.394,.991,.305,.966,.694,.966,.604,.991,.39,.991,.301,.966,.749,.929,.495,.929,.501,.929,.247,.929,.754,.929,.505,.929,.251,.929,.758,.929,.499,.929,.246,.929,.753,.929,.242,.929,.77,.886,.495,.886,.501,.886,.226,.886,.775,.886,.505,.886,.23,.886,.779,.886,.499,.886,.225,.886,.774,.886,.221,.886,.77,.669,.495,.669,.501,.669,.226,.669,.775,.669,.505,.669,.23,.669,.779,.669,.499,.669,.225,.669,.774,.669,.221,.669,.588,.588,.775,.77,.501,.884,.412,.588,.226,.77,.112,.495,.412,.412,.226,.221,.501,.107,.588,.412,.775,.221,.889,.495}))))))
                .addChild(new Transform("dad_Sphere01")
                  .addChild(new Shape("Sphere01")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_TEX"))
                      .setMaterial(new Material("material36_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,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}).setTexCoordIndex(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,4,-1,0,4,8,-1,0,8,2,-1,0,2,1,-1,1,9,10,-1,1,10,2,-1,2,10,11,-1,2,11,3,-1,3,11,12,-1,3,12,4,-1,4,12,13,-1,4,13,5,-1,5,13,14,-1,5,14,6,-1,6,14,15,-1,6,15,7,-1,7,15,16,-1,7,16,4,-1,4,16,17,-1,4,17,8,-1,8,17,10,-1,8,10,2,-1,2,10,9,-1,2,9,1,-1,9,18,19,-1,9,19,10,-1,10,19,20,-1,10,20,11,-1,11,20,21,-1,11,21,12,-1,12,21,22,-1,12,22,13,-1,13,22,23,-1,13,23,14,-1,14,23,24,-1,14,24,15,-1,15,24,25,-1,15,25,16,-1,16,25,26,-1,16,26,17,-1,17,26,19,-1,17,19,10,-1,10,19,18,-1,10,18,9,-1,18,27,28,-1,18,28,19,-1,19,28,29,-1,19,29,20,-1,20,29,30,-1,20,30,21,-1,21,30,31,-1,21,31,22,-1,22,31,32,-1,22,32,23,-1,23,32,31,-1,23,31,24,-1,24,31,30,-1,24,30,25,-1,25,30,33,-1,25,33,26,-1,26,33,28,-1,26,28,19,-1,19,28,27,-1,19,27,18,-1,34,28,27,-1,34,29,28,-1,34,30,29,-1,34,31,30,-1,34,32,31,-1,34,31,32,-1,34,30,31,-1,34,33,30,-1,34,28,33,-1,34,27,28,-1})
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_298_point()))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {.729,.405,.72,.426,.72,.422,.72,.411,.72,.399,.72,.388,.72,.384,.72,.388,.72,.411,.697,.439,.697,.432,.697,.415,.697,.395,.697,.378,.697,.371,.697,.378,.697,.395,.697,.415,.669,.439,.669,.432,.669,.415,.669,.395,.669,.378,.669,.371,.669,.378,.669,.395,.669,.415,.647,.426,.647,.422,.647,.411,.647,.399,.647,.388,.647,.384,.647,.411,.638,.405}))))))
                .addChild(new Transform("dad_superstruc")
                  .addChild(new Shape("superstruc")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_TEX"))
                      .setMaterial(new Material("material37_mat").setAmbientIntensity(0.588).setDiffuseColor(.58823,.58823,.58823).setShininess(0.100).setSpecularColor(.89804,.89804,.89804)))
                    .setGeometry(new IndexedFaceSet().setCreaseAngle(1.178).setCoordIndex(getIndexedFaceSet_11_306_coordIndex()).setTexCoordIndex(getIndexedFaceSet_11_306_texCoordIndex())
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_306_point()))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {24.951,73.338,28.143,73.116,34.353,68.756,24.235,37.369,24.38,37.369,24.38,37.467,24.235,37.467,24.38,37.482,24.38,37.867,24.372,37.867,24.243,37.867,24.235,37.867,24.235,37.482,24.235,37.498,24.235,37.571,24.212,37.571,24.235,37.37,24.213,37.467,24.212,37.37,24.213,37.482,24.38,37.37,24.402,37.37,24.402,37.571,24.38,37.571,24.38,37.498,24.402,37.482,24.402,37.467,24.204,37.872,24.204,37.787,24.235,37.787,24.38,37.787,24.41,37.787,24.41,37.872,24.013,37.781,24.04,37.781,24.04,37.866,24.013,37.866,24.013,37.866,24.013,37.865,24.04,37.861,24.013,37.861,24.013,37.861,24.001,37.927,24.093,37.927,24.007,37.861,24.007,37.861,24.093,37.861,24.093,37.858,24.008,37.462,24.007,37.364,24.007,37.462,24.04,37.861,24.007,37.861,24.007,37.477,24.009,37.477,24.093,37.566,24.068,37.566,24.055,37.366,24.055,37.462,24.055,37.477,24.055,37.494,24.055,37.566,24.184,37.366,24.184,37.566,24.5,37.5}))))))
                .addChild(new Transform("dad_superstruc_1")
                  .addChild(new Shape("superstruc_1")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_TEX"))
                      .setMaterial(new Material("material38_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,0,2,3,-1,3,4,5,-1,3,5,6,-1,6,7,8,-1,8,9,10,-1,6,8,10,-1,3,6,10,-1,0,3,10,-1,11,12,13,-1,13,14,11,-1,15,16,17,-1,17,18,15,-1,19,20,21,-1,21,22,19,-1,19,23,24,-1,24,20,19,-1,21,25,26,-1,26,22,21,-1,21,20,27,-1,27,28,21,-1,19,22,29,-1,29,30,19,-1,31,27,20,-1,32,31,20,-1,32,20,24,-1,33,29,22,-1,34,33,22,-1,34,22,26,-1,23,19,30,-1,23,30,35,-1,23,35,36,-1,25,21,28,-1,25,28,37,-1,25,37,38,-1}).setTexCoordIndex(new int[] {0,1,2,-1,0,2,3,-1,3,4,5,-1,3,5,6,-1,6,7,8,-1,8,9,10,-1,6,8,10,-1,3,6,10,-1,0,3,10,-1,11,12,13,-1,13,14,11,-1,15,16,17,-1,17,18,15,-1,19,20,21,-1,21,22,19,-1,19,23,24,-1,24,20,19,-1,21,25,26,-1,26,22,21,-1,21,20,27,-1,27,28,21,-1,19,22,29,-1,29,30,19,-1,27,27,20,-1,31,27,20,-1,31,20,24,-1,32,29,22,-1,33,32,22,-1,33,22,26,-1,23,19,30,-1,23,30,30,-1,23,30,34,-1,25,21,28,-1,25,28,28,-1,25,28,35,-1})
                      .setCoord(new Coordinate().setPoint(getCoordinate_12_314_point()))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {34.373,68.785,28.089,73.145,24.956,73.338,24.956,.596,28.089,.855,34.373,5.215,38.18,13.408,41.523,24.447,43.136,37.0,41.523,49.553,38.18,60.592,.765,36.258,7.638,34.606,7.638,34.606,.765,36.258,40.335,34.606,40.335,34.606,47.235,34.606,47.235,34.606,2.605,17.292,2.605,16.458,45.35,16.458,45.35,17.292,2.605,17.292,2.605,16.458,45.35,16.458,45.35,17.292,7.638,16.458,40.335,16.458,40.335,17.292,7.638,17.292,7.638,16.458,40.335,17.292,40.335,17.292,7.638,17.292,40.335,16.458}))))))
                .addChild(new Transform("dad_superstruc_2")
                  .addChild(new Shape("superstruc_2")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUrl(new String[] {"textures/FRGHTMAP.jpg","https://www.web3d.org/x3d/content/examples/Savage/ShipsCivilian/CargoShips/textures/FRGHTMAP.jpg"}))
                      .setMaterial(new Material("material39_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}).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[] {-171.82843,-32.84655,-78.52594,-171.82843,-50.04802,-79.06456,-171.82842,-50.04802,-72.79258,-171.82843,-32.84655,-68.43469,-171.82844,32.5468,-78.52593,-171.82844,32.5468,-68.43469,-171.82844,49.94803,-72.79258,-171.82844,49.94803,-79.06457})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {24.851,37.87,25.0,37.877,25.0,37.747,24.851,37.747,24.148,37.87,24.148,37.747,24.0,37.747,24.0,37.877}))))))
                .addChild(new Transform("dad_superstruc_3")
                  .addChild(new Shape("superstruc_3")
                    .setAppearance(new Appearance()
                      .setTexture(new ImageTexture().setUSE("FRGHTMAP_TEX"))
                      .setMaterial(new Material("material40_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,2,3,4,-1,4,5,6,-1,6,7,8,-1,8,9,0,-1,0,2,4,-1,4,6,8,-1,0,4,8,-1}).setTexCoordIndex(new int[] {0,1,2,-1,2,3,4,-1,4,5,6,-1,6,7,8,-1,8,9,0,-1,0,2,4,-1,4,6,8,-1,0,4,8,-1})
                      .setCoord(new Coordinate().setPoint(new MFVec3f(new double[] {-156.78378,-29.14374,-78.52595,-154.57303,-25.64103,-78.52595,-153.21751,-19.05665,-78.52595,-152.02742,-10.23023,-78.52595,-151.45323,-.17662,-78.52595,-152.02742,9.86918,-78.52595,-153.21751,18.73151,-78.52594,-154.57303,25.28131,-78.52594,-156.80031,28.98287,-78.53738,-156.80242,-29.28261,-78.52595})))
                      .setTexCoord(new TextureCoordinate().setPoint(new MFVec2f(new double[] {28.143,73.116,34.353,68.756,38.161,60.625,41.504,49.586,43.117,36.971,41.504,24.428,38.161,13.38,34.353,5.186,24.007,37.861,24.5,37.5}))))))))))))
    .addChild(new Viewpoint("VP5_vp").setDescription("Freighter Starboard").setPosition(0.0,5.0,250.0))
    .addChild(new Viewpoint("VP2_vp").setDescription("Freighter Front").setOrientation(0.0,1.0,0.0,1.571).setPosition(250.0,5.0,0.0))
    .addChild(new Viewpoint("VP6_vp").setDescription("Freighter Port").setOrientation(0.0,1.0,0.0,3.142).setPosition(0.0,5.0,-250.0))
    .addChild(new Viewpoint("VP4_vp").setDescription("Freighter Back").setOrientation(0.0,1.0,0.0,-1.571).setPosition(-250.0,5.0,0.0))
    .addChild(new Viewpoint("VP3_vp").setDescription("Freighter Top").setOrientation(1.0,0.0,0.0,-1.571).setPosition(0.0,250.0,0.0))
    .addChild(new Viewpoint("VP1_vp").setDescription("Freighter Bottom").setOrientation(1.0,0.0,0.0,1.571).setPosition(0.0,-250.0,0.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_132_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,21,20,19,-1,20,21,22,-1,23,22,21,-1,24,18,25,-1,20,25,18,-1,25,20,26,-1,22,26,20,-1,27,25,28,-1,26,28,25,-1,13,24,27,-1,25,27,24,-1,29,27,30,-1,28,30,27,-1,14,13,29,-1,27,29,13,-1,31,29,32,-1,30,32,29,-1,15,17,31,-1,29,31,17,-1,14,29,33,-1,17,33,29,-1,34,35,0,-1,1,0,35,-1,4,0,5,-1,2,5,0,-1,36,34,4,-1,0,4,34,-1,37,36,3,-1,4,3,36,-1,36,37,38,-1,39,38,37,-1,34,36,40,-1,38,40,36,-1,35,34,41,-1,40,41,34,-1,42,43,41,-1,35,41,43,-1,44,42,45,-1,41,45,42,-1,45,41,46,-1,40,46,41,-1,22,44,26,-1,45,26,44,-1,26,45,28,-1,46,28,45,-1,47,24,12,-1,13,12,24,-1,48,18,47,-1,24,47,18,-1,6,48,7,-1,47,7,48,-1,7,47,9,-1,12,9,47,-1,49,50,30,-1,32,30,50,-1,46,49,28,-1,30,28,49,-1,51,44,23,-1,22,23,44,-1,52,51,53,-1,23,53,51,-1,54,11,33,-1,14,33,11,-1,16,54,17,-1,33,17,54,-1,39,50,38,-1,49,38,50,-1,55,43,56,-1,42,56,43,-1,57,55,58,-1,56,58,55,-1,38,49,40,-1,46,40,49,-1,56,42,51,-1,44,51,42,-1,58,56,52,-1,51,52,56,-1,59,19,48,-1,18,48,19,-1,10,59,6,-1,48,6,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,69,68,71,-1,72,71,68,-1,71,72,73,-1,74,70,75,-1,70,74,68,-1,76,68,74,-1,68,76,72,-1,77,74,78,-1,74,77,76,-1,78,75,65,-1,75,78,74,-1,79,78,80,-1,78,79,77,-1,80,65,66,-1,65,80,78,-1,32,80,31,-1,80,32,79,-1,31,67,15,-1,67,31,80,-1,81,80,66,-1,80,81,67,-1,60,35,82,-1,35,60,1,-1,5,60,61,-1,60,5,2,-1,61,82,83,-1,82,61,60,-1,3,83,37,-1,83,3,61,-1,84,37,83,-1,37,84,39,-1,85,83,82,-1,83,85,84,-1,86,82,35,-1,82,86,85,-1,86,43,87,-1,43,86,35,-1,88,87,89,-1,87,88,86,-1,90,86,88,-1,86,90,85,-1,76,89,72,-1,89,76,88,-1,77,88,76,-1,88,77,90,-1,12,75,91,-1,75,12,65,-1,91,70,92,-1,70,91,75,-1,62,92,63,-1,92,62,91,-1,9,91,62,-1,91,9,12,-1,79,50,93,-1,50,79,32,-1,77,93,90,-1,93,77,79,-1,73,89,94,-1,89,73,72,-1,95,94,96,-1,94,95,73,-1,81,11,54,-1,11,81,66,-1,67,54,16,-1,54,67,81,-1,84,50,39,-1,50,84,93,-1,97,43,55,-1,43,97,87,-1,98,55,57,-1,55,98,97,-1,85,93,84,-1,93,85,90,-1,94,87,97,-1,87,94,89,-1,96,97,98,-1,97,96,94,-1,92,69,99,-1,69,92,70,-1,63,99,64,-1,99,63,92,-1,10,100,19,-1,10,19,101,-1};
			return value;
		}


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


		/** Define subarrays using type double[] */
		private double[] getCoordinate_12_132_point_1()
		{
			double[] value = {571.08832,-11.56587,13.41532,571.01184,-.38411,7.01708,577.68012,-.34169,14.03929,571.00903,-.34169,25.46122,571.09973,-8.98581,22.54559,574.62769,-.34169,22.35524,-244.46899,-42.48309,-11.6227,-244.24939,-23.87562,-4.35944,-244.49115,-.34183,-23.439,-244.10251,-.34183,-3.37488,-244.46347,-46.43208,-23.43899,-196.55093,-.34182,14.02203,-220.49808,-.34182,4.71736,-188.15872,-25.91653,13.16524,-188.31464,-3.06722,17.74252,-188.31464,-.34181,26.7795,-197.71069,-.34182,26.99862,-188.31464,-2.93633,26.44263,-188.33105,-48.6995,-11.17012,-188.49142,-52.62396,-23.44061,-53.0495,-61.92684,-3.42697,-53.10641,-65.5051,-23.44636,426.69864,-51.28231,-3.55443,426.70923,-63.26355,-23.50982,-188.27649,-48.24604,-3.60241,-53.06795,-59.48017,3.61758,426.52072,-48.98021,.21509,-53.08013,-48.33228,11.94454,426.52676,-28.67105,12.84109,-53.10906,-24.85239,23.14681,426.51947,-22.33061,22.91644,-53.12101,-.34179,31.63823,426.52676,.06844,28.97162,-188.31464,-2.99329,23.16289,560.28387,-18.51553,12.95181,560.3338,-.34169,2.90561,560.30499,-15.7026,22.87409,560.31207,-.34169,28.13192,532.91382,-19.48283,22.87614,532.9577,-.3417,28.30476,532.9574,-21.67399,13.06163,532.9599,-8.40198,1.34943,533.22144,-10.48897,-3.49403,557.86615,-.34169,-3.48984,513.01691,-18.83424,-3.49744,513.01691,-14.29749,.21573,513.01691,-21.60231,13.05805,-220.43488,-38.80059,-4.17963,-220.35791,-45.2085,-11.52177,513.01691,-21.86874,22.87424,513.01691,-.3417,28.44185,513.01691,-36.05131,-23.50982,512.92999,-52.12185,-35.12632,439.31982,-63.26354,-29.67876,-197.24091,-.34182,23.23094,566.07043,-.34169,-23.91584,539.38489,-21.42469,-23.94232,574.5686,-.34169,-39.41094,544.81256,-38.37205,-37.41538,-220.39981,-49.11051,-23.43968,571.08832,10.88248,13.4154,571.09973,8.30242,22.54566,-244.24939,23.19197,-4.35945,-244.46899,41.79945,-11.62271,-244.4635,45.74843,-23.43901,-188.15872,25.2329,13.16523,-188.31464,2.3836,17.74251,-188.31464,2.25271,26.44262,-53.04951,61.24326,-3.42697,-188.49142,51.94035,-23.44062,-188.33105,48.01588,-11.17013,-53.10642,64.82151,-23.44635,426.69864,50.59889,-3.55437,426.70923,62.58015,-23.50976,-53.06795,58.79659,3.61758,-188.27649,47.56241,-3.60242,426.52072,48.29677,.21515,426.52676,27.98762,12.84115,-53.08014,47.6487,11.94455,426.51947,21.64717,22.91649,-53.10907,24.16881,23.14681,-188.31464,2.30967,23.16288,560.28394,17.83214,12.95188,560.30499,15.01921,22.87417,532.91382,18.79943,22.87621,532.9574,20.99059,13.0617,532.9599,7.71858,1.3495,533.22144,9.80557,-3.49396,513.01691,13.61408,.21579,513.01691,18.15083,-3.49737,513.01691,20.9189,13.05812,-220.43488,38.11695,-4.17965,-220.35791,44.52485,-11.52179,513.01691,21.18533,22.87431,513.01691,35.3679,-23.50975,439.31982,62.58012,-29.6787,512.92999,51.43844,-35.12624,539.38489,20.74129,-23.94225,544.81256,37.68866,-37.41531,-220.39984,48.42686,-23.4397};
			return value;
		}
		private double[] getCoordinate_12_132_point_2()
		{
			double[] value = {-220.39981,-49.1105,-23.43968,-53.10641,-65.50509,-23.44635};
			return value;
		}



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


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


		/** Define subarrays using type double[] */
		private double[] getCoordinate_12_172_point_1()
		{
			double[] value = {510.30667,-1.14521,-88.53928,510.30667,-1.14521,-89.12681,510.26431,3.7105,-89.12681,510.26431,3.7105,-88.53928,438.44849,7.53291,-77.96257,438.44849,7.53292,-83.4368,343.75839,5.48185,-66.33446,343.75839,5.48185,-63.22655,438.56848,-6.2204,-77.96257,343.85703,-5.82224,-63.22655,438.56848,-6.2204,-83.4368,343.85703,-5.82224,-66.33446,337.40512,-5.87855,-63.22149,337.40512,-5.87855,-66.3438,331.52319,-3.44279,-63.22358,331.52319,-3.44279,-66.34498,331.46796,2.88751,-63.22358,331.46796,2.88751,-66.34498,337.30646,5.42554,-63.22149,337.30646,5.42555,-66.3438,343.84808,-5.82232,-75.61973,343.74942,5.48177,-75.61974,337.40317,-5.87856,-75.62939,337.3045,5.42553,-75.62939,342.6105,-3.50563,-76.68509,342.55246,3.14384,-76.68509,338.25018,-3.54368,-76.69742,338.19217,3.10579,-76.6668,340.01105,-1.95519,-122.09159,338.84424,-1.96537,-122.09484,338.80154,2.92789,-122.08676,339.96835,2.93807,-122.09159,342.60098,-3.47464,-117.5927,342.54297,3.17483,-117.5927,338.24069,-3.51268,-117.60503,338.18265,3.13678,-117.5744,340.57675,2.9594,-119.39201,338.19647,2.93863,-119.38216,340.6196,-1.95042,-119.392,338.23932,-1.97119,-119.39863,340.5755,2.96353,-121.192,338.19522,2.94276,-121.18216,340.61835,-1.94629,-121.192,338.23807,-1.96706,-121.19863,337.33283,2.40526,-66.3438,337.33227,2.32973,-72.15138,337.33157,2.33059,-75.3296,337.3569,-.56942,-75.32973,337.40512,-5.87855,-66.3438,337.37778,-2.74768,-66.3438,337.37521,-2.66901,-75.32992,335.19791,-2.66879,-66.34425,335.23148,2.30985,-66.53261,333.8829,1.93422,-63.22274,335.58328,3.66439,-63.22327,335.57993,3.66483,-63.22212,331.46796,2.88751,-63.22358,333.92001,-2.32167,-63.22274,335.65036,-4.02193,-63.22327,339.59735,-3.98744,-63.22339,339.90652,-3.98426,-63.2246,341.60584,-2.25487,-63.22513,341.5686,2.00157,-63.22513,339.83948,3.70096,-63.2246,339.45673,3.69814,-63.22333,342.34241,1.79799,-23.74716,342.37582,-2.02855,-23.74716,342.37579,-2.02855,-61.31186,342.34241,1.79798,-61.31186,339.69367,-4.75793,-23.74716,339.69367,-4.75793,-61.31186,335.86713,-4.79132,-23.74716,335.86713,-4.79133,-61.31186,333.13773,-2.10917,-23.74716,333.13773,-2.10917,-61.31186,333.10434,1.71737,-23.74716,333.10434,1.71736,-61.31186,335.7865,4.44675,-23.74716,335.7865,4.44674,-61.31186,339.61304,4.48014,-23.74716,339.61304,4.48014,-61.31186,341.56863,2.00157,-63.22513,339.90652,-3.98426,-63.2246,339.83948,3.70096,-63.2246,335.2756,-2.68734,-75.32989,337.3569,-.56942,-75.32974,335.23199,2.31227,-75.32967,337.33157,2.33059,-75.3296,337.3569,-.56942,-75.32974,335.2756,-2.68734,-75.32991,335.65036,-4.02193,-63.22327,338.81351,-3.99393,-63.22425,333.92001,-2.32167,-63.22274,335.58328,3.66439,-63.22327,338.74643,3.69158,-63.22425,333.95746,-2.35846,-63.22275,341.79425,-.30279,-120.45415,507.05264,1.43063,-88.50072,507.0231,1.13913,-88.33567,341.82379,-.01129,-120.6192};
			return value;
		}
		private double[] getCoordinate_12_172_point_2()
		{
			double[] value = {506.9885,1.43007,-88.17062,341.75961,-.01185,-120.28909,507.02139,1.33328,-88.33567};
			return value;
		}


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


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


		/** Define subarrays using type double[] */
		private double[] getCoordinate_12_234_point_1()
		{
			double[] value = {-149.60252,-2.66998,-87.72329,-149.60252,-2.66998,-88.31083,-149.60252,2.18592,-88.31083,-149.60252,2.18592,-87.72329,-77.82279,6.63489,-77.1466,-77.82279,6.63489,-82.62083,16.8816,5.41023,-65.51846,16.8816,5.41023,-62.41056,-77.82278,-7.11895,-77.14659,16.8816,-5.8943,-62.41056,-77.82278,-7.11895,-82.62082,16.8816,-5.8943,-65.51846,23.33377,-5.8943,-62.4055,23.33377,-5.8943,-65.52781,29.1942,-3.4073,-62.40758,29.1942,-3.4073,-65.52898,29.19419,2.92323,-62.40759,29.19419,2.92323,-65.52898,23.33377,5.41023,-62.4055,23.33377,5.41023,-65.52781,16.89056,-5.8943,-74.80376,16.89057,5.41022,-74.80376,23.33572,-5.8943,-74.81342,23.33572,5.41022,-74.81342,18.10787,-3.5669,-75.86912,18.10787,3.08282,-75.86912,22.46835,-3.5669,-75.88145,22.46835,3.08282,-75.85084,20.69369,-1.99384,-121.27562,21.86054,-1.99384,-121.27886,21.86054,2.89961,-121.2708,20.69369,2.89961,-121.27562,18.1171,-3.53583,-116.77673,18.1171,3.11389,-116.77673,22.47758,-3.53583,-116.78906,22.47758,3.1139,-116.75844,20.08511,2.91562,-118.57604,22.46549,2.91563,-118.5662,20.08511,-1.99438,-118.57604,22.46549,-1.99438,-118.58266,20.08632,2.91977,-120.37603,22.4667,2.91977,-120.3662,20.08632,-1.99024,-120.37603,22.4667,-1.99024,-120.38265,23.33377,2.38983,-65.52781,23.33498,2.3143,-71.33541,23.33565,2.31517,-74.51363,23.33565,-.58495,-74.51374,23.33376,-5.8943,-65.5278,23.33377,-2.76331,-65.5278,23.33565,-2.68463,-74.51392,25.51289,-2.6654,-65.52824,25.43587,2.31276,-65.71661,26.78766,1.94891,-62.40675,25.07225,3.66417,-62.40728,25.0756,3.66465,-62.40614,29.1942,2.92323,-62.40759,26.7877,-2.30714,-62.40675,29.1942,-3.4073,-62.40758,25.07224,-4.02244,-62.40728,21.1251,-4.0224,-62.4074,20.81593,-4.02191,-62.40861,19.10157,-2.30741,-62.40914,19.10165,1.94918,-62.40914,20.81591,3.6636,-62.40861,21.19865,3.66412,-62.40734,18.32967,1.73886,-22.93117,18.32967,-2.08782,-22.93117,18.32966,-2.08782,-60.49587,18.32966,1.73886,-60.49587,21.03554,-4.79369,-22.93117,21.03554,-4.7937,-60.49587,24.86222,-4.79369,-22.93117,24.86222,-4.7937,-60.49587,27.56809,-2.08782,-22.93117,27.56809,-2.08783,-60.49587,27.56809,1.73886,-22.93117,27.56809,1.73886,-60.49587,24.86222,4.44474,-22.93117,24.86222,4.44473,-60.49587,21.03554,4.44474,-22.93117,21.03554,4.44473,-60.49587,19.10158,-2.30741,-62.40914,19.10165,1.94918,-62.40914,20.81593,-4.02191,-62.40861,20.81591,3.6636,-62.40861,25.43533,-2.68463,-74.5139,23.33565,-.58495,-74.51374,25.43533,2.31517,-74.51371,23.33565,2.31517,-74.51363,23.33565,-.58495,-74.51375,25.43533,-2.68463,-74.51391,25.07224,-4.02244,-62.40728,21.90898,-4.02204,-62.40826,26.78767,1.94891,-62.40675,26.7877,-2.30714,-62.40675,25.07225,3.66417,-62.40728,21.90898,3.66376,-62.40826,26.75058,-2.34426,-62.40676,20.2039,.67148,-119.63818};
			return value;
		}
		private double[] getCoordinate_12_234_point_2()
		{
			double[] value = {-145.06332,.96271,-87.68475,-145.03124,.67148,-87.5197,20.17182,.96271,-119.80323,-144.99916,.96271,-87.35465,20.23599,.96271,-119.47312,-145.03124,.86563,-87.5197};
			return value;
		}


		/** Define subarrays using type int[] */
		private int[] getIndexedFaceSet_11_290_coordIndex_1()
		{
			int[] value = {0,1,2,-1,2,3,0,-1,2,1,4,-1,4,5,2,-1,5,4,6,-1,6,7,5,-1,3,7,6,-1,6,0,3,-1,8,9,10,-1,8,10,11,-1,8,11,12,-1,8,12,13,-1,8,13,14,-1,8,14,15,-1,8,15,16,-1,8,16,9,-1,17,10,9,-1,9,18,17,-1,19,11,10,-1,10,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,9,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,33,34,-1,34,42,41,-1,43,35,33,-1,33,41,43,-1,44,36,35,-1,35,43,44,-1,45,37,36,-1,36,44,45,-1,46,38,37,-1,37,45,46,-1,47,39,38,-1,38,46,47,-1,48,40,39,-1,39,47,48,-1,42,34,40,-1,40,48,42,-1,7,44,43,-1,5,7,43,-1,5,43,41,-1,5,41,42,-1,2,5,42,-1,2,42,48,-1,2,48,47,-1,3,2,47,-1,3,47,46,-1,3,46,45,-1,45,44,7,-1,3,45,7,-1};
			return value;
		}


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




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


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


		/** Define subarrays using type double[] */
		private double[] getCoordinate_12_306_point_1()
		{
			double[] value = {-156.8003,-29.28261,-78.53737,-156.78378,-29.14374,-78.52595,-154.57303,-25.64103,-78.52595,-156.80031,32.5468,-22.0191,-156.8003,-32.84654,-22.0191,-156.80018,-32.84654,-33.1934,-156.80019,32.5468,-33.1934,-156.80021,-32.84654,-34.86201,-156.8003,-32.84654,-78.52595,-156.80242,-29.28261,-78.52595,-156.80243,28.98287,-78.52593,-156.80031,32.5468,-78.52593,-156.80022,32.5468,-34.86202,-178.80844,32.54679,-36.73753,-178.80844,32.54679,-45.01176,-178.80844,42.91624,-45.01176,-178.80844,32.54679,-34.86201,-178.80843,32.5468,-22.16871,-178.80843,32.54679,-33.19341,-178.80844,42.61301,-33.19341,-178.80843,42.91624,-22.16871,-178.80843,42.61301,-34.86201,-178.80843,-32.84654,-33.19341,-178.80842,-32.84654,-22.16871,-178.80843,-43.17479,-22.16871,-178.80843,-43.17479,-45.01177,-178.80843,-32.84654,-45.01176,-178.80843,-32.84654,-36.73754,-178.80843,-32.84654,-34.86201,-178.80843,-42.87753,-34.86201,-178.80843,-42.87753,-33.19341,-159.30843,32.54678,-78.52593,-159.30844,49.94804,-79.06456,-159.30842,49.94803,-72.79258,-159.30843,32.5468,-68.43469,-159.30843,-32.84654,-78.52594,-159.30843,-32.84654,-68.43469,-159.30841,-50.04802,-72.79258,-159.30843,-50.04802,-79.06456,-171.82843,-50.04802,-72.79257,-171.82843,-50.04802,-79.06456,-159.30841,-50.04802,-79.06457,-159.30841,-29.28261,-79.06457,-171.82843,-29.28261,-79.06456,-171.82846,49.94803,-79.06456,-171.82844,49.94803,-72.79258,-159.30844,49.94803,-72.79258,-159.5838,28.98286,-79.06456,-171.82844,28.98286,-79.06457,-159.30843,28.98286,-79.03848,-171.82844,32.5468,-78.52595,-171.82844,28.98286,-78.52594,-159.30841,-32.84654,-78.52594,-159.30841,-29.28775,-78.5313,-156.79842,-29.28261,-86.02929,-196.35672,-29.28261,-86.02929,-196.35672,28.98285,-86.0293,-156.79843,28.98286,-86.0293,-156.80031,28.98287,-78.53738,-159.30843,28.98286,-78.52593,-156.80242,-29.28261,-78.52594,-196.35673,32.54679,-78.52594,-196.35673,28.98285,-78.52594,-196.35673,28.98285,-78.23134,-157.3907,32.5468,-33.1934,-156.80031,32.5468,-22.01909,-156.80019,32.5468,-33.19341,-171.82843,-32.84655,-78.52594,-171.82843,-29.28602,-78.52949,-159.30843,32.54678,-78.52594,-196.35672,-29.28262,-78.52594,-156.8003,-32.84654,-78.52594,-156.80021,-32.84654,-34.862,-157.47884,-32.84654,-34.862,-159.30841,-32.84654,-68.43469,-196.35674,32.54679,-45.01176,-184.4765,32.54679,-45.01175,-171.82844,32.5468,-68.43469,-178.80843,32.5468,-33.19341,-156.8003,-32.84654,-22.01909,-157.39069,-32.84654,-33.1934,-178.80841,-32.84654,-34.86201,-178.80841,-32.84654,-36.73753,-171.82843,-32.84655,-68.43468,-159.30843,32.5468,-68.43469,-157.47885,32.5468,-34.86202,-178.80844,32.5468,-36.73753,-178.80844,32.5468,-34.86201,-178.80841,-32.84654,-45.01176,-184.47649,-32.84654,-45.01175,-178.80842,-32.84654,-22.1687,-178.80841,-32.84654,-33.1934,-196.35672,-32.84655,-78.52594,-196.35671,-32.84655,-45.01176,-237.65058,-43.17481,-22.1687,-237.65056,-43.17481,-45.01175,-178.80841,-43.17479,-45.01175,-178.80842,-43.17479,-22.1687,-237.65059,42.91622,-45.01176,-237.65059,42.91622,-22.16872};
			return value;
		}
		private double[] getCoordinate_12_306_point_2()
		{
			double[] value = {-178.80844,42.91625,-45.01176,-156.80242,-29.28261,-78.52595};
			return value;
		}


		/** Large attribute array: Coordinate point field, scene-graph level=12, element #92, 123 total numbers made up of 41 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_92_point()
		{
			MFVec3f Coordinate_12_92_point = new MFVec3f(new double[] {-169.35539,-.78092,-111.84862,-169.08908,-.82052,-106.89085,-166.61665,-9.20385,-111.14053,-167.63699,-9.20385,-111.14053,-170.04578,-.78092,-106.85109,-170.04578,-.78092,-111.84862,-159.75735,-.82448,-111.84862,-169.35539,.41487,-111.84862,-169.07877,.4466,-106.89295,-160.66138,.40221,-111.14053,-178.74175,.40221,-111.14053,-170.04578,.41487,-106.88724,-170.04578,.41487,-111.84862,-179.64575,-.82448,-111.84862,-167.26267,9.78054,-111.84862,-166.41031,9.78054,-111.84862,-166.71236,8.87652,-111.14053,-170.04578,.41487,-106.85112,-170.39098,-.18302,-111.84862,-169.01019,-.18302,-111.84862,-159.75735,.46063,-111.84862,-167.40752,-10.10787,-111.84862,-169.01019,-.18302,-106.90254,-169.35539,.41486,-86.07287,-169.35539,.41487,-106.85141,-169.35539,-.78092,-106.85141,-169.35539,-.78092,-86.07287,-179.64575,.46063,-111.84862,-170.39098,-.18302,-112.43604,-169.35539,.41487,-112.43604,-169.35539,-.78092,-112.43604,-174.43544,.41486,-86.07287,-169.01019,-.18303,-86.07287,-170.39098,-.18302,-106.90224,-174.78062,-.18303,-86.07287,-160.66136,-.76607,-111.14053,-178.74173,-.76607,-111.14053,-167.44789,8.87652,-111.14053,-166.41031,-10.10787,-111.84862,-174.43545,-.78092,-86.07287,-169.01019,-.18302,-112.43604});
			return Coordinate_12_92_point;
		}
		/** Large attribute array: IndexedFaceSet coordIndex field, scene-graph level=11, element #132, 728 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_132_coordIndex()
		{
			MFInt32 IndexedFaceSet_11_132_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_11_132_coordIndex_1()));
			return IndexedFaceSet_11_132_coordIndex;
		}
		/** Large attribute array: IndexedFaceSet texCoordIndex field, scene-graph level=11, element #132, 728 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_132_texCoordIndex()
		{
			MFInt32 IndexedFaceSet_11_132_texCoordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_11_132_texCoordIndex_1()));
			return IndexedFaceSet_11_132_texCoordIndex;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=12, element #132, 306 total numbers made up of 102 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_132_point()
		{
			MFVec3f Coordinate_12_132_point = new MFVec3f()/*2.finalize*/
				.append(new MFVec3f(getCoordinate_12_132_point_1()))
				.append(new MFVec3f(getCoordinate_12_132_point_2()));
			return Coordinate_12_132_point;
		}
		/** Large attribute array: TextureCoordinate point field, scene-graph level=12, element #133, 188 total numbers made up of 94 2-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 MFVec2f getTextureCoordinate_12_133_point()
		{
			MFVec2f TextureCoordinate_12_133_point = new MFVec2f(new double[] {.986,1.084,.986,1.115,.995,1.081,.986,1.025,.986,1.039,.991,1.04,.005,1.207,.006,1.171,.005,1.265,.006,1.166,.005,1.265,.065,1.081,.035,1.127,.075,1.085,.075,1.063,.075,1.018,.064,1.017,.075,1.02,.075,1.205,.075,1.265,.243,1.167,.243,1.265,.807,1.167,.807,1.265,.075,1.168,.243,1.132,.807,1.149,.243,1.091,.807,1.087,.243,1.036,.807,1.037,.243,.994,.807,1.008,.075,1.036,.973,1.086,.973,1.136,.973,1.037,.973,1.012,.939,1.037,.939,1.011,.939,1.086,.939,1.143,.939,1.167,.97,1.167,.914,1.167,.914,1.149,.914,1.086,.035,1.17,.035,1.206,.914,1.037,.914,1.01,.914,1.265,.914,1.322,.823,1.296,.064,1.036,.98,1.267,.947,1.267,.991,1.343,.954,1.334,.035,1.265,.986,1.084,.986,1.039,.006,1.171,.005,1.207,.005,1.265,.075,1.063,.075,1.02,.243,1.167,.807,1.167,.807,1.265,.243,1.132,.075,1.168,.807,1.149,.807,1.087,.243,1.091,.807,1.037,.075,1.036,.973,1.086,.973,1.037,.939,1.037,.939,1.086,.939,1.143,.939,1.167,.914,1.149,.914,1.167,.914,1.086,.035,1.206,.914,1.037,.914,1.265,.823,1.296,.914,1.322,.947,1.267,.954,1.334,.5,1.5});
			return TextureCoordinate_12_133_point;
		}
		/** Large attribute array: IndexedFaceSet coordIndex field, scene-graph level=11, element #172, 652 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_172_coordIndex()
		{
			MFInt32 IndexedFaceSet_11_172_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_11_172_coordIndex_1()));
			return IndexedFaceSet_11_172_coordIndex;
		}
		/** Large attribute array: IndexedFaceSet texCoordIndex field, scene-graph level=11, element #172, 652 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_172_texCoordIndex()
		{
			MFInt32 IndexedFaceSet_11_172_texCoordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_11_172_texCoordIndex_1()));
			return IndexedFaceSet_11_172_texCoordIndex;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=12, element #172, 309 total numbers made up of 103 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getCoordinate_12_172_point()
		{
			MFVec3f Coordinate_12_172_point = new MFVec3f()/*2.finalize*/
				.append(new MFVec3f(getCoordinate_12_172_point_1()))
				.append(new MFVec3f(getCoordinate_12_172_point_2()));
			return Coordinate_12_172_point;
		}
		/** Large attribute array: IndexedFaceSet coordIndex field, scene-graph level=11, element #234, 652 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_234_coordIndex()
		{
			MFInt32 IndexedFaceSet_11_234_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_11_234_coordIndex_1()));
			return IndexedFaceSet_11_234_coordIndex;
		}
		/** Large attribute array: IndexedFaceSet texCoordIndex field, scene-graph level=11, element #234, 652 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_234_texCoordIndex()
		{
			MFInt32 IndexedFaceSet_11_234_texCoordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_11_234_texCoordIndex_1()));
			return IndexedFaceSet_11_234_texCoordIndex;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=12, element #234, 318 total numbers made up of 106 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_234_point()
		{
			MFVec3f Coordinate_12_234_point = new MFVec3f()/*2.finalize*/
				.append(new MFVec3f(getCoordinate_12_234_point_1()))
				.append(new MFVec3f(getCoordinate_12_234_point_2()));
			return Coordinate_12_234_point;
		}
		/** Large attribute array: IndexedFaceSet coordIndex field, scene-graph level=11, element #290, 368 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_290_coordIndex()
		{
			MFInt32 IndexedFaceSet_11_290_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_11_290_coordIndex_1()));
			return IndexedFaceSet_11_290_coordIndex;
		}
		/** Large attribute array: IndexedFaceSet texCoordIndex field, scene-graph level=11, element #290, 368 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_290_texCoordIndex()
		{
			MFInt32 IndexedFaceSet_11_290_texCoordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_11_290_texCoordIndex_1()));
			return IndexedFaceSet_11_290_texCoordIndex;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=12, element #290, 147 total numbers made up of 49 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getCoordinate_12_290_point()
		{
			MFVec3f Coordinate_12_290_point = new MFVec3f(new double[] {-185.99667,2.5817,-86.0577,-185.99667,-2.81829,-86.0577,-188.22087,-.5941,-98.36462,-188.22087,.35751,-98.36462,-191.39667,-2.81829,-86.0577,-189.17247,-.5941,-98.36462,-191.39667,2.58171,-86.0577,-189.17247,.35751,-98.36462,-188.67219,-.11544,-104.44447,-188.67219,-.91824,-104.28479,-189.23985,-.6831,-104.28479,-189.47499,-.11544,-104.28478,-189.23987,.45223,-104.28478,-188.67219,.68736,-104.28478,-188.10454,.45222,-104.28479,-187.8694,-.11544,-104.28479,-188.10452,-.6831,-104.28479,-189.7211,-1.16435,-103.83004,-188.67219,-1.59882,-103.83004,-190.15558,-.11544,-103.83003,-189.7211,.93347,-103.83003,-188.67219,1.36794,-103.83003,-187.62329,.93347,-103.83004,-187.18881,-.11544,-103.83004,-187.62329,-1.16435,-103.83004,-190.04266,-1.4859,-103.14946,-188.67219,-2.05357,-103.14946,-190.61032,-.11544,-103.14945,-190.04266,1.25502,-103.14945,-188.67219,1.82269,-103.14946,-187.30174,1.25502,-103.14946,-186.73407,-.11544,-103.14946,-187.30173,-1.4859,-103.14946,-190.15558,-1.59882,-102.34666,-188.67219,-2.21325,-102.34666,-190.77,-.11544,-102.34666,-190.15558,1.36794,-102.34666,-188.67219,1.98238,-102.34666,-187.18881,1.36794,-102.34666,-186.57439,-.11544,-102.34666,-187.18881,-1.59882,-102.34666,-190.15558,-1.59882,-98.36462,-188.67219,-2.21325,-98.36462,-190.77,-.11544,-98.36462,-190.15558,1.36794,-98.36462,-188.67219,1.98237,-98.36462,-187.18881,1.36794,-98.36462,-186.57439,-.11544,-98.36462,-187.18881,-1.59882,-98.36462});
			return Coordinate_12_290_point;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=12, element #298, 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_298_point()
		{
			MFVec3f Coordinate_12_298_point = new MFVec3f(new double[] {-165.47267,-.24656,-112.3708,-164.558,-.24656,-112.668,-164.73268,.29108,-112.668,-165.19002,.62335,-112.668,-165.75533,.62335,-112.668,-166.21266,.29108,-112.668,-166.38734,-.24656,-112.668,-166.21266,-.78419,-112.668,-165.75533,-1.11647,-112.668,-165.19002,-1.11647,-112.668,-164.73268,-.78419,-112.668,-163.99269,-.24656,-113.44608,-164.27534,.62335,-113.44608,-165.01533,1.16099,-113.44607,-165.93001,1.16099,-113.44607,-166.67,.62335,-113.44607,-166.95265,-.24656,-113.44607,-166.67,-1.11647,-113.44607,-165.93001,-1.6541,-113.44607,-165.01533,-1.6541,-113.44608,-164.27534,-1.11647,-113.44608,-163.99269,-.24656,-114.40782,-164.27534,.62335,-114.40782,-165.01533,1.16099,-114.40782,-165.93001,1.16099,-114.40782,-166.67,.62335,-114.40782,-166.95265,-.24656,-114.40782,-166.67,-1.11647,-114.40782,-165.93001,-1.6541,-114.40782,-165.01533,-1.6541,-114.40782,-164.27534,-1.11647,-114.40782,-164.558,-.24656,-115.1859,-164.73268,.29108,-115.1859,-165.19002,.62335,-115.1859,-165.75533,.62335,-115.1859,-166.21266,.29108,-115.1859,-166.38734,-.24656,-115.1859,-166.21266,-.78419,-115.1859,-165.75533,-1.11647,-115.1859,-165.19002,-1.11647,-115.1859,-164.73268,-.78419,-115.1859,-165.47267,-.24656,-115.48309});
			return Coordinate_12_298_point;
		}
		/** Large attribute array: IndexedFaceSet coordIndex field, scene-graph level=11, element #306, 372 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_306_coordIndex()
		{
			MFInt32 IndexedFaceSet_11_306_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_11_306_coordIndex_1()));
			return IndexedFaceSet_11_306_coordIndex;
		}
		/** Large attribute array: IndexedFaceSet texCoordIndex field, scene-graph level=11, element #306, 372 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_306_texCoordIndex()
		{
			MFInt32 IndexedFaceSet_11_306_texCoordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getIndexedFaceSet_11_306_texCoordIndex_1()));
			return IndexedFaceSet_11_306_texCoordIndex;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=12, element #306, 306 total numbers made up of 102 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_306_point()
		{
			MFVec3f Coordinate_12_306_point = new MFVec3f()/*2.finalize*/
				.append(new MFVec3f(getCoordinate_12_306_point_1()))
				.append(new MFVec3f(getCoordinate_12_306_point_2()));
			return Coordinate_12_306_point;
		}
		/** Large attribute array: Coordinate point field, scene-graph level=12, element #314, 117 total numbers made up of 39 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_314_point()
		{
			MFVec3f Coordinate_12_314_point = new MFVec3f(new double[] {-153.44608,-25.63592,-86.02889,-155.68314,-29.12791,-86.02889,-156.79842,-29.28261,-86.02929,-156.79843,28.98286,-86.0293,-155.68313,28.77541,-86.02889,-153.44609,25.28341,-86.02889,-152.09058,18.72061,-86.02889,-150.90047,9.87856,-86.02889,-150.32628,-.17625,-86.02889,-150.90047,-10.23105,-86.02889,-152.09058,-19.07311,-86.02889,-171.82844,49.94803,-72.79258,-171.82844,32.5468,-68.43469,-159.30843,32.5468,-68.43469,-159.30844,49.94803,-72.79258,-159.30843,-32.84654,-68.4347,-171.82845,-32.84655,-68.43469,-171.82843,-50.04802,-72.79257,-159.30841,-50.04802,-72.79258,-154.45549,42.61302,-34.86202,-154.45549,42.61302,-33.1934,-154.45548,-42.87753,-33.1934,-154.45548,-42.87752,-34.86201,-178.80843,42.61301,-34.86201,-178.80843,42.61301,-33.19341,-178.80842,-42.87753,-33.19341,-178.80842,-42.87753,-34.86201,-156.80019,32.5468,-33.1934,-156.80018,-32.84654,-33.1934,-156.80021,-32.84654,-34.86201,-156.80022,32.5468,-34.86202,-157.3907,32.5468,-33.1934,-178.80843,32.54679,-33.19341,-157.47884,-32.84654,-34.86201,-178.80843,-32.84654,-34.86201,-157.47885,32.5468,-34.86202,-178.80843,32.54679,-34.86201,-157.39069,-32.84654,-33.1934,-178.80841,-32.84654,-33.19341});
			return Coordinate_12_314_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 Freighter 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 Freighter().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.Freighter\" 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.Freighter self-validation test confirmation: ");
                if (!validationResults.equals("success"))
                    System.out.println();
                System.out.println(validationResults.trim());

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