#include<iostream>
#include<sstream>
#include<string>
#include<vector>
#include<list>
#include<set>
#include<map>
#include<stack>
#include<queue>
#include<algorithm>
#pragma warning(disable:4996)
using std::cin;
using std::cout;
using std::endl;
using std::stringstream;
using std::string;
using std::vector;
using std::list;
using std::pair;
using std::set;
using std::multiset;
using std::map;
using std::multimap;
using std::stack;
using std::queue;
using std::priority_queue;
using std::sort;
using std::next_permutation;
bool compare(const pair<double,double>&a, const pair<double, double>&b)
{
if (a.first != b.first)
{
return a.first < b.first;
}
return a.second < b.second;
}
double sum(const vector<pair<double, double>>&position)
{
double ret = 0.0;
for (size_t i = 0; i != position.size()-1; i++)
{
//cout << sqrt(pow(fabs(position[i].first - position[i + 1].first), 2) + pow(fabs(position[i].second - position[i + 1].second), 2)) + 16.0 << endl;
ret += sqrt(pow(fabs(position[i].first - position[i + 1].first), 2) + pow(fabs(position[i].second - position[i + 1].second), 2))+16.0;
}
return ret;
}
int main()
{
//freopen("input.txt", "r", stdin);
//freopen("output.txt", "w", stdout);
int n,count=0;
while (cin >> n)
{
if (!n)
{
break;
}
vector<pair<double, double>>position;
while (n--)
{
double x, y; cin >> x >> y;
position.push_back({ x,y });
}
sort(position.begin(), position.end(), compare);
auto i = n*(n - 1) / 2;
double length = 2000000000;
auto mini = position;
do
{
auto curlength = sum(position);
if (length > curlength)
{
length = curlength;
mini = position;
}
} while (next_permutation(position.begin(), position.end()));
printf("**********************************************************\n");
printf("Network #%d\n", ++count);
for (size_t i = 0; i != mini.size() - 1; i++)
{
printf("Cable requirement to connect (%d,%d) to (%d,%d) is %.2lf feet.\n",
(int)mini[i].first, (int)mini[i].second, (int)mini[i + 1].first, (int)mini[i + 1].second,
sqrt(pow(fabs(mini[i].first - mini[i + 1].first), 2) + pow(fabs(mini[i].second - mini[i + 1].second), 2)) + 16.0
);
}
printf("Number of feet of cable required is %.2lf.\n",sum(mini));
}
return 0;
}