#include <bits/stdc++.h>
using namespace std;
stack<int> factors;
void generateFactors(int D) {
  vector<int> tmp;
  while (D > 1) {
    int i;
    for (i = 2; i <= D; i++) {
      if (D % i == 0) {
        tmp.push_back(i);
        break;
      }
    }
    D = D / i;
  }
  for (size_t i = 1; i <= tmp.size(); i++) {
    int fac = tmp.at(i - 1);
    int prodP;
    factors.push(fac);
    for (size_t j = i + 1; j <= tmp.size(); j++) {
      fac *= tmp.at(j - 1);
      if (j != i + 1) {
        prodP = tmp.at(j - 1) * tmp.at(i - 1);
        factors.push(prodP);
      }
      factors.push(fac);
    }
  }
  factors.push(1);
}
void printR(int start, int n, int d) {
  for (int i = 0; i < n; i++) {
    cout << start << " ";
    start += d;
  }
  cout << "\n";
}
int main() {
  int N;
  cin >> N;
  for (int i = 0; i < N; ++i) {
    int n, x, y;
    cin >> n >> x >> y;
    int D = y - x;
    generateFactors(D);
    pair<pair<int, int>, int> mx{{0, 0}, 0};
    while (!factors.empty()) {
      int start = x;
      int d = factors.top();
      if (x % d < x) {
        start = x % d;
        if (start == 0) start += d;
      }
      int m = start + (n - 1) * d;
      while (start < x && m < y) {
        start += d;
        m = start + (n - 1) * d;
      }
      if (m >= y and (mx.second == 0 or m < mx.second)) {
        mx.first.first = start;
        mx.first.second = d;
        mx.second = m;
      }
      factors.pop();
    }
    printR(mx.first.first, n, mx.first.second);
  }
  return 0;
}
