#include <bits/stdc++.h>
using namespace std;
int main() {
  long int n;
  cin >> n;
  long int ar[n];
  stack<long int> s, t;
  int ans1 = 0, ans2 = 0;
  for (int i = 0; i < n; i++) cin >> ar[i];
  for (int i = 0; i < n; i++) {
    if (ar[i] % 2 == 1) {
      if (s.size() > 0 && (i - s.top() - 1) % 2 == 0)
        s.pop();
      else
        s.push(i);
    }
  }
  if (s.size() <= 1) ans1 = 1;
  for (int i = 0; i < n; i++) {
    if (ar[i] % 2 == 0) {
      if (t.size() > 0 && (i - t.top() - 1) % 2 == 0)
        t.pop();
      else
        t.push(i);
    }
  }
  if (t.size() <= 1) ans2 = 1;
  if ((s.size() + t.size()) <= 1)
    std::cout << "YES" << '\n';
  else
    std::cout << "NO" << '\n';
  return 0;
}
