筱玛爱语文
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 512 M,其他语言1024 M
64bit IO Format: %lld

题目描述

筱玛是一个热爱语文的好筱玛。在语文课上,老师带领同学们一起玩词语接龙。

作为语文素养大师,词语接龙这样简单的游戏当然不能满足筱玛。于是他想到了如下一个问题:

总共有个汉字,分别用整数表示。每个词语由两个汉字组成,这样总共有个词语。其中有个词语属于脏话,不能使用。

为了体现自己高超的语文素养,筱玛想知道,有多少种词语接龙的方案,使得所有的词语出现恰好一次。

输入描述:

第一行两个整数

接下来行,每行两个整数,表示一个脏话。

输出描述:

一个整数表示答案,答案对取模。

示例1

输入

复制
3 3
1 3
3 1
3 2

输出

复制
2

说明

一种合法的方案为:

另一种合法的方案为:

备注:

对于100%的测试数据,