#include<iostream>
using namespace std;
int main(){
long long q;
cin>>q;
while(q){
q--;
long long n;
cin>>n;
cout<<n<<endl;
long long a[n+1]={0};
long long t[n+1];
t[0]=0;
for(long long i=1;i<=n;i++){
cin>>a[i];
t[i]=1;
}
long long i=1;
while(i<=n){
long long tnum=0,last=i;
while(a[i]==-1){
i++;
tnum++;
}
if(i>n){
for(long long j=last;j<i;j++){
cout<<1<<" ";
}
return 0;
}
for(long long j=i-tnum;j<i;j++){
cout<<(a[i]-a[i-tnum-1])/(tnum+1)<<" ";
}
cout<<a[i]-a[i-tnum-1]-((a[i]-a[i-tnum-1])/(tnum+1))*tnum<<" ";
i++;
}
cout<<endl;
}
return 0;
}