package com.codelicia.advent2021

class Day08(private val signals: List<String>) {

    data class SegmentMap(
        val map: Map<String, Int>,
        val decodedNumber: Int
    ) {
        companion object {
            private fun String.order() =
                this.split("").sortedDescending().joinToString(separator = "")

            fun of(input: String): SegmentMap {
                val (segment, numbers) = input.split(" | ")

                val segmentSplit = segment.split(" ")

                // Hacky ones
                val sixDigits = segmentSplit.filter { it.length == 6 }
                val fiveDigits = segmentSplit.filter { it.length == 5 }

                // Easy discoverable
                val one = segmentSplit.first { it.length == 2 }
                val four = segmentSplit.first { it.length == 4 }
                val seven = segmentSplit.first { it.length == 3 }
                val eight = segmentSplit.first { it.length == 7 }

                // Tricky
                val nine = sixDigits.first { it.split("").containsAll(four.split("")) }
                val zero = sixDigits.filter { !it.split("").containsAll(nine.split("")) }
                    .first { it.split("").containsAll(one.split("")) }
                val six = sixDigits.filter { !it.split("").containsAll(nine.split("")) }
                    .first { !it.split("").containsAll(one.split("")) }

                val three = fiveDigits.first { it.split("").containsAll(one.split("")) }
                val five = fiveDigits.first { six.split("").containsAll(it.split("")) }
                val two = fiveDigits.filter { !it.split("").containsAll(three.split("")) }
                    .first { !it.split("").containsAll(five.split("")) }

                val map = mutableMapOf<String, Int>()
                map[zero.order()] = 0
                map[one.order()] = 1
                map[two.order()] = 2
                map[three.order()] = 3
                map[four.order()] = 4
                map[five.order()] = 5
                map[six.order()] = 6
                map[seven.order()] = 7
                map[eight.order()] = 8
                map[nine.order()] = 9

                val number = numbers.split(" ").map {
                    map[it.order()]!!
                }

                return SegmentMap(map, number.joinToString(separator = "").toInt())
            }
        }
    }

    private val easyDigits = listOf(2, 3, 4, 7)

    fun part1(): Int =
        signals.map { it.split(" | ")[1].split(" ") }
            .map { segments ->
                segments.map {
                    when {
                        easyDigits.contains(it.length) -> 1
                        else -> 0
                    }
                }
            }.sumOf { it.sum() }

    fun part2(): Int =
        signals.map { SegmentMap.of(input = it) }
        .sumOf { it.decodedNumber }
}

Compiled from "Day08.kt"
public final class com.codelicia.advent2021.Day08 {
  private final java.util.List<java.lang.String> signals;

  private final java.util.List<java.lang.Integer> easyDigits;

  public com.codelicia.advent2021.Day08(java.util.List<java.lang.String>);
    Code:
       0: aload_1
       1: ldc           #10                 // String signals
       3: invokestatic  #16                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullParameter:(Ljava/lang/Object;Ljava/lang/String;)V
       6: aload_0
       7: invokespecial #19                 // Method java/lang/Object."<init>":()V
      10: aload_0
      11: aload_1
      12: putfield      #22                 // Field signals:Ljava/util/List;
      15: aload_0
      16: iconst_4
      17: anewarray     #24                 // class java/lang/Integer
      20: astore_2
      21: aload_2
      22: iconst_0
      23: iconst_2
      24: invokestatic  #28                 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
      27: aastore
      28: aload_2
      29: iconst_1
      30: iconst_3
      31: invokestatic  #28                 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
      34: aastore
      35: aload_2
      36: iconst_2
      37: iconst_4
      38: invokestatic  #28                 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
      41: aastore
      42: aload_2
      43: iconst_3
      44: bipush        7
      46: invokestatic  #28                 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
      49: aastore
      50: aload_2
      51: invokestatic  #34                 // Method kotlin/collections/CollectionsKt.listOf:([Ljava/lang/Object;)Ljava/util/List;
      54: putfield      #37                 // Field easyDigits:Ljava/util/List;
      57: return

