T = gets.to_i T.times do n, m = gets.split.map(&:to_i) a = gets.split.map(&:to_i) b = Array.new(n + 1, 0) b[0] = m a.unshift(m) ok = true 0.upto(n - 1) do |i| if b[i] > 0 d = a[i + 1] - b[i + 1] b[i] -= d b[i + 1] += d end if a[i + 1] != b[i + 1] || b[i] < 0 ok = false end if i + 2 <= n && b[i] > 0 b[i + 2] += b[i] b[i] = 0 ok = false if b[i + 2] > a[i + 2] end # pp b end if ok puts "Yes" else puts "No" end end