#include <algorithm>
#include <iomanip>
#include <iostream>
#include <vector>
#include <set>
#include <numeric>
#include <map>
#include <unordered_map>
using namespace std;
#define all(a) a.begin(), a.end()
#define ll long long
#define fo(i,n) for (long long i = 0; i < n; i++)
#define fastIO ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);
int main()
{
    fastIO
    ll i,n,m,k,input;
    cin >> i;
    while (i--)
    {
        cin >> n >> m;
        vector<ll> a(n);
        bool cond = true;
        fo(j,n)
        {
            cin >> input;
            a[j] = input;
        }
        cin >> m;
        for (int j = 0; j < n; j++)
        {
            if (j == 0)
            {
                if (m-a[j] < a[j])
                {
                    a[j] = m-a[j];
                }
            }
            else
            {
                if (m-a[j] <= a[j] && m-a[j] >= a[j-1])
                {
                    a[j] = m-a[j];
                }
                else
                {
                    if (a[j] < a[j-1])
                    {
                        a[j] = m-a[j];
                    }
                }
                if (a[j] < a[j-1])
                {
                    cond = false;
                    break;
                }
            }
        }
        if (cond)
        {
            cout << "YES";
        }
        else
        {
            cout << "NO";
        }
        cout << '\n';
    }
}