package com.google.android.m4b.maps.bq;

import android.graphics.Bitmap;
import android.graphics.Bitmap.Config;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.util.FloatMath;
import com.google.android.m4b.maps.aj.a;
import com.google.android.m4b.maps.bc.af;
import com.google.android.m4b.maps.bc.aj;
import com.google.android.m4b.maps.bc.al;
import com.google.android.m4b.maps.bc.ar;
import com.google.android.m4b.maps.bc.as;
import com.google.android.m4b.maps.bc.ba;
import com.google.android.m4b.maps.bc.bo.b;
import com.google.android.m4b.maps.bc.u;
import com.google.android.m4b.maps.bl.ag;
import com.google.android.m4b.maps.bn.b;
import com.google.android.m4b.maps.bo.f;
import com.google.android.m4b.maps.bo.l;
import com.google.android.m4b.maps.bp.c;
import com.google.android.m4b.maps.bp.g;
import com.google.android.m4b.maps.bp.i;
import com.google.android.m4b.maps.bp.m;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.WeakHashMap;
import javax.microedition.khronos.opengles.GL10;

public final class j extends d
{

  @VisibleForTesting
  private static float b = 1.0F;
  private static final Map<com.google.android.m4b.maps.bo.e, Map<e, l>> o = new WeakHashMap();
  private final ba c;
  private final List<c> d;
  private final com.google.android.m4b.maps.bp.k e;
  private final c f;
  private final g g;
  private l h;
  private final int i;
  private final int j;
  private final boolean k;
  private final float l;
  private a m;
  private final e n;

  private j(ba paramba, b paramb, List<c> paramList, Set<String> paramSet, int paramInt)
  {
    super(paramSet);
    this.c = paramba;
    this.e = new m(paramb.a, true);
    this.f = new com.google.android.m4b.maps.bp.e(paramb.b, true);
    this.g = new i(paramb.a, true);
    this.d = paramList;
    int i1 = 0;
    float f1 = 1.0F;
    int i2 = ((c)this.d.get(0)).e();
    boolean bool;
    int i3;
    if (i2 > 1)
    {
      bool = true;
      this.k = bool;
      if (!this.k)
        break label176;
      int i8 = 2 * (int)Math.ceil(i2 / 16);
      f1 = Math.max(1.0F, ((c)this.d.get(0)).d());
      i1 = i8 + 0;
      i3 = 0;
    }
    while (true)
    {
      if (1 << i3 < i1)
      {
        i3++;
        continue;
        bool = false;
        break;
        label176: Iterator localIterator = this.d.iterator();
        while (localIterator.hasNext())
        {
          c localc2 = (c)localIterator.next();
          int i7 = localc2.e();
          float f4 = Math.max(f1, localc2.d());
          i1 += i7;
          f1 = f4;
        }
      }
      this.i = i3;
      float f2 = 2.0F + FloatMath.ceil(f1 * b);
      this.j = l.a((int)f2, 8);
      this.l = (this.j / f2);
      this.n = new e(this.d, this.l, this.i, this.k);
      float f3 = 0.5F * (f2 * paramba.i().g() / 256.0F);
      f localf = f.a();
      int i4 = 0;
      if (i4 < paramList.size())
      {
        al localal = paramba.i();
        c localc1 = (c)paramList.get(i4);
        aj localaj = localc1.a();
        int i5 = localaj.b();
        af localaf;
        int i6;
        if (i5 >= 2)
        {
          this.m = localc1.c();
          localaf = localal.d();
          i6 = localal.g();
          if (this.k)
            break label471;
          localf.a(localaj, f3, true, localaf, i6, 1.0F, this.e, this.f, null);
          f.a(i5, true, this.i, new int[] { i4 }, this.g);
        }
        while (true)
        {
          i4++;
          break;
          label471: localf.a(localaj, f3, true, localaf, i6, 2048.0F / localc1.e(), this.e, this.f, this.g);
        }
      }
      return;
      i3 = 0;
    }
  }

