beginning work on type checking