Problem: Let's define the cost of a string s as the number of index pairs i and j (1 ≤ i < j < |s|) such that s_i = s_j and s_{i+1} = s_{j+1}.

You are given two positive integers n and k. Among all strings with length n that contain only the first k characters of the Latin alphabet, find a string with minimum possible cost. If there are multiple such strings with minimum cost — find any of them.

Input

The only line contains two integers n and k (1 ≤ n ≤ 2 ⋅ 10^5; 1 ≤ k ≤ 26).

Output

Print the string s such that it consists of n characters, each its character is one of the k first Latin letters, and it has the minimum possible cost among all these strings. If there are multiple such strings — print any of them.

Examples

Input


9 4


Output


aabacadbb


Input


5 1


Output


aaaaa

Input


10 26


Output


codeforces

Solution (in JAVA):

Solution:
import java.util.*;
import java.io.*;
 
public class File {
	public static class FastScanner {
		BufferedReader br;
		StringTokenizer st;
		
		public FastScanner() {
			br = new BufferedReader(new InputStreamReader(System.in));
		}
		
		String next() {
			while (st == null || !st.hasMoreElements()) {
				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());
		}
	}
		
	public static void main(String[] args) {
		FastScanner sc = new FastScanner();
		PrintWriter out = new PrintWriter(new BufferedOutputStream(System.out));
		int n=sc.nextInt();
		int k=sc.nextInt();
		if(n==1)
		{
		    out.println("a");
		    out.close();
		    System.exit(0);
		}
		else if(n==2)
		{
		    out.println("aa");
		    out.close();
		    System.exit(0);
		}
		char arr[]=new char[n];
		int c=0;
		for(int i=0;i<k;i++)
		{
		    if(c==n)break;
		    arr[c++]=(char)(97+i);
		    if(c==n)break;
		    for(int j=i+1;j<k;j++)
		    {
		        if(c==n)break;
		        arr[c++]=(char)(97+i);
		        if(c==n)break;
		        arr[c++]=(char)(97+j);
		    }
		}
		StringBuilder sb=new StringBuilder();
		int i=0;
		while(sb.length()<n)
		{
		    sb.append(arr[i]);
		    i=(i+1)%c;
		}
		out.println(sb.toString());
		out.close();
	}
}