Merge "Revert "Use IsAssignableFrom instead of IsSubclass for robustness.""