<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.5in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:124395242;
        mso-list-template-ids:-1;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1
        {mso-list-id:329406887;
        mso-list-template-ids:-1;}
@list l1:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level2
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level5
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level8
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l2
        {mso-list-id:547034682;
        mso-list-type:hybrid;
        mso-list-template-ids:-1432191240 -1 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l2:level1
        {mso-level-start-at:0;
        mso-level-number-format:bullet;
        mso-level-text:\F0D8;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;
        mso-fareast-font-family:"Times New Roman";
        mso-bidi-font-family:"Times New Roman";}
@list l2:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l2:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l2:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l2:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l2:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l2:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l2:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l2:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l3
        {mso-list-id:578173818;
        mso-list-template-ids:-1;}
@list l3:level1
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l3:level2
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l3:level3
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l3:level4
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l3:level5
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l3:level6
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l3:level7
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l3:level8
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l3:level9
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l4
        {mso-list-id:933243423;
        mso-list-template-ids:-1;}
@list l4:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l4:level2
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l4:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l4:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l4:level5
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l4:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l4:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l4:level8
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l4:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l5
        {mso-list-id:945773712;
        mso-list-template-ids:-1;}
@list l5:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l5:level2
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l5:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l5:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l5:level5
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l5:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l5:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l5:level8
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l5:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l6
        {mso-list-id:1254052156;
        mso-list-template-ids:-1;}
@list l6:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l6:level2
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l6:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l6:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l6:level5
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l6:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l6:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l6:level8
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l6:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l7
        {mso-list-id:1621762548;
        mso-list-type:hybrid;
        mso-list-template-ids:2101232546 -1 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l7:level1
        {mso-level-start-at:0;
        mso-level-number-format:bullet;
        mso-level-text:\F0D8;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;
        mso-fareast-font-family:"Times New Roman";
        mso-bidi-font-family:"Times New Roman";}
@list l7:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l7:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l7:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l7:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l7:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l7:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l7:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l7:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l8
        {mso-list-id:1694766535;
        mso-list-template-ids:-1;}
@list l8:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l8:level2
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l8:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l8:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l8:level5
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l8:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l8:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l8:level8
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l8:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l9
        {mso-list-id:1710646635;
        mso-list-template-ids:-1;}
@list l9:level1
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l9:level2
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l9:level3
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l9:level4
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l9:level5
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l9:level6
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l9:level7
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l9:level8
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l9:level9
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
--></style></head><body lang=EN-US link=blue vlink="#954F72" style='word-wrap:break-word'><div class=WordSection1><ul style='margin-top:0in' type=disc><li class=MsoListParagraph style='margin-left:0in;mso-list:l7 level1 lfo10'>Here are the joints in all 4 LOA's<o:p></o:p></li></ul><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>There are 5 loa steps, 0 – 4 </p><p class=MsoNormal>Joe</p><p class=MsoNormal><o:p> </o:p></p><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='border:none;padding:0in'><b>From: </b><a href="mailto:yottzumm@gmail.com">John Carlson</a><br><b>Sent: </b>Friday, February 10, 2023 3:35 PM<br><b>To: </b><a href="mailto:brutzman@nps.edu">Brutzman, Donald (Don) (CIV)</a><br><b>Cc: </b><a href="mailto:joedwil@earthlink.net">Joseph D Williams</a>; <a href="mailto:x3d-public@web3d.org">X3D Graphics public mailing list</a><br><b>Subject: </b>Re: HAnim2 LOA4 Hierarchy from X3DUOM: sleuthing to resolve anHAnimJoint validation error</p></div><p class=MsoNormal><o:p> </o:p></p><div><div><div><p class=MsoNormal>The good news is, as far as created humanoids, the DonHumanoid, StandardHumanoid, and Humanoid4 are only differentiated by whitespace.</p><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>My apologies for so many emails, Gmail has been slightly buggy with scrolling.</p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>So we need a good diffing tools to tell us about whitespace in XML and the especially Hierarchies. I'm hoping you can provide an X3D to Hierarchy tools for the x3d/tools/HAnim project, then I can convert my X3D Humanoids to hierarchies.</p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>I am glad to provide Additional LOA1-LOA3 X3D Humanoids in XML</p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Here are the joints in all 4 LOA's</p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><div><p class=MsoNormal>      4         <HAnimJoint DEF='hanim_l_talocrural' name='l_talocrural' center='0.1101 0.0656 -0.0736'></p></div><div><p class=MsoNormal>      4         <HAnimJoint DEF='hanim_r_talocrural' name='r_talocrural' center='-0.0801 0.0712 -0.0766'></p></div><div><p class=MsoNormal>      4       <HAnimJoint DEF='hanim_l_knee' name='l_knee' center='0.1040 0.4867 0.0308'></p></div><div><p class=MsoNormal>      4       <HAnimJoint DEF='hanim_r_knee' name='r_knee' center='-0.0867 0.4913 0.0318'></p></div><div><p class=MsoNormal>      4     <HAnimJoint DEF='hanim_l_hip' name='l_hip' center='0.0961 0.9124 -0.0001'></p></div><div><p class=MsoNormal>      4     <HAnimJoint DEF='hanim_r_hip' name='r_hip' center='-0.0950 0.9171 0.0029'></p></div><div><p class=MsoNormal>      4   <HAnimJoint DEF='hanim_sacroiliac' name='sacroiliac' center='0.0000 0.9149 0.0016'></p></div><div><p class=MsoNormal>      4   <HAnimJoint DEF='hanim_vl5' name='vl5' center='0.0028 1.0568 -0.0776'></p></div><div><p class=MsoNormal>      4 <HAnimJoint DEF='hanim_humanoid_root' name='humanoid_root' containerField='skeleton' center='0.0000 0.8240 0.0277'></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_humanoid_root' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_l_elbow' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_l_hip' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_l_knee' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_l_metatarsophalangeal_2' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_l_radiocarpal' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_l_shoulder' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_l_talocrural' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_r_elbow' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_r_hip' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_r_knee' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_r_metatarsophalangeal_2' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_r_radiocarpal' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_r_shoulder' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_r_talocrural' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_sacroiliac' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_skullbase' containerField='joints'/></p></div><div><p class=MsoNormal>      4 <HAnimJoint USE='hanim_vl5' containerField='joints'/></p></div></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>And here are the segments:</p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><div><p class=MsoNormal>      4           <HAnimSegment DEF='hanim_l_talus' name='l_talus'></p></div><div><p class=MsoNormal>      4           <HAnimSegment DEF='hanim_r_talus' name='r_talus'></p></div><div><p class=MsoNormal>      4         <HAnimSegment DEF='hanim_l_calf' name='l_calf'></p></div><div><p class=MsoNormal>      4         <HAnimSegment DEF='hanim_r_calf' name='r_calf'></p></div><div><p class=MsoNormal>      4       <HAnimSegment DEF='hanim_l_thigh' name='l_thigh'></p></div><div><p class=MsoNormal>      4       <HAnimSegment DEF='hanim_r_thigh' name='r_thigh'></p></div><div><p class=MsoNormal>      4     <HAnimSegment DEF='hanim_l5' name='l5'></p></div><div><p class=MsoNormal>      4     <HAnimSegment DEF='hanim_pelvis' name='pelvis'></p></div><div><p class=MsoNormal>      4   <HAnimSegment DEF='hanim_sacrum' name='sacrum'></p></div><div><p class=MsoNormal>      4 <HAnimSegment USE='hanim_l_calf' containerField='segments'/></p></div><div><p class=MsoNormal>      4 <HAnimSegment USE='hanim_l_forearm' containerField='segments'/></p></div><div><p class=MsoNormal>      4 <HAnimSegment USE='hanim_l_talus' containerField='segments'/></p></div><div><p class=MsoNormal>      4 <HAnimSegment USE='hanim_l_thigh' containerField='segments'/></p></div><div><p class=MsoNormal>      4 <HAnimSegment USE='hanim_l_upperarm' containerField='segments'/></p></div><div><p class=MsoNormal>      4 <HAnimSegment USE='hanim_l5' containerField='segments'/></p></div><div><p class=MsoNormal>      4 <HAnimSegment USE='hanim_pelvis' containerField='segments'/></p></div><div><p class=MsoNormal>      4 <HAnimSegment USE='hanim_r_calf' containerField='segments'/></p></div><div><p class=MsoNormal>      4 <HAnimSegment USE='hanim_r_forearm' containerField='segments'/></p></div><div><p class=MsoNormal>      4 <HAnimSegment USE='hanim_r_talus' containerField='segments'/></p></div><div><p class=MsoNormal>      4 <HAnimSegment USE='hanim_r_thigh' containerField='segments'/></p></div><div><p class=MsoNormal>      4 <HAnimSegment USE='hanim_r_upperarm' containerField='segments'/></p></div><div><p class=MsoNormal>      4 <HAnimSegment USE='hanim_sacrum' containerField='segments'/></p></div></div><div><p class=MsoNormal>Thanks!</p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>John</p></div></div></div></div><p class=MsoNormal><o:p> </o:p></p><div><div><p class=MsoNormal>On Fri, Feb 10, 2023 at 5:17 PM John Carlson <<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a>> wrote:</p></div><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in'><div><div><div><div><div><div><div><div><div><p class=MsoNormal>There are whitespace differences with my version of the Hierarchy.  Looks like it will take more time to correctly assess things.</p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>$ diff -w Hierarchy.txt ../../../stylesheets/HAnimLOA4HierarchyTable.txt</p></div><div><p class=MsoNormal>0a1,9</p></div><div><p class=MsoNormal>> HAnim2 LOA4 Hierarchy from X3DUOM</p></div><div><p class=MsoNormal>> <a href="https://www.web3d.org/x3d/stylesheets/HAnimLOA4HierarchyTable.txt" target="_blank">https://www.web3d.org/x3d/stylesheets/HAnimLOA4HierarchyTable.txt</a></p></div><div><p class=MsoNormal>><o:p> </o:p></p></div><div><p class=MsoNormal>> Authoritative reference: HAnim version 2, Part 1: Humanoid animation (HAnim) architecture,</p></div><div><p class=MsoNormal>>   clause 4 Concepts, section 4.9.6.4 LOA‑4 hierarchy</p></div><div><p class=MsoNormal>> <a href="https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#Hierarchy4" target="_blank">https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#Hierarchy4</a></p></div><div><p class=MsoNormal>>   clause 4 Concepts, Figure 4.7 — LOA‑4 joints</p></div><div><p class=MsoNormal>> <a href="https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#f-LOA4Joints" target="_blank">https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#f-LOA4Joints</a></p></div><div><p class=MsoNormal>><o:p> </o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>I have moved my HAnim development, for the most part, minus adding center and translations that aren't in tables.</p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>The development is under this folder x3d-code/<a href="http://www.web3d.org/x3d/tools/HAnim" target="_blank">www.web3d.org/x3d/tools/HAnim</a>:</p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>HAnim/hier2x3d/build.xml -- ant script for building LOA1 - LOA4, Don's Humanoid (from X3DUOM?), and corrected standard (spaces, etc.)</p></div><div><p class=MsoNormal>HAnim/hier2x3d/<a href="http://hier2x3d.pl" target="_blank">hier2x3d.pl</a> -- perl script to build each humanoid</p></div><div><p class=MsoNormal>HAnim/hier2x3d/hier2x3d.sh -- sample script to build a couple of humanoids, see build.xml</p></div><div><p class=MsoNormal>HAnim/hier2x3d/sed.sh -- script to scrape even A annexes</p></div><div><p class=MsoNormal>HAnim/hier2x3d/sitesed.sh -- script to scrap old A annexes</p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>HAnim/results/DonHumanoid.x3d -- result from ../../../stylesheets/HAnimLOA4HierarchyTable.txt</p></div><div><p class=MsoNormal>HAnim/results/Humanoid1.x3d -- result from LOA1</p></div><div><p class=MsoNormal>HAnim/results/Humanoid2.x3d -- result from LOA2</p></div><div><p class=MsoNormal>HAnim/results/Humanoid3.x3d -- result from LOA3</p></div><div><p class=MsoNormal>HAnim/results/Humanoid4.x3d -- result from LOA4</p></div><div><p class=MsoNormal>HAnim/results/StandardHumanoid.x3d -- result from cleaned up LOA4</p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Input standards</p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>HAnim/standards/4.7.txt</p></div><div><p class=MsoNormal>HAnim/standards/A.10.txt</p></div><div><p class=MsoNormal>HAnim/standards/A.11.txt</p></div><div><p class=MsoNormal>HAnim/standards/A.2.txt</p></div><div><p class=MsoNormal>HAnim/standards/A.3.txt</p></div><div><p class=MsoNormal>HAnim/standards/A.4.txt</p></div><div><p class=MsoNormal>HAnim/standards/A.5.txt</p></div><div><p class=MsoNormal>HAnim/standards/A.6.txt</p></div><div><p class=MsoNormal>HAnim/standards/A.7.txt</p></div><div><p class=MsoNormal>HAnim/standards/A.8.txt</p></div><div><p class=MsoNormal>HAnim/standards/A.9.txt</p></div><div><p class=MsoNormal>HAnim/standards/B.2.txt</p></div><div><p class=MsoNormal>HAnim/standards/Hier1.txt</p></div><div><p class=MsoNormal>HAnim/standards/Hier2.txt</p></div><div><p class=MsoNormal>HAnim/standards/Hier3.txt</p></div><div><p class=MsoNormal>HAnim/standards/Hier4.txt</p></div><div><p class=MsoNormal>HAnim/standards/Hierarchy.txt (modified Hier4.txt)</p></div></div></div></div></div></div></div></div></div></div><p class=MsoNormal><o:p> </o:p></p><div><div><p class=MsoNormal>On Fri, Feb 10, 2023 at 10:14 AM Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>> wrote:</p></div><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in'><div><div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Wondering who might be willing to check that the autogenerated table correctly matches the specification?</p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><ul type=disc><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo1'><span style='font-size:9.0pt;font-family:"Courier New"'><a href="https://www.web3d.org/x3d/stylesheets/HAnimLOA4HierarchyTable.txt" target="_blank">https://www.web3d.org/x3d/stylesheets/HAnimLOA4HierarchyTable.txt</a></span></li></ul><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>It will be excellent one we are confident that our autogenerated validation checks are 100% consistent with the X3D4 and HAnim2 architecture specifications.</p><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'> </span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>all the best, Don</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>-- </span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>Don Brutzman  Naval Postgraduate School, Code USW/Br        <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA    +1.831.656.2149</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>X3D graphics, virtual worlds, Navy robotics https://</span> <span style='font-size:10.0pt;font-family:"Courier New"'><a href="http://faculty.nps.edu/brutzman" target="_blank">faculty.nps.edu/brutzman</a></span></p></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b>From:</b> Brutzman, Donald (Don) (CIV) <br><b>Sent:</b> Sunday, January 29, 2023 10:19 AM<br><b>To:</b> Joseph D Williams <<a href="mailto:joedwil@earthlink.net" target="_blank">joedwil@earthlink.net</a>>; John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>><br><b>Cc:</b> X3D Graphics public mailing list <<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>>; <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a><br><b>Subject:</b> RE: HAnim2 LOA4 Hierarchy from X3DUOM: sleuthing to resolve an HAnimJoint validation error</p></div></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>While testing for deployment, found another glaring error.  From recently adjusted JoeKick.x3d model:</p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><ul type=disc><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo2'><a href="https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Skin/JoeKickIndex.html" target="_blank">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Skin/JoeKickIndex.html</a></li></ul><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-family:"Courier New"'> <HAnimJoint DEF='Joe_skullbase' center='0 1.63 -0.01' name='skullbase' skinCoordIndex='0 1 2 3 4 5 6 7 8 9' skinCoordWeight='1 1 1 1 1 1 1 1 1 1'></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-family:"Courier New"'>                <HAnimDisplacer DEF='Joe_skull_tip_raiser_action' coordIndex='0 1 2 3 4 5 6 7 8 9' displacements='0 0.15 0 0 0 0.15 -0.1 0 0.15 0.1 0 0.05 0 -0.02 0.05 -0.15 0 0 -0.05 0 0 0.15 0 0 0.05 0 0 0 0 -0.15' name='skull_tip_raiser_action'/></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-family:"Courier New"'>                <HAnimJoint DEF='Joe_l_eyelid_joint' center='0.034 1.659 0.06' name='l_eyelid_joint'/></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-family:"Courier New"'>                <HAnimJoint DEF='Joe_l_eyeball_joint' center='0.034 1.659 0.06' name='l_eyeball_joint'/></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-family:"Courier New"'>                <HAnimJoint DEF='Joe_l_eyebrow_joint' center='0.034 1.659 0.06' name='l_eyebrow_joint'/></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-family:"Courier New"'>                <HAnimJoint DEF='Joe_r_eyelid_joint' center='-0.034 1.659 0.06' name='r_eyelid_joint'/></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-family:"Courier New"'>                <HAnimJoint DEF='Joe_r_eyeball_joint' center='-0.034 1.659 0.06' name='r_eyeball_joint'/></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-family:"Courier New"'>                <HAnimJoint DEF='Joe_r_eyebrow_joint' center='-0.034 1.659 0.06' name='r_eyebrow_joint'/></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-family:"Courier New"'>                <HAnimJoint DEF='Joe_temporomandibular' center='0.034 1.659 0.06' name='temporomandibular'/></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-family:"Courier New"'>  </HAnimJoint></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Which certainly looks legal according to the two governing specifications, which both state that HAnimJoint can contain multiple HAnimDisplacer, HAnimJoint and HAnimSegment nodes.</p><ul type=disc><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l4 level1 lfo3'><b>X3D4 Architecture, HAnim component, 26.3.3 HAnimJoint</b></li><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l4 level1 lfo3'><a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-DIS/Part01/components/hanim.html#HAnimJoint" target="_blank">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-DIS/Part01/components/hanim.html#HAnimJoint</a></li><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l4 level1 lfo3'><b>HAnim2 part 1, 6 Object interfaces, 6.3 Joint</b></li><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l4 level1 lfo3'><a href="https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Joint" target="_blank">https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Joint</a></li></ul><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>HOWEVER, this block produces obscure X3D XML DTD and X3D XML Schema errors such as</p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='font-size:9.0pt;font-family:"Courier New"'>Performing DTD validation...</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='font-size:9.0pt;font-family:"Courier New"'>Checking file:/C:/x3d-code/<a href="http://www.web3d.org/x3d/content/examples/HumanoidAnimation/Skin/JoeKick.x3d." target="_blank">www.web3d.org/x3d/content/examples/HumanoidAnimation/Skin/JoeKick.x3d.</a>..</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='font-size:9.0pt;font-family:"Courier New"'>The content of element type "HAnimJoint" must match "(IS?,(MetadataBoolean|MetadataDouble|MetadataFloat|MetadataInteger|MetadataSet|MetadataString|ProtoInstance)?,(HAnimJoint|HAnimSegment|ProtoInstance)*)".</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-indent:.5in'><span style='font-size:9.0pt;font-family:"Courier New"'>XML DTD validation: fail!</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'> </span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='font-size:9.0pt;font-family:"Courier New"'>XML validation started.</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='font-size:9.0pt;font-family:"Courier New"'>Checking file:/C:/x3d-code/<a href="http://www.web3d.org/x3d/content/examples/HumanoidAnimation/Skin/JoeKick.x3d." target="_blank">www.web3d.org/x3d/content/examples/HumanoidAnimation/Skin/JoeKick.x3d.</a>..</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='font-size:9.0pt;font-family:"Courier New"'>cvc-complex-type.2.4.a: Invalid content was found starting with element 'HAnimDisplacer'. One of '{IS, MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataSet, MetadataString, HAnimJoint, HAnimSegment, ProtoInstance}' is expected. [101] </span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='font-size:9.0pt;font-family:"Courier New"'>The content of element type "HAnimJoint" must match "(IS?,(MetadataBoolean|MetadataDouble|MetadataFloat|MetadataInteger|MetadataSet|MetadataString|ProtoInstance)?,(HAnimJoint|HAnimSegment|ProtoInstance)*)". [109] </span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='font-size:9.0pt;font-family:"Courier New"'>XML validation finished.</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Quiz question:  what are these cryptic errors telling us?  Look carefully, try to understand what these XML tools are saying…</p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Quiz hint, found in those diagnostic reports:  <i><span style='font-size:9.0pt;font-family:"Courier New"'>Invalid content was found starting with element 'HAnimDisplacer'</span></i></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Quiz answer: neither validation tool is allowing the HAnimJoint content model of contained nodes to include HAnimDisplacer… which is a mistake by each tool!  The X3D4 and HAnim2 specifications are authoritative, and they say OK.</p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Therefore, good news: our relentless testing found another validation error.  I’ve applied the correction and updated X3D XML DTD, X3D XML Schema and corresponding documentation.  These corrections help us with all of our other model testing, now and in the future.</p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Five-star surprise: this error has persisted through X3D 3.0, 3.1, 3.2, 3.3 and 4.0.  Oh my goodness… we are still learning, and we certainly don’t have enough models using HAnimDisplacer to force exposure of such an issue.  Thanks Joe for continuing with your JoeKick model and other examples.</p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>The journey continues…  updates checked in and deployed.  JoeKick.x3d now validates without complaint.  Am restarting the test and deployment cycle, onward we go.</p><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'> </span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>all the best, Don</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>-- </span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>Don Brutzman  Naval Postgraduate School, Code USW/Br        <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA    +1.831.656.2149</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>X3D graphics, virtual worlds, Navy robotics https://</span> <span style='font-size:10.0pt;font-family:"Courier New"'><a href="http://faculty.nps.edu/brutzman" target="_blank">faculty.nps.edu/brutzman</a></span></p></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b>From:</b> Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>> <br><b>Sent:</b> Saturday, January 28, 2023 1:19 PM<br><b>To:</b> Joseph D Williams <<a href="mailto:joedwil@earthlink.net" target="_blank">joedwil@earthlink.net</a>>; John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>><br><b>Cc:</b> X3D Graphics public mailing list <<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>>; Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>><br><b>Subject:</b> HAnim2 LOA4 Hierarchy from X3DUOM</p></div></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>As part of followup actions from yesterday’s three specific parent-child relationship corrections, am now autogenerating the following table using X3DUOM.  It should match the international-standard hand-generated HAnim2 specification for LOA-4 Hierarchy.</p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Spot check:</p><ol start=1 type=a><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l3 level1 lfo4'>Joint vl5 has parent humanoid_root</li><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l3 level1 lfo4'>Joint l_sternoclavicular has parent vt1</li><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l3 level1 lfo4'>Joint r_sternoclavicular has parent vt1</li></ol><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Am hoping that someone can check that <i>everything</i> matches correctly -- hey, this should match your body too!  Any remaining parent-child relationship errors that are similar to yesterday’s errors should stand out.  All corrections are most welcome.</p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>This is another great confirmation test to continue improving our confidence when producing and diagnosing the correctness of HAnim models.  The autogeneration stylesheet and these results are all checked into version control, and they are now part of our production chain for X3D4 validation.  I will continue work on various other autogenerated diagnostics (X3D Schematron, X3D Validator, X3D-Edit etc.) and report when everything is ready.</p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Thanks again to Joe and John for dogged persistence tracking down the errors in the first place.  Essential work.</p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Have fun with HAnim and X3D!  8)</p><div style='border:none;border-bottom:solid windowtext 1.5pt;padding:0in 0in 1.0pt 0in'><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-family:"Courier New"'> </span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>HAnim2 LOA4 Hierarchy from X3DUOM</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'><a href="https://www.web3d.org/x3d/stylesheets/HAnimLOA4HierarchyTable.txt" target="_blank">https://www.web3d.org/x3d/stylesheets/HAnimLOA4HierarchyTable.txt</a></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'> </span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>Authoritative reference: HAnim version 2, Part 1: Humanoid animation (HAnim) architecture,</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  clause 4 Concepts, section 4.9.6.4 LOA</span><span style='font-size:9.0pt;font-family:"Cambria Math",serif'>‑</span><span style='font-size:9.0pt;font-family:"Courier New"'>4 hierarchy</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'><a href="https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#Hierarchy4" target="_blank">https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#Hierarchy4</a></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  clause 4 Concepts, Figure 4.7 — LOA</span><span style='font-size:9.0pt;font-family:"Cambria Math",serif'>‑</span><span style='font-size:9.0pt;font-family:"Courier New"'>4 joints</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'><a href="https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#f-LOA4Joints" target="_blank">https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#f-LOA4Joints</a></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'> </span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>humanoid_root : sacrum</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  sacroiliac : pelvis</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | l_hip : l_thigh</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | | l_knee : l_calf</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |   l_talocrural : l_talus</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     l_talocalcaneonavicular : l_navicular</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     | l_cuneonavicular_1 : l_cuneiform_1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     | | l_tarsometatarsal_1 : l_metatarsal_1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     | |   l_metatarsophalangeal_1 : l_tarsal_proximal_phalanx_1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     | |     l_tarsal_interphalangeal_1 : l_tarsal_distal_phalanx_1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     | l_cuneonavicular_2 : l_cuneiform_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     | | l_tarsometatarsal_2 : l_metatarsal_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     | |   l_metatarsophalangeal_2 : l_tarsal_proximal_phalanx_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     | |     l_tarsal_proximal_interphalangeal_2 : l_tarsal_middle_phalanx_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     | |       l_tarsal_distal_interphalangeal_2 : l_tarsal_distal_phalanx_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     | l_cuneonavicular_3 : l_cuneiform_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     |   l_tarsometatarsal_3 : l_metatarsal_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     |     l_metatarsophalangeal_3 : l_tarsal_proximal_phalanx_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     |       l_tarsal_proximal_interphalangeal_3 : l_tarsal_middle_phalanx_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     |         l_tarsal_distal_interphalangeal_3 : l_tarsal_distal_phalanx_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |     l_calcaneocuboid : l_calcaneus</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |       l_transversetarsal : l_cuboid</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |         l_tarsometatarsal_4 : l_metatarsal_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |         | l_metatarsophalangeal_4 : l_tarsal_proximal_phalanx_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |         |   l_tarsal_proximal_interphalangeal_4 : l_tarsal_middle_phalanx_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |         |     l_tarsal_distal_interphalangeal_4 : l_tarsal_distal_phalanx_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |         l_tarsometatarsal_5 : l_metatarsal_5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |           l_metatarsophalangeal_5 : l_tarsal_proximal_phalanx_5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |             l_tarsal_proximal_interphalangeal_5 : l_tarsal_middle_phalanx_5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | |               l_tarsal_distal_interphalangeal_5 : l_tarsal_distal_phalanx_5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  | r_hip : r_thigh</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |   r_knee : r_calf</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |     r_talocrural : r_talus</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       r_talocalcaneonavicular : r_navicular</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       | r_cuneonavicular_1 : r_cuneiform_1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       | | r_tarsometatarsal_1 : r_metatarsal_1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       | |   r_metatarsophalangeal_1 : r_tarsal_proximal_phalanx_1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       | |     r_tarsal_interphalangeal_1 : r_tarsal_distal_phalanx_1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       | r_cuneonavicular_2 : r_cuneiform_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       | | r_tarsometatarsal_2 : r_metatarsal_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       | |   r_metatarsophalangeal_2 : r_tarsal_proximal_phalanx_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       | |     r_tarsal_proximal_interphalangeal_2 : r_tarsal_middle_phalanx_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       | |       r_tarsal_distal_interphalangeal_2 : r_tarsal_distal_phalanx_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       | r_cuneonavicular_3 : r_cuneiform_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       |   r_tarsometatarsal_3 : r_metatarsal_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       |     r_metatarsophalangeal_3 : r_tarsal_proximal_phalanx_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       |       r_tarsal_proximal_interphalangeal_3 : r_tarsal_middle_phalanx_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       |         r_tarsal_distal_interphalangeal_3 : r_tarsal_distal_phalanx_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |       r_calcaneocuboid : r_calcaneus</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |         r_transversetarsal : r_cuboid</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |           r_tarsometatarsal_4 : r_metatarsal_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |           | r_metatarsophalangeal_4 : r_tarsal_proximal_phalanx_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |           |   r_tarsal_proximal_interphalangeal_4 : r_tarsal_middle_phalanx_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |           |     r_tarsal_distal_interphalangeal_4 : r_tarsal_distal_phalanx_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |           r_tarsometatarsal_5 : r_metatarsal_5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |             r_metatarsophalangeal_5 : r_tarsal_proximal_phalanx_5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |               r_tarsal_proximal_interphalangeal_5 : r_tarsal_middle_phalanx_5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  |                 r_tarsal_distal_interphalangeal_5 : r_tarsal_distal_phalanx_5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>  vl5 : l5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>    vl4 : l4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>      vl3 : l3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>        vl2 : l2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>          vl1 : l1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>            vt12 : t12</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>              vt11 : t11</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                vt10 : t10</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                  vt9 : t9</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                    vt8 : t8</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                      vt7 : t7</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                        vt6 : t6</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                          vt5 : t5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                            vt4 : t4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                              vt3 : t3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                vt2 : t2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                  vt1 : t1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    vc7 : c7</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    | vc6 : c6</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |   vc5 : c5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |     vc4 : c4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |       vc3 : c3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         vc2 : c2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |           vc1 : c1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |             skullbase : skull</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |               l_eyelid_joint : l_eyelid</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |               r_eyelid_joint : r_eyelid</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |               l_eyeball_joint : l_eyeball</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |               r_eyeball_joint : r_eyeball</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |               l_eyebrow_joint : l_eyebrow</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |               r_eyebrow_joint : r_eyebrow</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |               temporomandibular : jaw</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    l_sternoclavicular : l_clavicle</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    | l_acromioclavicular : l_scapula</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |   l_shoulder : l_upperarm</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |     l_elbow : l_forearm</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |       l_radiocarpal : l_carpal</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         l_midcarpal_1 : l_trapezium</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         | l_carpometacarpal_1 : l_metacarpal_1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         |   l_metacarpophalangeal_1 : l_carpal_proximal_phalanx_1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         |     l_carpal_interphalangeal_1 : l_carpal_distal_phalanx_1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         l_midcarpal_2 : l_trapezoid</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         | l_carpometacarpal_2 : l_metacarpal_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         |   l_metacarpophalangeal_2 : l_carpal_proximal_phalanx_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         |     l_carpal_proximal_interphalangeal_2 : l_carpal_middle_phalanx_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         |       l_carpal_distal_interphalangeal_2 : l_carpal_distal_phalanx_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         l_midcarpal_3 : l_capitate</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         | l_carpometacarpal_3 : l_metacarpal_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         |   l_metacarpophalangeal_3 : l_carpal_proximal_phalanx_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         |     l_carpal_proximal_interphalangeal_3 : l_carpal_middle_phalanx_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         |       l_carpal_distal_interphalangeal_3 : l_carpal_distal_phalanx_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |         l_midcarpal_4_5 : l_hamate</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |           l_carpometacarpal_4 : l_metacarpal_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |           | l_metacarpophalangeal_4 : l_carpal_proximal_phalanx_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |           |   l_carpal_proximal_interphalangeal_4 : l_carpal_middle_phalanx_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |           |     l_carpal_distal_interphalangeal_4 : l_carpal_distal_phalanx_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |           l_carpometacarpal_5 : l_metacarpal_5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |             l_metacarpophalangeal_5 : l_carpal_proximal_phalanx_5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |               l_carpal_proximal_interphalangeal_5 : l_carpal_middle_phalanx_5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    |                 l_carpal_distal_interphalangeal_5 : l_carpal_distal_phalanx_5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                    r_sternoclavicular : r_clavicle</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                      r_acromioclavicular : r_scapula</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                        r_shoulder : r_upperarm</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                          r_elbow : r_forearm</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                            r_radiocarpal : r_carpal</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                              r_midcarpal_1 : r_trapezium</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                              | r_carpometacarpal_1 : r_metacarpal_1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                              |   r_metacarpophalangeal_1 : r_carpal_proximal_phalanx_1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                              |     r_carpal_interphalangeal_1 : r_carpal_distal_phalanx_1</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                              r_midcarpal_2 : r_trapezoid</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                              | r_carpometacarpal_2 : r_metacarpal_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                              |   r_metacarpophalangeal_2 : r_carpal_proximal_phalanx_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                              |     r_carpal_proximal_interphalangeal_2 : r_carpal_middle_phalanx_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                              |       r_carpal_distal_interphalangeal_2 : r_carpal_distal_phalanx_2</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                              r_midcarpal_3 : r_capitate</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                              | r_carpometacarpal_3 : r_metacarpal_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                              |   r_metacarpophalangeal_3 : r_carpal_proximal_phalanx_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                              |     r_carpal_proximal_interphalangeal_3 : r_carpal_middle_phalanx_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                              |       r_carpal_distal_interphalangeal_3 : r_carpal_distal_phalanx_3</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                              r_midcarpal_4_5 : r_hamate</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                                r_carpometacarpal_4 : r_metacarpal_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                                | r_metacarpophalangeal_4 : r_carpal_proximal_phalanx_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                                |   r_carpal_proximal_interphalangeal_4 : r_carpal_middle_phalanx_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                                |     r_carpal_distal_interphalangeal_4 : r_carpal_distal_phalanx_4</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                                r_carpometacarpal_5 : r_metacarpal_5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                                  r_metacarpophalangeal_5 : r_carpal_proximal_phalanx_5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                                    r_carpal_proximal_interphalangeal_5 : r_carpal_middle_phalanx_5</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Courier New"'>                                                      r_carpal_distal_interphalangeal_5 : r_carpal_distal_phalanx_5</span></p><div style='border:none;border-bottom:solid windowtext 1.5pt;padding:0in 0in 1.0pt 0in'><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-family:"Courier New"'> </span></p></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-family:"Courier New"'> </span></p><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>all the best, Don</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>-- </span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>Don Brutzman  Naval Postgraduate School, Code USW/Br        <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA    +1.831.656.2149</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>X3D graphics, virtual worlds, Navy robotics https://</span> <span style='font-size:10.0pt;font-family:"Courier New"'><a href="http://faculty.nps.edu/brutzman" target="_blank">faculty.nps.edu/brutzman</a></span></p></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b>From:</b> Brutzman, Donald (Don) (CIV) <br><b>Sent:</b> Friday, January 27, 2023 7:02 PM<br><b>To:</b> Joseph D Williams <<a href="mailto:joedwil@earthlink.net" target="_blank">joedwil@earthlink.net</a>>; John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>><br><b>Cc:</b> X3D Graphics public mailing list <<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>>; <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a><br><b>Subject:</b> RE: HAnim Schematron output sampled</p></div></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Thanks for discussion Joe, really helpful.  We definitely have had some mixed signals here.</p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Summary of changes we applied to HAnim schema relationships:</p><ol start=1 type=a><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l9 level1 lfo5'>Joint vl5 has parent humanoid_root</li><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l9 level1 lfo5'>Joint l_sternoclavicular has parent vt1</li><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l9 level1 lfo5'>Joint r_sternoclavicular has parent vt1</li></ol><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>I will work on updating these corrections into all the tools accordingly – X3DUOM, X3D Schematron, X3DJSAIL Java, X3DPSAIL Python, and X3D-Edit..</p><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'> </span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Thanks too for fixing multiple models together.</p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Awesome work, sincere thanks, take care.</p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>all the best, Don</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>-- </span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>Don Brutzman  Naval Postgraduate School, Code USW/Br        <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA    +1.831.656.2149</span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.0pt;font-family:"Courier New"'>X3D graphics, virtual worlds, Navy robotics https://</span> <span style='font-size:10.0pt;font-family:"Courier New"'><a href="http://faculty.nps.edu/brutzman" target="_blank">faculty.nps.edu/brutzman</a></span></p></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b>From:</b> Joseph D Williams <<a href="mailto:joedwil@earthlink.net" target="_blank">joedwil@earthlink.net</a>> <br><b>Sent:</b> Sunday, January 22, 2023 11:53 AM<br><b>To:</b> Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>>; John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>><br><b>Cc:</b> X3D Graphics public mailing list <<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>><br><b>Subject:</b> RE: HAnim Schematron output sampled</p></div></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><ul type=disc><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l6 level1 lfo6'>vl5 has parent humanoid_root rather than expected sacroiliac  </li><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l6 level1 lfo6'>l_sternoclavicular has parent vt1 rather than expected vc7</li><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l6 level1 lfo6'>r_sternoclavicular has parent vt1 rather than expected vc7 </li></ul><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Don, these three items serve as a summary when processing a model that is correct according to the diagram. </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Much to discuss regarding some existing examples. </p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Joe</p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b>From: </b><a href="mailto:brutzman@nps.edu" target="_blank">Brutzman, Donald (Don) (CIV)</a><br><b>Sent: </b>Sunday, January 22, 2023 10:09 AM<br><b>To: </b><a href="mailto:joedwil@earthlink.net" target="_blank">Joseph D Williams</a>; <a href="mailto:yottzumm@gmail.com" target="_blank">John Carlson</a><br><b>Cc: </b><a href="mailto:x3d-public@web3d.org" target="_blank">X3D Graphics public mailing list</a><br><b>Subject: </b>Re: HAnim Schematron output sampled</p></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p><div><div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Sounds like progress, but not quite focused enough to make any fixes yet…. Clarity his critical. </p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Hopefully you guys can create a simple list consisting of simple triplets:</p></div><div><ul type=disc><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l5 level1 lfo7'>suspect joint or segment name, </li><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l5 level1 lfo7'>the incorrect parent described in the X3D XML schema,, and </li><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l5 level1 lfo7'>the correct parent shown by the diagrams in the specifications.</li></ul></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p></div><div id="m_-4092417142827514649m_-5745005596228951280m_1659857756866579327ms-outlook-mobile-signature"><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>If there is such a simple list of a few names/errors/corrections available, I hope to have some time Monday or Tuesday afternoon to work on it together.  Onward…</p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>v/r Don</p></div></div></div></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><img border=0 width=554 height=2 style='width:5.775in;height:.025in' id="m_-4092417142827514649m_-5745005596228951280m_1659857756866579327Horizontal_x0020_Line_x0020_1" src="cid:image002.png@01D93E15.1A5D55A0"></p><div id="m_-4092417142827514649m_-5745005596228951280m_1659857756866579327divRplyFwdMsg"><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b><span style='color:black'>From:</span></b><span style='color:black'> Joseph D Williams <<a href="mailto:joedwil@earthlink.net" target="_blank">joedwil@earthlink.net</a>><br><b>Sent:</b> Saturday, January 21, 2023 11:07:06 PM<br><b>To:</b> John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>>; Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>>; X3D Graphics public mailing list <<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>><br><b>Subject:</b> RE: HAnim Schematron output sampled</span> </p><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> </p></div></div><div><div><div><p>Hi, </p><p>The expected ones are not correct.  Vl5 is a child of root and sternos and vc7 are childs of vt1. The schematron claims are wrong. </p><p>The schematron is wrong according to the Concepts 4 diagrams for loa3 and loa4. </p><p> </p><ul type=disc><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l8 level1 lfo8'>Yes, vl5 is a child of sacroiliac, according to Joe.   X3DUOM/schematron wins!</li></ul><p> </p><p>No, vl5 is a child of root. Schematron is wrong.</p><p>The diagrams are correct. </p><p>Joe</p><p> </p><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p><b>From: </b><a href="mailto:yottzumm@gmail.com" target="_blank">John Carlson</a><br><b>Sent: </b>Sunday, January 15, 2023 5:46 PM<br><b>To: </b><a href="mailto:joedwil@earthlink.net" target="_blank">Joe D Williams</a>; <a href="mailto:brutzman@nps.edu" target="_blank">Don Brutzman</a>; <a href="mailto:x3d-public@web3d.org" target="_blank">X3D Graphics public mailing list</a><br><b>Subject: </b>Re: HAnim Schematron output sampled</p></div><div><div><p> <br>vl5 has parent humanoid_root rather than expected sacroiliac.  Yes, vl5 is a child of sacroiliac, according to Joe.   X3DUOM/schematron wins!</p><div><div><p>l_sternoclavicular has parent vt1 rather than expected vc7.  Please confirm.</p></div><div><p>r_sternoclavicular has parent vt1 rather than expected vc7.  Please confirm. </p></div></div></div></div></div></div></div></div></div></div></div></blockquote></div></blockquote></div><p style='margin-left:9.6pt'> </p><p class=MsoNormal><o:p> </o:p></p></div></body></html>