Problem:


Score : 600 points

Problem Statement

There is a grid of squares with H+1 horizontal rows and W vertical columns.

You will start at one of the squares in the top row and repeat moving one square right or down. However, for each integer i from 1 through H, you cannot move down from the A_i-th, (A_i + 1)-th, \ldots, B_i-th squares from the left in the i-th row from the top.

For each integer k from 1 through H, find the minimum number of moves needed to reach one of the squares in the (k+1)-th row from the top. (The starting square can be chosen individually for each case.) If, starting from any square in the top row, none of the squares in the (k+1)-th row can be reached, print -1 instead.

Constraints

1 \leq H,W \leq 2\times 10^5

1 \leq A_i \leq B_i \leq W

Input

Input is given from Standard Input in the following format:

H W
A_1 B_1
A_2 B_2
:
A_H B_H

Output

Print H lines. The i-th line should contain the answer for the case k=i.

Sample Input 1

4 4
2 4
1 1
2 3
2 4

Sample Output 1

1
3
6
-1

Let (i,j) denote the square at the i-th row from the top and j-th column from the left.

For k=1, we need one move such as (1,1) → (2,1).

For k=2, we need three moves such as (1,1) → (2,1) → (2,2) → (3,2).

For k=3, we need six moves such as (1,1) → (2,1) → (2,2) → (3,2) → (3,3) → (3,4) → (4,4).

For k=4, it is impossible to reach any square in the fifth row from the top.



Sample input:
4 4
2 4
1 1
2 3
2 4


Sample output:
1
3
6
-1

Submission status: Wrong Answer

Solution code:
# compiled by pythran
"""
#pythran export main2()
import numpy as np
i4 = np.int32
i8 = np.int64


def solve(a, b, H, W):
    ret = np.empty(H, i8)
    dp0 = np.arange(W)
    dp = np.arange(W)
    arg = 0
    for i in range(H):
        r1 = np.searchsorted(dp, a[i])
        r2 = np.searchsorted(dp, b[i])
        if b[i] == W:
            if r1 == 0:
                ret[i] = -1
                return ret[: i + 1]
            else:
                dp0 = dp0[: r1]
                dp = dp[: r1]
        else:
            dp[r1:r2] = b[i]
        if r1 <= arg < r2:
            arg = np.argmin(dp - dp0)
        ret[i] = dp[arg] - dp0[arg] + i + 1
    return ret


def main(in_file):
    stdin = open(in_file)
    H, W = [int(x) for x in stdin.readline().split()]
    a = np.empty(W, i8)
    b = np.empty(W, i8)
    for i in range(H):
        a[i], b[i] = [int(x) for x in stdin.readline().split()]
    a -= 1
    ans = solve(a, b, H, W)
    p = '\n'.join([str(x) for x in ans])
    print(p)


def main2():
    main('/dev/stdin')
"""
import os, sys
p = os.path.dirname(__file__)
pymain = os.path.join(p, "a.out")
if len(sys.argv) == 1:
    import subprocess
    if p == "":
        pymain = "./" + pymain
    subprocess.call(pymain)
else:
    import gzip, base64, stat
    gz = b'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'
    bin = gzip.decompress(base64.b64decode(gz))
    with open(pymain, "wb") as f:
        f.write(bin)
    os.chmod(pymain, 0o775)