mroe tests
type checker now handles if