</svg>

<P style="margin-bottom:-7px; font-size:small;">
<A name="table-of-contents"></A>
</P>
<TABLE border="1"><TR><TD>

<P>
<SCRIPT>
/***********************************************************
  <<< [OnLoad] HTML t@C[hɎs鏈 >>>
************************************************************/
function  OnLoad() {
  if ( !document.getElementsByTagName )  return;

  MyHashChangeEvent();

  // SẴm[h
  divs = document.getElementsByTagName( "div" );
  for ( i = 0; i < divs.length; i++ ) {
    if ( divs[i].className == "node" ) {
      divs[i].style.display = "none";
    }
  }
  sw_imgs = document.getElementsByTagName( "IMG" );
  for ( i = 0; i < sw_imgs.length; i++ ) {
    if ( sw_imgs[i].className == "sw_img" ) {
      s = sw_imgs[i].src;
      sw_imgs[i].src = "image/t_plus"+ s.substring( s.length - 5, s.length - 4 ) +".gif";
    }
  }

  // URL  # ȍ~ name Ɏc[vfI
  s = self.location.href;
  i = s.indexOf( "#" );  if ( i == -1 )  return;
  sub = s.substring( i + 1 );

  SelectTreeElem( sub );
}


/***********************************************************
  <<< [sw] c[m[hJ >>>
************************************************************/
function  sw( node_name, edge_flag, url, target, open_flag ) {
  var sw       = document.getElementsByName( node_name + "_sw" );
  var icon     = document.getElementsByName( node_name + "_icon" );
  var children = document.getElementsByName( node_name + "_children" );
  var display_ext = "";

  try {
    display_ext = children[0].style.display;
  } catch ( e ) {}

  if ( display_ext == "block" ) { /* JĂƂA */
    if ( open_flag != 1 ) {
      sw[0].src = "image/t_plus" + edge_flag + ".gif";
      icon[0].src = "image/t_node.gif";
      children[0].style.display = "none";
    }
  }
  else { /* ĂƂAJ */
    if ( open_flag != 0 ) {
      sw[0].src = "image/t_minus" + edge_flag + ".gif";
      icon[0].src = "image/t_open.gif";
      children[0].style.display = "block";
    }
  }

  if ( url != '' )
    target.location.href = url;

  return  false;
}


/***********************************************************
  <<< [SelectTreeElem] c[vfI >>>
************************************************************/
function  SelectTreeElem( elem_id )
{
  // m[hԍ𓾂
  for ( i = 0; i < g_elem_ids.length; i++ )
    if ( g_elem_ids[i] == elem_id )  break;
  if ( i == g_elem_ids.length ) return;
  iNode = i;

  // eJĂ
  for (;;) {
    i = g_parents[ i ];
    if ( i == -1 )  break;

    sw( "node" + i, g_flags[ i ], '', null, 1 );
  }

  // c[m[hI
  nodes = document.getElementsByName( elem_id );
  if ( nodes.length > 0 )  nodes[0].focus();
}

var  g_HashOfHere = "";


/***********************************************************
  <<< [MyHashChangeEvent] URL  # ȍ~ύXꂽƂ >>>
************************************************************/
function  MyHashChangeEvent()  // http://www.w3.org/TR/html5/history.html#event-hashchange
{                              // This code runs on FireFox and Chrome
  var  hash = window.location.hash;

  if ( hash != g_HashOfHere ) {
    g_HashOfHere = hash;

    try {
      //=== SVG  g ^O̒ɂvfɃWv
      //ȉƁAg ^O̐擪ɃWvĂ܂j
      y = 0;
      if ( hash.toString() != "" ) {
        hash = hash.substring( 1 );
        var  y = document.getElementById( hash ).parentNode.transform.baseVal.getItem(0).matrix.f +
                 document.getElementById( hash ).y.baseVal.getItem(0).value - 20;
        y = y + document.getElementById( hash ).parentNode.parentNode.offsetTop;
      }
      window.scrollTo( 0, y );
    }
    catch ( e ) {}
  }
  setTimeout( 'MyHashChangeEvent()', 300 );
}


/************************************************************/
</SCRIPT>
<STYLE type="text/css">
div.tree  { font-size:10pt;  vertical-align:middle; line-height:14px; margin-left:10px; margin-right:10px; }
span.text { cursor:hand; color:black; text-decoration:none; }
a         { color:black; text-decoration:none; }
img       { vertical-align:middle; border:0; }
p         { margin:10px; }
table     { margin:10px; }
</STYLE>

