14
7 150
11 21 25 35 45 52 62
7 145
11 21 31 41 51 61 71
7 50
2 12 22 32 42 52 62
7 204
11 21 21 31 41 51 61
7 101
11 21 31 41 51 61 71
7 107
11 21 31 41 51 59 69
7 218
11 19 29 39 49 54 64
7 199
58 7 24 70 5 43 69
7 335
72 55 43 64 96 23 57
7 36
96 83 98 58 73 30 23
7 92
68 22 70 37 12 85 76
7 264
33 51 20 6 42 6 6
7 131
56 64 34 83 85 45 66
7 285
86 47 15 48 65 60 28
 8
12 376
7 17 22 32 40 50 52 62 72 81 91 92
12 543
11 21 31 41 51 61 71 79 84 87 91 95
12 10
11 21 31 41 46 56 60 61 63 73 83 93
12 483
11 21 31 41 51 61 71 81 91 92 99 100
12 27
9 16 5 50 58 16 17 97 98 84 91 53
12 260
50 62 32 42 23 8 95 64 54 89 79 66
12 172
60 7 60 49 5 80 1 78 41 9 57 65
12 533
39 22 32 44 26 4 26 100 42 29 36 1
 1
100 323
11 21 21 24 34 44 54 64 74 84 94 98 99 99 99 99 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100
 1
52 671191111
77 99 63 2 25 7 55 5 98 39 3 89 57 60 80 76 11 42 22 9 78 26 78 88 42 59 17 91 31 57 73 23 61 46 80 49 47 59 23 31 60 70 17 46 67 48 16 50 83 22 39 24
 9
1 1
3
10 81
1 1 1 1 1 1 1 1 1 10
2 100
1 100
2 99
1 100
20 25
1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5
5 3
5 4 3 2 1
25 2114
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100
30 2860
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100
5 1000000000
1 1 1 1 100
 2
1 2
1
1 2
1
 1
100 892
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100
 20
5 166
11 21 31 41 51
5 37
11 21 31 41 51
5 231
11 21 31 41 51
5 58
11 21 31 41 51
5 157
11 21 31 41 51
5 179
11 21 31 41 51
5 150
11 21 31 41 51
5 122
11 20 27 37 47
5 204
11 21 31 41 51
5 62
3 13 23 33 43
5 106
43 58 51 86 34
5 42
31 25 62 45 100
5 36
20 26 37 5 69
5 169
41 99 81 83 17
5 76
68 75 81 47 60
5 151
27 69 22 83 50
5 6
8 12 57 34 13
5 116
42 37 17 77 95
5 235
17 37 96 53 93
5 20
7 81 25 96 98
 2
50 1420
11 21 31 41 51 61 71 78 80 86 92 93 93 94 96 97 97 98 99 99 99 99 99 99 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100
50 810
94 98 37 19 87 45 62 47 44 85 18 93 54 50 82 41 33 8 98 16 84 94 25 49 74 74 47 77 31 98 2 91 45 37 45 45 75 28 68 85 62 50 78 37 11 9 58 16 82 62
 5
20 591
11 21 31 41 44 54 63 69 79 81 87 97 100 100 100 100 100 100 100 100
20 493
3 12 22 32 42 51 61 71 81 91 100 100 100 100 100 100 100 100 100 100
20 420
11 21 31 41 51 61 71 81 86 96 97 98 99 100 100 100 100 100 100 100
20 104
70 3 3 52 27 61 27 70 52 72 23 84 18 15 19 29 62 15 34 82
20 41
30 2 96 15 19 31 63 67 11 95 100 53 95 93 92 60 59 89 95 76
 1
100 989
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100
 5
20 645651756
11 21 31 41 51 56 60 70 80 90 98 98 99 99 100 100 100 100 100 100
20 465601593
11 21 31 41 51 61 65 66 76 83 87 92 100 100 100 100 100 100 100 100
20 479141829
11 17 27 37 47 57 63 73 83 93 99 100 100 100 100 100 100 100 100 100
20 967667371
81 33 1 88 69 83 1 98 30 54 1 97 11 11 63 96 63 60 91 31
20 64564761
17 6 1 87 35 20 75 73 16 91 16 17 69 78 3 4 56 83 53 49
 1
100 4525
11 21 31 41 51 52 62 72 82 83 93 96 96 96 99 99 99 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100
 10
