#include <bits/stdc++.h>
 using namespace std;
#define rep(i,n) for(int i=0;i<n;i++)
 int main(){
  int n,ans=0;cin>>n;
   vector<int> p(n);
   rep(i,n)cin>>p.at(i);
   rep(i,n-2){
   if((p.at(i)<p.at(i+1))+(p.at(i+1)>p.at(i+2))==1)ans++;
   }
   cout<<ans<<endl;
}
### Prompt

Please formulate a CPP solution to the following problem:

We have a permutation p = {p_1,\ p_2,\ ...,\ p_n} of {1,\ 2,\ ...,\ n}.

Print the number of elements p_i (1 < i < n) that satisfy the following condition:

* p_i is the second smallest number among the three numbers p_{i - 1}, p_i, and p_{i + 1}.

Constraints

* All values in input are integers.
* 3 \leq n \leq 20
* p is a permutation of {1,\ 2,\ ...,\ n}.

Input

Input is given from Standard Input in the following format:


n
p_1 p_2 ... p_n


Output

Print the number of elements p_i (1 < i < n) that satisfy the condition.

Examples

Input

5
1 3 5 4 2


Output

2


Input

9
9 6 3 2 5 8 7 4 1


Output

5

### Response

```cpp
#include <bits/stdc++.h>
 using namespace std;
#define rep(i,n) for(int i=0;i<n;i++)
 int main(){
  int n,ans=0;cin>>n;
   vector<int> p(n);
   rep(i,n)cin>>p.at(i);
   rep(i,n-2){
   if((p.at(i)<p.at(i+1))+(p.at(i+1)>p.at(i+2))==1)ans++;
   }
   cout<<ans<<endl;
}
```