package HumanoidAnimation.Bones;

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.Lighting.*;
import org.web3d.x3d.jsail.Navigation.*;
import org.web3d.x3d.jsail.PointingDeviceSensor.*;
import org.web3d.x3d.jsail.Rendering.*;
import org.web3d.x3d.jsail.Shape.*;

// Javadoc metadata annotations follow, see below for X3DJSAIL Java source code.
/**
 * <p> tooth_molar_17_38, lower left Universal Numbering System (UNS) #17, ISO 3950 standard designation #38. </p>
 <p> Related links:  source tooth_molar_17_38.java, <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;">HumanoidAnimation.Bones.tooth_molar_17_38&nbsp; Document Metadata </td>
		</tr>

		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> title </i> </td>
			<td> <a href="https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Bones/tooth_molar_17_38.x3d">tooth_molar_17_38.x3d</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> description </i> </td>
			<td> tooth_molar_17_38, lower left Universal Numbering System (UNS) #17, ISO 3950 standard designation #38 </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> creator </i> </td>
			<td> Don Brutzman, Joe Williams, John Carlson, Damon Hernandez </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> created </i> </td>
			<td> 12 March 2026 </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> modified </i> </td>
			<td> 20 March 2026 </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
			<td> <a href="https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Bones/originals/lmolr2lc.x3d">originals/lmolr2lc.x3d</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
			<td> <a href="https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Bones/originals/lmolr2lr.x3d">originals/lmolr2lr.x3d</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
			<td> <a href="https://en.wikipedia.org/wiki/Human_tooth" target="_blank">https://en.wikipedia.org/wiki/Human_tooth</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
			<td> United States, <a href="https://en.wikipedia.org/wiki/Universal_Numbering_System" target="_blank">https://en.wikipedia.org/wiki/Universal_Numbering_System</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
			<td> ISO 3950, <a href="https://en.wikipedia.org/wiki/FDI_World_Dental_Federation_notation" target="_blank">https://en.wikipedia.org/wiki/FDI_World_Dental_Federation_notation</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
			<td> <a href="https://en.wikipedia.org/wiki/FDI_World_Dental_Federation_notation#/media/File:Comparison_of_dental_notations.svg" target="_blank">https://en.wikipedia.org/wiki/FDI_World_Dental_Federation_notation#/media/File:Comparison_of_dental_notations.svg</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
			<td> <a href="https://en.wikipedia.org/wiki/List_of_bones_of_the_human_skeleton" target="_blank">https://en.wikipedia.org/wiki/List_of_bones_of_the_human_skeleton</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
			<td> usage examples <a href="https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Medical" target="_blank">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Medical</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> generator </i> </td>
			<td> X3D-Edit 4.0, <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> X3D Tidy, <a href="https://www.web3d.org/x3d/stylesheets/X3dTidy.html" target="_blank">https://www.web3d.org/x3d/stylesheets/X3dTidy.html</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> identifier </i> </td>
			<td> <a href="https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Bones/tooth_molar_17_38.x3d" target="_blank">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Bones/tooth_molar_17_38.x3d</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> license </i> </td>
			<td> <a href="https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Bones/../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 Don Brutzman, Joe Williams, John Carlson, Damon Hernandez
 */

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

	/** Create and initialize the X3D model for this object. */
	public final void initialize()
	{
            try { // catch-all
  x3dModel = new X3D().setProfile(X3D.PROFILE_INTERACTIVE).setVersion(X3D.VERSION_4_0)
  .setHead(new head()
    .addMeta(new meta().setName(meta.NAME_TITLE      ).setContent("tooth_molar_17_38.x3d"))
    .addMeta(new meta().setName(meta.NAME_DESCRIPTION).setContent("tooth_molar_17_38, lower left Universal Numbering System (UNS) #17, ISO 3950 standard designation #38"))
    .addMeta(new meta().setName(meta.NAME_CREATOR    ).setContent("Don Brutzman, Joe Williams, John Carlson, Damon Hernandez"))
    .addMeta(new meta().setName(meta.NAME_CREATED    ).setContent("12 March 2026"))
    .addMeta(new meta().setName(meta.NAME_MODIFIED   ).setContent("20 March 2026"))
    .addMeta(new meta().setName(meta.NAME_REFERENCE  ).setContent("originals/lmolr2lc.x3d"))
    .addMeta(new meta().setName(meta.NAME_REFERENCE  ).setContent("originals/lmolr2lr.x3d"))
    .addMeta(new meta().setName(meta.NAME_REFERENCE  ).setContent("https://en.wikipedia.org/wiki/Human_tooth"))
    .addMeta(new meta().setName(meta.NAME_REFERENCE  ).setContent("United States, https://en.wikipedia.org/wiki/Universal_Numbering_System"))
    .addMeta(new meta().setName(meta.NAME_REFERENCE  ).setContent("ISO 3950, https://en.wikipedia.org/wiki/FDI_World_Dental_Federation_notation"))
    .addMeta(new meta().setName(meta.NAME_REFERENCE  ).setContent("https://en.wikipedia.org/wiki/FDI_World_Dental_Federation_notation#/media/File:Comparison_of_dental_notations.svg"))
    .addMeta(new meta().setName(meta.NAME_REFERENCE  ).setContent("https://en.wikipedia.org/wiki/List_of_bones_of_the_human_skeleton"))
    .addMeta(new meta().setName(meta.NAME_REFERENCE  ).setContent("usage examples https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Medical"))
    .addMeta(new meta().setName(meta.NAME_GENERATOR  ).setContent("X3D-Edit 4.0, https://www.web3d.org/x3d/tools/X3D-Edit"))
    .addMeta(new meta().setName(meta.NAME_GENERATOR  ).setContent("X3D Tidy, https://www.web3d.org/x3d/stylesheets/X3dTidy.html"))
    .addMeta(new meta().setName(meta.NAME_IDENTIFIER ).setContent("https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Bones/tooth_molar_17_38.x3d"))
    .addMeta(new meta().setName(meta.NAME_LICENSE    ).setContent("../license.html")))
  .setScene(new Scene()
    .addChild(new WorldInfo().setTitle("tooth_molar_17_38.x3d"))
    .addComments(" user hover lights bone and reveals description, user selection/deselection temporarily binds/unbinds close-up hidden viewpoint ")
    .addChild(new TouchSensor("UserTouchSensor").setDescription("tooth_molar_17_38 lower left"))
    .addChild(new Transform("lmolr3lc").setTranslation(0.0279,1.5951,0.0449)
      .addChild(new Viewpoint("HiddenViewpoint").setNearDistance(0.001).setPosition(0.0,0.0,0.3).setRetainUserOffsets(true)
        .setNavigationInfo(new NavigationInfo().setTransitionType(new String[] {"ANIMATE"}).setType(new String[] {"EXAMINE"})))
      .addChild(new ROUTE().setFromNode("UserTouchSensor").setFromField("isActive").setToNode("HiddenViewpoint").setToField("set_bind"))
      .addChild(new DirectionalLight("HiddenLight").setAmbientIntensity(1).setColor(0.1,0.1,1.0).setOn(false))
      .addChild(new ROUTE().setFromNode("UserTouchSensor").setFromField("isOver").setToNode("HiddenLight").setToField("on"))
      .addChild(new Shape()
        .setAppearance(new Appearance()
          .setMaterial(new Material("ToothMaterial").setAmbientIntensity(0.4).setDiffuseColor(1.0,0.9843,0.9843).setShininess(0.05)))
        .setGeometry(new IndexedFaceSet("tooth_molar_17_38_cap_geometry").setDEF("tooth_molar_17_38_cap_geometry").setCreaseAngle(1.571).setCoordIndex(gettooth_molar_17_38_cap_geometry_5_28_coordIndex())
          .setCoord(new Coordinate("tooth_molar_17_38_cap_coordinate").setPoint(gettooth_molar_17_38_cap_coordinate_6_28_point())))))
    .addChild(new Transform("lmolr3lr").setTranslation(0.0282,1.5871,0.0426)
      .addChild(new Shape()
        .setAppearance(new Appearance()
          .setMaterial(new Material().setUSE("ToothMaterial")))
        .setGeometry(new IndexedFaceSet("tooth_molar_17_38_root_geometry").setDEF("tooth_molar_17_38_root_geometry").setCreaseAngle(1.571).setCoordIndex(gettooth_molar_17_38_root_geometry_5_34_coordIndex())
          .setCoord(new Coordinate("tooth_molar_17_38_root_coordinate").setPoint(gettooth_molar_17_38_root_coordinate_6_34_point()))))));
            }
            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 subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=1 */
		private int[] gettooth_molar_17_38_cap_geometry_5_28_coordIndex_1()
		{
			int[] value = {0,1,2,-1,3,4,5,-1,6,7,8,-1,9,10,11,-1,12,13,14,-1,15,16,17,-1,18,19,20,-1,21,22,23,-1,21,24,25,-1,20,23,26,-1,27,28,29,-1,30,31,32,-1,32,33,30,-1,34,35,36,-1,37,38,39,-1,40,41,42,-1,42,41,43,-1,44,45,34,-1,46,44,47,-1,48,49,50,-1,51,52,53,-1,54,55,56,-1,57,58,48,-1,59,60,5,-1,61,62,63,-1,64,65,66,-1,5,60,67,-1,68,69,70,-1,71,72,73,-1,74,75,76,-1,77,78,79,-1,80,0,81,-1,82,81,83,-1,0,2,84,-1,85,86,87,-1,88,89,90,-1,91,92,93,-1,94,95,96,-1,96,97,98,-1,99,100,101,-1,102,70,103,-1,104,10,9,-1,2,105,106,-1,107,108,109,-1,110,111,112,-1,113,90,114,-1,115,116,117,-1,118,119,120,-1,121,122,118,-1,123,124,125,-1,126,127,128,-1,129,130,131,-1,132,133,100,-1,134,67,55,-1,69,68,135,-1,86,85,136,-1,137,138,139,-1,140,49,141,-1,142,143,144,-1,145,146,147,-1,148,149,150,-1,151,101,152,-1,76,75,153,-1,154,155,156,-1,157,158,159,-1,42,160,161,-1,162,12,27,-1,162,163,164,-1,38,165,15,-1,166,167,168,-1,169,170,171,-1,172,14,173,-1,174,175,176,-1,19,177,178,-1,23,22,179,-1,180,72,181,-1,182,183,157,-1,182,184,185,-1,186,187,188,-1,189,190,191,-1,192,101,193,-1,194,195,143,-1,141,137,196,-1,197,198,199,-1,87,69,135,-1,55,54,200,-1,6,201,7,-1,202,203,204,-1,156,205,206,-1,121,94,122,-1,207,208,120,-1,209,155,119,-1,210,211,212,-1,117,213,214,-1,215,65,216,-1,156,155,205,-1,217,218,200,-1,105,219,220,-1,73,180,221,-1,61,222,223,-1,177,224,11,-1,129,225,130,-1,130,110,226,-1,53,227,218,-1,228,229,107,-1,230,231,91,-1,23,179,62,-1,232,92,91,-1,4,233,5,-1,201,88,80,-1,234,189,156,-1,235,236,237,-1,103,70,238,-1,82,238,7,-1,7,201,80,-1,239,113,240,-1,77,192,78,-1,192,74,152,-1,241,76,242,-1,243,181,72,-1,69,87,8,-1,24,244,245,-1,62,179,246,-1,89,134,114,-1,4,247,233,-1,50,53,57,-1,46,47,216,-1,43,35,248,-1,31,37,39,-1,249,32,39,-1,36,250,251,-1,34,206,44,-1,29,32,249,-1,161,160,252,-1,18,224,177,-1,244,21,20,-1,253,254,255,-1,166,168,11,-1,145,256,257,-1,258,141,259,-1,221,260,214,-1,10,166,11,-1,255,174,253,-1,244,20,19,-1,25,24,261,-1,29,33,32,-1,39,262,249,-1,31,39,32,-1,262,164,163,-1,43,263,35,-1,141,49,48,-1,53,52,57,-1,259,264,265,-1,89,114,90,-1,62,246,63,-1,24,245,266,-1,267,134,268,-1,72,71,243,-1,242,269,241,-1,192,77,74,-1,270,271,272,-1,80,82,7,-1,82,83,273,-1,236,274,237,-1,80,88,0,-1,91,231,232,-1,230,91,275,-1,94,121,95,-1,96,276,97,-1,217,53,218,-1,130,225,110,-1,129,277,225,-1,177,11,278,-1,61,223,279,-1,73,221,213,-1,280,281,102,-1,281,282,102,-1,105,220,106,-1,107,229,108,-1,200,54,217,-1,73,283,284,-1,213,221,214,-1,285,209,286,-1,207,287,208,-1,288,189,191,-1,289,126,128,-1,190,234,85,-1,234,136,85,-1,202,204,133,-1,267,114,134,-1,197,199,226,-1,194,143,290,-1,192,152,101,-1,189,234,190,-1,186,291,187,-1,94,292,122,-1,160,293,252,-1,182,294,184,-1,182,295,183,-1,181,296,180,-1,19,178,297,-1,174,298,175,-1,172,173,255,-1,171,299,169,-1,166,300,167,-1,15,301,38,-1,162,27,163,-1,9,26,104,-1,93,284,283,-1,157,183,158,-1,76,153,242,-1,150,302,148,-1,147,303,145,-1,143,195,144,-1,304,256,145,-1,141,196,140,-1,137,139,305,-1,229,227,306,-1,238,70,7,-1,70,69,7,-1,131,263,129,-1,156,206,307,-1,123,207,124,-1,118,120,121,-1,156,189,154,-1,117,214,115,-1,102,282,68,-1,73,72,180,-1,107,109,240,-1,2,106,84,-1,308,309,98,-1,104,279,10,-1,267,107,240,-1,102,68,70,-1,101,151,99,-1,94,96,98,-1,121,310,95,-1,232,231,212,-1,275,91,93,-1,311,86,307,-1,86,136,307,-1,88,90,1,-1,85,87,135,-1,81,0,84,-1,82,273,238,-1,80,81,82,-1,270,272,312,-1,74,76,313,-1,314,71,73,-1,315,316,284,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=2 */
		private int[] gettooth_molar_17_38_cap_geometry_5_28_coordIndex_2()
		{
			int[] value = {5,67,3,-1,64,216,65,-1,61,63,116,-1,140,229,306,-1,5,233,59,-1,259,265,258,-1,58,317,48,-1,54,56,318,-1,53,217,51,-1,50,57,48,-1,262,163,249,-1,44,46,45,-1,43,160,42,-1,42,319,40,-1,38,301,39,-1,36,251,34,-1,25,261,320,-1,18,9,224,-1,21,244,24,-1,23,20,21,-1,18,177,19,-1,321,322,222,-1,15,165,16,-1,12,162,13,-1,9,11,224,-1,260,115,214,-1,7,69,8,-1,3,323,4,-1,0,88,1,-1,324,325,148,-1,324,326,325,-1,327,328,329,-1,327,330,328,-1,331,305,139,-1,331,332,305,-1,333,334,335,-1,333,194,334,-1,253,336,254,-1,337,336,253,-1,338,339,340,-1,339,338,341,-1,342,185,184,-1,342,343,185,-1,258,137,141,-1,137,258,138,-1,178,278,344,-1,177,278,178,-1,172,345,346,-1,345,172,347,-1,169,348,349,-1,350,348,169,-1,115,321,222,-1,115,260,321,-1,293,66,252,-1,293,64,66,-1,245,252,66,-1,252,245,297,-1,211,122,292,-1,351,122,211,-1,278,168,352,-1,278,11,168,-1,262,301,164,-1,39,301,262,-1,160,248,293,-1,248,160,43,-1,141,317,259,-1,48,317,141,-1,353,354,355,-1,354,353,356,-1,357,56,358,-1,56,357,318,-1,57,356,58,-1,356,57,52,-1,228,200,218,-1,228,268,200,-1,179,320,246,-1,22,320,179,-1,152,313,151,-1,152,74,313,-1,109,239,240,-1,109,359,239,-1,360,274,132,-1,360,237,274,-1,189,120,154,-1,189,288,120,-1,3,88,323,-1,3,89,88,-1,361,362,363,-1,311,362,361,-1,2,239,105,-1,1,239,2,-1,232,211,292,-1,232,212,211,-1,230,63,246,-1,230,364,63,-1,246,210,230,-1,320,210,246,-1,320,261,210,-1,365,203,202,-1,203,365,366,-1,240,114,267,-1,240,113,114,-1,112,355,110,-1,353,355,112,-1,277,30,225,-1,277,31,30,-1,344,352,16,-1,278,352,344,-1,283,213,367,-1,283,73,213,-1,98,269,308,-1,98,97,269,-1,280,360,99,-1,280,102,360,-1,71,308,368,-1,308,71,314,-1,286,215,285,-1,286,351,215,-1,210,24,266,-1,210,261,24,-1,208,121,120,-1,310,121,208,-1,190,127,126,-1,127,190,85,-1,351,118,122,-1,351,286,118,-1,369,366,365,-1,369,370,366,-1,236,220,371,-1,236,235,220,-1,372,373,374,-1,375,373,372,-1,376,329,377,-1,376,378,329,-1,373,271,374,-1,373,272,271,-1,374,229,140,-1,374,108,229,-1,306,53,50,-1,53,306,227,-1,265,303,142,-1,265,264,303,-1,33,146,379,-1,33,29,146,-1,204,193,133,-1,193,204,380,-1,187,148,325,-1,187,149,148,-1,325,188,187,-1,188,325,381,-1,294,381,184,-1,294,188,381,-1,242,382,368,-1,242,153,382,-1,243,383,159,-1,243,382,383,-1,170,295,171,-1,170,183,295,-1,382,71,368,-1,382,243,71,-1,245,19,297,-1,244,19,245,-1,384,321,296,-1,349,321,384,-1,17,385,13,-1,17,386,385,-1,350,387,348,-1,350,388,387,-1,253,176,389,-1,176,253,174,-1,390,299,171,-1,390,341,299,-1,255,347,172,-1,255,254,347,-1,349,170,169,-1,384,170,349,-1,173,13,385,-1,173,14,13,-1,391,348,387,-1,391,322,348,-1,166,391,300,-1,166,223,391,-1,162,301,15,-1,164,301,162,-1,316,292,309,-1,316,315,292,-1,171,392,390,-1,171,295,392,-1,393,159,383,-1,159,393,157,-1,94,309,292,-1,94,98,309,-1,382,394,383,-1,382,153,394,-1,153,79,394,-1,75,79,153,-1,101,133,193,-1,101,100,133,-1,147,29,28,-1,147,146,29,-1,379,145,257,-1,379,146,145,-1,142,139,138,-1,144,139,142,-1,256,112,257,-1,256,353,112,-1,305,395,137,-1,305,396,395,-1,375,395,376,-1,375,372,395,-1,375,377,370,-1,375,376,377,-1,397,302,150,-1,397,398,302,-1,365,371,369,-1,365,236,371,-1,285,206,205,-1,47,206,285,-1,44,206,47,-1,124,128,281,-1,124,289,128,-1,123,151,313,-1,123,125,151,-1,123,287,207,-1,241,287,123,-1,10,223,166,-1,10,279,223,-1,273,106,399,-1,273,83,106,-1,269,368,308,-1,368,269,242,-1,319,161,400,-1,319,42,161,-1,125,281,280,-1,124,281,125,-1,366,397,203,-1,397,366,401,-1,96,310,276,-1,95,310,96,-1,212,230,210,-1,231,230,212,-1,86,361,87,-1,86,311,361,-1,119,154,120,-1,155,154,119,-1,239,219,105,-1,359,219,239,-1,247,250,402,-1,247,363,250,-1,55,268,134,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=3 */
		private int[] gettooth_molar_17_38_cap_geometry_5_28_coordIndex_3()
		{
			int[] value = {268,55,200,-1,357,51,318,-1,354,51,357,-1,233,402,59,-1,233,247,402,-1,358,197,357,-1,358,198,197,-1,317,256,304,-1,58,256,317,-1,217,318,51,-1,217,54,318,-1,46,64,45,-1,46,216,64,-1,40,129,41,-1,129,40,277,-1,352,167,386,-1,352,168,167,-1,351,210,215,-1,351,211,210,-1,297,161,252,-1,161,297,178,-1,20,9,18,-1,9,20,26,-1,322,349,348,-1,322,321,349,-1,13,15,17,-1,162,15,13,-1,8,323,6,-1,323,8,4,-1,343,392,185,-1,343,403,392,-1,340,404,338,-1,340,405,404,-1,254,406,347,-1,336,406,254,-1,407,194,333,-1,407,195,194,-1,332,396,305,-1,332,408,396,-1,328,409,398,-1,330,409,328,-1,324,302,410,-1,324,148,302,-1,411,329,378,-1,411,327,329,-1,412,139,144,-1,412,331,139,-1,335,345,413,-1,335,334,345,-1,389,337,253,-1,414,337,389,-1,341,415,339,-1,415,341,390,-1,184,416,342,-1,416,184,381,-1,88,6,323,-1,88,201,6,-1,346,14,172,-1,346,12,14,-1,350,299,417,-1,350,169,299,-1,222,116,115,-1,222,61,116,-1,22,25,320,-1,22,21,25,-1,16,400,344,-1,165,400,16,-1,266,66,65,-1,66,266,245,-1,385,298,173,-1,385,418,298,-1,290,27,419,-1,290,28,27,-1,34,248,35,-1,248,34,45,-1,40,31,277,-1,40,37,31,-1,263,41,129,-1,263,43,41,-1,259,304,264,-1,317,304,259,-1,354,52,51,-1,354,356,52,-1,59,198,358,-1,59,402,198,-1,58,353,256,-1,356,353,58,-1,228,227,229,-1,228,218,227,-1,34,362,206,-1,251,362,34,-1,73,316,314,-1,316,73,284,-1,270,109,271,-1,359,109,270,-1,202,132,274,-1,133,132,202,-1,238,399,103,-1,238,273,399,-1,362,307,206,-1,362,311,307,-1,361,8,87,-1,361,4,8,-1,90,239,1,-1,90,113,239,-1,315,93,92,-1,284,93,315,-1,104,23,62,-1,104,26,23,-1,274,365,202,-1,274,236,365,-1,237,102,103,-1,360,102,237,-1,197,110,355,-1,197,226,110,-1,314,309,308,-1,314,316,309,-1,106,81,84,-1,106,83,81,-1,117,367,213,-1,117,364,367,-1,216,285,215,-1,216,47,285,-1,286,119,118,-1,209,119,286,-1,126,191,190,-1,126,289,191,-1,36,263,131,-1,36,35,263,-1,370,401,366,-1,370,377,401,-1,132,99,360,-1,132,100,99,-1,219,371,220,-1,219,312,371,-1,312,369,371,-1,312,373,369,-1,272,373,312,-1,374,196,372,-1,196,374,140,-1,282,128,127,-1,282,281,128,-1,250,131,199,-1,250,36,131,-1,306,49,140,-1,50,49,306,-1,264,145,303,-1,264,304,145,-1,142,147,143,-1,303,147,142,-1,379,30,33,-1,30,379,111,-1,150,380,204,-1,380,150,149,-1,149,291,380,-1,291,149,187,-1,188,393,186,-1,393,188,294,-1,159,181,243,-1,159,158,181,-1,384,183,170,-1,384,158,183,-1,367,93,283,-1,275,93,367,-1,12,419,27,-1,12,346,419,-1,16,386,17,-1,16,352,386,-1,296,221,180,-1,321,221,296,-1,221,321,260,-1,167,420,418,-1,167,300,420,-1,420,388,175,-1,387,388,420,-1,417,388,350,-1,421,388,417,-1,421,389,176,-1,421,404,389,-1,338,421,417,-1,338,404,421,-1,388,176,175,-1,176,388,421,-1,420,298,418,-1,420,175,298,-1,387,300,391,-1,420,300,387,-1,223,322,391,-1,223,222,322,-1,334,346,345,-1,346,334,419,-1,296,158,384,-1,296,181,158,-1,185,295,182,-1,185,392,295,-1,157,294,182,-1,157,393,294,-1,310,287,276,-1,310,208,287,-1,383,186,393,-1,383,394,186,-1,394,291,186,-1,394,78,291,-1,394,79,78,-1,288,289,124,-1,288,191,289,-1,380,192,193,-1,380,78,192,-1,380,291,78,-1,99,125,280,-1,151,125,99,-1,143,28,290,-1,143,147,28,-1,257,111,379,-1,257,112,111,-1,130,199,131,-1,130,226,199,-1,402,199,198,-1,402,250,199,-1,372,137,395,-1,137,372,196,-1,396,376,395,-1,396,378,376,-1,370,373,375,-1,369,373,370,-1,67,56,55,-1,60,56,67,-1,203,150,204,-1,203,397,150,-1,377,328,401,-1,377,329,328,-1,138,265,142,-1,138,258,265,-1,68,85,135,-1,68,127,85,-1,282,127,68,-1,123,76,241,-1,123,313,76,-1,288,207,120,-1,124,207,288,-1,155,285,205,-1,155,209,285,-1,116,364,117,-1,116,63,364,-1,235,106,220,-1,235,399,106,-1,97,241,269,-1,241,276,287,-1,97,276,241,-1,62,279,104,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=4 */
		private int[] gettooth_molar_17_38_cap_geometry_5_28_coordIndex_4()
		{
			int[] value = {62,61,279,-1,165,319,400,-1,38,319,165,-1,111,225,30,-1,225,111,110,-1,107,268,228,-1,268,107,267,-1,401,398,397,-1,398,401,328,-1,275,364,230,-1,275,367,364,-1,292,92,232,-1,292,315,92,-1,361,247,4,-1,361,363,247,-1,156,136,234,-1,136,156,307,-1,103,235,237,-1,399,235,103,-1,219,270,312,-1,219,359,270,-1,75,77,79,-1,77,75,74,-1,251,363,362,-1,251,250,363,-1,89,67,134,-1,89,3,67,-1,56,59,358,-1,60,59,56,-1,354,197,355,-1,354,357,197,-1,271,108,374,-1,271,109,108,-1,38,40,319,-1,40,38,37,-1,45,293,248,-1,293,45,64,-1,29,163,27,-1,29,249,163,-1,194,419,334,-1,194,290,419,-1,386,418,385,-1,386,167,418,-1,210,65,215,-1,65,210,266,-1,400,178,344,-1,400,161,178,-1,341,417,299,-1,338,417,341,-1,255,298,174,-1,255,173,298,-1,416,325,326,-1,416,381,325,-1,403,390,392,-1,403,415,390,-1,405,389,404,-1,405,414,389,-1,413,347,406,-1,413,345,347,-1,195,412,144,-1,407,412,195,-1,378,408,411,-1,408,378,396,-1,398,410,302,-1,409,410,398,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=1 */
		private int[] gettooth_molar_17_38_root_geometry_5_34_coordIndex_1()
		{
			int[] value = {0,1,2,-1,3,4,5,-1,6,4,7,-1,8,9,10,-1,3,11,12,-1,13,14,15,-1,16,17,18,-1,19,20,21,-1,22,23,24,-1,25,26,27,-1,28,29,30,-1,31,32,33,-1,34,35,36,-1,37,14,38,-1,39,40,41,-1,42,15,37,-1,43,44,45,-1,46,47,48,-1,49,50,51,-1,52,53,47,-1,54,55,56,-1,57,6,58,-1,59,60,61,-1,62,63,64,-1,44,65,66,-1,40,67,68,-1,69,37,70,-1,71,39,72,-1,73,74,75,-1,75,76,77,-1,78,79,80,-1,81,82,83,-1,28,52,29,-1,3,5,11,-1,17,84,85,-1,86,87,88,-1,89,90,91,-1,92,93,7,-1,5,4,6,-1,94,28,1,-1,52,28,94,-1,4,92,7,-1,90,95,91,-1,96,97,98,-1,96,99,97,-1,87,15,88,-1,17,85,18,-1,100,97,99,-1,52,46,29,-1,81,83,24,-1,80,101,78,-1,75,74,76,-1,73,102,74,-1,71,72,103,-1,69,42,37,-1,40,68,41,-1,44,66,45,-1,62,64,104,-1,60,105,61,-1,56,106,54,-1,46,52,47,-1,51,107,49,-1,46,48,108,-1,43,45,102,-1,42,88,15,-1,39,41,72,-1,37,15,14,-1,34,109,35,-1,31,33,110,-1,30,111,28,-1,112,113,79,-1,21,78,19,-1,16,18,114,-1,87,13,15,-1,12,115,3,-1,116,8,10,-1,7,117,6,-1,94,1,0,-1,2,118,0,-1,119,120,121,-1,120,119,122,-1,123,22,124,-1,22,123,23,-1,36,24,83,-1,24,36,22,-1,125,95,90,-1,125,126,95,-1,7,127,117,-1,7,128,127,-1,129,130,131,-1,130,129,132,-1,133,25,134,-1,25,133,26,-1,135,84,136,-1,84,135,85,-1,137,138,139,-1,138,137,140,-1,141,142,143,-1,142,141,144,-1,145,146,147,-1,145,148,146,-1,2,149,118,-1,2,150,149,-1,151,152,150,-1,151,153,152,-1,154,112,21,-1,154,155,112,-1,89,156,90,-1,157,156,89,-1,158,159,160,-1,161,159,158,-1,162,93,30,-1,163,93,162,-1,163,86,128,-1,163,164,86,-1,161,99,96,-1,161,142,99,-1,138,165,166,-1,165,138,167,-1,17,168,84,-1,169,168,17,-1,170,134,171,-1,170,172,134,-1,139,173,174,-1,175,173,139,-1,176,177,178,-1,177,176,179,-1,116,76,8,-1,77,76,116,-1,82,155,154,-1,82,81,155,-1,180,181,182,-1,181,180,178,-1,183,184,185,-1,184,183,32,-1,186,75,77,-1,187,75,186,-1,166,188,189,-1,188,166,165,-1,190,169,191,-1,190,168,169,-1,170,192,193,-1,192,170,171,-1,175,38,173,-1,194,38,175,-1,195,196,197,-1,195,188,196,-1,198,199,68,-1,198,191,199,-1,192,148,103,-1,148,192,146,-1,200,201,202,-1,201,200,203,-1,204,205,206,-1,205,204,207,-1,45,74,102,-1,45,208,74,-1,209,103,148,-1,209,71,103,-1,195,210,211,-1,210,195,197,-1,212,68,67,-1,212,198,68,-1,213,214,215,-1,216,214,213,-1,202,217,218,-1,217,202,201,-1,206,219,220,-1,219,206,205,-1,67,221,212,-1,222,221,67,-1,108,71,209,-1,108,48,71,-1,69,223,224,-1,223,69,225,-1,226,227,228,-1,226,229,227,-1,230,231,232,-1,230,43,231,-1,233,153,151,-1,233,156,153,-1,234,235,236,-1,234,237,235,-1,238,239,240,-1,239,238,241,-1,242,222,243,-1,242,221,222,-1,117,244,245,-1,117,127,244,-1,234,246,247,-1,246,234,248,-1,107,249,49,-1,107,250,249,-1,251,252,253,-1,254,252,251,-1,255,256,257,-1,255,258,256,-1,259,53,260,-1,53,259,47,-1,247,261,262,-1,261,247,246,-1,263,264,265,-1,263,266,264,-1,55,267,56,-1,55,268,267,-1,269,270,271,-1,269,272,270,-1,273,274,275,-1,276,274,273,-1,64,57,277,-1,63,57,64,-1,278,279,280,-1,278,281,279,-1,282,283,284,-1,282,285,283,-1,286,287,288,-1,287,286,289,-1,290,60,291,-1,60,290,292,-1,293,294,295,-1,294,293,296,-1,276,265,274,-1,265,276,263,-1,297,298,281,-1,297,269,298,-1,57,55,54,-1,57,58,55,-1,295,299,51,-1,295,294,299,-1,274,300,301,-1,300,274,265,-1,261,302,303,-1,302,261,304,-1,291,59,262,-1,291,60,59,-1,305,0,306,-1,305,94,0,-1,305,288,94,-1,287,260,53,-1,287,307,260,-1,269,308,298,-1,269,271,308,-1,309,285,282,-1,285,309,310,-1,285,311,312,-1,285,310,311,-1,313,301,300,-1,313,62,301,-1,314,294,296,-1,302,294,314,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=2 */
		private int[] gettooth_molar_17_38_root_geometry_5_34_coordIndex_2()
		{
			int[] value = {292,105,60,-1,105,292,315,-1,289,307,287,-1,307,289,316,-1,308,284,317,-1,308,282,284,-1,106,280,318,-1,106,278,280,-1,275,301,319,-1,274,301,275,-1,271,242,309,-1,271,270,242,-1,267,320,56,-1,320,267,240,-1,118,306,0,-1,118,258,306,-1,50,266,263,-1,50,49,266,-1,246,304,261,-1,304,246,321,-1,258,61,306,-1,61,258,255,-1,100,137,322,-1,144,137,100,-1,144,140,137,-1,144,323,140,-1,141,323,144,-1,141,324,323,-1,141,135,324,-1,141,85,135,-1,26,85,141,-1,26,18,85,-1,26,114,18,-1,26,325,114,-1,26,326,325,-1,26,133,326,-1,258,149,256,-1,258,118,149,-1,253,264,232,-1,252,264,253,-1,327,250,107,-1,327,328,250,-1,223,240,267,-1,240,223,238,-1,329,30,29,-1,162,30,329,-1,243,330,331,-1,243,222,330,-1,239,226,272,-1,239,241,226,-1,236,248,234,-1,248,236,220,-1,256,332,218,-1,256,149,332,-1,232,214,253,-1,232,231,214,-1,328,65,250,-1,328,333,65,-1,225,238,223,-1,238,225,211,-1,334,162,329,-1,335,162,334,-1,222,40,330,-1,222,67,40,-1,205,333,219,-1,333,205,336,-1,235,201,337,-1,235,217,201,-1,216,91,95,-1,216,213,91,-1,227,198,212,-1,227,338,198,-1,339,211,225,-1,211,339,195,-1,215,109,213,-1,215,187,109,-1,207,336,205,-1,336,207,185,-1,337,203,182,-1,337,201,203,-1,213,34,91,-1,213,109,34,-1,68,340,41,-1,68,199,340,-1,197,341,342,-1,197,196,341,-1,194,37,38,-1,70,37,194,-1,173,14,98,-1,38,14,173,-1,340,170,193,-1,340,343,170,-1,341,168,190,-1,341,344,168,-1,194,166,189,-1,194,175,166,-1,35,187,186,-1,109,187,35,-1,345,185,207,-1,185,345,183,-1,346,182,203,-1,182,346,180,-1,77,347,186,-1,77,116,347,-1,120,32,183,-1,32,120,33,-1,130,178,180,-1,178,130,176,-1,98,174,173,-1,98,97,174,-1,343,172,170,-1,343,348,172,-1,344,84,168,-1,344,136,84,-1,138,175,139,-1,166,175,138,-1,349,350,351,-1,350,349,352,-1,164,87,86,-1,164,353,87,-1,111,93,92,-1,93,111,30,-1,354,159,353,-1,159,354,160,-1,90,233,125,-1,156,233,90,-1,355,21,20,-1,355,154,21,-1,350,150,2,-1,350,151,150,-1,356,19,357,-1,356,20,19,-1,108,29,46,-1,108,329,29,-1,358,147,146,-1,358,359,147,-1,99,144,100,-1,99,142,144,-1,140,167,138,-1,167,140,323,-1,16,325,348,-1,16,114,325,-1,360,131,80,-1,131,360,129,-1,132,176,130,-1,176,132,361,-1,128,88,127,-1,128,86,88,-1,115,126,125,-1,115,12,126,-1,81,23,362,-1,81,24,23,-1,363,116,10,-1,347,116,363,-1,122,33,120,-1,33,122,364,-1,351,2,1,-1,351,350,2,-1,121,365,119,-1,121,179,365,-1,110,9,8,-1,110,366,9,-1,123,347,363,-1,124,347,123,-1,34,83,367,-1,83,34,36,-1,92,351,111,-1,92,349,351,-1,155,113,112,-1,155,368,113,-1,172,133,134,-1,172,326,133,-1,324,136,369,-1,136,324,135,-1,139,322,137,-1,139,174,322,-1,26,143,27,-1,143,26,141,-1,148,334,209,-1,148,145,334,-1,332,150,152,-1,150,332,149,-1,21,79,78,-1,21,112,79,-1,153,356,152,-1,153,370,356,-1,89,371,157,-1,371,89,367,-1,143,161,158,-1,142,161,143,-1,335,163,162,-1,164,163,335,-1,93,128,7,-1,93,163,128,-1,159,96,13,-1,159,161,96,-1,12,313,254,-1,12,11,313,-1,167,372,165,-1,372,167,369,-1,16,169,17,-1,373,169,16,-1,134,358,171,-1,358,134,25,-1,346,80,131,-1,346,101,80,-1,179,345,177,-1,345,179,121,-1,110,76,31,-1,76,110,8,-1,35,22,36,-1,35,124,22,-1,178,204,181,-1,204,178,177,-1,32,208,184,-1,208,32,31,-1,371,154,355,-1,371,82,154,-1,188,372,196,-1,188,165,372,-1,191,373,199,-1,191,169,373,-1,146,171,358,-1,146,192,171,-1,147,354,145,-1,160,354,147,-1,189,195,339,-1,195,189,188,-1,338,191,198,-1,338,190,191,-1,193,103,72,-1,103,193,192,-1,19,202,357,-1,202,19,200,-1,181,206,374,-1,206,181,204,-1,66,208,45,-1,66,184,208,-1,145,335,334,-1,354,335,145,-1,197,229,210,-1,229,197,342,-1,231,215,214,-1,231,73,215,-1,218,357,202,-1,218,332,357,-1,374,220,236,-1,220,374,206,-1,228,212,221,-1,228,227,212,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=3 */
		private int[] gettooth_molar_17_38_root_geometry_5_34_coordIndex_3()
		{
			int[] value = {39,48,375,-1,48,39,71,-1,244,69,224,-1,244,42,69,-1,210,226,241,-1,226,210,229,-1,249,43,230,-1,249,44,43,-1,95,251,216,-1,126,251,95,-1,237,217,235,-1,237,257,217,-1,219,328,376,-1,328,219,333,-1,270,221,242,-1,270,228,221,-1,259,48,47,-1,259,375,48,-1,224,245,244,-1,268,245,224,-1,248,321,246,-1,321,248,376,-1,49,230,266,-1,49,249,230,-1,126,254,251,-1,12,254,126,-1,377,257,237,-1,377,255,257,-1,311,259,260,-1,311,331,259,-1,377,262,59,-1,262,377,247,-1,299,107,51,-1,299,327,107,-1,265,252,300,-1,265,264,252,-1,58,268,55,-1,58,245,268,-1,239,269,297,-1,269,239,272,-1,310,331,311,-1,310,243,331,-1,277,54,378,-1,57,54,277,-1,281,379,279,-1,281,298,379,-1,283,312,380,-1,285,312,283,-1,381,288,305,-1,288,381,286,-1,291,382,290,-1,291,303,382,-1,295,383,293,-1,295,384,383,-1,294,304,299,-1,294,302,304,-1,57,5,6,-1,57,63,5,-1,363,23,123,-1,10,23,363,-1,10,362,23,-1,9,362,10,-1,366,362,9,-1,364,362,366,-1,122,362,364,-1,122,368,362,-1,119,368,122,-1,365,368,119,-1,365,113,368,-1,361,113,365,-1,132,113,361,-1,129,113,132,-1,129,360,113,-1,308,309,282,-1,308,271,309,-1,320,281,278,-1,281,320,297,-1,53,288,287,-1,53,94,288,-1,53,52,94,-1,105,306,61,-1,105,305,306,-1,11,62,313,-1,5,62,11,-1,62,5,63,-1,51,384,295,-1,384,51,50,-1,384,263,276,-1,384,50,263,-1,262,303,291,-1,303,262,261,-1,56,278,106,-1,56,320,278,-1,260,312,311,-1,307,312,260,-1,383,276,273,-1,384,276,383,-1,303,314,382,-1,303,302,314,-1,315,305,105,-1,305,315,381,-1,316,312,307,-1,312,316,380,-1,298,317,379,-1,298,308,317,-1,378,106,318,-1,54,106,378,-1,62,319,301,-1,62,104,319,-1,309,243,310,-1,309,242,243,-1,240,297,320,-1,297,240,239,-1,254,300,252,-1,313,300,254,-1,321,299,304,-1,299,321,327,-1,255,59,61,-1,59,255,377,-1,237,247,377,-1,247,237,234,-1,352,151,350,-1,352,233,151,-1,232,266,230,-1,264,266,232,-1,376,327,321,-1,327,376,328,-1,268,223,267,-1,268,224,223,-1,331,375,259,-1,331,330,375,-1,272,228,270,-1,272,226,228,-1,220,376,248,-1,376,220,219,-1,218,257,256,-1,257,218,217,-1,216,253,214,-1,251,253,216,-1,250,44,249,-1,250,65,44,-1,211,241,238,-1,241,211,210,-1,127,42,244,-1,127,88,42,-1,330,39,375,-1,330,40,39,-1,336,65,333,-1,65,336,66,-1,236,337,374,-1,236,235,337,-1,156,370,153,-1,156,157,370,-1,43,73,231,-1,43,102,73,-1,229,338,227,-1,229,342,338,-1,225,70,339,-1,225,69,70,-1,73,187,215,-1,73,75,187,-1,185,66,336,-1,66,185,184,-1,182,374,337,-1,374,182,181,-1,157,355,370,-1,157,371,355,-1,340,72,41,-1,72,340,193,-1,342,190,338,-1,342,341,190,-1,189,70,194,-1,339,70,189,-1,359,160,147,-1,158,160,359,-1,199,343,340,-1,199,373,343,-1,196,344,341,-1,196,372,344,-1,200,78,101,-1,200,19,78,-1,31,74,208,-1,74,31,76,-1,177,207,204,-1,207,177,345,-1,203,101,346,-1,203,200,101,-1,124,186,347,-1,35,186,124,-1,121,183,345,-1,183,121,120,-1,180,131,130,-1,180,346,131,-1,27,158,359,-1,143,158,27,-1,373,348,343,-1,373,16,348,-1,136,372,369,-1,344,372,136,-1,245,6,117,-1,6,245,58,-1,353,13,87,-1,353,159,13,-1,115,349,3,-1,349,115,352,-1,354,164,335,-1,353,164,354,-1,125,352,115,-1,233,352,125,-1,367,82,371,-1,82,367,83,-1,370,20,356,-1,370,355,20,-1,4,349,92,-1,349,4,3,-1,152,357,332,-1,152,356,357,-1,329,209,334,-1,108,209,329,-1,359,25,27,-1,358,25,359,-1,97,322,174,-1,97,100,322,-1,323,369,167,-1,369,323,324,-1,348,326,172,-1,348,325,326,-1,79,360,80,-1,79,113,360,-1,1,111,351,-1,1,28,111,-1,13,98,14,-1,13,96,98,-1,91,367,89,-1,367,91,34,-1,362,155,81,-1,155,362,368,-1,33,366,110,-1,33,364,366,-1,361,179,176,-1,179,361,365,-1};
			return value;
		}
		/** Large attribute array: IndexedFaceSet DEF='tooth_molar_17_38_cap_geometry' coordIndex field, scene-graph level=5, element #28, 3260 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 gettooth_molar_17_38_cap_geometry_5_28_coordIndex()
		{
			MFInt32 tooth_molar_17_38_cap_geometry_5_28_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(gettooth_molar_17_38_cap_geometry_5_28_coordIndex_1()))
				.append(new MFInt32(gettooth_molar_17_38_cap_geometry_5_28_coordIndex_2()))
				.append(new MFInt32(gettooth_molar_17_38_cap_geometry_5_28_coordIndex_3()))
				.append(new MFInt32(gettooth_molar_17_38_cap_geometry_5_28_coordIndex_4()));
			return tooth_molar_17_38_cap_geometry_5_28_coordIndex;
		}
		/** Large attribute array: Coordinate DEF='tooth_molar_17_38_cap_coordinate' point field, scene-graph level=6, element #28, 1266 total numbers made up of 422 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 gettooth_molar_17_38_cap_coordinate_6_28_point()
		{
			MFVec3f tooth_molar_17_38_cap_coordinate_6_28_point = new MFVec3f(new double[] {-0.0009,0.0021,-0.0034,-0.0007,0.0025,-0.0038,-0.0009,0.0025,-0.0038,-0.0005,0.0018,-0.0026,-0.0007,0.0013,-0.0023,-0.0005,0.0016,-0.0024,-0.0009,0.0016,-0.0026,-0.0022,0.0029,-0.0034,-0.0009,0.0015,-0.0024,0.0005,0.0026,0.0045,0.0008,0.0028,0.0046,0.0011,0.0030,0.0045,0.0048,-0.0003,0.0012,0.0041,0.0009,0.0023,0.0046,-0.0004,0.0018,0.0031,0.0023,0.0022,0.0017,0.0030,0.0029,0.0030,0.0023,0.0027,0.0008,0.0028,0.0043,0.0000,0.0020,0.0038,-0.0001,0.0020,0.0040,-0.0006,0.0015,0.0033,-0.0007,0.0015,0.0034,-0.0003,0.0018,0.0039,-0.0012,0.0012,0.0025,-0.0012,0.0013,0.0028,-0.0002,0.0020,0.0042,0.0048,-0.0002,0.0005,0.0048,0.0002,-0.0004,0.0041,0.0015,0.0001,0.0018,0.0032,0.0005,0.0017,0.0029,0.0010,0.0031,0.0024,0.0011,0.0030,0.0028,0.0006,-0.0004,0.0010,0.0003,0.0002,0.0015,0.0004,0.0000,0.0019,-0.0002,0.0017,0.0028,0.0012,0.0017,0.0028,0.0015,0.0031,0.0022,0.0014,0.0015,0.0028,0.0012,0.0013,0.0025,0.0011,0.0012,0.0026,0.0015,0.0005,0.0015,0.0009,-0.0013,0.0004,-0.0001,-0.0004,0.0010,0.0005,-0.0012,0.0005,0.0002,-0.0014,0.0004,0.0001,0.0029,0.0021,-0.0031,0.0027,0.0019,-0.0034,0.0021,0.0033,-0.0030,0.0016,0.0035,-0.0021,0.0018,0.0035,-0.0022,0.0015,0.0037,-0.0028,0.0010,0.0035,-0.0025,0.0004,0.0034,-0.0027,0.0009,0.0030,-0.0023,0.0024,0.0032,-0.0025,0.0025,0.0031,-0.0023,0.0003,0.0020,-0.0022,0.0001,0.0022,-0.0024,-0.0012,0.0019,0.0044,-0.0010,0.0018,0.0041,-0.0017,0.0014,0.0038,-0.0005,0.0010,0.0007,-0.0012,0.0010,0.0013,-0.0006,0.0015,0.0015,-0.0001,0.0025,-0.0026,-0.0039,0.0032,-0.0024,-0.0021,0.0028,-0.0028,-0.0034,0.0032,-0.0034,-0.0037,0.0020,0.0031,-0.0033,0.0016,0.0037,-0.0031,0.0017,0.0037,-0.0043,0.0013,-0.0006,-0.0044,0.0014,-0.0004,-0.0041,0.0020,-0.0003,-0.0046,0.0003,-0.0011,-0.0046,0.0001,-0.0012,-0.0047,0.0003,-0.0008,-0.0010,0.0020,-0.0033,-0.0021,0.0029,-0.0037,-0.0022,0.0029,-0.0037,-0.0022,0.0030,-0.0038,-0.0019,0.0028,-0.0038,-0.0026,0.0018,-0.0014,-0.0016,0.0010,-0.0012,-0.0013,0.0018,-0.0017,-0.0007,0.0018,-0.0033,-0.0006,0.0020,-0.0032,-0.0006,0.0026,-0.0038,-0.0018,0.0012,0.0031,-0.0026,0.0015,0.0031,-0.0026,0.0016,0.0033,-0.0028,0.0016,0.0013,-0.0029,0.0016,0.0010,-0.0038,0.0021,0.0010,-0.0040,0.0023,0.0010,-0.0039,0.0023,0.0013,-0.0043,0.0026,-0.0018,-0.0044,0.0023,-0.0023,-0.0043,0.0018,-0.0012,-0.0041,0.0033,-0.0025,-0.0037,0.0032,-0.0035,-0.0004,0.0022,0.0044,-0.0010,0.0028,-0.0041,-0.0022,0.0030,-0.0040,0.0002,0.0031,-0.0040,0.0003,0.0028,-0.0041,-0.0005,0.0025,-0.0042,0.0015,0.0035,-0.0003,0.0018,0.0034,-0.0002,0.0018,0.0035,-0.0005,-0.0005,0.0028,-0.0039,-0.0004,0.0029,-0.0037,-0.0018,0.0013,0.0041,-0.0018,0.0014,0.0040,-0.0019,0.0013,0.0039,-0.0024,0.0012,0.0009,-0.0024,0.0010,-0.0001,-0.0027,0.0010,-0.0001,-0.0027,0.0013,0.0010,-0.0026,0.0015,0.0014,-0.0039,0.0021,-0.0005,-0.0038,0.0021,-0.0006,-0.0040,0.0022,-0.0006,-0.0034,0.0022,-0.0015,-0.0033,0.0023,-0.0016,-0.0036,0.0024,-0.0016,0.0012,0.0028,0.0010,0.0013,0.0030,0.0004,0.0004,0.0022,0.0001,-0.0043,0.0025,-0.0029,-0.0044,0.0013,-0.0034,0.0000,0.0031,-0.0033,-0.0023,0.0021,-0.0019,-0.0018,0.0008,-0.0010,0.0020,-0.0003,-0.0044,0.0031,-0.0001,-0.0037,0.0031,-0.0015,-0.0040,0.0020,0.0015,-0.0043,0.0030,0.0012,-0.0035,0.0045,-0.0002,-0.0029,0.0050,-0.0006,-0.0018,0.0044,-0.0014,-0.0031,0.0040,0.0018,-0.0021,0.0041,0.0019,-0.0007,0.0048,0.0005,-0.0013,-0.0038,-0.0028,-0.0030,-0.0041,-0.0016,-0.0028,-0.0038,-0.0014,-0.0038,-0.0040,0.0020,-0.0007,-0.0043,0.0015,-0.0008,-0.0048,0.0015,0.0006,-0.0019,0.0004,-0.0006,-0.0017,0.0003,-0.0004,-0.0017,0.0003,-0.0007,-0.0047,-0.0010,0.0019,-0.0039,-0.0006,0.0031,-0.0046,-0.0002,0.0024,0.0004,0.0016,0.0011,0.0011,0.0029,0.0022,0.0040,0.0009,0.0017,0.0041,0.0008,0.0007,0.0040,0.0010,0.0013,0.0017,0.0030,0.0022,0.0010,0.0026,0.0048,0.0025,0.0020,0.0044,0.0013,0.0029,0.0046,-0.0011,-0.0014,0.0032,-0.0024,-0.0016,0.0030,-0.0021,-0.0026,0.0024,0.0048,-0.0016,0.0014,0.0043,-0.0005,0.0027,0.0039,-0.0022,0.0025,0.0028,-0.0010,0.0040,0.0028,-0.0023,0.0031,0.0010,0.0029,0.0042,0.0011,0.0030,0.0028,-0.0008,0.0016,0.0036,-0.0031,0.0015,0.0038,-0.0038,0.0008,0.0036,-0.0043,-0.0025,0.0013,-0.0036,-0.0016,0.0027,-0.0042,-0.0031,0.0002,-0.0036,-0.0032,0.0009,-0.0050,-0.0007,-0.0003,-0.0044,-0.0017,-0.0018,-0.0046,-0.0019,-0.0007,-0.0020,0.0006,-0.0007,-0.0026,0.0017,-0.0013,-0.0027,0.0017,-0.0012,-0.0046,0.0005,-0.0014,-0.0045,0.0008,-0.0021,0.0049,-0.0023,-0.0011,0.0047,-0.0017,-0.0022,0.0020,0.0006,-0.0044,0.0015,0.0033,-0.0017,0.0011,0.0026,-0.0018,0.0005,0.0028,-0.0008,0.0006,0.0037,-0.0031,-0.0009,0.0018,-0.0030,-0.0041,0.0014,-0.0040,-0.0038,0.0002,-0.0043,-0.0043,0.0002,-0.0036,-0.0016,0.0002,-0.0005,-0.0014,0.0003,-0.0006,-0.0038,0.0020,-0.0005,-0.0029,0.0013,0.0000,-0.0017,0.0005,0.0001,-0.0013,0.0011,0.0023,-0.0015,0.0012,0.0022,-0.0016,0.0012,0.0025,-0.0021,0.0014,0.0039,-0.0019,0.0013,0.0040,-0.0014,0.0008,0.0012,-0.0013,0.0005,0.0004,0.0012,0.0038,-0.0026,0.0008,0.0038,-0.0032,-0.0010,0.0025,-0.0042,-0.0022,0.0026,-0.0041,-0.0021,0.0013,0.0040,-0.0011,0.0017,0.0045,-0.0005,0.0021,0.0048,0.0009,0.0029,0.0045,0.0015,0.0032,0.0005,0.0013,0.0033,-0.0004,0.0011,0.0037,-0.0034,0.0005,0.0035,-0.0036,0.0009,0.0032,-0.0039,-0.0016,0.0012,0.0031,-0.0017,0.0012,0.0028,-0.0023,0.0014,0.0028,-0.0006,0.0015,-0.0023,-0.0019,0.0006,-0.0009,-0.0031,0.0030,-0.0040,-0.0034,0.0026,-0.0042,-0.0039,0.0030,-0.0036,-0.0024,0.0030,-0.0036,-0.0008,0.0028,-0.0041,-0.0005,0.0029,-0.0040,-0.0040,0.0021,-0.0003,-0.0043,0.0022,0.0010,-0.0044,0.0013,0.0030,-0.0005,0.0017,0.0031,-0.0005,0.0018,0.0024,-0.0015,0.0013,0.0032,-0.0007,0.0016,-0.0020,0.0001,0.0013,0.0006,0.0040,0.0012,0.0004,-0.0002,0.0023,-0.0011,-0.0004,0.0015,-0.0005,0.0002,0.0021,0.0017,0.0038,-0.0031,0.0021,0.0042,-0.0030,0.0015,0.0044,-0.0019,0.0021,0.0027,0.0032,-0.0020,0.0029,0.0031,-0.0015,0.0031,0.0004,-0.0036,0.0031,0.0010,-0.0034,-0.0019,0.0011,0.0040,-0.0013,0.0012,0.0026,0.0038,0.0010,0.0009,0.0005,0.0017,0.0007,0.0034,0.0010,-0.0032,0.0034,0.0009,-0.0033,-0.0012,0.0012,0.0023,0.0000,0.0032,-0.0038,0.0003,0.0035,-0.0034,-0.0041,0.0024,0.0010,-0.0007,0.0019,-0.0044,-0.0004,0.0018,-0.0044,-0.0007,0.0016,-0.0044,-0.0024,0.0030,-0.0037,-0.0040,0.0026,-0.0037,-0.0018,0.0013,0.0034,-0.0039,0.0022,0.0008,0.0014,0.0030,0.0010,0.0012,0.0030,0.0042,-0.0005,0.0023,0.0046,-0.0042,0.0029,-0.0017,-0.0039,0.0029,-0.0017,-0.0039,0.0031,-0.0023,-0.0029,0.0017,0.0035,-0.0030,0.0018,0.0034,-0.0015,0.0003,0.0001,-0.0016,0.0005,0.0003,-0.0039,0.0020,-0.0003,-0.0027,0.0012,-0.0004,-0.0034,0.0022,-0.0013,0.0051,-0.0010,-0.0008,-0.0046,-0.0005,-0.0014,-0.0027,0.0018,0.0020,0.0000,0.0013,0.0008,-0.0046,-0.0023,0.0006,-0.0035,-0.0025,0.0020,-0.0030,0.0006,0.0039,0.0001,0.0024,0.0026,0.0037,-0.0007,0.0034,-0.0009,-0.0026,0.0027,0.0016,0.0014,0.0049,0.0031,0.0022,0.0017,-0.0034,-0.0027,-0.0040,0.0044,0.0008,-0.0025,0.0033,0.0020,-0.0027,0.0019,-0.0016,-0.0044,0.0015,0.0033,-0.0036,-0.0015,0.0004,-0.0009,-0.0040,0.0026,0.0022,-0.0038,0.0024,0.0021,-0.0029,0.0015,0.0008,-0.0014,0.0009,-0.0012,-0.0011,0.0018,-0.0044,-0.0040,0.0019,-0.0005,-0.0035,0.0021,0.0030,-0.0029,0.0017,0.0030,-0.0033,0.0020,0.0030,0.0030,0.0020,-0.0029,0.0014,0.0034,-0.0021,0.0014,0.0029,0.0016,-0.0014,0.0012,0.0029,-0.0018,0.0006,0.0041,-0.0008,0.0009,0.0045,-0.0007,0.0015,-0.0026,-0.0037,-0.0030,-0.0030,-0.0040,-0.0030,-0.0021,-0.0039,-0.0031,-0.0022,-0.0018,-0.0026,-0.0047,-0.0026,-0.0025,-0.0047,-0.0018,-0.0023,-0.0048,-0.0025,-0.0028,-0.0046,0.0031,-0.0018,-0.0040,0.0019,-0.0019,-0.0044,0.0048,-0.0026,-0.0012,0.0049,-0.0026,-0.0004,0.0048,-0.0029,-0.0004,0.0042,-0.0032,0.0013,0.0037,-0.0035,0.0020,0.0004,-0.0035,0.0023,-0.0005,-0.0039,0.0018,0.0005,-0.0038,0.0021,-0.0006,-0.0037,0.0020,-0.0041,-0.0034,0.0001,-0.0035,-0.0035,0.0007,0.0014,0.0031,0.0029,0.0048,-0.0028,0.0002,0.0050,-0.0015,0.0008,0.0047,-0.0028,0.0008,-0.0005,-0.0004,0.0039,-0.0016,-0.0004,0.0037,-0.0001,-0.0014,0.0034,-0.0016,0.0009,0.0012,0.0015,0.0030,0.0041,0.0019,0.0035,-0.0016,0.0018,0.0034,-0.0019,0.0017,0.0035,-0.0016,0.0019,0.0034,-0.0020,0.0016,0.0033,-0.0019,0.0012,0.0026,-0.0021,-0.0008,0.0025,-0.0042,-0.0042,0.0031,-0.0026,-0.0011,0.0017,-0.0016,-0.0013,0.0009,-0.0011,-0.0009,0.0018,-0.0015,-0.0018,0.0013,0.0037,-0.0034,0.0014,-0.0045,-0.0033,0.0002,-0.0047,-0.0020,0.0014,0.0037,-0.0042,0.0024,0.0022,-0.0020,0.0009,-0.0047,-0.0020,-0.0001,-0.0049,-0.0021,0.0021,-0.0043,0.0007,0.0001,-0.0047,-0.0007,0.0010,-0.0046,0.0006,0.0014,-0.0045,-0.0005,-0.0003,-0.0048,-0.0005,-0.0012,-0.0048,-0.0020,-0.0011,-0.0048,-0.0006,-0.0022,-0.0049,0.0030,0.0030,-0.0003,-0.0045,-0.0002,-0.0024,-0.0043,-0.0030,-0.0009,-0.0048,0.0016,0.0021,-0.0051,0.0002,0.0015,-0.0028,-0.0008,0.0035,0.0038,0.0009,0.0031,0.0029,0.0023,0.0036,0.0009,-0.0002,0.0043,0.0011,-0.0012,0.0038,0.0027,-0.0035,0.0025,-0.0016,-0.0036,0.0017,0.0001,0.0011,0.0049,-0.0030,-0.0034,0.0013,-0.0050,-0.0009,0.0011,-0.0051,0.0003,0.0001,0.0006,-0.0008,-0.0046,0.0006,-0.0019,-0.0047,-0.0035,-0.0012,-0.0043,-0.0031,-0.0026,-0.0044,-0.0030,0.0031,-0.0039,0.0014,0.0030,0.0022,-0.0030,-0.0012,-0.0047,0.0002,0.0021,-0.0019,-0.0029,-0.0036,0.0011,0.0014,-0.0034,0.0025,0.0015,-0.0036,0.0023,0.0046,-0.0030,0.0007,0.0046,-0.0020,-0.0022,0.0007,-0.0022,-0.0046,-0.0029,-0.0029,-0.0044,-0.0032,-0.0029,-0.0039,-0.0006,-0.0025,-0.0049,0.0044,-0.0017,-0.0031,0.0047,-0.0030,0.0001,0.0027,-0.0037,0.0023,-0.0016,-0.0038,0.0015,-0.0042,-0.0032,-0.0010,0.0001,-0.0025,0.0029,0.0033,0.0006,0.0039,0.0050,-0.0014,0.0000,0.0024,0.0002,0.0045,0.0012,-0.0025,0.0032});
			return tooth_molar_17_38_cap_coordinate_6_28_point;
		}
		/** Large attribute array: IndexedFaceSet DEF='tooth_molar_17_38_root_geometry' coordIndex field, scene-graph level=5, element #34, 2964 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 gettooth_molar_17_38_root_geometry_5_34_coordIndex()
		{
			MFInt32 tooth_molar_17_38_root_geometry_5_34_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(gettooth_molar_17_38_root_geometry_5_34_coordIndex_1()))
				.append(new MFInt32(gettooth_molar_17_38_root_geometry_5_34_coordIndex_2()))
				.append(new MFInt32(gettooth_molar_17_38_root_geometry_5_34_coordIndex_3()));
			return tooth_molar_17_38_root_geometry_5_34_coordIndex;
		}
		/** Large attribute array: Coordinate DEF='tooth_molar_17_38_root_coordinate' point field, scene-graph level=6, element #34, 1155 total numbers made up of 385 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 gettooth_molar_17_38_root_coordinate_6_34_point()
		{
			MFVec3f tooth_molar_17_38_root_coordinate_6_34_point = new MFVec3f(new double[] {-0.0039,0.0034,0.0000,-0.0038,0.0034,-0.0002,-0.0031,0.0026,-0.0001,0.0042,0.0033,0.0014,0.0043,0.0033,0.0013,0.0044,0.0035,0.0014,0.0044,0.0034,0.0012,0.0038,0.0024,0.0007,0.0021,-0.0062,-0.0013,0.0019,-0.0062,-0.0015,0.0019,-0.0062,-0.0016,0.0043,0.0034,0.0015,0.0041,0.0025,0.0014,0.0019,-0.0040,-0.0023,0.0022,-0.0040,-0.0025,0.0028,-0.0024,-0.0017,0.0002,-0.0048,-0.0044,0.0003,-0.0048,-0.0045,0.0004,-0.0050,-0.0043,-0.0006,-0.0045,-0.0018,-0.0003,-0.0044,-0.0022,0.0004,-0.0054,-0.0024,0.0021,-0.0060,-0.0020,0.0020,-0.0062,-0.0020,0.0019,-0.0060,-0.0021,0.0000,-0.0050,-0.0037,0.0002,-0.0052,-0.0038,0.0002,-0.0051,-0.0035,-0.0038,0.0034,-0.0002,-0.0032,0.0027,-0.0005,-0.0011,0.0026,0.0001,0.0018,-0.0059,-0.0005,0.0015,-0.0059,-0.0005,0.0017,-0.0062,-0.0011,0.0023,-0.0048,-0.0016,0.0022,-0.0057,-0.0018,0.0022,-0.0056,-0.0020,0.0027,-0.0023,-0.0021,0.0022,-0.0040,-0.0028,-0.0021,0.0000,-0.0031,-0.0017,0.0000,-0.0035,-0.0012,-0.0018,-0.0041,0.0033,-0.0005,-0.0013,0.0026,-0.0013,0.0026,0.0020,-0.0013,0.0030,0.0017,-0.0034,0.0022,-0.0035,0.0028,-0.0008,-0.0035,0.0029,-0.0014,-0.0029,0.0014,-0.0019,0.0026,0.0020,0.0036,0.0027,0.0028,0.0040,0.0015,0.0028,0.0039,-0.0038,0.0035,-0.0005,-0.0038,0.0036,-0.0010,0.0042,0.0050,-0.0001,0.0042,0.0037,-0.0004,0.0037,0.0039,-0.0011,0.0044,0.0045,0.0010,0.0044,0.0035,0.0007,-0.0036,0.0029,0.0025,-0.0037,0.0038,0.0028,-0.0041,0.0030,0.0019,0.0043,0.0042,0.0022,0.0045,0.0043,0.0016,0.0045,0.0051,0.0019,0.0011,-0.0013,0.0030,0.0011,-0.0034,0.0022,-0.0015,0.0000,-0.0038,-0.0011,-0.0017,-0.0044,0.0032,-0.0004,-0.0022,0.0025,-0.0022,-0.0029,-0.0024,-0.0002,-0.0024,-0.0014,-0.0018,-0.0037,0.0023,-0.0034,0.0011,0.0018,-0.0051,0.0004,0.0021,-0.0051,-0.0001,0.0021,-0.0059,-0.0006,0.0021,-0.0058,-0.0009,0.0001,-0.0055,-0.0022,0.0008,-0.0060,-0.0021,0.0008,-0.0060,-0.0020,0.0018,-0.0059,-0.0023,0.0015,-0.0056,-0.0024,0.0020,-0.0056,-0.0021,0.0005,-0.0049,-0.0045,0.0005,-0.0051,-0.0043,0.0029,-0.0006,-0.0007,0.0026,-0.0024,-0.0014,0.0033,-0.0006,-0.0009,0.0023,-0.0030,-0.0011,0.0027,-0.0007,0.0001,0.0025,-0.0031,-0.0008,0.0015,0.0031,0.0007,0.0015,0.0025,0.0005,-0.0039,0.0036,-0.0001,0.0031,-0.0008,0.0004,0.0016,-0.0047,-0.0028,0.0013,-0.0055,-0.0035,0.0018,-0.0047,-0.0029,0.0012,-0.0055,-0.0034,0.0011,-0.0055,-0.0036,0.0001,-0.0056,-0.0018,0.0021,-0.0034,0.0018,-0.0016,-0.0020,-0.0030,0.0044,0.0049,0.0024,-0.0043,0.0039,0.0022,0.0039,0.0052,-0.0010,0.0014,0.0019,0.0036,-0.0029,0.0013,-0.0013,0.0023,-0.0049,-0.0013,0.0019,-0.0062,-0.0012,-0.0010,0.0031,0.0002,0.0010,-0.0060,-0.0022,0.0011,-0.0061,-0.0020,0.0003,-0.0050,-0.0043,0.0038,0.0026,0.0011,0.0021,-0.0061,-0.0015,0.0041,0.0025,0.0005,-0.0037,0.0025,0.0001,0.0014,-0.0062,-0.0015,0.0015,-0.0062,-0.0011,0.0013,-0.0062,-0.0012,0.0016,-0.0062,-0.0014,0.0020,-0.0062,-0.0019,0.0022,-0.0060,-0.0019,0.0033,0.0011,0.0008,0.0037,0.0010,0.0010,0.0038,0.0010,-0.0002,0.0033,0.0009,0.0000,0.0010,-0.0062,-0.0018,0.0009,-0.0061,-0.0015,0.0008,-0.0061,-0.0018,0.0011,-0.0062,-0.0017,0.0002,-0.0051,-0.0039,0.0000,-0.0049,-0.0039,0.0006,-0.0051,-0.0043,0.0007,-0.0050,-0.0044,0.0011,-0.0054,-0.0039,0.0012,-0.0052,-0.0041,0.0013,-0.0053,-0.0039,0.0010,-0.0053,-0.0041,0.0005,-0.0053,-0.0036,0.0009,-0.0054,-0.0033,0.0004,-0.0052,-0.0034,0.0008,-0.0054,-0.0036,-0.0013,-0.0021,-0.0021,-0.0010,-0.0038,-0.0031,-0.0008,-0.0038,-0.0029,-0.0016,-0.0021,-0.0024,-0.0032,0.0012,-0.0002,-0.0027,0.0013,-0.0003,-0.0009,0.0012,-0.0001,-0.0020,-0.0004,-0.0008,-0.0007,-0.0006,-0.0007,0.0009,-0.0055,-0.0024,0.0013,-0.0059,-0.0023,0.0012,-0.0008,-0.0003,0.0011,-0.0030,-0.0014,0.0003,-0.0048,-0.0030,0.0011,-0.0040,-0.0023,-0.0001,-0.0040,-0.0025,0.0010,-0.0048,-0.0028,-0.0007,0.0011,-0.0004,0.0015,0.0010,0.0000,0.0014,-0.0006,-0.0006,0.0013,-0.0045,-0.0043,0.0016,-0.0045,-0.0040,0.0010,-0.0051,-0.0043,0.0003,-0.0043,-0.0046,0.0000,-0.0043,-0.0046,-0.0004,-0.0044,-0.0042,-0.0005,-0.0044,-0.0038,0.0000,-0.0049,-0.0042,0.0019,-0.0046,-0.0032,0.0013,-0.0055,-0.0036,0.0018,-0.0046,-0.0036,0.0010,-0.0062,-0.0014,0.0007,-0.0058,-0.0007,0.0004,-0.0058,-0.0009,0.0012,-0.0062,-0.0013,0.0002,-0.0057,-0.0010,-0.0003,-0.0049,0.0001,-0.0005,-0.0048,-0.0001,0.0012,-0.0059,-0.0005,0.0012,-0.0051,0.0007,0.0008,-0.0050,0.0007,0.0022,-0.0057,-0.0014,0.0023,-0.0050,-0.0008,0.0013,-0.0037,-0.0043,0.0018,-0.0038,-0.0038,0.0000,-0.0035,-0.0047,-0.0004,-0.0035,-0.0047,-0.0011,-0.0037,-0.0036,-0.0009,-0.0036,-0.0041,0.0021,-0.0039,-0.0034,0.0016,-0.0020,-0.0040,0.0009,-0.0036,-0.0045,0.0010,-0.0020,-0.0043,-0.0008,-0.0018,-0.0045,-0.0007,-0.0035,-0.0046,-0.0006,-0.0046,-0.0014,-0.0018,-0.0030,0.0005,-0.0017,-0.0028,-0.0006,-0.0007,-0.0048,-0.0005,0.0001,-0.0050,0.0003,-0.0001,-0.0034,0.0019,-0.0006,-0.0033,0.0016,0.0004,-0.0050,0.0005,0.0016,-0.0051,0.0007,-0.0024,-0.0003,-0.0018,0.0012,-0.0002,-0.0038,0.0020,-0.0002,-0.0035,-0.0011,0.0000,-0.0039,0.0025,-0.0032,-0.0005,0.0031,-0.0010,0.0014,0.0025,-0.0033,0.0003,0.0031,-0.0009,0.0008,-0.0028,-0.0008,0.0012,-0.0028,-0.0006,0.0001,-0.0005,-0.0013,0.0027,-0.0012,-0.0012,0.0024,-0.0014,0.0016,-0.0034,-0.0018,0.0016,-0.0032,0.0033,0.0014,-0.0022,0.0037,0.0013,-0.0015,0.0029,-0.0003,-0.0028,0.0005,0.0015,-0.0033,-0.0004,0.0000,-0.0040,-0.0004,0.0016,-0.0034,0.0005,-0.0001,-0.0039,0.0030,0.0005,0.0031,0.0029,-0.0011,0.0020,0.0034,0.0007,0.0025,0.0014,0.0011,0.0003,-0.0023,0.0006,0.0025,-0.0025,-0.0009,0.0018,-0.0019,-0.0011,0.0021,-0.0030,0.0007,0.0021,0.0023,0.0015,-0.0028,0.0014,0.0031,-0.0025,0.0025,0.0031,-0.0021,0.0014,0.0015,-0.0031,-0.0018,0.0032,-0.0028,-0.0024,0.0031,-0.0027,0.0039,0.0011,-0.0005,0.0042,0.0028,0.0002,-0.0017,0.0020,0.0030,-0.0026,0.0020,0.0027,-0.0015,0.0006,0.0027,0.0023,0.0005,0.0034,0.0013,0.0005,0.0033,0.0036,0.0010,0.0014,0.0040,0.0023,0.0023,0.0036,0.0008,0.0019,0.0041,0.0024,0.0017,-0.0038,0.0022,0.0018,-0.0034,0.0011,0.0005,-0.0034,0.0008,0.0015,-0.0039,0.0024,0.0007,-0.0031,0.0030,-0.0021,-0.0033,0.0038,-0.0018,-0.0018,0.0028,0.0032,-0.0028,0.0028,0.0029,0.0036,0.0029,0.0037,0.0037,0.0022,0.0028,0.0039,0.0030,0.0031,0.0034,0.0020,0.0033,0.0035,0.0030,-0.0015,0.0040,0.0029,-0.0008,0.0004,0.0040,-0.0024,-0.0007,0.0032,-0.0028,-0.0008,0.0040,-0.0026,0.0004,0.0031,-0.0027,0.0034,0.0045,0.0043,0.0039,0.0039,0.0034,0.0039,0.0047,0.0036,0.0035,0.0038,0.0040,0.0045,0.0054,0.0011,0.0027,0.0052,-0.0018,0.0016,0.0061,-0.0021,0.0028,0.0062,-0.0017,0.0015,0.0051,-0.0021,-0.0020,0.0048,-0.0025,-0.0028,0.0052,-0.0023,-0.0021,0.0054,-0.0024,-0.0027,0.0046,-0.0024,-0.0042,0.0048,0.0001,-0.0040,0.0043,-0.0009,-0.0041,0.0042,0.0000,-0.0040,0.0049,-0.0007,-0.0032,0.0044,0.0034,-0.0030,0.0037,0.0032,-0.0038,0.0045,0.0030,0.0012,0.0044,0.0046,0.0002,0.0035,0.0042,0.0013,0.0036,0.0043,0.0002,0.0042,0.0044,0.0015,0.0040,-0.0022,0.0004,0.0050,-0.0023,0.0003,0.0028,0.0038,0.0042,0.0032,0.0025,0.0042,0.0041,0.0028,-0.0008,0.0035,0.0039,-0.0019,0.0036,0.0036,-0.0008,0.0028,0.0036,-0.0043,0.0040,0.0011,-0.0041,0.0032,0.0008,-0.0035,0.0045,-0.0017,-0.0008,0.0048,-0.0026,-0.0020,0.0040,-0.0026,-0.0025,0.0040,-0.0024,-0.0029,0.0039,-0.0022,-0.0031,0.0046,-0.0022,0.0043,0.0033,0.0019,-0.0008,0.0041,0.0041,-0.0044,0.0046,0.0024,-0.0035,0.0051,-0.0016,-0.0009,0.0055,-0.0026,0.0041,0.0063,-0.0008,0.0043,0.0049,0.0030,0.0026,0.0039,-0.0018,-0.0007,0.0019,0.0033,0.0012,-0.0055,-0.0036,0.0009,-0.0053,-0.0042,0.0008,-0.0052,-0.0043,0.0003,-0.0050,-0.0042,0.0003,-0.0051,-0.0041,0.0003,0.0019,0.0035,0.0003,0.0005,0.0032,-0.0025,0.0013,-0.0009,-0.0021,0.0016,-0.0030,-0.0027,0.0031,-0.0025,-0.0027,-0.0005,-0.0006,0.0003,-0.0013,0.0029,-0.0019,-0.0003,-0.0014,-0.0006,-0.0005,-0.0009,0.0005,-0.0034,0.0022,-0.0016,-0.0031,0.0011,-0.0002,-0.0018,-0.0045,0.0021,-0.0021,-0.0035,-0.0008,-0.0035,-0.0044,0.0005,-0.0036,-0.0046,0.0004,-0.0019,-0.0044,-0.0003,-0.0043,-0.0044,0.0006,-0.0044,-0.0045,0.0009,-0.0059,-0.0006,0.0001,-0.0057,-0.0013,0.0022,-0.0061,-0.0017,0.0001,-0.0049,-0.0043,0.0015,0.0031,0.0007,-0.0010,0.0026,0.0002,-0.0010,0.0031,0.0003,0.0016,0.0026,0.0007,0.0014,-0.0024,-0.0013,-0.0001,-0.0023,-0.0016,0.0004,-0.0046,-0.0023,-0.0012,-0.0027,-0.0016,-0.0016,-0.0027,-0.0014,-0.0004,-0.0045,-0.0035,-0.0002,-0.0046,-0.0032,0.0010,-0.0061,-0.0020,0.0012,-0.0062,-0.0016,0.0017,-0.0061,-0.0021,0.0020,-0.0062,-0.0017,0.0017,-0.0062,-0.0014,0.0013,-0.0062,-0.0015,0.0018,-0.0063,-0.0014,0.0021,-0.0047,-0.0018,0.0014,-0.0061,-0.0022,0.0009,-0.0050,-0.0044,-0.0002,-0.0028,-0.0017,0.0013,-0.0046,-0.0021,0.0009,-0.0044,-0.0045,-0.0002,-0.0043,-0.0045,-0.0011,-0.0033,0.0014,-0.0025,0.0015,-0.0026,-0.0006,0.0005,0.0030,-0.0034,0.0021,0.0023,0.0043,0.0060,0.0001,0.0004,0.0058,-0.0023,-0.0032,0.0051,-0.0021,-0.0045,0.0047,0.0013,-0.0019,0.0042,0.0038,0.0024,0.0043,0.0046,0.0026,0.0036,0.0044});
			return tooth_molar_17_38_root_coordinate_6_34_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 tooth_molar_17_38 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 tooth_molar_17_38().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: \"HumanoidAnimation.Bones.tooth_molar_17_38\" 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("HumanoidAnimation.Bones.tooth_molar_17_38 self-validation test confirmation: ");
                if (!validationResults.equals("success"))
                    System.out.println();
                System.out.println(validationResults.trim());

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