#include <bits/stdc++.h>
using namespace std;
long long a[200010];
int main() {
  cin.tie(0);
  ios_base::sync_with_stdio(false);
  int n;
  cin >> n;
  for (int i = 0; i < n; i++) cin >> a[i];
  int f = 0;
  for (int i = 1; i < n; i++)
    if (a[i] != a[i - 1]) {
      f = 1;
      break;
    }
  if (f == 0) {
    if (a[0] == 0) {
      cout << "YES" << endl;
      for (int i = 0; i < n; i++) cout << '1' << " ";
      exit(0);
    }
    cout << "NO" << endl;
    exit(0);
  }
  long long mx = 0, mxer = 0;
  for (int i = 0; i < n; i++)
    if (a[i] > mx) mx = a[mxer = i];
  while (true) {
    int x = mxer - 1;
    if (x < 0) x += n;
    if (a[x] == a[mxer])
      mxer = x;
    else
      break;
  }
  int flag = 1;
  for (int i = 1; i < n; i++) {
    int x = mxer - 1;
    if (x < 0) x += n;
    if (flag && a[x] == 0) {
      a[x] += a[mxer];
      flag = 0;
    }
    a[x] += a[mxer];
    mxer = x;
  }
  cout << "YES" << endl;
  for (int i = 0; i < n; i++) cout << a[i] << " ";
  return 0;
}
