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

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=2 */
		private int[] getrmolr1lc_geometry_5_22_coordIndex_2()
		{
			int[] value = {165,317,164,-1,161,37,41,-1,163,39,41,-1,160,304,49,-1,176,318,319,-1,68,155,221,-1,71,70,152,-1,189,71,153,-1,87,90,245,-1,195,200,285,-1,149,151,199,-1,148,303,146,-1,143,320,144,-1,141,140,206,-1,142,138,140,-1,137,321,136,-1,133,135,322,-1,132,126,88,-1,323,324,325,-1,323,128,324,-1,128,130,324,-1,124,123,126,-1,125,326,123,-1,120,122,215,-1,36,182,34,-1,283,243,2,-1,221,220,10,-1,327,21,328,-1,113,224,114,-1,29,28,180,-1,111,329,112,-1,110,263,108,-1,106,111,104,-1,101,231,102,-1,99,330,100,-1,55,97,59,-1,66,321,94,-1,93,228,73,-1,298,16,1,-1,79,112,296,-1,299,85,87,-1,84,173,82,-1,79,296,80,-1,77,244,78,-1,75,91,73,-1,62,63,176,-1,97,57,59,-1,54,136,55,-1,160,159,53,-1,51,331,8,-1,51,184,52,-1,48,293,49,-1,157,291,256,-1,332,45,47,-1,288,290,289,-1,39,289,40,-1,163,37,36,-1,27,167,260,-1,30,32,287,-1,113,115,192,-1,29,167,27,-1,313,195,286,-1,24,333,25,-1,23,307,21,-1,20,272,172,-1,20,172,18,-1,334,306,155,-1,1,17,2,-1,9,270,273,-1,15,9,13,-1,10,220,11,-1,23,266,4,-1,2,247,0,-1,335,336,337,-1,204,338,339,-1,204,340,338,-1,341,342,343,-1,341,344,342,-1,345,134,133,-1,134,345,346,-1,128,347,129,-1,128,348,347,-1,349,350,351,-1,349,121,350,-1,352,312,202,-1,312,352,353,-1,270,117,273,-1,270,354,117,-1,282,255,281,-1,255,282,158,-1,243,334,2,-1,76,334,243,-1,278,355,356,-1,278,277,355,-1,272,170,172,-1,170,272,284,-1,354,284,268,-1,354,270,284,-1,22,179,267,-1,22,357,179,-1,358,227,359,-1,265,227,358,-1,357,21,327,-1,21,357,22,-1,360,157,218,-1,360,361,157,-1,362,181,234,-1,362,261,181,-1,167,35,260,-1,167,166,35,-1,102,316,165,-1,102,288,316,-1,102,290,288,-1,363,361,360,-1,361,363,364,-1,158,256,255,-1,157,256,158,-1,254,187,365,-1,187,254,253,-1,252,315,185,-1,252,366,315,-1,138,60,139,-1,138,61,60,-1,250,61,138,-1,319,248,176,-1,294,248,319,-1,367,368,293,-1,369,368,367,-1,236,294,96,-1,236,249,294,-1,84,370,371,-1,370,84,246,-1,241,89,242,-1,241,75,89,-1,244,171,175,-1,171,244,82,-1,212,238,372,-1,212,229,238,-1,373,95,94,-1,373,237,95,-1,140,98,206,-1,98,140,301,-1,360,101,363,-1,360,230,101,-1,261,302,164,-1,302,261,362,-1,180,109,108,-1,109,180,28,-1,232,226,374,-1,226,232,178,-1,246,375,370,-1,223,375,246,-1,376,228,229,-1,376,222,228,-1,359,225,224,-1,225,359,227,-1,104,168,105,-1,240,168,104,-1,8,13,9,-1,8,377,13,-1,309,216,211,-1,309,132,216,-1,130,378,308,-1,129,378,130,-1,379,214,380,-1,381,214,379,-1,382,381,379,-1,383,381,382,-1,382,209,383,-1,209,382,384,-1,385,384,382,-1,384,385,386,-1,210,387,388,-1,210,389,387,-1,210,384,389,-1,210,209,384,-1,390,388,387,-1,391,388,390,-1,250,392,56,-1,250,292,392,-1,393,251,394,-1,393,395,251,-1,396,278,356,-1,339,278,396,-1,396,397,205,-1,396,398,397,-1,397,311,205,-1,311,397,399,-1,400,311,399,-1,401,311,400,-1,343,401,402,-1,343,403,401,-1,404,46,405,-1,404,406,46,-1,405,148,147,-1,405,235,148,-1,145,262,151,-1,145,407,262,-1,408,201,287,-1,408,200,201,-1,195,199,200,-1,195,194,199,-1,191,194,192,-1,191,197,194,-1,191,349,196,-1,349,191,314,-1,314,121,349,-1,122,121,314,-1,90,246,245,-1,90,223,246,-1,152,295,64,-1,70,295,152,-1,287,263,408,-1,263,287,32,-1,272,268,284,-1,272,269,268,-1,78,175,174,-1,175,78,244,-1,183,274,3,-1,183,184,274,-1,186,365,187,-1,186,5,365,-1,34,261,119,-1,34,33,261,-1,295,0,247,-1,295,70,0,-1,409,239,326,-1,409,169,239,-1,169,115,114,-1,169,409,115,-1,145,150,143,-1,150,145,151,-1,145,410,407,-1,145,144,410,-1,405,410,404,-1,410,405,147,-1,341,402,320,-1,341,343,402,-1,46,235,405,-1,46,45,235,-1,399,406,400,-1,399,411,406,-1,332,208,207,-1,47,208,332,-1,160,305,304,-1,160,366,305,-1,366,52,315,-1,160,52,366,-1,205,339,396,-1,204,339,205,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=3 */
		private int[] getrmolr1lc_geometry_5_22_coordIndex_3()
		{
			int[] value = {398,356,393,-1,396,356,398,-1,389,137,387,-1,389,412,137,-1,356,395,393,-1,356,355,395,-1,413,414,335,-1,415,414,413,-1,391,322,388,-1,416,322,391,-1,373,412,386,-1,412,373,94,-1,380,132,309,-1,380,126,132,-1,325,209,310,-1,325,383,209,-1,130,381,324,-1,130,214,381,-1,366,107,305,-1,366,252,107,-1,174,306,78,-1,174,220,306,-1,6,365,5,-1,6,275,365,-1,240,169,168,-1,169,240,239,-1,376,212,211,-1,376,229,212,-1,216,370,375,-1,216,217,370,-1,374,233,232,-1,374,328,233,-1,303,362,31,-1,303,302,362,-1,363,235,45,-1,363,101,235,-1,207,98,100,-1,206,98,207,-1,319,96,294,-1,96,319,97,-1,89,85,242,-1,85,89,86,-1,371,217,296,-1,371,370,217,-1,241,17,190,-1,241,283,17,-1,319,57,97,-1,57,319,367,-1,56,390,54,-1,390,56,392,-1,53,331,51,-1,331,53,159,-1,139,48,50,-1,60,48,139,-1,257,330,99,-1,291,330,257,-1,231,290,102,-1,231,44,290,-1,44,40,289,-1,44,43,40,-1,119,165,316,-1,317,165,119,-1,31,234,32,-1,31,362,234,-1,285,358,286,-1,417,358,285,-1,109,26,110,-1,109,24,26,-1,335,416,413,-1,337,416,335,-1,155,2,334,-1,155,247,2,-1,220,271,11,-1,220,174,271,-1,281,254,418,-1,281,255,254,-1,354,4,117,-1,354,307,4,-1,419,202,198,-1,202,419,352,-1,120,350,121,-1,120,420,350,-1,323,348,128,-1,323,421,348,-1,337,345,133,-1,337,336,345,-1,342,403,343,-1,403,342,422,-1,338,278,339,-1,278,338,279,-1,335,423,336,-1,335,414,423,-1,424,204,203,-1,204,424,340,-1,425,344,341,-1,425,426,344,-1,427,134,346,-1,428,134,427,-1,347,378,129,-1,378,347,429,-1,196,351,430,-1,196,349,351,-1,3,273,117,-1,274,273,3,-1,334,78,306,-1,334,76,78,-1,390,431,391,-1,390,392,431,-1,307,268,21,-1,307,354,268,-1,179,24,109,-1,357,24,179,-1,327,24,357,-1,333,24,327,-1,265,417,264,-1,265,358,417,-1,44,230,42,-1,231,230,44,-1,260,34,182,-1,260,35,34,-1,316,36,119,-1,316,163,36,-1,42,116,43,-1,42,219,116,-1,364,45,332,-1,364,363,45,-1,355,432,395,-1,415,432,355,-1,136,96,55,-1,136,236,96,-1,13,318,14,-1,369,318,13,-1,57,293,48,-1,367,293,57,-1,12,15,63,-1,11,15,12,-1,241,91,75,-1,241,190,91,-1,371,173,84,-1,371,329,173,-1,93,238,229,-1,93,300,238,-1,305,98,301,-1,107,98,305,-1,332,100,364,-1,207,100,332,-1,25,374,226,-1,374,25,333,-1,18,329,111,-1,18,173,329,-1,375,211,216,-1,375,376,211,-1,225,178,177,-1,225,226,178,-1,90,74,223,-1,75,74,90,-1,116,158,282,-1,158,116,156,-1,125,215,122,-1,215,125,124,-1,383,324,381,-1,325,324,383,-1,372,386,385,-1,386,372,373,-1,385,379,213,-1,382,379,385,-1,388,135,210,-1,322,135,388,-1,387,54,390,-1,387,137,54,-1,392,432,431,-1,292,432,392,-1,394,138,142,-1,394,251,138,-1,59,56,55,-1,61,56,59,-1,61,250,56,-1,394,141,433,-1,394,142,141,-1,434,398,433,-1,397,398,434,-1,411,397,434,-1,399,397,411,-1,401,203,311,-1,403,203,401,-1,402,400,435,-1,402,401,400,-1,360,42,230,-1,218,42,360,-1,144,404,410,-1,144,435,404,-1,341,143,425,-1,341,320,143,-1,407,147,146,-1,407,410,147,-1,407,30,262,-1,407,146,30,-1,417,200,408,-1,200,417,285,-1,125,314,193,-1,125,122,314,-1,291,361,330,-1,291,157,361,-1,67,65,154,-1,67,249,65,-1,20,233,272,-1,20,19,233,-1,112,240,104,-1,112,79,240,-1,377,331,368,-1,377,8,331,-1,408,264,417,-1,408,263,264,-1,266,27,276,-1,27,266,267,-1,193,326,125,-1,326,193,409,-1,192,409,193,-1,409,192,115,-1,313,224,113,-1,224,313,359,-1,198,149,197,-1,198,202,149,-1,312,143,150,-1,312,425,143,-1,31,146,303,-1,30,146,31,-1,320,435,144,-1,320,402,435,-1,435,406,404,-1,435,400,406,-1,47,406,411,-1,406,47,46,-1,434,47,411,-1,434,208,47,-1,208,433,141,-1,434,433,208,-1,433,393,394,-1,398,393,433,-1,412,321,137,-1,412,94,321,-1,277,415,355,-1,277,414,415,-1,431,415,413,-1,432,415,431,-1,133,416,337,-1,133,322,416,-1,134,310,135,-1,134,428,310,-1,389,386,412,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=4 */
		private int[] getrmolr1lc_geometry_5_22_coordIndex_4()
		{
			int[] value = {389,384,386,-1,213,380,309,-1,379,380,213,-1,385,212,372,-1,385,213,212,-1,310,323,325,-1,428,323,310,-1,127,380,214,-1,127,126,380,-1,308,120,215,-1,378,120,308,-1,275,162,418,-1,280,162,275,-1,365,418,254,-1,418,365,275,-1,74,228,222,-1,74,73,228,-1,50,304,301,-1,304,50,49,-1,223,376,375,-1,223,222,376,-1,106,178,232,-1,178,106,105,-1,333,328,374,-1,328,333,327,-1,180,234,181,-1,234,180,108,-1,103,164,302,-1,103,102,164,-1,330,364,100,-1,330,361,364,-1,236,321,66,-1,321,236,136,-1,238,373,372,-1,238,237,373,-1,326,88,123,-1,239,88,326,-1,81,88,239,-1,92,300,93,-1,300,92,298,-1,85,297,77,-1,85,299,297,-1,299,83,297,-1,245,83,299,-1,112,371,296,-1,329,371,112,-1,118,189,188,-1,118,72,189,-1,154,64,295,-1,154,65,64,-1,12,69,10,-1,69,12,62,-1,369,319,318,-1,319,369,367,-1,369,377,368,-1,369,13,377,-1,159,368,331,-1,293,368,159,-1,395,292,251,-1,432,292,395,-1,183,185,315,-1,183,186,185,-1,187,257,99,-1,187,253,257,-1,219,156,116,-1,219,218,156,-1,276,260,259,-1,276,27,260,-1,37,280,38,-1,162,280,37,-1,286,359,313,-1,358,359,286,-1,265,25,227,-1,26,25,265,-1,328,269,233,-1,269,328,21,-1,413,391,431,-1,416,391,413,-1,41,282,161,-1,282,41,116,-1,418,161,281,-1,161,418,162,-1,276,4,266,-1,4,276,6,-1,430,198,196,-1,198,430,419,-1,378,420,120,-1,378,429,420,-1,427,323,428,-1,323,427,421,-1,353,425,312,-1,425,353,426,-1,422,203,403,-1,203,422,424,-1,423,277,279,-1,414,277,423,-1};
			return value;
		}
		/** Large attribute array: IndexedFaceSet DEF='rmolr1lc_geometry' coordIndex field, scene-graph level=5, element #22, 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 getrmolr1lc_geometry_5_22_coordIndex()
		{
			MFInt32 rmolr1lc_geometry_5_22_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getrmolr1lc_geometry_5_22_coordIndex_1()))
				.append(new MFInt32(getrmolr1lc_geometry_5_22_coordIndex_2()))
				.append(new MFInt32(getrmolr1lc_geometry_5_22_coordIndex_3()))
				.append(new MFInt32(getrmolr1lc_geometry_5_22_coordIndex_4()));
			return rmolr1lc_geometry_5_22_coordIndex;
		}
		/** Large attribute array: Coordinate DEF='rmolr1lc_coordinate' point field, scene-graph level=6, element #22, 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 getrmolr1lc_coordinate_6_22_point()
		{
			MFVec3f rmolr1lc_coordinate_6_22_point = new MFVec3f(new double[] {-0.0217,1.5943,0.0605,-0.022,1.5944,0.0603,-0.0225,1.5939,0.0621,-0.0218,1.5942,0.0648,-0.0222,1.5939,0.0649,-0.0219,1.5941,0.0653,-0.0221,1.5939,0.0652,-0.0212,1.594,0.064,-0.0211,1.594,0.0639,-0.0213,1.5938,0.0639,-0.0215,1.5938,0.0628,-0.0216,1.5937,0.0633,-0.0213,1.594,0.0631,-0.021,1.5939,0.0638,-0.0211,1.594,0.0636,-0.0214,1.5938,0.0637,-0.0222,1.5944,0.0604,-0.0226,1.5941,0.0617,-0.0254,1.596,0.0627,-0.0253,1.5962,0.0634,-0.0248,1.5958,0.0635,-0.024,1.595,0.0649,-0.024,1.5948,0.0652,-0.0224,1.5941,0.0649,-0.0249,1.5951,0.0655,-0.0251,1.5952,0.0654,-0.025,1.5951,0.0656,-0.0237,1.5949,0.066,-0.0247,1.5953,0.0659,-0.0243,1.5955,0.0667,-0.0256,1.5957,0.0691,-0.0251,1.596,0.0689,-0.0254,1.5959,0.0679,-0.0244,1.5959,0.0683,-0.0241,1.5958,0.0684,-0.0242,1.5956,0.0679,-0.0228,1.5951,0.0679,-0.0225,1.5948,0.0678,-0.0226,1.5948,0.0673,-0.0227,1.595,0.0688,-0.0218,1.5941,0.068,-0.0219,1.5941,0.0676,-0.0218,1.5941,0.0692,-0.0218,1.5941,0.0683,-0.0225,1.5947,0.0694,-0.0208,1.5942,0.0698,-0.0208,1.5937,0.0698,-0.0195,1.5939,0.0693,-0.0188,1.5954,0.0637,-0.0189,1.5958,0.0647,-0.0187,1.5957,0.0646,-0.0204,1.5951,0.0647,-0.0194,1.596,0.0654,-0.0193,1.5959,0.0651,-0.0185,1.5945,0.0612,-0.0188,1.5955,0.0624,-0.0184,1.5943,0.0623,-0.0189,1.5952,0.0635,-0.0187,1.595,0.0635,-0.0187,1.5951,0.0632,-0.0186,1.5951,0.0638,-0.0185,1.5945,0.0635,-0.0201,1.5953,0.0628,-0.0212,1.5941,0.0634,-0.0202,1.5959,0.0606,-0.0201,1.596,0.0608,-0.0199,1.596,0.0606,-0.0201,1.5955,0.062,-0.0205,1.5952,0.062,-0.0204,1.5952,0.0623,-0.021,1.5952,0.0602,-0.0206,1.5954,0.0598,-0.021,1.595,0.0599,-0.0236,1.5957,0.0604,-0.0239,1.5958,0.0606,-0.0238,1.5957,0.0608,-0.0227,1.594,0.0623,-0.0234,1.5944,0.0622,-0.0226,1.594,0.0625,-0.0261,1.5955,0.0621,-0.0265,1.595,0.0616,-0.0267,1.5951,0.0619,-0.0244,1.5954,0.0624,-0.0244,1.5953,0.0622,-0.0254,1.5954,0.062,-0.0236,1.5946,0.0621,-0.0243,1.5955,0.0613,-0.0244,1.5953,0.0616,-0.027,1.5944,0.0613,-0.0242,1.5956,0.0611,-0.0245,1.5957,0.0612,-0.0234,1.5955,0.0606,-0.0231,1.5951,0.0605,-0.0234,1.5955,0.0599,-0.02,1.5955,0.0595,-0.0202,1.5956,0.0596,-0.0191,1.5957,0.0626,-0.0189,1.5954,0.0632,-0.0187,1.5958,0.0672,-0.0192,1.5956,0.0673,-0.0194,1.5954,0.0681,-0.0224,1.5945,0.0701,-0.0231,1.5954,0.0698,-0.0231,1.5954,0.0701,-0.0259,1.596,0.0627,-0.0258,1.5961,0.0636,-0.0256,1.5962,0.0635,-0.019,1.5959,0.0669,-0.0252,1.5958,0.0667,-0.0249,1.5953,0.0658,-0.0252,1.5952,0.0659,-0.0256,1.596,0.0627,-0.0259,1.5956,0.0622,-0.0274,1.5939,0.0652,-0.0268,1.5953,0.0644,-0.0276,1.594,0.0644,-0.0216,1.5939,0.0678,-0.022,1.5939,0.0648,-0.0217,1.5944,0.0602,-0.0237,1.5957,0.0689,-0.0278,1.5885,0.061,-0.0283,1.5885,0.0621,-0.0282,1.5908,0.062,-0.0274,1.5937,0.061,-0.0277,1.5923,0.0608,-0.0282,1.5923,0.0622,-0.0267,1.5939,0.0598,-0.0269,1.5923,0.0598,-0.0248,1.5883,0.0596,-0.0259,1.5885,0.0598,-0.0258,1.5905,0.0595,-0.0265,1.5951,0.0613,-0.0262,1.5954,0.0602,-0.0198,1.5876,0.0605,-0.0206,1.5877,0.0596,-0.0204,1.5894,0.0594,-0.0191,1.5957,0.0616,-0.0191,1.595,0.06,-0.0181,1.5943,0.0647,-0.0185,1.5954,0.0646,-0.0184,1.5959,0.066,-0.0182,1.5944,0.0672,-0.0181,1.5945,0.0659,-0.0258,1.5899,0.0692,-0.0246,1.5919,0.07,-0.0257,1.5921,0.0696,-0.0247,1.5953,0.07,-0.0239,1.5947,0.0704,-0.0233,1.5952,0.0703,-0.0277,1.5904,0.0671,-0.0271,1.5902,0.0682,-0.0271,1.5923,0.0686,-0.0204,1.5955,0.0598,-0.0212,1.5949,0.0595,-0.0208,1.5956,0.0613,-0.0221,1.594,0.0624,-0.0214,1.5941,0.0681,-0.0202,1.5948,0.0684,-0.0215,1.5941,0.067,-0.0193,1.5958,0.0648,-0.0192,1.596,0.0653,-0.0219,1.5941,0.0668,-0.022,1.594,0.0664,-0.0227,1.5951,0.0685,-0.0238,1.5959,0.0693,-0.0234,1.5957,0.0692,-0.0245,1.5958,0.0677,-0.024,1.5952,0.0667,-0.0265,1.5959,0.0636,-0.027,1.5953,0.0635,-0.0229,1.5946,0.0638,-0.0244,1.5956,0.0627,-0.0243,1.5957,0.0634,-0.0254,1.5956,0.0622,-0.022,1.5939,0.063,-0.0229,1.5946,0.0631,-0.02,1.5953,0.063,-0.0262,1.5958,0.0644,-0.0255,1.5959,0.0645,-0.0245,1.5951,0.0656,-0.0249,1.5957,0.0667,-0.0248,1.596,0.0677,-0.0233,1.5948,0.0668,-0.0207,1.5953,0.0657,-0.0206,1.5951,0.0649,-0.0197,1.5959,0.0664,-0.0208,1.5952,0.0661,-0.0205,1.5951,0.0669,-0.0218,1.5944,0.0601,-0.0211,1.595,0.0598,-0.023,1.595,0.0611,-0.0283,1.5909,0.0648,-0.0278,1.5927,0.0649,-0.0283,1.5925,0.0636,-0.0273,1.5924,0.0659,-0.0271,1.5929,0.066,-0.0282,1.5882,0.0645,-0.0279,1.5907,0.0659,-0.0279,1.5882,0.0656,-0.0273,1.5922,0.0674,-0.0267,1.594,0.0673,-0.0266,1.5944,0.0682,-0.0277,1.5882,0.0667,-0.02,1.5875,0.0672,-0.0191,1.5872,0.0666,-0.0187,1.589,0.0673,-0.0185,1.5956,0.0672,-0.0192,1.5953,0.0682,-0.0186,1.594,0.0684,-0.0215,1.5913,0.0587,-0.0199,1.5916,0.0592,-0.0248,1.5959,0.0597,-0.0236,1.5954,0.0594,-0.024,1.5948,0.0589,-0.0258,1.5919,0.0592,-0.0279,1.591,0.0608,-0.0257,1.5959,0.0606,-0.0259,1.5954,0.0616,-0.0213,1.5941,0.0692,-0.0215,1.594,0.0689,-0.0218,1.5937,0.0629,-0.0217,1.5938,0.0625,-0.0246,1.596,0.0602,-0.0252,1.596,0.0609,-0.0264,1.595,0.0652,-0.0257,1.5954,0.0652,-0.0252,1.5954,0.0652,-0.0255,1.5952,0.0655,-0.0236,1.5956,0.06,-0.0235,1.5956,0.0596,-0.0222,1.5944,0.0697,-0.0225,1.5946,0.0696,-0.0252,1.596,0.0644,-0.025,1.5959,0.0643,-0.0251,1.5961,0.0678,-0.0224,1.5944,0.0702,-0.0193,1.5959,0.0617,-0.0212,1.5949,0.0592,-0.0221,1.5947,0.0592,-0.0268,1.5952,0.0626,-0.0264,1.5958,0.0626,-0.0231,1.5949,0.0614,-0.0232,1.5945,0.062,-0.0227,1.594,0.0621,-0.0233,1.5946,0.0625,-0.0244,1.5953,0.0619,-0.0253,1.5955,0.0618,-0.0221,1.5941,0.0619,-0.0198,1.5954,0.0628,-0.0195,1.5958,0.0618,-0.0183,1.594,0.0635,-0.0181,1.5929,0.0644,-0.0194,1.596,0.0664,-0.0205,1.5949,0.0674,-0.0216,1.594,0.0664,-0.0215,1.594,0.0667,-0.0203,1.5947,0.0677,-0.0199,1.5952,0.0675,-0.0222,1.594,0.0657,-0.0223,1.594,0.0655,-0.0236,1.5947,0.0665,-0.0247,1.5961,0.0686,-0.0262,1.5947,0.069,-0.0255,1.5955,0.0669,-0.0253,1.5952,0.066,-0.0254,1.5951,0.0657,-0.0224,1.5941,0.0651,-0.0239,1.5949,0.0655,-0.0235,1.5949,0.0645,-0.0241,1.5953,0.0643,-0.0219,1.5941,0.064,-0.0219,1.594,0.0637,-0.0242,1.5956,0.0637,-0.0214,1.5938,0.064,-0.0213,1.594,0.0642,-0.022,1.5938,0.0658,-0.0223,1.594,0.0654,-0.0188,1.587,0.0644,-0.0188,1.587,0.0644,-0.0189,1.5868,0.0644,-0.0221,1.594,0.0661,-0.0217,1.5939,0.0667,-0.0217,1.5939,0.067,-0.0227,1.5941,0.062,-0.023,1.5946,0.0641,-0.0267,1.5938,0.0664,-0.0268,1.5936,0.066,-0.0258,1.5955,0.0681,-0.0231,1.5953,0.0691,-0.0227,1.5948,0.069,-0.0228,1.5951,0.0694,-0.0199,1.5951,0.0678,-0.0182,1.5927,0.0632,-0.0191,1.5952,0.0637,-0.0194,1.5955,0.0626,-0.0209,1.5955,0.0609,-0.0259,1.5953,0.0619,-0.0236,1.5946,0.0622,-0.022,1.5945,0.06,-0.0238,1.5948,0.0621,-0.022,1.5946,0.0595,-0.0186,1.5961,0.066,-0.024,1.5959,0.0696,-0.0242,1.5958,0.0697,-0.0189,1.5961,0.0657,-0.0189,1.5961,0.0661,-0.0224,1.5938,0.0624,-0.0224,1.5941,0.0649,-0.027,1.5907,0.06,-0.0254,1.5954,0.0595,-0.0219,1.5894,0.0592,-0.0196,1.5895,0.0683,-0.027,1.5882,0.0678,-0.027,1.5937,0.0657,-0.0284,1.5909,0.0635,-0.0196,1.5959,0.0661,-0.0234,1.5956,0.0691,-0.0236,1.5957,0.0692,-0.0201,1.5949,0.0634,-0.0192,1.5953,0.0632,-0.0247,1.5899,0.0694,-0.0196,1.5958,0.0605,-0.0193,1.5891,0.0602,-0.0236,1.5882,0.0594,-0.0246,1.5901,0.0591,-0.0234,1.5898,0.059,-0.0276,1.5939,0.0625,-0.0247,1.5952,0.0652,-0.0247,1.5954,0.065,-0.0257,1.5956,0.0622,-0.0196,1.5953,0.0679,-0.0203,1.5951,0.0644,-0.0197,1.5948,0.0691,-0.0249,1.5953,0.0654,-0.0225,1.5938,0.0623,-0.0191,1.5871,0.0619,-0.0192,1.5868,0.0619,-0.0191,1.5871,0.0619,-0.019,1.5869,0.0657,-0.0189,1.5871,0.0658,-0.0192,1.5869,0.0666,-0.0245,1.5882,0.0686,-0.0229,1.5879,0.0685,-0.0229,1.5882,0.0686,-0.0245,1.5879,0.0685,-0.0199,1.5873,0.0605,-0.0207,1.5874,0.0597,-0.0259,1.5883,0.0598,-0.0248,1.588,0.0597,-0.0284,1.5883,0.0631,-0.0283,1.5882,0.0621,-0.0284,1.5881,0.0631,-0.0276,1.5879,0.0666,-0.0269,1.588,0.0677,-0.0223,1.5941,0.0648,-0.0183,1.5891,0.0641,-0.0183,1.5892,0.0648,-0.0246,1.595,0.0654,-0.0259,1.5947,0.0658,-0.0261,1.5948,0.0656,-0.021,1.5943,0.0695,-0.0201,1.5948,0.0687,-0.0249,1.5962,0.0688,-0.0209,1.5944,0.0697,-0.02,1.5949,0.0689,-0.0218,1.594,0.0658,-0.0194,1.596,0.0663,-0.0191,1.5951,0.0634,-0.02,1.595,0.0638,-0.02,1.5948,0.0635,-0.0257,1.5955,0.0617,-0.0257,1.5954,0.062,-0.0221,1.5945,0.059,-0.0211,1.5947,0.059,-0.025,1.5955,0.0652,-0.0254,1.5961,0.0607,-0.0247,1.5961,0.06,-0.0211,1.594,0.0638,-0.0269,1.5885,0.0602,-0.0243,1.5936,0.0586,-0.0258,1.5938,0.0592,-0.0246,1.5918,0.0587,-0.0228,1.593,0.0586,-0.0232,1.5915,0.0587,-0.0212,1.5929,0.0587,-0.0225,1.5942,0.0588,-0.021,1.5942,0.0588,-0.0187,1.5934,0.0603,-0.0189,1.5912,0.0602,-0.0196,1.5935,0.0592,-0.0183,1.5927,0.0616,-0.0184,1.5909,0.0615,-0.0182,1.5927,0.0624,-0.018,1.5911,0.0652,-0.0181,1.5931,0.0656,-0.0181,1.591,0.0642,-0.0184,1.589,0.0663,-0.0185,1.591,0.0679,-0.0181,1.591,0.0667,-0.0194,1.5913,0.0688,-0.0212,1.5913,0.0695,-0.0214,1.5897,0.0689,-0.0228,1.5899,0.0693,-0.0217,1.5879,0.068,-0.0227,1.5931,0.0702,-0.0226,1.594,0.0702,-0.021,1.5927,0.0697,-0.0253,1.5944,0.0699,-0.0259,1.5951,0.0671,-0.0277,1.5941,0.0636,-0.0243,1.5939,0.0704,-0.0192,1.5924,0.069,-0.0197,1.5951,0.0593,-0.0186,1.5889,0.0623,-0.0188,1.5871,0.0632,-0.0184,1.589,0.0631,-0.0187,1.5889,0.0617,-0.0259,1.5948,0.0661,-0.0218,1.5938,0.0663,-0.0279,1.5879,0.0655,-0.0278,1.5882,0.0611,-0.0236,1.5879,0.0594,-0.0217,1.5877,0.0679,-0.0189,1.5869,0.0632,-0.0201,1.5872,0.0671,-0.0259,1.5881,0.0684,-0.0259,1.5878,0.0683,-0.0222,1.5878,0.0594,-0.0221,1.5881,0.0594,-0.0269,1.5882,0.0603,-0.0281,1.5879,0.0645,-0.0183,1.5909,0.0623,-0.0181,1.5909,0.0631,-0.0181,1.593,0.0669,-0.0185,1.5928,0.0681,-0.0227,1.5917,0.0699});
			return rmolr1lc_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_molar1lc 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_molar1lc().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_molar1lc\" 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_molar1lc self-validation test confirmation: ");
                if (!validationResults.equals("success"))
                    System.out.println();
                System.out.println(validationResults.trim());

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