#aBC273EX. [ABC273Ex] Inv(0,1)ving Insert(1,0)n

[ABC273Ex] Inv(0,1)ving Insert(1,0)n

AT_abc273_h [ABC273Ex] Inv(0,1)ving Insert(1,0)n

题目描述

有一个由整数对构成的序列 AA,初始时仅含 (0,1)(0,1)(1,0)(1,0) 两个整数对。

你可以对该序列做若干次如下操作(可以不做):

  • 选择两个相邻的整数对 (a,b)(a,b)(c,d)(c,d),在它们之间插入 (a+c,b+d)(a+c,b+d)

对于一个由整数对构成的序列 TT,定义 f(T)f(T) 为让 TT 中所有数对都在 AA 中出现所需的最小操作次数(如果不存在这样的操作,规定 f(T)=0f(T)=0)。

序列 SSNN 个互不相同的整数对构成,第 ii 个整数对为 (ai,bi)(a_i,b_i)。请对 SSN(N+1)2\frac{N(N+1)}{2} 个连续子序列 Sl,rS_{l,r},求出 f(Sl,r)f(S_{l,r}) 的值之和,对 998244353998244353 取模。

输入格式

输入的第一行包含一个整数 NN

接下来的 NN 行,每行包含两个整数 aia_ibib_i,表示序列 SS 中第 ii 个元素。

输出格式

输出一个整数,表示答案对 998244353998244353 取模后的值。

输入输出样例 #1

输入 #1

7
1 2
3 7
3 5
0 0
1000000000 1
0 1
6 3

输出 #1

3511324

说明/提示

  • 1N1051\le N\le10^5
  • 0ai,bi1090\le a_i,b_i\le10^9
  • 每个数对 (ai,bi)(a_i,b_i) 互不相同