anchor.diff:  later : date DotDot;
   consecutives
       : YearMonthDay DotDot YearMonthDay
  -    | Year Dash Month DotDot Year Dash Month
  +    | YearMonth DotDot YearMonth
       | Year DotDot Year;
   maskedPrecision : Digit Digit (Digit X | XX );
   
  
positive.code: Unknown : 'unknown';
  QuestionMarkTilde : '?~';
  
  Season : Year Dash ('21' | '22' | '23' | '24');
  UASymbol : QuestionMark | Tilde | QuestionMarkTilde;
  YearWithOneUnspecifedDigit : Digit Digit Digit U;
  
negative.code: 	| OpenParen Year CloseParen Dash MonthDay UASymbol
  	;
  YearKnownMonthDayUAParenUA : OpenParen YearKnownMonthDayUA CloseParen UASymbol;
  YearMonthKnownDayUA : YearMonth Dash OpenParen Day CloseParen UASymbol;
  YearMonthKnownDayUAParenUA : OpenParen YearMonthKnownDayUA CloseParen UASymbol;
  DayKnownYearMonthUA
  	: YearMonth UASymbol Dash Day
  	| Year UASymbol Dash Month UASymbol Dash Day
  	;
  DayKnownYearMonthUAParenUA : OpenParen DayKnownYearMonthUA CloseParen UASymbol;
  YearKnownMonthUA : Year Dash OpenParen Month CloseParen UASymbol;
  YearKnownMonthUAParenUA : OpenParen YearKnownMonthUA CloseParen UASymbol;
  Level2YearMonthUA : Year UASymbol Dash OpenParen Month CloseParen UASymbol;
  Level2YearMonthUAParenUA : OpenParen YearMonthUA CloseParen UASymbol;
  Level2YearMonthDayUA : OpenParen Year CloseParen UASymbol Dash Month Dash Day UASymbol;
  Level2YearMonthDayUAParenUA : OpenParen YearMonthDayUA CloseParen UASymbol;
  MonthKnownYearUA : Year UASymbol Dash Month;
  MonthKnownYearUAParenUA : OpenParen MonthKnownYearUA CloseParen UASymbol;
  
  // ***********************   Level 2: Parser Rules   ************************ //
  
  