200259 - 抓住卡特

Time Limit

1000 毫秒

Memory Limit

128 MB

通过次数

2

提交次数

2

一位喵星人在墙角处睡着了,现在有一些安装柱,两根安装位之间可以安装卡特网(每个安装柱最多允许与其他4个安装位连接),现在需要把喵星人围起来。为了便于计算,我们把问题抽象为数学模型:建立一个直角坐标系,x轴的正方向和y轴的正方向代表墙,卡特在坐标原点,在n个已知点中选择一些,和坐标轴形成一个封闭的多边形即可围住卡特。

请你求出能构成的所有封闭的多边形中,除了墙面部分的最短长度,即所需要的卡特网的最短长度。

Input

第一行,一个正整数n,表示安装位的个数。

接下来n行,每行两个浮点数x,y分别表示安装柱的横纵坐标。

对于100%的数据:

1\le n \le 10^6

0 \le x,y \le 10^9

x+y>0

Output

一行一个保留小数点后10位有效数字的实数,表示所需卡特网的最小长度。

但若无法与墙面形成闭合图形则输出"Cat scratches!"。

Examples

Input

3
0.0 1.0
1.0 0.0
1.0 1.0

Output

1.4142135624

Input

2
1.0 0.0
0.1 1.0

Output

Cat scratches!