@Override
  public boolean equals(Object obj) {
    if (this == obj) {
      return true;
    }
    if (!(obj instanceof PinInfo)) {
      return false;
    }
    PinInfo other = (PinInfo) obj;
    return Objects.equal(other.mIndex, mIndex) && Objects.equal(other.mIsHotp, mIsHotp)
        && Objects.equal(other.mPin, mPin)
        && Objects.equal(other.mHotpCodeGenerationAllowed, mHotpCodeGenerationAllowed);
  }
Constructor of {@link PinInfo}.

@param index {@link AccountIndex} that owns the pin
@param isHotp represents whether the OTP type is TOTP or HOTP
java/com/google/android/apps/authenticator/otp/PinInfo.java