#include<iostream> #include<cstring> #include<cstdio> using namespace std; int n,m,t,l[1001][10001]; bool vis[1001],cir[1001]; void dfs(int x){ if(cir[t])return; vis[x]=1; if(x==t){ cir[x]=true; return; } for(int i=1;i<=l[x][0];i++) if(!vis[l[x][i]])dfs(l[x][i]); } int main(){ scanf("%d%d",&n,&m); for(int i=1;i<=m;i++){ int a,b; scanf("%d%d",&a,&b); l[a][++l[a][0]]=b; } for(t=1;t<=n;t++){ memset(vis,0,sizeof(vis)); for(int i=1;i<=l[t][0];i++) dfs(l[t][i]); } for(int i=1;i<=n;i++) if(cir[i])printf("T\n"); else printf("F\n"); return 0; }