#include <bits/stdc++.h>
using namespace std;
const int m = 10;
int a[10], b[10], ap[10], bp[10];
int n;
int main() {
  memset(a, 0, sizeof(a));
  memset(b, 0, sizeof(b));
  string s;
  cin >> s;
  n = int(s.size());
  for (int i = 0; i < n; ++i) {
    int num = s[i] - '0';
    ++ap[num];
    ++bp[num];
  }
  int ans = 0;
  int ln = -1;
  for (int i = 0; i < m; ++i) {
    for (int j = 0; j < m; ++j) {
      a[j] = ap[j];
      b[j] = bp[j];
    }
    int p = 0;
    int pans = 0;
    if (i == 0 && a[0] > 0 && b[0] > 0) {
      --a[0];
      --b[0];
      ++pans;
    } else {
      if (i != 0 && a[i] > 0 && b[m - i] > 0) {
        --a[i];
        --b[m - i];
        p = 1;
        ++pans;
      } else
        continue;
    }
    for (int j = 0; j < n; ++j) {
      for (int k = 0; k < m; ++k) {
        if (k == 0 && p == 0 && a[0] > 0 && b[0] > 0) {
          --a[0];
          --b[0];
          ++pans;
          break;
        }
        if (a[k] > 0 && b[m - p - k] > 0) {
          --a[k];
          --b[m - p - k];
          ++pans;
          p = 1;
          break;
        }
      }
    }
    pans += min(a[0], b[0]);
    if (pans > ans) {
      ans = pans;
      ln = i;
    }
  }
  for (int j = 0; j < m; ++j) {
    a[j] = ap[j];
    b[j] = bp[j];
  }
  string sa, sb;
  {
    int p = 0;
    int i = ln;
    if (i == 0 && a[0] > 0 && b[0] > 0) {
      --a[0];
      --b[0];
      sa += '0';
      sb += '0';
    } else {
      if (i != 0 && a[i] > 0 && b[m - i] > 0) {
        --a[i];
        --b[m - i];
        p = 1;
        sa += char(i + '0');
        sb += char(m - i + '0');
      } else {
        cout << s << endl << s << endl;
        return 0;
      }
    }
    for (int j = 0; j < n; ++j) {
      for (int k = 0; k < m; ++k) {
        if (k == 0 && p == 0 && a[0] > 0 && b[0] > 0) {
          --a[0];
          --b[0];
          sa += '0';
          sb += '0';
          break;
        }
        if (a[k] > 0 && b[m - p - k] > 0) {
          --a[k];
          --b[m - p - k];
          sa += char(k + '0');
          sb += char(m - p - k + '0');
          p = 1;
          break;
        }
      }
    }
  }
  int T = min(a[0], b[0]);
  a[0] -= T;
  b[0] -= T;
  for (int i = 0; i < m; ++i) {
    while (a[i] > 0) {
      --a[i];
      sa += i + '0';
    }
  }
  for (int i = 0; i < m; ++i) {
    while (b[i] > 0) {
      --b[i];
      sb += i + '0';
    }
  }
  reverse(sa.begin(), sa.end());
  reverse(sb.begin(), sb.end());
  cout << sa;
  for (int i = 0; i < T; ++i) printf("0");
  cout << endl;
  cout << sb;
  for (int i = 0; i < T; ++i) printf("0");
  cout << endl;
  return 0;
}
