package atcoder.arc158

fun main() {
	readLn()
	val top = readInts()
	val bottom = readInts()
	val inf = Long.MAX_VALUE / 4
	data class Score(val score: Long, val improve: Long)
	fun solve(from: Int, to: Int): Modular1 {
		if (from + 1 == to) {
			return (top[from] + bottom[from]).toModular() * 3.toModularUnsafe()
		}
		val mid = (from + to) / 2
		var result = solve(from, mid) + solve(mid, to)
		val (scoresLeft, scoresRight) = List(2) { mode ->
			var bestUpTop = 0L
			var bestUpBottom = inf
			var bestDownTop = inf
			var bestDownBottom = 0L
			val scores = mutableListOf<Score>()
			val range = if (mode == 1) mid until to else mid - 1 downTo from
			for (i in range) {
				val newBestUpTop = minOf(bestUpTop, bestUpBottom + bottom[i]) + top[i]
				val newBestUpBottom = minOf(bestUpBottom, bestUpTop + top[i]) + bottom[i]
				val newBestDownTop = minOf(bestDownTop, bestDownBottom + bottom[i]) + top[i]
				val newBestDownBottom = minOf(bestDownBottom, bestDownTop + top[i]) + bottom[i]
				scores.add(Score(newBestUpTop, - newBestDownTop + newBestUpTop))
				scores.add(Score(newBestUpBottom, - newBestDownBottom + newBestUpBottom))
				bestUpTop = newBestUpTop; bestUpBottom = newBestUpBottom
				bestDownTop = newBestDownTop; bestDownBottom = newBestDownBottom
			}
			scores.sortedBy { it.improve }
		}
		val s1 = scoresLeft.map { it.score.toModular() }.fold(0.toModularUnsafe(), Modular1::plus)
		val s2 = scoresRight.map { it.score.toModular() }.fold(0.toModularUnsafe(), Modular1::plus)
		var sc = s1 * (scoresRight.size).toModularUnsafe() + s2 * (scoresLeft.size).toModularUnsafe()
		var j = scoresRight.size
		var sumJ = 0.toModularUnsafe()
		for (i in scoresLeft.indices) {
			while (j >= 1 && scoresLeft[i].improve + scoresRight[j - 1].improve > 0) {
				j--
				sumJ += scoresRight[j].improve.toModular()
			}
			sc -= scoresLeft[i].improve.toModular() * (scoresRight.size - j).toModularUnsafe()
			sc -= sumJ
		}
		result += sc * 2.toModularUnsafe()
		return result
	}
	println(solve(0, top.size))
}

private val bufferedReader = java.io.BufferedReader(java.io.InputStreamReader(System.`in`))
private fun readLn() = bufferedReader.readLine()
private fun readInt() = readLn().toInt()
private fun readStrings() = readLn().split(" ")
private fun readInts() = readStrings().map { it.toInt() }
private fun readLongs() = readStrings().map { it.toLong() }

private class Modular1(val x: Int) {
	companion object {
		const val M = 998244353; val MOD_BIG_INTEGER = M.toBigInteger()
	}
	inline operator fun plus(that: Modular1) = Modular1((x + that.x).let { if (it >= M) it - M else it })
	inline operator fun minus(that: Modular1) = Modular1((x - that.x).let { if (it < 0) it + M else it })
	inline operator fun times(that: Modular1) = Modular1((x.toLong() * that.x % M).toInt())
	inline operator fun div(that: Modular1) = times(that.inverse())
	inline fun inverse() = Modular1(x.toBigInteger().modInverse(MOD_BIG_INTEGER).toInt())
	override fun toString() = x.toString()
}
private fun Int.toModularUnsafe() = Modular1(this)
private fun Int.toModular() = Modular1(if (this >= 0) { if (this < Modular1.M) this else this % Modular1.M } else { Modular1.M - 1 - inv() % Modular1.M })
private fun Long.toModular() = Modular1((if (this >= 0) { if (this < Modular1.M) this else this % Modular1.M } else { Modular1.M - 1 - inv() % Modular1.M }).toInt())
private fun java.math.BigInteger.toModular() = Modular1(mod(Modular1.MOD_BIG_INTEGER).toInt())
private fun String.toModular() = Modular1(fold(0L) { acc, c -> (c - '0' + 10 * acc) % Modular1.M }.toInt())

private class ModularArray1(val data: IntArray) {
	operator fun get(index: Int) = data[index].toModularUnsafe()
	operator fun set(index: Int, value: Modular1) { data[index] = value.x }
}
private inline fun ModularArray(n: Int, init: (Int) -> Modular1) = ModularArray1(IntArray(n) { init(it).x })

private val factorials = mutableListOf(1.toModularUnsafe())
private fun factorial(n: Int): Modular1 {
	while (n >= factorials.size) factorials.add(factorials.last() * factorials.size.toModularUnsafe())
	return factorials[n]
}
private fun cnk(n: Int, k: Int) = factorial(n) / factorial(k) / factorial(n - k)

Compiled from "e_slow.kt"
public final class atcoder.arc158.E_slowKt {
  private static final java.io.BufferedReader bufferedReader;

  private static final java.util.List<atcoder.arc158.Modular1> factorials;

  public static final void main();
    Code:
       0: invokestatic  #10                 // Method readLn:()Ljava/lang/String;
       3: pop
       4: invokestatic  #14                 // Method readInts:()Ljava/util/List;
       7: astore_0
       8: invokestatic  #14                 // Method readInts:()Ljava/util/List;
      11: astore_1
      12: ldc2_w        #15                 // long 2305843009213693951l
      15: lstore_2
      16: aload_0
      17: aload_1
      18: lload_2
      19: iconst_0
      20: aload_0
      21: invokeinterface #22,  1           // InterfaceMethod java/util/List.size:()I
      26: invokestatic  #26                 // Method main$solve:(Ljava/util/List;Ljava/util/List;JII)Latcoder/arc158/Modular1;
      29: getstatic     #32                 // Field java/lang/System.out:Ljava/io/PrintStream;
      32: swap
      33: invokevirtual #38                 // Method java/io/PrintStream.println:(Ljava/lang/Object;)V
      36: return

  private static final java.lang.String readLn();
    Code:
       0: getstatic     #47                 // Field bufferedReader:Ljava/io/BufferedReader;
       3: invokevirtual #52                 // Method java/io/BufferedReader.readLine:()Ljava/lang/String;
       6: areturn