  public final int part1();
    Code:
       0: aload_0
       1: getfield      #22                 // Field signals:Ljava/util/List;
       4: checkcast     #43                 // class java/lang/Iterable
       7: astore_1
       8: iconst_0
       9: istore_2
      10: aload_1
      11: astore_3
      12: new           #45                 // class java/util/ArrayList
      15: dup
      16: aload_1
      17: bipush        10
      19: invokestatic  #49                 // Method kotlin/collections/CollectionsKt.collectionSizeOrDefault:(Ljava/lang/Iterable;I)I
      22: invokespecial #52                 // Method java/util/ArrayList."<init>":(I)V
      25: checkcast     #54                 // class java/util/Collection
      28: astore        4
      30: iconst_0
      31: istore        5
      33: aload_3
      34: invokeinterface #58,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
      39: astore        6
      41: aload         6
      43: invokeinterface #64,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
      48: ifeq          144
      51: aload         6
      53: invokeinterface #68,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
      58: astore        7
      60: aload         4
      62: aload         7
      64: checkcast     #70                 // class java/lang/String
      67: astore        8
      69: astore        20
      71: iconst_0
      72: istore        9
      74: aload         8
      76: checkcast     #72                 // class java/lang/CharSequence
      79: iconst_1
      80: anewarray     #70                 // class java/lang/String
      83: astore        10
      85: aload         10
      87: iconst_0
      88: ldc           #74                 // String  |
      90: aastore
      91: aload         10
      93: iconst_0
      94: iconst_0
      95: bipush        6
      97: aconst_null
      98: invokestatic  #80                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
     101: iconst_1
     102: invokeinterface #86,  2           // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
     107: checkcast     #72                 // class java/lang/CharSequence
     110: iconst_1
     111: anewarray     #70                 // class java/lang/String
     114: astore        10
     116: aload         10
     118: iconst_0
     119: ldc           #88                 // String
     121: aastore
     122: aload         10
     124: iconst_0
     125: iconst_0
     126: bipush        6
     128: aconst_null
     129: invokestatic  #80                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
     132: aload         20
     134: swap
     135: invokeinterface #92,  2           // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
     140: pop
     141: goto          41
     144: aload         4
     146: checkcast     #82                 // class java/util/List
     149: nop
     150: checkcast     #43                 // class java/lang/Iterable
     153: astore_1
     154: nop
     155: iconst_0
     156: istore_2
     157: aload_1
     158: astore_3
     159: new           #45                 // class java/util/ArrayList
     162: dup
     163: aload_1
     164: bipush        10
     166: invokestatic  #49                 // Method kotlin/collections/CollectionsKt.collectionSizeOrDefault:(Ljava/lang/Iterable;I)I
     169: invokespecial #52                 // Method java/util/ArrayList."<init>":(I)V
     172: checkcast     #54                 // class java/util/Collection
     175: astore        4
     177: iconst_0
     178: istore        5
     180: aload_3
     181: invokeinterface #58,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     186: astore        6
     188: aload         6
     190: invokeinterface #64,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
     195: ifeq          360
     198: aload         6
     200: invokeinterface #68,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     205: astore        7
     207: aload         4
     209: aload         7
     211: checkcast     #82                 // class java/util/List
     214: astore        8
     216: astore        20
     218: iconst_0
     219: istore        9
     221: aload         8
     223: checkcast     #43                 // class java/lang/Iterable
     226: astore        10
     228: iconst_0
     229: istore        11
     231: aload         10
     233: astore        12
     235: new           #45                 // class java/util/ArrayList
     238: dup
     239: aload         10
     241: bipush        10
     243: invokestatic  #49                 // Method kotlin/collections/CollectionsKt.collectionSizeOrDefault:(Ljava/lang/Iterable;I)I
     246: invokespecial #52                 // Method java/util/ArrayList."<init>":(I)V
     249: checkcast     #54                 // class java/util/Collection
     252: astore        13
     254: iconst_0
     255: istore        14
     257: aload         12
     259: invokeinterface #58,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     264: astore        15
     266: aload         15
     268: invokeinterface #64,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
     273: ifeq          341
     276: aload         15
     278: invokeinterface #68,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     283: astore        16
     285: aload         13
     287: aload         16
     289: checkcast     #70                 // class java/lang/String
     292: astore        17
     294: astore        18
     296: iconst_0
     297: istore        19
     299: nop
     300: aload_0
     301: getfield      #37                 // Field easyDigits:Ljava/util/List;
     304: aload         17
     306: invokevirtual #95                 // Method java/lang/String.length:()I
     309: invokestatic  #28                 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
     312: invokeinterface #98,  2           // InterfaceMethod java/util/List.contains:(Ljava/lang/Object;)Z
     317: ifeq          324
     320: iconst_1
     321: goto          325
     324: iconst_0
     325: nop
     326: invokestatic  #28                 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
     329: aload         18
     331: swap
     332: invokeinterface #92,  2           // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
     337: pop
     338: goto          266
     341: aload         13
     343: checkcast     #82                 // class java/util/List
     346: nop
     347: nop
     348: aload         20
     350: swap
     351: invokeinterface #92,  2           // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
     356: pop
     357: goto          188
     360: aload         4
     362: checkcast     #82                 // class java/util/List
     365: nop
     366: checkcast     #43                 // class java/lang/Iterable
     369: astore_1
     370: iconst_0
     371: istore_2
     372: aload_1
     373: invokeinterface #58,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     378: astore_3
     379: aload_3
     380: invokeinterface #64,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
     385: ifeq          428
     388: aload_3
     389: invokeinterface #68,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     394: astore        4
     396: iload_2
     397: aload         4
     399: checkcast     #82                 // class java/util/List
     402: astore        5
     404: istore        20
     406: iconst_0
     407: istore        6
     409: aload         5
     411: checkcast     #43                 // class java/lang/Iterable
     414: invokestatic  #102                // Method kotlin/collections/CollectionsKt.sumOfInt:(Ljava/lang/Iterable;)I
     417: istore        21
     419: iload         20
     421: iload         21
     423: iadd
     424: istore_2
     425: goto          379
     428: iload_2
     429: ireturn

  public final int part2();
    Code:
       0: aload_0
       1: getfield      #22                 // Field signals:Ljava/util/List;
       4: checkcast     #43                 // class java/lang/Iterable
       7: astore_1
       8: iconst_0
       9: istore_2
      10: aload_1
      11: astore_3
      12: new           #45                 // class java/util/ArrayList
      15: dup
      16: aload_1
      17: bipush        10
      19: invokestatic  #49                 // Method kotlin/collections/CollectionsKt.collectionSizeOrDefault:(Ljava/lang/Iterable;I)I
      22: invokespecial #52                 // Method java/util/ArrayList."<init>":(I)V
      25: checkcast     #54                 // class java/util/Collection
      28: astore        4
      30: iconst_0
      31: istore        5
      33: aload_3
      34: invokeinterface #58,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
      39: astore        6
      41: aload         6
      43: invokeinterface #64,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
      48: ifeq          94
      51: aload         6
      53: invokeinterface #68,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
      58: astore        7
      60: aload         4
      62: aload         7
      64: checkcast     #70                 // class java/lang/String
      67: astore        8
      69: astore        10
      71: iconst_0
      72: istore        9
      74: getstatic     #126                // Field com/codelicia/advent2021/Day08$SegmentMap.Companion:Lcom/codelicia/advent2021/Day08$SegmentMap$Companion;
      77: aload         8
      79: invokevirtual #132                // Method com/codelicia/advent2021/Day08$SegmentMap$Companion.of:(Ljava/lang/String;)Lcom/codelicia/advent2021/Day08$SegmentMap;
      82: aload         10
      84: swap
      85: invokeinterface #92,  2           // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
      90: pop
      91: goto          41
      94: aload         4
      96: checkcast     #82                 // class java/util/List
      99: nop
     100: checkcast     #43                 // class java/lang/Iterable
     103: astore_1
     104: iconst_0
     105: istore_2
     106: aload_1
     107: invokeinterface #58,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     112: astore_3
     113: aload_3
     114: invokeinterface #64,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
     119: ifeq          159
     122: aload_3
     123: invokeinterface #68,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     128: astore        4
     130: iload_2
     131: aload         4
     133: checkcast     #122                // class com/codelicia/advent2021/Day08$SegmentMap
     136: astore        5
     138: istore        10
     140: iconst_0
     141: istore        6
     143: aload         5
     145: invokevirtual #135                // Method com/codelicia/advent2021/Day08$SegmentMap.getDecodedNumber:()I
     148: istore        11
     150: iload         10
     152: iload         11
     154: iadd
     155: istore_2
     156: goto          113
     159: iload_2
     160: ireturn
}

Compiled from "Day08.kt"
public final class com.codelicia.advent2021.Day08$SegmentMap$Companion {
  private com.codelicia.advent2021.Day08$SegmentMap$Companion();
    Code:
       0: aload_0
       1: invokespecial #8                  // Method java/lang/Object."<init>":()V
       4: return

