#include <bits/stdc++.h>
using namespace std;
int i, j, k;
int n;
string a[500];
vector<string> t;
string ans(string s) {
  multiset<string> p, q;
  for (i = 0; i < n - 1; i++) p.insert(s.substr(0, i + 1));
  for (i = 0; i < n - 1; i++) q.insert(s.substr(n - i - 1, i + 1));
  string out = "";
  for (i = 0; i < 2 * n - 2; i++) {
    auto it = p.find(a[i]), it2 = q.find(a[i]);
    if (it != p.end()) {
      out += "P";
      p.erase(it);
    } else if (it2 != q.end()) {
      out += "S";
      q.erase(it2);
    } else {
      return "NO";
    }
  }
  return out;
}
void code() {
  cin >> n;
  for (i = 0; i < 2 * n - 2; i++) {
    cin >> a[i];
    if (a[i].size() == n - 1) t.push_back(a[i]);
  }
  string s1 = t[0] + t[1].back(), s2 = t[1] + t[0].back();
  string a1 = ans(s1), a2 = ans(s2);
  if (a1 != "NO")
    cout << a1;
  else
    cout << a2;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  int t = 1;
  while (t--) {
    code();
  }
}