  private static l a(com.google.android.m4b.maps.bo.e parame, e parame1)
  {
    try
    {
      Map localMap = (Map)o.get(parame);
      if (localMap == null);
      for (l locall = null; ; locall = (l)localMap.get(parame1))
        return locall;
    }
    finally
    {
    }
  }

  public static void a(float paramFloat)
  {
    b = paramFloat;
  }

  public static void a(com.google.android.m4b.maps.bo.e parame)
  {
    GL10 localGL10 = parame.x();
    parame.p();
    localGL10.glBlendFunc(1, 771);
    localGL10.glTexEnvx(8960, 8704, 8448);
    parame.x().glColor4x(65536, 65536, 65536, 65536);
  }

  private static void a(com.google.android.m4b.maps.bo.e parame, e parame1, l paraml)
  {
    try
    {
      Object localObject2 = (Map)o.get(parame);
      if (localObject2 == null)
      {
        localObject2 = Maps.newHashMap();
        o.put(parame, localObject2);
      }
      ((Map)localObject2).put(parame1, paraml);
      return;
    }
    finally
    {
    }
  }

  private static void a(ArrayList<d> paramArrayList, Canvas paramCanvas, Paint paramPaint, float paramFloat1, float paramFloat2, float paramFloat3, int paramInt)
  {
    float f1 = 16.0F * (paramCanvas.getHeight() / paramInt);
    int i1 = 0;
    if (i1 < paramArrayList.size())
    {
      d locald = (d)paramArrayList.get(i1);
      float f2 = paramFloat1 + paramFloat3 * locald.a;
      float f3 = 0.5F * (paramFloat3 * locald.b);
      paramPaint.setColor(locald.c);
      int[] arrayOfInt = locald.d;
      if (arrayOfInt == null)
        if (paramInt == 1)
          paramCanvas.drawLine(f2 - f3, paramFloat2 + 0.5F, f2 + f3, paramFloat2 + 0.5F, paramPaint);
      while (true)
      {
        i1++;
        break;
        paramCanvas.drawRect(f2 - f3, 0.0F, f2 + f3, paramCanvas.getHeight(), paramPaint);
        continue;
        int i2 = 0;
        int i3 = 1;
        float f4 = paramFloat2;
        while (i2 < paramInt)
        {
          int i4 = 0;
          int i5 = i3;
          int i6 = i2;
          float f5 = f4;
          while (i4 <= arrayOfInt.length % 2)
          {
            int i7 = arrayOfInt.length;
            int i8 = 0;
            int i9 = i5;
            int i10 = i6;
            if (i8 < i7)
            {
              int i11 = arrayOfInt[i8];
              float f6 = f5 + f1 * (i11 / 16.0F);
              if (i9 != 0)
                paramCanvas.drawRect(f2 - f3, f5, f2 + f3, f6, paramPaint);
              if (i9 == 0);
              for (int i12 = 1; ; i12 = 0)
              {
                i10 += i11;
                i8++;
                i9 = i12;
                f5 = f6;
                break;
              }
            }
            i4++;
            i6 = i10;
            i5 = i9;
          }
          f4 = f5;
          i2 = i6;
          i3 = i5;
        }
      }
    }
  }

  static boolean a(aj paramaj, b paramb)
  {
    int i1 = -1 + paramaj.b();
    boolean bool2;
    if (i1 <= 0)
      bool2 = true;
    int i2;
    int i6;
    do
    {
      return bool2;
      i2 = i1 * 5;
      if (paramb.a <= 0)
        break;
      i6 = i2 + paramb.a;
      bool2 = false;
    }
    while (i6 > 16384);
    paramb.a = (i2 + paramb.a);
    int i3 = paramb.b;
    int i4 = 3 * (-1 + i1 * 3);
    boolean bool1 = paramaj.e();
    int i5 = 0;
    if (bool1)
      i5 = 3;
    paramb.b = (i3 + (i5 + i4));
    return true;
  }

