#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
//判断行进方向是否为前向
bool forw(string base, string fir, string sec) {
int loc1, loc2;
loc1 = base.find(fir);
if (loc1 == string::npos)
return false;
else {
loc2 = base.find(sec, loc1);
if (loc2 == string::npos)
return false;
else
return true;
}
}
//判断并输出结果
void judge(string base, string fir, string sec) {
bool forward, backword;
forward = forw(base, fir, sec);
reverse(base.begin(), base.end());
backword = forw(base, fir, sec);
if (forward) {
if (backword)
cout << "both" << endl;
else
cout << "forward" << endl;
} else {
if (backword)
cout << "back" << endl;
else
cout << "invalid" << endl;
}
}
int main()
{
string str;
vector<string> rec;
while (cin >> str)
rec.push_back(str);
int i = 0;
while (i < rec.size()) {
if (i % 3 == 0) {
string base = rec[i];
string fir = rec[i+1];
string sec = rec[i+2];
judge(base, fir, sec);
}
i = i+3;
}
return 0;
}