#include <bits/stdc++.h>
using namespace std;
long long dp[65][1 << 10][2][2];
int was[65][1 << 10][2][2];
long long dp2[11][65][1 << 10];
int it;
int num[65];
int sz;
int bp[1 << 10];
int b;
void conv(long long n, int b) {
  sz = 0;
  do {
    num[sz++] = n % b;
  } while (n /= b);
}
string pr(int mask) {
  string res;
  for (int i = 0; i < b; ++i) {
    if (mask & (1 << i)) {
      res += '1';
    } else {
      res += '0';
    }
  }
  return res;
}
long long f(int pos, int mask, int eq, int lz) {
  if (pos == 0) return mask == 0 && !lz;
  if (pos < bp[mask]) return 0;
  long long &res = dp[pos][mask][eq][lz];
  if (!lz && bp[mask] % 2 != pos % 2) return 0;
  if (was[pos][mask][eq][lz] == it) return res;
  was[pos][mask][eq][lz] = it;
  res = 0;
  if (eq == 1) {
    int nmask = mask ^ (1 << num[pos - 1]);
    res += f(pos - 1, nmask, 1, 0);
    for (int d = 0; d < num[pos - 1]; ++d) {
      int nmask = (lz && !d) ? mask : (mask ^ (1 << d));
      res += f(pos - 1, nmask, 0, lz && !d);
    }
  } else {
    if (!lz)
      res += dp2[b][pos - 1][mask];
    else {
      for (int d = 0; d < b; ++d) {
        int nmask = (lz && !d) ? mask : (mask ^ (1 << d));
        res += f(pos - 1, nmask, 0, lz && !d);
      }
    }
  }
  return res;
}
long long calc(int b, long long n) {
  if (n == 0) return 0;
  conv(n, b);
  ++it;
  long long res = f(sz - 1, 1 << num[sz - 1], 1, 0);
  for (int i = 0; i < num[sz - 1]; ++i) {
    int mask = i ? 1 << i : 0;
    res += f(sz - 1, mask, 0, i == 0);
  }
  return res;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  for (int i = 0; i < 1 << 10; ++i) {
    bp[i] = __builtin_popcount(i);
  }
  for (int i = 2; i <= 10; ++i) {
    for (int j = 0; j < i; ++j) {
      dp2[i][0][1 << j] = 1;
    }
  }
  for (int i = 2; i <= 10; ++i) {
    for (int len = 1; len < 65; ++len) {
      for (int mask = 0; mask < 1 << i; ++mask) {
        for (int d = 0; d < i; ++d) {
          dp2[i][len][mask] += dp2[i][len - 1][mask ^ (1 << d)];
        }
      }
    }
  }
  int q;
  cin >> q;
  for (int tc = 1; tc <= q; ++tc) {
    long long l, r;
    cin >> b >> l >> r;
    long long rt = calc(b, r);
    long long lt = calc(b, l - 1);
    cout << max(0ll, rt - lt) << '\n';
  }
  return 0;
}
