go$a.java 2.92 KB
public final class go$a
{
  public long a = 0L;
  public a b;
  
  private void a()
  {
    if (this.b == null) {
      this.b = new a();
    }
  }
  
  public final void a(int paramInt)
  {
    a locala = this;
    while (paramInt >= 64)
    {
      locala.a();
      locala = locala.b;
      paramInt -= 64;
    }
    locala.a |= 1L << paramInt;
  }
  
  final void a(int paramInt, boolean paramBoolean)
  {
    boolean bool = paramBoolean;
    a locala = this;
    while (paramInt >= 64)
    {
      locala.a();
      locala = locala.b;
      paramInt -= 64;
    }
    if ((locala.a & 0x8000000000000000) != 0L)
    {
      paramBoolean = true;
      label47:
      long l1 = (1L << paramInt) - 1L;
      long l2 = locala.a;
      locala.a = (((l1 ^ 0xFFFFFFFFFFFFFFFF) & locala.a) << 1 | l2 & l1);
      if (!bool) {
        break label132;
      }
      locala.a(paramInt);
    }
    for (;;)
    {
      if ((!paramBoolean) && (locala.b == null)) {
        return;
      }
      locala.a();
      locala = locala.b;
      paramInt = 0;
      bool = paramBoolean;
      break;
      paramBoolean = false;
      break label47;
      label132:
      locala.b(paramInt);
    }
  }
  
  public final void b(int paramInt)
  {
    a locala = this;
    while (paramInt >= 64)
    {
      if (locala.b == null) {
        return;
      }
      locala = locala.b;
      paramInt -= 64;
    }
    locala.a &= (1L << paramInt ^ 0xFFFFFFFFFFFFFFFF);
  }
  
  public final boolean c(int paramInt)
  {
    a locala = this;
    while (paramInt >= 64)
    {
      locala.a();
      locala = locala.b;
      paramInt -= 64;
    }
    return (locala.a & 1L << paramInt) != 0L;
  }
  
  public final boolean d(int paramInt)
  {
    a locala = this;
    while (paramInt >= 64)
    {
      locala.a();
      locala = locala.b;
      paramInt -= 64;
    }
    long l1 = 1L << paramInt;
    if ((locala.a & l1) != 0L) {}
    for (boolean bool = true;; bool = false)
    {
      locala.a &= (l1 ^ 0xFFFFFFFFFFFFFFFF);
      l1 -= 1L;
      long l2 = locala.a;
      locala.a = (Long.rotateRight((l1 ^ 0xFFFFFFFFFFFFFFFF) & locala.a, 1) | l2 & l1);
      if (locala.b != null)
      {
        if (locala.b.c(0)) {
          locala.a(63);
        }
        locala.b.d(0);
      }
      return bool;
    }
  }
  
  final int e(int paramInt)
  {
    if (this.b == null)
    {
      if (paramInt >= 64) {
        return Long.bitCount(this.a);
      }
      return Long.bitCount(this.a & (1L << paramInt) - 1L);
    }
    if (paramInt < 64) {
      return Long.bitCount(this.a & (1L << paramInt) - 1L);
    }
    return this.b.e(paramInt - 64) + Long.bitCount(this.a);
  }
  
  public final String toString()
  {
    if (this.b == null) {
      return Long.toBinaryString(this.a);
    }
    return this.b.toString() + "xx" + Long.toBinaryString(this.a);
  }
}


/* Location:              /home/merong/decompile/hackery-dex2jar.jar!/go$a.class
 * Java compiler version: 6 (50.0)
 * JD-Core Version:       0.7.1
 */