#include <iostream>
#include <bits/stdc++.h>
using namespace std;
typedef long long  l;
#define fastIO              ios::sync_with_stdio(false), cin.tie(0)
#define pf                  push_front
#define pb                  push_back
#define popb                pop_back()
#define popf                pop_front()
#define loop(i,n)           for(int i=0;i<n;i++)
#define loope(i,n)           for(int i=0;i<=n;i++)
#define loop1(i,n)           for(int i=1;i<n;i++)
#define loop1e(i,n)           for(int i=1;i<=n;i++)
#define loops(i,x,n)        for(int i=x;i<n;i++)
#define loopr(i,n)          for(int i=n-1;i>=0;i--)
#define loop1e(i,n)          for(int i=1;i<=n;i++)
#define F first
#define S second
#define LB lower_bound
#define UB upper_bound
#define vc vector
#define vll vector<long long>
#define pll pair<long long,long long>
#define eb emplace_back
#define pb push_back
//#define mp make_pair
#define INT_BITS 32
// #define  st                  l t; cin>>t;
#define  sn                  l n; cin>>n;
#define all(x) x.begin(),x.end()
//#define  unordered_map<l,l>  u;
#define MOD1 1000000007
bool cmp(pair<string,l>&a,pair<string,l>&b)
{
    return(a.first<b.first);
    
}
l ce(l a , l b)
{
    if(a%b==0)
        return a/b;
    return(a/b)+1;
}
int main()
{
  #ifndef ONLINE_JUDGE
      //for getting input from input.txt
      freopen("input.txt","r",stdin);
      //for writing output to output.txt
      freopen("output1.txt","w",stdout);
      #endif
    
      l t;
      cin>>t;
      while(t--)
      { l n;
        cin>>n;
        l cpy = n;
        l a[n];
       
        for(l i=0;i<n;i++)
        {
            cin>>a[i];
            // cin>>b[i];
        }
        l ans[n],k=0;
        for(l i=n-1;i>=0;i--)
        {
            if(a[i]>0)
            {
                if(a[i]>k)
                {
                    k = a[i]-1;
                    ans[i]=1;
                }
                else
                {
                    k--;
                    ans[i]=1;
                }
                
            }
            else
            {
                if(k>0){
                    ans[i]=1;
                    k--;
                }
                else
                    ans[i]=0;
            }
        }
        loop(i,n)
        cout<<ans[i]<<" ";
        cout<<endl;
       

        
      }
return 0;
        
}