The translation from the Berland language into the Birland language is not an easy task. Those languages are very similar: a berlandish word differs from a birlandish word with the same meaning a little: it is spelled (and pronounced) reversely. For example, a Berlandish word code corresponds to a Birlandish word edoc. However, it's easy to make a mistake during the «translation». Vasya translated word *s* from Berlandish into Birlandish as *t*. Help him: find out if he translated the word correctly.
The first line contains word *s*, the second line contains word *t*. The words consist of lowercase Latin letters. The input data do not consist unnecessary spaces. The words are not empty and their lengths do not exceed 100 symbols.
k, n = map(int, input().split())
sp = list(map(int, input().split()))
sp.sort()
mx = 10001
for i in range(n-k+1):
    t = max(sp[i:i+k]) - min(sp[i:i+k])
    
    if mx > t:
        mx = t

print(mx)