class Input_kyopro: def II(self): return int(input()) def MI(self): return map(int,input().split()) def MS(self): return map(str,input().split()) def LMI(self): return list(self.MI()) def LMS(self): return list(self.MS()) def LLI(self,N): return [self.LMI() for _ in range(N)] def LLS(self,N): return [self.LMS() for _ in range(N)] def LS(self,N): return [input() for _ in range(N)] def LSL(self,N): return [list(input()) for _ in range(N)] def LI(self,N): return [self.II() for _ in range(N)] I=Input_kyopro() #入力 T=I.II() for _ in range(T): N,X=I.MI() A=[0]*N tmp=0 for i in range(N): ok=0 ng=10**18+1 while abs(ok-ng)>1: mid=(ok+ng)//2 if tmp+(N-i)*(mid+mid+N-i-1)//2<=X: ok=mid else: ng=mid A[i]=ok tmp+=A[i] if A[0]==0: print(-1) else: print(*A[::-1])