public override bool Equals(object obj) { if (base.Equals(obj) && obj is TrustedSignerAllowListEntry trustedSigner) { var ownersEquals = (Owners == null || !Owners.Any()) && (trustedSigner.Owners == null || !trustedSigner.Owners.Any()); if (Owners != null && trustedSigner.Owners != null) { ownersEquals = Owners.OrderBy(o => o).SequenceEqual(trustedSigner.Owners.OrderBy(o => o)); } return(AllowUntrustedRoot == trustedSigner.AllowUntrustedRoot && ownersEquals); } return(false); }