  private final java.lang.String order(java.lang.String);
    Code:
       0: aload_1
       1: checkcast     #14                 // class java/lang/CharSequence
       4: iconst_1
       5: anewarray     #16                 // class java/lang/String
       8: astore_2
       9: aload_2
      10: iconst_0
      11: ldc           #18                 // String
      13: aastore
      14: aload_2
      15: iconst_0
      16: iconst_0
      17: bipush        6
      19: aconst_null
      20: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
      23: checkcast     #26                 // class java/lang/Iterable
      26: invokestatic  #32                 // Method kotlin/collections/CollectionsKt.sortedDescending:(Ljava/lang/Iterable;)Ljava/util/List;
      29: checkcast     #26                 // class java/lang/Iterable
      32: ldc           #18                 // String
      34: checkcast     #14                 // class java/lang/CharSequence
      37: aconst_null
      38: aconst_null
      39: iconst_0
      40: aconst_null
      41: aconst_null
      42: bipush        62
      44: aconst_null
      45: invokestatic  #36                 // Method kotlin/collections/CollectionsKt.joinToString$default:(Ljava/lang/Iterable;Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;ILjava/lang/CharSequence;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Ljava/lang/String;
      48: areturn

  public final com.codelicia.advent2021.Day08$SegmentMap of(java.lang.String);
    Code:
       0: aload_1
       1: ldc           #43                 // String input
       3: invokestatic  #49                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullParameter:(Ljava/lang/Object;Ljava/lang/String;)V
       6: aload_1
       7: checkcast     #14                 // class java/lang/CharSequence
      10: iconst_1
      11: anewarray     #16                 // class java/lang/String
      14: astore_3
      15: aload_3
      16: iconst_0
      17: ldc           #51                 // String  |
      19: aastore
      20: aload_3
      21: iconst_0
      22: iconst_0
      23: bipush        6
      25: aconst_null
      26: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
      29: astore_2
      30: aload_2
      31: iconst_0
      32: invokeinterface #57,  2           // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
      37: checkcast     #16                 // class java/lang/String
      40: astore_3
      41: aload_2
      42: iconst_1
      43: invokeinterface #57,  2           // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
      48: checkcast     #16                 // class java/lang/String
      51: astore        4
      53: aload_3
      54: checkcast     #14                 // class java/lang/CharSequence
      57: iconst_1
      58: anewarray     #16                 // class java/lang/String
      61: astore        6
      63: aload         6
      65: iconst_0
      66: ldc           #59                 // String
      68: aastore
      69: aload         6
      71: iconst_0
      72: iconst_0
      73: bipush        6
      75: aconst_null
      76: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
      79: astore        5
      81: aload         5
      83: checkcast     #26                 // class java/lang/Iterable
      86: astore        7
      88: iconst_0
      89: istore        8
      91: aload         7
      93: astore        9
      95: new           #61                 // class java/util/ArrayList
      98: dup
      99: invokespecial #62                 // Method java/util/ArrayList."<init>":()V
     102: checkcast     #64                 // class java/util/Collection
     105: astore        10
     107: iconst_0
     108: istore        11
     110: aload         9
     112: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     117: astore        12
     119: aload         12
     121: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
     126: ifeq          179
     129: aload         12
     131: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     136: astore        13
     138: aload         13
     140: checkcast     #16                 // class java/lang/String
     143: astore        14
     145: iconst_0
     146: istore        15
     148: aload         14
     150: invokevirtual #82                 // Method java/lang/String.length:()I
     153: bipush        6
     155: if_icmpne     162
     158: iconst_1
     159: goto          163
     162: iconst_0
     163: ifeq          119
     166: aload         10
     168: aload         13
     170: invokeinterface #86,  2           // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
     175: pop
     176: goto          119
     179: aload         10
     181: checkcast     #53                 // class java/util/List
     184: nop
     185: astore        6
     187: aload         5
     189: checkcast     #26                 // class java/lang/Iterable
     192: astore        8
     194: iconst_0
     195: istore        9
     197: aload         8
     199: astore        10
     201: new           #61                 // class java/util/ArrayList
     204: dup
     205: invokespecial #62                 // Method java/util/ArrayList."<init>":()V
     208: checkcast     #64                 // class java/util/Collection
     211: astore        11
     213: iconst_0
     214: istore        12
     216: aload         10
     218: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     223: astore        13
     225: aload         13
     227: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
     232: ifeq          284
     235: aload         13
     237: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     242: astore        14
     244: aload         14
     246: checkcast     #16                 // class java/lang/String
     249: astore        15
     251: iconst_0
     252: istore        16
     254: aload         15
     256: invokevirtual #82                 // Method java/lang/String.length:()I
     259: iconst_5
     260: if_icmpne     267
     263: iconst_1
     264: goto          268
     267: iconst_0
     268: ifeq          225
     271: aload         11
     273: aload         14
     275: invokeinterface #86,  2           // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
     280: pop
     281: goto          225
     284: aload         11
     286: checkcast     #53                 // class java/util/List
     289: nop
     290: astore        7
     292: aload         5
     294: checkcast     #26                 // class java/lang/Iterable
     297: astore        9
     299: iconst_0
     300: istore        10
     302: aload         9
     304: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     309: astore        11
     311: aload         11
     313: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
     318: ifeq          362
     321: aload         11
     323: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     328: astore        12
     330: aload         12
     332: checkcast     #16                 // class java/lang/String
     335: astore        13
     337: iconst_0
     338: istore        14
     340: aload         13
     342: invokevirtual #82                 // Method java/lang/String.length:()I
     345: iconst_2
     346: if_icmpne     353
     349: iconst_1
     350: goto          354
     353: iconst_0
     354: ifeq          311
     357: aload         12
     359: goto          372
     362: new           #88                 // class java/util/NoSuchElementException
     365: dup
     366: ldc           #90                 // String Collection contains no element matching the predicate.
     368: invokespecial #93                 // Method java/util/NoSuchElementException."<init>":(Ljava/lang/String;)V
     371: athrow
     372: checkcast     #16                 // class java/lang/String
     375: astore        8
     377: aload         5
     379: checkcast     #26                 // class java/lang/Iterable
     382: astore        10
     384: iconst_0
     385: istore        11
     387: aload         10
     389: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     394: astore        12
     396: aload         12
     398: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
     403: ifeq          447
     406: aload         12
     408: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     413: astore        13
     415: aload         13
     417: checkcast     #16                 // class java/lang/String
     420: astore        14
     422: iconst_0
     423: istore        15
     425: aload         14
     427: invokevirtual #82                 // Method java/lang/String.length:()I
     430: iconst_4
     431: if_icmpne     438
     434: iconst_1
     435: goto          439
     438: iconst_0
     439: ifeq          396
     442: aload         13
     444: goto          457
     447: new           #88                 // class java/util/NoSuchElementException
     450: dup
     451: ldc           #90                 // String Collection contains no element matching the predicate.
     453: invokespecial #93                 // Method java/util/NoSuchElementException."<init>":(Ljava/lang/String;)V
     456: athrow
     457: checkcast     #16                 // class java/lang/String
     460: astore        9
     462: aload         5
     464: checkcast     #26                 // class java/lang/Iterable
     467: astore        11
     469: iconst_0
     470: istore        12
     472: aload         11
     474: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     479: astore        13
     481: aload         13
     483: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
     488: ifeq          532
     491: aload         13
     493: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     498: astore        14
     500: aload         14
     502: checkcast     #16                 // class java/lang/String
     505: astore        15
     507: iconst_0
     508: istore        16
     510: aload         15
     512: invokevirtual #82                 // Method java/lang/String.length:()I
     515: iconst_3
     516: if_icmpne     523
     519: iconst_1
     520: goto          524
     523: iconst_0
     524: ifeq          481
     527: aload         14
     529: goto          542
     532: new           #88                 // class java/util/NoSuchElementException
     535: dup
     536: ldc           #90                 // String Collection contains no element matching the predicate.
     538: invokespecial #93                 // Method java/util/NoSuchElementException."<init>":(Ljava/lang/String;)V
     541: athrow
     542: checkcast     #16                 // class java/lang/String
     545: astore        10
     547: aload         5
     549: checkcast     #26                 // class java/lang/Iterable
     552: astore        12
     554: iconst_0
     555: istore        13
     557: aload         12
     559: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     564: astore        14
     566: aload         14
     568: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
     573: ifeq          618
     576: aload         14
     578: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     583: astore        15
     585: aload         15
     587: checkcast     #16                 // class java/lang/String
     590: astore        16
     592: iconst_0
     593: istore        17
     595: aload         16
     597: invokevirtual #82                 // Method java/lang/String.length:()I
     600: bipush        7
     602: if_icmpne     609
     605: iconst_1
     606: goto          610
     609: iconst_0
     610: ifeq          566
     613: aload         15
     615: goto          628
     618: new           #88                 // class java/util/NoSuchElementException
     621: dup
     622: ldc           #90                 // String Collection contains no element matching the predicate.
     624: invokespecial #93                 // Method java/util/NoSuchElementException."<init>":(Ljava/lang/String;)V
     627: athrow
     628: checkcast     #16                 // class java/lang/String
     631: astore        11
     633: aload         6
     635: checkcast     #26                 // class java/lang/Iterable
     638: astore        13
     640: iconst_0
     641: istore        14
     643: aload         13
     645: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     650: astore        15
     652: aload         15
     654: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
     659: ifeq          751
     662: aload         15
     664: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     669: astore        16
     671: aload         16
     673: checkcast     #16                 // class java/lang/String
     676: astore        17
     678: iconst_0
     679: istore        18
     681: aload         17
     683: checkcast     #14                 // class java/lang/CharSequence
     686: iconst_1
     687: anewarray     #16                 // class java/lang/String
     690: astore        19
     692: aload         19
     694: iconst_0
     695: ldc           #18                 // String
     697: aastore
     698: aload         19
     700: iconst_0
     701: iconst_0
     702: bipush        6
     704: aconst_null
     705: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
     708: aload         9
     710: checkcast     #14                 // class java/lang/CharSequence
     713: iconst_1
     714: anewarray     #16                 // class java/lang/String
     717: astore        19
     719: aload         19
     721: iconst_0
     722: ldc           #18                 // String
     724: aastore
     725: aload         19
     727: iconst_0
     728: iconst_0
     729: bipush        6
     731: aconst_null
     732: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
     735: checkcast     #64                 // class java/util/Collection
     738: invokeinterface #97,  2           // InterfaceMethod java/util/List.containsAll:(Ljava/util/Collection;)Z
     743: ifeq          652
     746: aload         16
     748: goto          761
     751: new           #88                 // class java/util/NoSuchElementException
     754: dup
     755: ldc           #90                 // String Collection contains no element matching the predicate.
     757: invokespecial #93                 // Method java/util/NoSuchElementException."<init>":(Ljava/lang/String;)V
     760: athrow
     761: checkcast     #16                 // class java/lang/String
     764: astore        12
     766: aload         6
     768: checkcast     #26                 // class java/lang/Iterable
     771: astore        14
     773: iconst_0
     774: istore        15
     776: aload         14
     778: astore        16
     780: new           #61                 // class java/util/ArrayList
     783: dup
     784: invokespecial #62                 // Method java/util/ArrayList."<init>":()V
     787: checkcast     #64                 // class java/util/Collection
     790: astore        17
     792: iconst_0
     793: istore        18
     795: aload         16
     797: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     802: astore        19
     804: aload         19
     806: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
     811: ifeq          919
     814: aload         19
     816: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     821: astore        20
     823: aload         20
     825: checkcast     #16                 // class java/lang/String
     828: astore        21
     830: iconst_0
     831: istore        22
     833: aload         21
     835: checkcast     #14                 // class java/lang/CharSequence
     838: iconst_1
     839: anewarray     #16                 // class java/lang/String
     842: astore        23
     844: aload         23
     846: iconst_0
     847: ldc           #18                 // String
     849: aastore
     850: aload         23
     852: iconst_0
     853: iconst_0
     854: bipush        6
     856: aconst_null
     857: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
     860: aload         12
     862: checkcast     #14                 // class java/lang/CharSequence
     865: iconst_1
     866: anewarray     #16                 // class java/lang/String
     869: astore        23
     871: aload         23
     873: iconst_0
     874: ldc           #18                 // String
     876: aastore
     877: aload         23
     879: iconst_0
     880: iconst_0
     881: bipush        6
     883: aconst_null
     884: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
     887: checkcast     #64                 // class java/util/Collection
     890: invokeinterface #97,  2           // InterfaceMethod java/util/List.containsAll:(Ljava/util/Collection;)Z
     895: ifne          902
     898: iconst_1
     899: goto          903
     902: iconst_0
     903: ifeq          804
     906: aload         17
     908: aload         20
     910: invokeinterface #86,  2           // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
     915: pop
     916: goto          804
     919: aload         17
     921: checkcast     #53                 // class java/util/List
     924: nop
     925: checkcast     #26                 // class java/lang/Iterable
     928: astore        14
     930: nop
     931: iconst_0
     932: istore        15
     934: aload         14
     936: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     941: astore        16
     943: aload         16
     945: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
     950: ifeq          1042
     953: aload         16
     955: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     960: astore        17
     962: aload         17
     964: checkcast     #16                 // class java/lang/String
     967: astore        18
     969: iconst_0
     970: istore        19
     972: aload         18
     974: checkcast     #14                 // class java/lang/CharSequence
     977: iconst_1
     978: anewarray     #16                 // class java/lang/String
     981: astore        20
     983: aload         20
     985: iconst_0
     986: ldc           #18                 // String
     988: aastore
     989: aload         20
     991: iconst_0
     992: iconst_0
     993: bipush        6
     995: aconst_null
     996: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
     999: aload         8
    1001: checkcast     #14                 // class java/lang/CharSequence
    1004: iconst_1
    1005: anewarray     #16                 // class java/lang/String
    1008: astore        20
    1010: aload         20
    1012: iconst_0
    1013: ldc           #18                 // String
    1015: aastore
    1016: aload         20
    1018: iconst_0
    1019: iconst_0
    1020: bipush        6
    1022: aconst_null
    1023: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
    1026: checkcast     #64                 // class java/util/Collection
    1029: invokeinterface #97,  2           // InterfaceMethod java/util/List.containsAll:(Ljava/util/Collection;)Z
    1034: ifeq          943
    1037: aload         17
    1039: goto          1052
    1042: new           #88                 // class java/util/NoSuchElementException
    1045: dup
    1046: ldc           #90                 // String Collection contains no element matching the predicate.
    1048: invokespecial #93                 // Method java/util/NoSuchElementException."<init>":(Ljava/lang/String;)V
    1051: athrow
    1052: checkcast     #16                 // class java/lang/String
    1055: astore        13
    1057: aload         6
    1059: checkcast     #26                 // class java/lang/Iterable
    1062: astore        15
    1064: iconst_0
    1065: istore        16
    1067: aload         15
    1069: astore        17
    1071: new           #61                 // class java/util/ArrayList
    1074: dup
    1075: invokespecial #62                 // Method java/util/ArrayList."<init>":()V
    1078: checkcast     #64                 // class java/util/Collection
    1081: astore        18
    1083: iconst_0
    1084: istore        19
    1086: aload         17
    1088: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
    1093: astore        20
    1095: aload         20
    1097: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
    1102: ifeq          1210
    1105: aload         20
    1107: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
    1112: astore        21
    1114: aload         21
    1116: checkcast     #16                 // class java/lang/String
    1119: astore        22
    1121: iconst_0
    1122: istore        23
    1124: aload         22
    1126: checkcast     #14                 // class java/lang/CharSequence
    1129: iconst_1
    1130: anewarray     #16                 // class java/lang/String
    1133: astore        24
    1135: aload         24
    1137: iconst_0
    1138: ldc           #18                 // String
    1140: aastore
    1141: aload         24
    1143: iconst_0
    1144: iconst_0
    1145: bipush        6
    1147: aconst_null
    1148: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
    1151: aload         12
    1153: checkcast     #14                 // class java/lang/CharSequence
    1156: iconst_1
    1157: anewarray     #16                 // class java/lang/String
    1160: astore        24
    1162: aload         24
    1164: iconst_0
    1165: ldc           #18                 // String
    1167: aastore
    1168: aload         24
    1170: iconst_0
    1171: iconst_0
    1172: bipush        6
    1174: aconst_null
    1175: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
    1178: checkcast     #64                 // class java/util/Collection
    1181: invokeinterface #97,  2           // InterfaceMethod java/util/List.containsAll:(Ljava/util/Collection;)Z
    1186: ifne          1193
    1189: iconst_1
    1190: goto          1194
    1193: iconst_0
    1194: ifeq          1095
    1197: aload         18
    1199: aload         21
    1201: invokeinterface #86,  2           // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
    1206: pop
    1207: goto          1095
    1210: aload         18
    1212: checkcast     #53                 // class java/util/List
    1215: nop
    1216: checkcast     #26                 // class java/lang/Iterable
    1219: astore        15
    1221: nop
    1222: iconst_0
    1223: istore        16
    1225: aload         15
    1227: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
    1232: astore        17
    1234: aload         17
    1236: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
    1241: ifeq          1341
    1244: aload         17
    1246: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
    1251: astore        18
    1253: aload         18
    1255: checkcast     #16                 // class java/lang/String
    1258: astore        19
    1260: iconst_0
    1261: istore        20
    1263: aload         19
    1265: checkcast     #14                 // class java/lang/CharSequence
    1268: iconst_1
    1269: anewarray     #16                 // class java/lang/String
    1272: astore        21
    1274: aload         21
    1276: iconst_0
    1277: ldc           #18                 // String
    1279: aastore
    1280: aload         21
    1282: iconst_0
    1283: iconst_0
    1284: bipush        6
    1286: aconst_null
    1287: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
    1290: aload         8
    1292: checkcast     #14                 // class java/lang/CharSequence
    1295: iconst_1
    1296: anewarray     #16                 // class java/lang/String
    1299: astore        21
    1301: aload         21
    1303: iconst_0
    1304: ldc           #18                 // String
    1306: aastore
    1307: aload         21
    1309: iconst_0
    1310: iconst_0
    1311: bipush        6
    1313: aconst_null
    1314: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
    1317: checkcast     #64                 // class java/util/Collection
    1320: invokeinterface #97,  2           // InterfaceMethod java/util/List.containsAll:(Ljava/util/Collection;)Z
    1325: ifne          1332
    1328: iconst_1
    1329: goto          1333
    1332: iconst_0
    1333: ifeq          1234
    1336: aload         18
    1338: goto          1351
    1341: new           #88                 // class java/util/NoSuchElementException
    1344: dup
    1345: ldc           #90                 // String Collection contains no element matching the predicate.
    1347: invokespecial #93                 // Method java/util/NoSuchElementException."<init>":(Ljava/lang/String;)V
    1350: athrow
    1351: checkcast     #16                 // class java/lang/String
    1354: astore        14
    1356: aload         7
    1358: checkcast     #26                 // class java/lang/Iterable
    1361: astore        16
    1363: iconst_0
    1364: istore        17
    1366: aload         16
    1368: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
    1373: astore        18
    1375: aload         18
    1377: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
    1382: ifeq          1474
    1385: aload         18
    1387: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
    1392: astore        19
    1394: aload         19
    1396: checkcast     #16                 // class java/lang/String
    1399: astore        20
    1401: iconst_0
    1402: istore        21
    1404: aload         20
    1406: checkcast     #14                 // class java/lang/CharSequence
    1409: iconst_1
    1410: anewarray     #16                 // class java/lang/String
    1413: astore        22
    1415: aload         22
    1417: iconst_0
    1418: ldc           #18                 // String
    1420: aastore
    1421: aload         22
    1423: iconst_0
    1424: iconst_0
    1425: bipush        6
    1427: aconst_null
    1428: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
    1431: aload         8
    1433: checkcast     #14                 // class java/lang/CharSequence
    1436: iconst_1
    1437: anewarray     #16                 // class java/lang/String
    1440: astore        22
    1442: aload         22
    1444: iconst_0
    1445: ldc           #18                 // String
    1447: aastore
    1448: aload         22
    1450: iconst_0
    1451: iconst_0
    1452: bipush        6
    1454: aconst_null
    1455: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
    1458: checkcast     #64                 // class java/util/Collection
    1461: invokeinterface #97,  2           // InterfaceMethod java/util/List.containsAll:(Ljava/util/Collection;)Z
    1466: ifeq          1375
    1469: aload         19
    1471: goto          1484
    1474: new           #88                 // class java/util/NoSuchElementException
    1477: dup
    1478: ldc           #90                 // String Collection contains no element matching the predicate.
    1480: invokespecial #93                 // Method java/util/NoSuchElementException."<init>":(Ljava/lang/String;)V
    1483: athrow
    1484: checkcast     #16                 // class java/lang/String
    1487: astore        15
    1489: aload         7
    1491: checkcast     #26                 // class java/lang/Iterable
    1494: astore        17
    1496: iconst_0
    1497: istore        18
    1499: aload         17
    1501: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
    1506: astore        19
    1508: aload         19
    1510: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
    1515: ifeq          1607
    1518: aload         19
    1520: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
    1525: astore        20
    1527: aload         20
    1529: checkcast     #16                 // class java/lang/String
    1532: astore        21
    1534: iconst_0
    1535: istore        22
    1537: aload         14
    1539: checkcast     #14                 // class java/lang/CharSequence
    1542: iconst_1
    1543: anewarray     #16                 // class java/lang/String
    1546: astore        23
    1548: aload         23
    1550: iconst_0
    1551: ldc           #18                 // String
    1553: aastore
    1554: aload         23
    1556: iconst_0
    1557: iconst_0
    1558: bipush        6
    1560: aconst_null
    1561: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
    1564: aload         21
    1566: checkcast     #14                 // class java/lang/CharSequence
    1569: iconst_1
    1570: anewarray     #16                 // class java/lang/String
    1573: astore        23
    1575: aload         23
    1577: iconst_0
    1578: ldc           #18                 // String
    1580: aastore
    1581: aload         23
    1583: iconst_0
    1584: iconst_0
    1585: bipush        6
    1587: aconst_null
    1588: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
    1591: checkcast     #64                 // class java/util/Collection
    1594: invokeinterface #97,  2           // InterfaceMethod java/util/List.containsAll:(Ljava/util/Collection;)Z
    1599: ifeq          1508
    1602: aload         20
    1604: goto          1617
    1607: new           #88                 // class java/util/NoSuchElementException
    1610: dup
    1611: ldc           #90                 // String Collection contains no element matching the predicate.
    1613: invokespecial #93                 // Method java/util/NoSuchElementException."<init>":(Ljava/lang/String;)V
    1616: athrow
    1617: checkcast     #16                 // class java/lang/String
    1620: astore        16
    1622: aload         7
    1624: checkcast     #26                 // class java/lang/Iterable
    1627: astore        18
    1629: iconst_0
    1630: istore        19
    1632: aload         18
    1634: astore        20
    1636: new           #61                 // class java/util/ArrayList
    1639: dup
    1640: invokespecial #62                 // Method java/util/ArrayList."<init>":()V
    1643: checkcast     #64                 // class java/util/Collection
    1646: astore        21
    1648: iconst_0
    1649: istore        22
    1651: aload         20
    1653: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
    1658: astore        23
    1660: aload         23
    1662: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
    1667: ifeq          1775
    1670: aload         23
    1672: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
    1677: astore        24
    1679: aload         24
    1681: checkcast     #16                 // class java/lang/String
    1684: astore        25
    1686: iconst_0
    1687: istore        26
    1689: aload         25
    1691: checkcast     #14                 // class java/lang/CharSequence
    1694: iconst_1
    1695: anewarray     #16                 // class java/lang/String
    1698: astore        27
    1700: aload         27
    1702: iconst_0
    1703: ldc           #18                 // String
    1705: aastore
    1706: aload         27
    1708: iconst_0
    1709: iconst_0
    1710: bipush        6
    1712: aconst_null
    1713: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
    1716: aload         15
    1718: checkcast     #14                 // class java/lang/CharSequence
    1721: iconst_1
    1722: anewarray     #16                 // class java/lang/String
    1725: astore        27
    1727: aload         27
    1729: iconst_0
    1730: ldc           #18                 // String
    1732: aastore
    1733: aload         27
    1735: iconst_0
    1736: iconst_0
    1737: bipush        6
    1739: aconst_null
    1740: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
    1743: checkcast     #64                 // class java/util/Collection
    1746: invokeinterface #97,  2           // InterfaceMethod java/util/List.containsAll:(Ljava/util/Collection;)Z
    1751: ifne          1758
    1754: iconst_1
    1755: goto          1759
    1758: iconst_0
    1759: ifeq          1660
    1762: aload         21
    1764: aload         24
    1766: invokeinterface #86,  2           // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
    1771: pop
    1772: goto          1660
    1775: aload         21
    1777: checkcast     #53                 // class java/util/List
    1780: nop
    1781: checkcast     #26                 // class java/lang/Iterable
    1784: astore        18
    1786: nop
    1787: iconst_0
    1788: istore        19
    1790: aload         18
    1792: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
    1797: astore        20
    1799: aload         20
    1801: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
    1806: ifeq          1906
    1809: aload         20
    1811: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
    1816: astore        21
    1818: aload         21
    1820: checkcast     #16                 // class java/lang/String
    1823: astore        22
    1825: iconst_0
    1826: istore        23
    1828: aload         22
    1830: checkcast     #14                 // class java/lang/CharSequence
    1833: iconst_1
    1834: anewarray     #16                 // class java/lang/String
    1837: astore        24
    1839: aload         24
    1841: iconst_0
    1842: ldc           #18                 // String
    1844: aastore
    1845: aload         24
    1847: iconst_0
    1848: iconst_0
    1849: bipush        6
    1851: aconst_null
    1852: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
    1855: aload         16
    1857: checkcast     #14                 // class java/lang/CharSequence
    1860: iconst_1
    1861: anewarray     #16                 // class java/lang/String
    1864: astore        24
    1866: aload         24
    1868: iconst_0
    1869: ldc           #18                 // String
    1871: aastore
    1872: aload         24
    1874: iconst_0
    1875: iconst_0
    1876: bipush        6
    1878: aconst_null
    1879: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
    1882: checkcast     #64                 // class java/util/Collection
    1885: invokeinterface #97,  2           // InterfaceMethod java/util/List.containsAll:(Ljava/util/Collection;)Z
    1890: ifne          1897
    1893: iconst_1
    1894: goto          1898
    1897: iconst_0
    1898: ifeq          1799
    1901: aload         21
    1903: goto          1916
    1906: new           #88                 // class java/util/NoSuchElementException
    1909: dup
    1910: ldc           #90                 // String Collection contains no element matching the predicate.
    1912: invokespecial #93                 // Method java/util/NoSuchElementException."<init>":(Ljava/lang/String;)V
    1915: athrow
    1916: checkcast     #16                 // class java/lang/String
    1919: astore        17
    1921: new           #99                 // class java/util/LinkedHashMap
    1924: dup
    1925: invokespecial #100                // Method java/util/LinkedHashMap."<init>":()V
    1928: checkcast     #102                // class java/util/Map
    1931: astore        18
    1933: aload         18
    1935: aload_0
    1936: aload         13
    1938: invokespecial #104                // Method order:(Ljava/lang/String;)Ljava/lang/String;
    1941: iconst_0
    1942: invokestatic  #110                // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
    1945: invokeinterface #114,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    1950: pop
    1951: aload         18
    1953: aload_0
    1954: aload         8
    1956: invokespecial #104                // Method order:(Ljava/lang/String;)Ljava/lang/String;
    1959: iconst_1
    1960: invokestatic  #110                // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
    1963: invokeinterface #114,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    1968: pop
    1969: aload         18
    1971: aload_0
    1972: aload         17
    1974: invokespecial #104                // Method order:(Ljava/lang/String;)Ljava/lang/String;
    1977: iconst_2
    1978: invokestatic  #110                // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
    1981: invokeinterface #114,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    1986: pop
    1987: aload         18
    1989: aload_0
    1990: aload         15
    1992: invokespecial #104                // Method order:(Ljava/lang/String;)Ljava/lang/String;
    1995: iconst_3
    1996: invokestatic  #110                // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
    1999: invokeinterface #114,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    2004: pop
    2005: aload         18
    2007: aload_0
    2008: aload         9
    2010: invokespecial #104                // Method order:(Ljava/lang/String;)Ljava/lang/String;
    2013: iconst_4
    2014: invokestatic  #110                // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
    2017: invokeinterface #114,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    2022: pop
    2023: aload         18
    2025: aload_0
    2026: aload         16
    2028: invokespecial #104                // Method order:(Ljava/lang/String;)Ljava/lang/String;
    2031: iconst_5
    2032: invokestatic  #110                // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
    2035: invokeinterface #114,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    2040: pop
    2041: aload         18
    2043: aload_0
    2044: aload         14
    2046: invokespecial #104                // Method order:(Ljava/lang/String;)Ljava/lang/String;
    2049: bipush        6
    2051: invokestatic  #110                // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
    2054: invokeinterface #114,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    2059: pop
    2060: aload         18
    2062: aload_0
    2063: aload         10
    2065: invokespecial #104                // Method order:(Ljava/lang/String;)Ljava/lang/String;
    2068: bipush        7
    2070: invokestatic  #110                // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
    2073: invokeinterface #114,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    2078: pop
    2079: aload         18
    2081: aload_0
    2082: aload         11
    2084: invokespecial #104                // Method order:(Ljava/lang/String;)Ljava/lang/String;
    2087: bipush        8
    2089: invokestatic  #110                // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
    2092: invokeinterface #114,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    2097: pop
    2098: aload         18
    2100: aload_0
    2101: aload         12
    2103: invokespecial #104                // Method order:(Ljava/lang/String;)Ljava/lang/String;
    2106: bipush        9
    2108: invokestatic  #110                // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
    2111: invokeinterface #114,  3          // InterfaceMethod java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    2116: pop
    2117: aload         4
    2119: checkcast     #14                 // class java/lang/CharSequence
    2122: iconst_1
    2123: anewarray     #16                 // class java/lang/String
    2126: astore        20
    2128: aload         20
    2130: iconst_0
    2131: ldc           #59                 // String
    2133: aastore
    2134: aload         20
    2136: iconst_0
    2137: iconst_0
    2138: bipush        6
    2140: aconst_null
    2141: invokestatic  #24                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
    2144: checkcast     #26                 // class java/lang/Iterable
    2147: astore        20
    2149: iconst_0
    2150: istore        21
    2152: aload         20
    2154: astore        22
    2156: new           #61                 // class java/util/ArrayList
    2159: dup
    2160: aload         20
    2162: bipush        10
    2164: invokestatic  #118                // Method kotlin/collections/CollectionsKt.collectionSizeOrDefault:(Ljava/lang/Iterable;I)I
    2167: invokespecial #121                // Method java/util/ArrayList."<init>":(I)V
    2170: checkcast     #64                 // class java/util/Collection
    2173: astore        23
    2175: iconst_0
    2176: istore        24
    2178: aload         22
    2180: invokeinterface #68,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
    2185: astore        25
    2187: aload         25
    2189: invokeinterface #74,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
    2194: ifeq          2260
    2197: aload         25
    2199: invokeinterface #78,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
    2204: astore        26
    2206: aload         23
    2208: aload         26
    2210: checkcast     #16                 // class java/lang/String
    2213: astore        27
    2215: astore        29
    2217: iconst_0
    2218: istore        28
    2220: aload         18
    2222: getstatic     #126                // Field com/codelicia/advent2021/Day08$SegmentMap.Companion:Lcom/codelicia/advent2021/Day08$SegmentMap$Companion;
    2225: aload         27
    2227: invokespecial #104                // Method order:(Ljava/lang/String;)Ljava/lang/String;
    2230: invokeinterface #129,  2          // InterfaceMethod java/util/Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
    2235: dup
    2236: invokestatic  #133                // Method kotlin/jvm/internal/Intrinsics.checkNotNull:(Ljava/lang/Object;)V
    2239: checkcast     #135                // class java/lang/Number
    2242: invokevirtual #138                // Method java/lang/Number.intValue:()I
    2245: invokestatic  #110                // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
    2248: aload         29
    2250: swap
    2251: invokeinterface #86,  2           // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
    2256: pop
    2257: goto          2187
    2260: aload         23
    2262: checkcast     #53                 // class java/util/List
    2265: nop
    2266: astore        19
    2268: new           #123                // class com/codelicia/advent2021/Day08$SegmentMap
    2271: dup
    2272: aload         18
    2274: aload         19
    2276: checkcast     #26                 // class java/lang/Iterable
    2279: ldc           #18                 // String
    2281: checkcast     #14                 // class java/lang/CharSequence
    2284: aconst_null
    2285: aconst_null
    2286: iconst_0
    2287: aconst_null
    2288: aconst_null
    2289: bipush        62
    2291: aconst_null
    2292: invokestatic  #36                 // Method kotlin/collections/CollectionsKt.joinToString$default:(Ljava/lang/Iterable;Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;ILjava/lang/CharSequence;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Ljava/lang/String;
    2295: invokestatic  #142                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    2298: invokespecial #145                // Method com/codelicia/advent2021/Day08$SegmentMap."<init>":(Ljava/util/Map;I)V
    2301: areturn

