package com.google.zxing.oned;

import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.WriterException;
import com.google.zxing.common.BitMatrix;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.Map;

public final class Code128Writer extends OneDimensionalCodeWriter
{
  private static final int CODE_CODE_B = 100;
  private static final int CODE_CODE_C = 99;
  private static final int CODE_FNC_1 = 102;
  private static final int CODE_FNC_2 = 97;
  private static final int CODE_FNC_3 = 96;
  private static final int CODE_FNC_4_B = 100;
  private static final int CODE_START_B = 104;
  private static final int CODE_START_C = 105;
  private static final int CODE_STOP = 106;
  private static final char ESCAPE_FNC_1 = 'ñ';
  private static final char ESCAPE_FNC_2 = 'ò';
  private static final char ESCAPE_FNC_3 = 'ó';
  private static final char ESCAPE_FNC_4 = 'ô';

  private static boolean isDigits(CharSequence paramCharSequence, int paramInt1, int paramInt2)
  {
    int i = paramInt1 + paramInt2;
    int j = paramCharSequence.length();
    for (int k = paramInt1; ; k++)
    {
      boolean bool;
      if ((k >= i) || (k >= j))
      {
        bool = false;
        if (i <= j)
          bool = true;
      }
      int m;
      do
      {
        return bool;
        m = paramCharSequence.charAt(k);
        if ((m >= 48) && (m <= 57))
          break;
        bool = false;
      }
      while (m != 241);
      i++;
    }
  }

  public BitMatrix encode(String paramString, BarcodeFormat paramBarcodeFormat, int paramInt1, int paramInt2, Map<EncodeHintType, ?> paramMap)
    throws WriterException
  {
    if (paramBarcodeFormat != BarcodeFormat.CODE_128)
      throw new IllegalArgumentException("Can only encode CODE_128, but got " + paramBarcodeFormat);
    return super.encode(paramString, paramBarcodeFormat, paramInt1, paramInt2, paramMap);
  }

  public boolean[] encode(String paramString)
  {
    int i = paramString.length();
    if ((i < 1) || (i > 80))
      throw new IllegalArgumentException("Contents length should be between 1 and 80 characters, but got " + i);
    int j = 0;
    ArrayList localArrayList;
    int k;
    int m;
    int n;
    int i1;
    int i6;
    Iterator localIterator1;
    label121: boolean[] arrayOfBoolean;
    int i9;
    Iterator localIterator2;
    if (j >= i)
    {
      localArrayList = new ArrayList();
      k = 0;
      m = 1;
      n = 0;
      i1 = 0;
      if (i1 < i)
        break label247;
      int i5 = k % 103;
      localArrayList.add(Code128Reader.CODE_PATTERNS[i5]);
      localArrayList.add(Code128Reader.CODE_PATTERNS[106]);
      i6 = 0;
      localIterator1 = localArrayList.iterator();
      if (localIterator1.hasNext())
        break label471;
      arrayOfBoolean = new boolean[i6];
      i9 = 0;
      localIterator2 = localArrayList.iterator();
    }
    while (true)
    {
      if (!localIterator2.hasNext())
      {
        return arrayOfBoolean;
        char c = paramString.charAt(j);
        if ((c < ' ') || (c > '~'))
          switch (c)
          {
          default:
            throw new IllegalArgumentException("Bad character in input: " + c);
          case 'ñ':
          case 'ò':
          case 'ó':
          case 'ô':
          }
        j++;
        break;
        label247: int i2;
        label257: int i3;
        label272: int i4;
        if (n == 99)
        {
          i2 = 2;
          if (!isDigits(paramString, i1, i2))
            break label378;
          i3 = 99;
          if (i3 != n)
            break label434;
          switch (paramString.charAt(i1))
          {
          default:
            if (n == 100)
              i4 = '￠' + paramString.charAt(i1);
            break;
          case 'ñ':
          case 'ò':
          case 'ó':
          case 'ô':
          }
        }
        while (true)
        {
          i1++;
          localArrayList.add(Code128Reader.CODE_PATTERNS[i4]);
          k += i4 * m;
          if (i1 == 0)
            break;
          m++;
          break;
          i2 = 4;
          break label257;
          label378: i3 = 100;
          break label272;
          i4 = 102;
          continue;
          i4 = 97;
          continue;
          i4 = 96;
          continue;
          i4 = 100;
          continue;
          i4 = Integer.parseInt(paramString.substring(i1, i1 + 2));
          i1++;
        }
        label434: if (n == 0)
          if (i3 == 100)
            i4 = 104;
        while (true)
        {
          n = i3;
          break;
          i4 = 105;
          continue;
          i4 = i3;
        }
        label471: int[] arrayOfInt = (int[])localIterator1.next();
        int i7 = arrayOfInt.length;
        for (int i8 = 0; i8 < i7; i8++)
          i6 += arrayOfInt[i8];
        break label121;
      }
      i9 += appendPattern(arrayOfBoolean, i9, (int[])localIterator2.next(), true);
    }
  }
}

/* Location:           C:\Documents and Settings\Cesar Cabello Cea\Mis documentos\Downloads\apk-downloader\com.ikea.kompis-6_dex2jar.jar
 * Qualified Name:     com.google.zxing.oned.Code128Writer
 * JD-Core Version:    0.6.2
 */