#include <bits/stdc++.h>
using namespace std;
int i, j, k, n, m, x, last;
struct big {
  int a[1000010];
  inline void operator-=(const int &x) {
    int i;
    a[1] -= x;
    for (i = 1; i <= *a; i++)
      if (a[i] < 0) a[i] += 10, a[i + 1]--;
    for (; *a && !a[*a]; (*a)--)
      ;
  }
  inline void operator/=(const int &x) {
    int i;
    last = 0;
    for (i = *a; i; i--) {
      last = last * 10 + a[i];
      a[i] = last / x;
      last %= x;
    }
    for (; *a && !a[*a]; (*a)--)
      ;
  }
  inline void print() {
    int i;
    printf("%d", a[*a]);
    for (i = *a - 1; i > 0; i--) printf("%d", a[i]);
    printf("\n");
  }
} a;
int main() {
  scanf("%d%d", &m, &x);
  x = 10 * x - 1;
  for (i = 1; i <= 9; i++) {
    *a.a = m + 1;
    a.a[m + 1] = i;
    for (j = 1; j <= m; j++) a.a[j] = 0;
    a -= i;
    a /= x;
    if (last || *a.a != m) continue;
    a.print();
    return 0;
  }
  printf("Impossible\n");
  return 0;
}
