@Override
  public boolean equals(Object o) {
    if (!(o instanceof BitmapMemoryCacheKey)) {
      return false;
    }

    BitmapMemoryCacheKey otherKey = (BitmapMemoryCacheKey) o;
    return mHash == otherKey.mHash
        && mSourceString.equals(otherKey.mSourceString)
        && Objects.equal(this.mResizeOptions, otherKey.mResizeOptions)
        && mAutoRotated == otherKey.mAutoRotated
        && Objects.equal(mImageDecodeOptions, otherKey.mImageDecodeOptions);
  }
 @Override
 public String toString() {
   return Objects.toStringHelper(this)
       .add("holder", mDraweeHolder != null ? mDraweeHolder.toString() : "<no holder set>")
       .toString();
 }