#include <iostream>
#include <string>

using namespace std;

// 最初の入力：イニング数
// 1イニングは3アウトになるまで
// シングルヒットの場合
// 1つずつ押し出されるため、走者は消えない。
// 3塁に走者がいる場合は1点を返す。
// ホームランの場合
// 1点＋走者の数。走者はすべて消滅

// 塁の状態を管理する
struct Diamond {
	bool first;
	bool second;
	bool third;
	Diamond() : first(), second(), third(){};

	int onHit() {
		int result = 0;
		if (third != false) {
			result = 1;
		}
		if (second != false) {
			third = true;
		}
		if (first != false) {
			second = true;
		}
		first = true;
		return result;
	}
	int onHomeRun() {
		// 最低でも1点なので1で初期化
		int result = 1;
		if (third != false) {
			result++;
		}
		if (second != false) {
			result++;
		}
		if (first != false) {
			result++;
		}
		first = false;
		second = false;
		third = false;
		return result;
	}
};

int main() {

	int n;

	cin >> n;
	for (int i = 0; i < n; ++i) {
		int out_count = 0;
		int point = 0;
		Diamond dia;
		while (out_count < 3) {
			string temp;
			cin >> temp;

			if (temp == "HIT") {
				point += dia.onHit();
			}
			else if (temp == "HOMERUN") {
				point += dia.onHomeRun();
			}
			else {
				// その他をOUTとしておく。
				out_count++;
			}
		}
		cout << point << endl;
	}
	return 0;
}