#include <iostream>
#include <string>
#define INF 100000
using namespace std;

int check(string s, int length, int point) {
    if (s[point] != 'm') return INF;
    point++;
    
    if (s[point] != 'e') {
        point = check(s, length, point);
        if (point == INF) return INF;
    }
    point++;

    if (s[point] != 'w') {
        point = check(s, length, point);
        if (point == INF) return INF;
        if (s[point] != 'w') return INF;
    }
    point++;

    return point;
}

int main() {
    string s;
    cin >> s;

    int flag = check(s, s.length(), 0);
    if (flag == INF || flag < s.length()) cout << "Rabbit" << endl;
    else cout << "Cat" << endl;

    return 0;
}
### Prompt

Please create a solution in cpp to the following problem:

Example

Input

mmemewwemeww


Output

Cat

### Response

```cpp
#include <iostream>
#include <string>
#define INF 100000
using namespace std;

int check(string s, int length, int point) {
    if (s[point] != 'm') return INF;
    point++;
    
    if (s[point] != 'e') {
        point = check(s, length, point);
        if (point == INF) return INF;
    }
    point++;

    if (s[point] != 'w') {
        point = check(s, length, point);
        if (point == INF) return INF;
        if (s[point] != 'w') return INF;
    }
    point++;

    return point;
}

int main() {
    string s;
    cin >> s;

    int flag = check(s, s.length(), 0);
    if (flag == INF || flag < s.length()) cout << "Rabbit" << endl;
    else cout << "Cat" << endl;

    return 0;
}
```