  private static void b(com.google.android.m4b.maps.bo.e parame, e parame1)
  {
    try
    {
      Map localMap = (Map)o.get(parame);
      if (localMap != null)
        localMap.remove(parame1);
      return;
    }
    finally
    {
    }
  }

  private void d(com.google.android.m4b.maps.bo.e parame)
  {
    if (this.h != null)
    {
      this.h.f();
      if (this.h.g() == 0)
        b(parame, this.n);
      this.h = null;
    }
  }

  public final int a()
  {
    int i1 = this.e.c() + this.f.c() + this.g.b();
    if (this.h != null)
      i1 += this.h.h();
    return i1;
  }

  public final void a(com.google.android.m4b.maps.bo.e parame, b paramb, com.google.android.m4b.maps.bl.j paramj)
  {
    if (!paramj.c().c())
      break label10;
    label10: 
    while ((this.m != null) && (paramj.c().b(this.m) == null))
      return;
    int i1 = Math.max(0, Math.round((paramb.l() - this.c.b()) / 0.5F));
    label324: GL10 localGL10;
    float f1;
    if (this.h == null)
    {
      this.h = a(parame, this.n);
      if (this.h == null)
      {
        Bitmap localBitmap = Bitmap.createBitmap(this.j, 1 << this.i, Bitmap.Config.ARGB_4444);
        localBitmap.eraseColor(0);
        List localList = this.d;
        float f3 = this.l;
        boolean bool = this.k;
        Canvas localCanvas = new Canvas(localBitmap);
        Paint localPaint = new Paint();
        localPaint.setStrokeWidth(1.0F);
        localPaint.setAntiAlias(true);
        float f4 = 0.5F * localBitmap.getWidth();
        if (bool);
        for (int i2 = 1; ; i2 = localList.size())
          for (int i3 = 0; i3 < i2; i3++)
          {
            c localc = (c)localList.get(i3);
            int i4 = localc.e();
            float f5 = i3;
            a(localc.f(), localCanvas, localPaint, f4, f5, f3, i4);
            a(localc.g(), localCanvas, localPaint, f4, f5, f3, i4);
          }
        this.h = new l(parame);
        a(parame, this.n, this.h);
        this.h.c(true);
        this.h.b(true);
        this.h.b(localBitmap);
        localBitmap.recycle();
      }
    }
    else if (i1 != 0)
    {
      parame.x().glMatrixMode(5890);
      parame.x().glLoadIdentity();
      parame.x().glTranslatef(0.5F, 0.5F, 0.0F);
      localGL10 = parame.x();
      f1 = 1.0F + i1;
      if (!this.k)
        break label516;
    }
    label516: for (float f2 = 1.0F + i1; ; f2 = 1.0F)
    {
      localGL10.glScalef(f1, f2, 0.0F);
      parame.x().glTranslatef(-0.5F, -0.5F, 0.0F);
      parame.x().glMatrixMode(5888);
      this.h.a(parame.x());
      this.e.d(parame);
      this.g.d(parame);
      this.f.a(parame, 4);
      if (i1 == 0)
        break;
      parame.x().glMatrixMode(5890);
      parame.x().glLoadIdentity();
      parame.x().glMatrixMode(5888);
      return;
      this.h.e();
      break label324;
    }
  }

  public final int b()
  {
    Iterator localIterator = this.d.iterator();
    int i1 = 608;
    while (localIterator.hasNext())
      i1 += ((c)localIterator.next()).h();
    return i1 + (this.e.d() + this.f.d() + this.g.c());
  }

  public final void b(com.google.android.m4b.maps.bo.e parame)
  {
    d(parame);
    this.e.b(parame);
    this.f.b(parame);
    this.g.b(parame);
  }

  public final void c(com.google.android.m4b.maps.bo.e parame)
  {
    d(parame);
    this.e.c(parame);
    this.f.c(parame);
    this.g.c(parame);
  }

  public static final class a
  {
    private ArrayList<j.c> a = new ArrayList();
    private final ba b;
    private final String[] c;

