#include <iostream>
#include <vector>
#include <bits/stdc++.h>
#define minn -10000
using namespace std;

typedef long long ll;

int n;
string s;
ll cnt1=0,cnt2=0;//1统计1数量   2统计2数量

void deal(int l,int r)//按照左右根输出
{
    if(l==r)//递归边界
    {
        if((s[l]-'0')&1)  cout<<"I";
        else cout<<"B";
        return ;
    }
    else
    {
        int mid=(l+r)>>1;
        deal(l,mid);//左子树
        deal(mid+1,r);//右子树
    }
    cnt1=0;cnt2=0;
    for(int i=l;i<=r;i++)//处理根结点,判断01的数量就可以推得根
    {
        if(((s[i]-'0')&1))    cnt1++;
        else cnt2++;
    }
    if(!cnt1)   cout<<"B";
    else if(!cnt2)  cout<<"I";
    else cout<<"F";
}

int main()
{
    int n;
    cin>>n;
    cin>>s;
    int m=pow(2,n);
    deal(0,m-1);
}