For a given positive integer n denote its k-rounding as the minimum positive integer x, such that x ends with k or more zeros in base 10 and is divisible by n.

For example, 4-rounding of 375 is 375·80 = 30000. 30000 is the minimum integer such that it ends with 4 or more zeros and is divisible by 375.

Write a program that will perform the k-rounding of n.

Input

The only line contains two integers n and k (1 ≤ n ≤ 109, 0 ≤ k ≤ 8).

Output

Print the k-rounding of n.

Examples

Input

375 4


Output

30000


Input

10000 1


Output

10000


Input

38101 0


Output

38101


Input

123456789 8


Output

12345678900000000
import java.util.*;
import java.io.*;

public class T_1_A {
	FastScanner in;
	PrintWriter out;

	public void solve() {
		long n = in.nextLong();
		long k = in.nextLong();
		long nc = n;
		
		int cnt2 = 0;
		int cnt5 = 0;
		while (n % 5 == 0){
			cnt5++;
			n /= 5;
		}
		while (n % 2 == 0){
			cnt2++;
			n /= 2;
		}
		
		long res = 1;
		for (int i = cnt2; i < k; i++){
			res *= 2;
		}
		for (int i = cnt5; i < k; i++){
			res *= 5;
		}
		
		out.println(1L*res*nc);
	}

	public void run() {
		in = new FastScanner();
		out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(System.out)));
		solve();
		out.close();
	}

	class FastScanner {
		BufferedReader br;
		StringTokenizer st;

		FastScanner() {
			br = new BufferedReader(new InputStreamReader(System.in));
		}

		String next() {
			while (st == null || !st.hasMoreTokens()) {
				try {
					st = new StringTokenizer(br.readLine());
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
			return st.nextToken();
		}

		int nextInt() {
			return Integer.parseInt(next());
		}

		long nextLong() {
			return Long.parseLong(next());
		}

		double nextDouble() {
			return Double.parseDouble(next());
		}
	}

	public static void main(String[] args) {
		new T_1_A().run();
	}
}
