#include using namespace std; #define int long long //#define float long double using uint = unsigned; using ll = long long; using ull = unsigned long long; using ld = long double; using pii = pair; using pll = pair; using pff = pair; using pdd = pair; #define endl '\n' #define all(x) (x).begin(), (x).end() #define pb push_back #define pf push_front #define fi first #define se second const ld PI = 3.14159265358979323846; const ld E = 2.71828182845904523536; const int MOD = 998244353; signed main() { std::cin.tie(nullptr);std::ios::sync_with_stdio(false); int tt = 1; cin >> tt; while(tt--) { int n,k; cin >> n >> k; vector a(10); vector ans; int bef = 0; int beg = 0; for(int i = 0;i <= 1;i++) { if(i == 0) { a.assign(10,8*n*9); a[0] = 0; } else if(i == 1) { a.assign(10,8*n); a[ans[0]] = 0; } int b = k-beg; for(int j = 0;j <= 9;j++) { b -= a[j]; if(b <= 0) { bef = a[j]; ans.pb(j); break; } else beg += a[j]; } } int d = ans[1]; if(ans[0] < ans[1]) d--; int l = (k-beg-8*n)/(d-8); int r = l+1; beg += d*l; a.assign(10,1); a[ans[0]] = 0; a[ans[1]] = 8*(n-r); int b = k-beg; for(int j = 0;j <= 9;j++) { b -= a[j]; if(b <= 0) { bef = a[j]; ans.pb(j); break; } else beg += a[j]; } cout << l+3 << ' ' << ans[0] << ' ' << ans[1] << ' ' << ans[2] << endl; } return 0; }