make the typeid file-based