problem

$ M $ students will be tested in a classroom with $ N $ seats in a straight line. Seats are numbered $ 1 \ dots N $ from the front, and $ 1 $ per seat can seat $ 1 $ students.

Now each student is sitting in the $ A_1, \ dots, A_M $ seats.

To start the test, the following conditions must be met:

* $ 1 \ dots M $ students are sitting in every seat.



Therefore, we decided to repeat the following operations until the conditions were met.

* Move the student sitting at the back and sit at the front of the vacant seats.



Find the number of operations required to meet the conditions.



output

Output the number of operations required to meet the conditions. Also, output a line break at the end.

Example

Input

6 4
1 4 5 6


Output

2
#include <cstdio>
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <set>
#include <cstring> 

using namespace std;

#ifdef DEBUG_MODE
#define DBG(n) n;
#else
#define DBG(n) ;
#endif
#define REP(i,n) for(ll (i) = (0);(i) < (n);++i)
#define PB push_back
#define MP make_pair
#define FI first
#define SE second
#define SHOW1d(v,n) {for(int W = 0;W < (n);W++)cerr << v[W] << ' ';cerr << endl << endl;}
#define SHOW2d(v,i,j) {for(int aaa = 0;aaa < i;aaa++){for(int bbb = 0;bbb < j;bbb++)cerr << v[aaa][bbb] << ' ';cerr << endl;}cerr << endl;}
#define ALL(v) v.begin(),v.end()
#define Decimal fixed<<setprecision(20)
#define INF 1000000000
#define LLINF 1000000000000000000LL
#define MOD 1000000007

typedef long long ll;


int main() {
	ll n, m; cin >> n >> m;
	ll ans = 0;
	REP(i, m) {
		int a; cin >> a;
		if (a > m)ans++;
	}
	cout << ans << endl;
	return 0;
}

