C6KYXU274XZV4ZAT3K5DELTMHBMC42K5FDF4SN6LSCNFNCRVYSLAC
HJAFCFNCO6CM326HWPH7BXLTPIFCYVTRSITBCGLYBXACJJOL3JCQC
R4Z6MXFX7FJZGNZVCTO54ATZBCJVB4ERAFHRKXXKQEB5GQQ5DO6AC
4CWI65HNTD3X3OP25QJOAO5B5QMCMNQFQJ4BUMQKBDUVVXKRWEOQC
fn integer_number_parser(input: &mut &str) -> PResult<i64> {
fn integer_number_parser(input: &mut &str) -> PResult<(i64, u32)> {
Ok::<_, ParseIntError>(base * 10i64.pow(exponent))
Ok::<_, ParseIntError>((base, exponent))
fn parse_integer(lexer: &mut Lexer<Token>) -> Result<i64, LexError> {
fn parse_integer(lexer: &mut Lexer<Token>) -> Result<(i64, u32), LexError> {
Integer(i64),
Integer((i64, u32)),
assert!(lexer.next() == Some(Ok(Token::Integer(3))));
assert!(lexer.next() == Some(Ok(Token::Integer((3, 0)))));