  public com.codelicia.advent2021.Day08$SegmentMap$Companion(kotlin.jvm.internal.DefaultConstructorMarker);
    Code:
       0: aload_0
       1: invokespecial #203                // Method "<init>":()V
       4: return
}

Compiled from "Day08.kt"
public final class com.codelicia.advent2021.Day08$SegmentMap {
  public static final com.codelicia.advent2021.Day08$SegmentMap$Companion Companion;

  private final java.util.Map<java.lang.String, java.lang.Integer> map;

  private final int decodedNumber;

  public com.codelicia.advent2021.Day08$SegmentMap(java.util.Map<java.lang.String, java.lang.Integer>, int);
    Code:
       0: aload_1
       1: ldc           #10                 // String map
       3: invokestatic  #16                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullParameter:(Ljava/lang/Object;Ljava/lang/String;)V
       6: aload_0
       7: invokespecial #19                 // Method java/lang/Object."<init>":()V
      10: aload_0
      11: aload_1
      12: putfield      #22                 // Field map:Ljava/util/Map;
      15: aload_0
      16: iload_2
      17: putfield      #26                 // Field decodedNumber:I
      20: return

  public final java.util.Map<java.lang.String, java.lang.Integer> getMap();
    Code:
       0: aload_0
       1: getfield      #22                 // Field map:Ljava/util/Map;
       4: areturn

