#include "bits/stdc++.h"
#include<unordered_map>
#pragma warning(disable:4996)
using namespace std;

const int My_Inf=2147483647;
const long long int My_LInf=9223372036854775807;

int main() {
	string st; cin >> st;
	string stack;
	bool ok = true;
	for (int i = 0; i < st.size(); ++i) {
		stack.push_back(st[i]);
		while (stack.size() >= 3) {
			if (stack.substr(stack.size() - 3, 3) == "mew") {
				stack.pop_back();
				stack.pop_back();
				stack.pop_back();
			}
			else {
				break;
			}
		}
		if (stack.empty() && i != st.size() - 1) {
			ok = false;
			break;
		}
	}
	if (stack.size()||!ok) {
		cout << "Rabbit" << endl;
	}
	else {
		cout << "Cat" << endl;
	}
	return 0;
}
### Prompt

In cpp, your task is to solve the following problem:

Example

Input

mmemewwemeww


Output

Cat

### Response

```cpp
#include "bits/stdc++.h"
#include<unordered_map>
#pragma warning(disable:4996)
using namespace std;

const int My_Inf=2147483647;
const long long int My_LInf=9223372036854775807;

int main() {
	string st; cin >> st;
	string stack;
	bool ok = true;
	for (int i = 0; i < st.size(); ++i) {
		stack.push_back(st[i]);
		while (stack.size() >= 3) {
			if (stack.substr(stack.size() - 3, 3) == "mew") {
				stack.pop_back();
				stack.pop_back();
				stack.pop_back();
			}
			else {
				break;
			}
		}
		if (stack.empty() && i != st.size() - 1) {
			ok = false;
			break;
		}
	}
	if (stack.size()||!ok) {
		cout << "Rabbit" << endl;
	}
	else {
		cout << "Cat" << endl;
	}
	return 0;
}
```