#include <bits/stdc++.h>
int g[120000];
int i, k, n, t;
int main() {
  scanf("%d", &n);
  for (i = 1; i <= n; i++) scanf("%d", &g[i]);
  for (k = n; (k > 0) && (!g[k]); k--)
    ;
  if (n - k == 0)
    puts("NO");
  else if (n - k == 1) {
    puts("YES");
    for (i = 1; i <= n; i++) putchar('(');
    for (i = 1; i <= n; i++) {
      putchar(g[i] + 48);
      putchar(')');
      if (i < n) {
        putchar('-');
        putchar('>');
      }
    }
  } else if (n - k == 2) {
    for (i = 1; i <= k; i++)
      if (g[i] == 0) t = i;
    if (t == 0)
      puts("NO");
    else {
      puts("YES");
      for (i = 1; i <= t + 1; i++) putchar('(');
      for (i = 1; i < t; i++) {
        putchar(g[i] + 48);
        putchar(')');
        putchar('-');
        putchar('>');
      }
      putchar('(');
      putchar('0');
      putchar('-');
      putchar('>');
      for (i = t; i <= n - 2; i++) putchar('(');
      for (i = t + 1; i <= n - 2; i++) {
        putchar(g[i] + 48);
        putchar(')');
        putchar('-');
        putchar('>');
      }
      putchar('0');
      putchar(')');
      putchar(')');
      putchar(')');
      putchar('-');
      putchar('>');
      putchar('0');
      putchar(')');
    }
  } else {
    puts("YES");
    for (i = 1; i < n; i++) putchar('(');
    for (i = 1; i <= n - 3; i++) {
      putchar(g[i] + 48);
      putchar(')');
      putchar('-');
      putchar('>');
    }
    putchar('(');
    putchar('0');
    putchar('-');
    putchar('>');
    putchar('0');
    putchar(')');
    putchar(')');
    putchar('-');
    putchar('>');
    putchar('0');
    putchar(')');
  }
  return 0;
}
