Irvanistan and Jikjikestan are two neighbouring countries that have fought several wars over their border. Tens of thousands of people died, and neither side ever accepted the border the other claimed.
The leaders who now run both countries have accepted a United Nations proposal to settle the dispute. The proposal is to build a shorter and simpler border that a fair computer program computes.
The current border P is a set of non-crossing line segments, and each segment joins two border points. Call these points p0,p1,…,pN−1. So P consists exactly of the segments joining pi and pi+1 for every i with 0≤i<N−1.
The United Nations asks for a new border C made of points c0,c1,…,cK with c0=p0 and cK=pN−1, subject to the two constraints below.

Find the shortest possible length of a new border C that satisfies both constraints.
The input holds several test cases. The first line of a test case contains the number of points N (2≤N≤100) and an integer D (0≤D≤500). Each of the next N lines contains two integers xi and yi (−10000≤xi,yi≤10000), the coordinates of the point pi. The coordinates increase, that is, xi<xi+1 and yi<yi+1 for every i. The input ends with a line that starts with 0.
For each test case print one line with the shortest possible length of the new border, rounded to two digits after the decimal point. Always print both digits. No answer in the input data lies on a rounding boundary.