  private static final int readInt();
    Code:
       0: invokestatic  #10                 // Method readLn:()Ljava/lang/String;
       3: dup
       4: ldc           #55                 // String readLn(...)
       6: invokestatic  #61                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullExpressionValue:(Ljava/lang/Object;Ljava/lang/String;)V
       9: invokestatic  #67                 // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
      12: ireturn

  private static final java.util.List<java.lang.String> readStrings();
    Code:
       0: invokestatic  #10                 // Method readLn:()Ljava/lang/String;
       3: dup
       4: ldc           #55                 // String readLn(...)
       6: invokestatic  #61                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullExpressionValue:(Ljava/lang/Object;Ljava/lang/String;)V
       9: checkcast     #71                 // class java/lang/CharSequence
      12: iconst_1
      13: anewarray     #73                 // class java/lang/String
      16: astore_0
      17: aload_0
      18: iconst_0
      19: ldc           #75                 // String
      21: aastore
      22: aload_0
      23: iconst_0
      24: iconst_0
      25: bipush        6
      27: aconst_null
      28: invokestatic  #81                 // Method kotlin/text/StringsKt.split$default:(Ljava/lang/CharSequence;[Ljava/lang/String;ZIILjava/lang/Object;)Ljava/util/List;
      31: areturn

  private static final java.util.List<java.lang.Integer> readInts();
    Code:
       0: invokestatic  #84                 // Method readStrings:()Ljava/util/List;
       3: checkcast     #86                 // class java/lang/Iterable
       6: astore_0
       7: iconst_0
       8: istore_1
       9: aload_0
      10: astore_2
      11: new           #88                 // class java/util/ArrayList
      14: dup
      15: aload_0
      16: bipush        10
      18: invokestatic  #94                 // Method kotlin/collections/CollectionsKt.collectionSizeOrDefault:(Ljava/lang/Iterable;I)I
      21: invokespecial #98                 // Method java/util/ArrayList."<init>":(I)V
      24: checkcast     #100                // class java/util/Collection
      27: astore_3
      28: iconst_0
      29: istore        4
      31: aload_2
      32: invokeinterface #104,  1          // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
      37: astore        5
      39: aload         5
      41: invokeinterface #110,  1          // InterfaceMethod java/util/Iterator.hasNext:()Z
      46: ifeq          92
      49: aload         5
      51: invokeinterface #114,  1          // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
      56: astore        6
      58: aload_3
      59: aload         6
      61: checkcast     #73                 // class java/lang/String
      64: astore        7
      66: astore        9
      68: iconst_0
      69: istore        8
      71: aload         7
      73: invokestatic  #67                 // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
      76: nop
      77: invokestatic  #118                // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
      80: aload         9
      82: swap
      83: invokeinterface #122,  2          // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
      88: pop
      89: goto          39
      92: aload_3
      93: checkcast     #18                 // class java/util/List
      96: nop
      97: areturn

  private static final java.util.List<java.lang.Long> readLongs();
    Code:
       0: invokestatic  #84                 // Method readStrings:()Ljava/util/List;
       3: checkcast     #86                 // class java/lang/Iterable
       6: astore_0
       7: iconst_0
       8: istore_1
       9: aload_0
      10: astore_2
      11: new           #88                 // class java/util/ArrayList
      14: dup
      15: aload_0
      16: bipush        10
      18: invokestatic  #94                 // Method kotlin/collections/CollectionsKt.collectionSizeOrDefault:(Ljava/lang/Iterable;I)I
      21: invokespecial #98                 // Method java/util/ArrayList."<init>":(I)V
      24: checkcast     #100                // class java/util/Collection
      27: astore_3
      28: iconst_0
      29: istore        4
      31: aload_2
      32: invokeinterface #104,  1          // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
      37: astore        5
      39: aload         5
      41: invokeinterface #110,  1          // InterfaceMethod java/util/Iterator.hasNext:()Z
      46: ifeq          92
      49: aload         5
      51: invokeinterface #114,  1          // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
      56: astore        6
      58: aload_3
      59: aload         6
      61: checkcast     #73                 // class java/lang/String
      64: astore        7
      66: astore        9
      68: iconst_0
      69: istore        8
      71: aload         7
      73: invokestatic  #143                // Method java/lang/Long.parseLong:(Ljava/lang/String;)J
      76: nop
      77: invokestatic  #146                // Method java/lang/Long.valueOf:(J)Ljava/lang/Long;
      80: aload         9
      82: swap
      83: invokeinterface #122,  2          // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
      88: pop
      89: goto          39
      92: aload_3
      93: checkcast     #18                 // class java/util/List
      96: nop
      97: areturn

  private static final atcoder.arc158.Modular1 toModularUnsafe(int);
    Code:
       0: new           #151                // class atcoder/arc158/Modular1
       3: dup
       4: iload_0
       5: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
       8: areturn

  private static final atcoder.arc158.Modular1 toModular(int);
    Code:
       0: new           #151                // class atcoder/arc158/Modular1
       3: dup
       4: iload_0
       5: iflt          25
       8: iload_0
       9: ldc           #155                // int 998244353
      11: if_icmpge     18
      14: iload_0
      15: goto          34
      18: iload_0
      19: ldc           #155                // int 998244353
      21: irem
      22: goto          34
      25: ldc           #156                // int 998244352
      27: iload_0
      28: iconst_m1
      29: ixor
      30: ldc           #155                // int 998244353
      32: irem
      33: isub
      34: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
      37: areturn

  private static final atcoder.arc158.Modular1 toModular(long);
    Code:
       0: new           #151                // class atcoder/arc158/Modular1
       3: dup
       4: lload_0
       5: lconst_0
       6: lcmp
       7: iflt          30
      10: lload_0
      11: ldc2_w        #159                // long 998244353l
      14: lcmp
      15: ifge          22
      18: lload_0
      19: goto          43
      22: lload_0
      23: ldc           #155                // int 998244353
      25: i2l
      26: lrem
      27: goto          43
      30: ldc           #156                // int 998244352
      32: i2l
      33: lload_0
      34: ldc2_w        #161                // long -1l
      37: lxor
      38: ldc           #155                // int 998244353
      40: i2l
      41: lrem
      42: lsub
      43: l2i
      44: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
      47: areturn