  public final int getDecodedNumber();
    Code:
       0: aload_0
       1: getfield      #26                 // Field decodedNumber:I
       4: ireturn

  public final java.util.Map<java.lang.String, java.lang.Integer> component1();
    Code:
       0: aload_0
       1: getfield      #22                 // Field map:Ljava/util/Map;
       4: areturn

  public final int component2();
    Code:
       0: aload_0
       1: getfield      #26                 // Field decodedNumber:I
       4: ireturn

  public final com.codelicia.advent2021.Day08$SegmentMap copy(java.util.Map<java.lang.String, java.lang.Integer>, int);
    Code:
       0: aload_1
       1: ldc           #10                 // String map
       3: invokestatic  #16                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullParameter:(Ljava/lang/Object;Ljava/lang/String;)V
       6: new           #2                  // class com/codelicia/advent2021/Day08$SegmentMap
       9: dup
      10: aload_1
      11: iload_2
      12: invokespecial #40                 // Method "<init>":(Ljava/util/Map;I)V
      15: areturn

  public static com.codelicia.advent2021.Day08$SegmentMap copy$default(com.codelicia.advent2021.Day08$SegmentMap, java.util.Map, int, int, java.lang.Object);
    Code:
       0: iload_3
       1: iconst_1
       2: iand
       3: ifeq          11
       6: aload_0
       7: getfield      #22                 // Field map:Ljava/util/Map;
      10: astore_1
      11: iload_3
      12: iconst_2
      13: iand
      14: ifeq          22
      17: aload_0
      18: getfield      #26                 // Field decodedNumber:I
      21: istore_2
      22: aload_0
      23: aload_1
      24: iload_2
      25: invokevirtual #44                 // Method copy:(Ljava/util/Map;I)Lcom/codelicia/advent2021/Day08$SegmentMap;
      28: areturn

