在物理课上,每个学生都必须完成一份学期作业。你选择研究一个实验,该实验旨在探究一种被称为“红球”(red balls)的稀有不稳定粒子的性质。红球粒子会沿直线传播,直到被镜子反射。
我们的实验可以看作是几个“单次反射镜”,它们可以被视为二维平面上的(可能无限长的)直线。单次反射镜的特性是:无论粒子从哪个方向射来,它仅在粒子第一次撞击该镜子时对其进行反射。在此之后,该镜子将总是允许该粒子直接穿过。
反射时,粒子接近反射点的直线与反射镜法线的夹角,等于粒子离开反射点的直线与法线的夹角(即入射角等于反射角)。如果粒子到达了两个镜子的交点,且这两个镜子在此时都本应反射该粒子,则粒子会解体。
镜子的布局由你的老师设计,你的任务是找到所有发射方向,使得从给定的起点发射的粒子能够到达指定的终点。
输入格式
第一行包含一个非负整数 $N$ ($0 \le N \le 8$),表示镜子的数量。
第二行包含四个整数 $S_x, S_y, E_x, E_y$,表示起点和终点的坐标。
接下来的 $N$ 行,每行包含四个整数 $A_x, A_y, B_x, B_y$,描述定义第 $i$ 面镜子所在直线的两个点。
所有输入坐标均在 $-100$ 到 $100$ 之间(含边界)。起点和终点是不同的。起点和终点到任何镜子的距离均不为零。
保证输入数据中,任何合法的解都不需要粒子在距离“当前反射镜与其他仍能反射该粒子的镜子的交点”小于 $10^{-4}$ 的位置发生反射。
输出格式
输出一行,包含一个整数,表示从起点出发能使粒子到达终点的不同发射方向的数量。
样例
输入样例 1
2 2 3 4 2 2 2 3 3 1 4 3 4
输出样例 1
1
输入样例 2
3 2 3 5 2 1 3 1 1 2 4 4 2 5 4 6 5
输出样例 2
1
输入样例 3
1 0 0 4 0 0 4 4 4
输出样例 3
2
说明
图 1:样例 1、2 和 3 的示意图。