2216: 最早时间

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

飞飞和壮壮在同一时刻从1 号结点出发。整个路线图里面有 N 个结点,结点的编号是 1 到 N。规定他俩只能从编号小的结点走到编号大的结点。这些结点之间有 M 条边,每两个结点之间最多只有一条路。


 他们经过同一条路所需要花费的时间可能是不一样的,例如,飞飞花费 10 个单位的时间从 1 号结点走到 2 号结点,而壮壮可能要花费 20 个单位的时间从 1 号结点走到 2 号结点。在他俩没有走到终点 N 号结点以前,中间的过程中都不能有丝毫的停留。


 请他们计算他们能够同时到达终点 N 号结点的最早时间。 

Input

第一行输入两个正整数 N M

接下来 M 行,每行 4 个正整数 XYZ1Z2X Y 表示结点 X 到结点 Y 之间有一条路,保证 X<YZ1 表示飞飞通过这条路所需要花费的时间,Z2 表示壮壮通过这条路所需要花费的时间。


Output

输出他们能够同时到达 N 号结点的最早时间,如果不能同时到达,输出“IMPOSSIBLE”不包括引号。

Sample Input Copy

3 3
1 3 1 2
1 2 1 2
2 3 1 2

Sample Output Copy

2

HINT

样例说明 飞飞走 1->2->3 花费 2 个单位的时间,壮壮走 1->3 花费2个单位的时间,他们能够同时到达终点。


 数据规模 1<=N<=100,1<=Z1,Z2<=100。