#include<bits/stdc++.h>
#define fastIO std::ios_base::sync_with_stdio(false);std::cin.tie(0);std::cout.tie(0);
#define vl vector<ll>
#define vi vector<int>
using namespace std;
typedef long long ll;
typedef long double ld;

long long int GCD(long long int a,long long int b){
  if(a%b==0)return b;
  else return GCD(b,a%b);
}

bool Validate(ll x,ll y, ll z,ll p,ll q){
  ll out=GCD(p,q);
  if(x==to_string(p).length() && y==to_string(q).length() && z==to_string(out).length()) return true;
  return false;

}

void solve(ll x,ll y,ll z) {
    ll a[10][2];
    a[9][0] = 102345689;
    a[9][1] = 102345697;
    a[8][0] = 10000019;
    a[8][1] = 10000169;
    a[7][0] = 4301789;
    a[7][1] = 4441939;
    a[6][0] = 100019;
    a[6][1] = 100049;
    a[5][0] = 20707;
    a[5][1] = 21011;
    a[4][0] = 3907;
    a[4][1] = 2579;
    a[3][0] = 101;
    a[3][1] = 103;
    a[2][0] = 11;
    a[2][1] = 13;
    a[1][0] = 5;
    a[1][1] = 7;
    // cin >> x >> y >> z;
    if(Validate(x,y,z,(a[x-z+1][0])*(ll)pow(10,z-1),(a[y-z+1][1])*(ll)pow(10,z-1))==false)cout<<x<<" "<<y<<" "<<z<<endl;
    // cout<<Validate(x,y,z,(a[x-z+1][0])*(ll)pow(10,z-1),(a[y-z+1][1])*(ll)pow(10,z-1))<<endl;
    // cout << (a[x-z+1][0])*(ll)pow(10,z-1) << " " << (a[y-z+1][1])*(ll)pow(10,z-1) << endl;
}
int main() {
    fastIO
    int t,count=0;
    t=1;
    for(int i=1;i<=9;i++){
      for(int j=1;j<=9;j++){
        for(int k=1;k<=min(i,j);k++){
          solve(i,j,k);
          count++;
        }
      }
    }
    // cout<<count<<endl;
    // cin >> t;
    // while(t--) {
    // //    cout << "Case #" << count << ": ";
    //     solve();
    //     count++;
    // }
    return 0;
}