#include <bits/stdc++.h>
int main() {
  int i, j, a = 0, b = 0, d, e, k, l, d1;
  char s[1000], c[1000], f[1000];
  scanf("%s%s", s, c);
  j = strlen(s);
  e = strlen(c);
  for (i = 0; i < j; i++) {
    if (s[i] == '|') break;
    b++;
  }
  a = j - b - 1;
  d = a - b;
  if (d < 0) d = -d;
  if (((a == b || (a % 2 == 0 && b % 2 == 0)) && (e % 2 != 0)) ||
      (a != b && d > e) || (d % 2 == 0 && e % 2 != 0) ||
      (d % 2 != 0 && e % 2 == 0)) {
    printf("Impossible");
    exit(0);
  } else {
    if (b > a)
      d1 = e - d - (e - d) / 2;
    else if (a > b)
      d1 = d + (e - d) / 2;
    else
      d1 = e / 2;
    for (i = 0, k = 0, l = 0; i < (j + e); i++) {
      if (i < d1) {
        f[i] = c[l];
        l++;
      } else if (i >= d1 && i < d1 + j) {
        f[i] = s[k];
        k++;
      } else {
        f[i] = c[l];
        l++;
      }
    }
    f[i] = '\0';
  }
  printf("%s", f);
  return 0;
}
