more typechecking