    public a(ba paramba, String[] paramArrayOfString)
    {
      this.b = paramba;
      this.c = paramArrayOfString;
    }

    public final void a(bo.b paramb)
    {
      Object localObject1 = null;
      if (paramb.hasNext())
      {
        com.google.android.m4b.maps.bc.k localk = paramb.a();
        if ((localk instanceof u))
        {
          u localu = (u)localk;
          if ((localObject1 != null) && (j.c.a((j.c)localObject1).equals(localu.b())))
            ((j.c)localObject1).a(localu);
          j.c localc;
          for (Object localObject2 = localObject1; ; localObject2 = localc)
          {
            paramb.next();
            localObject1 = localObject2;
            break;
            localc = new j.c(localu, this.c);
            this.a.add(localc);
          }
        }
      }
    }

    public final void a(com.google.android.m4b.maps.bc.k paramk)
    {
      this.a.add(new j.c((u)paramk, this.c));
    }

    public final j[] a(int paramInt)
    {
      ArrayList localArrayList1 = new ArrayList();
      Iterator localIterator = this.a.iterator();
      ArrayList localArrayList2 = Lists.newArrayList();
      j.b localb1 = new j.b();
      HashSet localHashSet1 = Sets.newHashSet();
      ArrayList localArrayList3 = Lists.newArrayList();
      j.b localb2 = new j.b();
      HashSet localHashSet2 = Sets.newHashSet();
      Object localObject1 = localHashSet1;
      Object localObject2 = localArrayList2;
      Object localObject3 = null;
      j.c localc;
      Object localObject5;
      Object localObject4;
      while (localIterator.hasNext())
      {
        localc = (j.c)localIterator.next();
        if (localc.c() != null)
        {
          j.b localb3 = new j.b();
          j.a(localc.a(), localb3);
          localArrayList1.add(new j(this.b, localb3, ImmutableList.of(localc), localc.b(), paramInt, (byte)0));
        }
        else
        {
          if (localc.e() > 1)
          {
            j.e locale = new j.e(localc);
            if ((localObject3 != null) && (!locale.equals(localObject3)));
            for (int i = 1; ; i = 0)
            {
              if ((!j.a(localc.a(), localb2)) || (i != 0))
              {
                localArrayList1.add(new j(this.b, localb2, localArrayList3, localHashSet2, paramInt, (byte)0));
                localArrayList3 = Lists.newArrayList();
                localb2.a();
                j.a(localc.a(), localb2);
                localHashSet2 = Sets.newHashSet();
              }
              localArrayList3.add(localc);
              localHashSet2.addAll(localc.b());
              localObject3 = locale;
              break;
            }
          }
          if (j.a(localc.a(), localb1))
            break label477;
          localArrayList1.add(new j(this.b, localb1, (List)localObject2, (Set)localObject1, paramInt, (byte)0));
          localObject5 = Lists.newArrayList();
          localb1.a();
          j.a(localc.a(), localb1);
          localObject4 = Sets.newHashSet();
        }
      }
      while (true)
      {
        ((List)localObject5).add(localc);
        ((Set)localObject4).addAll(localc.b());
        localObject1 = localObject4;
        localObject2 = localObject5;
        break;
        if (!((List)localObject2).isEmpty())
          localArrayList1.add(new j(this.b, localb1, (List)localObject2, (Set)localObject1, paramInt, (byte)0));
        if (!localArrayList3.isEmpty())
          localArrayList1.add(new j(this.b, localb2, localArrayList3, localHashSet2, paramInt, (byte)0));
        if (localArrayList1.isEmpty())
          return null;
        return (j[])localArrayList1.toArray(new j[localArrayList1.size()]);
        label477: localObject4 = localObject1;
        localObject5 = localObject2;
      }
    }
  }

  static final class b
  {
    int a;
    int b;

    public final void a()
    {
      this.b = 0;
      this.a = 0;
    }
  }

