A42: Nodes<Defn> 
1:1-11:7
 A41: DefFunDefn dec100 
1:1-11:7
 A38: Nodes<ParDefn> 
1:11-1:17
 A1: ParDefn p 
1:12-1:16
 A0: AtomType INT 
1:14-1:16
 A2: AtomType INT 
1:19-1:21
 A40: Exprs 
2:5-11:7
 A39: Nodes<Expr> 
2:5-11:7
 A13: WhileExpr 
2:5-4:7
 A5: BinExpr GTH 
2:11-2:15
 A3: NameExpr p 
2:11-2:11
defAt: A1 @ 1:12-1:16
 A4: AtomExpr 0 
2:15-2:15
 A12: Exprs 
3:9-3:17
 A11: Nodes<Expr> 
3:9-3:17
 A10: AsgnExpr 
3:9-3:17
 A6: NameExpr p 
3:9-3:9
defAt: A1 @ 1:12-1:16
 A9: BinExpr SUB 
3:13-3:17
 A7: NameExpr p 
3:13-3:13
defAt: A1 @ 1:12-1:16
 A8: AtomExpr 1 
3:17-3:17
 A37: LetExpr 
5:5-11:7
 A34: Nodes<Defn> 
5:9-5:19
 A15: VarDefn a 
5:9-5:19
 A14: AtomType INT 
5:17-5:19
 A36: Exprs 
6:9-10:17
 A35: Nodes<Expr> 
6:9-10:17
 A18: AsgnExpr 
6:9-6:13
 A16: NameExpr a 
6:9-6:9
defAt: A15 @ 5:9-5:19
 A17: AtomExpr 1 
6:13-6:13
 A29: WhileExpr 
7:9-9:11
 A21: BinExpr LTH 
7:15-7:21
 A19: NameExpr a 
7:15-7:15
defAt: A15 @ 5:9-5:19
 A20: AtomExpr 100 
7:19-7:21
 A28: Exprs 
8:13-8:21
 A27: Nodes<Expr> 
8:13-8:21
 A26: AsgnExpr 
8:13-8:21
 A22: NameExpr a 
8:13-8:13
defAt: A15 @ 5:9-5:19
 A25: BinExpr ADD 
8:17-8:21
 A23: NameExpr a 
8:17-8:17
defAt: A15 @ 5:9-5:19
 A24: AtomExpr 1 
8:21-8:21
 A33: CallExpr 
10:9-10:17
 A30: NameExpr dec100 
10:9-10:14
defAt: A41 @ 1:1-11:7
 A32: Nodes<Expr> 
10:15-10:17
 A31: NameExpr a 
10:16-10:16
defAt: A15 @ 5:9-5:19