#include <stdio.h>
#include <math.h>

#define NMAX 201

const double EPS = 1.0e-10;

double fd;
double dif[NMAX][NMAX];
int n;

int cmp(double a, double b) {
	if (fabs(a-b)<EPS) {
		return 0;
	} else if (a>b) {
		return 1;
	} else {
		return -1;
	}
}

struct tponto {
	int x;
	int y;
};

double diferenca(struct tponto a, struct tponto b) {
	int x, y;
	double d;

	x=b.x-a.x;
	y=b.y-a.y;
	d=sqrt(pow(x, 2)+pow(y, 2));

	return d;
}

double max(double a, double b) {
	if (cmp(a, b)<0) {
		return b;
	} else {
		return a;
	}
}

int main() {
	int scenario=1, k, i, j, v, w;
	struct tponto pedra[NMAX];

	while (scanf("%d", &n)&&n!=0) {
		fd=1000001;
		printf("Scenario #%d\n", scenario++);
		for (i=0; i<n; i++) {
			scanf("%d %d", &pedra[i].x, &pedra[i].y);
		}
		for (i=0; i<n; i++) {
			for (j=0; j<n; j++) {
				if (i!=j) {
					dif[i][j]=diferenca(pedra[i], pedra[j]);
				}
			}
		}
		for (k=0; k<n; k++) {
			for (i=0; i<n; i++) {
				for (j=0; j<n; j++) {
					if (max(dif[i][k], dif[k][j])<dif[i][j]) {
						dif[i][j]=max(dif[i][k], dif[k][j]);
					}
				}
			}
		}
		printf("Frog Distance = %.3lf\n\n", dif[0][1]);
	}

	return 0;
}

