<commit_before>package scala
import annotation.showAsInfix
import compiletime._
import internal._

sealed trait Tuple extends Any {
  import Tuple._

  inline def toArray: Array[Object] =
    inline constValueOpt[BoundedSize[this.type]] match {
      case Some(0) =>
        scala.runtime.DynamicTuple.empty$Array
      case Some(1) =>
        val t = asInstanceOf[Tuple1[Object]]
        Array(t._1)
      case Some(2) =>
        val t = asInstanceOf[Tuple2[Object, Object]]
        Array(t._1, t._2)
      case Some(3) =>
        val t = asInstanceOf[Tuple3[Object, Object, Object]]
        Array(t._1, t._2, t._3)
      case Some(4) =>
        val t = asInstanceOf[Tuple4[Object, Object, Object, Object]]
        Array(t._1, t._2, t._3, t._4)
      case Some(n) if n <= scala.runtime.DynamicTuple.MaxSpecialized =>
        to$Array(this, n)
      case Some(n) =>
        asInstanceOf[TupleXXL].elems
      case None =>
        runtime.DynamicTuple.dynamicToArray(this)
    }

  inline def *: [H, This >: this.type <: Tuple] (x: H): H *: This = {
    type Result = H *: This
    inline constValueOpt[BoundedSize[this.type]] match {
      case Some(0) =>
        Tuple1(x).asInstanceOf[Result]
      case Some(1) =>
        Tuple2(x, asInstanceOf[Tuple1[_]]._1).asInstanceOf[Result]
      case Some(2) =>
        val t = asInstanceOf[Tuple2[_, _]]
        Tuple3(x, t._1, t._2).asInstanceOf[Result]
      case Some(3) =>
        val t = asInstanceOf[Tuple3[_, _, _]]
        Tuple4(x, t._1, t._2, t._3).asInstanceOf[Result]
      case Some(4) =>
        val t = asInstanceOf[Tuple4[_, _, _, _]]
        Tuple5(x, t._1, t._2, t._3, t._4).asInstanceOf[Result]
      case Some(n) =>
        knownTupleFromArray[H *: this.type](cons$Array(x, toArray))
      case _ =>
        runtime.DynamicTuple.dynamic_*:[This, H](this, x)
    }
  }

  inline def ++ [This >: this.type <: Tuple](that: Tuple): Concat[This, that.type] = {
    type Result = Concat[This, that.type]
    inline constValueOpt[BoundedSize[this.type]] match {
      case Some(0) =>
        that.asInstanceOf[Result]
      case Some(1) =>
        if (constValue[BoundedSize[that.type]] == 0) this.asInstanceOf[Result]
        else (asInstanceOf[Tuple1[_]]._1 *: that).asInstanceOf[Result]
      case Some(2) =>
        val t = asInstanceOf[Tuple2[_, _]]
        inline constValue[BoundedSize[that.type]] match {
          case 0 => this.asInstanceOf[Result]
          case 1 =>
            val u = that.asInstanceOf[Tuple1[_]]
            Tuple3(t._1, t._2, u._1).asInstanceOf[Result]
          case 2 =>
            val u = that.asInstanceOf[Tuple2[_, _]]
            Tuple4(t._1, t._2, u._1, u._2).asInstanceOf[Result]
          case _ =>
            genericConcat[Result](this, that).asInstanceOf[Result]
        }
      case Some(3) =>
        val t = asInstanceOf[Tuple3[_, _, _]]
        inline constValue[BoundedSize[that.type]] match {
          case 0 => this.asInstanceOf[Result]
          case 1 =>
            val u = that.asInstanceOf[Tuple1[_]]
            Tuple4(t._1, t._2, t._3, u._1).asInstanceOf[Result]
          case _ =>
            genericConcat[Result](this, that).asInstanceOf[Result]
        }
      case Some(_) =>
        if (constValue[BoundedSize[that.type]] == 0) this.asInstanceOf[Result]
        else genericConcat[Result](this, that).asInstanceOf[Result]
      case None =>
        runtime.DynamicTuple.dynamic_++[This, that.type](this, that)
    }
  }

  inline def genericConcat[T <: Tuple](xs: Tuple, ys: Tuple): Tuple =
    knownTupleFromArray[T](xs.toArray ++ ys.toArray)

