热带岛屿国家皮科内西亚(Piconesia)以其美丽的海滩、茂密的植被、可可和咖啡种植园以及全年宜人的气候而闻名。这个天堂般的地方正被考虑作为 ACM 国际大学生程序设计竞赛(ICPC)全球总决赛的未来举办地(或者至少是执行委员会的度假胜地)。这里只有一个小问题:这个岛屿非常难以到达。
目前,从最近的机场到达该岛最快的方式需要三天,且需要结合渔船、油轮、皮划艇和潜水艇。为了让参加 ICPC 全球总决赛变得稍微容易一些,并带动岛上的旅游业,皮科内西亚计划建造其第一个机场。
由于更长的跑道可以容纳更大的飞机,皮科内西亚决定在岛上建造尽可能长的跑道。遗憾的是,他们无法确定这个跑道应该建在哪里。也许你能帮帮忙?
对于这个问题,我们将皮科内西亚的边界建模为一个多边形。给定这个多边形,你需要计算可以建在岛上的最长跑道(即直线段)的长度。跑道不得穿过海洋,但可以接触或沿着岛屿的边界延伸。图 A.1 展示了对应于第一个样例输入的示例。
图 A.1:建模为多边形的岛屿。最长的可能跑道显示为粗线。
输入格式
输入的第一行包含一个整数 $n$ ($3 \le n \le 200$),表示多边形的顶点数。接下来有 $n$ 行,每行包含两个整数 $x$ 和 $y$ ($|x|, |y| \le 10^6$),给出了多边形顶点的坐标 $(x, y)$,按逆时针顺序排列。该多边形是简单多边形,即其顶点各不相同,且多边形的任意两条边除了在公共顶点处相交外,不相交也不接触。此外,任意两条相邻的边不共线。
输出格式
输出能够容纳在多边形内的最长直线段的长度,绝对或相对误差不超过 $10^{-6}$。
样例
样例输入 1
7 0 20 40 0 40 20 70 50 50 70 30 50 0 50
样例输出 1
76.157731059
样例输入 2
3 0 2017 -2017 -2017 2017 0
样例输出 2
4510.149110617