#include <bits/stdc++.h>   using namespace std;   long long int d[300002];   int safe[300002];   bool solve() {     long long int n, k, l, i;     cin >> n >> k >> l;     for (i = 1; i <= n; i++) cin >> d[i];     int tide, dir, mtide;     tide = k;     dir = -1;     for (i = 1; i <= n; i++) {       if (d[i] + k <= l)         tide = k, dir = -1;       else if (d[i] > l)         return false;       else {         mtide = l - d[i];         if (tide + dir <= mtide) {           tide += dir;           if (tide == 0) dir = 1;         } else if (dir == -1 && mtide < tide - 1) {           tide = mtide;           if (tide == 0) dir = 1;         } else           return false;       }     }     return true;   }   int main() {     ios::sync_with_stdio(false);     cin.tie(0);     cout.tie(0);     int t, i;     cin >> t;     while (t--) {       if (solve())         cout <<  Yes n ;       else         cout <<  No n ;     }     return 0;   }   