#include <iostream>
#include <queue>
#include <string.h>
#include <map>
#include <vector>
#define EmA 3
#define EmB 4
#define FilA 1
#define FilB 2
#define PorAB 5
#define PorBA 6
using namespace std;
struct point{
int x;
int y;
};
point inp,rp,tmp;
int gr[1002][1002];
int work[1002][1002];
point par[1002][1002];
vector<int> vb;
int A,B,C;
void path(point p)
{
int i,j;
i = p.x;
j = p.y;
if(i==0 && j==0)
return;
vb.push_back(work[i][j]);
p = par[i][j];
path(p);
}
int main()
{
while(cin>>A)
{
cin>>B>>C;
//memset(work,0,sizeof(work));
memset(gr,0,sizeof(gr));
queue<point> que;
inp.x=0;
inp.y=0;
que.push(inp);
gr[0][0]=1;
while(!que.empty())
{
inp = que.front();
que.pop();
if(inp.y==C)
{
break;
}
//fill A
rp.x = A;
rp.y = inp.y;
if(gr[rp.x][rp.y]==0)
{
gr[rp.x][rp.y]= gr[inp.x][inp.y]+1;
que.push(rp);
par[rp.x][rp.y]=inp;
work[rp.x][rp.y] = FilA;
}
//fill B
rp.x = inp.x;
rp.y = B;
if(gr[rp.x][rp.y]==0)
{
gr[rp.x][rp.y]= gr[inp.x][inp.y]+1;
que.push(rp);
par[rp.x][rp.y]=inp;
work[rp.x][rp.y] = FilB;
}
//empty A
rp.x= 0;
rp.y=inp.y;
if(gr[rp.x][rp.y]==0)
{
gr[rp.x][rp.y]= gr[inp.x][inp.y]+1;
que.push(rp);
par[rp.x][rp.y]=inp;
work[rp.x][rp.y] = EmA;
}
//emppty B
rp.x= inp.x;
rp.y = 0;
if(gr[rp.x][rp.y]==0)
{
gr[rp.x][rp.y]= gr[inp.x][inp.y]+1;
que.push(rp);
par[rp.x][rp.y]=inp;
work[rp.x][rp.y] = EmB;
}
// A->B
if(inp.x+inp.y>=B)
{
rp.x= inp.x - (B-inp.y);
rp.y=B;
}
else
{
rp.x= 0;
rp.y = inp.x+inp.y;
}
if(gr[rp.x][rp.y]==0)
{
gr[rp.x][rp.y]= gr[inp.x][inp.y]+1;
que.push(rp);
par[rp.x][rp.y]=inp;
work[rp.x][rp.y] = PorAB;
}
//B->A
if(inp.x+inp.y>=A)
{
rp.x= A;
rp.y=inp.y-(A-inp.x);
}
else
{
rp.x=inp.x+inp.y;
rp.y= 0;
}
if(gr[rp.x][rp.y]==0)
{
gr[rp.x][rp.y]= gr[inp.x][inp.y]+1;
que.push(rp);
par[rp.x][rp.y]=inp;
work[rp.x][rp.y] = PorBA;
}
}
vb.clear();
path(inp);
for(int i=vb.size()-1;i>=0;i--)
{
if(vb[i]==1)
{
cout<<"fill A\n";
}
else if(vb[i]==2)
{
cout<<"fill B\n";
}
else if(vb[i]==3)
{
cout<<"empty A\n";
}
else if(vb[i]==4)
{
cout<<"empty B\n";
}
else if(vb[i]==5)
{
cout<<"pour A B\n";
}
else if(vb[i]==6)
{
cout<<"pour B A\n";
}
}
cout<<"success\n";
}
return 0;
}