public final volatile Object createFromParcel(Parcel parcel) {
    int j = SafeParcelReader.validateObjectHeader(parcel);
    int i = 0;
    String s = null;
    do {
      if (parcel.dataPosition() < j) {
        int k = parcel.readInt();
        switch (0xffff & k) {
          default:
            SafeParcelReader.skipUnknownField(parcel, k);
            break;

          case 1: // '\001'
            i = SafeParcelReader.readInt(parcel, k);
            break;

          case 2: // '\002'
            s = SafeParcelReader.createString(parcel, k);
            break;
        }
      } else if (parcel.dataPosition() != j) {
        throw new com.google.android.gms.common.internal.safeparcel.SafeParcelReader.ParseException(
            (new StringBuilder("Overread allowed size end=")).append(j).toString(), parcel);
      } else {
        return new RecoveryWriteResponse(i, s);
      }
    } while (true);
  }
  public final volatile Object createFromParcel(Parcel parcel) {
    long l1 = 0L;
    boolean flag = false;
    int l = SafeParcelReader.validateObjectHeader(parcel);
    boolean flag1 = false;
    int i = 0;
    long l2 = 0L;
    int j = 0;
    int k = 0;
    do {
      if (parcel.dataPosition() < l) {
        int i1 = parcel.readInt();
        switch (0xffff & i1) {
          default:
            SafeParcelReader.skipUnknownField(parcel, i1);
            break;

          case 1: // '\001'
            j = SafeParcelReader.readInt(parcel, i1);
            break;

          case 1000:
            k = SafeParcelReader.readInt(parcel, i1);
            break;

          case 2: // '\002'
            l2 = SafeParcelReader.readLong(parcel, i1);
            break;

          case 3: // '\003'
            l1 = SafeParcelReader.readLong(parcel, i1);
            break;

          case 4: // '\004'
            i = SafeParcelReader.readInt(parcel, i1);
            break;

          case 5: // '\005'
            flag1 = SafeParcelReader.readBoolean(parcel, i1);
            break;

          case 6: // '\006'
            flag = SafeParcelReader.readBoolean(parcel, i1);
            break;
        }
      } else if (parcel.dataPosition() != l) {
        throw new com.google.android.gms.common.internal.safeparcel.SafeParcelReader.ParseException(
            (new StringBuilder("Overread allowed size end=")).append(l).toString(), parcel);
      } else {
        return new GestureEvent(k, j, l2, l1, i, flag1, flag);
      }
    } while (true);
  }
  public final volatile Object createFromParcel(Parcel parcel) {
    String s = null;
    boolean flag = false;
    int j = SafeParcelReader.validateObjectHeader(parcel);
    HashSet hashset = new HashSet();
    DefaultMetadataImpl defaultmetadataimpl = null;
    int i = 0;
    do {
      if (parcel.dataPosition() < j) {
        int k = parcel.readInt();
        switch (0xffff & k) {
          default:
            SafeParcelReader.skipUnknownField(parcel, k);
            break;

          case 1: // '\001'
            i = SafeParcelReader.readInt(parcel, k);
            hashset.add(Integer.valueOf(1));
            break;

          case 2: // '\002'
            flag = SafeParcelReader.readBoolean(parcel, k);
            hashset.add(Integer.valueOf(2));
            break;

          case 3: // '\003'
            defaultmetadataimpl =
                (DefaultMetadataImpl)
                    SafeParcelReader.createParcelable(parcel, k, DefaultMetadataImpl.CREATOR);
            hashset.add(Integer.valueOf(3));
            break;

          case 4: // '\004'
            s = SafeParcelReader.createString(parcel, k);
            hashset.add(Integer.valueOf(4));
            break;
        }
      } else {
        if (parcel.dataPosition() != j) {
          throw new com.google.android.gms.common.internal.safeparcel.SafeParcelReader
              .ParseException(
              (new StringBuilder("Overread allowed size end=")).append(j).toString(), parcel);
        }
        return new DefaultPersonImpl.Images(hashset, i, flag, defaultmetadataimpl, s);
      }
    } while (true);
  }
  public final volatile Object createFromParcel(Parcel parcel) {
    int j = SafeParcelReader.validateObjectHeader(parcel);
    String s = null;
    ParcelFileDescriptor parcelfiledescriptor = null;
    int i = 0;
    String s1 = null;
    do {
      if (parcel.dataPosition() < j) {
        int k = parcel.readInt();
        switch (0xffff & k) {
          default:
            SafeParcelReader.skipUnknownField(parcel, k);
            break;

          case 1: // '\001'
            i = SafeParcelReader.readInt(parcel, k);
            break;

          case 2: // '\002'
            parcelfiledescriptor =
                (ParcelFileDescriptor)
                    SafeParcelReader.createParcelable(parcel, k, ParcelFileDescriptor.CREATOR);
            break;

          case 3: // '\003'
            s = SafeParcelReader.createString(parcel, k);
            break;

          case 4: // '\004'
            s1 = SafeParcelReader.createString(parcel, k);
            break;
        }
      } else if (parcel.dataPosition() != j) {
        throw new com.google.android.gms.common.internal.safeparcel.SafeParcelReader.ParseException(
            (new StringBuilder("Overread allowed size end=")).append(j).toString(), parcel);
      } else {
        return new FileTeleporter(i, parcelfiledescriptor, s, s1);
      }
    } while (true);
  }
  public final volatile Object createFromParcel(Parcel parcel) {
    boolean flag = false;
    AccountAuthenticatorResponse accountauthenticatorresponse = null;
    int j = SafeParcelReader.validateObjectHeader(parcel);
    Bundle bundle = new Bundle();
    Account account = null;
    AppDescription appdescription = null;
    PACLConfig paclconfig = null;
    FACLConfig faclconfig = null;
    String s = null;
    String s1 = null;
    int i = 0;
    do {
      if (parcel.dataPosition() < j) {
        int k = parcel.readInt();
        switch (0xffff & k) {
          default:
            SafeParcelReader.skipUnknownField(parcel, k);
            break;

          case 1: // '\001'
            i = SafeParcelReader.readInt(parcel, k);
            break;

          case 2: // '\002'
            s1 = SafeParcelReader.createString(parcel, k);
            break;

          case 3: // '\003'
            s = SafeParcelReader.createString(parcel, k);
            break;

          case 4: // '\004'
            bundle = SafeParcelReader.createBundle(parcel, k);
            break;

          case 5: // '\005'
            faclconfig =
                (FACLConfig) SafeParcelReader.createParcelable(parcel, k, FACLConfig.CREATOR);
            break;

          case 6: // '\006'
            paclconfig =
                (PACLConfig) SafeParcelReader.createParcelable(parcel, k, PACLConfig.CREATOR);
            break;

          case 7: // '\007'
            flag = SafeParcelReader.readBoolean(parcel, k);
            break;

          case 8: // '\b'
            appdescription =
                (AppDescription)
                    SafeParcelReader.createParcelable(parcel, k, AppDescription.CREATOR);
            break;

          case 9: // '\t'
            account = (Account) SafeParcelReader.createParcelable(parcel, k, Account.CREATOR);
            break;

          case 10: // '\n'
            accountauthenticatorresponse =
                (AccountAuthenticatorResponse)
                    SafeParcelReader.createParcelable(
                        parcel, k, AccountAuthenticatorResponse.CREATOR);
            break;
        }
      } else if (parcel.dataPosition() != j) {
        throw new com.google.android.gms.common.internal.safeparcel.SafeParcelReader.ParseException(
            (new StringBuilder("Overread allowed size end=")).append(j).toString(), parcel);
      } else {
        return new TokenWorkflowRequest(
            i,
            s1,
            s,
            bundle,
            faclconfig,
            paclconfig,
            flag,
            appdescription,
            account,
            accountauthenticatorresponse);
      }
    } while (true);
  }
  public final volatile Object createFromParcel(Parcel parcel) {
    int k = SafeParcelReader.validateObjectHeader(parcel);
    int j = 0;
    int i = 0;
    String s5 = null;
    String s4 = null;
    String s3 = null;
    String s2 = null;
    String s1 = null;
    String s = null;
    byte byte3 = 0;
    byte byte2 = 0;
    byte byte1 = 0;
    byte byte0 = 0;
    do {
      if (parcel.dataPosition() < k) {
        int l = parcel.readInt();
        switch (0xffff & l) {
          default:
            SafeParcelReader.skipUnknownField(parcel, l);
            break;

          case 1: // '\001'
            j = SafeParcelReader.readInt(parcel, l);
            break;

          case 2: // '\002'
            i = SafeParcelReader.readInt(parcel, l);
            break;

          case 3: // '\003'
            s5 = SafeParcelReader.createString(parcel, l);
            break;

          case 4: // '\004'
            s4 = SafeParcelReader.createString(parcel, l);
            break;

          case 5: // '\005'
            s3 = SafeParcelReader.createString(parcel, l);
            break;

          case 6: // '\006'
            s2 = SafeParcelReader.createString(parcel, l);
            break;

          case 7: // '\007'
            s1 = SafeParcelReader.createString(parcel, l);
            break;

          case 8: // '\b'
            s = SafeParcelReader.createString(parcel, l);
            break;

          case 9: // '\t'
            byte3 = SafeParcelReader.readByte(parcel, l);
            break;

          case 10: // '\n'
            byte2 = SafeParcelReader.readByte(parcel, l);
            break;

          case 11: // '\013'
            byte1 = SafeParcelReader.readByte(parcel, l);
            break;

          case 12: // '\f'
            byte0 = SafeParcelReader.readByte(parcel, l);
            break;
        }
      } else if (parcel.dataPosition() != k) {
        throw new com.google.android.gms.common.internal.safeparcel.SafeParcelReader.ParseException(
            (new StringBuilder("Overread allowed size end=")).append(k).toString(), parcel);
      } else {
        return new AncsNotificationParcelable(
            j, i, s5, s4, s3, s2, s1, s, byte3, byte2, byte1, byte0);
      }
    } while (true);
  }
  public final volatile Object createFromParcel(Parcel parcel) {
    java.util.ArrayList arraylist = null;
    int j = SafeParcelReader.validateObjectHeader(parcel);
    int i = 0;
    long l = 0L;
    String s = null;
    String s1 = null;
    Uri uri = null;
    String s2 = null;
    String s3 = null;
    String s4 = null;
    String s5 = null;
    do {
      if (parcel.dataPosition() < j) {
        int k = parcel.readInt();
        switch (0xffff & k) {
          default:
            SafeParcelReader.skipUnknownField(parcel, k);
            break;

          case 1: // '\001'
            i = SafeParcelReader.readInt(parcel, k);
            break;

          case 2: // '\002'
            s5 = SafeParcelReader.createString(parcel, k);
            break;

          case 3: // '\003'
            s4 = SafeParcelReader.createString(parcel, k);
            break;

          case 4: // '\004'
            s3 = SafeParcelReader.createString(parcel, k);
            break;

          case 5: // '\005'
            s2 = SafeParcelReader.createString(parcel, k);
            break;

          case 6: // '\006'
            uri = (Uri) SafeParcelReader.createParcelable(parcel, k, Uri.CREATOR);
            break;

          case 7: // '\007'
            s1 = SafeParcelReader.createString(parcel, k);
            break;

          case 8: // '\b'
            l = SafeParcelReader.readLong(parcel, k);
            break;

          case 9: // '\t'
            s = SafeParcelReader.createString(parcel, k);
            break;

          case 10: // '\n'
            arraylist = SafeParcelReader.createTypedList(parcel, k, Scope.CREATOR);
            break;
        }
      } else if (parcel.dataPosition() != j) {
        throw new com.google.android.gms.common.internal.safeparcel.SafeParcelReader.ParseException(
            (new StringBuilder("Overread allowed size end=")).append(j).toString(), parcel);
      } else {
        return new GoogleSignInAccount(i, s5, s4, s3, s2, uri, s1, l, s, arraylist);
      }
    } while (true);
  }