
import std.stdio;
import std.string;
import std.algorithm;
import std.conv;
import std.array;

int[] read_nums() {return readln.chomp.split(" ").map!(to!(int)).array;}

void main() {
  while(true) {
    int[] data = read_nums;
    int people = data[0];
    int kinds = data[1];
    if (people == 0 && kinds == 0) break;
    int[] limit = read_nums;
    int[] sum = new int[](kinds);
    bool ans = true;
    foreach(i; 0..people) {
      int[] line = read_nums;
      foreach(int j, x; line) {
        sum[j] += x;
      }
    }
    for(int i = 0; i < sum.length; i++) {
      if (sum[i] > limit[i]) {
        ans = false;
        break;
      }
    }
    writeln(ans ? "YES" : "NO");
  }  
}