Ural 的比赛通常包含许多几何题。许多参赛者并不掩饰他们对这种不平衡的不满。尽管如此,我们决定不打破传统,给你们带来一场不平衡的比赛。让我们开始吧!
考虑平面上一组点的迭代过程。每次迭代包含三个步骤:
- 连接每一对不同的点,画出直线。
- 找出所有非平行直线对的交点。
- 将初始点集与所有交点合并,然后回到第一步。
每次迭代后,点的数量要么增加,要么保持不变。
给定一组点。迭代过程会一直重复,直到点的数量不再增加为止。请问在该迭代过程结束后,集合中会有多少个点?
输入格式
第一行包含一个整数 $n$ ($1 \le n \le 300$)。接下来的输入描述了 $n$ 个不同的点。对于每个点,给出了一对绝对值不超过 $10^8$ 的整数坐标。
输出格式
如果该过程是无限的,输出 “oo”(两个小写拉丁字母 ‘o’),否则输出过程结束后集合中点的数量。
样例
输入 1
4 0 0 0 1 1 0 1 1
输出 1
5