You've got an array *a*, consisting of *n* integers: *a*<sub class="lower-index">1</sub>, *a*<sub class="lower-index">2</sub>, ..., *a*<sub class="lower-index">*n*</sub>. Your task is to find a minimal by inclusion segment [*l*, *r*] (1 ≤ *l* ≤ *r* ≤ *n*) such, that among numbers *a*<sub class="lower-index">*l*</sub>,  *a*<sub class="lower-index">*l* + 1</sub>,  ...,  *a*<sub class="lower-index">*r*</sub> there are exactly *k* distinct numbers.

Segment [*l*, *r*] (1 ≤ *l* ≤ *r* ≤ *n*; *l*, *r* are integers) of length *m* = *r* - *l* + 1, satisfying the given property, is called minimal by inclusion, if there is no segment [*x*, *y*] satisfying the property and less then *m* in length, such that 1 ≤ *l* ≤ *x* ≤ *y* ≤ *r* ≤ *n*. Note that the segment [*l*, *r*] doesn't have to be minimal in length among all segments, satisfying the given property.
The first line contains two space-separated integers: *n* and *k* (1 ≤ *n*, *k* ≤ 10<sup class="upper-index">5</sup>). The second line contains *n* space-separated integers *a*<sub class="lower-index">1</sub>, *a*<sub class="lower-index">2</sub>, ..., *a*<sub class="lower-index">*n*</sub> — elements of the array *a* (1 ≤ *a*<sub class="lower-index">*i*</sub> ≤ 10<sup class="upper-index">5</sup>).
# link: http://codeforces.com/problemset/problem/224/B?fbclid=IwAR22ISYhm6VGLNXgOK1w1OFAMuMcnf_hNqB_dEQrZiG9co3eGuPQmV9Y2-Q

n, k = list(map(int, input().split()))
a = list(map(int, input().split()))
count = 0 # total count of different numbers in the segment
cnt = [0]*(10**5+1)
for R in range(n):
    cnt[a[R]] += 1
    if cnt[a[R]] == 1:
        count += 1
    L = 1
    while count == k:
        cnt[a[L-1]] -= 1
        if cnt[a[L-1]] == 0:
            count -= 1
            print(L, R+1)
            exit()
        else:
            L += 1

print(-1, -1)

'''
idea: 2 pointers - 2 con trỏ chạy
pseudocode: O(2n) ~ O(n) time complexity
    cnt = [0]*(10^5+1)
    count = 0
    for R = 1 to N:
        cnt[a[R]] += 1
        if cnt[a[R]] == 1:
            count += 1
        
        L = 1
        while count == K: 
            cnt[a[L]] -= 1
            if cnt[a[L]] == 0:
                print L R
                Exit()
            else: 
                L += 1
    output -1 -1
'''