code: function(){
                  /*
                   * page:
                   *    PAGE_SYM S* IDENT? pseudo_page? S*
                   *    '{' S* [ declaration | margin ]? [ ';' S* [ declaration | margin ]? ]* '}' S*
                   *    ;
                   */
                  var tokenStream = this._tokenStream,
                      line,
                      col,
                      identifier  = null,
                      pseudoPage  = null;
  
                  //look for @page
                  tokenStream.mustMatch(Tokens.PAGE_SYM);
                  var node = this.startNode('Page', tokenStream.curr().range[0], 'body'); //ORION AST generation
                  line = tokenStream.token().startLine;
                  col = tokenStream.token().startCol;
  
                  this._readWhitespace();
  
                  if (tokenStream.match(Tokens.IDENT)){
                      identifier = tokenStream.token().value;
                      //The value 'auto' may not be used as a page name and MUST be treated as a syntax error.
                      if (identifier.toLowerCase() === "auto"){
                          this._unexpectedToken(tokenStream.token());
                      }
                  }
  
                  //see if there's a colon upcoming
                  if (tokenStream.peek() === Tokens.COLON){
                      pseudoPage = this._pseudo_page();
                  }
  
                  this._readWhitespace();
  
                  this.fire({
                      type:   "startpage",
                      id:     identifier,
                      pseudo: pseudoPage,
                      line:   line,
                      col:    col
                  });
  
                  this._readDeclarations(true, true);
  
                  this.fire({
                      type:   "endpage",
                      id:     identifier,
                      pseudo: pseudoPage,
                      line:   line,
                      col:    col
                  });
                  
                  if (identifier){
                  	node.id = identifier; //ORION AST generation
              	}
                  var rbraceRange = this.findLastTokenRange('RBRACE', node.range[0]); // ORION AST Generation select the RBRACE token
              	this.endNode(node, rbraceRange[1]); //ORION AST Generation
              }
docs: CSS3 Paged Media