10 451
11 21 31 41 41 51 56 66 67 77
10 216
2 12 22 32 42 52 62 72 82 92
10 220
11 21 31 41 46 56 66 70 80 81
10 394
11 21 31 36 46 47 52 55 65 69
10 408
11 21 31 41 51 61 71 81 90 99
10 272
99 33 25 22 87 37 98 72 8 22
10 79
61 93 13 45 43 41 92 96 24 35
10 62
3 74 14 81 10 40 77 58 59 46
10 284
81 14 56 2 2 9 84 9 52 81
10 215
94 58 7 80 6 13 27 98 13 68

4
1
2
-1
5
4
-1
5
-1
-1
5
-1
-1
-1
 10
-1
1
-1
1
4
3
-1
 6
 -1
 -1
1
-1
1
12
-1
23
12
-1
 -1
-1
 99
 -1
3
-1
3
-1
-1
-1
-1
-1
3
1
1
4
-1
-1
-1
1
2
-1
1
 -1
20
 -1
2
1
5
2
 2
 -1
-1
-1
-1
-1
 -1
 -1
2
7
-1
8
6
6
1
5
7

//package contest.CodeforcesRound699;

import java.io.*;
import java.util.*;

/***********************
 * @oj: codeforces
 * @id: hitwanyang
 * @email: 296866643@qq.com
 * @date: 2021/2/6 13:44
 * @url: https://codeforc.es/contest/1481/problem/B
 ***********************/

public class B {
    InputStream is;
    FastWriter  out;
    String      INPUT = "";

    //提交时注意需要注释掉首行package
    //基础类型数组例如long[]使用Arrays排序容易TLE,可以替换成Long[]
    //int 最大值2**31-1,2147483647;
    //尽量使用long类型,避免int计算的数据溢出
    void solve() {
        int t = ni();
        for (; t > 0; t--)
            go();
    }

    void go() {
        int n = ni(), k = ni();
        int index = k;
        int[] a = na(n);
        List<Integer> pos = new ArrayList<>();
        while (k > 0) {
            boolean f = true;
            for (int i = 0; i < n; i++) {
                if (i > 0 && a[i] > a[i - 1]) {
                    a[i - 1]++;
                    pos.add(i);
                    k--;
                    f = false;
                    break;
                }
            }
            if (f) {
                break;
            }
        }
        //        out.println(a);
        //        out.println(pos.toString());
        if (pos.size() == 0 || k > 0) {
            out.println(-1);
        } else {
            out.println(pos.get(index - 1));
        }
    }

    void run() throws Exception {
        is = System.in;
        out = new FastWriter(System.out);

        long s = System.currentTimeMillis();
        solve();
        out.flush();
        //debug log
        //tr(System.currentTimeMillis() - s + "ms");
    }

    public static void main(String[] args) throws Exception {
        new B().run();
    }

    private byte[] inbuf  = new byte[1024];
    public int     lenbuf = 0, ptrbuf = 0;

    private int readByte() {
        if (lenbuf == -1)
            throw new InputMismatchException();
        if (ptrbuf >= lenbuf) {
            ptrbuf = 0;
            try {
                lenbuf = is.read(inbuf);
            } catch (IOException e) {
                throw new InputMismatchException();
            }
            if (lenbuf <= 0)
                return -1;
        }
        return inbuf[ptrbuf++];
    }

    private boolean isSpaceChar(int c) {
        return !(c >= 33 && c <= 126);
    }

    private int skip() {
        int b;
        while ((b = readByte()) != -1 && isSpaceChar(b))
            ;
        return b;
    }

    private double nd() {
        return Double.parseDouble(ns());
    }

    private char nc() {
        return (char) skip();
    }

    private String ns() {
        int b = skip();
        StringBuilder sb = new StringBuilder();
        while (!(isSpaceChar(b))) { // when nextLine, (isSpaceChar(b) && b != ' ')
            sb.appendCodePoint(b);
            b = readByte();
        }
        return sb.toString();
    }

    private char[] ns(int n) {
        char[] buf = new char[n];
        int b = skip(), p = 0;
        while (p < n && !(isSpaceChar(b))) {
            buf[p++] = (char) b;
            b = readByte();
        }
        return n == p ? buf : Arrays.copyOf(buf, p);
    }

    private int[] na(int n) {
        int[] a = new int[n];
        for (int i = 0; i < n; i++)
            a[i] = ni();
        return a;
    }

    private long[] nal(int n) {
        long[] a = new long[n];
        for (int i = 0; i < n; i++)
            a[i] = nl();
        return a;
    }

    private char[][] nm(int n, int m) {
        char[][] map = new char[n][];
        for (int i = 0; i < n; i++)
            map[i] = ns(m);
        return map;
    }