  private static final atcoder.arc158.Modular1 toModular(java.math.BigInteger);
    Code:
       0: new           #151                // class atcoder/arc158/Modular1
       3: dup
       4: aload_0
       5: getstatic     #167                // Field atcoder/arc158/Modular1.Companion:Latcoder/arc158/Modular1$Companion;
       8: invokevirtual #173                // Method atcoder/arc158/Modular1$Companion.getMOD_BIG_INTEGER:()Ljava/math/BigInteger;
      11: invokevirtual #179                // Method java/math/BigInteger.mod:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
      14: invokevirtual #182                // Method java/math/BigInteger.intValue:()I
      17: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
      20: areturn

  private static final atcoder.arc158.Modular1 toModular(java.lang.String);
    Code:
       0: aload_0
       1: checkcast     #71                 // class java/lang/CharSequence
       4: astore_1
       5: lconst_0
       6: lstore_2
       7: iconst_0
       8: istore        4
      10: lload_2
      11: lstore        5
      13: iconst_0
      14: istore        7
      16: iload         7
      18: aload_1
      19: invokeinterface #187,  1          // InterfaceMethod java/lang/CharSequence.length:()I
      24: if_icmpge     73
      27: aload_1
      28: iload         7
      30: invokeinterface #191,  2          // InterfaceMethod java/lang/CharSequence.charAt:(I)C
      35: istore        8
      37: lload         5
      39: iload         8
      41: istore        9
      43: lstore        10
      45: iconst_0
      46: istore        12
      48: iload         9
      50: bipush        48
      52: isub
      53: i2l
      54: bipush        10
      56: i2l
      57: lload         10
      59: lmul
      60: ladd
      61: ldc           #155                // int 998244353
      63: i2l
      64: lrem
      65: lstore        5
      67: iinc          7, 1
      70: goto          16
      73: lload         5
      75: l2i
      76: istore        13
      78: new           #151                // class atcoder/arc158/Modular1
      81: dup
      82: iload         13
      84: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
      87: areturn

  private static final atcoder.arc158.ModularArray1 ModularArray(int, kotlin.jvm.functions.Function1<? super java.lang.Integer, atcoder.arc158.Modular1>);
    Code:
       0: iconst_0
       1: istore_2
       2: iconst_0
       3: istore_3
       4: iload_0
       5: newarray       int
       7: astore        4
       9: iload_3
      10: iload_0
      11: if_icmpge     45
      14: iload_3
      15: istore        5
      17: aload         4
      19: iload         5
      21: aload_1
      22: iload         5
      24: invokestatic  #118                // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
      27: invokeinterface #210,  2          // InterfaceMethod kotlin/jvm/functions/Function1.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
      32: checkcast     #151                // class atcoder/arc158/Modular1
      35: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
      38: iastore
      39: iinc          3, 1
      42: goto          9
      45: aload         4
      47: astore        6
      49: new           #215                // class atcoder/arc158/ModularArray1
      52: dup
      53: aload         6
      55: invokespecial #218                // Method atcoder/arc158/ModularArray1."<init>":([I)V
      58: areturn

  private static final atcoder.arc158.Modular1 factorial(int);
    Code:
       0: iload_0
       1: getstatic     #228                // Field factorials:Ljava/util/List;
       4: invokeinterface #22,  1           // InterfaceMethod java/util/List.size:()I
       9: if_icmplt     71
      12: getstatic     #228                // Field factorials:Ljava/util/List;
      15: getstatic     #228                // Field factorials:Ljava/util/List;
      18: invokestatic  #232                // Method kotlin/collections/CollectionsKt.last:(Ljava/util/List;)Ljava/lang/Object;
      21: checkcast     #151                // class atcoder/arc158/Modular1
      24: astore_1
      25: getstatic     #228                // Field factorials:Ljava/util/List;
      28: invokeinterface #22,  1           // InterfaceMethod java/util/List.size:()I
      33: invokestatic  #234                // Method toModularUnsafe:(I)Latcoder/arc158/Modular1;
      36: astore_2
      37: iconst_0
      38: istore_3
      39: new           #151                // class atcoder/arc158/Modular1
      42: dup
      43: aload_1
      44: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
      47: i2l
      48: aload_2
      49: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
      52: i2l
      53: lmul
      54: ldc           #155                // int 998244353
      56: i2l
      57: lrem
      58: l2i
      59: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
      62: invokeinterface #235,  2          // InterfaceMethod java/util/List.add:(Ljava/lang/Object;)Z
      67: pop
      68: goto          0
      71: getstatic     #228                // Field factorials:Ljava/util/List;
      74: iload_0
      75: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
      80: checkcast     #151                // class atcoder/arc158/Modular1
      83: areturn

  private static final atcoder.arc158.Modular1 cnk(int, int);
    Code:
       0: iload_0
       1: invokestatic  #247                // Method factorial:(I)Latcoder/arc158/Modular1;
       4: astore_2
       5: iload_1
       6: invokestatic  #247                // Method factorial:(I)Latcoder/arc158/Modular1;
       9: astore_3
      10: iconst_0
      11: istore        4
      13: aload_2
      14: astore        5
      16: aload_3
      17: astore        6
      19: iconst_0
      20: istore        7
      22: new           #151                // class atcoder/arc158/Modular1
      25: dup
      26: aload         6
      28: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
      31: i2l
      32: invokestatic  #250                // Method java/math/BigInteger.valueOf:(J)Ljava/math/BigInteger;
      35: dup
      36: ldc           #252                // String valueOf(...)
      38: invokestatic  #61                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullExpressionValue:(Ljava/lang/Object;Ljava/lang/String;)V
      41: getstatic     #167                // Field atcoder/arc158/Modular1.Companion:Latcoder/arc158/Modular1$Companion;
      44: invokevirtual #173                // Method atcoder/arc158/Modular1$Companion.getMOD_BIG_INTEGER:()Ljava/math/BigInteger;
      47: invokevirtual #255                // Method java/math/BigInteger.modInverse:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
      50: invokevirtual #182                // Method java/math/BigInteger.intValue:()I
      53: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
      56: astore        6
      58: nop
      59: iconst_0
      60: istore        7
      62: new           #151                // class atcoder/arc158/Modular1
      65: dup
      66: aload         5
      68: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
      71: i2l
      72: aload         6
      74: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
      77: i2l
      78: lmul
      79: ldc           #155                // int 998244353
      81: i2l
      82: lrem
      83: l2i
      84: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
      87: nop
      88: astore_2
      89: iload_0
      90: iload_1
      91: isub
      92: invokestatic  #247                // Method factorial:(I)Latcoder/arc158/Modular1;
      95: astore_3
      96: iconst_0
      97: istore        4
      99: aload_2
     100: astore        5
     102: aload_3
     103: astore        6
     105: iconst_0
     106: istore        7
     108: new           #151                // class atcoder/arc158/Modular1
     111: dup
     112: aload         6
     114: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
     117: i2l
     118: invokestatic  #250                // Method java/math/BigInteger.valueOf:(J)Ljava/math/BigInteger;
     121: dup
     122: ldc           #252                // String valueOf(...)
     124: invokestatic  #61                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullExpressionValue:(Ljava/lang/Object;Ljava/lang/String;)V
     127: getstatic     #167                // Field atcoder/arc158/Modular1.Companion:Latcoder/arc158/Modular1$Companion;
     130: invokevirtual #173                // Method atcoder/arc158/Modular1$Companion.getMOD_BIG_INTEGER:()Ljava/math/BigInteger;
     133: invokevirtual #255                // Method java/math/BigInteger.modInverse:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
     136: invokevirtual #182                // Method java/math/BigInteger.intValue:()I
     139: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
     142: astore        6
     144: nop
     145: iconst_0
     146: istore        7
     148: new           #151                // class atcoder/arc158/Modular1
     151: dup
     152: aload         5
     154: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
     157: i2l
     158: aload         6
     160: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
     163: i2l
     164: lmul
     165: ldc           #155                // int 998244353
     167: i2l
     168: lrem
     169: l2i
     170: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
     173: nop
     174: areturn

