/*#include <iostream>
#include <list>
#include <iterator>

struct NMK {
    int n, m, k;
};

int main()
{
    int t;
    std::cin >> t;
    std::list<NMK> testovi;

    for (int i = 0; i < t; ++i) {
        NMK nmk;
        std::cin >> nmk.n >> nmk.m >> nmk.k;
        testovi.push_back(nmk);
    }

    for (std::list <NMK>::iterator i = testovi.begin(); i != testovi.end(); ++i) {
        int n = (*i).n;
        int m = (*i).m;
        int k = (*i).k;

        int b = ((n % k) * (((n / k) + 1) * ((n / k) + 2)) / 2) + ((k - (n % k)) * (((n / k) * ((n / k) + 1)) / 2));
        if (m - b >= 0) std::cout << "Tak\n";
        else std::cout << "Nie\n";

    }

}

*/

#include <iostream>

struct NMK {
    int n, k;
    long long m;
};

int main()
{
    int t;
    std::cin >> t;
    NMK nmk[10];

    for (int i = 0; i < t; ++i) {
        std::cin >> nmk[i].n >> nmk[i].m >> nmk[i].k;
    }

    for (int i = 0; i < t; ++i) {
        int n = nmk[i].n;
        int m = nmk[i].m;
        int k = nmk[i].k;

        int poGrupi = n / k;
        int nerasp = n % k;

        int b = (nerasp * ((poGrupi + 1) * (poGrupi + 2)) / 2) + 
                ((k - nerasp) * ((poGrupi * (poGrupi + 1)) / 2));
        if (m - b >= 0) std::cout << "Tak\n"; // AKO IMA OSTATAK BANANICA DOVOLJNO IH JE SVE DATI JEDNOJ OSOBI SA NAJVISE
        else std::cout << "Nie\n";            //  BANANICA U NEKOJ OD GRUPA TAKO DA I DALJE NIKO U GRUPI NEMA ISTI BROJ

    }

}