You are given a string S.

Takahashi can insert the character `A` at any position in this string any number of times.

Can he change S into `AKIHABARA`?

Constraints

* 1 \leq |S| \leq 50
* S consists of uppercase English letters.

Input

Input is given from Standard Input in the following format:


S


Output

If it is possible to change S into `AKIHABARA`, print `YES`; otherwise, print `NO`.

Examples

Input

KIHBR


Output

YES


Input

AKIBAHARA


Output

NO


Input

AAKIAHBAARA


Output

NO
#include <iostream>
#include <vector>
using namespace std;
int main(void) {
	string S;
	cin >> S;
	vector<string> a =
	{
		"KIHBR","KIHBRA","KIHBAR","KIHBARA",
		"KIHABR","KIHABRA","KIHABAR","KIHABARA",
		"AKIHBR","AKIHBRA","AKIHBAR","AKIHBARA",
		"AKIHABR","AKIHABRA","AKIHABAR","AKIHABARA"
	};
	bool ok = false;
	for (int i = 0; i < 16; ++i) {
		if (a[i] == S) ok = true;
	}
	cout << (ok ? "YES" : "NO") << endl;
	return 0;
}