#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e6 + 7;
char a[maxn];
char b[maxn];
int main() {
  scanf("%s", a + 1);
  int len = strlen(a + 1);
  int L = 0, R = 0;
  bool ok = true;
  for (int i = 1; i <= len; i++) {
    if (a[i] == '|') {
      ok = false;
      continue;
    }
    if (ok)
      L++;
    else
      R++;
  }
  scanf("%s", b + 1);
  int lenb = strlen(b + 1);
  int i;
  for (i = 0; i <= lenb; i++) {
    if ((L + i) == (lenb - i + R)) {
      break;
    }
  }
  i = min(i, lenb);
  if ((L + i) != (lenb - i + R)) {
    puts("Impossible");
  } else {
    for (int j = 1; j <= i; j++) printf("%c", b[j]);
    for (int j = 1; j <= len; j++) printf("%c", a[j]);
    for (int j = i + 1; j <= lenb; j++) printf("%c", b[j]);
    puts("");
  }
  return 0;
}