  public static void main(java.lang.String[]);
    Code:
       0: invokestatic  #263                // Method main:()V
       3: return

  private static final atcoder.arc158.Modular1 main$solve(java.util.List<java.lang.Integer>, java.util.List<java.lang.Integer>, long, int, int);
    Code:
       0: iload         4
       2: iconst_1
       3: iadd
       4: iload         5
       6: if_icmpne     78
       9: aload_0
      10: iload         4
      12: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
      17: checkcast     #268                // class java/lang/Number
      20: invokevirtual #269                // Method java/lang/Number.intValue:()I
      23: aload_1
      24: iload         4
      26: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
      31: checkcast     #268                // class java/lang/Number
      34: invokevirtual #269                // Method java/lang/Number.intValue:()I
      37: iadd
      38: invokestatic  #271                // Method toModular:(I)Latcoder/arc158/Modular1;
      41: astore        6
      43: iconst_3
      44: invokestatic  #234                // Method toModularUnsafe:(I)Latcoder/arc158/Modular1;
      47: astore        7
      49: iconst_0
      50: istore        8
      52: new           #151                // class atcoder/arc158/Modular1
      55: dup
      56: aload         6
      58: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
      61: i2l
      62: aload         7
      64: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
      67: i2l
      68: lmul
      69: ldc           #155                // int 998244353
      71: i2l
      72: lrem
      73: l2i
      74: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
      77: areturn
      78: iload         4
      80: iload         5
      82: iadd
      83: iconst_2
      84: idiv
      85: istore        6
      87: aload_0
      88: aload_1
      89: lload_2
      90: iload         4
      92: iload         6
      94: invokestatic  #26                 // Method main$solve:(Ljava/util/List;Ljava/util/List;JII)Latcoder/arc158/Modular1;
      97: astore        8
      99: aload_0
     100: aload_1
     101: lload_2
     102: iload         6
     104: iload         5
     106: invokestatic  #26                 // Method main$solve:(Ljava/util/List;Ljava/util/List;JII)Latcoder/arc158/Modular1;
     109: astore        9
     111: iconst_0
     112: istore        10
     114: aload         8
     116: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
     119: aload         9
     121: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
     124: iadd
     125: istore        11
     127: iconst_0
     128: istore        14
     130: iload         11
     132: ldc           #155                // int 998244353
     134: if_icmplt     145
     137: iload         11
     139: ldc           #155                // int 998244353
     141: isub
     142: goto          147
     145: iload         11
     147: nop
     148: istore        37
     150: new           #151                // class atcoder/arc158/Modular1
     153: dup
     154: iload         37
     156: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
     159: astore        7
     161: iconst_2
     162: istore        9
     164: new           #88                 // class java/util/ArrayList
     167: dup
     168: iload         9
     170: invokespecial #98                 // Method java/util/ArrayList."<init>":(I)V
     173: astore        10
     175: iconst_0
     176: istore        11
     178: iload         11
     180: iload         9
     182: if_icmpge     573
     185: iload         11
     187: istore        12
     189: aload         10
     191: iload         12
     193: istore        13
     195: astore        36
     197: iconst_0
     198: istore        14
     200: lconst_0
     201: lstore        15
     203: lload_2
     204: lstore        17
     206: lload_2
     207: lstore        19
     209: lconst_0
     210: lstore        21
     212: new           #88                 // class java/util/ArrayList
     215: dup
     216: invokespecial #273                // Method java/util/ArrayList."<init>":()V
     219: checkcast     #18                 // class java/util/List
     222: astore        23
     224: iload         13
     226: iconst_1
     227: if_icmpne     243
     230: iload         6
     232: iload         5
     234: invokestatic  #279                // Method kotlin/ranges/RangesKt.until:(II)Lkotlin/ranges/IntRange;
     237: checkcast     #281                // class kotlin/ranges/IntProgression
     240: goto          252
     243: iload         6
     245: iconst_1
     246: isub
     247: iload         4
     249: invokestatic  #285                // Method kotlin/ranges/RangesKt.downTo:(II)Lkotlin/ranges/IntProgression;
     252: astore        24
     254: aload         24
     256: invokevirtual #288                // Method kotlin/ranges/IntProgression.getFirst:()I
     259: istore        25
     261: aload         24
     263: invokevirtual #291                // Method kotlin/ranges/IntProgression.getLast:()I
     266: istore        26
     268: aload         24
     270: invokevirtual #294                // Method kotlin/ranges/IntProgression.getStep:()I
     273: istore        27
     275: iload         27
     277: ifle          287
     280: iload         25
     282: iload         26
     284: if_icmple     299
     287: iload         27
     289: ifge          534
     292: iload         26
     294: iload         25
     296: if_icmpgt     534
     299: lload         15
     301: lload         17
     303: aload_1
     304: iload         25
     306: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
     311: checkcast     #268                // class java/lang/Number
     314: invokevirtual #298                // Method java/lang/Number.longValue:()J
     317: ladd
     318: invokestatic  #304                // Method java/lang/Math.min:(JJ)J
     321: aload_0
     322: iload         25
     324: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
     329: checkcast     #268                // class java/lang/Number
     332: invokevirtual #298                // Method java/lang/Number.longValue:()J
     335: ladd
     336: lstore        28
     338: lload         17
     340: lload         15
     342: aload_0
     343: iload         25
     345: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
     350: checkcast     #268                // class java/lang/Number
     353: invokevirtual #298                // Method java/lang/Number.longValue:()J
     356: ladd
     357: invokestatic  #304                // Method java/lang/Math.min:(JJ)J
     360: aload_1
     361: iload         25
     363: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
     368: checkcast     #268                // class java/lang/Number
     371: invokevirtual #298                // Method java/lang/Number.longValue:()J
     374: ladd
     375: lstore        30
     377: lload         19
     379: lload         21
     381: aload_1
     382: iload         25
     384: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
     389: checkcast     #268                // class java/lang/Number
     392: invokevirtual #298                // Method java/lang/Number.longValue:()J
     395: ladd
     396: invokestatic  #304                // Method java/lang/Math.min:(JJ)J
     399: aload_0
     400: iload         25
     402: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
     407: checkcast     #268                // class java/lang/Number
     410: invokevirtual #298                // Method java/lang/Number.longValue:()J
     413: ladd
     414: lstore        32
     416: lload         21
     418: lload         19
     420: aload_0
     421: iload         25
     423: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
     428: checkcast     #268                // class java/lang/Number
     431: invokevirtual #298                // Method java/lang/Number.longValue:()J
     434: ladd
     435: invokestatic  #304                // Method java/lang/Math.min:(JJ)J
     438: aload_1
     439: iload         25
     441: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
     446: checkcast     #268                // class java/lang/Number
     449: invokevirtual #298                // Method java/lang/Number.longValue:()J
     452: ladd
     453: lstore        34
     455: aload         23
     457: new           #306                // class atcoder/arc158/E_slowKt$main$Score
     460: dup
     461: lload         28
     463: lload         32
     465: lneg
     466: lload         28
     468: ladd
     469: invokespecial #309                // Method atcoder/arc158/E_slowKt$main$Score."<init>":(JJ)V
     472: invokeinterface #235,  2          // InterfaceMethod java/util/List.add:(Ljava/lang/Object;)Z
     477: pop
     478: aload         23
     480: new           #306                // class atcoder/arc158/E_slowKt$main$Score
     483: dup
     484: lload         30
     486: lload         34
     488: lneg
     489: lload         30
     491: ladd
     492: invokespecial #309                // Method atcoder/arc158/E_slowKt$main$Score."<init>":(JJ)V
     495: invokeinterface #235,  2          // InterfaceMethod java/util/List.add:(Ljava/lang/Object;)Z
     500: pop
     501: lload         28
     503: lstore        15
     505: lload         30
     507: lstore        17
     509: lload         32
     511: lstore        19
     513: lload         34
     515: lstore        21
     517: iload         25
     519: iload         26
     521: if_icmpeq     534
     524: iload         25
     526: iload         27
     528: iadd
     529: istore        25
     531: goto          299
     534: aload         23
     536: checkcast     #86                 // class java/lang/Iterable
     539: astore        25
     541: iconst_0
     542: istore        26
     544: aload         25
     546: new           #311                // class atcoder/arc158/E_slowKt$main$solve$lambda$1$$inlined$sortedBy$1
     549: dup
     550: invokespecial #312                // Method atcoder/arc158/E_slowKt$main$solve$lambda$1$$inlined$sortedBy$1."<init>":()V
     553: checkcast     #314                // class java/util/Comparator
     556: invokestatic  #318                // Method kotlin/collections/CollectionsKt.sortedWith:(Ljava/lang/Iterable;Ljava/util/Comparator;)Ljava/util/List;
     559: nop
     560: aload         36
     562: swap
     563: invokevirtual #319                // Method java/util/ArrayList.add:(Ljava/lang/Object;)Z
     566: pop
     567: iinc          11, 1
     570: goto          178
     573: aload         10
     575: checkcast     #18                 // class java/util/List
     578: astore        8
     580: aload         8
     582: iconst_0
     583: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
     588: checkcast     #18                 // class java/util/List
     591: astore        9
     593: aload         8
     595: iconst_1
     596: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
     601: checkcast     #18                 // class java/util/List
     604: astore        10
     606: aload         9
     608: checkcast     #86                 // class java/lang/Iterable
     611: astore        12
     613: iconst_0
     614: istore        13
     616: aload         12
     618: astore        14
     620: new           #88                 // class java/util/ArrayList
     623: dup
     624: aload         12
     626: bipush        10
     628: invokestatic  #94                 // Method kotlin/collections/CollectionsKt.collectionSizeOrDefault:(Ljava/lang/Iterable;I)I
     631: invokespecial #98                 // Method java/util/ArrayList."<init>":(I)V
     634: checkcast     #100                // class java/util/Collection
     637: astore        15
     639: iconst_0
     640: istore        16
     642: aload         14
     644: invokeinterface #104,  1          // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     649: astore        17
     651: aload         17
     653: invokeinterface #110,  1          // InterfaceMethod java/util/Iterator.hasNext:()Z
     658: ifeq          704
     661: aload         17
     663: invokeinterface #114,  1          // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     668: astore        18
     670: aload         15
     672: aload         18
     674: checkcast     #306                // class atcoder/arc158/E_slowKt$main$Score
     677: astore        19
     679: astore        36
     681: iconst_0
     682: istore        20
     684: aload         19
     686: invokevirtual #322                // Method atcoder/arc158/E_slowKt$main$Score.getScore:()J
     689: invokestatic  #324                // Method toModular:(J)Latcoder/arc158/Modular1;
     692: aload         36
     694: swap
     695: invokeinterface #122,  2          // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
     700: pop
     701: goto          651
     704: aload         15
     706: checkcast     #18                 // class java/util/List
     709: nop
     710: checkcast     #86                 // class java/lang/Iterable
     713: astore        12
     715: iconst_0
     716: invokestatic  #234                // Method toModularUnsafe:(I)Latcoder/arc158/Modular1;
     719: astore        13
     721: iconst_0
     722: istore        14
     724: aload         13
     726: astore        15
     728: aload         12
     730: invokeinterface #104,  1          // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     735: astore        16
     737: aload         16
     739: invokeinterface #110,  1          // InterfaceMethod java/util/Iterator.hasNext:()Z
     744: ifeq          828
     747: aload         16
     749: invokeinterface #114,  1          // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     754: astore        17
     756: aload         15
     758: aload         17
     760: checkcast     #151                // class atcoder/arc158/Modular1
     763: astore        18
     765: astore        19
     767: iconst_0
     768: istore        20
     770: aload         19
     772: astore        21
     774: iconst_0
     775: istore        22
     777: aload         21
     779: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
     782: aload         18
     784: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
     787: iadd
     788: istore        23
     790: iconst_0
     791: istore        26
     793: iload         23
     795: ldc           #155                // int 998244353
     797: if_icmplt     808
     800: iload         23
     802: ldc           #155                // int 998244353
     804: isub
     805: goto          810
     808: iload         23
     810: nop
     811: istore        38
     813: new           #151                // class atcoder/arc158/Modular1
     816: dup
     817: iload         38
     819: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
     822: nop
     823: astore        15
     825: goto          737
     828: aload         15
     830: astore        11
     832: aload         10
     834: checkcast     #86                 // class java/lang/Iterable
     837: astore        13
     839: iconst_0
     840: istore        14
     842: aload         13
     844: astore        15
     846: new           #88                 // class java/util/ArrayList
     849: dup
     850: aload         13
     852: bipush        10
     854: invokestatic  #94                 // Method kotlin/collections/CollectionsKt.collectionSizeOrDefault:(Ljava/lang/Iterable;I)I
     857: invokespecial #98                 // Method java/util/ArrayList."<init>":(I)V
     860: checkcast     #100                // class java/util/Collection
     863: astore        16
     865: iconst_0
     866: istore        17
     868: aload         15
     870: invokeinterface #104,  1          // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     875: astore        18
     877: aload         18
     879: invokeinterface #110,  1          // InterfaceMethod java/util/Iterator.hasNext:()Z
     884: ifeq          930
     887: aload         18
     889: invokeinterface #114,  1          // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     894: astore        19
     896: aload         16
     898: aload         19
     900: checkcast     #306                // class atcoder/arc158/E_slowKt$main$Score
     903: astore        20
     905: astore        36
     907: iconst_0
     908: istore        21
     910: aload         20
     912: invokevirtual #322                // Method atcoder/arc158/E_slowKt$main$Score.getScore:()J
     915: invokestatic  #324                // Method toModular:(J)Latcoder/arc158/Modular1;
     918: aload         36
     920: swap
     921: invokeinterface #122,  2          // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
     926: pop
     927: goto          877
     930: aload         16
     932: checkcast     #18                 // class java/util/List
     935: nop
     936: checkcast     #86                 // class java/lang/Iterable
     939: astore        13
     941: iconst_0
     942: invokestatic  #234                // Method toModularUnsafe:(I)Latcoder/arc158/Modular1;
     945: astore        14
     947: iconst_0
     948: istore        15
     950: aload         14
     952: astore        16
     954: aload         13
     956: invokeinterface #104,  1          // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
     961: astore        17
     963: aload         17
     965: invokeinterface #110,  1          // InterfaceMethod java/util/Iterator.hasNext:()Z
     970: ifeq          1054
     973: aload         17
     975: invokeinterface #114,  1          // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
     980: astore        18
     982: aload         16
     984: aload         18
     986: checkcast     #151                // class atcoder/arc158/Modular1
     989: astore        19
     991: astore        20
     993: iconst_0
     994: istore        21
     996: aload         20
     998: astore        22
    1000: iconst_0
    1001: istore        23
    1003: aload         22
    1005: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1008: aload         19
    1010: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1013: iadd
    1014: istore        24
    1016: iconst_0
    1017: istore        27
    1019: iload         24
    1021: ldc           #155                // int 998244353
    1023: if_icmplt     1034
    1026: iload         24
    1028: ldc           #155                // int 998244353
    1030: isub
    1031: goto          1036
    1034: iload         24
    1036: nop
    1037: istore        39
    1039: new           #151                // class atcoder/arc158/Modular1
    1042: dup
    1043: iload         39
    1045: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
    1048: nop
    1049: astore        16
    1051: goto          963
    1054: aload         16
    1056: astore        12
    1058: aload         11
    1060: astore        14
    1062: aload         10
    1064: invokeinterface #22,  1           // InterfaceMethod java/util/List.size:()I
    1069: invokestatic  #234                // Method toModularUnsafe:(I)Latcoder/arc158/Modular1;
    1072: astore        15
    1074: iconst_0
    1075: istore        16
    1077: new           #151                // class atcoder/arc158/Modular1
    1080: dup
    1081: aload         14
    1083: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1086: i2l
    1087: aload         15
    1089: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1092: i2l
    1093: lmul
    1094: ldc           #155                // int 998244353
    1096: i2l
    1097: lrem
    1098: l2i
    1099: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
    1102: astore        14
    1104: aload         12
    1106: astore        15
    1108: aload         9
    1110: invokeinterface #22,  1           // InterfaceMethod java/util/List.size:()I
    1115: invokestatic  #234                // Method toModularUnsafe:(I)Latcoder/arc158/Modular1;
    1118: astore        16
    1120: iconst_0
    1121: istore        17
    1123: new           #151                // class atcoder/arc158/Modular1
    1126: dup
    1127: aload         15
    1129: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1132: i2l
    1133: aload         16
    1135: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1138: i2l
    1139: lmul
    1140: ldc           #155                // int 998244353
    1142: i2l
    1143: lrem
    1144: l2i
    1145: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
    1148: astore        15
    1150: nop
    1151: iconst_0
    1152: istore        16
    1154: aload         14
    1156: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1159: aload         15
    1161: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1164: iadd
    1165: istore        17
    1167: iconst_0
    1168: istore        20
    1170: iload         17
    1172: ldc           #155                // int 998244353
    1174: if_icmplt     1185
    1177: iload         17
    1179: ldc           #155                // int 998244353
    1181: isub
    1182: goto          1187
    1185: iload         17
    1187: nop
    1188: istore        40
    1190: new           #151                // class atcoder/arc158/Modular1
    1193: dup
    1194: iload         40
    1196: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
    1199: astore        13
    1201: aload         10
    1203: invokeinterface #22,  1           // InterfaceMethod java/util/List.size:()I
    1208: istore        14
    1210: iconst_0
    1211: invokestatic  #234                // Method toModularUnsafe:(I)Latcoder/arc158/Modular1;
    1214: astore        15
    1216: iconst_0
    1217: istore        16
    1219: aload         9
    1221: checkcast     #100                // class java/util/Collection
    1224: invokeinterface #325,  1          // InterfaceMethod java/util/Collection.size:()I
    1229: istore        17
    1231: iload         16
    1233: iload         17
    1235: if_icmpge     1538
    1238: iload         14
    1240: iconst_1
    1241: if_icmplt     1362
    1244: aload         9
    1246: iload         16
    1248: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
    1253: checkcast     #306                // class atcoder/arc158/E_slowKt$main$Score
    1256: invokevirtual #328                // Method atcoder/arc158/E_slowKt$main$Score.getImprove:()J
    1259: aload         10
    1261: iload         14
    1263: iconst_1
    1264: isub
    1265: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
    1270: checkcast     #306                // class atcoder/arc158/E_slowKt$main$Score
    1273: invokevirtual #328                // Method atcoder/arc158/E_slowKt$main$Score.getImprove:()J
    1276: ladd
    1277: lconst_0
    1278: lcmp
    1279: ifle          1362
    1282: iinc          14, -1
    1285: aload         15
    1287: astore        18
    1289: aload         10
    1291: iload         14
    1293: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
    1298: checkcast     #306                // class atcoder/arc158/E_slowKt$main$Score
    1301: invokevirtual #328                // Method atcoder/arc158/E_slowKt$main$Score.getImprove:()J
    1304: invokestatic  #324                // Method toModular:(J)Latcoder/arc158/Modular1;
    1307: astore        19
    1309: iconst_0
    1310: istore        20
    1312: aload         18
    1314: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1317: aload         19
    1319: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1322: iadd
    1323: istore        21
    1325: iconst_0
    1326: istore        24
    1328: iload         21
    1330: ldc           #155                // int 998244353
    1332: if_icmplt     1343
    1335: iload         21
    1337: ldc           #155                // int 998244353
    1339: isub
    1340: goto          1345
    1343: iload         21
    1345: nop
    1346: istore        41
    1348: new           #151                // class atcoder/arc158/Modular1
    1351: dup
    1352: iload         41
    1354: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
    1357: astore        15
    1359: goto          1238
    1362: aload         13
    1364: astore        18
    1366: aload         9
    1368: iload         16
    1370: invokeinterface #239,  2          // InterfaceMethod java/util/List.get:(I)Ljava/lang/Object;
    1375: checkcast     #306                // class atcoder/arc158/E_slowKt$main$Score
    1378: invokevirtual #328                // Method atcoder/arc158/E_slowKt$main$Score.getImprove:()J
    1381: invokestatic  #324                // Method toModular:(J)Latcoder/arc158/Modular1;
    1384: astore        19
    1386: aload         10
    1388: invokeinterface #22,  1           // InterfaceMethod java/util/List.size:()I
    1393: iload         14
    1395: isub
    1396: invokestatic  #234                // Method toModularUnsafe:(I)Latcoder/arc158/Modular1;
    1399: astore        20
    1401: iconst_0
    1402: istore        21
    1404: new           #151                // class atcoder/arc158/Modular1
    1407: dup
    1408: aload         19
    1410: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1413: i2l
    1414: aload         20
    1416: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1419: i2l
    1420: lmul
    1421: ldc           #155                // int 998244353
    1423: i2l
    1424: lrem
    1425: l2i
    1426: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
    1429: astore        19
    1431: nop
    1432: iconst_0
    1433: istore        20
    1435: aload         18
    1437: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1440: aload         19
    1442: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1445: isub
    1446: istore        21
    1448: iconst_0
    1449: istore        24
    1451: iload         21
    1453: ifge          1464
    1456: iload         21
    1458: ldc           #155                // int 998244353
    1460: iadd
    1461: goto          1466
    1464: iload         21
    1466: nop
    1467: istore        42
    1469: new           #151                // class atcoder/arc158/Modular1
    1472: dup
    1473: iload         42
    1475: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
    1478: astore        13
    1480: aload         13
    1482: astore        18
    1484: iconst_0
    1485: istore        19
    1487: aload         18
    1489: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1492: aload         15
    1494: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1497: isub
    1498: istore        20
    1500: iconst_0
    1501: istore        23
    1503: iload         20
    1505: ifge          1516
    1508: iload         20
    1510: ldc           #155                // int 998244353
    1512: iadd
    1513: goto          1518
    1516: iload         20
    1518: nop
    1519: istore        43
    1521: new           #151                // class atcoder/arc158/Modular1
    1524: dup
    1525: iload         43
    1527: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
    1530: astore        13
    1532: iinc          16, 1
    1535: goto          1231
    1538: aload         7
    1540: astore        16
    1542: aload         13
    1544: astore        17
    1546: iconst_2
    1547: invokestatic  #234                // Method toModularUnsafe:(I)Latcoder/arc158/Modular1;
    1550: astore        18
    1552: iconst_0
    1553: istore        19
    1555: new           #151                // class atcoder/arc158/Modular1
    1558: dup
    1559: aload         17
    1561: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1564: i2l
    1565: aload         18
    1567: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1570: i2l
    1571: lmul
    1572: ldc           #155                // int 998244353
    1574: i2l
    1575: lrem
    1576: l2i
    1577: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
    1580: astore        17
    1582: nop
    1583: iconst_0
    1584: istore        18
    1586: aload         16
    1588: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1591: aload         17
    1593: invokevirtual #213                // Method atcoder/arc158/Modular1.getX:()I
    1596: iadd
    1597: istore        19
    1599: iconst_0
    1600: istore        22
    1602: iload         19
    1604: ldc           #155                // int 998244353
    1606: if_icmplt     1617
    1609: iload         19
    1611: ldc           #155                // int 998244353
    1613: isub
    1614: goto          1619
    1617: iload         19
    1619: nop
    1620: istore        44
    1622: new           #151                // class atcoder/arc158/Modular1
    1625: dup
    1626: iload         44
    1628: invokespecial #152                // Method atcoder/arc158/Modular1."<init>":(I)V
    1631: astore        7
    1633: aload         7
    1635: areturn

