
 var cur_menu = null,
     cur_call = null,
     cur_action = Array(),
     z_index = 32767;

  Start_X = -20
  Final_X = 151;
  Frame_Timing = 40;
  Frame_Movement = 25;

 
  function open_timeline() {
    window.open('http://www.publictheater.org/nypt/final/celebrating/timeline.php','pictures','toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=0,copyhistory=0,width=820,height=495,top=100,left=175')
  }

  function showMenu_action(num, rt) {

    X = getLayerX("roll" + num, "content");

   if (X < Final_X)
    X += rt;

   if (X > Final_X) 
     X = Final_X;

    setLayerClip(Final_X - X, 0, 999, 999, "roll" + num);
    setLayerX("roll" + num, X, "content");

   if (X < Final_X)
    cur_action[num] = setTimeout("showMenu_action(" + num + ", " + (rt) + ")", Frame_Timing);
   else
    cur_action[num] = null;

  }


  function showMenu(num) {
   if (cur_action[num]) {
     clearTimeout(cur_action[num]);
     cur_action[num] = null;
   } else {
    setLayerX("roll" + num, Start_X, "content");
    setLayerZ("roll" + num, z_index, "content");
    showLayer("roll" + num.toString(), "content");
   }

    z_index ++;
    showMenu_action(num, Frame_Movement); 
  }



  function hideMenu_action(num, rt) {

    X = getLayerX("roll" + num, "content");

   if (X > Start_X)
    X -= rt;

   if (X < Start_X) 
     X = Start_X;

    setLayerClip(Final_X - X, 0, 999, 999, "roll" + num);
    setLayerX("roll" + num, X, "content");

   if (X > Start_X)
    cur_action[num] = setTimeout("hideMenu_action(" + num + ", " + (rt) + ")", Frame_Timing);
   else 
    cur_action[num] = null;

  }

  function hideMenu(num) {
   if (cur_action[num]) { 
      setTimeout("hideMenu(" + num + ")", 500); 
   } else
    hideMenu_action(num, Frame_Movement); 
  }

  var foo = null;

  function menuEnter(num) { if (foo)  clearTimeout(foo);  foo=setTimeout('menuEnter_func(' + num + ')', 320); }

  function menuEnter_func(num) {

   if (num != cur_menu) {

    if (cur_menu)  
      hideMenu(cur_menu, 0);

     killCleanUp();

     showMenu(num);
     cur_menu = num;
   } else
     killCleanUp();

  }


  function menuCleanUp() {
   if (cur_menu) {
     hideMenu(cur_menu);
     cur_menu = null;
     killCleanUp();
   }
  }

  function killCleanUp() {
   if (cur_call)  clearTimeout(cur_call);
   if (foo)  clearTimeout(foo);
  }

  function menuExit() {
    killCleanUp();
    cur_call = setTimeout("menuCleanUp()", 1500);
  }

