typechecker initial