| line | !l | l&&!r | l&&r | condition | 
 
| 120 | 0 | 0 | 0 | $right_type->kind eq 'Var' and $left_type == $right_type | 
 
|  | 0 | 0 | 0 | $right_type->kind eq 'Var' and $right_type->children->[0] | 
 
| 153 | 0 | 0 | 0 | $left_type->kind eq 'Unit' and $right_type->kind eq 'Unit' | 
 
|  | 0 | 0 | 0 | $left_type->kind eq 'Bool' and $right_type->kind eq 'Bool' | 
 
|  | 0 | 0 | 0 | $left_type->kind eq 'Int' and $right_type->kind eq 'Int' | 
 
|  | 0 | 0 | 0 | $left_type->kind eq 'Float' and $right_type->kind eq 'Float' | 
 
|  | 0 | 0 | 0 | $left_type->kind eq 'Fun' and $right_type->kind eq 'Fun' | 
 
|  | 0 | 0 | 0 | $left_type->kind eq 'Tuple' and $right_type->kind eq 'Tuple' | 
 
|  | 0 | 0 | 0 | $left_type->kind eq 'Array' and $right_type->kind eq 'Array' | 
 
|  | 0 | 0 | 0 | $left_type->kind eq 'Var' and $right_type->kind eq 'Var' | 
 
|  | 0 | 0 | 0 | $left_type->kind eq 'Var' and $right_type->kind eq 'Var' and $left_type->children->[0] | 
 
|  | 0 | 0 | 0 | $left_type->kind eq 'Var' and $right_type->kind eq 'Var' and $left_type->children->[0] and $right_type->children->[0] | 
 
|  | 0 | 0 | 0 | $left_type->kind eq 'Var' and $right_type->kind eq 'Var' and $left_type->children->[0] and $right_type->children->[0] and $left_type->children->[0]->kind eq $right_type->children->[0]->kind | 
 
|  | 0 | 0 | 0 | $left_type->kind eq 'Var' and $left_type->children->[0] | 
 
|  | 0 | 0 | 0 | $right_type->kind eq 'Var' and $right_type->children->[0] | 
 
|  | 0 | 0 | 0 | $left_type->kind eq 'Var' and not $self->occur($left_type, $right_type) | 
 
|  | 0 | 0 | 0 | $right_type->kind eq 'Var' and not $self->occur($right_type, $left_type) | 
| line | l | !l&&r | !l&&!r | condition | 
 
| 59 | 0 | 0 | 0 | $kind eq 'Not' or $kind eq 'Neg' | 
 
|  | 0 | 0 | 0 | $kind eq 'Not' or $kind eq 'Neg' or $kind eq 'FNeg' | 
 
|  | 0 | 0 | 0 | $kind eq 'Add' or $kind eq 'Sub' | 
 
|  | 0 | 0 | 0 | $kind eq 'Add' or $kind eq 'Sub' or $kind eq 'Eq' | 
 
|  | 0 | 0 | 0 | $kind eq 'Add' or $kind eq 'Sub' or $kind eq 'Eq' or $kind eq 'LE' | 
 
|  | 0 | 0 | 0 | $kind eq 'Add' or $kind eq 'Sub' or $kind eq 'Eq' or $kind eq 'LE' or $kind eq 'FAdd' | 
 
|  | 0 | 0 | 0 | $kind eq 'Add' or $kind eq 'Sub' or $kind eq 'Eq' or $kind eq 'LE' or $kind eq 'FAdd' or $kind eq 'FSub' | 
 
|  | 0 | 0 | 0 | $kind eq 'Add' or $kind eq 'Sub' or $kind eq 'Eq' or $kind eq 'LE' or $kind eq 'FAdd' or $kind eq 'FSub' or $kind eq 'FMul' | 
 
|  | 0 | 0 | 0 | $kind eq 'Add' or $kind eq 'Sub' or $kind eq 'Eq' or $kind eq 'LE' or $kind eq 'FAdd' or $kind eq 'FSub' or $kind eq 'FMul' or $kind eq 'FDiv' | 
 
|  | 0 | 0 | 0 | $kind eq 'Add' or $kind eq 'Sub' or $kind eq 'Eq' or $kind eq 'LE' or $kind eq 'FAdd' or $kind eq 'FSub' or $kind eq 'FMul' or $kind eq 'FDiv' or $kind eq 'Array' | 
 
|  | 0 | 0 | 0 | $kind eq 'Add' or $kind eq 'Sub' or $kind eq 'Eq' or $kind eq 'LE' or $kind eq 'FAdd' or $kind eq 'FSub' or $kind eq 'FMul' or $kind eq 'FDiv' or $kind eq 'Array' or $kind eq 'Get' | 
 
|  | 0 | 0 | 0 | $kind eq 'If' or $kind eq 'Put' | 
 
| 153 | 0 | 0 | 0 | $left_type->kind eq 'Unit' and $right_type->kind eq 'Unit' or $left_type->kind eq 'Bool' and $right_type->kind eq 'Bool' | 
 
|  | 0 | 0 | 0 | $left_type->kind eq 'Unit' and $right_type->kind eq 'Unit' or $left_type->kind eq 'Bool' and $right_type->kind eq 'Bool' or $left_type->kind eq 'Int' and $right_type->kind eq 'Int' | 
 
|  | 0 | 0 | 0 | $left_type->kind eq 'Unit' and $right_type->kind eq 'Unit' or $left_type->kind eq 'Bool' and $right_type->kind eq 'Bool' or $left_type->kind eq 'Int' and $right_type->kind eq 'Int' or $left_type->kind eq 'Float' and $right_type->kind eq 'Float' | 
 
| 206 | 0 | 0 | 0 | $kind eq 'Add' or $kind eq 'Sub' | 
 
|  | 0 | 0 | 0 | $kind eq 'FAdd' or $node->kind eq 'FSub' | 
 
|  | 0 | 0 | 0 | $kind eq 'FAdd' or $node->kind eq 'FSub' or $kind eq 'FMul' | 
 
|  | 0 | 0 | 0 | $kind eq 'FAdd' or $node->kind eq 'FSub' or $kind eq 'FMul' or $kind eq 'FDiv' | 
 
|  | 0 | 0 | 0 | $kind eq 'Eq' or $kind eq 'LE' |