#include <bits/stdc++.h>
using namespace std;
int v[30];
int main() {
  char s[30];
  char s1[2][30];
  scanf("%s", s);
  int flag = 0;
  for (int i = 0; i < 27; i++)
    if (s[i] == s[i - 1]) flag = 1;
  if (flag == 1)
    printf("Impossible\n");
  else {
    char c = 0;
    int l = -1, r = -1;
    for (int i = 0; i < 27; i++)
      if (v[s[i] - 'A'] == 0)
        v[s[i] - 'A'] = 1;
      else
        c = s[i];
    for (int i = 0; i < 27; i++)
      if (c == s[i]) {
        if (l == -1)
          l = i;
        else
          r = i;
      }
    char ss[60];
    int lenn = 0;
    for (int i = r + 1; i < 27; i++) ss[lenn++] = s[i];
    for (int i = 0; i < l; i++) ss[lenn++] = s[i];
    if ((r - l - 1) & 1) {
      int len = (r - l - 1) / 2;
      for (int i = 13 - len; i < 13; i++) {
        s1[1][i] = s[l + i - (13 - len) + 2];
        s1[0][i] = s[r - i + (13 - len) - 1];
      }
      s1[1][12 - len] = s[l + 1];
      s1[0][12 - len] = c;
      int loc = lenn / 2;
      for (int i = 0; i < 12 - len; i++) s1[0][i] = ss[loc++];
      loc = 0;
      for (int i = 11 - len; i >= 0; i--) s1[1][i] = ss[loc++];
    } else {
      int len = (r - l - 1) / 2;
      for (int i = 13 - len; i < 13; i++) {
        s1[1][i] = s[l + i - (13 - len) + 1];
        s1[0][i] = s[r - i + (13 - len) - 1];
      }
      s1[1][12 - len] = c;
      int loc = lenn / 2;
      for (int i = 0; i <= 12 - len; i++) s1[0][i] = ss[loc++];
      loc = 0;
      for (int i = 11 - len; i >= 0; i--) s1[1][i] = ss[loc++];
    }
    for (int i = 0; i < 13; i++) printf("%c", s1[0][i]);
    printf("\n");
    for (int i = 0; i < 13; i++) printf("%c", s1[1][i]);
    printf("\n");
  }
  return 0;
}
