*Program(32): *Class(13): Small *MainMethod(12): *Formal(12): String[] args *Local(8): Pair p *ExprStmt(9): *Assgt(9): is type no_type p = *New(9): Pair is type no_type *ExprStmt(10): *FuncCall(10): init is type no_type object expr: *VarRef(10): p is type no_type args: *IntLiteral(10): 3 is type no_type *IntLiteral(10): 5 is type no_type *ExprStmt(11): *FuncCall(11): print is type no_type object expr: *VarRef(11): p is type no_type args: *End MainMethod *End Class Small *Class(31): Pair *Field(17): int x *Field(18): int y *Method(24): Pair init *Formal(20): int i *Formal(20): int j *ExprStmt(21): *Assgt(21): is type no_type x = *VarRef(21): i is type no_type *ExprStmt(22): *Assgt(22): is type no_type y = *VarRef(22): j is type no_type return from init: *VarRef(23): this is type no_type *End Method init *Method(30): int print *Println(27): *VarRef(27): x is type no_type *Println(28): *VarRef(28): y is type no_type return from print: *IntLiteral(29): 0 is type no_type *End Method print *End Class Pair