do the right thing when checking types