#include <bits/stdc++.h>
using namespace std;
double r = 0.00000000000, d = DBL_MAX;
int m, n, p, q;
bool b = 0;
void yf(int x, int y)
{
int t = 2;
while (t <= min(x, y) / 2 && !(x%t) && !(y%t)) {
x /= t, y /= t;
if (x%t || y%t) ++t;
}
if (x == y) p = q = 1;
else p = x, q = y;
}
int yfp(int x, int y)
{
int t = 2;
while (t <= min(x, y) / 2 && !(x%t) && !(y%t)) {
x /= t, y /= t;
if (x%t || y%t) ++t;
}
if (x == y) return 1;
else return x;
}
int main()
{
freopen("P1298.txt", "r", stdin);
scanf("%d%d", &m, &n); scanf("%lf", &r);
for (int k = 1; k <= n; ++k) {
bool t = 1;
if (abs(-(double)(int)(k*r)/(double)k + r) < d && yfp((int)(k*r),k) <= m) {
d = abs(-((double)(int)(k*r)/(double)k - r));
yf((int)(k*r), k);
b = 0, t = 0;
}
if (abs((double)(int)(k*r+1)/(double)k - r) < d && yfp((int)(k*r+1),k) <= m) {
d = abs((double)(int)(k*r+1)/(double)k - r);
yf((int)(k*r+1), k);
b = 0, t = 0;
}
if (t && ((-(double)(int)(k*r)/(double)k + r - d <= 5e-17 && (double)(int)(k*r)/(double)k != (double)p/q && yfp((int)(k*r),k) <= m) ||
((double)(int)(k*r+1)/(double)k - r - d <= 5e-17 && (double)(int)(k*r+1)/(double)k != (double)p/q && yfp((int)(k*r+1),k) <= m))) b = 1;
}
if (b) printf("TOO MANY\n");
else printf("%d/%d\n", p, q);
return 0;
}