req_type? EOF EOL startxref y notfound "%%EOF" LF || CRLF || CR ignore_if_present(any_whitespace_characters_except_EOL) y throw syntax_error(EOF_not_found) there is no "startxref" y throw syntax_error(EOL_not_found) throw syntax_error(startxref_not_found) y end of stream ignore_if_present(any_whitespace_characters_except_EOL | comment) require(EOL) there is no " [EOL] " y throw syntax_error(EOF_invalid)