#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
int ans,num,m,vis[1000005],now[100],step[100],n;
char s[100];
void dfs(int pos,int sum,int cnt)
{
if(pos >= m)
{
vis[sum] ++;
if(sum > ans)
{
ans = sum;
num = cnt;
for(int i = 0; i < cnt; i ++)
step[i] = now[i];
}
return ;
}
int t = 0;
for(int i = pos ; i < m; i ++)
{
t = t*10+s[i]-'0';
if(sum + t > n)
return ;
now[cnt] = t;
dfs(i+1,sum+t,cnt+1);
}
}
int main()
{
int sum;
while(scanf("%d%s",&n,s) != EOF )
{
m = strlen(s);
if(m == 1 && n == 0 && s[0] == '0')
break;
sum = 0;
for(int i = 0; i < m; i ++)
sum +=s[i]-'0';
if(sum > n)
{
puts("error");
continue;
}
ans = num = 0;
memset(vis,0,sizeof(vis));
dfs(0,0,0);
if(vis[ans] > 1)
puts("rejected");
else
{
printf("%d",ans);
for(int i = 0; i < num; i ++)
printf(" %d",step[i]);
puts("");
}
}
return 0;
}