package HumanoidAnimation.Skeleton;

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.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 (TODO fix name). </p>
 <p> Related links:  source r_molar3r.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.Skeleton.r_molar3r&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/Skeleton/r_molar3r.x3d">r_molar3r.x3d</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> description </i> </td>
			<td> tooth (TODO fix name) </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> creator </i> </td>
			<td> Joe Williams, John Carlson, Damon Hernandez, Don Brutzman </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> translator </i> </td>
			<td> Don Brutzman </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> created </i> </td>
			<td> 5 December 2013 </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> translated </i> </td>
			<td> 5 March 2026 </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> modified </i> </td>
			<td> 8 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/Skeleton/originals/rmolar3r.x3d">originals/rmolar3r.x3d</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
			<td> *enter reference citation or relative/online url here* </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> <a href="https://www.web3d.org/x3d/content/examples/Basic/Medical" target="_blank">https://www.web3d.org/x3d/content/examples/Basic/Medical</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/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/Skeleton/r_molar3r.x3d" target="_blank">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Skeleton/r_molar3r.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/Skeleton/../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 Joe Williams, John Carlson, Damon Hernandez, Don Brutzman
 */

public class r_molar3r
{
	/** Default constructor to create this object. */
	public r_molar3r ()
	{
	  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_3_3)
  .setHead(new head()
    .addMeta(new meta().setName(meta.NAME_TITLE      ).setContent("r_molar3r.x3d"))
    .addMeta(new meta().setName(meta.NAME_DESCRIPTION).setContent("tooth (TODO fix name)"))
    .addMeta(new meta().setName(meta.NAME_CREATOR    ).setContent("Joe Williams, John Carlson, Damon Hernandez, Don Brutzman"))
    .addMeta(new meta().setName(meta.NAME_TRANSLATOR ).setContent("Don Brutzman"))
    .addMeta(new meta().setName(meta.NAME_CREATED    ).setContent("5 December 2013"))
    .addMeta(new meta().setName(meta.NAME_TRANSLATED ).setContent("5 March 2026"))
    .addMeta(new meta().setName(meta.NAME_MODIFIED   ).setContent("8 March 2026"))
    .addMeta(new meta().setName(meta.NAME_REFERENCE  ).setContent("originals/rmolar3r.x3d"))
    .addMeta(new meta().setName(meta.NAME_REFERENCE  ).setContent("*enter reference citation or relative/online url here*"))
    .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("https://www.web3d.org/x3d/content/examples/Basic/Medical"))
    .addMeta(new meta().setName(meta.NAME_REFERENCE  ).setContent("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/Skeleton/r_molar3r.x3d"))
    .addMeta(new meta().setName(meta.NAME_LICENSE    ).setContent("../license.html")))
  .setScene(new Scene()
    .addChild(new WorldInfo().setTitle("*TODO_add_title*"))
    .addChild(new TouchSensor().setDescription("tooth r_molar3r"))
    .addChild(new Transform("rmolar3r")
      .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("rmolar3r_geometry").setDEF("rmolar3r_geometry").setCreaseAngle(1.571).setCoordIndex(getrmolar3r_geometry_5_22_coordIndex())
          .setCoord(new Coordinate("rmolar3r_coordinate").setPoint(getrmolar3r_coordinate_6_22_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[] getrmolar3r_geometry_5_22_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,25,26,-1,26,7,24,-1,27,28,29,-1,30,31,32,-1,33,34,35,-1,36,37,38,-1,39,9,40,-1,41,42,43,-1,44,45,46,-1,47,6,48,-1,36,38,49,-1,50,24,51,-1,52,53,54,-1,55,56,57,-1,15,58,18,-1,59,50,53,-1,60,61,62,-1,63,64,65,-1,66,67,68,-1,7,26,69,-1,70,71,72,-1,70,73,71,-1,74,75,76,-1,77,78,79,-1,80,81,82,-1,68,83,84,-1,85,86,87,-1,88,89,90,-1,91,87,92,-1,83,82,93,-1,94,84,95,-1,96,97,98,-1,99,100,101,-1,102,103,104,-1,105,106,107,-1,108,109,110,-1,100,111,112,-1,113,114,115,-1,115,116,117,-1,118,119,120,-1,121,122,123,-1,124,125,126,-1,127,128,129,-1,130,131,132,-1,133,129,128,-1,134,135,136,-1,137,138,139,-1,140,126,125,-1,141,142,124,-1,143,144,145,-1,146,123,147,-1,148,149,150,-1,151,152,153,-1,154,155,156,-1,157,158,159,-1,160,112,161,-1,110,109,162,-1,114,107,115,-1,107,163,115,-1,101,100,160,-1,164,165,166,-1,167,110,168,-1,169,170,171,-1,172,105,114,-1,173,174,175,-1,176,177,111,-1,4,178,5,-1,82,81,179,-1,96,180,181,-1,182,183,98,-1,83,184,95,-1,185,186,44,-1,90,187,188,-1,87,173,92,-1,189,84,94,-1,65,77,79,-1,190,74,76,-1,191,62,192,-1,38,193,182,-1,7,11,8,-1,194,189,195,-1,72,62,61,-1,196,197,198,-1,199,200,201,-1,202,203,204,-1,205,206,207,-1,208,209,210,-1,211,212,213,-1,196,28,27,-1,1,214,215,-1,216,71,59,-1,217,218,219,-1,220,171,170,-1,22,21,221,-1,46,45,211,-1,41,39,222,-1,53,52,36,-1,69,26,223,-1,224,194,225,-1,226,227,228,-1,31,33,229,-1,230,231,232,-1,233,29,234,-1,235,17,13,-1,236,14,13,-1,16,237,238,-1,9,178,10,-1,6,8,4,-1,239,240,241,-1,242,243,244,-1,28,245,246,-1,246,29,28,-1,243,247,244,-1,218,248,54,-1,241,5,239,-1,3,6,4,-1,249,11,250,-1,9,39,178,-1,238,17,16,-1,251,236,13,-1,13,12,235,-1,233,252,29,-1,230,232,253,-1,33,35,229,-1,227,254,228,-1,255,224,225,-1,223,255,69,-1,36,49,53,-1,41,222,42,-1,211,213,46,-1,221,44,22,-1,170,256,220,-1,257,258,73,-1,71,259,59,-1,69,255,225,-1,196,260,28,-1,211,261,212,-1,210,262,208,-1,206,263,207,-1,202,264,203,-1,265,199,201,-1,266,267,57,-1,198,260,196,-1,61,70,72,-1,225,194,195,-1,227,226,268,-1,7,250,11,-1,193,269,182,-1,191,192,75,-1,190,76,78,-1,65,79,81,-1,189,270,84,-1,87,86,173,-1,90,91,187,-1,44,221,185,-1,84,83,95,-1,97,182,98,-1,192,96,181,-1,82,179,93,-1,4,10,178,-1,176,111,100,-1,173,175,271,-1,172,114,113,-1,171,272,169,-1,167,273,110,-1,164,274,165,-1,101,160,275,-1,110,162,276,-1,160,161,277,-1,159,278,157,-1,279,154,156,-1,151,153,280,-1,148,150,281,-1,146,121,123,-1,145,282,143,-1,124,283,141,-1,284,140,125,-1,137,285,138,-1,134,136,132,-1,286,133,128,-1,132,136,130,-1,129,287,127,-1,124,142,125,-1,121,288,122,-1,118,120,289,-1,115,163,116,-1,113,115,290,-1,100,112,160,-1,291,292,293,-1,291,294,292,-1,273,108,110,-1,105,107,114,-1,102,104,295,-1,99,176,100,-1,96,98,180,-1,94,95,296,-1,83,93,184,-1,91,92,187,-1,89,91,90,-1,85,297,86,-1,84,270,68,-1,80,65,81,-1,77,190,78,-1,74,191,75,-1,69,250,7,-1,67,80,68,-1,64,77,65,-1,60,62,191,-1,59,53,49,-1,15,285,58,-1,53,298,54,-1,24,7,51,-1,223,26,25,-1,44,46,22,-1,299,41,43,-1,39,40,222,-1,37,193,38,-1,24,50,59,-1,59,259,24,-1,34,300,35,-1,31,229,32,-1,301,302,290,-1,302,113,290,-1,252,27,29,-1,46,213,303,-1,22,304,23,-1,18,305,19,-1,17,235,15,-1,14,299,12,-1,11,249,9,-1,241,3,5,-1,260,245,28,-1,260,198,245,-1,306,307,308,-1,306,309,307,-1,310,311,312,-1,311,310,313,-1,234,246,314,-1,234,29,246,-1,315,316,317,-1,315,313,316,-1,318,243,253,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=2 */
		private int[] getrmolar3r_geometry_5_22_coordIndex_2()
		{
			int[] value = {243,318,247,-1,232,318,253,-1,232,319,318,-1,320,218,321,-1,218,320,248,-1,229,322,32,-1,229,323,322,-1,324,85,89,-1,85,324,325,-1,209,16,20,-1,209,237,16,-1,14,239,326,-1,236,239,14,-1,23,327,328,-1,329,327,23,-1,19,330,210,-1,330,19,331,-1,256,332,220,-1,256,328,332,-1,137,58,285,-1,333,58,137,-1,334,335,336,-1,334,337,335,-1,217,321,218,-1,321,217,338,-1,339,104,103,-1,339,340,104,-1,341,148,342,-1,341,149,148,-1,90,343,344,-1,343,90,188,-1,302,172,113,-1,302,345,172,-1,346,232,231,-1,346,347,232,-1,47,7,6,-1,47,51,7,-1,348,165,240,-1,349,165,348,-1,350,254,227,-1,350,60,254,-1,351,352,66,-1,353,352,351,-1,223,258,257,-1,223,25,258,-1,66,354,67,-1,352,354,66,-1,355,356,357,-1,358,356,355,-1,359,360,361,-1,362,360,359,-1,206,261,211,-1,363,261,206,-1,364,12,365,-1,235,12,364,-1,366,367,368,-1,369,367,366,-1,370,371,372,-1,371,370,102,-1,373,206,205,-1,373,363,206,-1,221,256,170,-1,221,21,256,-1,374,375,376,-1,375,374,305,-1,203,207,377,-1,203,205,207,-1,378,379,380,-1,378,324,379,-1,206,45,263,-1,206,211,45,-1,190,254,74,-1,228,254,190,-1,51,219,298,-1,51,47,219,-1,355,381,382,-1,355,383,381,-1,269,359,384,-1,193,359,269,-1,62,96,192,-1,62,72,96,-1,263,44,186,-1,263,45,44,-1,385,185,386,-1,385,186,185,-1,309,387,307,-1,314,387,309,-1,10,8,11,-1,8,10,4,-1,388,176,383,-1,388,177,176,-1,389,390,391,-1,384,390,389,-1,181,75,192,-1,75,181,392,-1,179,79,393,-1,81,79,179,-1,167,179,273,-1,93,179,167,-1,296,222,40,-1,296,291,222,-1,34,111,177,-1,34,33,111,-1,394,389,395,-1,396,389,394,-1,397,181,180,-1,181,397,398,-1,185,170,169,-1,185,221,170,-1,271,92,173,-1,92,271,106,-1,399,345,302,-1,345,399,308,-1,400,272,401,-1,400,169,272,-1,402,403,404,-1,402,398,403,-1,405,167,168,-1,406,167,405,-1,5,326,239,-1,5,178,326,-1,407,101,275,-1,408,101,407,-1,409,394,410,-1,411,394,409,-1,412,413,414,-1,412,401,413,-1,369,415,416,-1,417,415,369,-1,418,409,419,-1,420,409,418,-1,404,421,422,-1,404,423,421,-1,424,110,276,-1,168,110,424,-1,42,425,43,-1,42,293,425,-1,112,30,161,-1,112,31,30,-1,426,407,427,-1,428,407,426,-1,366,330,429,-1,366,368,330,-1,430,158,157,-1,430,414,158,-1,431,426,432,-1,433,426,431,-1,434,418,435,-1,436,418,434,-1,437,421,438,-1,439,421,437,-1,440,152,151,-1,440,424,152,-1,441,236,251,-1,441,348,236,-1,277,442,443,-1,277,161,442,-1,145,117,282,-1,444,117,145,-1,376,445,446,-1,376,375,445,-1,447,157,278,-1,116,157,447,-1,448,449,450,-1,432,449,448,-1,288,279,156,-1,435,279,288,-1,451,452,453,-1,438,452,451,-1,153,454,455,-1,152,454,153,-1,456,365,457,-1,365,456,364,-1,231,442,346,-1,442,231,458,-1,459,155,460,-1,156,155,459,-1,461,462,283,-1,461,451,462,-1,280,140,463,-1,280,153,140,-1,464,445,465,-1,466,445,464,-1,447,143,282,-1,447,135,143,-1,129,467,287,-1,468,467,129,-1,141,462,469,-1,462,141,283,-1,470,471,472,-1,470,473,471,-1,474,286,475,-1,133,286,474,-1,122,476,477,-1,122,459,476,-1,464,131,130,-1,464,478,131,-1,462,479,469,-1,480,479,462,-1,481,463,482,-1,481,483,463,-1,144,484,485,-1,144,143,484,-1,486,459,460,-1,486,476,459,-1,143,134,484,-1,135,134,143,-1,139,483,481,-1,483,139,138,-1,133,468,129,-1,450,468,133,-1,278,135,447,-1,278,136,135,-1,487,237,488,-1,487,238,237,-1,153,126,140,-1,153,455,126,-1,462,453,480,-1,451,453,462,-1,460,489,490,-1,155,489,460,-1,458,443,442,-1,443,458,467,-1,487,251,238,-1,487,441,251,-1,455,491,492,-1,454,491,455,-1,452,146,453,-1,452,493,146,-1,432,489,431,-1,432,448,489,-1,282,116,447,-1,117,116,282,-1,210,368,262,-1,368,210,330,-1,432,427,449,-1,426,427,432,-1,346,161,30,-1,161,346,442,-1,43,457,365,-1,43,425,457,-1,152,276,454,-1,424,276,152,-1,438,423,452,-1,421,423,438,-1,435,419,279,-1,418,419,435,-1,369,494,367,-1,369,416,494,-1,157,163,430,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=3 */
		private int[] getrmolar3r_geometry_5_22_coordIndex_3()
		{
			int[] value = {163,157,116,-1,446,495,376,-1,496,495,446,-1,433,428,426,-1,497,428,433,-1,323,498,322,-1,323,499,498,-1,293,500,425,-1,293,292,500,-1,439,422,421,-1,501,422,439,-1,502,418,436,-1,502,420,418,-1,366,503,504,-1,366,429,503,-1,502,398,397,-1,398,502,403,-1,410,395,497,-1,394,395,410,-1,111,31,112,-1,111,33,31,-1,292,406,405,-1,294,406,292,-1,422,402,404,-1,505,402,422,-1,175,401,412,-1,175,400,401,-1,308,343,345,-1,343,308,307,-1,386,169,400,-1,386,185,169,-1,506,507,505,-1,508,507,506,-1,180,509,397,-1,180,98,509,-1,395,391,510,-1,389,391,395,-1,511,512,513,-1,511,320,512,-1,406,93,167,-1,184,93,406,-1,78,393,79,-1,78,508,393,-1,396,384,389,-1,269,384,396,-1,383,99,381,-1,383,176,99,-1,338,48,514,-1,217,48,338,-1,102,233,103,-1,370,233,102,-1,297,515,86,-1,297,377,515,-1,516,266,372,-1,266,516,267,-1,87,89,85,-1,89,87,91,-1,72,97,96,-1,71,97,72,-1,71,216,97,-1,382,517,518,-1,382,381,517,-1,248,1,54,-1,1,248,2,-1,257,255,223,-1,257,224,255,-1,257,353,224,-1,227,519,350,-1,268,519,227,-1,268,520,519,-1,521,520,268,-1,354,520,521,-1,352,520,354,-1,353,520,352,-1,353,257,520,-1,270,66,68,-1,351,66,270,-1,77,228,190,-1,64,228,77,-1,373,197,363,-1,373,522,197,-1,264,522,373,-1,264,380,522,-1,378,202,523,-1,264,378,380,-1,264,202,378,-1,465,375,58,-1,465,445,375,-1,523,324,378,-1,523,325,324,-1,375,18,58,-1,375,305,18,-1,55,27,56,-1,55,196,27,-1,524,372,266,-1,372,524,370,-1,369,504,417,-1,366,504,369,-1,15,364,285,-1,364,15,235,-1,249,40,9,-1,249,525,40,-1,215,54,1,-1,215,52,54,-1,193,362,359,-1,37,362,193,-1,382,358,355,-1,526,358,382,-1,350,61,60,-1,350,519,61,-1,67,521,63,-1,354,521,67,-1,527,348,441,-1,527,349,348,-1,47,217,219,-1,48,217,47,-1,0,34,528,-1,34,0,300,-1,444,242,529,-1,242,444,145,-1,529,290,444,-1,529,301,290,-1,149,494,530,-1,341,494,149,-1,415,340,312,-1,415,104,340,-1,298,218,54,-1,218,298,219,-1,531,337,334,-1,531,166,337,-1,208,237,209,-1,208,488,237,-1,230,485,532,-1,230,144,485,-1,46,304,22,-1,46,303,304,-1,533,220,332,-1,534,220,533,-1,429,331,533,-1,429,330,331,-1,304,329,23,-1,516,329,304,-1,15,20,16,-1,15,18,20,-1,210,20,19,-1,210,209,20,-1,324,88,379,-1,89,88,324,-1,200,522,201,-1,200,197,522,-1,35,323,229,-1,35,513,323,-1,320,535,512,-1,321,535,320,-1,347,319,232,-1,347,536,319,-1,498,336,537,-1,334,336,498,-1,315,244,150,-1,315,317,244,-1,339,314,309,-1,339,234,314,-1,316,302,301,-1,302,316,399,-1,310,308,399,-1,310,306,308,-1,246,200,199,-1,246,245,200,-1,387,265,344,-1,265,387,199,-1,312,306,310,-1,312,340,306,-1,281,318,538,-1,281,247,318,-1,317,301,529,-1,301,317,316,-1,539,540,538,-1,541,540,539,-1,499,334,498,-1,531,334,499,-1,0,511,300,-1,0,2,511,-1,297,325,204,-1,297,85,325,-1,14,41,299,-1,41,14,326,-1,57,303,213,-1,57,267,303,-1,328,503,332,-1,327,503,328,-1,305,331,19,-1,305,374,331,-1,21,328,256,-1,21,23,328,-1,63,268,64,-1,521,268,63,-1,73,259,71,-1,73,258,259,-1,336,119,541,-1,336,335,119,-1,164,321,338,-1,535,321,164,-1,234,103,233,-1,103,234,339,-1,530,416,311,-1,494,416,530,-1,88,344,265,-1,344,88,90,-1,188,345,343,-1,345,188,172,-1,30,347,346,-1,30,32,347,-1,3,48,6,-1,514,48,3,-1,240,274,241,-1,165,274,240,-1,488,120,487,-1,289,120,488,-1,520,73,70,-1,520,257,73,-1,356,214,357,-1,356,215,214,-1,361,542,518,-1,360,542,361,-1,59,38,216,-1,38,59,49,-1,69,195,250,-1,69,225,195,-1,299,365,12,-1,299,43,365,-1,543,368,367,-1,262,368,543,-1,102,544,371,-1,544,102,295,-1,264,205,203,-1,264,373,205,-1,534,376,495,-1,376,534,374,-1,253,144,230,-1,243,144,253,-1,196,363,197,-1,196,261,363,-1,196,212,261,-1,196,55,212,-1,74,60,191,-1,254,60,74,-1,63,80,67,-1,63,65,80,-1,259,25,24,-1,258,25,259,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=4 */
		private int[] getrmolar3r_geometry_5_22_coordIndex_4()
		{
			int[] value = {357,383,355,-1,357,388,383,-1,384,361,390,-1,359,361,384,-1,83,80,82,-1,68,80,83,-1,314,199,387,-1,246,199,314,-1,207,186,385,-1,207,263,186,-1,515,386,174,-1,515,385,386,-1,40,94,296,-1,525,94,40,-1,528,177,388,-1,528,34,177,-1,517,391,390,-1,517,545,391,-1,507,75,392,-1,76,75,507,-1,273,393,108,-1,179,393,273,-1,95,291,296,-1,95,294,291,-1,99,408,545,-1,99,101,408,-1,183,394,411,-1,183,396,394,-1,181,402,392,-1,181,398,402,-1,544,329,371,-1,544,327,329,-1,106,187,92,-1,187,106,105,-1,417,104,415,-1,295,104,417,-1,546,106,271,-1,106,546,107,-1,109,506,501,-1,108,506,109,-1,291,42,222,-1,291,293,42,-1,428,408,407,-1,510,408,428,-1,420,411,409,-1,509,411,420,-1,414,546,412,-1,546,414,430,-1,313,399,316,-1,310,399,313,-1,401,496,413,-1,401,272,496,-1,404,547,423,-1,404,403,547,-1,440,168,424,-1,405,168,440,-1,236,240,239,-1,348,240,236,-1,427,275,548,-1,407,275,427,-1,419,410,549,-1,409,410,419,-1,414,550,158,-1,414,413,550,-1,444,115,117,-1,290,115,444,-1,154,433,431,-1,549,433,154,-1,547,434,493,-1,547,436,434,-1,491,439,437,-1,162,439,491,-1,151,500,440,-1,500,151,551,-1,337,527,335,-1,337,349,527,-1,277,552,548,-1,277,443,552,-1,530,150,149,-1,530,315,150,-1,466,446,445,-1,550,446,466,-1,450,552,468,-1,449,552,450,-1,121,435,288,-1,434,435,121,-1,461,438,451,-1,437,438,461,-1,553,457,551,-1,457,553,456,-1,536,539,319,-1,536,537,539,-1,52,37,36,-1,215,37,52,-1,215,362,37,-1,215,360,362,-1,215,542,360,-1,215,526,542,-1,215,358,526,-1,215,356,358,-1,156,122,288,-1,156,459,122,-1,492,283,124,-1,492,461,283,-1,553,463,483,-1,553,280,463,-1,130,466,464,-1,159,466,130,-1,467,472,287,-1,467,458,472,-1,490,448,474,-1,489,448,490,-1,554,58,333,-1,58,554,465,-1,555,460,490,-1,555,486,460,-1,147,556,557,-1,123,556,147,-1,465,478,464,-1,478,465,554,-1,479,147,557,-1,480,147,479,-1,482,140,284,-1,463,140,482,-1,477,123,122,-1,477,556,123,-1,490,475,555,-1,490,474,475,-1,287,471,127,-1,472,471,287,-1,472,532,470,-1,472,230,532,-1,474,450,133,-1,448,450,474,-1,231,472,458,-1,231,230,472,-1,159,136,278,-1,159,130,136,-1,483,456,553,-1,456,483,138,-1,455,124,126,-1,455,492,124,-1,146,480,453,-1,146,147,480,-1,319,538,318,-1,539,538,319,-1,335,120,119,-1,335,527,120,-1,551,280,553,-1,551,151,280,-1,492,437,461,-1,491,437,492,-1,493,121,146,-1,493,434,121,-1,155,431,489,-1,154,431,155,-1,468,443,467,-1,552,443,468,-1,550,159,158,-1,550,466,159,-1,367,341,543,-1,367,494,341,-1,449,548,552,-1,427,548,449,-1,322,537,536,-1,322,498,537,-1,425,551,457,-1,425,500,551,-1,454,162,491,-1,276,162,454,-1,423,493,452,-1,423,547,493,-1,279,549,154,-1,419,549,279,-1,530,313,315,-1,530,311,313,-1,496,550,413,-1,496,446,550,-1,549,497,433,-1,410,497,549,-1,548,160,277,-1,275,160,548,-1,166,349,337,-1,166,165,349,-1,405,500,292,-1,405,440,500,-1,162,501,439,-1,109,501,162,-1,436,403,502,-1,403,436,547,-1,272,495,496,-1,272,171,495,-1,430,107,546,-1,107,430,163,-1,397,420,502,-1,397,509,420,-1,497,510,428,-1,395,510,497,-1,513,499,323,-1,513,512,499,-1,501,505,422,-1,506,505,501,-1,271,412,546,-1,271,175,412,-1,504,327,544,-1,504,503,327,-1,172,187,105,-1,188,187,172,-1,174,400,175,-1,174,386,400,-1,392,505,507,-1,392,402,505,-1,509,183,411,-1,98,183,509,-1,510,545,408,-1,391,545,510,-1,338,274,164,-1,338,514,274,-1,184,294,95,-1,184,406,294,-1,508,108,393,-1,508,506,108,-1,76,508,78,-1,76,507,508,-1,182,396,183,-1,182,269,396,-1,381,545,517,-1,381,99,545,-1,2,320,511,-1,2,248,320,-1,372,329,516,-1,372,371,329,-1,174,86,515,-1,86,174,173,-1,377,385,515,-1,377,207,385,-1,524,233,370,-1,524,252,233,-1,216,182,97,-1,216,38,182,-1,390,518,517,-1,361,518,390,-1,388,214,528,-1,357,214,388,-1,525,189,94,-1,195,189,525,-1,189,351,270,-1,194,351,189,-1,364,138,285,-1,456,138,364,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=5 */
		private int[] getrmolar3r_geometry_5_22_coordIndex_5()
		{
			int[] value = {56,252,524,-1,56,27,252,-1,523,204,325,-1,523,202,204,-1,543,342,558,-1,543,341,342,-1,208,289,488,-1,558,289,208,-1,342,540,118,-1,148,540,342,-1,220,495,171,-1,495,220,534,-1,55,213,212,-1,55,57,213,-1,56,266,57,-1,266,56,524,-1,295,504,544,-1,504,295,417,-1,558,262,543,-1,208,262,558,-1,195,249,250,-1,249,195,525,-1,51,53,50,-1,51,298,53,-1,518,526,382,-1,542,526,518,-1,519,70,61,-1,519,520,70,-1,224,351,194,-1,224,353,351,-1,226,64,268,-1,226,228,64,-1,527,487,120,-1,527,441,487,-1,241,514,3,-1,274,514,241,-1,0,214,1,-1,528,214,0,-1,243,145,144,-1,145,243,242,-1,201,380,379,-1,522,380,201,-1,416,312,311,-1,416,415,312,-1,148,538,540,-1,148,281,538,-1,531,164,166,-1,531,535,164,-1,541,118,540,-1,119,118,541,-1,118,558,342,-1,558,118,289,-1,533,374,534,-1,374,533,331,-1,429,332,503,-1,429,533,332,-1,303,516,304,-1,267,516,303,-1,13,238,251,-1,238,13,17,-1,41,178,39,-1,41,326,178,-1,265,379,88,-1,265,201,379,-1,377,204,203,-1,377,297,204,-1,300,513,35,-1,300,511,513,-1,512,531,499,-1,535,531,512,-1,32,536,347,-1,32,322,536,-1,537,541,539,-1,336,541,537,-1,317,242,244,-1,529,242,317,-1,281,244,247,-1,281,150,244,-1,340,309,306,-1,340,339,309,-1,307,344,343,-1,344,307,387,-1,245,197,200,-1,245,198,197,-1};
			return value;
		}
		/** Large attribute array: IndexedFaceSet DEF='rmolar3r_geometry' coordIndex field, scene-graph level=5, element #22, 4336 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 getrmolar3r_geometry_5_22_coordIndex()
		{
			MFInt32 rmolar3r_geometry_5_22_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getrmolar3r_geometry_5_22_coordIndex_1()))
				.append(new MFInt32(getrmolar3r_geometry_5_22_coordIndex_2()))
				.append(new MFInt32(getrmolar3r_geometry_5_22_coordIndex_3()))
				.append(new MFInt32(getrmolar3r_geometry_5_22_coordIndex_4()))
				.append(new MFInt32(getrmolar3r_geometry_5_22_coordIndex_5()));
			return rmolar3r_geometry_5_22_coordIndex;
		}
		/** Large attribute array: Coordinate DEF='rmolar3r_coordinate' point field, scene-graph level=6, element #22, 1677 total numbers made up of 559 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 getrmolar3r_coordinate_6_22_point()
		{
			MFVec3f rmolar3r_coordinate_6_22_point = new MFVec3f(new double[] {-0.0289,1.6142,0.0476,-0.0282,1.6147,0.0476,-0.0284,1.6141,0.0475,-0.0263,1.6133,0.0472,-0.0266,1.6133,0.047,-0.0265,1.6125,0.0468,-0.0266,1.6141,0.0471,-0.0268,1.6148,0.047,-0.0268,1.6141,0.047,-0.0266,1.6134,0.0464,-0.0267,1.6133,0.0467,-0.0268,1.6142,0.0468,-0.0269,1.6092,0.0451,-0.027,1.6093,0.0457,-0.0267,1.6105,0.046,-0.0281,1.6067,0.0438,-0.0277,1.6069,0.0445,-0.0273,1.608,0.0451,-0.0282,1.6067,0.0437,-0.0279,1.6081,0.0443,-0.0279,1.6069,0.0445,-0.0281,1.6132,0.0455,-0.0279,1.6138,0.046,-0.0277,1.6132,0.0457,-0.0267,1.6149,0.0472,-0.0266,1.615,0.0471,-0.0266,1.615,0.0469,-0.0276,1.6145,0.0472,-0.0278,1.6145,0.0473,-0.0279,1.6142,0.0473,-0.031,1.611,0.048,-0.0304,1.612,0.0481,-0.0309,1.611,0.0478,-0.0299,1.6129,0.048,-0.0294,1.6137,0.0479,-0.0297,1.6128,0.0478,-0.0275,1.6149,0.0481,-0.0277,1.6149,0.0482,-0.0273,1.6148,0.0482,-0.0263,1.6125,0.0462,-0.0265,1.6134,0.0463,-0.0264,1.6116,0.0458,-0.0262,1.6115,0.0457,-0.0264,1.6104,0.0454,-0.0281,1.6139,0.0459,-0.028,1.6143,0.0463,-0.0277,1.6142,0.0463,-0.0267,1.6142,0.0473,-0.0266,1.614,0.0473,-0.0273,1.6149,0.0479,-0.0268,1.6149,0.0473,-0.0268,1.6147,0.0472,-0.0276,1.6148,0.0477,-0.0274,1.6147,0.0476,-0.0276,1.6146,0.0476,-0.0278,1.6146,0.0471,-0.0275,1.6145,0.0471,-0.0275,1.6145,0.0469,-0.0284,1.6066,0.0436,-0.0266,1.6148,0.0476,-0.0255,1.6151,0.047,-0.0257,1.6151,0.0471,-0.0253,1.6147,0.0472,-0.0257,1.6151,0.0466,-0.0256,1.6151,0.0467,-0.0254,1.6148,0.0465,-0.0261,1.615,0.0465,-0.0259,1.6151,0.0466,-0.0259,1.6147,0.0464,-0.0266,1.615,0.0468,-0.026,1.615,0.0473,-0.0263,1.6149,0.0476,-0.0257,1.6149,0.0475,-0.0263,1.615,0.0473,-0.0252,1.6147,0.0468,-0.0243,1.614,0.047,-0.0244,1.614,0.0468,-0.0253,1.6148,0.0466,-0.0245,1.614,0.0467,-0.0245,1.614,0.0465,-0.0255,1.6147,0.0465,-0.0247,1.614,0.0464,-0.0248,1.614,0.0463,-0.0254,1.614,0.0462,-0.0258,1.6141,0.0461,-0.0293,1.6145,0.047,-0.0297,1.6141,0.0464,-0.0297,1.6141,0.0467,-0.0292,1.6144,0.0473,-0.0293,1.6145,0.0471,-0.0295,1.6141,0.0471,-0.0297,1.6141,0.0469,-0.0302,1.6136,0.0462,-0.0243,1.6132,0.046,-0.0263,1.6141,0.0463,-0.0254,1.6133,0.046,-0.0252,1.6142,0.0479,-0.0262,1.6142,0.0481,-0.0258,1.6135,0.0486,-0.0295,1.6138,0.0489,-0.03,1.6131,0.0491,-0.0299,1.6131,0.0494,-0.0276,1.6133,0.0467,-0.0279,1.6133,0.0469,-0.0281,1.6126,0.0468,-0.0307,1.6129,0.0463,-0.0307,1.6129,0.0458,-0.0312,1.6121,0.0456,-0.0235,1.6125,0.0462,-0.0231,1.6113,0.0459,-0.0233,1.6114,0.0455,-0.03,1.613,0.0486,-0.0306,1.6121,0.0487,-0.031,1.6121,0.0464,-0.0312,1.6121,0.046,-0.0315,1.6111,0.0458,-0.0317,1.6097,0.045,-0.0317,1.6098,0.0455,-0.0283,1.6068,0.047,-0.0281,1.6081,0.0472,-0.027,1.608,0.0466,-0.0242,1.6077,0.0481,-0.0265,1.6064,0.0487,-0.0241,1.6061,0.0479,-0.0232,1.6061,0.0441,-0.0235,1.6047,0.0435,-0.0235,1.6061,0.0437,-0.0327,1.6054,0.0482,-0.0324,1.6051,0.0486,-0.0322,1.607,0.0483,-0.0313,1.6068,0.0442,-0.0313,1.6057,0.0443,-0.0317,1.6059,0.0449,-0.032,1.6069,0.0488,-0.0321,1.6061,0.0454,-0.0317,1.6069,0.0451,-0.0315,1.6069,0.0447,-0.0283,1.6055,0.0436,-0.0272,1.6065,0.0435,-0.0273,1.6055,0.0433,-0.0238,1.6061,0.0434,-0.0231,1.6043,0.0442,-0.0233,1.6045,0.0438,-0.0319,1.607,0.0457,-0.0322,1.607,0.0464,-0.0316,1.6084,0.0461,-0.0231,1.6076,0.0474,-0.0232,1.606,0.0471,-0.0286,1.6069,0.0469,-0.0288,1.6082,0.0468,-0.0297,1.6083,0.0468,-0.0244,1.6091,0.0444,-0.0235,1.609,0.0445,-0.0235,1.6076,0.044,-0.0291,1.6094,0.0505,-0.0293,1.6081,0.0499,-0.0281,1.6079,0.0496,-0.0315,1.6097,0.0445,-0.0313,1.6097,0.0441,-0.0312,1.6082,0.044,-0.0307,1.6121,0.0492,-0.0312,1.611,0.0486,-0.023,1.6103,0.0456,-0.0314,1.6111,0.0453,-0.0273,1.6125,0.0477,-0.0266,1.6115,0.0472,-0.0274,1.6116,0.0478,-0.024,1.6125,0.0458,-0.0235,1.6114,0.0453,-0.0292,1.6127,0.0449,-0.0287,1.6125,0.0451,-0.0288,1.6119,0.0445,-0.0304,1.6128,0.0467,-0.0302,1.6136,0.0459,-0.03,1.6136,0.0457,-0.0305,1.6129,0.0451,-0.0296,1.6138,0.0487,-0.0295,1.6138,0.0484,-0.0265,1.6125,0.0465,-0.024,1.6132,0.0462,-0.0249,1.6133,0.0481,-0.0237,1.6132,0.0475,-0.0272,1.6143,0.0486,-0.0271,1.6134,0.0489,-0.0249,1.6133,0.0459,-0.0288,1.6134,0.0454,-0.0285,1.614,0.046,-0.0302,1.6135,0.0466,-0.0299,1.6135,0.0469,-0.0265,1.6148,0.0465,-0.0252,1.6148,0.0467,-0.0252,1.6147,0.047,-0.0245,1.6139,0.0474,-0.0277,1.6149,0.0484,-0.0265,1.615,0.0466,-0.0267,1.6148,0.0466,-0.0279,1.6146,0.0472,-0.0283,1.6146,0.0473,-0.0281,1.6146,0.0472,-0.0287,1.6142,0.0474,-0.0285,1.6145,0.0474,-0.0288,1.6145,0.0474,-0.0286,1.6147,0.0471,-0.0289,1.6146,0.0469,-0.029,1.6146,0.047,-0.0285,1.6146,0.0468,-0.0281,1.6146,0.0468,-0.0287,1.6144,0.0464,-0.0273,1.6067,0.0459,-0.0276,1.6069,0.0452,-0.0276,1.6081,0.045,-0.0278,1.6146,0.0468,-0.0279,1.6146,0.047,-0.0276,1.6145,0.0468,-0.0284,1.6149,0.0477,-0.0282,1.6149,0.0477,-0.0264,1.6148,0.0477,-0.0271,1.6139,0.0475,-0.0273,1.614,0.0476,-0.0271,1.6142,0.0475,-0.0286,1.6118,0.0446,-0.0284,1.6132,0.0456,-0.0263,1.6125,0.046,-0.0265,1.6151,0.0469,-0.0264,1.6151,0.0468,-0.0266,1.615,0.0467,-0.0258,1.6152,0.0469,-0.0258,1.6152,0.0469,-0.0256,1.6151,0.0468,-0.0302,1.612,0.0479,-0.0323,1.607,0.0466,-0.0319,1.6085,0.0473,-0.0317,1.6085,0.0471,-0.0277,1.6138,0.0471,-0.0279,1.6138,0.0472,-0.0273,1.608,0.0444,-0.0268,1.6105,0.0465,-0.0274,1.6069,0.0452,-0.0272,1.608,0.0458,-0.0266,1.6116,0.0466,-0.0265,1.6115,0.047,-0.0263,1.6125,0.0471,-0.0315,1.6084,0.0463,-0.032,1.6071,0.0465,-0.0306,1.6083,0.0466,-0.0281,1.6145,0.0473,-0.0283,1.6142,0.0474,-0.0309,1.607,0.0467,-0.0279,1.6141,0.0475,-0.0267,1.6142,0.0466,-0.0268,1.6148,0.0467,-0.027,1.6093,0.0463,-0.0276,1.6142,0.0472,-0.0321,1.6071,0.0466,-0.0256,1.6151,0.0469,-0.0264,1.6151,0.0468,-0.0284,1.6125,0.045,-0.0263,1.6151,0.0471,-0.0265,1.615,0.0472,-0.0265,1.6149,0.0474,-0.028,1.6146,0.0472,-0.0279,1.6146,0.047,-0.0276,1.608,0.0458,-0.0283,1.6143,0.0463,-0.0286,1.6147,0.0471,-0.0289,1.6144,0.0474,-0.0275,1.6142,0.0469,-0.0275,1.6142,0.0466,-0.0259,1.6152,0.0468,-0.0277,1.6144,0.0488,-0.0262,1.6147,0.0464,-0.0306,1.6129,0.0455,-0.0294,1.6119,0.0445,-0.0237,1.6125,0.0459,-0.0264,1.6125,0.0472,-0.0306,1.6121,0.0497,-0.0232,1.6103,0.0453,-0.0312,1.611,0.0491,-0.0313,1.6082,0.0444,-0.0279,1.6092,0.05,-0.0247,1.6078,0.0436,-0.0298,1.6069,0.0468,-0.0316,1.6083,0.0455,-0.0231,1.606,0.0447,-0.0238,1.6049,0.0433,-0.0281,1.6066,0.0436,-0.032,1.6049,0.0489,-0.0324,1.607,0.0478,-0.0263,1.6078,0.0491,-0.0273,1.6067,0.0462,-0.0314,1.6111,0.0461,-0.0257,1.6125,0.0458,-0.0248,1.6114,0.0453,-0.0257,1.6115,0.0455,-0.0251,1.6125,0.0457,-0.0276,1.6126,0.0465,-0.026,1.6133,0.0461,-0.0293,1.6145,0.0468,-0.0273,1.6146,0.0475,-0.0265,1.6104,0.0456,-0.0293,1.6136,0.0478,-0.0313,1.6111,0.0463,-0.0308,1.6121,0.0465,-0.0276,1.6142,0.0464,-0.0276,1.6138,0.0462,-0.0285,1.608,0.0437,-0.029,1.6126,0.047,-0.0292,1.6133,0.0472,-0.0297,1.6126,0.047,-0.0287,1.6133,0.0472,-0.0294,1.6119,0.0469,-0.0289,1.6109,0.0467,-0.0286,1.6119,0.0468,-0.0297,1.6109,0.0467,-0.0284,1.6138,0.0474,-0.0299,1.6098,0.0467,-0.0305,1.611,0.0466,-0.0307,1.6098,0.0465,-0.0309,1.607,0.0467,-0.0306,1.6084,0.0471,-0.028,1.6133,0.0476,-0.0273,1.6133,0.0477,-0.0299,1.6108,0.0477,-0.0293,1.6118,0.0478,-0.0291,1.6146,0.0472,-0.0291,1.6146,0.0471,-0.0266,1.6116,0.0462,-0.0276,1.6125,0.0458,-0.0279,1.6125,0.0453,-0.0275,1.6133,0.0461,-0.0279,1.6096,0.045,-0.0282,1.6096,0.0444,-0.0281,1.6118,0.045,-0.0283,1.6055,0.0436,-0.0279,1.6106,0.0479,-0.0279,1.6094,0.0476,-0.0281,1.6094,0.0477,-0.0277,1.6106,0.0478,-0.027,1.6133,0.0476,-0.0281,1.6133,0.047,-0.0284,1.6126,0.0468,-0.0285,1.6082,0.0467,-0.0284,1.6068,0.0469,-0.0297,1.6134,0.047,-0.0293,1.614,0.0472,-0.0302,1.6128,0.0468,-0.0315,1.6099,0.0478,-0.0314,1.6098,0.0475,-0.0266,1.6105,0.0469,-0.0267,1.6105,0.0472,-0.0258,1.6152,0.0469,-0.0263,1.615,0.0466,-0.0261,1.6152,0.0467,-0.0263,1.6151,0.0468,-0.0259,1.6152,0.0467,-0.0284,1.6149,0.048,-0.0282,1.6149,0.0478,-0.0284,1.6149,0.0479,-0.0282,1.615,0.0479,-0.0279,1.6149,0.0484,-0.028,1.615,0.0482,-0.0281,1.615,0.0484,-0.0279,1.615,0.0482,-0.0281,1.6147,0.047,-0.0272,1.608,0.0442,-0.0268,1.6093,0.0449,-0.0278,1.6108,0.046,-0.0279,1.6096,0.0459,-0.0278,1.6096,0.0457,-0.0279,1.6108,0.0462,-0.0275,1.6138,0.0469,-0.0275,1.6133,0.0465,-0.0275,1.6138,0.0467,-0.0284,1.6147,0.047,-0.0287,1.6095,0.0439,-0.0287,1.608,0.0435,-0.0289,1.6095,0.0438,-0.0291,1.6145,0.0467,-0.0286,1.6146,0.0472,-0.0289,1.6145,0.0473,-0.0286,1.6146,0.0473,-0.029,1.6145,0.0485,-0.0283,1.6149,0.0481,-0.0291,1.6145,0.0483,-0.0282,1.6145,0.0489,-0.0291,1.6141,0.046,-0.0295,1.6135,0.0454,-0.0289,1.6138,0.0474,-0.0291,1.6145,0.0481,-0.0285,1.6137,0.0494,-0.0286,1.6145,0.0488,-0.029,1.6138,0.0493,-0.0236,1.6133,0.0471,-0.0238,1.6132,0.0463,-0.0281,1.6128,0.0499,-0.0288,1.6129,0.05,-0.0279,1.6136,0.0493,-0.0245,1.6125,0.0484,-0.0234,1.6124,0.0477,-0.0301,1.6119,0.0468,-0.0299,1.6128,0.0449,-0.0303,1.612,0.0445,-0.0233,1.6125,0.0471,-0.0232,1.6113,0.048,-0.0228,1.6113,0.0472,-0.0242,1.6114,0.0452,-0.0246,1.6125,0.0456,-0.0303,1.6121,0.0501,-0.0297,1.613,0.0497,-0.0274,1.6116,0.0498,-0.0284,1.6118,0.0503,-0.0272,1.6126,0.0495,-0.0309,1.6121,0.0448,-0.0304,1.611,0.0441,-0.0311,1.611,0.0444,-0.0284,1.6119,0.0467,-0.0287,1.6109,0.0466,-0.0277,1.6118,0.0464,-0.026,1.6104,0.0496,-0.0277,1.6105,0.05,-0.0258,1.6115,0.0495,-0.0228,1.6102,0.0464,-0.0228,1.6113,0.0467,-0.0227,1.6102,0.047,-0.0234,1.6103,0.0451,-0.0258,1.6104,0.0453,-0.0305,1.6109,0.0503,-0.0309,1.611,0.05,-0.0299,1.612,0.0503,-0.0279,1.6108,0.0453,-0.0313,1.6111,0.0448,-0.0301,1.6096,0.0505,-0.0309,1.6097,0.0502,-0.0298,1.6108,0.0506,-0.0242,1.609,0.0485,-0.0261,1.6091,0.0495,-0.0241,1.6103,0.0487,-0.0229,1.609,0.0456,-0.0228,1.609,0.0461,-0.0229,1.6102,0.046,-0.0243,1.6103,0.0449,-0.0267,1.6093,0.0469,-0.0317,1.6098,0.0484,-0.0317,1.6098,0.0489,-0.0316,1.6098,0.046,-0.0294,1.608,0.0435,-0.0296,1.6096,0.0437,-0.0315,1.6083,0.0449,-0.0311,1.6084,0.0496,-0.0314,1.6098,0.0499,-0.0316,1.6085,0.0493,-0.0227,1.6076,0.0457,-0.0227,1.6089,0.0468,-0.0226,1.6075,0.0463,-0.0232,1.609,0.0448,-0.0232,1.6076,0.0443,-0.0266,1.608,0.0442,-0.026,1.6092,0.0448,-0.032,1.6085,0.0479,-0.0283,1.6065,0.0492,-0.0296,1.6067,0.0494,-0.0228,1.6076,0.0452,-0.0229,1.606,0.0452,-0.025,1.6063,0.0429,-0.0303,1.6067,0.0436,-0.0293,1.6066,0.0436,-0.0304,1.6081,0.0436,-0.032,1.6085,0.0484,-0.0319,1.6085,0.0489,-0.023,1.6041,0.045,-0.0328,1.6054,0.0468,-0.0328,1.6055,0.0474,-0.0324,1.607,0.0472,-0.0328,1.6053,0.0472,-0.0314,1.6069,0.0492,-0.0313,1.6048,0.0493,-0.0285,1.6044,0.0491,-0.0262,1.6043,0.0487,-0.0303,1.6056,0.0439,-0.0229,1.6041,0.0459,-0.0228,1.606,0.046,-0.0263,1.6053,0.043,-0.0249,1.6051,0.0428,-0.0262,1.6064,0.0432,-0.0324,1.6058,0.0461,-0.0326,1.6056,0.0466,-0.0297,1.6046,0.0493,-0.0269,1.608,0.0464,-0.0272,1.6067,0.0459,-0.0303,1.6083,0.05,-0.0306,1.6068,0.0495,-0.023,1.609,0.0451,-0.023,1.6076,0.0446,-0.023,1.609,0.0478,-0.0287,1.6097,0.0466,-0.029,1.6109,0.0441,-0.0296,1.6109,0.044,-0.0293,1.6119,0.0505,-0.0289,1.6107,0.0477,-0.0285,1.6117,0.0478,-0.0249,1.6103,0.0451,-0.0229,1.6113,0.0464,-0.0243,1.6114,0.0486,-0.0278,1.6118,0.0455,-0.0277,1.6118,0.0462,-0.0233,1.6125,0.0467,-0.0234,1.6125,0.0464,-0.0237,1.6132,0.0468,-0.0237,1.6132,0.0466,-0.0257,1.6127,0.0491,-0.0294,1.613,0.0499,-0.0286,1.6134,0.0476,-0.0283,1.6126,0.0477,-0.029,1.6127,0.0477,-0.0264,1.6133,0.0473,-0.0295,1.6141,0.0462,-0.0275,1.6138,0.0464,-0.0289,1.6145,0.0487,-0.0283,1.615,0.0482,-0.0258,1.6152,0.047,-0.0262,1.6151,0.0471,-0.0259,1.6152,0.0468,-0.0285,1.6146,0.0473,-0.0287,1.6146,0.0472,-0.0275,1.6142,0.047,-0.0267,1.6142,0.0464,-0.0281,1.615,0.048,-0.0269,1.6093,0.0471,-0.029,1.6144,0.0477,-0.0315,1.6098,0.0462,-0.029,1.6097,0.0466,-0.0276,1.6116,0.0479,-0.0327,1.6056,0.0466,-0.0282,1.6108,0.0447,-0.0288,1.6109,0.0442,-0.0275,1.6125,0.0477,-0.0303,1.6097,0.0475,-0.0292,1.6096,0.0475,-0.0297,1.6069,0.0469,-0.0295,1.6082,0.0471,-0.0286,1.6069,0.047,-0.0284,1.6081,0.0473,-0.0281,1.615,0.0481,-0.0276,1.6081,0.046,-0.0276,1.6126,0.0464,-0.0294,1.6138,0.0492,-0.0311,1.6121,0.0451,-0.023,1.6103,0.048,-0.0312,1.611,0.0495,-0.0288,1.6107,0.0504,-0.0305,1.6096,0.0437,-0.025,1.6091,0.0445,-0.0316,1.6098,0.0494,-0.0255,1.6079,0.0439,-0.0293,1.6056,0.0437,-0.0306,1.6047,0.0496,-0.0242,1.6041,0.0479,-0.0231,1.604,0.047,-0.0273,1.6067,0.0461});
			return rmolar3r_coordinate_6_22_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 r_molar3r 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 r_molar3r().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.Skeleton.r_molar3r\" 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.Skeleton.r_molar3r self-validation test confirmation: ");
                if (!validationResults.equals("success"))
                    System.out.println();
                System.out.println(validationResults.trim());

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