public virtual int GetHashCode(object o) {
            string obj = o as string;
            if (obj == null) {
                return o.GetHashCode();
            }

            return BackCompatibleStringComparer.GetHashCode(obj);
        }
        public virtual int GetHashCode(object o)
        {
            if (!(o is string obj))
            {
                return(o.GetHashCode());
            }

            return(BackCompatibleStringComparer.GetHashCode(obj));
        }