#include <bits/stdc++.h>
using namespace std;
int main() {
  string s, t, r, z;
  int a[15] = {0}, b[15] = {0}, c[15] = {0}, d[15] = {0}, i, j, l = 0, q = 1;
  cin >> s;
  for (i = 0; i < s.length(); i++) {
    a[s[i] - '0']++;
    b[s[i] - '0']++;
  }
  while (a[0] > b[9] && b[0] > a[9]) {
    t += '0';
    r += '0';
    a[0]--;
    b[0]--;
  }
  for (i = 0; i < 10; i++) c[i] = a[i], d[i] = b[i];
  z = t;
  for (i = 0; i < 10; i++) {
    for (j = 0; j < 10; j++) a[j] = c[j], b[j] = d[j];
    t = r = z;
    if (a[i] > 0 && b[10 - i] > 0) {
      t += (i + '0');
      r += (10 - i + '0');
      a[i]--;
      b[10 - i]--;
      for (j = 0; j < 10; j++) {
        while (a[j] > 0 && b[9 - j] > 0) {
          t += (j + '0');
          r += (9 - j + '0');
          a[j]--;
          b[9 - j]--;
        }
      }
      if (t.length() > l) l = t.length(), q = i;
    }
  }
  for (j = 0; j < 10; j++) a[j] = c[j], b[j] = d[j];
  t = r = z;
  while (l == 0 && a[0] > 0 && b[0] > 0) {
    t += '0';
    r += '0';
    a[0]--;
    b[0]--;
  }
  if (a[q] > 0 && b[10 - q] > 0) {
    t += (q + '0');
    r += (10 - q + '0');
    a[q]--;
    b[10 - q]--;
  }
  for (i = 0; i < 10; i++) {
    while (a[i] > 0 && b[9 - i] > 0) {
      t += (i + '0');
      r += (9 - i + '0');
      a[i]--;
      b[9 - i]--;
    }
  }
  for (i = 0; i < 10; i++) {
    while (a[i] > 0 && b[9 - i] > 0) {
      t += (i + '0');
      r += (9 - i + '0');
      a[i]--;
      b[9 - i]--;
    }
  }
  for (i = 0; i < 10; i++) {
    while (a[i] > 0) {
      t += (i + '0');
      a[i]--;
    }
    while (b[i] > 0) {
      r += (i + '0');
      b[i]--;
    }
  }
  reverse(t.begin(), t.end());
  reverse(r.begin(), r.end());
  cout << t << endl << r;
  return 0;
}
