@Override
public int hashCode()
{
int hashCode = 1;
DoubleIterable iterable = this.delegate.asReversed();
DoubleIterator iterator = iterable.doubleIterator();
while (iterator.hasNext())
{
double item = iterator.next();
hashCode = 31 * hashCode + (int) (Double.doubleToLongBits(item) ^ Double.doubleToLongBits(item) >>> 32);
}