Skip to content

Instantly share code, notes, and snippets.

@jahav
Created June 3, 2023 15:23
Show Gist options
  • Save jahav/a952524a051b72e342c48ac4680a8126 to your computer and use it in GitHub Desktop.
Save jahav/a952524a051b72e342c48ac4680a8126 to your computer and use it in GitHub Desktop.
A lexer for Rolex lexer converted from ANTLR grammar.
REF_CONSTANT = '((#REF!))'
NONREF_ERRORS = '((#DIV/0!)|(#N/A)|(#NAME\?)|(#NULL!)|(#NUM!)|(#VALUE!)|(#GETTING_DATA))'
LOGICAL_CONSTANT = '((FALSE)|(TRUE))'
NUMERICAL_CONSTANT = '((((((((((((((([0-9]))))))+)))))(((((((((\.))((((((((([0-9]))))))+)))))))))?))|(((((\.))((((((((([0-9]))))))+)))))))((((((E))(((((((\+)|(\-))))))?)((((((((([0-9]))))))+))))))?)))'
STRING_CONSTANT = '(((("))((((((((((("")))|(((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0021])|([\u0023-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))))))(((((((((((("")))|(((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0021])|([\u0023-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))))))))))*))))?)(("))))'
POW = '((((((((( )|(\u000D)|(\u000A))))*)))\^((((((( )|(\u000D)|(\u000A))))*)))))'
MULT = '((((((((( )|(\u000D)|(\u000A))))*)))\*((((((( )|(\u000D)|(\u000A))))*)))))'
DIV = '((((((((( )|(\u000D)|(\u000A))))*)))/((((((( )|(\u000D)|(\u000A))))*)))))'
PLUS = '((((((((( )|(\u000D)|(\u000A))))*)))\+((((((( )|(\u000D)|(\u000A))))*)))))'
MINUS = '((((((((( )|(\u000D)|(\u000A))))*)))\-((((((( )|(\u000D)|(\u000A))))*)))))'
CONCAT = '((((((((( )|(\u000D)|(\u000A))))*)))&((((((( )|(\u000D)|(\u000A))))*)))))'
EQUAL = '((((((((( )|(\u000D)|(\u000A))))*)))=((((((( )|(\u000D)|(\u000A))))*)))))'
NOT_EQUAL = '((((((((( )|(\u000D)|(\u000A))))*)))<>((((((( )|(\u000D)|(\u000A))))*)))))'
LESS_OR_EQUAL_THAN = '((((((((( )|(\u000D)|(\u000A))))*)))<=((((((( )|(\u000D)|(\u000A))))*)))))'
LESS_THAN = '((((((((( )|(\u000D)|(\u000A))))*)))<((((((( )|(\u000D)|(\u000A))))*)))))'
GREATER_OR_EQUAL_THAN = '((((((((( )|(\u000D)|(\u000A))))*)))>=((((((( )|(\u000D)|(\u000A))))*)))))'
GREATER_THAN = '((((((((( )|(\u000D)|(\u000A))))*)))>((((((( )|(\u000D)|(\u000A))))*)))))'
PERCENT = '((((((((( )|(\u000D)|(\u000A))))*)))%((((((( )|(\u000D)|(\u000A))))*)))))'
SEMICOLON = '((((((((( )|(\u000D)|(\u000A))))*)));((((((( )|(\u000D)|(\u000A))))*)))))'
COLON = '((((((((( )|(\u000D)|(\u000A))))*))):((((((( )|(\u000D)|(\u000A))))*)))))'
OPEN_BRACE = '((((((((( )|(\u000D)|(\u000A))))*)))\(((((((( )|(\u000D)|(\u000A))))*)))))'
CLOSE_BRACE = '((((((((( )|(\u000D)|(\u000A))))*)))\)((((((( )|(\u000D)|(\u000A))))*)))))'
OPEN_CURLY = '((((((((( )|(\u000D)|(\u000A))))*)))\{((((((( )|(\u000D)|(\u000A))))*)))))'
CLOSE_CURLY = '((((((((( )|(\u000D)|(\u000A))))*)))\}((((((( )|(\u000D)|(\u000A))))*)))))'
COMMA = '((((((((( )|(\u000D)|(\u000A))))*))),((((((( )|(\u000D)|(\u000A))))*)))))'
SPACE = '((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*)))))'
OPEN_SQUARE = '((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*)))))'
CLOSE_SQUARE = '((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*)))))'
BOOK_PREFIX = '((((((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*)))))((((((((((([0-9]))))))+)))))((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*)))))))!))'
BANG_REFERENCE = '((!((((((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))))):(((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))))))|((((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))):(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))))|((((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D]))))))))(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))))))|((((((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D]))))))))(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))))):(((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D]))))))))(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))))))))))|(((#REF!)))))))'
SHEET_RANGE_REFERENCE = '((((((((((((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*)))))((((((((((([0-9]))))))+)))))((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))))?)((((((((\u0009)|(\u000A)|(\u000D)|([\u0022-\u0024])|(\u002E)|([\u0030-\u0039])|(\u003B)|([\u0040-\u005A])|([\u005F-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))+)))))((((((((( )|(\u000D)|(\u000A))))*))):((((((( )|(\u000D)|(\u000A))))*)))))((((((((\u0009)|(\u000A)|(\u000D)|([\u0022-\u0024])|(\u002E)|([\u0030-\u0039])|(\u003B)|([\u0040-\u005A])|([\u005F-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))+))))))|(((\u0027))((((((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*)))))((((((((((([0-9]))))))+)))))((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))))?)((((((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0026])|([\u0028-\u0029])|([\u002B-\u002E])|([\u0030-\u0039])|([\u003B-\u003E])|([\u0040-\u005A])|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))+)((((((((((((((\u0027))((\u0027)))|(((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0026])|([\u0028-\u0029])|([\u002B-\u002E])|([\u0030-\u0039])|([\u003B-\u003E])|([\u0040-\u005A])|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF]))))))))*)((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0026])|([\u0028-\u0029])|([\u002B-\u002E])|([\u0030-\u0039])|([\u003B-\u003E])|([\u0040-\u005A])|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF]))))))?)))((((((((( )|(\u000D)|(\u000A))))*))):((((((( )|(\u000D)|(\u000A))))*)))))((((((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0026])|([\u0028-\u0029])|([\u002B-\u002E])|([\u0030-\u0039])|([\u003B-\u003E])|([\u0040-\u005A])|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))+)((((((((((((((\u0027))((\u0027)))|(((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0026])|([\u0028-\u0029])|([\u002B-\u002E])|([\u0030-\u0039])|([\u003B-\u003E])|([\u0040-\u005A])|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF]))))))))*)((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0026])|([\u0028-\u0029])|([\u002B-\u002E])|([\u0030-\u0039])|([\u003B-\u003E])|([\u0040-\u005A])|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF]))))))?)))((\u0027))))!))(((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))))):(((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))))))|((((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))):(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))))|((((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D]))))))))(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))))))|((((((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D]))))))))(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))))):(((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D]))))))))(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6]))))))))))))))))'
SINGLE_SHEET_REFERENCE = '(((((((((((((((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*)))))((((((((((([0-9]))))))+)))))((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*)))))))))))?)((((((((\u0009)|(\u000A)|(\u000D)|([\u0022-\u0024])|(\u002E)|([\u0030-\u0039])|(\u003B)|([\u0040-\u005A])|([\u005F-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))+))))))|(((\u0027))(((((((((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*)))))((((((((((([0-9]))))))+)))))((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*)))))))))))?)(((((((((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0026])|([\u0028-\u0029])|([\u002B-\u002E])|([\u0030-\u0039])|([\u003B-\u003E])|([\u0040-\u005A])|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))+)((((((((((((((\u0027))((\u0027)))|(((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0026])|([\u0028-\u0029])|([\u002B-\u002E])|([\u0030-\u0039])|([\u003B-\u003E])|([\u0040-\u005A])|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF]))))))))*)((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0026])|([\u0028-\u0029])|([\u002B-\u002E])|([\u0030-\u0039])|([\u003B-\u003E])|([\u0040-\u005A])|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF]))))))?))))|(((((((((\u0009)|(\u000A)|(\u000D)|([\u0022-\u0024])|(\u002E)|([\u0030-\u0039])|(\u003B)|([\u0040-\u005A])|([\u005F-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))+))))))))((\u0027))))!))((((((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))))):(((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))))))|((((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))):(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))))|((((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D]))))))))(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))))))|((((((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D]))))))))(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))))):(((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D]))))))))(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))))))))))|(((#REF!)))))))'
SINGLE_SHEET_PREFIX = '(((((((((((((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*)))))((((((((((([0-9]))))))+)))))((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*)))))))))))?)((((((((\u0009)|(\u000A)|(\u000D)|([\u0022-\u0024])|(\u002E)|([\u0030-\u0039])|(\u003B)|([\u0040-\u005A])|([\u005F-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))+))))))|(((\u0027))(((((((((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*)))))((((((((((([0-9]))))))+)))))((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*)))))))))))?)(((((((((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0026])|([\u0028-\u0029])|([\u002B-\u002E])|([\u0030-\u0039])|([\u003B-\u003E])|([\u0040-\u005A])|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))+)((((((((((((((\u0027))((\u0027)))|(((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0026])|([\u0028-\u0029])|([\u002B-\u002E])|([\u0030-\u0039])|([\u003B-\u003E])|([\u0040-\u005A])|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF]))))))))*)((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0026])|([\u0028-\u0029])|([\u002B-\u002E])|([\u0030-\u0039])|([\u003B-\u003E])|([\u0040-\u005A])|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF]))))))?))))|(((((((((\u0009)|(\u000A)|(\u000D)|([\u0022-\u0024])|(\u002E)|([\u0030-\u0039])|(\u003B)|([\u0040-\u005A])|([\u005F-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))+))))))))((\u0027))))!))'
A1_REFERENCE = '(((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))))):(((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))))))|((((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))):(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))))|((((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D]))))))))(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))))))|((((((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D]))))))))(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))))))):(((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D]))))))))(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6]))))))))))))))'
REF_FUNCTION_LIST = '(((((CHOOSE)|(IF)|(INDEX)|(INDIRECT)|(OFFSET)))\(((((((( )|(\u000D)|(\u000A))))*)))))'
CELL_FUNCTION_LIST = '(((((((((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D])))))|(((\$(((([A-Z])))|((([A-Z]))(([A-Z])))|((([A-W]))(([A-Z]))(([A-Z])))|(X(([A-E]))(([A-Z])))|(XF(([A-D]))))))))(((((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6])))))|(((\$(((((([1-9])))|((([1-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|((([1-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9]))(([0-9])))|(10[0-3](([0-9]))(([0-9]))(([0-9]))(([0-9])))|(104[0-7](([0-9]))(([0-9]))(([0-9])))|(1048[0-4](([0-9]))(([0-9])))|(10485[0-6](([0-9])))|(104857[0-6]))))))))))\(((((((( )|(\u000D)|(\u000A))))*)))))'
USER_DEFINED_FUNCTION_NAME = '((((((((_)))|(((\\)))|((([a-zA-Z])))|((([\u0080-\u10FFFF]))))((((((((((((_)))|(((\\)))|((([a-zA-Z])))|((([\u0080-\u10FFFF])))))|((([0-9])))|(((\.)))|(((\?)))))+))))?)))\(((((((( )|(\u000D)|(\u000A))))*))))|(((((((((((((((((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*)))))((((((((((([0-9]))))))+)))))((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*)))))))))))?)((((((((\u0009)|(\u000A)|(\u000D)|([\u0022-\u0024])|(\u002E)|([\u0030-\u0039])|(\u003B)|([\u0040-\u005A])|([\u005F-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))+))))))|(((\u0027))(((((((((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*)))))((((((((((([0-9]))))))+)))))((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*)))))))))))?)(((((((((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0026])|([\u0028-\u0029])|([\u002B-\u002E])|([\u0030-\u0039])|([\u003B-\u003E])|([\u0040-\u005A])|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))+)((((((((((((((\u0027))((\u0027)))|(((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0026])|([\u0028-\u0029])|([\u002B-\u002E])|([\u0030-\u0039])|([\u003B-\u003E])|([\u0040-\u005A])|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF]))))))))*)((\u0009)|(\u000A)|(\u000D)|([\u0020-\u0026])|([\u0028-\u0029])|([\u002B-\u002E])|([\u0030-\u0039])|([\u003B-\u003E])|([\u0040-\u005A])|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF]))))))?))))|(((((((((\u0009)|(\u000A)|(\u000D)|([\u0022-\u0024])|(\u002E)|([\u0030-\u0039])|(\u003B)|([\u0040-\u005A])|([\u005F-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))+))))))))((\u0027))))!)))|(((((((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*)))))((((((((((([0-9]))))))+)))))((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*)))))))!)))))((((((_)))|(((\\)))|((([a-zA-Z])))|((([\u0080-\u10FFFF]))))((((((((((((_)))|(((\\)))|((([a-zA-Z])))|((([\u0080-\u10FFFF])))))|((([0-9])))|(((\.)))|(((\?)))))+))))?)))\(((((((( )|(\u000D)|(\u000A))))*)))))'
NAME = '((((((_)))|(((\\)))|((([a-zA-Z])))|((([\u0080-\u10FFFF]))))((((((((((((_)))|(((\\)))|((([a-zA-Z])))|((([\u0080-\u10FFFF])))))|((([0-9])))|(((\.)))|(((\?)))))+))))?)))'
INTRA_TABLE_REFERENCE = '((((((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*)))))((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))?)))((((((\[#All\])|(\[#Data\])|(\[#Headers\])|(\[#Totals\])|(\[#This Row\])))|(\[#Headers\]((((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))?)((((((((( )|(\u000D)|(\u000A))))*))),((((((( )|(\u000D)|(\u000A))))*)))))((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))?)))\[#Data\])|(\[#Data\]((((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))?)((((((((( )|(\u000D)|(\u000A))))*))),((((((( )|(\u000D)|(\u000A))))*)))))((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))?)))\[#Totals\])))|((((((((((\[#All\])|(\[#Data\])|(\[#Headers\])|(\[#Totals\])|(\[#This Row\])))|(\[#Headers\]((((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))?)((((((((( )|(\u000D)|(\u000A))))*))),((((((( )|(\u000D)|(\u000A))))*)))))((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))?)))\[#Data\])|(\[#Data\]((((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))?)((((((((( )|(\u000D)|(\u000A))))*))),((((((( )|(\u000D)|(\u000A))))*)))))((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))?)))\[#Totals\]))((((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))?)((((((((( )|(\u000D)|(\u000A))))*))),((((((( )|(\u000D)|(\u000A))))*)))))((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))?)))))))?)(((((((((((((((\u0009)|(\u000A)|(\u000D)|([\u0021-\u0022])|([\u0024-\u0026])|([\u0028-\u005A])|(\u005C)|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))|(((\u0027))((((\u0027)))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))|(#))))((((((((\u0009)|(\u000A)|(\u000D)|([\u0021-\u0022])|([\u0024-\u0026])|([\u0028-\u005A])|(\u005C)|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))|(((\u0027))((((\u0027)))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))|(#)))))|(((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))))*)))))?)((((\u0009)|(\u000A)|(\u000D)|([\u0021-\u0022])|([\u0024-\u0026])|([\u0028-\u005A])|(\u005C)|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))|(((\u0027))((((\u0027)))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))|(#)))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*)))))((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))*)(((((((((((\u0009)|(\u000A)|(\u000D)|([\u0021-\u0022])|([\u0024-\u0026])|([\u0028-\u005A])|(\u005C)|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))|(((\u0027))((((\u0027)))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))|(#))))((((((((\u0009)|(\u000A)|(\u000D)|([\u0021-\u0022])|([\u0024-\u0026])|([\u0028-\u005A])|(\u005C)|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))|(((\u0027))((((\u0027)))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))|(#)))))|(((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))))*)))))?)((((\u0009)|(\u000A)|(\u000D)|([\u0021-\u0022])|([\u0024-\u0026])|([\u0028-\u005A])|(\u005C)|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))|(((\u0027))((((\u0027)))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))|(#))))))((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))*)((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*)))))))(((((:(((((((((((((\u0009)|(\u000A)|(\u000D)|([\u0021-\u0022])|([\u0024-\u0026])|([\u0028-\u005A])|(\u005C)|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))|(((\u0027))((((\u0027)))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))|(#))))((((((((\u0009)|(\u000A)|(\u000D)|([\u0021-\u0022])|([\u0024-\u0026])|([\u0028-\u005A])|(\u005C)|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))|(((\u0027))((((\u0027)))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))|(#)))))|(((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))))*)))))?)((((\u0009)|(\u000A)|(\u000D)|([\u0021-\u0022])|([\u0024-\u0026])|([\u0028-\u005A])|(\u005C)|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))|(((\u0027))((((\u0027)))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))|(#)))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*)))))((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))*)(((((((((((\u0009)|(\u000A)|(\u000D)|([\u0021-\u0022])|([\u0024-\u0026])|([\u0028-\u005A])|(\u005C)|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))|(((\u0027))((((\u0027)))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))|(#))))((((((((\u0009)|(\u000A)|(\u000D)|([\u0021-\u0022])|([\u0024-\u0026])|([\u0028-\u005A])|(\u005C)|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))|(((\u0027))((((\u0027)))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))|(#)))))|(((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))))*)))))?)((((\u0009)|(\u000A)|(\u000D)|([\u0021-\u0022])|([\u0024-\u0026])|([\u0028-\u005A])|(\u005C)|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))|(((\u0027))((((\u0027)))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))|(#))))))((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))*)((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*)))))))))))?)))))((((((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))?)((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))))|(((\[#All\])|(\[#Data\])|(\[#Headers\])|(\[#Totals\])|(\[#This Row\])))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*)))))(((((((((((((\u0009)|(\u000A)|(\u000D)|([\u0021-\u0022])|([\u0024-\u0026])|([\u0028-\u005A])|(\u005C)|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))|(((\u0027))((((\u0027)))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))|(#))))((((((((\u0009)|(\u000A)|(\u000D)|([\u0021-\u0022])|([\u0024-\u0026])|([\u0028-\u005A])|(\u005C)|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))|(((\u0027))((((\u0027)))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))|(#)))))|(((((((((( )|(\u000D)|(\u000A))))*))) ((((((( )|(\u000D)|(\u000A))))*))))))))*)))))?)((((\u0009)|(\u000A)|(\u000D)|([\u0021-\u0022])|([\u0024-\u0026])|([\u0028-\u005A])|(\u005C)|([\u005E-\uD7FF])|([\uE000-\uFFFD])|([\u10000-\u10FFFF])))|(((\u0027))((((\u0027)))|(((((((((( )|(\u000D)|(\u000A))))*)))\[((((((( )|(\u000D)|(\u000A))))*))))))|(((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*))))))|(#)))))))?)((((((((( )|(\u000D)|(\u000A))))*)))\]((((((( )|(\u000D)|(\u000A))))*)))))))'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment