updates for templated type checking