#include <bits/stdc++.h>
using namespace std;
int main() {
  vector<int> vec(0);
  vector<int> vec1(0);
  unsigned long long int c, d, k, gf;
  int i, z, g, j;
  cin >> k >> d;
  i = 2;
  while ((k > 1)) {
    if (i > pow(k, 0.5)) {
      i = k;
    }
    if (k % i == 0) {
      vec.push_back(i);
      k = k / i;
    } else {
      i++;
    }
  }
  c = 1;
  for (int i = 1; i <= d; i++) {
    c = c * 10;
  }
  i = 2;
  gf = c;
  while (c > 1) {
    if (c % i == 0) {
      vec1.push_back(i);
      c = c / i;
    } else {
      i++;
    }
  }
  for (int i = 0; i < vec1.size(); i++) {
    for (int j = 0; j < vec.size(); j++) {
      if (vec[j] == vec1[i]) {
        if ((vec1.size() > 0) && (vec.size() > 0)) {
          vec.erase(vec.begin() + j);
          vec1.erase(vec1.begin() + i);
          i--;
          j--;
        }
      }
    }
  }
  for (int i = 0; i < vec.size(); i++) {
    gf = gf * vec[i];
  }
  cout << gf;
  return 0;
}
