#include <iostream>
#include <cstdio>
#include <cmath>
#include <vector>
#include <algorithm>
#include <utility>
#include <map>
#include <set>
#include <string>
#include <cstring>
#include <queue>
#define rf freopen("in.in", "r", stdin)
#define wf freopen("out.out", "w", stdout)
#define rep(i, s, n) for(int i=int(s); i<=int(n); ++i)
using namespace std;
const int mx = 1e5 + 10, mod = 1e9+7;
int n, m;
int buying[1111][1111], selling[1111][1111];
long double dp[1111][1111][2];
long long d;
int main()
{
//rf;// wf;
ios::sync_with_stdio(0);
cin >> n >> m >> d;
for(int i = 0; i<n; ++i)
{
for(int j = 0; j<m; ++j)
cin >> selling[j][i] >> buying[j][i];
}
for(int i = 0; i<n; ++i)
dp[0][i][0] = d,
dp[0][i][1] = 0;
for(int t = 1; t <= m; ++t)
{
for(int i = 0; i<n; ++i)
{
dp[t][i][0] = dp[t-1][i][0];
dp[t][i][1] = dp[t-1][i][1];
for(int dis = 1; dis <= 1; ++dis)
{
if(i+dis < n)
{
dp[t][i][0] = max(dp[t][i][0], dp[t-dis][i+dis][0]);
dp[t][i][1] = max(dp[t][i][1], dp[t-dis][i+dis][1]);
dp[t][i][0] = max(dp[t][i][0], dp[t-1][i][1]*buying[t-1][i]);
dp[t][i][1] = max(dp[t][i][1], dp[t-1][i][0]/selling[t-1][i]);
}
if(i-dis >= 0)
{
dp[t][i][0] = max(dp[t][i][0], dp[t-dis][i-dis][0]);
dp[t][i][1] = max(dp[t][i][1], dp[t-dis][i-dis][1]);
dp[t][i][0] = max(dp[t][i][0], dp[t-1][i][1]*buying[t-1][i]);
dp[t][i][1] = max(dp[t][i][1], dp[t-1][i][0]/selling[t-1][i]);
}
}
}
}
long double ans = 0;
for(int i = 0; i<n; ++i)
ans = max(ans, dp[m][i][0]);
if(ans > 1e18)
printf("Quintillionnaire\n");
else
printf("%.7Lf\n", ans);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGlvPgojaW5jbHVkZSA8Y21hdGg+CiNpbmNsdWRlIDx2ZWN0b3I+CiNpbmNsdWRlIDxhbGdvcml0aG0+CiNpbmNsdWRlIDx1dGlsaXR5PgojaW5jbHVkZSA8bWFwPgojaW5jbHVkZSA8c2V0PgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8Y3N0cmluZz4KI2luY2x1ZGUgPHF1ZXVlPgojZGVmaW5lIHJmIGZyZW9wZW4oImluLmluIiwgInIiLCBzdGRpbikKI2RlZmluZSB3ZiBmcmVvcGVuKCJvdXQub3V0IiwgInciLCBzdGRvdXQpCiNkZWZpbmUgcmVwKGksIHMsIG4pIGZvcihpbnQgaT1pbnQocyk7IGk8PWludChuKTsgKytpKQp1c2luZyBuYW1lc3BhY2Ugc3RkOwpjb25zdCBpbnQgbXggPSAxZTUgKyAxMCwgbW9kID0gMWU5Kzc7CgppbnQgbiwgbTsKaW50IGJ1eWluZ1sxMTExXVsxMTExXSwgc2VsbGluZ1sxMTExXVsxMTExXTsKbG9uZyBkb3VibGUgZHBbMTExMV1bMTExMV1bMl07CmxvbmcgbG9uZyBkOwoKaW50IG1haW4oKQp7CgkvL3JmOy8vIHdmOwoJaW9zOjpzeW5jX3dpdGhfc3RkaW8oMCk7CgoJY2luID4+IG4gPj4gbSA+PiBkOwoJZm9yKGludCBpID0gMDsgaTxuOyArK2kpCgl7CgkJZm9yKGludCBqID0gMDsgajxtOyArK2opCgkJCWNpbiA+PiBzZWxsaW5nW2pdW2ldID4+IGJ1eWluZ1tqXVtpXTsKCX0KCglmb3IoaW50IGkgPSAwOyBpPG47ICsraSkKCQlkcFswXVtpXVswXSA9IGQsCgkJZHBbMF1baV1bMV0gPSAwOwoKCWZvcihpbnQgdCA9IDE7IHQgPD0gbTsgKyt0KQoJewoJCWZvcihpbnQgaSA9IDA7IGk8bjsgKytpKQoJCXsKCQkJZHBbdF1baV1bMF0gPSBkcFt0LTFdW2ldWzBdOwoJCQlkcFt0XVtpXVsxXSA9IGRwW3QtMV1baV1bMV07CgoJCQlmb3IoaW50IGRpcyA9IDE7IGRpcyA8PSAxOyArK2RpcykKCQkJewoJCQkJaWYoaStkaXMgPCBuKQoJCQkJewoJCQkJCWRwW3RdW2ldWzBdID0gbWF4KGRwW3RdW2ldWzBdLCBkcFt0LWRpc11baStkaXNdWzBdKTsKCQkJCQlkcFt0XVtpXVsxXSA9IG1heChkcFt0XVtpXVsxXSwgZHBbdC1kaXNdW2krZGlzXVsxXSk7CgoJCQkJCWRwW3RdW2ldWzBdID0gbWF4KGRwW3RdW2ldWzBdLCBkcFt0LTFdW2ldWzFdKmJ1eWluZ1t0LTFdW2ldKTsKCQkJCQlkcFt0XVtpXVsxXSA9IG1heChkcFt0XVtpXVsxXSwgZHBbdC0xXVtpXVswXS9zZWxsaW5nW3QtMV1baV0pOwoJCQkJfQoJCQkJaWYoaS1kaXMgPj0gMCkKCQkJCXsKCQkJCQlkcFt0XVtpXVswXSA9IG1heChkcFt0XVtpXVswXSwgZHBbdC1kaXNdW2ktZGlzXVswXSk7CgkJCQkJZHBbdF1baV1bMV0gPSBtYXgoZHBbdF1baV1bMV0sIGRwW3QtZGlzXVtpLWRpc11bMV0pOwoKCQkJCQlkcFt0XVtpXVswXSA9IG1heChkcFt0XVtpXVswXSwgZHBbdC0xXVtpXVsxXSpidXlpbmdbdC0xXVtpXSk7CgkJCQkJZHBbdF1baV1bMV0gPSBtYXgoZHBbdF1baV1bMV0sIGRwW3QtMV1baV1bMF0vc2VsbGluZ1t0LTFdW2ldKTsKCQkJCX0KCQkJfQoJCX0KCX0KCglsb25nIGRvdWJsZSBhbnMgPSAwOwoJZm9yKGludCBpID0gMDsgaTxuOyArK2kpCgkJYW5zID0gbWF4KGFucywgZHBbbV1baV1bMF0pOwoKCWlmKGFucyA+IDFlMTgpCgkJcHJpbnRmKCJRdWludGlsbGlvbm5haXJlXG4iKTsKCWVsc2UKCQlwcmludGYoIiUuN0xmXG4iLCBhbnMpOwoJcmV0dXJuIDA7Cn0=