started writing type checker