#P1674. 灯带

灯带

灯带

五月二十四日,是小 X 的生日。为了庆祝他的生日,他的朋友们为他准备了一个生日聚会。这个聚会上有一样非常重要的道具——灯带。这个灯带上需要放 nn 个灯(不能有位置不放),每个灯可以是红、绿、蓝三种颜色之一。为了尽可能地降低成本,朋友们只分别准备了 r,g,br, g, b 个红、绿、蓝色灯,且恰好一共准备了 nn 个灯。

但是,小 X 对灯带是有自己的喜好的。具体来说,他的喜好包含 mm 对数 (l1,r1),,(lm,rm)(l_1, r_1), \dots, (l_m, r_m),他希望对于每一个 ii,第 liril_i \sim r_i 个灯当中包含最多两种不同的颜色。保证对任意 1im1 \le i \le m,都有 1lirin1 \le l_i \le r_i \le n,且对任意 1i<jm1 \le i < j \le m,都有 ri<ljr_i < l_j 或者 rj<lir_j < l_i(即区间 [li,ri][l_i, r_i][lj,rj][l_j, r_j] 不交)。

现在小 X 的朋友们需要构造一个方案满足小 X 的喜好。但准备的灯实在是太多了,朋友们很难很快想出一种方案,于是来求助于会编程的你。请你帮帮他们,构造一种满足小 X 的喜好的灯带方案,或者告诉他们方案不存在。


输入

本题包含多组数据。

第一行一个整数 T (1T105)T\ (1 \le T \le 10^5),表示数据组数。

对于每组数据: 第一行两个正整数 $n, m, r, g, b\ (1 \le m \le n \le 10^5, 0 \le r, g, b \le n, r + g + b = n)$,分别表示灯带长度和小 X 喜好对应的 (l,r)(l, r) 数量,以及红、绿、蓝色灯的数量。

接下来 mm 行,第 ii 行包含两个正整数 li,ri (1lirin)l_i, r_i\ (1 \le l_i \le r_i \le n)。保证对任意 1i<jm1 \le i < j \le m,都有 ri<ljr_i < l_j 或者 rj<lir_j < l_i

保证每组数据的 nn 的和不超过 2×1052 \times 10^5


输出

对于每组数据,如果方案存在,则输出包含一行一个只由 R, G, B 构成的长度为 nn 字符串,其中 R, G, B 分别表示红、绿、蓝色灯,表示方案。你需要保证字符串当中 R, G, B 的数量分别恰好是每组数据对应的 r,g,br, g, b。若方案不存在,则输出 -1


样例

3
3 2 1 1 1
1 2
3 3
4 1 1 1 2
1 3
6 1 2 2 2
1 5
BGR
BBGR
-1