  public static final class c
  {
    private final aj a;
    private final ArrayList<j.d> b = new ArrayList(2);
    private final ArrayList<j.d> c = new ArrayList(2);
    private final HashSet<String> d = new HashSet();
    private final String[] e;
    private a f;

    private c()
    {
      this.a = null;
      this.e = null;
    }

    public c(u paramu, String[] paramArrayOfString)
    {
      this.a = paramu.b();
      this.e = paramArrayOfString;
      a(paramu);
    }

    public final aj a()
    {
      return this.a;
    }

    public final void a(u paramu)
    {
      for (int k : paramu.l())
        if ((k >= 0) && (k < this.e.length))
          this.d.add(this.e[k]);
      as localas = paramu.e();
      float f1 = paramu.d();
      if (localas.b() == 1)
        this.c.add(new j.d(f1, localas, 0));
      while (true)
      {
        if (paramu.f())
          this.f = paramu.a();
        return;
        if (localas.b() > 1)
        {
          this.b.add(new j.d(f1, localas, 0));
          this.c.add(new j.d(f1, localas, 1));
        }
      }
    }

    public final Set<String> b()
    {
      return this.d;
    }

    public final a c()
    {
      return this.f;
    }

    public final float d()
    {
      Iterator localIterator1 = this.b.iterator();
      float f1 = 0.0F;
      float f3;
      if (localIterator1.hasNext())
      {
        j.d locald2 = (j.d)localIterator1.next();
        f3 = Math.abs(locald2.a) + locald2.b / 2.0F;
        if (f3 <= f1)
          break label124;
      }
      while (true)
      {
        f1 = f3;
        break;
        Iterator localIterator2 = this.c.iterator();
        while (localIterator2.hasNext())
        {
          j.d locald1 = (j.d)localIterator2.next();
          float f2 = Math.abs(locald1.a) + locald1.b / 2.0F;
          if (f2 > f1)
            f1 = f2;
        }
        return f1 * 2.0F;
        label124: f3 = f1;
      }
    }

    public final int e()
    {
      int i = 1;
      int j = this.b.size() + this.c.size();
      if (j == 0)
        return i;
      int[] arrayOfInt1 = new int[j];
      int k = 0;
      label31: j.d locald;
      label63: int i8;
      if (k < j)
        if (k < this.b.size())
        {
          locald = (j.d)this.b.get(k);
          if (locald.d != null)
            break label111;
          i8 = i;
        }
      while (true)
      {
        arrayOfInt1[k] = i8;
        k++;
        break label31;
        locald = (j.d)this.c.get(k - this.b.size());
        break label63;
        label111: int[] arrayOfInt2 = locald.d;
        int i5 = arrayOfInt2.length;
        int i6 = 0;
        int i9;
        for (int i7 = 0; i6 < i5; i7 = i9)
        {
          i9 = i7 + arrayOfInt2[i6];
          i6++;
        }
        if (locald.d.length % 2 == i)
        {
          i8 = i7 * 2;
          continue;
          int m = arrayOfInt1[0];
          int n = i;
          int i3;
          for (i = m; n < j; i = i3)
          {
            int i1 = arrayOfInt1[n];
            int i2 = i * i1;
            if ((i <= 0) || (i1 <= 0))
              throw new IllegalArgumentException("Greatest common divisor should be computed on numbers greater than zero.");
            while (i1 != 0)
            {
              int i4 = i % i1;
              i = i1;
              i1 = i4;
            }
            i3 = i2 / i;
            n++;
          }
          break;
        }
        i8 = i7;
      }
    }

    public final ArrayList<j.d> f()
    {
      return this.b;
    }

    public final ArrayList<j.d> g()
    {
      return this.c;
    }

    public final int h()
    {
      int i = 208;
      if (this.a != null)
        i = 208 + this.a.i();
      return i + 24 * (this.b.size() + this.c.size());
    }
  }

  @VisibleForTesting
  static final class d
  {
    final float a;
    final float b;
    final int c;
    final int[] d;
    private final int e;

