#include <bits/stdc++.h>
#define int long long
#define endl '\n'
#define FOR(i, a, n) for (int i = (a); i < (n); ++i)
#define REP(i, n) FOR(i, 0, n)
using namespace std;

bool expr(string s, int &i) {
    if (s[i] != 'm') return true;
    ++i;
    if (!expr(s, i)) return false;
    if (s[i] != 'e') return false;
    ++i;
    if (!expr(s, i)) return false;
    if (s[i] != 'w') return false;
    ++i;
    return true;
}

void _main() {
    string s;
    cin >> s;
    int i = 0;
    bool ans = expr(s, i);
    cout << (ans && (i == s.size()) ? "Cat" : "Rabbit") << endl;
}

signed main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    cout << fixed << setprecision(10);
    _main();
    return 0;
}

### Prompt

Construct a Cpp code solution to the problem outlined:

Example

Input

mmemewwemeww


Output

Cat

### Response

```cpp
#include <bits/stdc++.h>
#define int long long
#define endl '\n'
#define FOR(i, a, n) for (int i = (a); i < (n); ++i)
#define REP(i, n) FOR(i, 0, n)
using namespace std;

bool expr(string s, int &i) {
    if (s[i] != 'm') return true;
    ++i;
    if (!expr(s, i)) return false;
    if (s[i] != 'e') return false;
    ++i;
    if (!expr(s, i)) return false;
    if (s[i] != 'w') return false;
    ++i;
    return true;
}

void _main() {
    string s;
    cin >> s;
    int i = 0;
    bool ans = expr(s, i);
    cout << (ans && (i == s.size()) ? "Cat" : "Rabbit") << endl;
}

signed main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    cout << fixed << setprecision(10);
    _main();
    return 0;
}

```