  public static final atcoder.arc158.Modular1 access$toModularUnsafe(int);
    Code:
       0: iload_0
       1: invokestatic  #234                // Method toModularUnsafe:(I)Latcoder/arc158/Modular1;
       4: areturn

  static {};
    Code:
       0: new           #49                 // class java/io/BufferedReader
       3: dup
       4: new           #372                // class java/io/InputStreamReader
       7: dup
       8: getstatic     #376                // Field java/lang/System.in:Ljava/io/InputStream;
      11: invokespecial #379                // Method java/io/InputStreamReader."<init>":(Ljava/io/InputStream;)V
      14: checkcast     #381                // class java/io/Reader
      17: invokespecial #384                // Method java/io/BufferedReader."<init>":(Ljava/io/Reader;)V
      20: putstatic     #47                 // Field bufferedReader:Ljava/io/BufferedReader;
      23: iconst_1
      24: anewarray     #151                // class atcoder/arc158/Modular1
      27: astore_0
      28: aload_0
      29: iconst_0
      30: iconst_1
      31: invokestatic  #234                // Method toModularUnsafe:(I)Latcoder/arc158/Modular1;
      34: aastore
      35: aload_0
      36: invokestatic  #388                // Method kotlin/collections/CollectionsKt.mutableListOf:([Ljava/lang/Object;)Ljava/util/List;
      39: putstatic     #228                // Field factorials:Ljava/util/List;
      42: return
}

