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.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.math.BigInteger;
import java.util.*;

import static java.lang.Math.*;

public class Main
{
	
    static final int mod = (int)1e9+7;
    public static void main(String[] args) throws Exception
    {
        FastReader in = new FastReader();
        PrintWriter out = new PrintWriter(System.out);
        int test =1;
        

        while(test-- > 0)      //test
        {  
        	
        	long n,k;
        	
        	n=in.nextLong();
        	k=in.nextLong();
       
        	long ans=lcm(n,(long)(Math.pow(10,k)));
        	
        	out.print(ans);
        	
        }   //test
        out.flush();
        
    }
   
    
    static int[] intAr(int n)throws IOException
    {
    	FastReader in = new FastReader();
    	int a[]=new int[n];
        for(int i=0;i<n;i++)
        	a[i]=in.nextInt();
    		return a;
    		
    }
    static Long[] longAr(int n)throws IOException
    {
    	FastReader in = new FastReader();
        PrintWriter out = new PrintWriter(System.out);
    	Long a[]=new Long[n];
        for(int i=0;i<n;i++)
        	a[i]=in.nextLong();
    		return a;
    		
    }
    
    static int getMin(int arr[], int n) {
        return Arrays.stream(arr).min().getAsInt();
    }
 
    static int getMax(int arr[], int n) {
        return Arrays.stream(arr).max().getAsInt();
    }
   
    static boolean isPrime(int n) 
    { 
        // Corner case 
       
        // Check from 2 to n-1 
        for (int i = 2; i <= Math.sqrt(n); i++) 
            if (n % i == 0) 
                return false; 
  
        return true; 
    } 															//function
    
    static boolean isPrime(long n) 
    { 
        // Corner case 
       
        // Check from 2 to n-1 
        for (int i = 2; i <= Math.sqrt(n); i++) 
            if (n % i == 0) 
                return false; 
  
        return true; 
    } 															//function
 // Recursive method to return gcd of a and b
    static long gcd(long a, long b)
    {
        if (a == 0)
            return b;
        return gcd(b % a, a);
    }
     
    // method to return LCM of two numbers
    static long lcm(long a, long b)
    {
        return (a / gcd(a, b)) * b;
    }
     
    static boolean isPalindrome(String str)
    {
 
        
        int i = 0, j = str.length() - 1;
 
       
        while (i < j) {
 
            
            if (str.charAt(i) != str.charAt(j))
                return false;
 
          
            i++;
            j--;
        }
 
        // Given string is a palindrome
        return true;
    }
    
    
    static int countDigit(long n)
    {
        int count = 0;
        while (n != 0) {
            n = n / 10;
            ++count;
        }
        return count;
    }
    
    
    
}



class FastReader
{
    BufferedReader br;
    StringTokenizer st;

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

    public String next() throws IOException
    {
        if(st == null || !st.hasMoreElements())
        {
            st = new StringTokenizer(br.readLine());
        }

        return st.nextToken();
    }

    public boolean hasNext() throws IOException
    {
        if(st != null && st.hasMoreElements())
        {
            return true;
        }

        String s = br.readLine();
        if(s == null) {
            return false;
        }

        st = new StringTokenizer(s);

        return st.hasMoreElements();
    }

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

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

    public String nextLine() throws IOException
    {
        return br.readLine();
    }
}