SHOW: [], HIDE: []};
var targets = [];

for (var i = 0; i < N; i++) {
  stash.HIDE.push(document.createElement('hide'));
  var show = document.createElement('show');
  container.appendChild(show);
  var target = document.createElement('target');
  container.appendChild(target);
  targets.push(target);
}

function startTransition(target, fastForward) {
  var state = target.previousSibling;
  stash[state.tagName].push(state);
  state.remove();
  var newState = state.tagName == 'SHOW' ? stash.HIDE.pop() : stas