Compiled from "Comparisons.kt"
public final class atcoder.arc158.E_slowKt$main$solve$lambda$1$$inlined$sortedBy$1<T> implements java.util.Comparator {
  public atcoder.arc158.E_slowKt$main$solve$lambda$1$$inlined$sortedBy$1();
    Code:
       0: aload_0
       1: invokespecial #16                 // Method java/lang/Object."<init>":()V
       4: return

  public final int compare(T, T);
    Code:
       0: aload_1
       1: checkcast     #23                 // class atcoder/arc158/E_slowKt$main$Score
       4: astore_3
       5: iconst_0
       6: istore        4
       8: aload_3
       9: invokevirtual #27                 // Method atcoder/arc158/E_slowKt$main$Score.getImprove:()J
      12: invokestatic  #33                 // Method java/lang/Long.valueOf:(J)Ljava/lang/Long;
      15: checkcast     #35                 // class java/lang/Comparable
      18: aload_2
      19: checkcast     #23                 // class atcoder/arc158/E_slowKt$main$Score
      22: astore_3
      23: astore        5
      25: iconst_0
      26: istore        4
      28: aload_3
      29: invokevirtual #27                 // Method atcoder/arc158/E_slowKt$main$Score.getImprove:()J
      32: invokestatic  #33                 // Method java/lang/Long.valueOf:(J)Ljava/lang/Long;
      35: aload         5
      37: swap
      38: checkcast     #35                 // class java/lang/Comparable
      41: invokestatic  #41                 // Method kotlin/comparisons/ComparisonsKt.compareValues:(Ljava/lang/Comparable;Ljava/lang/Comparable;)I
      44: ireturn
}

