source
prog
defn
VAR
1:1-1:3
var
ID
1:5-1:7
id4
COLON
1:9-1:9
:
type
LBRACKET
1:11-1:11
(
ID
1:12-1:12
a
COLON
1:13-1:13
:
type
LSQUARE
1:14-1:14
[
NUM
1:15-1:15
1
RSQUARE
1:16-1:16
]
type
LSQUARE
1:17-1:17
[
NUM
1:18-1:18
2
RSQUARE
1:19-1:19
]
type
LSQUARE
1:20-1:20
[
NUM
1:21-1:21
4
RSQUARE
1:22-1:22
]
type
BOOL
1:23-1:26
bool
COMMA
1:27-1:27
,
ID
1:29-1:29
b
COLON
1:30-1:30
:
type
HAT
1:32-1:32
^
type
HAT
1:33-1:33
^
type
HAT
1:34-1:34
^
type
HAT
1:35-1:35
^
type
HAT
1:36-1:36
^
type
HAT
1:37-1:37
^
type
HAT
1:38-1:38
^
type
HAT
1:39-1:39
^
type
HAT
1:40-1:40
^
type
HAT
1:41-1:41
^
type
HAT
1:42-1:42
^
type
HAT
1:43-1:43
^
type
HAT
1:44-1:44
^
type
HAT
1:45-1:45
^
type
VOID
1:46-1:49
void
COMMA
1:50-1:50
,
ID
1:52-1:52
c
COLON
1:53-1:53
:
type
ID
1:55-1:62
randomid
COMMA
1:63-1:63
,
ID
1:65-1:65
x
COLON
1:66-1:66
:
type
LBRACKET
1:68-1:68
(
ID
1:69-1:69
d
COLON
1:71-1:71
:
type
INT
1:73-1:75
int
COMMA
1:76-1:76
,
ID
1:78-1:78
e
COLON
1:80-1:80
:
type
BOOL
1:82-1:85
bool
COMMA
1:86-1:86
,
ID
1:88-1:88
f
COLON
1:90-1:90
:
type
CHAR
1:92-1:95
char
COMMA
1:96-1:96
,
ID
1:98-1:98
g
COLON
1:100-1:100
:
type
LCURLY
1:102-1:102
{
ID
1:104-1:104
h
COLON
1:106-1:106
:
type
HAT
1:108-1:108
^
type
HAT
1:109-1:109
^
type
INT
1:110-1:112
int
COMMA
1:113-1:113
,
ID
1:115-1:115
i
COLON
1:116-1:116
:
type
VOID
1:118-1:121
void
RCURLY
1:122-1:122
}
RBRACKET
1:123-1:123
)
RBRACKET
1:125-1:125
)
EOF