C. 交通要塞
time limit per test
1 second
memory limit per test
512 megabytes
input
standard input
output
standard output

G 大有一条路会在每次上下课时变得十分拥堵,有时甚至堵得一动不动。然而,堵住的路就是饭堂排着的队,饿坏了的你深知,自己必须穿过这堵死的交通要塞。

虽然每条车道几乎全部堵死,但却各自刚好留有一段空位。

具体来说,我们可以将要塞抽象为一个二维整点平面。有 $$$0,1,2,\dots,n,n+1$$$ 共 $$$n+2$$$ 条车道,初始时你在 $$$0$$$ 号车道,位于 $$$(0, 0)$$$,你的目标是抵达 $$$n+1$$$ 号车道,即抵达 $$$(n+1, 0)$$$。$$$0$$$ 号车道和 $$$n+1$$$ 号车道其实是人行道,所以没有车,故全车道畅通无阻。而对于第 $$$1,2,\dots,n$$$ 号车道中的第 $$$i$$$ 条车道,有一小段没有车的区域为 $$$(i, l_i)$$$ 到 $$$(i, r_i)$$$。

然而自行车们不会等你慢慢通过。每一秒,自行车海会整体向负方向移动一个单位。即所有的 $$$l_i$$$ 和 $$$r_i$$$ 将减少 $$$1$$$。

人行道的区域并不大,因此在每一秒,你唯一能进行的决策,就是是否前进一个单位 $$$(x, 0) \to (x+1,0)$$$,或者停留一次 $$$(x, 0) \to (x, 0)$$$。

因为你身手敏捷,所以我们认为你和自行车的移动都是同时瞬间完成的。因此,每一秒进行移动后,只要你位于没有车的区域,就是合法的移动。

为了尽快去到饭堂,你希望知道,最少需要花费多少单位的时间,才能抵达终点。

Input

第一行一个整数 $$$n$$$ ($$$1\le n\le 10^5$$$),代表车道数。

接下来 $$$n$$$ 行,第 $$$i$$$ 行两个整数 $$$l_i, r_i$$$ ($$$0\le l\le r\le 10^{12}$$$),表示第 $$$i$$$ 条车道没有车的区域。

Output

如果可以到达终点,请输出一个整数,表示最少需要花费多少单位的时间;如果无法到达终点,请输出 $$$-1$$$。

Examples
Input
4
1 2
2 3
4 5
5 6
Output
6
Input
4
1 2
3 5
1 6
1 2
Output
-1
Input
1
0 0
Output
-1
Input
1
1000000000000 1000000000000
Output
1000000000001
Note

对于第一组样例,一种合法的方案是:前进、前进、停留、前进、前进、前进。