#include<iostream>
#include<string>
#include<vector>
#include<algorithm>
#include<queue>
#include<map>
#include<set>
using namespace std;
#define REP(i, a, n) for(int i=a; i<n; i++)
#define RREP(i, a, n) for(int i=n-1; i>=a; i--)
#define INF 100000000
#define ll long long

int main()
{
	int cat_flag = false;
	string S;
	cin >> S;

	if (S == "") cat_flag = true;
	else if (S.size() % 3 == 0) {
		bool flag = true;

		while (flag) {
			flag = false;
			
			int x = S.find("mew", 1);
			if (x != -1) {
				if (x < S.size() - 3) {
					S.replace(x, 3, "");
					flag = true;
				}
			}
		}
		if (S == "mew") cat_flag = true;
	}

	if (cat_flag) cout << "Cat" << endl;
	else cout << "Rabbit" << endl;
	return 0;
}
### Prompt

Create a solution in CPP for the following problem:

Example

Input

mmemewwemeww


Output

Cat

### Response

```cpp
#include<iostream>
#include<string>
#include<vector>
#include<algorithm>
#include<queue>
#include<map>
#include<set>
using namespace std;
#define REP(i, a, n) for(int i=a; i<n; i++)
#define RREP(i, a, n) for(int i=n-1; i>=a; i--)
#define INF 100000000
#define ll long long

int main()
{
	int cat_flag = false;
	string S;
	cin >> S;

	if (S == "") cat_flag = true;
	else if (S.size() % 3 == 0) {
		bool flag = true;

		while (flag) {
			flag = false;
			
			int x = S.find("mew", 1);
			if (x != -1) {
				if (x < S.size() - 3) {
					S.replace(x, 3, "");
					flag = true;
				}
			}
		}
		if (S == "mew") cat_flag = true;
	}

	if (cat_flag) cout << "Cat" << endl;
	else cout << "Rabbit" << endl;
	return 0;
}
```