#include<bits/stdc++.h>
using namespace std;
#define int long long
int m(int a,int k){
  if(!a) return 0;
  string s;
  while(a){
    int tmp=a%k;
    if(tmp>9) return -1;
    s+='0'+tmp;
    a/=k;
  }
  reverse(s.begin(),s.end());
  return stoll(s);
}
signed main(){
  int a,b,c;
  while(cin>>a>>b>>c,~a){
    bool f=1;
    for(int i=2;i<=16;i++) f&=m(a,i)!=b;
    int res=b;
    for(int j=a;j<=c;j++){
      int tmp=-1;
      for(int i=2;i<=16;i++)
	if(m(j,i)>=res)
	  if(tmp<0||m(j,i)<tmp) tmp=m(j,i);
      if(tmp<0){
	f=1;
	break;
      }
      res=tmp;
    }
    cout<<(f?-1:res)<<endl;
  }
  return 0;
}