  inline def size[This >: this.type <: Tuple]: Size[This] = {
    type Result = Size[This]
    inline constValueOpt[BoundedSize[this.type]] match {
      case Some(n) => n.asInstanceOf[Result]<commit_msg>Remove internal `genericConcat` method<commit_after>package scala
import annotation.showAsInfix
import compiletime._
import internal._

sealed trait Tuple extends Any {
  import Tuple._

  inline def toArray: Array[Object] =
    inline constValueOpt[BoundedSize[this.type]] match {
      case Some(0) =>
        scala.runtime.DynamicTuple.empty$Array
      case Some(1) =>
        val t = asInstanceOf[Tuple1[Object]]
        Array(t._1)
      case Some(2) =>
        val t = asInstanceOf[Tuple2[Object, Object]]
        Array(t._1, t._2)
      case Some(3) =>
        val t = asInstanceOf[Tuple3[Object, Object, Object]]
        Array(t._1, t._2, t._3)
      case Some(4) =>
        val t = asInstanceOf[Tuple4[Object, Object, Object, Object]]
        Array(t._1, t._2, t._3, t._4)
      case Some(n) if n <= scala.runtime.DynamicTuple.MaxSpecialized =>
        to$Array(this, n)
      case Some(n) =>
        asInstanceOf[TupleXXL].elems
      case None =>
        runtime.DynamicTuple.dynamicToArray(this)
    }

  inline def *: [H, This >: this.type <: Tuple] (x: H): H *: This = {
    type Result = H *: This
    inline constValueOpt[BoundedSize[this.type]] match {
      case Some(0) =>
        Tuple1(x).asInstanceOf[Result]
      case Some(1) =>
        Tuple2(x, asInstanceOf[Tuple1[_]]._1).asInstanceOf[Result]
      case Some(2) =>
        val t = asInstanceOf[Tuple2[_, _]]
        Tuple3(x, t._1, t._2).asInstanceOf[Result]
      case Some(3) =>
        val t = asInstanceOf[Tuple3[_, _, _]]
        Tuple4(x, t._1, t._2, t._3).asInstanceOf[Result]
      case Some(4) =>
        val t = asInstanceOf[Tuple4[_, _, _, _]]
        Tuple5(x, t._1, t._2, t._3, t._4).asInstanceOf[Result]
      case Some(n) =>
        knownTupleFromArray[H *: this.type](cons$Array(x, toArray))
      case _ =>
        runtime.DynamicTuple.dynamic_*:[This, H](this, x)
    }
  }

  inline def ++ [This >: this.type <: Tuple](that: Tuple): Concat[This, that.type] = {
    type Result = Concat[This, that.type]
    inline constValueOpt[BoundedSize[this.type]] match {
      case Some(0) =>
        that.asInstanceOf[Result]
      case Some(1) =>
        if (constValue[BoundedSize[that.type]] == 0) this.asInstanceOf[Result]
        else (asInstanceOf[Tuple1[_]]._1 *: that).asInstanceOf[Result]
      case Some(2) =>
        val t = asInstanceOf[Tuple2[_, _]]
        inline constValue[BoundedSize[that.type]] match {
          case 0 => this.asInstanceOf[Result]
          case 1 =>
            val u = that.asInstanceOf[Tuple1[_]]
            Tuple3(t._1, t._2, u._1).asInstanceOf[Result]
          case 2 =>
            val u = that.asInstanceOf[Tuple2[_, _]]
            Tuple4(t._1, t._2, u._1, u._2).asInstanceOf[Result]
          case _ =>
            knownTupleFromArray[Result](this.toArray ++ that.toArray)
        }
      case Some(3) =>
        val t = asInstanceOf[Tuple3[_, _, _]]
        inline constValue[BoundedSize[that.type]] match {
          case 0 => this.asInstanceOf[Result]
          case 1 =>
            val u = that.asInstanceOf[Tuple1[_]]
            Tuple4(t._1, t._2, t._3, u._1).asInstanceOf[Result]
          case _ =>
            knownTupleFromArray[Result](this.toArray ++ that.toArray)
        }
      case Some(_) =>
        if (constValue[BoundedSize[that.type]] == 0) this.asInstanceOf[Result]
        else knownTupleFromArray[Result](this.toArray ++ that.toArray)
      case None =>
        runtime.DynamicTuple.dynamic_++[This, that.type](this, that)
    }
  }

  inline def size[This >: this.type <: Tuple]: Size[This] = {
    type Result = Size[This]
    inline constValueOpt[BoundedSize[this.type]] match {
      case Some(n) => n.asInstanceOf[Result]
{'fraction_non_alphanumeric': 0.14249329758713136, 'fraction_numerical': 0.020107238605898123, 'mean_word_length': 2.49953095684803, 'pattern_counts': {'":': 0, '<': 12, '<?xml version=': 0, '>': 67, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6014437', 'n_tokens_mistral': 2551, 'n_tokens_neox': 2509, 'n_words': 500}