#P1511D. Min Cost String

    ID: 2293 Type: RemoteJudge 2000ms 256MiB Tried: 0 Accepted: 0 Difficulty: 5 Uploaded By: Tags>brute forceconstructive algorithmsgraphsgreedystrings*1600

Min Cost String

Description

Let's define the cost of a string $s$ as the number of index pairs $i$ and $j$ ($1 \le 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.

The only line contains two integers $n$ and $k$ ($1 \le n \le 2 \cdot 10^5; 1 \le k \le 26$).

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.

Input

The only line contains two integers $n$ and $k$ ($1 \le n \le 2 \cdot 10^5; 1 \le k \le 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.

9 4
5 1
10 26
aabacadbb
aaaaa
codeforces