Compiled from "e_slow.kt"
public final class atcoder.arc158.E_slowKt$main$Score {
  private final long score;

  private final long improve;

  public atcoder.arc158.E_slowKt$main$Score(long, long);
    Code:
       0: aload_0
       1: invokespecial #9                  // Method java/lang/Object."<init>":()V
       4: aload_0
       5: lload_1
       6: putfield      #13                 // Field score:J
       9: aload_0
      10: lload_3
      11: putfield      #16                 // Field improve:J
      14: return

  public final long getScore();
    Code:
       0: aload_0
       1: getfield      #13                 // Field score:J
       4: lreturn

  public final long getImprove();
    Code:
       0: aload_0
       1: getfield      #16                 // Field improve:J
       4: lreturn

  public final long component1();
    Code:
       0: aload_0
       1: getfield      #13                 // Field score:J
       4: lreturn

  public final long component2();
    Code:
       0: aload_0
       1: getfield      #16                 // Field improve:J
       4: lreturn

  public final atcoder.arc158.E_slowKt$main$Score copy(long, long);
    Code:
       0: new           #2                  // class atcoder/arc158/E_slowKt$main$Score
       3: dup
       4: lload_1
       5: lload_3
       6: invokespecial #27                 // Method "<init>":(JJ)V
       9: areturn

