// warm heart, wagging tail,and a smile just for you!
//                                                                     ███████████   
//                                                                   ███╬╬╬╬╬╬╬╬╬╬███
//                                                                ███╬╬╬╬╬████╬╬╬╬╬╬███
//                                            ███████████       ██╬╬╬╬╬████╬╬████╬╬╬╬╬██
//                                      █████████╬╬╬╬╬████████████╬╬╬╬╬██╬╬╬╬╬╬███╬╬╬╬╬██
//                               ████████╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬█████████╬╬╬╬╬╬██╬╬╬╬╬╬╬██
//                             ████╬██╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬█████████╬╬╬╬╬╬╬╬╬╬╬██
//                           ███╬╬╬█╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬██╬╬███╬╬╬╬╬╬╬█████
//                         ███╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬██╬╬╬████████╬╬╬╬╬██
//                       ███╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬███╬╬╬╬╬╬╬╬╬███
//                     ███╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬█████╬╬╬╬╬╬╬██
//                 ████╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬████╬╬╬╬╬████
//     █████████████╬╬╬╬╬╬╬╬██╬╬╬╬╬████╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬█████╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬███╬╬╬╬██████
//   ████╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬██╬╬██████╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬██████╬╬╬╬╬╬╬███████████╬╬╬╬╬╬╬╬██╬╬╬██╬╬╬██
// ███╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬██╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬██╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬████╬╬╬╬╬╬╬╬╬╬╬█╬╬╬╬╬╬╬██╬╬╬╬╬╬╬╬██
// ██╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬██╬╬╬╬▓▓▓▓▓▓╬╬╬████╬╬████╬╬╬╬╬╬╬▓▓▓▓▓▓▓▓██╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬██╬╬╬╬╬╬╬███
// ██╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬██████▓▓▓▓▓▓▓╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬▓▓▓▓▓▓▓██╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬██╬╬╬╬█████
// ███╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬███╬╬╬╬╬██╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬█████╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬████████
//   ███╬╬╬╬╬╬╬╬╬╬╬╬╬█████╬╬╬╬╬╬╬╬██╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬███╬╬██╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬██
//       ██████████████  ████╬╬╬╬╬╬███████████████████████████╬╬╬╬╬██╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬████
//                         ███████                           █████  ███████████████████  
#include "bits/stdc++.h"
using namespace std;
#define MOD 1000000007
const double EPS = 1e-9;
#define INF (1LL<<60)
#define fs first
#define sc second
#define pb push_back
#define int long long
#define FOR(i,a,b) for(int i=(a);i<(b);i++)
#define RFOR(i,a,b) for(int i = (b-1);i>=a;i--)
#define REP(i,n)  FOR(i,0,n)
#define RREP(i,n) RFOR(i,0,n)
#define ITR(itr,mp) for(auto itr = (mp).begin(); itr != (mp).end(); ++itr)
#define RITR(itr,mp) for(auto itr = (mp).rbegin(); itr != (mp).rend(); ++itr)
#define range(i,a,b) ((a)<=(i) && (i)<(b))
#define debug(x)  cout << #x << " = " << (x) << endl;
#define SP << " " << 
typedef pair<int,int> P;
typedef vector<vector<P> > Graph;
typedef vector<int> vec;
typedef vector<vector<int>> mat;

void ng(){
  cout << "NO" << endl;
  exit(0);
}

void print(mat& ans){
  char tile[] = {'.','<','>','^','v'};
  cout << "YES" << endl;
  REP(i,ans.size()){
    REP(j,ans[i].size()) cout << tile[ans[i][j]];
    cout << endl;
  }
  exit(0);
}

signed main(){
  ios::sync_with_stdio(false);
  cin.tie(0);

  int n,m,x,y;
  cin >> n >> m >> x >> y;

  int X = x, Y = y;

  mat ans(n,vec(m,0));
  if(n%2){
    REP(i,m-1){
      if(x){
        ans[n-1][i] = 1;
        ans[n-1][i+1] = 2;
        i++;
        x--;
      }
    }
  }

  if(m%2){
    REP(i,n-1){
      if(y){
        ans[i][m-1] = 3;
        ans[i+1][m-1] = 4;
        i++;
        y--;
      }
    }
  }

  REP(i,n-1){
    REP(j,m-1){
      REP(k,2){
        if(x){
          if(ans[i+k][j] || ans[i+k][j+1]) continue;
          ans[i+k][j] = 1;
          ans[i+k][j+1] = 2;
          x--;
        }
      }
      j++;
    }
    i++;
  }
  REP(i,m-1){
    REP(j,n-1){
      REP(k,2){
        if(y){
          if(ans[j][i+k] || ans[j+1][i+k]) continue;
          ans[j][i+k] = 3;
          ans[j+1][i+k] = 4;
          y--;
        }
      }
      j++;
    }
    i++;
  }
  if(x==0 && y==0) print(ans);

  REP(i,n) REP(j,m) ans[i][j] = 0;
  if(n>=3 && m>=3){
    ans[n-1][m-2] = ans[n-3][m-3] = 1;
    ans[n-1][m-1] = ans[n-3][m-2] = 2;
    ans[n-2][m-3] = ans[n-3][m-1] = 3;
    ans[n-2][m-1] = ans[n-1][m-3] = 4;
  }

  x = X-2; y =Y-2;
  if(x < 0 || y < 0) ng();

  if(n%2){
    REP(i,m-4){
      if(x){
        ans[n-1][i] = 1;
        ans[n-1][i+1] = 2;
        i++;
        x--;
      }
    }
  }

  if(m%2){
    REP(i,n-4){
      if(y){
        ans[i][m-1] = 3;
        ans[i+1][m-1] = 4;
        i++;
        y--;
      }
    }
  }

  REP(i,n-1){
    REP(j,m-1){
      REP(k,2){
        if(x){
          if(ans[i+k][j] || ans[i+k][j+1]) continue;
          ans[i+k][j] = 1;
          ans[i+k][j+1] = 2;
          x--;
        }
      }
      j++;
    }
    i++;
  }
  REP(i,m-1){
    REP(j,n-1){
      REP(k,2){
        if(y){
          if(ans[j][i+k] || ans[j+1][i+k]) continue;
          ans[j][i+k] = 3;
          ans[j+1][i+k] = 4;
          y--;
        }
      }
      j++;
    }
    i++;
  }
  if(x==0 && y==0) print(ans);
  
  ng();

  return 0;
}

Measured memory_bytes: 9088