1:1-1:3   TYP   typ 
 1:5-1:12   ID   randomid 
 1:14-1:14   EQUALS   = 
 1:16-1:18   INT   int 
 2:1-2:3   FUN   fun 
 2:5-2:7   ID   abc 
 2:9-2:9   LBRACKET   ( 
 2:10-2:10   RBRACKET   ) 
 2:12-2:12   COLON   : 
 2:14-2:14   LBRACKET   ( 
 2:15-2:15   ID   a 
 2:16-2:16   COLON   : 
 2:17-2:17   LSQUARE   [ 
 2:18-2:18   NUM   1 
 2:19-2:19   RSQUARE   ] 
 2:20-2:20   LSQUARE   [ 
 2:21-2:21   NUM   2 
 2:22-2:22   RSQUARE   ] 
 2:23-2:23   LSQUARE   [ 
 2:24-2:24   NUM   4 
 2:25-2:25   RSQUARE   ] 
 2:26-2:29   BOOL   bool 
 2:30-2:30   COMMA   , 
 2:32-2:32   ID   b 
 2:33-2:33   COLON   : 
 2:35-2:35   HAT   ^ 
 2:36-2:36   HAT   ^ 
 2:37-2:37   HAT   ^ 
 2:38-2:38   HAT   ^ 
 2:39-2:39   HAT   ^ 
 2:40-2:40   HAT   ^ 
 2:41-2:41   HAT   ^ 
 2:42-2:42   HAT   ^ 
 2:43-2:43   HAT   ^ 
 2:44-2:44   HAT   ^ 
 2:45-2:45   HAT   ^ 
 2:46-2:46   HAT   ^ 
 2:47-2:47   HAT   ^ 
 2:48-2:48   HAT   ^ 
 2:49-2:52   VOID   void 
 2:53-2:53   COMMA   , 
 2:55-2:55   ID   c 
 2:56-2:56   COLON   : 
 2:58-2:65   ID   randomid 
 2:66-2:66   COMMA   , 
 2:68-2:68   ID   x 
 2:69-2:69   COLON   : 
 2:71-2:71   LBRACKET   ( 
 2:72-2:72   ID   d 
 2:74-2:74   COLON   : 
 2:76-2:78   INT   int 
 2:79-2:79   COMMA   , 
 2:81-2:81   ID   e 
 2:83-2:83   COLON   : 
 2:85-2:88   BOOL   bool 
 2:89-2:89   COMMA   , 
 2:91-2:91   ID   f 
 2:93-2:93   COLON   : 
 2:95-2:98   CHAR   char 
 2:99-2:99   COMMA   , 
 2:101-2:101   ID   g 
 2:103-2:103   COLON   : 
 2:105-2:105   LCURLY   { 
 2:107-2:107   ID   h 
 2:109-2:109   COLON   : 
 2:111-2:111   HAT   ^ 
 2:112-2:112   HAT   ^ 
 2:113-2:115   INT   int 
 2:116-2:116   COMMA   , 
 2:118-2:118   ID   i 
 2:119-2:119   COLON   : 
 2:121-2:124   VOID   void 
 2:125-2:125   RCURLY   } 
 2:126-2:126   RBRACKET   ) 
 2:128-2:128   RBRACKET   ) 
    EOF