#include <bits/stdc++.h>
using namespace std;
void print(vector<int> arr) {
  string ans;
  for (int i = 0; i < arr.size(); ++i) ans.push_back(arr[i] + '0');
  cout << ans << '\n';
}
vector<int> build(int n, int x, int d) {
  vector<int> ans(n);
  ans[0] = d;
  int rem = 0;
  for (int i = 1; i < n; ++i) {
    ans[i] = (ans[i - 1] * x + rem) % 10;
    rem = (ans[i - 1] * x + rem) / 10;
  }
  reverse(ans.begin(), ans.end());
  return ans;
}
vector<int> mult(vector<int> a, int x) {
  if (a[0] * x > 9) return vector<int>(0);
  for (int i = 0; i < a.size(); ++i) {
    a[i] *= x;
    a[i - 1] += a[i] / 10;
    a[i] %= 10;
  }
  reverse(a.begin(), a.end());
  for (int i = 0; i < a.size() - 1; ++i) {
    a[i + 1] += a[i] / 10;
    a[i] %= 10;
  }
  reverse(a.begin(), a.end());
  if (a[0] > 9) return vector<int>(0);
  return a;
}
int main() {
  int n, x;
  cin >> n >> x;
  for (int d = 1; d <= 9; ++d) {
    vector<int> ad = build(n, x, d);
    if (ad[0] == 0) continue;
    vector<int> da = ad;
    da.resize(n - 1);
    da.insert(da.begin(), d);
    vector<int> da_comp = mult(ad, x);
    if (da_comp == da) {
      print(ad);
      return 0;
    }
  }
  cout << "Impossible\n";
}