  public java.lang.String toString();
    Code:
       0: new           #48                 // class java/lang/StringBuilder
       3: dup
       4: invokespecial #49                 // Method java/lang/StringBuilder."<init>":()V
       7: ldc           #51                 // String SegmentMap(map=
       9: invokevirtual #55                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
      12: aload_0
      13: getfield      #22                 // Field map:Ljava/util/Map;
      16: invokevirtual #58                 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
      19: ldc           #60                 // String , decodedNumber=
      21: invokevirtual #55                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
      24: aload_0
      25: getfield      #26                 // Field decodedNumber:I
      28: invokevirtual #63                 // Method java/lang/StringBuilder.append:(I)Ljava/lang/StringBuilder;
      31: bipush        41
      33: invokevirtual #66                 // Method java/lang/StringBuilder.append:(C)Ljava/lang/StringBuilder;
      36: invokevirtual #68                 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;
      39: areturn

  public int hashCode();
    Code:
       0: aload_0
       1: getfield      #22                 // Field map:Ljava/util/Map;
       4: invokevirtual #71                 // Method java/lang/Object.hashCode:()I
       7: istore_1
       8: iload_1
       9: bipush        31
      11: imul
      12: aload_0
      13: getfield      #26                 // Field decodedNumber:I
      16: invokestatic  #76                 // Method java/lang/Integer.hashCode:(I)I
      19: iadd
      20: istore_1
      21: iload_1
      22: ireturn