    private int[][] nmi(int n, int m) {
        int[][] map = new int[n][];
        for (int i = 0; i < n; i++)
            map[i] = na(m);
        return map;
    }

    private int ni() {
        return (int) nl();
    }

    private long nl() {
        long num = 0;
        int b;
        boolean minus = false;
        while ((b = readByte()) != -1 && !((b >= '0' && b <= '9') || b == '-'))
            ;
        if (b == '-') {
            minus = true;
            b = readByte();
        }

        while (true) {
            if (b >= '0' && b <= '9') {
                num = num * 10 + (b - '0');
            } else {
                return minus ? -num : num;
            }
            b = readByte();
        }
    }

    public static class FastWriter {
        private static final int   BUF_SIZE = 1 << 13;
        private final byte[]       buf      = new byte[BUF_SIZE];
        private final OutputStream out;
        private int                ptr      = 0;

        private FastWriter() {
            out = null;
        }

        public FastWriter(OutputStream os) {
            this.out = os;
        }

        public FastWriter(String path) {
            try {
                this.out = new FileOutputStream(path);
            } catch (FileNotFoundException e) {
                throw new RuntimeException("FastWriter");
            }
        }

        public FastWriter write(byte b) {
            buf[ptr++] = b;
            if (ptr == BUF_SIZE)
                innerflush();
            return this;
        }

        public FastWriter write(char c) {
            return write((byte) c);
        }

        public FastWriter write(char[] s) {
            for (char c : s) {
                buf[ptr++] = (byte) c;
                if (ptr == BUF_SIZE)
                    innerflush();
            }
            return this;
        }

        public FastWriter write(String s) {
            s.chars().forEach(c -> {
                buf[ptr++] = (byte) c;
                if (ptr == BUF_SIZE)
                    innerflush();
            });
            return this;
        }

        private static int countDigits(int l) {
            if (l >= 1000000000)
                return 10;
            if (l >= 100000000)
                return 9;
            if (l >= 10000000)
                return 8;
            if (l >= 1000000)
                return 7;
            if (l >= 100000)
                return 6;
            if (l >= 10000)
                return 5;
            if (l >= 1000)
                return 4;
            if (l >= 100)
                return 3;
            if (l >= 10)
                return 2;
            return 1;
        }

        public FastWriter write(int x) {
            if (x == Integer.MIN_VALUE) {
                return write((long) x);
            }
            if (ptr + 12 >= BUF_SIZE)
                innerflush();
            if (x < 0) {
                write((byte) '-');
                x = -x;
            }
            int d = countDigits(x);
            for (int i = ptr + d - 1; i >= ptr; i--) {
                buf[i] = (byte) ('0' + x % 10);
                x /= 10;
            }
            ptr += d;
            return this;
        }

        private static int countDigits(long l) {
            if (l >= 1000000000000000000L)
                return 19;
            if (l >= 100000000000000000L)
                return 18;
            if (l >= 10000000000000000L)
                return 17;
            if (l >= 1000000000000000L)
                return 16;
            if (l >= 100000000000000L)
                return 15;
            if (l >= 10000000000000L)
                return 14;
            if (l >= 1000000000000L)
                return 13;
            if (l >= 100000000000L)
                return 12;
            if (l >= 10000000000L)
                return 11;
            if (l >= 1000000000L)
                return 10;
            if (l >= 100000000L)
                return 9;
            if (l >= 10000000L)
                return 8;
            if (l >= 1000000L)
                return 7;
            if (l >= 100000L)
                return 6;
            if (l >= 10000L)
                return 5;
            if (l >= 1000L)
                return 4;
            if (l >= 100L)
                return 3;
            if (l >= 10L)
                return 2;
            return 1;
        }

        public FastWriter write(long x) {
            if (x == Long.MIN_VALUE) {
                return write("" + x);
            }
            if (ptr + 21 >= BUF_SIZE)
                innerflush();
            if (x < 0) {
                write((byte) '-');
                x = -x;
            }
            int d = countDigits(x);
            for (int i = ptr + d - 1; i >= ptr; i--) {
                buf[i] = (byte) ('0' + x % 10);
                x /= 10;
            }
            ptr += d;
            return this;
        }

        public FastWriter write(double x, int precision) {
            if (x < 0) {
                write('-');
                x = -x;
            }
            x += Math.pow(10, -precision) / 2;
            //		if(x < 0){ x = 0; }
            write((long) x).write(".");
            x -= (long) x;
            for (int i = 0; i < precision; i++) {
                x *= 10;
                write((char) ('0' + (int) x));
                x -= (int) x;
            }
            return this;
        }