    public d(float paramFloat, as paramas, int paramInt)
    {
      this.a = paramFloat;
      this.b = paramas.b(paramInt).c();
      this.c = paramas.b(paramInt).b();
      int[] arrayOfInt1;
      int[] arrayOfInt2;
      label77: int i;
      if (paramas.d())
        if (paramas.b() > paramInt)
        {
          arrayOfInt1 = paramas.b(paramInt).d();
          int k = arrayOfInt1.length;
          arrayOfInt2 = null;
          if (k == 0)
          {
            this.d = arrayOfInt2;
            i = 31 * (31 * (31 * Float.floatToIntBits(this.a) + Float.floatToIntBits(this.b)) + this.c);
            if (this.d == null)
              break label182;
          }
        }
      label182: for (int j = Arrays.hashCode(this.d); ; j = 0)
      {
        this.e = (j + i);
        return;
        arrayOfInt2 = arrayOfInt1;
        break;
        com.google.android.m4b.maps.al.d.a("GLLineGroup", "Invalid stroke index : " + paramInt + "  available strokes : " + paramas.b());
        this.d = null;
        break label77;
      }
    }

    public final boolean equals(Object paramObject)
    {
      if (this == paramObject);
      d locald;
      do
      {
        return true;
        if ((paramObject == null) || (getClass() != paramObject.getClass()))
          return false;
        locald = (d)paramObject;
        if (this.c != locald.c)
          return false;
        if (Float.compare(locald.a, this.a) != 0)
          return false;
        if (Float.compare(locald.b, this.b) != 0)
          return false;
      }
      while (Arrays.equals(this.d, locald.d));
      return false;
    }

    public final int hashCode()
    {
      return this.e;
    }

    public final String toString()
    {
      return "c:" + this.c + " w:" + this.b + " s:" + this.a + " d:" + Arrays.toString(this.d);
    }
  }

  static final class e
  {
    private final List<j.d> a = Lists.newArrayList();
    private final List<j.d> b = Lists.newArrayList();
    private final int c;
    private final float d;
    private final int e;

    public e(j.c paramc)
    {
      this.d = 0.0F;
      this.c = 0;
      this.b.addAll(paramc.f());
      this.a.addAll(paramc.g());
      this.e = a();
    }

    public e(List<j.c> paramList, float paramFloat, int paramInt, boolean paramBoolean)
    {
      this.d = paramFloat;
      this.c = paramInt;
      if (paramBoolean)
      {
        j.c localc2 = (j.c)paramList.get(0);
        this.b.addAll(localc2.f());
        this.a.addAll(localc2.g());
      }
      while (true)
      {
        this.e = a();
        return;
        Iterator localIterator = paramList.iterator();
        while (localIterator.hasNext())
        {
          j.c localc1 = (j.c)localIterator.next();
          this.b.addAll(localc1.f());
          this.a.addAll(localc1.g());
        }
      }
    }

    private int a()
    {
      return 31 * (31 * (31 * this.a.hashCode() + this.b.hashCode()) + this.c) + Float.floatToIntBits(this.d);
    }

    public final boolean equals(Object paramObject)
    {
      if (this == paramObject);
      e locale;
      do
      {
        return true;
        if ((paramObject == null) || (getClass() != paramObject.getClass()))
          return false;
        locale = (e)paramObject;
        if (Float.compare(locale.d, this.d) != 0)
          return false;
        if (this.c != locale.c)
          return false;
        if (!this.a.equals(locale.a))
          return false;
      }
      while (this.b.equals(locale.b));
      return false;
    }

    public final int hashCode()
    {
      return this.e;
    }
  }
}

/* Location:           C:\Documents and Settings\Cesar Cabello Cea\Mis documentos\Downloads\apk-downloader\com.ikea.kompis-6_dex2jar.jar
 * Qualified Name:     com.google.android.m4b.maps.bq.j
 * JD-Core Version:    0.6.2
 */