  public boolean equals(java.lang.Object);
    Code:
       0: aload_0
       1: aload_1
       2: if_acmpne     7
       5: iconst_1
       6: ireturn
       7: aload_1
       8: instanceof    #2                  // class com/codelicia/advent2021/Day08$SegmentMap
      11: ifne          16
      14: iconst_0
      15: ireturn
      16: aload_1
      17: checkcast     #2                  // class com/codelicia/advent2021/Day08$SegmentMap
      20: astore_2
      21: aload_0
      22: getfield      #22                 // Field map:Ljava/util/Map;
      25: aload_2
      26: getfield      #22                 // Field map:Ljava/util/Map;
      29: invokestatic  #84                 // Method kotlin/jvm/internal/Intrinsics.areEqual:(Ljava/lang/Object;Ljava/lang/Object;)Z
      32: ifne          37
      35: iconst_0
      36: ireturn
      37: aload_0
      38: getfield      #26                 // Field decodedNumber:I
      41: aload_2
      42: getfield      #26                 // Field decodedNumber:I
      45: if_icmpeq     50
      48: iconst_0
      49: ireturn
      50: iconst_1
      51: ireturn

  static {};
    Code:
       0: new           #89                 // class com/codelicia/advent2021/Day08$SegmentMap$Companion
       3: dup
       4: aconst_null
       5: invokespecial #92                 // Method com/codelicia/advent2021/Day08$SegmentMap$Companion."<init>":(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
       8: putstatic     #96                 // Field Companion:Lcom/codelicia/advent2021/Day08$SegmentMap$Companion;
      11: return
}