  public static atcoder.arc158.E_slowKt$main$Score copy$default(atcoder.arc158.E_slowKt$main$Score, long, long, int, java.lang.Object);
    Code:
       0: iload         5
       2: iconst_1
       3: iand
       4: ifeq          12
       7: aload_0
       8: getfield      #13                 // Field score:J
      11: lstore_1
      12: iload         5
      14: iconst_2
      15: iand
      16: ifeq          24
      19: aload_0
      20: getfield      #16                 // Field improve:J
      23: lstore_3
      24: aload_0
      25: lload_1
      26: lload_3
      27: invokevirtual #31                 // Method copy:(JJ)Latcoder/arc158/E_slowKt$main$Score;
      30: areturn

  public java.lang.String toString();
    Code:
       0: new           #35                 // class java/lang/StringBuilder
       3: dup
       4: invokespecial #36                 // Method java/lang/StringBuilder."<init>":()V
       7: ldc           #38                 // String Score(score=
       9: invokevirtual #42                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
      12: aload_0
      13: getfield      #13                 // Field score:J
      16: invokevirtual #45                 // Method java/lang/StringBuilder.append:(J)Ljava/lang/StringBuilder;
      19: ldc           #47                 // String , improve=
      21: invokevirtual #42                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
      24: aload_0
      25: getfield      #16                 // Field improve:J
      28: invokevirtual #45                 // Method java/lang/StringBuilder.append:(J)Ljava/lang/StringBuilder;
      31: bipush        41
      33: invokevirtual #50                 // Method java/lang/StringBuilder.append:(C)Ljava/lang/StringBuilder;
      36: invokevirtual #52                 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;
      39: areturn

  public int hashCode();
    Code:
       0: aload_0
       1: getfield      #13                 // Field score:J
       4: invokestatic  #59                 // Method java/lang/Long.hashCode:(J)I
       7: istore_1
       8: iload_1
       9: bipush        31
      11: imul
      12: aload_0
      13: getfield      #16                 // Field improve:J
      16: invokestatic  #59                 // Method java/lang/Long.hashCode:(J)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 atcoder/arc158/E_slowKt$main$Score
      11: ifne          16
      14: iconst_0
      15: ireturn
      16: aload_1
      17: checkcast     #2                  // class atcoder/arc158/E_slowKt$main$Score
      20: astore_2
      21: aload_0
      22: getfield      #13                 // Field score:J
      25: aload_2
      26: getfield      #13                 // Field score:J
      29: lcmp
      30: ifeq          35
      33: iconst_0
      34: ireturn
      35: aload_0
      36: getfield      #16                 // Field improve:J
      39: aload_2
      40: getfield      #16                 // Field improve:J
      43: lcmp
      44: ifeq          49
      47: iconst_0
      48: ireturn
      49: iconst_1
      50: ireturn
}