// inputに入力データ全体が入る
function Main(input) {
	// 1行目がinput[0], 2行目がinput[1], …に入る
	input = input.split("\n");
    nx = input[0].split(" ");
	tmp = input[1].split(" ");
	//文字列から10進数に変換するときはparseIntを使います
	var n = parseInt(nx[0], 10);
    var x = parseInt(nx[1], 10);
      var a = [];
    for(i=0;i<n;i++){var b = parseInt(tmp[i], 10);
                       a[i]=b;}
  
   a.sort();
 
   var cnt = 0;
  if (x<a[0]){cnt=0}else{
   for (i=0;i<n;i++){if (x  >=　a[i] ){ x =x-a[i];
                                   // console.log(x);
                                    cnt = cnt +1;} 
                                    else{break;}
                
                                   } 
    if (x>0　&&　cnt==n) {cnt=cnt-1;}  
    }
    console.log(cnt);                               

}
//*この行以降は編集しないでください（標準入出力から一度に読み込み、Mainを呼び出します）
Main(require("fs").readFileSync("/dev/stdin", "utf8"));