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_19_36, lower left Universal Numbering System (UNS) #19, ISO 3950 standard designation #36. </p>
 <p> Related links:  source tooth_molar_19_36.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_19_36&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_19_36.x3d">tooth_molar_19_36.x3d</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> description </i> </td>
			<td> tooth_molar_19_36, lower left Universal Numbering System (UNS) #19, ISO 3950 standard designation #36 </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> 13 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/lmolr1lc.x3d">originals/lmolr1lc.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/lmolr1lr.x3d">originals/lmolr1lr.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_19_36.x3d" target="_blank">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Bones/tooth_molar_19_36.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_19_36
{
	/** Default constructor to create this object. */
	public tooth_molar_19_36 ()
	{
	  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_19_36.x3d"))
    .addMeta(new meta().setName(meta.NAME_DESCRIPTION).setContent("tooth_molar_19_36, lower left Universal Numbering System (UNS) #19, ISO 3950 standard designation #36"))
    .addMeta(new meta().setName(meta.NAME_CREATOR    ).setContent("Don Brutzman, Joe Williams, John Carlson, Damon Hernandez"))
    .addMeta(new meta().setName(meta.NAME_CREATED    ).setContent("13 March 2026"))
    .addMeta(new meta().setName(meta.NAME_MODIFIED   ).setContent("20 March 2026"))
    .addMeta(new meta().setName(meta.NAME_REFERENCE  ).setContent("originals/lmolr1lc.x3d"))
    .addMeta(new meta().setName(meta.NAME_REFERENCE  ).setContent("originals/lmolr1lr.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_19_36.x3d"))
    .addMeta(new meta().setName(meta.NAME_LICENSE    ).setContent("../license.html")))
  .setScene(new Scene()
    .addChild(new WorldInfo().setTitle("tooth_molar_19_36.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_19_36 lower left"))
    .addChild(new Transform("lmolr1lc").setTranslation(0.0232,1.5915,0.0645)
      .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_19_36_cap_geometry").setDEF("tooth_molar_19_36_cap_geometry").setCreaseAngle(1.571).setCoordIndex(gettooth_molar_19_36_cap_geometry_5_28_coordIndex())
          .setCoord(new Coordinate("tooth_molar_19_36_cap_coordinate").setPoint(gettooth_molar_19_36_cap_coordinate_6_28_point())))))
    .addChild(new Transform("lmolr1lr").setTranslation(0.0237,1.5807,0.0627)
      .addChild(new Shape()
        .setAppearance(new Appearance()
          .setMaterial(new Material().setUSE("ToothMaterial")))
        .setGeometry(new IndexedFaceSet("tooth_molar_19_36_root_geometry").setDEF("tooth_molar_19_36_root_geometry").setCreaseAngle(1.571).setCoordIndex(gettooth_molar_19_36_root_geometry_5_34_coordIndex())
          .setCoord(new Coordinate("tooth_molar_19_36_root_coordinate").setPoint(gettooth_molar_19_36_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_19_36_cap_geometry_5_28_coordIndex_1()
		{
			int[] value = {0,1,2,-1,3,4,5,-1,6,7,8,-1,6,9,7,-1,10,11,12,-1,13,14,15,-1,16,17,18,-1,19,17,20,-1,21,22,23,-1,18,24,25,-1,26,27,28,-1,29,30,31,-1,29,31,32,-1,33,34,35,-1,35,36,37,-1,38,39,40,-1,41,7,9,-1,42,43,8,-1,44,39,45,-1,46,47,48,-1,49,50,51,-1,52,51,50,-1,53,54,55,-1,56,57,58,-1,59,60,61,-1,62,20,63,-1,64,65,66,-1,67,68,69,-1,70,15,71,-1,67,72,73,-1,74,75,76,-1,77,78,79,-1,80,81,82,-1,83,84,5,-1,85,86,87,-1,88,89,90,-1,91,92,93,-1,94,95,96,-1,97,98,99,-1,95,100,96,-1,94,101,22,-1,102,103,104,-1,105,106,107,-1,108,109,110,-1,111,112,108,-1,113,112,111,-1,114,115,116,-1,117,118,119,-1,120,121,122,-1,123,124,125,-1,126,127,125,-1,125,124,126,-1,128,129,130,-1,131,129,128,-1,132,133,134,-1,135,136,137,-1,138,139,140,-1,141,142,143,-1,144,145,146,-1,77,147,148,-1,149,48,150,-1,151,86,85,-1,152,153,154,-1,155,152,156,-1,157,158,159,-1,160,161,162,-1,158,163,164,-1,165,166,167,-1,167,168,165,-1,169,120,170,-1,171,172,173,-1,174,175,176,-1,177,34,174,-1,178,179,180,-1,181,182,183,-1,184,178,185,-1,104,186,23,-1,187,109,108,-1,4,187,108,-1,53,188,189,-1,76,78,81,-1,66,190,191,-1,192,193,194,-1,45,38,195,-1,26,196,197,-1,198,199,141,-1,200,201,129,-1,202,62,203,-1,204,71,15,-1,205,16,25,-1,206,207,93,-1,208,209,25,-1,210,211,212,-1,213,192,194,-1,11,214,215,-1,11,216,214,-1,217,11,218,-1,59,219,65,-1,220,47,46,-1,77,82,78,-1,221,108,112,-1,98,90,89,-1,89,99,98,-1,181,222,223,-1,174,34,33,-1,124,224,225,-1,226,227,228,-1,118,229,230,-1,231,232,233,-1,234,235,236,-1,237,238,164,-1,163,85,237,-1,239,240,241,-1,164,238,153,-1,238,242,153,-1,154,243,244,-1,245,246,193,-1,3,5,84,-1,247,202,248,-1,6,249,250,-1,251,252,253,-1,210,143,182,-1,195,197,254,-1,255,131,256,-1,31,257,32,-1,128,198,256,-1,125,133,132,-1,121,53,122,-1,232,258,111,-1,136,104,103,-1,103,259,136,-1,97,99,146,-1,260,105,237,-1,98,100,261,-1,261,262,90,-1,207,262,93,-1,105,260,87,-1,92,95,263,-1,145,144,259,-1,74,204,14,-1,72,67,69,-1,60,264,265,-1,266,267,268,-1,269,264,63,-1,64,66,203,-1,59,61,68,-1,270,271,272,-1,273,274,150,-1,216,275,276,-1,41,218,246,-1,44,245,39,-1,218,9,217,-1,197,277,254,-1,138,278,279,-1,280,281,282,-1,282,252,283,-1,208,200,284,-1,206,208,284,-1,82,148,285,-1,21,23,186,-1,19,18,17,-1,13,70,17,-1,286,287,79,-1,248,28,27,-1,3,84,80,-1,288,289,290,-1,291,236,235,-1,235,292,291,-1,3,80,21,-1,293,248,202,-1,293,294,248,-1,17,269,20,-1,287,147,79,-1,13,15,70,-1,21,186,3,-1,206,284,129,-1,282,283,27,-1,280,282,26,-1,295,138,279,-1,296,181,183,-1,197,196,277,-1,297,298,182,-1,218,41,9,-1,43,277,196,-1,246,218,215,-1,216,276,214,-1,276,299,300,-1,270,301,271,-1,50,302,47,-1,117,59,68,-1,64,203,63,-1,20,269,63,-1,64,60,65,-1,268,231,266,-1,60,265,61,-1,72,69,303,-1,67,73,304,-1,14,286,74,-1,258,116,113,-1,75,78,76,-1,83,305,306,-1,259,103,145,-1,263,307,92,-1,87,308,105,-1,207,88,262,-1,261,91,262,-1,98,97,100,-1,87,255,308,-1,3,186,187,-1,259,137,136,-1,232,111,309,-1,121,310,53,-1,125,213,133,-1,256,131,128,-1,122,53,311,-1,31,312,257,-1,255,313,131,-1,182,298,210,-1,314,275,216,-1,6,315,249,-1,79,147,77,-1,21,94,22,-1,245,42,246,-1,154,316,243,-1,238,317,242,-1,153,152,164,-1,239,318,240,-1,319,241,320,-1,319,239,241,-1,237,164,163,-1,234,167,235,-1,233,266,231,-1,170,118,230,-1,226,321,227,-1,225,126,124,-1,33,322,174,-1,223,177,181,-1,223,34,177,-1,89,323,99,-1,112,305,221,-1,112,306,305,-1,82,81,78,-1,324,71,204,-1,65,60,59,-1,215,218,11,-1,213,194,325,-1,277,45,254,-1,212,141,210,-1,208,326,209,-1,93,326,206,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=2 */
		private int[] gettooth_molar_19_36_cap_geometry_5_28_coordIndex_2()
		{
			int[] value = {205,25,209,-1,15,14,204,-1,203,191,202,-1,129,284,200,-1,198,141,212,-1,280,26,197,-1,45,195,254,-1,42,41,246,-1,191,203,66,-1,53,189,54,-1,108,221,4,-1,104,23,102,-1,184,297,178,-1,179,327,180,-1,177,174,179,-1,35,34,223,-1,174,322,175,-1,171,173,328,-1,170,230,169,-1,164,329,158,-1,161,330,162,-1,159,331,157,-1,155,156,318,-1,152,154,156,-1,85,163,151,-1,3,187,4,-1,248,27,283,-1,77,148,82,-1,13,16,287,-1,146,99,144,-1,208,206,326,-1,141,143,210,-1,139,142,140,-1,312,280,197,-1,119,332,219,-1,131,206,129,-1,129,201,130,-1,125,132,123,-1,120,122,170,-1,117,333,118,-1,114,116,258,-1,258,113,111,-1,111,108,334,-1,334,108,110,-1,261,90,98,-1,186,104,187,-1,94,96,101,-1,95,92,91,-1,260,237,85,-1,94,263,95,-1,91,93,262,-1,88,90,262,-1,260,85,87,-1,83,221,305,-1,83,306,84,-1,80,335,81,-1,78,75,79,-1,115,74,76,-1,204,74,336,-1,70,71,337,-1,67,304,68,-1,62,63,203,-1,58,338,56,-1,53,55,311,-1,50,49,302,-1,52,249,51,-1,276,273,299,-1,276,300,214,-1,42,8,7,-1,41,42,7,-1,38,45,39,-1,35,37,339,-1,35,339,33,-1,296,222,181,-1,30,295,31,-1,26,282,27,-1,340,341,252,-1,18,25,16,-1,201,200,340,-1,20,62,19,-1,16,13,17,-1,314,274,275,-1,6,8,294,-1,294,8,342,-1,106,105,308,-1,343,290,289,-1,343,344,290,-1,173,345,328,-1,346,345,173,-1,347,348,349,-1,347,350,348,-1,235,351,292,-1,351,235,352,-1,353,354,240,-1,355,354,353,-1,356,180,357,-1,356,358,180,-1,19,202,247,-1,202,19,62,-1,307,285,148,-1,307,263,285,-1,359,360,361,-1,359,362,360,-1,341,283,252,-1,341,363,283,-1,279,280,312,-1,280,279,281,-1,295,312,31,-1,295,279,312,-1,364,222,296,-1,222,364,365,-1,366,367,368,-1,366,369,367,-1,325,193,370,-1,193,325,194,-1,275,273,276,-1,275,274,273,-1,299,133,213,-1,299,273,133,-1,310,49,53,-1,49,310,302,-1,371,372,373,-1,372,371,374,-1,375,231,268,-1,375,114,231,-1,115,336,74,-1,115,376,336,-1,13,286,14,-1,286,13,287,-1,103,101,145,-1,103,102,101,-1,86,377,87,-1,86,378,377,-1,100,146,96,-1,97,146,100,-1,375,324,376,-1,303,324,375,-1,121,272,379,-1,272,121,120,-1,257,368,32,-1,257,366,368,-1,201,380,130,-1,201,251,380,-1,378,151,381,-1,378,86,151,-1,331,382,157,-1,331,135,382,-1,211,106,212,-1,107,106,211,-1,383,99,323,-1,99,383,144,-1,315,294,293,-1,315,6,294,-1,148,205,307,-1,148,147,205,-1,311,384,332,-1,311,55,384,-1,385,318,239,-1,385,155,318,-1,165,319,166,-1,165,386,319,-1,387,160,162,-1,309,160,387,-1,266,388,360,-1,266,233,388,-1,371,362,359,-1,362,371,58,-1,56,389,229,-1,56,338,389,-1,267,72,268,-1,267,73,72,-1,267,57,73,-1,230,389,390,-1,230,229,389,-1,391,392,390,-1,392,391,393,-1,393,394,392,-1,394,393,395,-1,328,396,171,-1,396,328,397,-1,398,399,400,-1,398,396,399,-1,150,401,134,-1,401,150,48,-1,402,321,403,-1,402,400,321,-1,228,349,348,-1,228,227,349,-1,224,404,225,-1,224,403,404,-1,37,404,339,-1,37,225,404,-1,223,365,405,-1,222,365,223,-1,185,242,184,-1,185,316,242,-1,406,302,310,-1,406,47,302,-1,215,300,370,-1,300,215,214,-1,106,255,256,-1,106,308,255,-1,264,407,265,-1,264,269,407,-1,29,405,365,-1,29,32,405,-1,196,28,342,-1,26,28,196,-1,243,185,358,-1,185,243,316,-1,358,178,180,-1,185,178,358,-1,177,178,297,-1,177,179,178,-1,174,327,179,-1,174,176,327,-1,228,175,322,-1,228,348,175,-1,225,367,126,-1,367,225,37,-1,400,227,321,-1,400,399,227,-1,408,400,402,-1,408,398,400,-1,408,270,394,-1,301,270,408,-1,270,392,394,-1,270,169,392,-1,390,169,230,-1,169,390,392,-1,409,390,389,-1,390,409,391,-1,333,229,118,-1,333,56,229,-1,338,409,389,-1,338,373,409,-1,362,57,267,-1,362,58,57,-1,410,360,388,-1,360,410,361,-1,411,168,412,-1,411,165,168,-1,388,168,410,-1,388,412,168,-1,411,330,413,-1,162,330,411,-1,165,413,386,-1,411,413,165,-1,385,413,414,-1,413,385,386,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=3 */
		private int[] gettooth_molar_19_36_cap_geometry_5_28_coordIndex_3()
		{
			int[] value = {155,414,329,-1,414,155,385,-1,353,318,156,-1,318,353,240,-1,151,158,157,-1,151,163,158,-1,70,269,17,-1,70,407,269,-1,137,144,383,-1,137,259,144,-1,219,117,119,-1,59,117,219,-1,382,323,381,-1,382,383,323,-1,199,128,130,-1,198,128,199,-1,251,278,380,-1,253,278,251,-1,366,195,38,-1,257,195,366,-1,192,125,127,-1,192,213,125,-1,379,310,121,-1,379,406,310,-1,303,268,72,-1,303,375,268,-1,111,160,309,-1,111,334,160,-1,110,331,161,-1,110,135,331,-1,326,92,209,-1,93,92,326,-1,146,101,96,-1,146,145,101,-1,377,255,87,-1,255,377,313,-1,221,5,4,-1,221,83,5,-1,113,81,335,-1,113,116,81,-1,75,286,79,-1,74,286,75,-1,324,337,71,-1,415,337,324,-1,407,337,265,-1,407,70,337,-1,336,324,204,-1,324,336,376,-1,304,56,333,-1,73,56,304,-1,56,73,57,-1,190,55,54,-1,190,384,55,-1,188,249,315,-1,51,249,188,-1,50,220,52,-1,220,50,47,-1,406,416,401,-1,379,416,406,-1,370,213,325,-1,300,213,370,-1,300,299,213,-1,44,277,43,-1,44,45,277,-1,368,37,36,-1,368,367,37,-1,47,401,48,-1,47,406,401,-1,252,281,253,-1,282,281,252,-1,139,364,417,-1,364,139,30,-1,340,251,201,-1,252,251,340,-1,361,418,359,-1,418,361,419,-1,10,216,11,-1,314,216,10,-1,11,250,12,-1,217,250,11,-1,248,342,28,-1,294,342,248,-1,327,357,180,-1,420,357,327,-1,421,353,244,-1,421,355,353,-1,320,351,352,-1,422,351,320,-1,423,349,424,-1,423,347,349,-1,425,173,426,-1,425,346,173,-1,2,343,0,-1,343,2,344,-1,328,427,397,-1,345,427,328,-1,348,428,175,-1,350,428,348,-1,354,241,240,-1,354,429,241,-1,430,358,356,-1,430,243,358,-1,175,431,176,-1,428,431,175,-1,247,18,19,-1,247,363,18,-1,52,10,12,-1,220,10,52,-1,285,94,21,-1,94,285,263,-1,372,1,432,-1,372,2,1,-1,25,200,208,-1,24,200,25,-1,24,363,341,-1,24,18,363,-1,138,30,139,-1,30,138,295,-1,417,296,183,-1,296,417,364,-1,38,369,366,-1,38,40,369,-1,43,342,8,-1,43,196,342,-1,46,149,314,-1,46,48,149,-1,49,188,53,-1,49,51,188,-1,54,191,190,-1,54,189,191,-1,58,373,338,-1,373,58,371,-1,265,415,61,-1,415,265,337,-1,376,114,375,-1,376,115,114,-1,378,88,377,-1,89,88,378,-1,91,100,95,-1,91,261,100,-1,109,104,136,-1,187,104,109,-1,237,317,238,-1,237,107,317,-1,107,237,105,-1,160,110,161,-1,160,334,110,-1,232,114,258,-1,231,114,232,-1,122,118,170,-1,119,118,122,-1,132,401,416,-1,132,134,401,-1,127,40,192,-1,369,40,127,-1,312,195,257,-1,197,195,312,-1,140,130,380,-1,199,130,140,-1,381,89,378,-1,89,381,323,-1,137,382,135,-1,137,383,382,-1,142,417,143,-1,139,417,142,-1,212,256,198,-1,256,212,106,-1,217,6,250,-1,6,217,9,-1,244,156,154,-1,156,244,353,-1,329,152,155,-1,329,164,152,-1,320,166,319,-1,166,320,352,-1,331,330,161,-1,331,159,330,-1,329,159,158,-1,159,329,414,-1,162,412,387,-1,162,411,412,-1,166,235,167,-1,166,352,235,-1,419,236,288,-1,419,234,236,-1,374,359,418,-1,359,374,371,-1,374,2,372,-1,374,344,2,-1,232,387,233,-1,232,309,387,-1,1,433,432,-1,433,1,426,-1,393,433,172,-1,393,391,433,-1,171,393,172,-1,395,393,171,-1,171,398,395,-1,398,171,396,-1,396,424,399,-1,396,397,424,-1,301,402,434,-1,301,408,402,-1,124,434,224,-1,124,123,434,-1,339,226,33,-1,339,404,226,-1,35,405,36,-1,35,223,405,-1,143,183,182,-1,417,183,143,-1,435,297,184,-1,298,297,435,-1,317,184,242,-1,435,184,317,-1,335,112,113,-1,112,335,306,-1,32,36,405,-1,368,36,32,-1,341,200,24,-1,341,340,200,-1,209,307,205,-1,92,307,209,-1,315,189,188,-1,315,293,189,-1,39,192,40,-1,245,192,39,-1,192,245,193,-1,116,76,81,-1,116,115,76,-1,84,335,80,-1,84,306,335,-1,107,435,317,-1,107,211,435,-1,298,211,210,-1,298,435,211,-1,181,297,182,-1,181,177,297,-1,322,226,228,-1,33,226,322,-1,403,226,404,-1,403,321,226,-1,403,434,402,-1,224,434,403,-1,399,349,227,-1,399,424,349,-1,123,301,434,-1,123,271,301,-1,408,395,398,-1,408,394,395,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=4 */
		private int[] gettooth_molar_19_36_cap_geometry_5_28_coordIndex_4()
		{
			int[] value = {169,272,120,-1,272,169,270,-1,332,65,219,-1,384,65,332,-1,66,384,190,-1,384,66,65,-1,426,172,433,-1,172,426,173,-1,432,391,409,-1,391,432,433,-1,233,412,388,-1,233,387,412,-1,373,432,409,-1,373,372,432,-1,344,418,290,-1,418,344,374,-1,234,361,410,-1,361,234,419,-1,167,410,168,-1,410,167,234,-1,414,330,159,-1,330,414,413,-1,239,386,385,-1,386,239,319,-1,154,242,316,-1,153,242,154,-1,220,314,10,-1,46,314,220,-1,199,142,141,-1,199,140,142,-1,157,381,151,-1,157,382,381,-1,313,206,131,-1,313,207,206,-1,380,138,140,-1,278,138,380,-1,369,126,367,-1,369,127,126,-1,123,416,271,-1,123,132,416,-1,122,332,119,-1,332,122,311,-1,110,136,135,-1,110,109,136,-1,207,377,88,-1,207,313,377,-1,23,101,102,-1,23,22,101,-1,61,69,68,-1,69,61,415,-1,69,324,303,-1,415,324,69,-1,360,267,266,-1,362,267,360,-1,264,64,63,-1,60,64,264,-1,68,333,117,-1,333,68,304,-1,202,189,293,-1,189,202,191,-1,271,379,272,-1,271,416,379,-1,314,150,274,-1,314,149,150,-1,246,370,193,-1,246,215,370,-1,245,43,42,-1,245,44,43,-1,134,273,150,-1,273,134,133,-1,365,30,29,-1,365,364,30,-1,279,253,281,-1,253,279,278,-1,419,290,418,-1,290,419,288,-1,21,82,285,-1,21,80,82,-1,16,147,287,-1,16,205,147,-1,249,12,250,-1,249,52,12,-1,248,363,247,-1,248,283,363,-1,176,420,327,-1,431,420,176,-1,430,244,243,-1,430,421,244,-1,429,320,241,-1,429,422,320,-1,291,288,236,-1,291,289,288,-1,397,423,424,-1,427,423,397,-1,1,425,426,-1,0,425,1,-1};
			return value;
		}

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

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=2 */
		private int[] gettooth_molar_19_36_root_geometry_5_34_coordIndex_2()
		{
			int[] value = {251,265,264,-1,66,265,251,-1,262,239,291,-1,262,261,239,-1,259,292,257,-1,292,259,237,-1,112,254,69,-1,112,253,254,-1,293,266,268,-1,269,266,293,-1,264,252,251,-1,264,294,252,-1,295,68,69,-1,68,295,296,-1,293,246,245,-1,293,297,246,-1,298,259,256,-1,259,298,299,-1,154,300,157,-1,301,300,154,-1,261,241,239,-1,261,302,241,-1,299,237,259,-1,237,299,228,-1,303,236,252,-1,236,303,234,-1,250,304,248,-1,250,305,304,-1,246,220,229,-1,246,306,220,-1,307,228,299,-1,228,307,226,-1,308,225,242,-1,225,308,223,-1,241,71,221,-1,241,309,71,-1,306,110,220,-1,306,76,110,-1,79,219,234,-1,219,79,217,-1,41,233,5,-1,215,233,41,-1,309,72,71,-1,309,310,72,-1,311,210,226,-1,210,311,212,-1,312,209,223,-1,209,312,207,-1,206,102,205,-1,102,206,101,-1,44,41,42,-1,118,41,44,-1,72,34,111,-1,72,35,34,-1,212,188,199,-1,212,187,188,-1,313,197,207,-1,197,313,195,-1,194,42,40,-1,44,42,194,-1,33,193,36,-1,193,33,185,-1,203,119,21,-1,203,34,119,-1,181,187,314,-1,187,181,189,-1,32,185,33,-1,185,32,184,-1,315,39,316,-1,40,39,315,-1,148,189,181,-1,189,148,147,-1,9,317,106,-1,317,9,318,-1,22,18,20,-1,119,18,22,-1,189,179,177,-1,189,147,179,-1,319,129,320,-1,319,175,129,-1,321,174,96,-1,321,172,174,-1,1,171,170,-1,322,171,1,-1,126,169,131,-1,142,169,126,-1,168,305,322,-1,168,167,305,-1,300,135,132,-1,321,135,300,-1,190,161,163,-1,319,161,190,-1,103,296,170,-1,103,68,296,-1,92,159,104,-1,157,159,92,-1,174,308,242,-1,308,174,173,-1,19,323,20,-1,19,151,323,-1,324,148,180,-1,148,324,146,-1,325,9,11,-1,318,9,325,-1,315,144,145,-1,315,326,144,-1,27,137,30,-1,27,327,137,-1,328,91,186,-1,91,328,329,-1,127,142,126,-1,142,127,140,-1,135,99,133,-1,99,135,95,-1,89,131,87,-1,126,131,89,-1,320,24,85,-1,320,129,24,-1,128,203,21,-1,203,128,191,-1,183,330,316,-1,183,331,330,-1,98,14,23,-1,98,121,14,-1,202,156,153,-1,202,332,156,-1,173,333,308,-1,173,334,333,-1,304,5,233,-1,304,124,5,-1,159,134,158,-1,134,159,132,-1,91,335,26,-1,91,329,335,-1,139,184,32,-1,184,139,336,-1,141,331,183,-1,141,143,331,-1,176,337,130,-1,176,338,337,-1,339,180,340,-1,180,339,324,-1,179,152,150,-1,179,341,152,-1,12,176,13,-1,176,12,338,-1,233,248,304,-1,233,231,248,-1,249,231,120,-1,249,248,231,-1,13,175,192,-1,176,175,13,-1,301,162,172,-1,162,301,160,-1,171,165,164,-1,171,250,165,-1,169,80,166,-1,169,108,80,-1,100,168,0,-1,166,168,100,-1,103,133,99,-1,164,133,103,-1,162,334,173,-1,162,161,334,-1,134,249,158,-1,249,134,165,-1,178,19,86,-1,178,150,19,-1,14,192,128,-1,13,192,14,-1,340,182,342,-1,182,340,180,-1,107,30,29,-1,107,27,30,-1,38,145,31,-1,38,194,145,-1,342,198,195,-1,198,342,182,-1,188,178,200,-1,188,177,178,-1,195,317,342,-1,195,313,317,-1,75,28,206,-1,75,29,28,-1,84,333,85,-1,312,333,84,-1,198,311,196,-1,311,198,314,-1,201,105,310,-1,201,200,105,-1,191,163,332,-1,190,163,191,-1,193,204,217,-1,204,193,82,-1,332,160,156,-1,163,160,332,-1,197,307,208,-1,307,197,196,-1,211,201,343,-1,211,199,201,-1,2,205,102,-1,2,213,205,-1,43,216,118,-1,303,216,43,-1,218,109,344,-1,218,204,109,-1,345,343,302,-1,345,211,343,-1,153,222,70,-1,155,222,153,-1,209,298,224,-1,298,209,208,-1,227,211,345,-1,227,210,211,-1,295,214,213,-1,295,230,214,-1,216,232,215,-1,294,232,216,-1,219,346,235,-1,346,219,218,-1,238,345,263,-1,238,227,345,-1,240,222,94,-1,240,221,222,-1,347,225,224,-1,347,46,225,-1,244,346,268,-1,244,235,346,-1,229,254,247,-1,254,229,230,-1,232,120,231,-1,15,120,232,-1,323,98,97,-1,151,98,323,-1,11,339,325,-1,11,324,339,-1,122,324,11,-1,122,146,324,-1,337,146,122,-1,337,149,146,-1,338,149,337,-1,12,149,338,-1,12,341,149,-1,12,152,341,-1,121,152,12,-1,121,151,152,-1,151,121,98,-1,348,247,255,-1,348,245,247,-1,347,258,272,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=3 */
		private int[] gettooth_molar_19_36_root_geometry_5_34_coordIndex_3()
		{
			int[] value = {258,347,256,-1,238,260,274,-1,260,238,263,-1,275,94,93,-1,275,240,94,-1,243,267,67,-1,267,243,244,-1,349,269,348,-1,349,271,269,-1,112,6,51,-1,6,112,7,-1,258,64,63,-1,64,258,257,-1,262,114,260,-1,350,114,262,-1,276,104,123,-1,276,93,104,-1,137,125,136,-1,327,125,137,-1,327,127,125,-1,335,127,327,-1,335,140,127,-1,335,143,140,-1,329,143,335,-1,328,143,329,-1,336,143,328,-1,336,331,143,-1,139,331,336,-1,139,330,331,-1,139,326,330,-1,138,326,139,-1,144,326,138,-1,113,273,63,-1,113,351,273,-1,350,59,114,-1,352,59,350,-1,290,54,116,-1,290,123,54,-1,57,352,350,-1,115,352,57,-1,351,286,273,-1,351,284,286,-1,282,353,349,-1,283,353,282,-1,280,349,353,-1,280,271,349,-1,278,281,277,-1,281,278,270,-1,48,65,279,-1,48,50,65,-1,123,16,54,-1,123,17,16,-1,291,350,262,-1,57,350,291,-1,292,64,257,-1,288,64,292,-1,8,286,6,-1,286,8,47,-1,282,348,255,-1,282,349,348,-1,65,267,278,-1,65,67,267,-1,251,67,66,-1,67,251,243,-1,240,291,239,-1,275,291,240,-1,237,274,292,-1,274,237,238,-1,46,272,47,-1,272,46,347,-1,269,245,348,-1,269,293,245,-1,15,294,264,-1,15,232,294,-1,230,69,254,-1,69,230,295,-1,268,297,293,-1,268,346,297,-1,256,224,298,-1,256,347,224,-1,94,155,92,-1,94,222,155,-1,263,302,261,-1,263,345,302,-1,346,344,297,-1,346,218,344,-1,303,294,216,-1,252,294,303,-1,213,296,295,-1,296,213,2,-1,297,306,246,-1,297,344,306,-1,208,299,298,-1,299,208,307,-1,156,301,154,-1,160,301,156,-1,302,309,241,-1,302,343,309,-1,344,76,306,-1,344,109,76,-1,43,234,303,-1,234,43,79,-1,305,124,304,-1,305,167,124,-1,343,310,309,-1,343,201,310,-1,196,226,307,-1,226,196,311,-1,308,312,223,-1,308,333,312,-1,167,3,124,-1,167,80,3,-1,76,74,110,-1,76,78,74,-1,36,217,79,-1,217,36,193,-1,35,310,105,-1,72,310,35,-1,314,212,311,-1,212,314,187,-1,84,207,312,-1,207,84,313,-1,28,101,206,-1,101,28,87,-1,25,77,90,-1,78,77,25,-1,313,106,317,-1,313,84,106,-1,200,86,105,-1,200,178,86,-1,182,314,198,-1,314,182,181,-1,145,40,315,-1,194,40,145,-1,186,90,83,-1,90,186,91,-1,342,318,340,-1,342,317,318,-1,157,132,159,-1,157,300,132,-1,161,320,334,-1,161,319,320,-1,135,96,95,-1,135,321,96,-1,0,322,1,-1,168,322,0,-1,142,108,169,-1,142,141,108,-1,322,250,171,-1,322,305,250,-1,301,321,300,-1,172,321,301,-1,192,319,190,-1,175,319,192,-1,96,242,45,-1,96,174,242,-1,158,120,17,-1,158,249,120,-1,170,2,1,-1,170,296,2,-1,97,20,323,-1,22,20,97,-1,149,179,147,-1,179,149,341,-1,325,340,318,-1,340,325,339,-1,326,316,330,-1,315,316,326,-1,336,186,184,-1,186,336,328,-1,26,327,27,-1,26,335,327,-1,136,89,88,-1,89,136,125,-1,316,81,183,-1,81,316,39,-1,334,85,333,-1,334,320,85,-1,203,332,202,-1,203,191,332,-1,122,130,337,-1,130,122,10,-1};
			return value;
		}
		/** Large attribute array: IndexedFaceSet DEF='tooth_molar_19_36_cap_geometry' coordIndex field, scene-graph level=5, element #28, 3384 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_19_36_cap_geometry_5_28_coordIndex()
		{
			MFInt32 tooth_molar_19_36_cap_geometry_5_28_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(gettooth_molar_19_36_cap_geometry_5_28_coordIndex_1()))
				.append(new MFInt32(gettooth_molar_19_36_cap_geometry_5_28_coordIndex_2()))
				.append(new MFInt32(gettooth_molar_19_36_cap_geometry_5_28_coordIndex_3()))
				.append(new MFInt32(gettooth_molar_19_36_cap_geometry_5_28_coordIndex_4()));
			return tooth_molar_19_36_cap_geometry_5_28_coordIndex;
		}
		/** Large attribute array: Coordinate DEF='tooth_molar_19_36_cap_coordinate' point field, scene-graph level=6, element #28, 1308 total numbers made up of 436 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_19_36_cap_coordinate_6_28_point()
		{
			MFVec3f tooth_molar_19_36_cap_coordinate_6_28_point = new MFVec3f(new double[] {-0.0043,-0.0047,-0.0001,-0.0044,-0.0045,-0.0001,-0.0044,-0.0045,-0.0001,-0.0012,0.0029,-0.0042,-0.0014,0.0029,-0.0044,-0.0015,0.0029,-0.0043,-0.0012,0.0023,0.0013,-0.0010,0.0025,0.0012,-0.0009,0.0025,0.0010,-0.0011,0.0025,0.0016,-0.0015,0.0024,0.0025,-0.0013,0.0026,0.0023,-0.0015,0.0024,0.0022,-0.0018,0.0023,-0.0008,-0.0020,0.0026,-0.0011,-0.0021,0.0025,-0.0009,-0.0013,0.0025,-0.0008,-0.0019,0.0023,-0.0006,-0.0013,0.0026,-0.0005,-0.0018,0.0023,-0.0005,-0.0020,0.0025,-0.0005,-0.0007,0.0024,-0.0024,-0.0005,0.0026,-0.0025,-0.0006,0.0026,-0.0028,-0.0002,0.0031,-0.0004,-0.0003,0.0031,-0.0007,0.0007,0.0034,0.0010,-0.0008,0.0026,0.0004,-0.0008,0.0026,0.0006,0.0021,0.0037,0.0015,0.0022,0.0036,0.0012,0.0020,0.0037,0.0014,0.0023,0.0040,0.0024,0.0039,0.0008,0.0041,0.0041,0.0007,0.0029,0.0034,0.0029,0.0037,0.0026,0.0040,0.0036,0.0024,0.0042,0.0046,0.0016,0.0045,0.0032,0.0012,0.0044,0.0038,0.0015,0.0046,0.0041,-0.0006,0.0033,0.0028,0.0001,0.0033,0.0023,0.0004,0.0032,0.0020,0.0010,0.0041,0.0034,0.0013,0.0043,0.0032,-0.0018,0.0026,0.0036,-0.0030,0.0033,0.0039,-0.0019,0.0026,0.0047,-0.0033,0.0037,0.0030,-0.0029,0.0032,0.0032,-0.0027,0.0034,0.0029,-0.0017,0.0025,0.0022,-0.0040,0.0041,0.0028,-0.0035,0.0044,0.0019,-0.0038,0.0045,0.0019,-0.0051,0.0028,0.0002,-0.0049,0.0025,-0.0010,-0.0050,0.0012,-0.0013,-0.0043,0.0043,0.0002,-0.0039,0.0043,0.0003,-0.0041,0.0037,-0.0008,-0.0019,0.0025,-0.0003,-0.0028,0.0036,0.0002,-0.0039,0.0044,0.0006,-0.0040,0.0045,0.0008,-0.0038,0.0045,0.0009,-0.0045,0.0035,-0.0010,-0.0044,0.0039,-0.0008,-0.0043,0.0037,-0.0010,-0.0022,0.0024,-0.0007,-0.0031,0.0034,-0.0011,-0.0045,0.0036,-0.0013,-0.0047,0.0030,-0.0010,-0.0031,0.0038,-0.0017,-0.0028,0.0037,-0.0022,-0.0031,0.0040,-0.0025,-0.0015,0.0023,-0.0020,-0.0027,0.0037,-0.0025,-0.0017,0.0023,-0.0017,-0.0011,0.0026,-0.0026,-0.0024,0.0041,-0.0032,-0.0011,0.0025,-0.0021,-0.0022,0.0035,-0.0046,-0.0015,0.0028,-0.0040,0.0033,0.0036,-0.0032,0.0027,0.0039,-0.0029,0.0027,0.0038,-0.0026,0.0022,0.0039,-0.0025,0.0021,0.0040,-0.0027,0.0012,0.0038,-0.0026,0.0004,0.0031,-0.0023,0.0001,0.0031,-0.0020,0.0012,0.0039,-0.0021,-0.0005,0.0025,-0.0024,0.0002,0.0029,-0.0023,0.0000,0.0030,-0.0025,0.0011,0.0040,-0.0032,0.0012,0.0038,-0.0029,0.0013,0.0042,-0.0033,0.0004,0.0031,-0.0024,-0.0001,0.0034,-0.0031,-0.0002,0.0035,-0.0034,0.0002,0.0040,-0.0039,-0.0001,0.0036,-0.0040,0.0035,0.0036,-0.0026,0.0032,0.0043,-0.0019,0.0036,0.0037,-0.0019,-0.0020,0.0034,-0.0050,-0.0012,0.0031,-0.0050,-0.0011,0.0032,-0.0053,-0.0030,0.0041,-0.0049,-0.0028,0.0040,-0.0047,-0.0030,0.0044,-0.0039,-0.0039,0.0044,-0.0028,-0.0037,0.0043,-0.0027,-0.0031,0.0045,-0.0037,-0.0045,0.0042,0.0001,-0.0048,0.0044,0.0015,-0.0046,0.0046,0.0015,-0.0040,0.0038,0.0037,-0.0038,0.0039,0.0036,-0.0045,0.0043,0.0027,-0.0008,0.0029,0.0057,0.0001,0.0037,0.0058,-0.0001,0.0039,0.0056,0.0010,0.0043,0.0052,0.0008,0.0044,0.0051,0.0024,0.0047,-0.0010,0.0021,0.0047,-0.0011,0.0020,0.0045,-0.0001,0.0024,0.0045,-0.0018,-0.0008,0.0030,0.0056,-0.0007,0.0031,0.0051,-0.0010,0.0029,0.0052,0.0003,0.0041,-0.0049,0.0002,0.0040,-0.0046,0.0004,0.0041,-0.0045,0.0019,0.0037,0.0009,0.0023,0.0037,0.0010,0.0020,0.0039,0.0007,0.0030,0.0043,-0.0001,0.0025,0.0039,0.0007,0.0032,0.0035,0.0007,0.0007,0.0043,-0.0039,0.0006,0.0042,-0.0037,0.0010,0.0041,-0.0034,-0.0014,0.0022,-0.0016,-0.0008,0.0023,-0.0021,-0.0017,0.0025,0.0044,-0.0014,0.0026,0.0047,0.0025,0.0044,-0.0039,0.0037,0.0008,-0.0047,0.0045,0.0008,-0.0037,0.0047,-0.0005,-0.0037,0.0026,0.0004,-0.0053,0.0038,-0.0008,-0.0045,0.0016,0.0044,-0.0048,0.0022,0.0039,-0.0050,0.0008,0.0033,-0.0056,-0.0021,0.0032,-0.0055,-0.0011,0.0030,-0.0055,-0.0022,0.0027,-0.0057,0.0030,0.0039,-0.0043,0.0035,0.0024,-0.0047,-0.0017,-0.0002,-0.0058,-0.0013,-0.0021,-0.0053,-0.0028,-0.0021,-0.0051,-0.0033,0.0001,-0.0053,-0.0046,0.0025,0.0039,-0.0047,0.0041,0.0027,-0.0036,-0.0020,0.0038,-0.0045,-0.0025,0.0028,-0.0041,-0.0043,0.0021,0.0045,-0.0011,0.0026,0.0038,-0.0033,0.0033,0.0045,-0.0033,0.0022,0.0041,0.0009,0.0014,0.0051,-0.0006,0.0003,0.0047,-0.0008,0.0014,0.0050,-0.0033,0.0000,0.0039,0.0014,0.0015,0.0042,0.0024,0.0007,0.0038,0.0022,0.0012,0.0051,0.0010,-0.0009,0.0052,-0.0006,-0.0010,-0.0010,0.0029,-0.0041,-0.0012,0.0030,-0.0045,-0.0027,0.0036,0.0024,-0.0024,0.0037,0.0016,-0.0036,0.0044,0.0016,-0.0025,0.0038,0.0012,0.0006,0.0044,0.0048,0.0005,0.0042,0.0044,0.0004,0.0042,0.0047,0.0017,0.0042,0.0022,0.0005,0.0034,0.0015,0.0015,0.0038,0.0014,0.0026,0.0046,-0.0009,0.0023,0.0044,0.0000,0.0010,0.0041,-0.0008,0.0018,0.0044,-0.0002,-0.0014,0.0027,0.0003,-0.0026,0.0036,0.0004,-0.0032,0.0038,-0.0015,-0.0012,0.0024,-0.0015,0.0022,0.0045,-0.0018,0.0022,0.0041,-0.0023,0.0011,0.0042,-0.0011,-0.0003,0.0031,-0.0014,0.0036,0.0038,-0.0001,0.0038,0.0038,-0.0010,0.0033,0.0044,-0.0009,-0.0001,0.0039,0.0053,-0.0005,0.0035,0.0043,-0.0005,0.0036,0.0040,-0.0013,0.0026,0.0031,-0.0012,0.0025,0.0019,-0.0007,0.0033,0.0033,-0.0043,0.0046,0.0012,-0.0017,0.0026,0.0025,-0.0021,0.0035,-0.0047,0.0035,0.0023,0.0019,0.0035,0.0025,0.0028,0.0007,0.0032,0.0059,0.0015,0.0038,0.0055,0.0025,0.0006,0.0051,0.0015,-0.0016,0.0049,0.0026,-0.0016,0.0047,-0.0051,0.0030,0.0014,-0.0050,0.0029,0.0027,-0.0041,0.0042,-0.0029,-0.0036,0.0043,-0.0040,-0.0041,0.0035,-0.0045,-0.0039,-0.0024,-0.0043,-0.0026,-0.0038,-0.0049,-0.0034,-0.0039,-0.0040,0.0038,0.0029,-0.0032,0.0042,0.0022,-0.0035,0.0014,-0.0014,-0.0054,0.0027,-0.0030,-0.0047,0.0016,-0.0032,-0.0049,0.0050,0.0008,-0.0023,0.0051,-0.0030,-0.0024,0.0046,-0.0030,-0.0035,0.0009,0.0043,0.0039,-0.0004,0.0036,0.0034,-0.0012,0.0024,0.0003,-0.0010,0.0024,0.0004,-0.0016,0.0025,0.0019,-0.0014,0.0023,0.0018,0.0015,0.0039,0.0005,0.0008,0.0035,0.0004,0.0015,0.0037,0.0007,0.0011,0.0040,0.0022,0.0027,0.0041,-0.0023,0.0027,0.0045,-0.0018,0.0020,0.0043,0.0022,-0.0033,0.0045,-0.0039,0.0004,0.0042,-0.0041,0.0033,0.0035,-0.0029,0.0006,0.0033,-0.0024,0.0012,0.0038,-0.0023,-0.0005,0.0025,-0.0022,-0.0029,0.0036,-0.0001,-0.0032,0.0035,-0.0007,-0.0047,0.0030,-0.0033,-0.0048,0.0028,-0.0022,-0.0044,0.0040,-0.0021,-0.0021,0.0025,-0.0006,-0.0037,0.0024,0.0048,-0.0024,0.0027,0.0053,-0.0035,0.0033,0.0046,-0.0007,0.0032,0.0049,-0.0014,0.0026,0.0038,-0.0014,0.0026,0.0035,-0.0005,0.0033,0.0045,0.0008,0.0037,0.0022,0.0017,0.0038,0.0009,0.0017,0.0036,0.0010,0.0013,0.0036,0.0011,0.0014,0.0035,0.0009,0.0008,0.0033,0.0007,-0.0008,0.0026,0.0004,0.0016,0.0043,-0.0010,-0.0007,0.0023,-0.0022,-0.0019,0.0025,-0.0014,-0.0016,0.0022,-0.0012,-0.0041,-0.0044,-0.0026,-0.0040,-0.0047,-0.0026,-0.0041,-0.0044,-0.0026,-0.0033,-0.0042,-0.0040,-0.0025,-0.0041,-0.0048,-0.0013,0.0026,0.0008,-0.0011,0.0024,0.0007,0.0018,0.0036,0.0011,0.0036,0.0021,0.0015,0.0046,0.0012,0.0004,0.0044,0.0025,-0.0001,-0.0004,0.0036,0.0049,-0.0001,0.0038,0.0046,-0.0024,0.0022,0.0053,-0.0033,0.0036,0.0033,-0.0043,0.0039,-0.0013,-0.0046,0.0036,-0.0007,-0.0026,0.0039,-0.0047,-0.0022,0.0037,-0.0043,-0.0006,0.0025,-0.0020,0.0029,0.0040,-0.0024,-0.0032,0.0040,-0.0050,-0.0036,0.0038,0.0034,-0.0042,0.0044,0.0024,0.0017,0.0038,0.0013,0.0025,0.0041,-0.0023,-0.0016,0.0024,0.0033,-0.0014,0.0025,0.0013,0.0050,-0.0007,-0.0025,0.0044,0.0024,-0.0020,0.0026,-0.0010,-0.0050,0.0002,-0.0017,-0.0055,0.0004,-0.0033,-0.0051,0.0014,0.0004,0.0055,0.0039,-0.0013,0.0037,0.0020,0.0045,-0.0036,-0.0040,0.0038,-0.0013,0.0002,0.0042,0.0047,0.0012,0.0041,-0.0018,0.0047,-0.0033,0.0011,-0.0032,-0.0040,0.0027,0.0026,0.0023,-0.0053,-0.0007,0.0027,-0.0057,0.0004,0.0039,-0.0051,-0.0043,0.0046,0.0016,-0.0047,0.0039,0.0001,-0.0020,0.0034,-0.0053,-0.0023,0.0040,-0.0036,-0.0034,0.0039,-0.0017,-0.0032,0.0033,-0.0010,-0.0051,0.0014,-0.0001,0.0030,0.0032,0.0045,0.0009,0.0038,-0.0002,0.0003,0.0034,0.0000,-0.0009,0.0025,0.0009,-0.0043,-0.0046,-0.0013,-0.0044,-0.0044,-0.0013,-0.0031,-0.0043,0.0026,-0.0040,-0.0046,0.0021,0.0013,-0.0036,0.0040,0.0027,-0.0034,0.0039,0.0013,-0.0033,0.0041,0.0027,-0.0037,0.0038,-0.0010,-0.0037,-0.0051,-0.0011,-0.0034,-0.0051,0.0037,-0.0030,-0.0043,0.0027,-0.0032,-0.0047,0.0037,-0.0033,-0.0042,0.0052,-0.0034,-0.0014,0.0049,-0.0036,0.0000,0.0052,-0.0032,-0.0014,-0.0049,-0.0006,-0.0022,-0.0049,0.0012,-0.0029,-0.0048,-0.0006,-0.0030,-0.0050,0.0012,-0.0021,-0.0009,0.0026,0.0003,0.0027,0.0032,0.0013,0.0027,0.0033,0.0016,0.0019,0.0046,0.0033,0.0019,0.0045,0.0044,0.0022,0.0044,0.0034,0.0017,0.0047,0.0043,0.0002,0.0041,0.0046,-0.0051,-0.0006,-0.0014,-0.0049,-0.0024,-0.0004,-0.0051,-0.0005,-0.0003,-0.0048,-0.0025,-0.0014,-0.0041,0.0042,-0.0019,-0.0038,0.0040,-0.0019,0.0025,0.0039,-0.0025,0.0025,0.0040,-0.0028,-0.0032,0.0034,0.0044,0.0018,0.0040,0.0007,0.0022,0.0046,-0.0038,0.0015,0.0046,-0.0045,0.0014,0.0045,-0.0043,-0.0038,0.0045,0.0018,0.0014,0.0003,-0.0058,0.0000,0.0000,-0.0058,-0.0035,0.0036,-0.0052,-0.0045,0.0019,-0.0042,-0.0051,0.0016,0.0011,-0.0051,0.0015,0.0024,-0.0051,-0.0005,0.0022,-0.0047,0.0013,0.0036,-0.0047,-0.0005,0.0034,-0.0040,0.0009,0.0045,-0.0038,-0.0002,0.0043,-0.0018,-0.0018,0.0044,-0.0015,-0.0036,0.0035,-0.0020,-0.0002,0.0050,-0.0004,-0.0016,0.0048,-0.0005,0.0002,0.0054,-0.0022,0.0028,0.0050,-0.0005,0.0016,0.0057,0.0011,0.0024,0.0059,0.0021,0.0029,0.0054,0.0027,0.0036,0.0026,-0.0031,0.0033,0.0042,-0.0021,0.0025,-0.0007,-0.0022,0.0012,0.0052,-0.0052,-0.0004,0.0007,-0.0043,-0.0003,-0.0043,-0.0020,0.0014,-0.0058,-0.0036,0.0020,-0.0053,-0.0004,0.0015,-0.0059,0.0011,0.0021,-0.0059,-0.0041,0.0036,-0.0011,-0.0023,0.0029,0.0052,0.0029,0.0033,0.0011,-0.0046,-0.0026,-0.0022,-0.0045,-0.0026,-0.0028,0.0047,-0.0036,0.0010,0.0046,-0.0033,-0.0034,0.0004,-0.0036,-0.0051,-0.0003,-0.0036,0.0040,-0.0003,-0.0033,0.0041,-0.0042,-0.0046,0.0012,-0.0043,-0.0044,0.0013,-0.0015,-0.0038,0.0034,0.0037,-0.0035,0.0032,0.0016,-0.0035,-0.0048,0.0051,-0.0033,-0.0024,0.0044,-0.0036,0.0021,-0.0049,-0.0023,0.0003,-0.0048,-0.0025,0.0018,-0.0006,0.0025,0.0057,0.0045,0.0026,-0.0009});
			return tooth_molar_19_36_cap_coordinate_6_28_point;
		}
		/** Large attribute array: IndexedFaceSet DEF='tooth_molar_19_36_root_geometry' coordIndex field, scene-graph level=5, element #34, 2728 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_19_36_root_geometry_5_34_coordIndex()
		{
			MFInt32 tooth_molar_19_36_root_geometry_5_34_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(gettooth_molar_19_36_root_geometry_5_34_coordIndex_1()))
				.append(new MFInt32(gettooth_molar_19_36_root_geometry_5_34_coordIndex_2()))
				.append(new MFInt32(gettooth_molar_19_36_root_geometry_5_34_coordIndex_3()));
			return tooth_molar_19_36_root_geometry_5_34_coordIndex;
		}
		/** Large attribute array: Coordinate DEF='tooth_molar_19_36_root_coordinate' point field, scene-graph level=6, element #34, 1062 total numbers made up of 354 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_19_36_root_coordinate_6_34_point()
		{
			MFVec3f tooth_molar_19_36_root_coordinate_6_34_point = new MFVec3f(new double[] {-0.0005,-0.0043,-0.0029,-0.0013,-0.0027,-0.0021,-0.0018,-0.0027,-0.0025,0.0030,-0.0052,-0.0032,0.0033,-0.0052,-0.0034,0.0038,-0.0039,-0.0024,-0.0044,0.0047,0.0003,-0.0040,0.0030,-0.0001,-0.0041,0.0029,0.0006,0.0004,-0.0076,0.0003,0.0006,-0.0075,0.0002,0.0005,-0.0076,0.0003,0.0014,-0.0075,0.0002,0.0014,-0.0074,0.0001,0.0016,-0.0074,0.0002,0.0048,0.0017,-0.0004,0.0047,0.0040,0.0001,0.0044,0.0039,0.0012,0.0024,-0.0068,0.0012,0.0018,-0.0074,0.0008,0.0018,-0.0074,0.0006,0.0022,-0.0068,0.0005,0.0018,-0.0074,0.0004,0.0017,-0.0074,0.0003,-0.0002,-0.0070,0.0002,0.0012,-0.0056,-0.0059,0.0015,-0.0061,-0.0057,0.0012,-0.0062,-0.0056,0.0003,-0.0059,-0.0047,0.0005,-0.0057,-0.0052,0.0011,-0.0063,-0.0053,0.0024,-0.0061,-0.0053,0.0023,-0.0061,-0.0055,0.0029,-0.0055,-0.0055,0.0029,-0.0054,0.0013,0.0028,-0.0055,0.0017,0.0031,-0.0049,-0.0053,0.0034,-0.0049,-0.0050,0.0031,-0.0056,-0.0052,0.0029,-0.0059,-0.0040,0.0032,-0.0058,-0.0042,0.0042,-0.0038,-0.0027,0.0035,-0.0051,-0.0038,0.0039,-0.0034,-0.0041,0.0035,-0.0050,-0.0044,-0.0035,0.0010,0.0009,-0.0039,0.0009,0.0017,-0.0042,0.0029,0.0015,0.0041,0.0075,-0.0016,0.0045,0.0058,-0.0006,0.0042,0.0058,-0.0017,-0.0040,0.0048,-0.0009,-0.0045,0.0061,-0.0008,-0.0038,0.0066,-0.0022,0.0045,0.0057,0.0003,0.0046,0.0075,-0.0006,0.0039,0.0072,0.0039,0.0032,0.0054,0.0043,0.0034,0.0054,0.0034,0.0008,0.0072,0.0058,-0.0008,0.0072,0.0058,-0.0008,0.0048,0.0051,-0.0036,0.0065,0.0044,-0.0042,0.0045,0.0037,-0.0036,0.0045,0.0042,0.0034,0.0058,-0.0025,0.0043,0.0041,-0.0019,0.0035,0.0040,-0.0024,-0.0032,0.0010,-0.0010,-0.0033,0.0011,-0.0017,0.0035,-0.0023,0.0023,0.0033,-0.0023,0.0029,0.0032,-0.0040,0.0024,-0.0010,-0.0039,-0.0044,0.0004,-0.0051,-0.0057,0.0000,-0.0053,-0.0051,0.0006,-0.0035,-0.0053,0.0015,-0.0049,-0.0059,0.0011,-0.0050,-0.0059,0.0034,-0.0034,-0.0045,0.0021,-0.0054,-0.0031,0.0027,-0.0059,-0.0039,0.0020,-0.0049,-0.0058,0.0021,-0.0055,-0.0059,-0.0012,-0.0059,0.0008,-0.0010,-0.0059,0.0005,0.0022,-0.0067,0.0016,0.0004,-0.0059,-0.0044,0.0010,-0.0063,-0.0050,0.0012,-0.0064,-0.0049,0.0017,-0.0056,-0.0059,0.0017,-0.0061,-0.0057,0.0037,0.0019,0.0022,0.0039,0.0038,0.0025,0.0039,0.0018,0.0028,-0.0037,0.0029,0.0003,-0.0027,0.0011,0.0009,0.0017,-0.0074,0.0004,0.0017,-0.0074,0.0003,-0.0037,0.0029,0.0001,0.0002,-0.0055,-0.0036,-0.0001,-0.0055,-0.0040,-0.0010,-0.0042,-0.0032,-0.0026,0.0010,-0.0007,0.0042,0.0039,0.0017,0.0027,-0.0055,0.0022,-0.0004,-0.0070,0.0004,0.0008,-0.0056,-0.0057,0.0020,-0.0060,-0.0039,0.0012,-0.0034,-0.0052,-0.0004,-0.0037,-0.0051,0.0032,-0.0039,0.0019,-0.0038,0.0031,-0.0010,-0.0045,0.0062,0.0039,0.0006,0.0050,0.0055,0.0032,0.0073,0.0050,0.0047,0.0074,0.0004,-0.0036,0.0049,-0.0020,0.0041,-0.0035,-0.0035,0.0024,-0.0067,0.0008,0.0043,0.0016,0.0003,0.0016,-0.0075,0.0002,0.0007,-0.0076,0.0002,0.0041,0.0056,0.0016,0.0033,-0.0039,-0.0022,0.0013,-0.0064,-0.0049,0.0013,-0.0064,-0.0047,0.0014,-0.0064,-0.0048,0.0021,-0.0067,0.0003,0.0001,-0.0069,0.0001,0.0007,-0.0075,0.0001,0.0007,-0.0060,-0.0042,0.0015,0.0031,0.0010,-0.0012,0.0028,0.0005,0.0016,0.0031,0.0009,-0.0012,0.0028,0.0006,0.0012,-0.0064,-0.0050,0.0012,-0.0063,-0.0053,0.0023,-0.0062,-0.0053,0.0022,-0.0062,-0.0054,0.0015,-0.0064,-0.0048,0.0019,-0.0063,-0.0046,0.0014,-0.0064,-0.0046,0.0019,-0.0064,-0.0047,0.0024,-0.0062,-0.0051,0.0025,-0.0062,-0.0051,0.0008,-0.0076,0.0009,0.0010,-0.0075,0.0011,0.0008,-0.0076,0.0010,0.0010,-0.0076,0.0009,0.0016,-0.0075,0.0011,0.0017,-0.0075,0.0008,0.0015,-0.0075,0.0010,0.0033,-0.0022,0.0018,0.0030,-0.0003,0.0018,0.0036,-0.0002,0.0022,0.0030,-0.0022,0.0016,0.0032,0.0018,0.0019,0.0040,0.0037,0.0012,0.0039,0.0037,0.0016,0.0017,-0.0024,0.0011,0.0000,-0.0043,0.0005,-0.0004,-0.0026,0.0008,0.0018,-0.0041,0.0007,-0.0009,0.0011,-0.0001,0.0018,0.0013,0.0003,0.0008,-0.0056,-0.0034,0.0021,-0.0041,-0.0022,0.0003,-0.0044,-0.0025,0.0011,-0.0061,-0.0040,-0.0021,-0.0005,-0.0012,-0.0006,-0.0004,-0.0007,-0.0008,-0.0007,0.0009,-0.0018,-0.0028,0.0009,-0.0023,-0.0008,0.0010,0.0007,-0.0068,-0.0001,0.0009,-0.0074,0.0000,0.0014,-0.0069,0.0020,0.0019,-0.0068,0.0020,0.0013,-0.0075,0.0011,0.0004,-0.0076,0.0009,0.0004,-0.0070,0.0018,-0.0001,-0.0071,0.0015,0.0021,-0.0063,-0.0046,0.0021,-0.0061,-0.0056,0.0025,-0.0055,-0.0058,0.0019,-0.0061,-0.0057,0.0006,-0.0058,0.0027,0.0013,-0.0057,0.0029,0.0009,-0.0070,0.0019,0.0017,-0.0055,0.0003,0.0025,-0.0054,0.0007,0.0015,-0.0067,0.0000,0.0026,-0.0049,-0.0057,0.0032,-0.0057,-0.0047,-0.0011,-0.0060,0.0020,-0.0015,-0.0046,0.0029,-0.0020,-0.0046,0.0026,-0.0008,-0.0060,0.0022,0.0013,-0.0043,0.0037,0.0022,-0.0056,0.0028,0.0024,-0.0042,0.0037,0.0031,-0.0039,0.0014,0.0027,-0.0055,0.0009,0.0019,-0.0034,-0.0050,-0.0012,-0.0041,-0.0037,-0.0002,-0.0054,-0.0043,-0.0021,-0.0047,0.0019,-0.0027,-0.0031,0.0032,-0.0028,-0.0030,0.0024,0.0001,-0.0028,0.0042,0.0012,-0.0027,0.0045,0.0004,-0.0044,0.0035,-0.0020,-0.0026,-0.0030,-0.0017,-0.0025,-0.0039,0.0046,-0.0022,-0.0019,0.0045,-0.0020,-0.0027,0.0027,-0.0034,-0.0049,0.0018,-0.0019,-0.0046,0.0027,-0.0019,-0.0044,-0.0011,-0.0022,-0.0046,0.0035,-0.0003,0.0034,0.0038,-0.0003,0.0027,-0.0028,-0.0030,0.0016,-0.0034,-0.0011,0.0027,-0.0034,-0.0011,0.0018,-0.0008,-0.0029,0.0040,-0.0001,-0.0008,0.0047,-0.0012,-0.0010,0.0045,-0.0018,-0.0002,-0.0042,-0.0026,-0.0004,-0.0033,0.0044,0.0001,-0.0004,0.0048,0.0001,-0.0010,0.0042,-0.0023,-0.0014,0.0036,-0.0019,-0.0039,0.0027,0.0003,-0.0040,0.0038,0.0003,-0.0034,-0.0015,0.0010,0.0046,-0.0003,0.0011,0.0049,0.0035,0.0016,0.0042,0.0037,0.0017,0.0035,0.0034,-0.0004,0.0041,-0.0030,-0.0009,0.0011,0.0036,0.0020,-0.0028,0.0025,0.0020,-0.0035,-0.0007,0.0017,-0.0041,-0.0003,0.0001,-0.0045,-0.0022,0.0015,-0.0039,0.0038,0.0000,-0.0002,0.0037,0.0015,0.0004,0.0019,-0.0002,-0.0003,0.0044,0.0020,-0.0023,0.0045,0.0003,-0.0028,-0.0035,0.0032,-0.0022,-0.0030,0.0013,-0.0028,-0.0025,0.0034,-0.0034,-0.0037,0.0008,0.0035,-0.0034,0.0028,0.0041,-0.0041,0.0028,0.0036,-0.0031,0.0009,0.0040,0.0008,0.0033,0.0053,0.0026,0.0015,0.0051,0.0024,0.0035,0.0052,0.0010,0.0013,0.0052,0.0047,0.0019,-0.0014,0.0047,0.0041,-0.0008,0.0012,0.0038,-0.0033,0.0024,0.0039,-0.0031,0.0013,0.0019,-0.0037,0.0001,0.0037,-0.0036,0.0010,0.0055,-0.0031,-0.0001,0.0054,-0.0034,-0.0042,0.0028,0.0026,-0.0044,0.0045,0.0027,-0.0006,0.0031,0.0050,0.0036,0.0037,0.0033,0.0037,0.0055,0.0026,0.0022,0.0076,-0.0029,0.0022,0.0057,-0.0031,0.0032,0.0075,-0.0024,-0.0001,0.0072,-0.0033,0.0011,0.0073,-0.0030,-0.0027,0.0051,-0.0032,-0.0030,0.0067,-0.0030,-0.0048,0.0061,0.0017,-0.0048,0.0062,0.0005,-0.0045,0.0046,0.0016,-0.0020,0.0070,0.0052,-0.0020,0.0047,0.0049,0.0042,0.0072,0.0028,0.0044,0.0072,0.0018,0.0034,0.0036,0.0042,-0.0018,0.0030,0.0047,0.0003,0.0018,-0.0039,0.0048,0.0002,-0.0020,-0.0028,-0.0005,-0.0021,-0.0027,-0.0005,-0.0016,0.0006,0.0001,-0.0044,-0.0033,-0.0011,0.0035,-0.0027,-0.0011,0.0040,0.0016,0.0016,0.0013,0.0017,-0.0004,0.0013,0.0025,-0.0005,0.0049,0.0043,-0.0019,-0.0034,0.0036,-0.0024,-0.0013,0.0021,-0.0026,-0.0012,0.0002,-0.0021,-0.0048,-0.0022,-0.0030,0.0035,-0.0025,-0.0029,0.0010,0.0031,-0.0024,0.0036,0.0030,-0.0040,0.0029,-0.0004,-0.0045,0.0033,-0.0020,-0.0046,0.0012,-0.0012,-0.0060,0.0014,0.0000,-0.0059,0.0026,0.0025,-0.0062,-0.0048,0.0023,-0.0063,-0.0047,-0.0004,-0.0071,0.0009,0.0003,-0.0076,0.0005,0.0003,-0.0057,0.0001,-0.0006,-0.0058,0.0003,-0.0011,0.0013,0.0008,-0.0001,-0.0028,-0.0016,0.0017,-0.0075,0.0006,0.0005,-0.0076,0.0008,0.0004,-0.0076,0.0005,0.0023,-0.0063,-0.0049,0.0013,-0.0063,-0.0055,0.0019,-0.0062,-0.0056,0.0017,-0.0062,-0.0056,0.0022,-0.0063,-0.0048,0.0021,-0.0063,-0.0047,0.0029,-0.0039,0.0012,-0.0018,-0.0045,0.0008,-0.0012,-0.0044,0.0006,0.0015,-0.0062,-0.0056,0.0020,-0.0062,-0.0055,0.0008,-0.0075,0.0002,0.0009,-0.0075,0.0001,0.0004,-0.0076,0.0007,0.0003,-0.0076,0.0008,0.0013,-0.0075,0.0010,-0.0004,-0.0071,0.0013,0.0024,-0.0025,0.0044,0.0009,-0.0020,-0.0047,0.0011,-0.0007,0.0050,0.0016,0.0002,-0.0042,-0.0038,0.0009,0.0027,-0.0009,0.0036,-0.0037,-0.0011,0.0053,-0.0035,0.0022,0.0052,0.0054,-0.0047,0.0062,0.0030,0.0022,0.0071,0.0056,-0.0015,0.0071,-0.0033});
			return tooth_molar_19_36_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_19_36 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_19_36().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_19_36\" 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_19_36 self-validation test confirmation: ");
                if (!validationResults.equals("success"))
                    System.out.println();
                System.out.println(validationResults.trim());

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