Problem: You are given a string t consisting of n lowercase Latin letters and an integer number k.

Let's define a substring of some string s with indices from l to r as s[l ... r].

Your task is to construct such string s of minimum possible length that there are exactly k positions i such that s[i ... i + n - 1] = t. In other words, your task is to construct such string s of minimum possible length that there are exactly k substrings of s equal to t.

It is guaranteed that the answer is always unique.

Input

The first line of the input contains two integers n and k (1 ≤ n, k ≤ 50) — the length of the string t and the number of substrings.

The second line of the input contains the string t consisting of exactly n lowercase Latin letters.

Output

Print such string s of minimum possible length that there are exactly k substrings of s equal to t.

It is guaranteed that the answer is always unique.

Examples

Input

3 4
aba


Output

ababababa


Input

3 2
cat


Output

catcat

Solution (in JAVA):

Solution:
import java.util.*;
import java.io.*;
public class GFG
{ 
	public static void main (String[] args)throws IOException
	{
	     GFG obj=new GFG();
	     obj.go();
	}
	public void go()throws IOException
	{
	    BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
	    int n,k,i,j,max=0,len=0,split=0,l;
	    String str[]=br.readLine().split(" ");
	    n=Integer.parseInt(str[0]);
	    k=Integer.parseInt(str[1]);
	    ArrayList<Integer> al=new ArrayList<>();
	    split=n;
	    String s=br.readLine();
	    l=n;
	    j=1;
	    for(i=1;i<l;i++)
	    if(s.charAt(0)==s.charAt(i))
	    al.add(i);
	    Iterator itr=al.iterator();
	    while(itr.hasNext())
	    {
	        j=(int)itr.next();
	        //System.out.println(j);
	        i=1;
	        split=j;
	        j++;
	        while(j<l&&s.charAt(i)==s.charAt(j))
	        {
	            i++;
	            j++;
	        }
	        if(j==l)
	        break;
	        split=n;
	    }
	    String toapp=s.substring(n-split);
	    StringBuilder sb=new StringBuilder(split*(k-1));
	    for(i=0;i<k-1;i++)
	    sb=sb.append(toapp);
	    System.out.println(s+sb);
	}
}