COMPILATION_UNIT -> COMPILATION_UNIT [1:1]
|--PACKAGE_DEF -> package [1:1]
| |--ANNOTATIONS -> ANNOTATIONS [1:40]
| |--DOT -> . [1:40]
| | |--DOT -> . [1:29]
| | | |--DOT -> . [1:23]
| | | | |--DOT -> . [1:12]
| | | | | |--IDENT -> com [1:9]
| | | | | `--IDENT -> puppycrawl [1:13]
| | | | `--IDENT -> tools [1:24]
| | | `--IDENT -> checkstyle [1:30]
| | `--IDENT -> grammar [1:41]
| `--SEMI -> ; [1:48]
|--ANNOTATION_DEF -> ANNOTATION_DEF [3:1]
| |--MODIFIERS -> MODIFIERS [3:1]
| |--AT -> @ [3:1]
| |--LITERAL_INTERFACE -> interface [3:2]
| |--IDENT -> InputRegressionJavaAnnotation1 [3:12]
| `--OBJBLOCK -> OBJBLOCK [3:43]
| |--LCURLY -> { [3:43]
| |--VARIABLE_DEF -> VARIABLE_DEF [4:5]
| | |--MODIFIERS -> MODIFIERS [4:5]
| | |--TYPE -> TYPE [4:5]
| | | `--LITERAL_INT -> int [4:5]
| | |--IDENT -> f1 [4:9]
| | |--ASSIGN -> = [4:12]
| | | `--EXPR -> EXPR [4:14]
| | | `--NUM_INT -> 0 [4:14]
| | `--SEMI -> ; [4:15]
| |--ANNOTATION_FIELD_DEF -> ANNOTATION_FIELD_DEF [6:5]
| | |--MODIFIERS -> MODIFIERS [6:5]
| | |--TYPE -> TYPE [6:5]
| | | |--IDENT -> String [6:5]
| | | `--ARRAY_DECLARATOR -> [ [6:11]
| | | `--RBRACK -> ] [6:12]
| | |--IDENT -> m1 [6:14]
| | |--LPAREN -> ( [6:16]
| | |--RPAREN -> ) [6:17]
| | `--SEMI -> ; [6:18]
| |--ANNOTATION_FIELD_DEF -> ANNOTATION_FIELD_DEF [7:5]
| | |--MODIFIERS -> MODIFIERS [7:5]
| | |--TYPE -> TYPE [7:5]
| | | |--IDENT -> String [7:5]
| | | `--ARRAY_DECLARATOR -> [ [7:11]
| | | `--RBRACK -> ] [7:12]
| | |--IDENT -> m2 [7:14]
| | |--LPAREN -> ( [7:16]
| | |--RPAREN -> ) [7:17]
| | |--LITERAL_DEFAULT -> default [7:19]
| | | `--ANNOTATION_ARRAY_INIT -> { [7:27]
| | | `--RCURLY -> } [7:28]
| | `--SEMI -> ; [7:29]
| |--CLASS_DEF -> CLASS_DEF [9:5]
| | |--MODIFIERS -> MODIFIERS [9:5]
| | |--LITERAL_CLASS -> class [9:5]
| | |--IDENT -> SomeClass [9:11]
| | `--OBJBLOCK -> OBJBLOCK [9:21]
| | |--LCURLY -> { [9:21]
| | |--CTOR_DEF -> CTOR_DEF [10:9]
| | | |--MODIFIERS -> MODIFIERS [10:9]
| | | | `--LITERAL_PRIVATE -> private [10:9]
| | | |--IDENT -> SomeClass [10:17]
| | | |--LPAREN -> ( [10:26]
| | | |--PARAMETERS -> PARAMETERS [10:27]
| | | |--RPAREN -> ) [10:27]
| | | `--SLIST -> { [10:29]
| | | `--RCURLY -> } [10:30]
| | `--RCURLY -> } [11:5]
| `--RCURLY -> } [12:1]
`--ANNOTATION_DEF -> ANNOTATION_DEF [13:1]
|--MODIFIERS -> MODIFIERS [13:1]
|--AT -> @ [13:1]
|--LITERAL_INTERFACE -> interface [13:2]
|--IDENT -> ComplexAnnotation [13:12]
`--OBJBLOCK -> OBJBLOCK [13:30]
|--LCURLY -> { [13:30]
|--ANNOTATION_FIELD_DEF -> ANNOTATION_FIELD_DEF [14:5]
| |--MODIFIERS -> MODIFIERS [14:5]
| |--TYPE -> TYPE [14:5]
| | |--IDENT -> InputRegressionJavaAnnotation1 [14:5]
| | `--ARRAY_DECLARATOR -> [ [14:35]
| | `--RBRACK -> ] [14:36]
| |--IDENT -> value [14:38]
| |--LPAREN -> ( [14:43]
| |--RPAREN -> ) [14:44]
| `--SEMI -> ; [14:45]
`--RCURLY -> } [15:1]