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> bone in finger. </p>
 <p> Related links:  source r_metacarpal_3.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_metacarpal_3&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_metacarpal_3.x3d">r_metacarpal_3.x3d</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> description </i> </td>
			<td> bone in finger </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/rmc3.x3d">originals/rmc3.x3d</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
			<td> <a href="https://en.wikipedia.org/wiki/Carpal_bones" target="_blank">https://en.wikipedia.org/wiki/Carpal_bones</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
			<td> <a href="https://en.wikipedia.org/wiki/List_of_bones_of_the_human_skeleton" target="_blank">https://en.wikipedia.org/wiki/List_of_bones_of_the_human_skeleton</a> </td>
		</tr>
		<tr>
			<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
			<td> <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_metacarpal_3.x3d" target="_blank">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Skeleton/r_metacarpal_3.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_metacarpal_3
{
	/** Default constructor to create this object. */
	public r_metacarpal_3 ()
	{
	  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_metacarpal_3.x3d"))
    .addMeta(new meta().setName(meta.NAME_DESCRIPTION).setContent("bone in finger"))
    .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/rmc3.x3d"))
    .addMeta(new meta().setName(meta.NAME_REFERENCE  ).setContent("https://en.wikipedia.org/wiki/Carpal_bones"))
    .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_metacarpal_3.x3d"))
    .addMeta(new meta().setName(meta.NAME_LICENSE    ).setContent("../license.html")))
  .setScene(new Scene()
    .addChild(new WorldInfo().setTitle("r_metacarpal_3.x3d"))
    .addChild(new TouchSensor().setDescription("bone r_metacarpal_3"))
    .addChild(new Transform("r_metacarpal_3")
      .addChild(new Shape()
        .setAppearance(new Appearance()
          .setMaterial(new Material("BoneMaterial").setAmbientIntensity(0.965).setDiffuseColor(1.0,0.9765,0.8667).setShininess(0.05).setSpecularColor(0.349,0.349,0.349)))
        .setGeometry(new IndexedFaceSet("r_metacarpal_3_geometry").setDEF("r_metacarpal_3_geometry").setCreaseAngle(1.571).setCoordIndex(getr_metacarpal_3_geometry_5_22_coordIndex())
          .setCoord(new Coordinate("r_metacarpal_3_coordinate").setPoint(getr_metacarpal_3_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[] getr_metacarpal_3_geometry_5_22_coordIndex_1()
		{
			int[] value = {0,1,2,-1,3,4,5,-1,3,6,4,-1,4,7,5,-1,8,9,10,-1,11,12,13,-1,14,15,16,-1,14,17,15,-1,18,19,20,-1,18,21,19,-1,22,23,24,-1,23,25,24,-1,26,27,28,-1,27,29,28,-1,30,31,32,-1,30,33,31,-1,34,35,36,-1,34,37,35,-1,38,39,40,-1,38,41,39,-1,42,43,44,-1,45,46,47,-1,46,48,47,-1,46,49,48,-1,49,50,48,-1,51,52,53,-1,53,54,51,-1,55,56,57,-1,58,59,60,-1,58,61,59,-1,62,63,64,-1,62,65,63,-1,66,59,61,-1,67,60,59,-1,68,63,65,-1,68,69,63,-1,65,67,59,-1,70,71,72,-1,70,73,71,-1,74,75,76,-1,70,77,73,-1,70,78,77,-1,79,77,78,-1,79,80,77,-1,76,2,81,-1,51,82,83,-1,51,55,82,-1,83,52,51,-1,84,82,85,-1,84,86,82,-1,87,88,89,-1,88,90,89,-1,91,89,92,-1,89,93,92,-1,94,95,96,-1,95,97,96,-1,98,99,100,-1,101,102,103,-1,101,104,102,-1,105,104,106,-1,101,107,106,-1,108,109,106,-1,110,105,106,-1,111,112,113,-1,111,114,112,-1,115,111,113,-1,113,116,115,-1,117,118,119,-1,119,120,117,-1,121,122,123,-1,124,125,126,-1,127,128,129,-1,130,131,132,-1,132,133,130,-1,134,115,135,-1,135,136,134,-1,9,137,126,-1,126,138,9,-1,139,140,68,-1,68,141,139,-1,122,121,111,-1,111,142,122,-1,143,58,144,-1,143,145,58,-1,146,147,53,-1,146,148,147,-1,27,26,149,-1,149,150,151,-1,152,153,154,-1,152,155,153,-1,156,157,158,-1,159,160,161,-1,162,160,163,-1,164,160,165,-1,166,167,168,-1,3,169,6,-1,169,22,6,-1,170,171,172,-1,173,158,157,-1,173,174,158,-1,175,176,132,-1,175,177,176,-1,178,179,180,-1,178,181,179,-1,182,183,184,-1,185,186,187,-1,185,188,186,-1,189,190,191,-1,11,192,169,-1,193,194,195,-1,195,196,193,-1,197,198,199,-1,200,182,201,-1,182,202,203,-1,182,204,201,-1,182,205,206,-1,182,207,208,-1,182,209,210,-1,182,211,212,-1,213,214,215,-1,213,216,214,-1,217,14,25,-1,218,17,219,-1,220,171,192,-1,221,222,169,-1,221,223,222,-1,174,154,158,-1,174,224,154,-1,225,226,227,-1,226,156,227,-1,165,228,164,-1,165,229,228,-1,230,162,163,-1,230,231,162,-1,228,232,233,-1,232,226,233,-1,166,47,167,-1,234,235,236,-1,188,185,237,-1,238,239,151,-1,240,241,242,-1,242,243,240,-1,32,43,244,-1,44,245,40,-1,244,43,42,-1,246,43,198,-1,247,43,248,-1,249,43,31,-1,30,244,250,-1,30,32,244,-1,100,251,252,-1,253,254,26,-1,254,149,26,-1,255,256,257,-1,256,258,257,-1,16,259,24,-1,16,260,259,-1,261,262,263,-1,261,264,262,-1,155,265,266,-1,265,267,266,-1,268,269,18,-1,154,224,152,-1,19,21,270,-1,271,272,273,-1,273,274,271,-1,273,275,274,-1,276,136,139,-1,91,277,87,-1,277,278,87,-1,279,120,119,-1,280,2,1,-1,281,282,280,-1,73,2,71,-1,73,81,2,-1,283,284,285,-1,286,287,288,-1,286,289,287,-1,290,180,291,-1,180,179,291,-1,175,292,293,-1,294,9,138,-1,124,295,296,-1,297,124,298,-1,299,124,126,-1,300,124,301,-1,147,301,302,-1,147,148,301,-1,303,127,129,-1,86,127,304,-1,60,144,58,-1,141,305,276,-1,141,147,305,-1,276,305,136,-1,305,306,136,-1,307,308,309,-1,309,310,307,-1,311,312,313,-1,312,314,313,-1,315,316,317,-1,316,318,317,-1,60,67,319,-1,134,136,306,-1,141,320,147,-1,321,130,322,-1,321,323,130,-1,301,124,302,-1,125,124,300,-1,124,299,298,-1,295,124,297,-1,302,124,296,-1,175,293,324,-1,324,177,175,-1,131,292,132,-1,179,325,326,-1,179,75,325,-1,327,79,78,-1,327,328,329,-1,282,2,280,-1,330,331,123,-1,330,332,331,-1,333,334,335,-1,336,337,90,-1,338,339,97,-1,141,276,139,-1,95,274,275,-1,95,340,274,-1,64,341,342,-1,343,344,345,-1,343,346,344,-1,155,347,153,-1,252,248,100,-1,252,247,248,-1,31,33,348,-1,31,43,32,-1,248,43,249,-1,198,43,247,-1,44,43,246,-1,349,246,198,-1,198,197,349,-1,350,351,352,-1,350,353,351,-1,196,195,237,-1,195,354,237,-1,195,230,163,-1,163,159,195,-1,227,153,347,-1,227,156,153,-1,174,355,356,-1,174,173,355,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=2 */
		private int[] getr_metacarpal_3_geometry_5_22_coordIndex_2()
		{
			int[] value = {357,355,13,-1,357,356,355,-1,38,358,41,-1,197,359,218,-1,168,360,361,-1,361,362,168,-1,195,49,230,-1,195,194,49,-1,29,27,363,-1,182,210,211,-1,182,208,209,-1,182,206,207,-1,182,184,205,-1,182,200,183,-1,182,203,204,-1,182,212,202,-1,354,233,364,-1,25,16,24,-1,25,14,16,-1,365,359,199,-1,359,197,199,-1,366,15,365,-1,15,359,365,-1,171,220,172,-1,334,367,339,-1,334,368,367,-1,132,292,175,-1,173,232,369,-1,13,192,11,-1,370,371,372,-1,372,373,370,-1,374,160,164,-1,165,160,375,-1,163,160,159,-1,161,160,374,-1,238,234,193,-1,193,376,238,-1,151,239,377,-1,141,66,320,-1,141,68,66,-1,142,115,134,-1,142,111,115,-1,378,140,139,-1,123,122,379,-1,379,330,123,-1,130,323,131,-1,323,380,131,-1,128,84,381,-1,381,382,128,-1,117,120,333,-1,333,383,117,-1,2,282,71,-1,384,385,179,-1,385,291,179,-1,112,336,386,-1,112,114,336,-1,88,336,90,-1,88,386,336,-1,109,110,106,-1,107,108,106,-1,104,101,106,-1,107,101,103,-1,103,387,107,-1,104,105,388,-1,388,102,104,-1,105,389,388,-1,105,110,389,-1,390,391,266,-1,390,392,391,-1,393,18,269,-1,393,21,18,-1,394,315,265,-1,394,395,315,-1,90,396,89,-1,89,91,87,-1,82,55,85,-1,288,287,397,-1,287,398,397,-1,398,399,80,-1,80,397,398,-1,400,401,399,-1,74,76,400,-1,402,283,285,-1,326,384,179,-1,133,125,300,-1,400,398,74,-1,400,399,398,-1,74,325,75,-1,342,60,319,-1,342,144,60,-1,62,319,67,-1,68,140,69,-1,319,64,342,-1,319,62,64,-1,232,173,157,-1,65,62,67,-1,85,143,403,-1,55,57,145,-1,160,162,375,-1,41,253,404,-1,211,37,34,-1,405,406,348,-1,407,353,243,-1,407,351,353,-1,405,240,408,-1,169,192,221,-1,169,23,22,-1,169,222,23,-1,409,268,410,-1,409,269,268,-1,5,7,411,-1,259,260,412,-1,252,251,413,-1,3,5,411,-1,411,12,3,-1,338,414,92,-1,284,8,10,-1,78,328,327,-1,78,70,328,-1,70,72,328,-1,415,416,417,-1,328,415,329,-1,328,416,415,-1,418,280,345,-1,418,281,280,-1,416,72,419,-1,416,328,72,-1,396,337,383,-1,396,90,337,-1,420,118,117,-1,118,420,421,-1,422,423,417,-1,422,424,423,-1,419,417,416,-1,422,417,419,-1,338,93,339,-1,93,338,92,-1,91,414,425,-1,91,92,414,-1,414,97,426,-1,414,338,97,-1,427,251,428,-1,413,251,427,-1,412,7,4,-1,7,412,264,-1,3,11,169,-1,11,3,12,-1,122,429,379,-1,430,429,122,-1,263,427,428,-1,263,262,427,-1,4,259,412,-1,4,6,259,-1,366,262,260,-1,366,427,262,-1,407,193,196,-1,193,407,376,-1,240,353,408,-1,240,243,353,-1,350,408,353,-1,431,408,350,-1,358,214,216,-1,358,38,214,-1,258,50,257,-1,258,432,50,-1,375,231,433,-1,375,162,231,-1,369,172,173,-1,369,170,172,-1,434,435,436,-1,434,437,435,-1,234,194,193,-1,194,234,236,-1,310,397,438,-1,288,397,310,-1,143,55,145,-1,143,85,55,-1,56,61,57,-1,56,66,61,-1,226,157,156,-1,226,232,157,-1,74,287,325,-1,287,74,398,-1,81,400,76,-1,81,401,400,-1,384,292,385,-1,292,384,293,-1,326,293,384,-1,289,293,326,-1,286,439,324,-1,286,309,439,-1,285,307,402,-1,308,307,285,-1,325,289,326,-1,289,325,287,-1,438,327,329,-1,79,327,438,-1,129,382,440,-1,128,382,129,-1,52,304,441,-1,83,304,52,-1,277,425,442,-1,425,277,91,-1,443,390,444,-1,443,445,390,-1,267,315,317,-1,265,315,267,-1,394,446,395,-1,447,446,394,-1,393,313,448,-1,269,313,393,-1,311,449,450,-1,449,311,409,-1,445,451,190,-1,451,445,443,-1,452,453,454,-1,453,452,455,-1,448,314,346,-1,448,313,314,-1,444,266,267,-1,266,444,390,-1,454,456,452,-1,456,454,457,-1,458,123,331,-1,458,121,123,-1,318,459,460,-1,459,318,461,-1,110,462,389,-1,110,109,462,-1,463,107,387,-1,108,107,463,-1,119,464,279,-1,465,464,119,-1,321,129,323,-1,321,303,129,-1,291,380,440,-1,385,380,291,-1,466,421,420,-1,467,421,466,-1,282,72,71,-1,72,282,281,-1,76,0,2,-1,0,76,181,-1,466,337,336,-1,337,466,420,-1,272,342,341,-1,342,272,271,-1,85,381,84,-1,85,403,381,-1,177,138,176,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=3 */
		private int[] getr_metacarpal_3_geometry_5_22_coordIndex_3()
		{
			int[] value = {294,138,177,-1,468,378,469,-1,378,468,140,-1,330,470,8,-1,379,470,330,-1,378,136,135,-1,378,139,136,-1,146,303,321,-1,146,441,303,-1,471,358,472,-1,471,254,358,-1,473,457,99,-1,457,473,456,-1,239,376,242,-1,238,376,239,-1,377,363,27,-1,377,241,363,-1,191,474,189,-1,191,475,474,-1,476,477,392,-1,476,478,477,-1,479,350,352,-1,480,350,479,-1,392,481,391,-1,392,477,481,-1,17,359,15,-1,17,218,359,-1,373,482,370,-1,483,482,373,-1,371,484,166,-1,484,371,223,-1,484,221,485,-1,484,223,221,-1,224,486,152,-1,224,487,486,-1,488,417,423,-1,283,417,488,-1,205,489,490,-1,205,184,489,-1,37,210,361,-1,211,210,37,-1,362,208,491,-1,209,208,362,-1,207,492,493,-1,207,206,492,-1,204,494,201,-1,204,215,494,-1,203,495,213,-1,203,202,495,-1,212,34,496,-1,212,211,34,-1,225,233,226,-1,364,233,225,-1,368,497,367,-1,368,450,497,-1,225,481,186,-1,481,225,227,-1,172,355,173,-1,172,220,355,-1,436,171,170,-1,436,485,171,-1,365,252,413,-1,365,199,252,-1,354,374,233,-1,374,354,161,-1,498,499,500,-1,498,501,499,-1,44,349,245,-1,44,246,349,-1,489,183,502,-1,489,184,183,-1,503,363,405,-1,33,363,503,-1,33,29,363,-1,236,257,50,-1,236,235,257,-1,219,504,500,-1,504,219,502,-1,495,505,506,-1,496,505,495,-1,35,361,360,-1,37,361,35,-1,491,168,362,-1,491,372,168,-1,492,507,483,-1,490,507,492,-1,490,508,507,-1,489,508,490,-1,506,256,472,-1,506,505,256,-1,432,360,509,-1,35,360,432,-1,501,214,38,-1,214,501,498,-1,216,472,358,-1,506,472,216,-1,270,356,357,-1,356,270,487,-1,159,354,195,-1,161,354,159,-1,437,433,45,-1,229,433,437,-1,435,485,436,-1,484,485,435,-1,185,351,237,-1,352,351,185,-1,478,187,477,-1,478,479,187,-1,473,510,475,-1,473,511,510,-1,407,242,376,-1,407,243,242,-1,512,251,100,-1,512,513,251,-1,249,348,98,-1,249,31,348,-1,199,247,252,-1,199,198,247,-1,38,245,501,-1,38,40,245,-1,26,404,253,-1,26,28,404,-1,254,41,358,-1,254,253,41,-1,514,251,513,-1,514,428,251,-1,25,482,217,-1,25,23,482,-1,264,515,7,-1,264,261,515,-1,516,443,517,-1,443,516,451,-1,152,447,394,-1,486,447,152,-1,409,518,449,-1,518,409,410,-1,476,190,189,-1,476,445,190,-1,155,391,347,-1,155,266,391,-1,513,410,514,-1,513,518,410,-1,519,513,512,-1,513,519,518,-1,403,520,381,-1,520,403,521,-1,180,520,522,-1,180,290,520,-1,316,280,1,-1,316,523,280,-1,524,525,526,-1,524,178,525,-1,318,1,461,-1,318,316,1,-1,527,459,526,-1,527,528,459,-1,143,521,403,-1,521,143,144,-1,529,144,342,-1,529,521,144,-1,274,528,527,-1,340,528,274,-1,530,95,94,-1,340,95,530,-1,341,140,468,-1,140,341,69,-1,115,442,135,-1,277,442,115,-1,425,426,531,-1,425,414,426,-1,339,96,97,-1,339,367,96,-1,314,279,464,-1,312,279,314,-1,383,335,396,-1,383,333,335,-1,389,112,386,-1,462,112,389,-1,113,387,116,-1,113,463,387,-1,142,306,532,-1,142,134,306,-1,121,114,111,-1,458,114,121,-1,333,279,334,-1,279,333,120,-1,331,488,467,-1,332,488,331,-1,344,465,533,-1,465,344,464,-1,283,415,417,-1,283,402,415,-1,80,401,77,-1,401,80,399,-1,137,379,429,-1,137,470,379,-1,430,299,429,-1,430,298,299,-1,295,532,306,-1,532,295,297,-1,296,306,305,-1,296,295,306,-1,300,130,133,-1,322,130,300,-1,385,131,380,-1,385,292,131,-1,102,88,87,-1,102,388,88,-1,94,516,530,-1,94,534,516,-1,535,536,517,-1,460,536,535,-1,523,315,395,-1,523,316,315,-1,446,346,343,-1,346,446,448,-1,312,450,368,-1,450,312,311,-1,343,395,446,-1,343,523,395,-1,530,517,536,-1,530,516,517,-1,367,537,96,-1,537,367,497,-1,469,135,442,-1,378,135,469,-1,86,83,82,-1,83,86,304,-1,290,440,382,-1,290,291,440,-1,322,301,148,-1,300,301,322,-1,52,146,53,-1,441,146,52,-1,147,296,305,-1,296,147,302,-1,532,298,430,-1,532,297,298,-1,429,126,137,-1,429,299,126,-1,439,9,294,-1,10,9,439,-1,284,439,285,-1,10,439,284,-1,181,75,179,-1,181,76,75,-1,345,533,418,-1,533,345,344,-1,330,284,332,-1,330,8,284,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=4 */
		private int[] getr_metacarpal_3_geometry_5_22_coordIndex_4()
		{
			int[] value = {423,467,488,-1,467,423,421,-1,336,458,466,-1,336,114,458,-1,142,430,122,-1,142,532,430,-1,112,463,113,-1,463,112,462,-1,387,278,116,-1,278,387,103,-1,388,386,88,-1,386,388,389,-1,279,368,334,-1,279,312,368,-1,339,335,334,-1,339,93,335,-1,442,531,469,-1,425,531,442,-1,278,102,87,-1,278,103,102,-1,272,468,538,-1,341,468,272,-1,536,340,530,-1,340,536,528,-1,271,527,539,-1,274,527,271,-1,525,529,539,-1,522,529,525,-1,528,460,459,-1,528,536,460,-1,0,461,1,-1,0,524,461,-1,181,524,0,-1,181,178,524,-1,382,520,290,-1,520,382,381,-1,520,529,522,-1,521,529,520,-1,454,512,457,-1,519,512,454,-1,540,18,20,-1,268,18,540,-1,21,487,270,-1,487,21,486,-1,392,445,476,-1,392,390,445,-1,452,191,190,-1,191,452,456,-1,497,453,537,-1,497,541,453,-1,393,486,21,-1,393,447,486,-1,155,394,265,-1,152,394,155,-1,517,444,535,-1,444,517,443,-1,534,451,516,-1,451,534,455,-1,515,20,19,-1,515,261,20,-1,260,15,366,-1,260,16,15,-1,370,23,222,-1,482,23,370,-1,263,20,261,-1,20,263,540,-1,366,413,427,-1,366,365,413,-1,472,255,471,-1,472,256,255,-1,542,234,238,-1,542,235,234,-1,471,542,150,-1,471,255,542,-1,404,39,41,-1,404,250,39,-1,349,218,499,-1,349,197,218,-1,100,249,98,-1,100,248,249,-1,250,42,39,-1,42,250,244,-1,511,99,98,-1,473,99,511,-1,406,98,348,-1,406,511,98,-1,27,151,377,-1,27,149,151,-1,407,237,351,-1,407,196,237,-1,511,431,510,-1,431,511,406,-1,480,478,474,-1,480,479,478,-1,477,186,481,-1,186,477,187,-1,509,50,432,-1,48,50,509,-1,370,223,371,-1,222,223,370,-1,434,232,228,-1,232,434,369,-1,434,229,437,-1,434,228,229,-1,231,49,46,-1,49,231,230,-1,229,375,433,-1,375,229,165,-1,233,164,228,-1,164,233,374,-1,192,485,221,-1,485,192,171,-1,19,357,515,-1,270,357,19,-1,219,499,218,-1,500,499,219,-1,509,168,167,-1,168,509,360,-1,505,258,256,-1,36,258,505,-1,508,502,219,-1,489,502,508,-1,493,483,373,-1,493,492,483,-1,372,493,373,-1,493,372,491,-1,496,36,505,-1,34,36,496,-1,213,506,216,-1,495,506,213,-1,498,215,214,-1,215,498,494,-1,255,235,542,-1,235,255,257,-1,499,245,349,-1,501,245,499,-1,500,494,498,-1,494,500,504,-1,28,250,404,-1,30,250,28,-1,354,188,237,-1,364,188,354,-1,13,220,192,-1,13,355,220,-1,474,510,480,-1,475,510,474,-1,449,519,541,-1,449,518,519,-1,186,364,225,-1,188,364,186,-1,352,187,479,-1,352,185,187,-1,202,496,495,-1,202,212,496,-1,215,203,213,-1,204,203,215,-1,504,201,494,-1,200,201,504,-1,206,490,492,-1,206,205,490,-1,491,207,493,-1,208,207,491,-1,361,209,362,-1,210,209,361,-1,502,200,504,-1,183,200,502,-1,526,461,524,-1,461,526,459,-1,178,522,525,-1,178,180,522,-1,332,283,488,-1,284,283,332,-1,174,487,224,-1,174,356,487,-1,24,6,22,-1,24,259,6,-1,372,166,168,-1,372,371,166,-1,435,166,484,-1,435,47,166,-1,483,217,482,-1,507,217,483,-1,158,153,156,-1,154,153,158,-1,481,347,391,-1,347,481,227,-1,241,405,363,-1,240,405,241,-1,480,431,350,-1,510,431,480,-1,189,478,476,-1,189,474,478,-1,377,242,241,-1,377,239,242,-1,475,456,473,-1,456,475,191,-1,99,512,100,-1,512,99,457,-1,254,150,149,-1,150,254,471,-1,238,150,542,-1,238,151,150,-1,148,321,322,-1,148,146,321,-1,147,54,53,-1,147,320,54,-1,470,9,8,-1,137,9,470,-1,531,543,538,-1,531,426,543,-1,125,132,176,-1,125,133,132,-1,469,538,468,-1,469,531,538,-1,294,324,439,-1,294,177,324,-1,176,126,125,-1,138,126,176,-1,342,539,529,-1,271,539,342,-1,526,539,527,-1,526,525,539,-1,467,458,331,-1,467,466,458,-1,533,424,422,-1,424,533,465,-1,418,422,419,-1,422,418,533,-1,440,323,129,-1,380,323,440,-1,465,118,424,-1,465,119,118,-1,115,278,277,-1,278,115,116,-1,462,108,463,-1,109,108,462,-1,460,317,318,-1,460,535,317,-1,537,455,534,-1,455,537,453,-1,534,96,537,-1,534,94,96,-1,426,95,543,-1,426,97,95,-1,464,346,314,-1,346,464,344,-1,455,190,451,-1,455,452,190,-1,450,541,497,-1,541,450,449,-1};
			return value;
		}

		/** Define subarray values using type int[] with $tupleSize=1 and $tupleSplitSize=1000 for subarray position()=5 */
		private int[] getr_metacarpal_3_geometry_5_22_coordIndex_5()
		{
			int[] value = {311,269,409,-1,311,313,269,-1,447,448,446,-1,393,448,447,-1,267,535,444,-1,267,317,535,-1,454,541,519,-1,541,454,453,-1,396,93,89,-1,396,335,93,-1,127,441,304,-1,441,127,303,-1,128,86,84,-1,128,127,86,-1,55,54,56,-1,54,55,51,-1,439,308,285,-1,309,308,439,-1,289,324,293,-1,286,324,289,-1,77,81,73,-1,77,401,81,-1,438,307,310,-1,438,329,307,-1,68,59,66,-1,59,68,65,-1,64,69,341,-1,64,63,69,-1,58,57,61,-1,145,57,58,-1,66,54,320,-1,54,66,56,-1,438,80,79,-1,397,80,438,-1,309,288,310,-1,286,288,309,-1,49,236,50,-1,49,194,236,-1,435,45,47,-1,437,45,435,-1,436,369,434,-1,369,436,170,-1,167,48,509,-1,47,48,167,-1,433,46,45,-1,433,231,46,-1,36,432,258,-1,36,35,432,-1,39,44,40,-1,39,42,44,-1,503,348,33,-1,348,503,405,-1,408,406,405,-1,406,408,431,-1,30,29,33,-1,28,29,30,-1,428,540,263,-1,514,540,428,-1,217,508,14,-1,508,217,507,-1,17,508,219,-1,508,17,14,-1,515,411,7,-1,357,411,515,-1,260,264,412,-1,260,262,264,-1,275,543,95,-1,543,275,273,-1,13,411,357,-1,13,12,411,-1,514,268,540,-1,514,410,268,-1,273,538,543,-1,272,538,273,-1,424,421,423,-1,424,118,421,-1,420,383,337,-1,117,383,420,-1,329,402,307,-1,415,402,329,-1,419,281,418,-1,419,72,281,-1,523,345,280,-1,345,523,343,-1};
			return value;
		}
		/** Large attribute array: IndexedFaceSet DEF='r_metacarpal_3_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 getr_metacarpal_3_geometry_5_22_coordIndex()
		{
			MFInt32 r_metacarpal_3_geometry_5_22_coordIndex = new MFInt32()/*2.finalize*/
				.append(new MFInt32(getr_metacarpal_3_geometry_5_22_coordIndex_1()))
				.append(new MFInt32(getr_metacarpal_3_geometry_5_22_coordIndex_2()))
				.append(new MFInt32(getr_metacarpal_3_geometry_5_22_coordIndex_3()))
				.append(new MFInt32(getr_metacarpal_3_geometry_5_22_coordIndex_4()))
				.append(new MFInt32(getr_metacarpal_3_geometry_5_22_coordIndex_5()));
			return r_metacarpal_3_geometry_5_22_coordIndex;
		}
		/** Large attribute array: Coordinate DEF='r_metacarpal_3_coordinate' point field, scene-graph level=6, element #22, 1632 total numbers made up of 544 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 getr_metacarpal_3_coordinate_6_22_point()
		{
			MFVec3f r_metacarpal_3_coordinate_6_22_point = new MFVec3f(new double[] {-0.213,0.8182,0.0903,-0.2133,0.8139,0.0904,-0.2117,0.8177,0.0875,-0.2051,0.7708,0.0952,-0.2067,0.77,0.0931,-0.2053,0.7709,0.095,-0.2066,0.7698,0.0931,-0.2071,0.7723,0.0931,-0.2055,0.8212,0.0753,-0.2073,0.8227,0.0771,-0.2061,0.8211,0.0774,-0.205,0.7735,0.0959,-0.2056,0.7733,0.0955,-0.2055,0.7753,0.096,-0.2092,0.7674,0.0894,-0.2111,0.7705,0.088,-0.2099,0.7702,0.0885,-0.2105,0.7669,0.0893,-0.2115,0.7856,0.09,-0.2091,0.7793,0.0926,-0.2102,0.7788,0.0908,-0.2108,0.786,0.0918,-0.2058,0.769,0.0926,-0.2056,0.7687,0.0926,-0.2076,0.769,0.0901,-0.2074,0.7682,0.0903,-0.2177,0.765,0.0988,-0.2188,0.7667,0.0994,-0.2178,0.7652,0.0983,-0.2186,0.7666,0.0988,-0.2178,0.7656,0.0972,-0.2184,0.7681,0.0957,-0.2174,0.7663,0.0962,-0.2188,0.7673,0.0975,-0.2074,0.7621,0.0981,-0.2072,0.7632,0.0998,-0.2083,0.7625,0.0999,-0.207,0.7625,0.0979,-0.2139,0.7619,0.0951,-0.2156,0.7632,0.0957,-0.2148,0.7631,0.0948,-0.2148,0.7622,0.0966,-0.2157,0.765,0.0953,-0.2163,0.7673,0.0942,-0.215,0.7653,0.0945,-0.2074,0.768,0.1023,-0.2082,0.7674,0.1027,-0.2064,0.7678,0.1022,-0.2077,0.7666,0.1027,-0.2091,0.7669,0.1031,-0.2087,0.7662,0.1033,-0.217,0.8302,0.0829,-0.2168,0.8303,0.0828,-0.2171,0.8285,0.0817,-0.2181,0.8284,0.0816,-0.2172,0.8303,0.0835,-0.2184,0.8283,0.0824,-0.2182,0.8284,0.0829,-0.2185,0.8271,0.0838,-0.2193,0.8261,0.0823,-0.2185,0.8264,0.0838,-0.219,0.827,0.0825,-0.2208,0.8234,0.0816,-0.2213,0.8248,0.0801,-0.2211,0.8233,0.0813,-0.221,0.8249,0.0804,-0.2193,0.8268,0.0815,-0.2196,0.8248,0.0823,-0.2214,0.8256,0.079,-0.2219,0.8247,0.0795,-0.2076,0.8177,0.0829,-0.2097,0.816,0.0858,-0.2083,0.8149,0.0838,-0.2092,0.8186,0.0845,-0.2113,0.8214,0.0873,-0.2114,0.8217,0.0876,-0.2114,0.8212,0.0876,-0.2092,0.8188,0.0843,-0.2077,0.8179,0.0827,-0.2088,0.8191,0.0821,-0.2099,0.8205,0.0831,-0.2101,0.8197,0.0858,-0.217,0.8305,0.0836,-0.2168,0.8305,0.0831,-0.2158,0.8307,0.0848,-0.2171,0.8303,0.0839,-0.2158,0.8308,0.0845,-0.2176,0.8163,0.0771,-0.2166,0.8164,0.0765,-0.2176,0.8154,0.0775,-0.2166,0.8157,0.0767,-0.2184,0.816,0.0773,-0.2188,0.813,0.0798,-0.2185,0.8128,0.0798,-0.2219,0.8063,0.0877,-0.2218,0.8123,0.0849,-0.2211,0.8058,0.0865,-0.2213,0.8117,0.0837,-0.2203,0.7709,0.0955,-0.2214,0.7734,0.0945,-0.2177,0.7722,0.0922,-0.2168,0.8191,0.0762,-0.2172,0.8176,0.0769,-0.217,0.8191,0.0762,-0.2168,0.8182,0.0766,-0.2162,0.8183,0.0764,-0.2161,0.8194,0.0763,-0.2165,0.8201,0.0756,-0.2161,0.8201,0.0754,-0.2159,0.8194,0.0754,-0.2157,0.8185,0.0757,-0.2159,0.8212,0.0735,-0.2154,0.8192,0.0739,-0.2161,0.8209,0.074,-0.2148,0.8191,0.0733,-0.2172,0.8213,0.0741,-0.2169,0.821,0.0746,-0.2128,0.8124,0.0757,-0.2118,0.8123,0.076,-0.2126,0.811,0.0776,-0.2132,0.8111,0.0776,-0.211,0.8208,0.071,-0.211,0.8216,0.0713,-0.2105,0.8208,0.0711,-0.213,0.8243,0.078,-0.2112,0.8247,0.08,-0.2103,0.8242,0.079,-0.2147,0.8309,0.0848,-0.2147,0.8308,0.0853,-0.2143,0.8307,0.085,-0.2127,0.8275,0.0832,-0.2123,0.8269,0.0834,-0.2118,0.8251,0.0813,-0.2121,0.8252,0.0811,-0.2174,0.822,0.0745,-0.2208,0.8227,0.0759,-0.2204,0.8233,0.0759,-0.2073,0.823,0.0764,-0.2099,0.824,0.0794,-0.2223,0.825,0.0768,-0.2231,0.8249,0.0773,-0.2205,0.8255,0.0789,-0.2155,0.8219,0.0733,-0.2178,0.8285,0.0843,-0.2182,0.8271,0.0845,-0.2179,0.8284,0.0837,-0.2154,0.8291,0.0825,-0.2175,0.8258,0.0801,-0.2149,0.8274,0.0814,-0.2168,0.7654,0.1003,-0.216,0.7654,0.1012,-0.2167,0.7664,0.1014,-0.2115,0.7876,0.0969,-0.2116,0.7813,0.101,-0.2098,0.7812,0.0995,-0.2134,0.788,0.0991,-0.2104,0.7767,0.1027,-0.2087,0.7766,0.1012,-0.209,0.7783,0.1007,-0.2105,0.7687,0.1026,-0.2101,0.7694,0.1024,-0.2107,0.7692,0.1026,-0.2097,0.7687,0.1023,-0.2099,0.7686,0.1023,-0.2094,0.7702,0.1023,-0.2093,0.7694,0.1022,-0.2048,0.7678,0.0996,-0.2058,0.7665,0.1009,-0.2055,0.7647,0.0987,-0.2043,0.7702,0.0956,-0.2064,0.7739,0.102,-0.2044,0.7737,0.0993,-0.206,0.7753,0.1009,-0.2074,0.7763,0.1004,-0.2084,0.7786,0.0995,-0.211,0.8242,0.0827,-0.2109,0.8245,0.0804,-0.2099,0.8231,0.0814,-0.2139,0.8213,0.0906,-0.2128,0.8234,0.0894,-0.2138,0.8234,0.0899,-0.2127,0.8212,0.0899,-0.2072,0.7625,0.0953,-0.2076,0.7626,0.0941,-0.2073,0.7628,0.0941,-0.2132,0.7704,0.1033,-0.2123,0.7729,0.104,-0.2135,0.773,0.1029,-0.2125,0.7706,0.1037,-0.2198,0.7786,0.0974,-0.2208,0.7864,0.0952,-0.2209,0.7781,0.0963,-0.2044,0.7739,0.0965,-0.2127,0.7677,0.1039,-0.211,0.7674,0.1037,-0.2109,0.7678,0.103,-0.2126,0.7685,0.1033,-0.2132,0.7669,0.0904,-0.215,0.7677,0.0922,-0.2138,0.7683,0.0906,-0.208,0.7623,0.0943,-0.2081,0.762,0.0947,-0.2081,0.7618,0.0962,-0.2084,0.7617,0.0956,-0.2084,0.7619,0.095,-0.2069,0.763,0.0944,-0.2066,0.7631,0.0948,-0.2065,0.7631,0.0952,-0.2065,0.763,0.0957,-0.2065,0.7628,0.0961,-0.2067,0.7625,0.0965,-0.2071,0.7623,0.0967,-0.2076,0.762,0.0966,-0.2097,0.7611,0.096,-0.2121,0.7612,0.0949,-0.2096,0.7614,0.0949,-0.2114,0.7611,0.0969,-0.2073,0.7673,0.0906,-0.2117,0.7659,0.0898,-0.2097,0.7638,0.0911,-0.205,0.7757,0.0989,-0.2041,0.7711,0.097,-0.2042,0.7693,0.0955,-0.2041,0.7693,0.0975,-0.2095,0.781,0.0987,-0.211,0.7732,0.1037,-0.2099,0.7736,0.1031,-0.2112,0.7766,0.1035,-0.2087,0.7712,0.1021,-0.2082,0.7694,0.1022,-0.2095,0.7675,0.1027,-0.2088,0.7679,0.1025,-0.2084,0.7742,0.102,-0.2103,0.7708,0.1028,-0.2126,0.7671,0.1041,-0.2122,0.7664,0.104,-0.2112,0.7668,0.1039,-0.2126,0.7689,0.1032,-0.2146,0.7673,0.1032,-0.2174,0.7676,0.1015,-0.219,0.7689,0.0994,-0.2188,0.7682,0.1001,-0.2175,0.768,0.1013,-0.2174,0.7687,0.1007,-0.2163,0.7655,0.0958,-0.2144,0.7637,0.0936,-0.2146,0.7661,0.0934,-0.2156,0.7689,0.0922,-0.2169,0.7696,0.093,-0.2185,0.7692,0.0946,-0.2166,0.764,0.0968,-0.2144,0.7746,0.0901,-0.215,0.77,0.0914,-0.2162,0.7633,0.0981,-0.2154,0.7632,0.0994,-0.2126,0.7641,0.1026,-0.2111,0.7628,0.1014,-0.211,0.7649,0.1035,-0.2095,0.7637,0.1021,-0.2083,0.7698,0.0905,-0.2101,0.7715,0.089,-0.2095,0.7752,0.0907,-0.2104,0.7734,0.0895,-0.2107,0.7753,0.0899,-0.2088,0.7721,0.0907,-0.2139,0.7937,0.0972,-0.2146,0.7878,0.0995,-0.2151,0.7936,0.0978,-0.2124,0.7854,0.0894,-0.2124,0.7911,0.0887,-0.2085,0.7798,0.0945,-0.2202,0.8189,0.0851,-0.2222,0.8185,0.0825,-0.2219,0.8153,0.0839,-0.2206,0.816,0.086,-0.2219,0.8152,0.084,-0.2206,0.8247,0.0771,-0.2182,0.8186,0.076,-0.2175,0.8189,0.0761,-0.2135,0.8091,0.0797,-0.2118,0.8123,0.0873,-0.2098,0.8137,0.0853,-0.2103,0.8147,0.0864,-0.2058,0.8168,0.0789,-0.2052,0.8192,0.0769,-0.206,0.8176,0.0803,-0.209,0.8217,0.0826,-0.2106,0.8214,0.0845,-0.2098,0.8209,0.0829,-0.2103,0.8225,0.0842,-0.2142,0.8274,0.0876,-0.2136,0.8272,0.0871,-0.2119,0.8259,0.0836,-0.2104,0.8228,0.084,-0.2088,0.8227,0.0802,-0.2149,0.824,0.0769,-0.215,0.8244,0.078,-0.2142,0.8237,0.0759,-0.2124,0.8237,0.0753,-0.2111,0.8236,0.0761,-0.2127,0.8254,0.0806,-0.2138,0.8254,0.0797,-0.2147,0.8249,0.0788,-0.2146,0.8307,0.0844,-0.2158,0.8307,0.0837,-0.218,0.8241,0.078,-0.2174,0.8228,0.0755,-0.2063,0.8175,0.0808,-0.2062,0.8177,0.0806,-0.2077,0.8208,0.0816,-0.2087,0.8195,0.082,-0.2144,0.7957,0.0867,-0.2139,0.804,0.0831,-0.2126,0.796,0.0873,-0.212,0.8046,0.084,-0.2142,0.7994,0.0954,-0.214,0.8082,0.0922,-0.2154,0.7995,0.0961,-0.2151,0.8082,0.0932,-0.2197,0.8218,0.0838,-0.2192,0.8264,0.0803,-0.2139,0.8294,0.0836,-0.2134,0.8276,0.0825,-0.2134,0.8291,0.0842,-0.209,0.822,0.0824,-0.2113,0.8217,0.0873,-0.2112,0.823,0.0875,-0.2068,0.8173,0.0813,-0.2066,0.8169,0.0813,-0.2064,0.8172,0.081,-0.2071,0.8208,0.0733,-0.2102,0.8187,0.0717,-0.2072,0.8188,0.0741,-0.2154,0.8117,0.0782,-0.2162,0.8097,0.0806,-0.2164,0.8121,0.0787,-0.2148,0.8165,0.0746,-0.2149,0.815,0.0756,-0.22,0.8122,0.0817,-0.2186,0.8105,0.0821,-0.2209,0.813,0.0872,-0.2222,0.8221,0.0805,-0.2198,0.8213,0.0843,-0.2111,0.8057,0.0864,-0.21,0.8104,0.0836,-0.2101,0.8107,0.0843,-0.2113,0.8053,0.0855,-0.2123,0.7814,0.102,-0.2195,0.7688,0.0967,-0.2138,0.7646,0.0922,-0.2179,0.7702,0.1,-0.2147,0.7688,0.1022,-0.2151,0.7701,0.1019,-0.2175,0.769,0.1005,-0.2115,0.7692,0.1031,-0.2063,0.777,0.0981,-0.2074,0.7783,0.0973,-0.2069,0.7764,0.0953,-0.2136,0.7619,0.0981,-0.2123,0.7695,0.0885,-0.2065,0.7637,0.0996,-0.2065,0.7628,0.0977,-0.2061,0.7633,0.0969,-0.219,0.7673,0.0991,-0.2112,0.7707,0.1035,-0.2127,0.7709,0.0888,-0.2114,0.7718,0.0886,-0.2191,0.8051,0.0852,-0.2164,0.8044,0.084,-0.2077,0.7741,0.102,-0.2043,0.7685,0.0954,-0.2042,0.7683,0.0975,-0.2049,0.7653,0.0971,-0.2053,0.7657,0.0952,-0.2101,0.7701,0.1025,-0.2094,0.769,0.1022,-0.2146,0.7677,0.103,-0.2187,0.7677,0.1004,-0.2229,0.8244,0.0766,-0.2074,0.8215,0.0732,-0.2131,0.8281,0.085,-0.2159,0.8291,0.0861,-0.2144,0.8291,0.0865,-0.2149,0.8136,0.0765,-0.2113,0.8235,0.0873,-0.2126,0.8268,0.0856,-0.2151,0.8172,0.075,-0.2167,0.8204,0.0753,-0.2165,0.8175,0.0763,-0.2155,0.8181,0.0755,-0.2156,0.7876,0.0994,-0.2134,0.7814,0.1022,-0.2145,0.7808,0.1013,-0.2115,0.7916,0.0902,-0.2122,0.7931,0.0949,-0.2128,0.7984,0.093,-0.2166,0.8145,0.0774,-0.2099,0.8206,0.083,-0.2106,0.8211,0.0846,-0.2105,0.8209,0.0848,-0.2111,0.8212,0.0869,-0.21,0.8199,0.0855,-0.2061,0.8173,0.0805,-0.2171,0.8288,0.0852,-0.2163,0.7634,0.0977,-0.2194,0.7685,0.0983,-0.22,0.7699,0.0975,-0.2146,0.7685,0.1022,-0.2191,0.7692,0.0992,-0.2142,0.7907,0.088,-0.2138,0.7851,0.0891,-0.206,0.7733,0.0951,-0.2084,0.7702,0.0906,-0.2135,0.7727,0.0894,-0.2206,0.8136,0.0809,-0.2063,0.817,0.0807,-0.2065,0.8167,0.081,-0.2065,0.8157,0.0798,-0.2089,0.8127,0.0834,-0.2079,0.8143,0.0826,-0.2124,0.8138,0.0746,-0.2114,0.8137,0.0749,-0.2077,0.8138,0.0815,-0.2086,0.8143,0.0774,-0.2093,0.8129,0.0785,-0.221,0.8167,0.079,-0.222,0.8143,0.0821,-0.2119,0.7736,0.0891,-0.2123,0.7754,0.0896,-0.2093,0.8229,0.0746,-0.2117,0.8228,0.0731,-0.2194,0.7704,0.0987,-0.208,0.7647,0.1019,-0.2083,0.7683,0.1023,-0.2075,0.7715,0.1022,-0.2063,0.7692,0.1022,-0.2063,0.7719,0.1023,-0.2072,0.7693,0.1022,-0.2088,0.8193,0.0821,-0.2076,0.821,0.0814,-0.2139,0.8288,0.0862,-0.2157,0.8305,0.0834,-0.2211,0.8196,0.0775,-0.2186,0.7927,0.0962,-0.2161,0.7933,0.0978,-0.2182,0.7872,0.0977,-0.2116,0.797,0.0899,-0.211,0.792,0.0916,-0.2118,0.7965,0.0887,-0.2165,0.7908,0.0886,-0.2168,0.796,0.0873,-0.2209,0.7922,0.0939,-0.2218,0.7857,0.0936,-0.221,0.7911,0.0912,-0.2208,0.7853,0.0924,-0.2218,0.7915,0.0924,-0.2219,0.7775,0.0949,-0.2212,0.7772,0.0936,-0.2112,0.8187,0.0715,-0.2163,0.8142,0.0914,-0.2166,0.808,0.0932,-0.2147,0.8143,0.0913,-0.2157,0.8193,0.075,-0.2161,0.8204,0.0749,-0.2111,0.8096,0.0814,-0.2102,0.8113,0.08,-0.2119,0.8153,0.0735,-0.211,0.8152,0.0738,-0.2234,0.822,0.0789,-0.2233,0.8215,0.0781,-0.206,0.8218,0.075,-0.2145,0.7635,0.1008,-0.2126,0.7621,0.0998,-0.222,0.7741,0.0957,-0.2191,0.7751,0.0983,-0.2206,0.7748,0.0972,-0.2168,0.7799,0.0998,-0.2139,0.7759,0.1023,-0.2161,0.7755,0.1007,-0.2157,0.7728,0.1013,-0.2185,0.7724,0.0992,-0.2124,0.7765,0.1037,-0.2056,0.7681,0.0927,-0.206,0.7656,0.0935,-0.2044,0.7694,0.0996,-0.2043,0.7716,0.0995,-0.2103,0.7866,0.0935,-0.2086,0.7803,0.0962,-0.2079,0.8158,0.0762,-0.2075,0.7632,0.0931,-0.2069,0.7636,0.0936,-0.2059,0.7636,0.0961,-0.2063,0.7638,0.0945,-0.2061,0.7637,0.0952,-0.2094,0.7618,0.0941,-0.2091,0.7612,0.0971,-0.2083,0.7616,0.0979,-0.2192,0.7964,0.0885,-0.2117,0.7619,0.0934,-0.2125,0.7636,0.0916,-0.2109,0.7626,0.092,-0.2132,0.7626,0.0933,-0.2082,0.7628,0.0931,-0.2193,0.7683,0.0982,-0.2089,0.7622,0.0934,-0.2095,0.7618,0.0996,-0.2107,0.7612,0.0983,-0.207,0.7653,0.0919,-0.2084,0.7647,0.091,-0.2071,0.7652,0.1016,-0.2199,0.7722,0.098,-0.2209,0.7715,0.0967,-0.2181,0.7778,0.0917,-0.2156,0.7786,0.0905,-0.213,0.7786,0.0899,-0.208,0.7755,0.0928,-0.221,0.7981,0.0925,-0.2189,0.7987,0.0944,-0.2161,0.7852,0.0896,-0.2184,0.7851,0.0909,-0.2158,0.8274,0.0872,-0.2172,0.8273,0.0861,-0.2157,0.8232,0.0896,-0.2125,0.8072,0.0894,-0.2143,0.8184,0.091,-0.2159,0.821,0.0904,-0.2161,0.818,0.0909,-0.2185,0.817,0.0887,-0.2188,0.8137,0.0895,-0.2178,0.8233,0.0878,-0.221,0.8069,0.0896,-0.2231,0.8177,0.0801,-0.215,0.8227,0.074,-0.2088,0.8124,0.0824,-0.2218,0.7975,0.0909,-0.2167,0.7994,0.096,-0.219,0.8078,0.0917,-0.221,0.797,0.0897,-0.2233,0.8182,0.081,-0.2181,0.8201,0.0885,-0.2115,0.7788,0.0901,-0.219,0.7909,0.0898,-0.2137,0.7659,0.1031,-0.2224,0.8148,0.0832});
			return r_metacarpal_3_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_metacarpal_3 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_metacarpal_3().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_metacarpal_3\" 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_metacarpal_3 self-validation test confirmation: ");
                if (!validationResults.equals("success"))
                    System.out.println();
                System.out.println(validationResults.trim());

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