code: function() {
          var current = this.previousStack.shift();
          var state = this.previousStack.shift();
          if(state != undefined) {
              this.nextStack.unshift(current);
              this.previousStack.unshift(state);
              this.restoring = true;
              this.restore(state);
              this.restoring = false;
              this.onNextChange(this.nextStack[0], this.nextStack.length);
              this.onPreviousChange(
                  this.previousStack[1], this.previousStack.length - 1
              );
          } else {
              this.previousStack.unshift(current);
          }
          return state;
      }
docs: Method: previousTrigger
  Restore the previous state.  If no items are in the previous history
  stack, this has no effect.
  
  Returns:
  {Object} Item representing state that was restored.  Undefined if no
  items are in the previous history stack.