base = [data];
cursor = [0];
function keys(key) {
  if (!key) key=1;
  if (key.target) key=key.which;
  if (key.keyCode) key=key.keyCode;
  var next = cursor[cursor.length-1];

  if (key == 37 || key == 33 || key == 38) {
    /* go backwards */
    if (--next < 0) {
      var e = document.getElementById('h' + (base.length));
      e.innerHTML = '';
      base = base.slice(0,base.length-1);
      cursor = cursor.slice(0,cursor.length-1);
      next = cursor[cursor.length-1];
    }
    if (base[base.length-1][next].constructor == Array) {
      document.getElementById('h2').innerHTML = '';
      document.getElementById('h3').innerHTML = '';
      base = base.slice(0,1);
      cursor = cursor.slice(0,1);
      next = cursor[0];
      if (next > 1) cursor[0] = --next;
      document.getElementById('h1') = e.innerHTML = base[0][next];
    }

  } else if (key == 74) {
    /* jump back */
    while (base.length>1) {
      var e = document.getElementById('h' + (base.length));
      e.innerHTML = '';
      base = base.slice(0,base.length-1);
      cursor = cursor.slice(0,cursor.length-1);
    }
    next = cursor[0]+1;
    if (base[0][next].constructor == Array) next++;

  } else if (key == 39 || key == 1 || key == 32 || key == 34 || key == 40) {
    /* advance */
    if (++next >= base[base.length-1].length) {
      while (next >= base[base.length-1].length) {
        var e = document.getElementById('h' + (base.length));
        e.innerHTML = '';
        if (base.length == 1) {
          cursor = [0];
          document.location = nextpage;
          return;
        }
        base = base.slice(0,base.length-1);
        cursor = cursor.slice(0,cursor.length-1);
        next = cursor[cursor.length-1]+2;
      }
    } else if (base[base.length-1][next].constructor == Array) {
      var e = document.getElementById('h' + (base.length));
      e.style.color = "black";
      base = base.concat([base[base.length-1][next]]);
      cursor = cursor.concat([0]);
      next = 0;
    }

  }

  cursor[cursor.length-1]=next;
  var e = document.getElementById('h' + (base.length));
  e.innerHTML = base[base.length-1][next];
  e.style.color = "red";
}
function seth1(e) {
  var h1 = document.getElementById('h1');
  h1.innerHTML = data[0];
  h1.style.color = "red";
}
window.onload = seth1;
document.onkeyup = keys;
document.onclick = keys;

