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

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=2 */
		private int[] getrmolr3lc_geometry_5_22_coordIndex_2()
		{
			int[] value = {69,71,311,-1,178,203,312,-1,114,70,119,-1,70,179,119,-1,217,274,66,-1,67,76,65,-1,219,313,220,-1,60,271,58,-1,55,57,314,-1,54,315,52,-1,316,43,115,-1,48,247,13,-1,44,317,45,-1,43,277,41,-1,234,318,235,-1,35,37,171,-1,236,266,174,-1,29,31,264,-1,242,319,243,-1,28,246,19,-1,18,243,27,-1,18,20,262,-1,297,15,17,-1,128,130,152,-1,136,260,258,-1,9,11,247,-1,320,6,8,-1,5,321,3,-1,292,287,163,-1,235,174,233,-1,293,322,323,-1,293,161,322,-1,324,325,326,-1,324,327,325,-1,177,328,166,-1,177,329,328,-1,330,331,332,-1,330,333,331,-1,334,139,320,-1,139,334,335,-1,336,337,338,-1,339,337,336,-1,340,131,341,-1,342,131,340,-1,252,75,254,-1,252,76,75,-1,250,343,142,-1,250,150,343,-1,143,344,345,-1,143,296,344,-1,192,256,193,-1,192,269,256,-1,14,259,261,-1,14,11,259,-1,346,248,347,-1,248,346,249,-1,229,47,230,-1,48,47,229,-1,348,349,350,-1,348,321,349,-1,181,351,244,-1,93,351,181,-1,231,34,265,-1,231,32,34,-1,238,89,241,-1,238,267,89,-1,287,268,288,-1,268,287,237,-1,303,352,353,-1,303,117,352,-1,354,38,232,-1,354,39,38,-1,241,353,238,-1,353,241,355,-1,316,240,43,-1,99,240,316,-1,25,39,354,-1,25,210,39,-1,97,64,98,-1,64,97,356,-1,312,68,178,-1,312,217,68,-1,157,105,189,-1,105,157,101,-1,278,213,50,-1,278,357,213,-1,209,225,77,-1,225,209,223,-1,207,205,310,-1,205,207,206,-1,358,359,113,-1,360,359,358,-1,308,285,309,-1,285,308,186,-1,152,361,346,-1,152,153,361,-1,269,362,256,-1,199,362,269,-1,363,55,282,-1,56,55,363,-1,96,217,312,-1,96,274,217,-1,362,4,3,-1,362,199,4,-1,364,188,187,-1,188,364,314,-1,305,32,230,-1,305,33,32,-1,365,187,189,-1,365,364,187,-1,107,110,124,-1,107,111,110,-1,276,124,182,-1,276,74,124,-1,31,26,180,-1,31,30,26,-1,360,366,359,-1,360,367,366,-1,204,179,368,-1,204,120,179,-1,369,97,307,-1,369,218,97,-1,370,218,369,-1,371,218,370,-1,218,371,219,-1,173,372,373,-1,172,372,173,-1,109,184,183,-1,109,308,184,-1,180,25,116,-1,180,26,25,-1,266,170,172,-1,170,266,171,-1,163,318,164,-1,163,288,318,-1,165,289,168,-1,289,165,164,-1,245,291,20,-1,283,291,245,-1,167,374,168,-1,374,167,375,-1,118,60,59,-1,118,159,60,-1,272,158,376,-1,158,272,222,-1,376,377,378,-1,376,158,377,-1,315,155,52,-1,315,156,155,-1,379,144,339,-1,379,380,144,-1,54,381,315,-1,54,195,381,-1,209,382,295,-1,382,209,279,-1,383,150,149,-1,383,343,150,-1,350,248,255,-1,350,349,248,-1,2,381,195,-1,2,384,381,-1,1,384,2,-1,385,348,15,-1,385,386,348,-1,387,385,138,-1,385,387,388,-1,387,345,344,-1,345,387,141,-1,143,339,144,-1,143,337,339,-1,137,320,139,-1,6,320,137,-1,388,344,389,-1,388,387,344,-1,16,255,251,-1,16,350,255,-1,384,390,381,-1,390,384,391,-1,386,321,348,-1,321,386,3,-1,9,48,134,-1,48,9,247,-1,53,377,363,-1,53,52,377,-1,380,145,144,-1,380,294,145,-1,378,52,155,-1,378,377,52,-1,377,56,363,-1,377,158,56,-1,342,132,131,-1,342,300,132,-1,300,392,121,-1,342,392,300,-1,161,121,392,-1,161,122,121,-1,118,112,119,-1,123,112,118,-1,290,20,291,-1,290,262,20,-1,164,234,289,-1,164,318,234,-1,116,91,180,-1,116,92,91,-1,116,354,117,-1,116,25,354,-1,175,373,393,-1,173,373,175,-1,394,395,393,-1,394,326,395,-1,371,366,396,-1,366,371,370,-1,239,226,240,-1,226,239,227,-1,307,71,369,-1,307,311,71,-1,359,370,397,-1,359,366,370,-1,190,398,284,-1,190,304,398,-1,183,124,110,-1,182,124,183,-1,57,188,314,-1,57,221,188,-1,187,108,189,-1,108,187,186,-1,305,101,100,-1,305,106,101,-1,399,192,191,-1,399,44,192,-1,98,214,96,-1,214,98,215,-1,368,309,204,-1,368,194,309,-1,55,126,282,-1,55,280,126,-1,94,295,382,-1,94,95,295,-1,349,347,248,-1,347,349,400,-1,245,93,90,-1,245,246,93,-1,316,85,87,-1,115,85,316,-1,401,360,358,-1,402,360,401,-1,399,279,84,-1,399,382,279,-1,77,299,78,-1,77,225,299,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=3 */
		private int[] getrmolr3lc_geometry_5_22_coordIndex_3()
		{
			int[] value = {276,357,212,-1,276,213,357,-1,75,253,254,-1,75,277,253,-1,311,203,69,-1,203,311,312,-1,220,97,218,-1,220,356,97,-1,58,222,272,-1,271,222,58,-1,210,24,403,-1,210,25,24,-1,226,277,43,-1,226,253,277,-1,232,239,352,-1,239,232,227,-1,303,355,202,-1,303,353,355,-1,197,313,372,-1,197,196,313,-1,351,153,244,-1,351,361,153,-1,148,243,319,-1,243,148,27,-1,242,262,149,-1,242,18,262,-1,321,400,349,-1,321,5,400,-1,284,103,299,-1,103,284,398,-1,128,48,229,-1,134,48,128,-1,229,129,128,-1,229,231,129,-1,384,193,257,-1,384,1,193,-1,389,296,391,-1,296,389,344,-1,330,142,343,-1,404,142,330,-1,400,135,347,-1,135,400,136,-1,392,340,405,-1,392,342,340,-1,339,406,379,-1,339,336,406,-1,139,407,140,-1,139,335,407,-1,404,332,408,-1,404,330,332,-1,328,167,166,-1,167,328,409,-1,410,326,325,-1,395,326,410,-1,323,401,293,-1,401,323,411,-1,392,322,161,-1,392,405,322,-1,402,327,324,-1,402,412,327,-1,176,329,177,-1,176,413,329,-1,333,414,331,-1,333,375,414,-1,415,320,8,-1,320,415,334,-1,338,416,417,-1,337,416,338,-1,298,341,131,-1,298,418,341,-1,175,233,174,-1,286,233,175,-1,260,4,198,-1,260,5,4,-1,297,7,6,-1,297,17,7,-1,345,337,143,-1,337,345,416,-1,135,346,347,-1,135,152,346,-1,230,104,306,-1,47,104,230,-1,15,350,16,-1,15,348,350,-1,383,375,333,-1,383,374,375,-1,129,265,29,-1,231,265,129,-1,351,147,361,-1,28,147,351,-1,29,130,129,-1,264,130,29,-1,268,174,235,-1,174,268,236,-1,355,281,202,-1,419,281,355,-1,239,353,352,-1,238,353,239,-1,419,35,237,-1,36,35,419,-1,99,87,88,-1,99,316,87,-1,261,45,317,-1,45,261,259,-1,221,60,160,-1,221,271,60,-1,64,196,62,-1,64,356,196,-1,70,368,179,-1,70,69,368,-1,189,73,157,-1,189,108,73,-1,403,278,210,-1,278,403,357,-1,64,215,98,-1,215,64,211,-1,103,78,299,-1,103,102,78,-1,44,84,317,-1,44,399,84,-1,104,317,84,-1,104,261,317,-1,104,12,261,-1,113,397,114,-1,359,397,113,-1,42,62,115,-1,42,63,62,-1,90,283,245,-1,201,283,90,-1,361,249,346,-1,249,361,147,-1,199,46,82,-1,199,269,46,-1,314,280,55,-1,310,314,364,-1,314,310,280,-1,96,311,307,-1,96,312,311,-1,282,53,363,-1,270,53,282,-1,306,304,305,-1,306,398,304,-1,13,104,47,-1,13,12,104,-1,208,365,189,-1,365,208,207,-1,234,286,289,-1,234,233,286,-1,402,367,360,-1,402,324,367,-1,162,113,112,-1,162,358,113,-1,371,373,372,-1,373,371,396,-1,324,394,367,-1,324,326,394,-1,313,371,372,-1,313,219,371,-1,86,372,172,-1,86,197,372,-1,263,168,374,-1,263,165,168,-1,285,204,309,-1,204,285,160,-1,59,123,118,-1,61,123,59,-1,61,301,123,-1,111,108,186,-1,111,107,108,-1,301,376,302,-1,61,376,301,-1,61,272,376,-1,302,378,420,-1,302,376,378,-1,364,207,310,-1,364,365,207,-1,132,154,133,-1,132,420,154,-1,380,298,133,-1,380,379,298,-1,156,381,390,-1,156,315,381,-1,343,333,330,-1,383,333,343,-1,151,242,149,-1,151,319,242,-1,257,362,421,-1,257,256,362,-1,386,388,421,-1,388,386,385,-1,297,385,15,-1,297,138,385,-1,137,387,138,-1,141,387,137,-1,141,416,345,-1,141,140,416,-1,404,7,142,-1,404,8,7,-1,145,391,296,-1,391,145,390,-1,251,17,16,-1,251,250,17,-1,389,421,388,-1,389,257,421,-1,421,3,386,-1,421,362,3,-1,148,151,146,-1,151,148,319,-1,299,224,125,-1,299,225,224,-1,294,390,145,-1,294,156,390,-1,294,133,154,-1,294,380,133,-1,155,420,378,-1,154,420,155,-1,420,300,302,-1,132,300,420,-1,123,162,112,-1,122,162,123,-1,262,165,263,-1,262,290,165,-1,163,291,292,-1,163,290,291,-1,177,289,286,-1,289,177,166,-1,200,287,292,-1,200,281,287,-1,393,176,175,-1,393,395,176,-1,393,396,394,-1,393,373,396,-1,367,396,366,-1,367,394,396,-1,293,358,162,-1,293,401,358,-1,369,397,370,-1,369,71,397,-1,22,305,100,-1,22,33,305,-1,33,22,21,-1,109,186,308,-1,109,111,186,-1,160,188,221,-1,160,285,188,-1,105,304,190,-1,304,105,106,-1,382,191,94,-1,382,399,191,-1,273,96,214,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=4 */
		private int[] getrmolr3lc_geometry_5_22_coordIndex_4()
		{
			int[] value = {273,274,96,-1,125,270,282,-1,125,224,270,-1,5,136,400,-1,5,260,136,-1,201,303,202,-1,201,92,303,-1,194,69,203,-1,69,194,368,-1,397,70,114,-1,397,71,70,-1,84,102,104,-1,102,84,79,-1,49,278,50,-1,49,40,278,-1,212,403,22,-1,212,357,403,-1,196,220,313,-1,220,196,356,-1,224,95,270,-1,223,95,224,-1,403,23,22,-1,23,403,24,-1,169,87,86,-1,169,88,87,-1,281,237,287,-1,237,281,419,-1,117,232,352,-1,117,354,232,-1,36,355,241,-1,36,419,355,-1,288,235,318,-1,235,288,268,-1,244,31,181,-1,244,264,31,-1,246,351,93,-1,246,28,351,-1,29,23,30,-1,265,23,29,-1,149,374,383,-1,149,263,374,-1,104,398,306,-1,104,103,398,-1,152,134,128,-1,135,134,152,-1,198,10,258,-1,81,10,198,-1,391,257,389,-1,391,384,257,-1,146,251,255,-1,251,146,151,-1,254,49,252,-1,40,49,254,-1,379,418,298,-1,379,406,418,-1,140,417,416,-1,140,407,417,-1,408,8,404,-1,8,408,415,-1,375,409,414,-1,375,167,409,-1,395,413,176,-1,395,410,413,-1,411,402,401,-1,402,411,412,-1};
			return value;
		}
		/** Large attribute array: IndexedFaceSet DEF='rmolr3lc_geometry' coordIndex field, scene-graph level=5, element #22, 3260 total numbers.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFInt32 getrmolr3lc_geometry_5_22_coordIndex()
		{
			MFInt32 rmolr3lc_geometry_5_22_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getrmolr3lc_geometry_5_22_coordIndex_1()))
				.append(new MFInt32(getrmolr3lc_geometry_5_22_coordIndex_2()))
				.append(new MFInt32(getrmolr3lc_geometry_5_22_coordIndex_3()))
				.append(new MFInt32(getrmolr3lc_geometry_5_22_coordIndex_4()));
			return rmolr3lc_geometry_5_22_coordIndex;
		}
		/** Large attribute array: Coordinate DEF='rmolr3lc_coordinate' point field, scene-graph level=6, element #22, 1266 total numbers made up of 422 3-tuple values.
		 * Reassemble split array as single method to improve readability and runnability.
		 * Provide large array values via separate methods, hoping to avoid 'code too large' Java compilation errors. 
		 * Individual Java methods (including aggregated initializations) are limited to 64KB.
		 * @see https://stackoverflow.com/questions/2407912/code-too-large-compilation-error-in-java
		 * @see https://stackoverflow.com/questions/11437905/java-too-many-constants-jvm-error
		 */
		private MFVec3f getrmolr3lc_coordinate_6_22_point()
		{
			MFVec3f rmolr3lc_coordinate_6_22_point = new MFVec3f(new double[] {-0.026,1.5964,0.0489,-0.026,1.5962,0.0489,-0.0258,1.5964,0.0489,-0.0289,1.5977,0.0497,-0.0287,1.5978,0.0495,-0.029,1.598,0.0494,-0.0318,1.5929,0.0474,-0.0323,1.5932,0.047,-0.0321,1.5921,0.0464,-0.0279,1.5971,0.0487,-0.0278,1.5971,0.0489,-0.0273,1.5966,0.0482,-0.0266,1.5963,0.0475,-0.0267,1.5963,0.0474,-0.0267,1.5964,0.0477,-0.0312,1.5957,0.0488,-0.0317,1.5959,0.048,-0.0322,1.5946,0.0476,-0.0319,1.5963,0.0453,-0.031,1.5975,0.046,-0.0309,1.5978,0.0455,-0.0266,1.5955,0.0448,-0.0265,1.5954,0.0443,-0.0275,1.5961,0.0452,-0.0275,1.5966,0.0444,-0.0277,1.5974,0.0438,-0.0279,1.597,0.0447,-0.031,1.5973,0.0463,-0.0296,1.5978,0.0461,-0.028,1.5964,0.0455,-0.0281,1.5966,0.0453,-0.0284,1.5968,0.0456,-0.0266,1.5956,0.0453,-0.0265,1.5955,0.045,-0.0267,1.5956,0.0451,-0.0303,1.5983,0.0424,-0.0297,1.5986,0.0427,-0.0294,1.5988,0.0421,-0.0273,1.5966,0.0426,-0.0272,1.5967,0.0429,-0.0272,1.5964,0.0426,-0.0273,1.5977,0.0411,-0.0275,1.5979,0.0412,-0.0279,1.5982,0.0416,-0.0262,1.5965,0.0487,-0.0271,1.5967,0.0485,-0.0269,1.5969,0.049,-0.0267,1.5963,0.0472,-0.0274,1.5969,0.0473,-0.027,1.5966,0.0425,-0.0266,1.5969,0.0432,-0.0258,1.5978,0.0421,-0.0235,1.5964,0.0479,-0.0242,1.5971,0.048,-0.0246,1.5967,0.0486,-0.0238,1.5975,0.0459,-0.0236,1.5973,0.0459,-0.0238,1.5971,0.0446,-0.0233,1.5954,0.0438,-0.0233,1.5956,0.0435,-0.0236,1.5966,0.0441,-0.0233,1.5952,0.0437,-0.0274,1.5979,0.0409,-0.0274,1.5978,0.041,-0.0271,1.5978,0.0408,-0.0257,1.5979,0.0415,-0.0257,1.5979,0.0412,-0.0269,1.5971,0.0416,-0.0255,1.598,0.0413,-0.024,1.5981,0.0413,-0.0239,1.5977,0.0412,-0.0245,1.5977,0.0407,-0.0262,1.5954,0.0442,-0.0259,1.5957,0.0442,-0.026,1.5957,0.044,-0.0272,1.5969,0.0416,-0.027,1.5969,0.0419,-0.0253,1.5966,0.048,-0.0256,1.5965,0.0477,-0.0262,1.5963,0.0477,-0.0276,1.5969,0.0488,-0.0277,1.5971,0.0491,-0.0275,1.5973,0.0493,-0.0261,1.5963,0.048,-0.0263,1.5963,0.048,-0.0281,1.5982,0.0409,-0.0288,1.5983,0.041,-0.0284,1.5986,0.0413,-0.0287,1.5989,0.0417,-0.0291,1.5989,0.0423,-0.0294,1.5983,0.0454,-0.0292,1.5981,0.0453,-0.0292,1.5984,0.0445,-0.0293,1.598,0.0459,-0.0258,1.5965,0.0488,-0.0248,1.5968,0.0486,-0.0257,1.598,0.0409,-0.0269,1.5976,0.0407,-0.0269,1.5978,0.0408,-0.0285,1.5988,0.0418,-0.0263,1.5953,0.0444,-0.0262,1.5954,0.0445,-0.0263,1.5963,0.0474,-0.0264,1.5963,0.0471,-0.0266,1.5962,0.0472,-0.0255,1.596,0.0448,-0.0262,1.5956,0.045,-0.0252,1.5968,0.0437,-0.0252,1.5963,0.0445,-0.0243,1.5975,0.0433,-0.0245,1.5973,0.0434,-0.0245,1.5973,0.0436,-0.0236,1.5953,0.0413,-0.0241,1.5953,0.0406,-0.0238,1.5965,0.0409,-0.0279,1.5983,0.0411,-0.0284,1.5978,0.0441,-0.029,1.5977,0.0431,-0.0234,1.5958,0.0428,-0.0235,1.5964,0.0415,-0.0235,1.5974,0.0426,-0.0235,1.5934,0.0431,-0.0238,1.5935,0.0421,-0.0234,1.5949,0.0425,-0.0253,1.5968,0.0436,-0.0241,1.5975,0.047,-0.024,1.5974,0.0462,-0.0251,1.5967,0.0462,-0.0281,1.5972,0.0466,-0.0279,1.5964,0.0457,-0.0283,1.5967,0.046,-0.0237,1.5919,0.0451,-0.0233,1.5928,0.0455,-0.0236,1.5926,0.0462,-0.028,1.5975,0.0475,-0.029,1.5981,0.0477,-0.0289,1.5979,0.0491,-0.0307,1.5928,0.048,-0.0307,1.5941,0.0489,-0.0306,1.5916,0.0474,-0.0293,1.5917,0.0474,-0.0291,1.5926,0.0481,-0.0327,1.5935,0.0463,-0.027,1.5925,0.0476,-0.0258,1.5925,0.0473,-0.0255,1.5935,0.0479,-0.031,1.5974,0.0471,-0.0296,1.5978,0.0464,-0.031,1.5973,0.0466,-0.0327,1.5949,0.0454,-0.0327,1.5948,0.0461,-0.0319,1.5959,0.0466,-0.029,1.5979,0.0471,-0.0291,1.5977,0.0464,-0.0232,1.594,0.0468,-0.0233,1.5949,0.0473,-0.024,1.5945,0.048,-0.026,1.5955,0.0443,-0.0231,1.5966,0.0455,-0.0236,1.5969,0.0437,-0.0239,1.5971,0.0442,-0.0241,1.5923,0.0419,-0.0241,1.5937,0.0411,-0.0319,1.5969,0.0428,-0.0323,1.5958,0.0424,-0.0327,1.5956,0.0436,-0.0323,1.5937,0.0418,-0.0326,1.5934,0.0427,-0.0329,1.5945,0.0431,-0.029,1.5988,0.0415,-0.0294,1.5984,0.0413,-0.03,1.5984,0.0419,-0.0299,1.5966,0.0406,-0.0299,1.5957,0.0405,-0.0309,1.5963,0.0414,-0.0299,1.5948,0.0405,-0.0298,1.5935,0.0405,-0.031,1.5936,0.0409,-0.0245,1.5983,0.0415,-0.0236,1.5976,0.042,-0.0283,1.5973,0.045,-0.0291,1.5978,0.0459,-0.0253,1.5969,0.0435,-0.0246,1.5974,0.0433,-0.024,1.5982,0.0426,-0.024,1.5983,0.0425,-0.0241,1.5972,0.0443,-0.0241,1.5971,0.0444,-0.024,1.5972,0.0444,-0.0252,1.5961,0.0448,-0.0255,1.5963,0.0458,-0.026,1.5964,0.0488,-0.0261,1.5965,0.0489,-0.0261,1.5964,0.049,-0.0238,1.5984,0.0424,-0.0248,1.5966,0.0487,-0.0274,1.5976,0.0407,-0.0282,1.5978,0.0408,-0.0284,1.5977,0.0494,-0.0274,1.5974,0.0495,-0.0297,1.5986,0.0444,-0.0294,1.5986,0.0446,-0.0296,1.5986,0.0433,-0.0242,1.5983,0.0414,-0.0236,1.5977,0.0431,-0.0241,1.5972,0.0459,-0.025,1.5967,0.0459,-0.025,1.5966,0.0457,-0.0252,1.5964,0.0459,-0.0253,1.5967,0.0482,-0.027,1.5969,0.0434,-0.0272,1.5976,0.0411,-0.0264,1.5955,0.044,-0.0263,1.596,0.0437,-0.026,1.5978,0.0411,-0.027,1.5976,0.0411,-0.027,1.5972,0.0415,-0.0255,1.598,0.0412,-0.0268,1.5969,0.0405,-0.0272,1.5967,0.0405,-0.0272,1.597,0.0405,-0.0239,1.597,0.0444,-0.0235,1.5965,0.0445,-0.0249,1.5969,0.0483,-0.0246,1.5971,0.0479,-0.025,1.5968,0.0479,-0.0278,1.5976,0.0423,-0.028,1.5973,0.0425,-0.0274,1.5967,0.0425,-0.0273,1.5966,0.0464,-0.0267,1.596,0.0462,-0.0274,1.5961,0.0456,-0.0282,1.5971,0.0427,-0.031,1.5955,0.0413,-0.0313,1.5959,0.0416,-0.031,1.5961,0.0415,-0.0308,1.5972,0.0418,-0.0304,1.5982,0.0426,-0.0293,1.5985,0.0428,-0.0288,1.598,0.0426,-0.0283,1.5985,0.0422,-0.0295,1.5986,0.0428,-0.032,1.5958,0.0456,-0.0317,1.5961,0.0458,-0.0292,1.5976,0.046,-0.0297,1.5983,0.0454,-0.0296,1.5979,0.0459,-0.0274,1.5968,0.048,-0.0296,1.5981,0.0478,-0.0296,1.598,0.0471,-0.0325,1.5947,0.0467,-0.032,1.5959,0.0472,-0.027,1.5967,0.0423,-0.0274,1.5969,0.0423,-0.0272,1.5966,0.0423,-0.0309,1.5974,0.0476,-0.0268,1.5968,0.0494,-0.0271,1.5959,0.0494,-0.0287,1.5978,0.0492,-0.0272,1.5966,0.0483,-0.0288,1.5979,0.0494,-0.0265,1.5963,0.0478,-0.032,1.5966,0.045,-0.0327,1.5953,0.0445,-0.0284,1.5966,0.0458,-0.0275,1.5961,0.0454,-0.0306,1.597,0.0415,-0.0289,1.5986,0.0424,-0.0309,1.5971,0.042,-0.0267,1.597,0.0493,-0.0244,1.5972,0.0479,-0.0236,1.5964,0.0443,-0.0232,1.5954,0.0441,-0.0258,1.5979,0.0412,-0.0257,1.598,0.0411,-0.0256,1.5972,0.043,-0.0261,1.5958,0.0439,-0.0273,1.5971,0.0417,-0.0268,1.5968,0.0433,-0.0261,1.5964,0.0483,-0.0239,1.5974,0.0459,-0.0298,1.5986,0.0433,-0.0239,1.5977,0.0471,-0.0297,1.5985,0.0447,-0.0253,1.5966,0.0463,-0.0239,1.5973,0.0443,-0.031,1.595,0.0412,-0.0306,1.5983,0.0429,-0.0312,1.5971,0.0422,-0.0324,1.5949,0.042,-0.032,1.597,0.0442,-0.0309,1.5981,0.0446,-0.0308,1.5982,0.0434,-0.0245,1.5924,0.0409,-0.0243,1.5935,0.0476,-0.025,1.5968,0.0484,-0.0268,1.5937,0.0481,-0.0316,1.5944,0.0483,-0.0243,1.5918,0.0458,-0.0252,1.5969,0.0469,-0.0233,1.5932,0.0442,-0.0233,1.5946,0.0435,-0.0229,1.5944,0.0446,-0.0294,1.5984,0.0432,-0.0263,1.5956,0.0452,-0.0264,1.5954,0.045,-0.0265,1.5958,0.0461,-0.0257,1.5977,0.0408,-0.024,1.5979,0.0432,-0.0237,1.5979,0.0432,-0.024,1.5973,0.0457,-0.0248,1.598,0.0409,-0.0249,1.5982,0.041,-0.0275,1.5969,0.0405,-0.0239,1.5972,0.0446,-0.0241,1.5958,0.0485,-0.0282,1.5986,0.0415,-0.0264,1.5964,0.0481,-0.0313,1.5961,0.0417,-0.0319,1.596,0.0462,-0.0317,1.5919,0.047,-0.0292,1.5979,0.0495,-0.0242,1.592,0.0419,-0.0247,1.5922,0.041,-0.0261,1.5928,0.0401,-0.0273,1.5926,0.04,-0.0273,1.5929,0.04,-0.0261,1.5925,0.0402,-0.0323,1.5934,0.0418,-0.031,1.5933,0.0409,-0.0327,1.5923,0.0451,-0.0327,1.5922,0.0445,-0.0326,1.592,0.045,-0.0328,1.5925,0.0445,-0.0316,1.5916,0.0469,-0.0306,1.5914,0.0472,-0.0263,1.5913,0.0464,-0.0273,1.5914,0.0469,-0.0274,1.5912,0.0467,-0.0263,1.5915,0.0466,-0.0237,1.5918,0.0439,-0.0238,1.5917,0.045,-0.0236,1.5921,0.044,-0.0329,1.5936,0.0457,-0.0278,1.5937,0.0483,-0.028,1.5926,0.0478,-0.0293,1.598,0.0471,-0.0293,1.5982,0.0478,-0.0304,1.5971,0.0493,-0.0294,1.598,0.049,-0.0308,1.5974,0.0485,-0.0294,1.5978,0.0461,-0.0291,1.5977,0.0428,-0.0295,1.5984,0.043,-0.0281,1.5972,0.043,-0.0297,1.5985,0.043,-0.0271,1.5976,0.0407,-0.0265,1.5959,0.0437,-0.0244,1.5938,0.0406,-0.0246,1.5953,0.0402,-0.0249,1.5938,0.0402,-0.0293,1.5979,0.0465,-0.0274,1.5972,0.0497,-0.0237,1.5975,0.0471,-0.024,1.5971,0.0446,-0.025,1.5964,0.0449,-0.0259,1.595,0.04,-0.0259,1.5939,0.0401,-0.0237,1.5982,0.0423,-0.0258,1.5972,0.0406,-0.0259,1.5959,0.0402,-0.0272,1.5961,0.0403,-0.0285,1.5965,0.0404,-0.0286,1.5952,0.0402,-0.033,1.594,0.0441,-0.0328,1.5928,0.0438,-0.0228,1.5954,0.045,-0.0231,1.5967,0.047,-0.0228,1.5953,0.0464,-0.0249,1.5917,0.0462,-0.0244,1.5926,0.0469,-0.0249,1.5957,0.0488,-0.0259,1.5965,0.0486,-0.0329,1.5937,0.0449,-0.0261,1.5957,0.049,-0.0303,1.5953,0.0494,-0.0295,1.5965,0.0498,-0.029,1.5938,0.0487,-0.0288,1.5949,0.0492,-0.0274,1.5947,0.0488,-0.0251,1.5943,0.0484,-0.0263,1.5947,0.0486,-0.0239,1.5921,0.0428,-0.0285,1.5943,0.0403,-0.0274,1.5938,0.0401,-0.0285,1.5932,0.0402,-0.0274,1.5948,0.0401,-0.0245,1.5965,0.0404,-0.0263,1.5959,0.0461,-0.0261,1.5964,0.0486,-0.0291,1.598,0.0491,-0.0248,1.5925,0.0405,-0.0253,1.5926,0.0402,-0.0266,1.5959,0.0438,-0.0326,1.5923,0.0457,-0.024,1.5919,0.0427,-0.025,1.5915,0.046,-0.0294,1.5915,0.0472,-0.0325,1.592,0.0456,-0.0325,1.5931,0.0427,-0.0286,1.5929,0.0403,-0.025,1.5922,0.0405,-0.0254,1.5923,0.0403,-0.0298,1.5932,0.0405,-0.0327,1.5925,0.0437,-0.0321,1.5918,0.0462,-0.0283,1.5916,0.0472,-0.0284,1.5913,0.047,-0.0244,1.5916,0.0456,-0.0298,1.5985,0.0429,-0.0229,1.5942,0.046,-0.028,1.5962,0.0498});
			return rmolr3lc_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_molar3lc 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_molar3lc().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_molar3lc\" 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_molar3lc self-validation test confirmation: ");
                if (!validationResults.equals("success"))
                    System.out.println();
                System.out.println(validationResults.trim());

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