Added type checker, phase 1