<!--hide
var MaxLength = 0;

function secondaryObject(inName, inUrl, inTarget) {
   //Abstract:    Creates a selectionArrayObject.
  this.inName=inName;
  this.inUrl=inUrl;
  this.inTarget=inTarget;
  return (this);
}

function makePrimaryEntry(){
  //Abstract:    Creates a mainArrayObject.
  this.category=null;
  this.secondary=new Array();
  return (this);
}

function makeMenuArray() {
  //Parameters:  (category1, menuchoice1, url1, ...menuchoicen, urln,
  //"/", category2, menuchoice1, url1, ..."/", categoryn, 
  //menuchoice1, url1, ..."/")
  //Abstract:    Creates an array of makePrimaryEntrys.

  var i;
  var out = false;
  var thisindex = 0; // main menu index
  var argindex = 0;  // indexes thru parameters
  while ((makeMenuArray.arguments.length - 1) > argindex) {
    this[thisindex]= new makePrimaryEntry();
    this[thisindex].category= makeMenuArray.arguments[argindex];
    argindex++;
    i = 0;   // secondary menu index
    out = false;
    while ((makeMenuArray.arguments[argindex]!="/")&&(argindex<(makeMenuArray.arguments.length - 1))) {
      this[thisindex].secondary[i]=new secondaryObject();
      this[thisindex].secondary[i].inName=makeMenuArray.arguments[argindex++]; 
      this[thisindex].secondary[i].inUrl=makeMenuArray.arguments[argindex++]; 
      this[thisindex].secondary[i].inTarget=makeMenuArray.arguments[argindex++];
      i++;
      if (i>MaxLength) MaxLength=i;
    }
    thisindex++; argindex++;
  }
  return (this);
}

function writeForm(ArrayName) {
  document.write('<FORM NAME = "',curName(),'">');
   
  // write categories menu
  document.write('Category: ');
  document.write('<SELECT NAME="Categories" onChange="changeMenu(\'',curName(),'\', \'',ArrayName,'\')">');   
  for (var i in this[ArrayName]){
    document.write('<OPTION>', this[ArrayName][i].category, '</OPTION>');
  }
  document.write('</SELECT><br>Topic: ');

  //write selections menu
  document.write ('<SELECT NAME="Selections" onChange="confirmChange(\'',curName(),'\', \'' ,ArrayName ,'\')">');
  // Just write enough options to set up the options array
  for (var i=0; i< MaxLength; i++)
    document.write('<OPTION>'+this[ArrayName][0].secondary[0].inName+'</OPTION>');
  document.write('</SELECT></FORM>');

  // document.DoubleMenu.Categories.options[0].selected=true;
  preLoad("changeMenu (\""+curName()+"\", \""+ArrayName+"\");");
  newName()
}
 
function changeMenu(MenuName, ArrayName) {
  var selectedCategory=document[MenuName].Categories.selectedIndex;
  document[MenuName].Selections.options.length=this[ArrayName][selectedCategory].secondary.length;      

 for (var i in (this[ArrayName][selectedCategory].secondary))
   document[MenuName].Selections.options[i].text =this[ArrayName][selectedCategory].secondary[i].inName;

 document[MenuName].Selections.options[0].selected = true;
} // end changeMenu

function confirmChange(MenuName, ArrayName) {
  var PIdx=document[MenuName].Categories.selectedIndex;
  var SIdx=document[MenuName].Selections.selectedIndex;
  document[MenuName].Selections.options[0].selected = true;
  if (this[ArrayName][PIdx].secondary[SIdx].inUrl != null) {
    if (this[ArrayName][PIdx].secondary[SIdx].inTarget == "_parent") {
      parent.location.href=this[ArrayName][PIdx].secondary[SIdx].inUrl;
    } else {
      parent.body.location.href=this[ArrayName][PIdx].secondary[SIdx].inUrl;
    }
  }
}
// unhide -->