#include <bits/stdc++.h>
using namespace std;
int TWO;
int N;
char buf[10010];
string house[4] = {"Gryffindor", "Hufflepuff", "Ravenclaw", "Slytherin"};
int a[10010];
set<long long> dp[10010];
set<string> ans;
void func(long long st, int pos) {
  long long x = st;
  int a1 = (x & TWO);
  x >>= 14;
  int a2 = (x & TWO);
  x >>= 14;
  int a3 = (x & TWO);
  x >>= 14;
  int a4 = (x & TWO);
  x >>= 14;
  if (pos == N) {
    if (a1 <= a2 && a1 <= a3 && a1 <= a4) ans.insert(house[0]);
    if (a2 <= a1 && a2 <= a3 && a2 <= a4) ans.insert(house[1]);
    if (a3 <= a1 && a3 <= a2 && a3 <= a4) ans.insert(house[2]);
    if (a4 <= a1 && a4 <= a2 && a4 <= a3) ans.insert(house[3]);
    return;
  }
  if (a[pos] == -1) {
    if (a1 <= a2 && a1 <= a3 && a1 <= a4) dp[pos + 1].insert(st + (1ll << 0));
    if (a2 <= a1 && a2 <= a3 && a2 <= a4) dp[pos + 1].insert(st + (1ll << 14));
    if (a3 <= a1 && a3 <= a2 && a3 <= a4) dp[pos + 1].insert(st + (1ll << 28));
    if (a4 <= a1 && a4 <= a2 && a4 <= a3) dp[pos + 1].insert(st + (1ll << 42));
  } else {
    dp[pos + 1].insert(st + (1ll << (14 * a[pos])));
  }
}
int main(void) {
  int i, j;
  scanf("%d", &N);
  scanf("%s", buf);
  TWO = (1 << 14) - 1;
  for ((i) = 0; (i) < (int)(N); (i)++) a[i] = -1;
  for ((i) = 0; (i) < (int)(N); (i)++)
    for ((j) = 0; (j) < (int)(4); (j)++)
      if (buf[i] == house[j][0]) a[i] = j;
  dp[0].insert(0);
  for ((i) = 0; (i) < (int)(N + 1); (i)++)
    for (__typeof((dp[i]).begin()) itr = (dp[i]).begin(); itr != (dp[i]).end();
         itr++)
      func((*itr), i);
  for (__typeof((ans).begin()) itr = (ans).begin(); itr != (ans).end(); itr++)
    cout << (*itr) << endl;
  return 0;
}