        public FastWriter writeln(char c) {
            return write(c).writeln();
        }

        public FastWriter writeln(int x) {
            return write(x).writeln();
        }

        public FastWriter writeln(long x) {
            return write(x).writeln();
        }

        public FastWriter writeln(double x, int precision) {
            return write(x, precision).writeln();
        }

        public FastWriter write(int... xs) {
            boolean first = true;
            for (int x : xs) {
                if (!first)
                    write(' ');
                first = false;
                write(x);
            }
            return this;
        }

        public FastWriter write(long... xs) {
            boolean first = true;
            for (long x : xs) {
                if (!first)
                    write(' ');
                first = false;
                write(x);
            }
            return this;
        }

        public FastWriter writeln() {
            return write((byte) '\n');
        }

        public FastWriter writeln(int... xs) {
            return write(xs).writeln();
        }

        public FastWriter writeln(long... xs) {
            return write(xs).writeln();
        }

        public FastWriter writeln(char[] line) {
            return write(line).writeln();
        }

        public FastWriter writeln(char[]... map) {
            for (char[] line : map)
                write(line).writeln();
            return this;
        }

        public FastWriter writeln(String s) {
            return write(s).writeln();
        }

        private void innerflush() {
            try {
                out.write(buf, 0, ptr);
                ptr = 0;
            } catch (IOException e) {
                throw new RuntimeException("innerflush");
            }
        }

        public void flush() {
            innerflush();
            try {
                out.flush();
            } catch (IOException e) {
                throw new RuntimeException("flush");
            }
        }

        public FastWriter print(byte b) {
            return write(b);
        }

        public FastWriter print(char c) {
            return write(c);
        }

        public FastWriter print(char[] s) {
            return write(s);
        }

        public FastWriter print(String s) {
            return write(s);
        }

        public FastWriter print(int x) {
            return write(x);
        }

        public FastWriter print(long x) {
            return write(x);
        }

        public FastWriter print(double x, int precision) {
            return write(x, precision);
        }

        public FastWriter println(char c) {
            return writeln(c);
        }

        public FastWriter println(int x) {
            return writeln(x);
        }

        public FastWriter println(long x) {
            return writeln(x);
        }

        public FastWriter println(double x, int precision) {
            return writeln(x, precision);
        }

        public FastWriter print(int... xs) {
            return write(xs);
        }

        public FastWriter print(long... xs) {
            return write(xs);
        }

        public FastWriter println(int... xs) {
            return writeln(xs);
        }

        public FastWriter println(long... xs) {
            return writeln(xs);
        }

        public FastWriter println(char[] line) {
            return writeln(line);
        }

        public FastWriter println(char[]... map) {
            return writeln(map);
        }

        public FastWriter println(String s) {
            return writeln(s);
        }

        public FastWriter println() {
            return writeln();
        }
    }

    public void trnz(int... o) {
        for (int i = 0; i < o.length; i++)
            if (o[i] != 0)
                System.out.print(i + ":" + o[i] + " ");
        System.out.println();
    }

    // print ids which are 1
    public void trt(long... o) {
        Queue<Integer> stands = new ArrayDeque<>();
        for (int i = 0; i < o.length; i++) {
            for (long x = o[i]; x != 0; x &= x - 1)
                stands.add(i << 6 | Long.numberOfTrailingZeros(x));
        }
        System.out.println(stands);
    }

    public void tf(boolean... r) {
        for (boolean x : r)
            System.out.print(x ? '#' : '.');
        System.out.println();
    }

    public void tf(boolean[]... b) {
        for (boolean[] r : b) {
            for (boolean x : r)
                System.out.print(x ? '#' : '.');
            System.out.println();
        }
        System.out.println();
    }

    public void tf(long[]... b) {
        if (INPUT.length() != 0) {
            for (long[] r : b) {
                for (long x : r) {
                    for (int i = 0; i < 64; i++) {
                        System.out.print(x << ~i < 0 ? '#' : '.');
                    }
                }
                System.out.println();
            }
            System.out.println();
        }
    }

    public void tf(long... b) {
        if (INPUT.length() != 0) {
            for (long x : b) {
                for (int i = 0; i < 64; i++) {
                    System.out.print(x << ~i < 0 ? '#' : '.');
                }
            }
            System.out.println();
        }
    }

    private void tr(Object... o) {
        System.out.println(Arrays.deepToString(o));
    }
}
