#include<bits/stdc++.h>
using namespace std;
int a[1000000],n,x,ans=-1,max1;
int sa(int h){
int s=0;
for(int i=0;i<n;i++){
if(h<a[i]){
s+=a[i]-h;
}
}
return s;
}
void ss(int l,int r){
if(l<=r){
int mid=(l+r)/2;
if(sa(mid)==x) ans=mid;
if(sa(mid)<x) ss(l,mid-1);
if(sa(mid)>x) ss(mid+1,r);
}
}
int main(){
cin>>n>>x;
for(int i=0;i<n;i++) cin>>a[i];
for(int i=0;i<n;i++){
if(a[i]>max1){
max1=a[i];
}
}
ss(0,max1);
cout<<ans;
return 0;
}
/**************************************************************
Problem: 1908
User: zzz
Language: C++
Result: Wrong Answer
****************************************************************/