.       Contract.Ensures(Contract.Exists(0, elems.Length, index => elems[index] != null && elems[index] == Contract.Result<A>() &&                                            Contract.ForAll(0, index, prior => Contract.Result<A>() != null)));       // See if we are properly sharing fields.       Contract.Ensures(Contract.Exists(0, elems.Length, index => elems[index] != null && elems[index] == Contract.Result<A>() &&                                           Contract.ForAll(0, index, prior => Contract.Result<A>() != null)));       // See if we are properly sharing fields.       Contract.Ensures(Contract.Exists(0, elems.Length, index => elems[index] != null &&                                           Contract.ForAll(0, index, prior => Contract.Result<A>() != null)));        throw new NotImplementedException();     }      public override C[] GenericMethod<C>(