#P3017. 过家家

过家家

说明

有2n个小学生来玩过家家游戏,其中有n个男生,编号为1到n,另外n个女生,编号也是1到n.每一个女生可以先选择一个和她不吵嘴的男生来玩,除此之外,如果编号为X的女生的朋友(也是女生,且编号为Y)不和编号为Z的男生吵嘴,那么X也可以选择Z。此外,朋友关系是可以传递的,比如a和b是朋友,b和c是朋友,那么我们可以认为a和c也是朋友。

当每一位女生都选择了玩伴,那么他们会开始新一轮游戏。在每一轮后,每个女生都会开始去找一个新的男生做玩伴(以前没选过)。而且每一个女生最多能强制k个男生接受,无论他们以前是否吵嘴。

现在你的任务就是确定这2n个小学生最多能玩几轮游戏。

输入格式

第一行有4个整数n,m,k,f(3<=n<=250,0<m<n*n,0<=f<n).

n表示有2n个小学生,其中n个男生n个女生。

接下来m行,每行包含2个数字a,b表示编号为a的女生和编号为b的男生从没吵嘴过。

再接下来f行,每行包含2个数字c,d表示编号为c的女生和编号为d的女生是朋友。

输出格式

对于每组数据,输出一个整数,表示2n个小学生最多能玩几轮。

样例

4 5 1 2
1 1
2 3
3 2
4 2
4 4
1 4
2 3
3