Let s(x) be sum of digits in decimal representation of positive integer x. Given two integers n and m, find some positive integers a and b such that 

  * s(a) ≥ n, 
  * s(b) ≥ n, 
  * s(a + b) ≤ m. 

Input

The only line of input contain two integers n and m (1 ≤ n, m ≤ 1129).

Output

Print two lines, one for decimal representation of a and one for decimal representation of b. Both numbers must not contain leading zeros and must have length no more than 2230.

Examples

Input

6 5


Output

6 
7


Input

8 16


Output

35 
53

Note

In the first sample, we have n = 6 and m = 5. One valid solution is a = 6, b = 7. Indeed, we have s(a) = 6 ≥ n and s(b) = 7 ≥ n, and also s(a + b) = s(13) = 4 ≤ m.
#include <bits/stdc++.h>
using namespace std;
long long nd(long long x) {
  long long cnt = 0;
  while (x > 0) {
    x = x / 10;
    cnt++;
  }
  return cnt;
}
long long sd(long long x) {
  long long sum = 0;
  while (x > 0) {
    sum += x % 10;
    x = x / 10;
  }
  return sum;
}
long long sds(string s) {
  long long ans = 0;
  for (long long i = 0; i < s.length(); i++) {
    ans += s[i] - 48;
  }
  return ans;
}
long long nf(long long x) { return (x / 9) + 1; }
long long n, m;
int32_t main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  ;
  cin >> n >> m;
  if (m <= 18 && n <= 18) {
    for (long long i = n; i < 100; i++) {
      for (long long j = i + 1; j < 100; j++) {
        if (sd(i) >= n && sd(j) >= n && sd(i + j) <= m) {
          cout << i << '\n';
          cout << j << '\n';
          return 0;
        }
      }
    }
  }
  for (long long i = 0; i < 2000; i++) cout << 8;
  cout << 9;
  cout << '\n';
  for (long long i = 0; i <= 2000; i++) {
    cout << 1;
  }
  return 0;
}
