2402. 2-SAT 问题

给定 $n$ 个还未赋值的布尔变量 $x_1 \sim x_n$。

现在有 $m$ 个条件,每个条件的形式为 “$x_i$ 为 $0/1$ $x_j$ 为 $0/1$ 至少有一项成立”,例如 “$x_1$ 为 $1$ 或 $x_3$ 为 $0$”、“$x_8$ 为 $0$ 或 $x_4$ 为 $0$” 等。

现在,请你对这 $n$ 个布尔变量进行赋值($0$ 或 $1$),使得所有 $m$ 个条件能够成立。

输入格式

第一行包含两个整数 $n,m$。

接下来 $m$ 行,每行包含四个整数 $i,a,j,b$,用来描述一个条件,表示 “$x_i$ 为 $a$ 或 $x_j$ 为 $b$”。

输出格式

如果问题有解,则第一行输出 POSSIBLE,第二行输出 $n$ 个整数表示赋值后的 $n$ 个变量 $x_1 \sim x_n$ 的值($0$ 或 $1$),整数之间用单个空格隔开。

如果问题无解,则输出一行 IMPOSSIBLE 即可。

如果答案不唯一,则输出任意一种正确答案即可。

数据范围

$1 \le n,m \le 10^6$,
$1 \le i,j \le n$,
$0 \le a,b \le 1$

输入样例:

3 2
1 1 3 1
2 0 3 0

输出样例:

POSSIBLE
1 1 0