content: package kotlin.random;
  
  import java.io.Serializable;
  import kotlin.Metadata;
  import kotlin.jvm.internal.DefaultConstructorMarker;
  
  @Metadata(d1 = {"\u0000\u001a\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\b\n\u0002\b\u000e\b\u0000\u0018\u0000 \u00122\u00020\u00012\u00060\u0002j\u0002`\u0003:\u0001\u0012B\u0017\b\u0010\u0012\u0006\u0010\u0004\u001a\u00020\u0005\u0012\u0006\u0010\u0006\u001a\u00020\u0005¢\u0006\u0002\u0010\u0007B7\b\u0000\u0012\u0006\u0010\b\u001a\u00020\u0005\u0012\u0006\u0010\t\u001a\u00020\u0005\u0012\u0006\u0010\n\u001a\u00020\u0005\u0012\u0006\u0010\u000b\u001a\u00020\u0005\u0012\u0006\u0010\f\u001a\u00020\u0005\u0012\u0006\u0010\r\u001a\u00020\u0005¢\u0006\u0002\u0010\u000eJ\u0010\u0010\u000f\u001a\u00020\u00052\u0006\u0010\u0010\u001a\u00020\u0005H\u0016J\b\u0010\u0011\u001a\u00020\u0005H\u0016R\u000e\u0010\r\u001a\u00020\u0005X\u000e¢\u0006\u0002\n\u0000R\u000e\u0010\f\u001a\u00020\u0005X\u000e¢\u0006\u0002\n\u0000R\u000e\u0010\u000b\u001a\u00020\u0005X\u000e¢\u0006\u0002\n\u0000R\u000e\u0010\b\u001a\u00020\u0005X\u000e¢\u0006\u0002\n\u0000R\u000e\u0010\t\u001a\u00020\u0005X\u000e¢\u0006\u0002\n\u0000R\u000e\u0010\n\u001a\u00020\u0005X\u000e¢\u0006\u0002\n\u0000¨\u0006\u0013"}, d2 = {"Lkotlin/random/XorWowRandom;", "Lkotlin/random/Random;", "Ljava/io/Serializable;", "Lkotlin/io/Serializable;", "seed1", "", "seed2", "(II)V", "x", "y", "z", "w", "v", "addend", "(IIIIII)V", "nextBits", "bitCount", "nextInt", "Companion", "kotlin-stdlib"}, k = 1, mv = {1, 7, 1}, xi = 48)
  /* compiled from: XorWowRandom.kt */
  public final class XorWowRandom extends Random implements Serializable {
      private static final Companion Companion = new Companion((DefaultConstructorMarker) null);
      @Deprecated
      private static final long serialVersionUID = 0;
      private int addend;
      private int v;
      private int w;
      private int x;
      private int y;
      private int z;
  
      @Metadata(d1 = {"\u0000\u0012\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0010\t\n\u0000\b\u0003\u0018\u00002\u00020\u0001B\u0007\b\u0002¢\u0006\u0002\u0010\u0002R\u000e\u0010\u0003\u001a\u00020\u0004XT¢\u0006\u0002\n\u0000¨\u0006\u0005"}, d2 = {"Lkotlin/random/XorWowRandom$Companion;", "", "()V", "serialVersionUID", "", "kotlin-stdlib"}, k = 1, mv = {1, 7, 1}, xi = 48)
      /* compiled from: XorWowRandom.kt */
      private static final class Companion {
          private Companion() {
          }
  
          public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) {
              this();
          }
      }
  
      /* JADX WARNING: Illegal instructions before constructor call */
      /* Code decompiled incorrectly, please refer to instructions dump. */
      public XorWowRandom(int r8, int r9) {
          /*
              r7 = this;
              int r5 = ~r8
              int r0 = r8 << 10
              int r1 = r9 >>> 4
              r6 = r0 ^ r1
              r3 = 0
              r4 = 0
              r0 = r7
              r1 = r8
              r2 = r9
              r0.<init>(r1, r2, r3, r4, r5, r6)
              return
          */
          throw new UnsupportedOperationException("Method not decompiled: kotlin.random.XorWowRandom.<init>(int, int):void");
      }
  
      public XorWowRandom(int x2, int y2, int z2, int w2, int v2, int addend2) {
          this.x = x2;
          this.y = y2;
          this.z = z2;
          this.w = w2;
          this.v = v2;
          this.addend = addend2;
          if (((((x2 | y2) | z2) | w2) | v2) != 0) {
              for (int i = 0; i < 64; i++) {
                  int i2 = i;
                  nextInt();
              }
              return;
          }
          throw new IllegalArgumentException("Initial state must have at least one non-zero element.".toString());
      }
  
      public int nextBits(int bitCount) {
          return RandomKt.takeUpperBits(nextInt(), bitCount);
      }
  
      public int nextInt() {
          int i = this.x;
          int i2 = i ^ (i >>> 2);
          this.x = this.y;
          this.y = this.z;
          this.z = this.w;
          int i3 = this.v;
          this.w = i3;
          int i4 = (((i2 << 1) ^ i2) ^ i3) ^ (i3 << 4);
          this.v = i4;
          int i5 = this.addend + 362437;
          this.addend = i5;
          return i5 + i4;
      }
  }
  