public static OobCertHash GetInstance(object obj) { if (obj is OobCertHash) return (OobCertHash)obj; if (obj is Asn1Sequence) return new OobCertHash((Asn1Sequence)obj); throw new ArgumentException("Invalid object: " + obj.GetType().Name, "obj"); }