#include <bits/stdc++.h>
using namespace std;
 
#define int long long
//#define int unsigned int
//#define pb push_back
//#define mp make_pair
#define mod 1000000007
#define double long double
#define all(x) x.begin(), x.end()
#define debug(x) cout << #x << " = " << x << "\n"
const int inf=1e18;
const int maxu=200005;
//int d;
//vector <int> adj[maxu];  
//vector <int> vis(maxu);
//vector <vector <int>> v(maxu);

/*int fun(int a,int b){
    if(b==0)return 1;
    else if(a==1)return 1;
    int temp=fun(a,b/2)%mod;
    temp=(temp*temp)%mod;
     if(b%2==1)temp=(temp*a)%mod;
    return temp%mod;
}
 
int inv(int a,int b){
    return (a*fun(b,mod-2))%mod;
}

void dfs(int s){
    if(vis[s])return;
    vis[s]=1;
    for(auto u:adj[s]){
        dfs(u);
    }
}*/

 
signed main()
{   /*  
   #ifndef ONLINE_JUDGE 
   freopen("inputhsr.txt", "r", stdin);  
   freopen("outputhsr.txt", "w", stdout); 
   #endif 
   */
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);

    int i,j,k=0,n,t=1,m,l=0;
    
    
    
    cin>>t;
    while(t--){
        cin>>n>>k;
        int a[n];
        for(i=0;i<n;i++){
            cin>>a[i];
        }
        if(n==1){
            cout<<-1<<"\n";
            continue;
        }
        int ans=0;
        int maxi=a[n-1];
        
        for(i=n-1;i>=0;i--){
            maxi=max(maxi,a[i]);
            ans+=max(0ll,maxi-a[i]);
        }
        if(ans<k){
            //cout<<ans<<"\n";
            cout<<-1<<"\n";
            continue;
            
        }
      /*  if(ans==k){
            for(i=0;i<n-1;i++){
                if(a[i+1]>a[i]){
                    ans=i+1;
                }
            }
            cout<<ans<<"\n";
            continue;
        }
        
        if(k==0){
            ans=-1;
            for(i=0;i<n-1;i++){
                if(a[i]>=a[i+1])ans=i;
            }
            cout<<ans+2<<"\n";
            continue;
        }*/
        l=-1;
        bool x=true;
        while(k>0){
            x=true;
            for(j=0;j<n-1;j++){
                if(a[j]<a[j+1]){
                    //k-=(a[j+1]-a[j]);
                    //cout<<k<<" "<<j<<"\n";
                    a[j]++;
                    k--;
                    if(k>0){
                    break;
                }
                }
                
               if(k<=0){
                    l=j+1;
                    x=false;
                    break;
                }
            
            }
            if(x==false)break;
        }
        //cout<<k<<"\n";
        cout<<l<<"\n";
        /*
       for(i=0;i<=n;i++)vis[i]=0;
       for(i=0;i<=n;i++){
            adj[i].clear();
       }
       */
       
        /*string s;
        cin>>s;
        n=s.length();*/

        //memset(a,0,sizeof(a));
        //cout<<fixed<<setprecision(10)<<ans<<"\n";
       
    }
    return 0;
}

