1:1-1:3   FUN   fun 
 1:5-1:9   ID   funny 
 1:10-1:10   LBRACKET   ( 
 1:11-1:11   RBRACKET   ) 
 1:13-1:13   COLON   : 
 1:15-1:18   VOID   void 
 1:20-1:20   EQUALS   = 
 1:22-1:22   HAT   ^ 
 1:23-1:23   ID   a 
 1:24-1:24   LSQUARE   [ 
 1:25-1:25   ID   b 
 1:26-1:26   RSQUARE   ] 
 1:27-1:27   DOT   . 
 1:28-1:28   ID   c 
 1:29-1:29   HAT   ^ 
 1:31-1:32   AS   as 
 1:34-1:34   LCURLY   { 
 1:36-1:36   ID   a 
 1:37-1:37   COLON   : 
 1:39-1:39   LCURLY   { 
 1:40-1:40   RCURLY   } 
 1:41-1:41   COMMA   , 
 1:43-1:43   ID   b 
 1:44-1:44   COLON   : 
 1:46-1:46   LBRACKET   ( 
 1:47-1:47   COLON   : 
 1:48-1:48   LCURLY   { 
 1:49-1:49   ID   a 
 1:50-1:50   COLON   : 
 1:52-1:52   LBRACKET   ( 
 1:54-1:54   ID   g 
 1:56-1:56   COLON   : 
 1:58-1:60   INT   int 
 1:61-1:61   RBRACKET   ) 
 1:62-1:62   RCURLY   } 
 1:63-1:63   COLON   : 
 1:64-1:67   BOOL   bool 
 1:68-1:68   RBRACKET   ) 
 1:69-1:69   RCURLY   } 
 1:70-1:70   COMMA   , 
 1:72-1:77   SIZEOF   sizeof 
 1:79-1:79   LCURLY   { 
 1:81-1:81   ID   a 
 1:82-1:82   COLON   : 
 1:84-1:84   LCURLY   { 
 1:85-1:85   RCURLY   } 
 1:86-1:86   COMMA   , 
 1:88-1:88   ID   b 
 1:89-1:89   COLON   : 
 1:91-1:91   LBRACKET   ( 
 1:92-1:92   COLON   : 
 1:93-1:93   LCURLY   { 
 1:94-1:94   ID   a 
 1:95-1:95   COLON   : 
 1:97-1:97   LBRACKET   ( 
 1:99-1:99   ID   g 
 1:101-1:101   COLON   : 
 1:103-1:105   INT   int 
 1:106-1:106   RBRACKET   ) 
 1:107-1:107   RCURLY   } 
 1:108-1:108   COLON   : 
 1:109-1:112   BOOL   bool 
 1:113-1:113   RBRACKET   ) 
 1:114-1:114   RCURLY   } 
 4:1-4:3   TYP   typ 
 4:5-4:5   ID   t 
 4:7-4:7   EQUALS   = 
 4:9-4:9   LBRACKET   ( 
 4:10-4:10   COLON   : 
 4:11-4:11   COLON   : 
 4:12-4:12   ID   t 
 4:13-4:13   RBRACKET   ) 
    EOF