a dfs solution for the problem
#pragma GCC optimize("Ofast")
#pragma GCC target("avx,avx2,fma")
#pragma GCC optimize("unroll-loops")
#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
using namespace __gnu_pbds;
using namespace std;
#define ll long long int
typedef tree<int, null_type, less<int>, rb_tree_tag, tree_order_statistics_node_update> indexed_set;
typedef tree<long long, null_type, less_equal<>, rb_tree_tag, tree_order_statistics_node_update> indexed_multiset;
#define sor(vec) sort(vec.begin(), vec.end())
#define rever(vec) reverse(vec.begin(), vec.end())
#define trav(x , p) for(auto &x : p)
#define ull unsigned long long
#define MAXN 200005
#define fi first
#define se second
#define FOR(i,a,b) for(int i=a;i<(int)b;i++)
const ll mod =998244353;
#define dbg(i,j,k) cout<<"("<<i<<","<<j<<")"<<" "<<k<<" "
#define dbgp(i,j) cout<<i<<" "<<j<<endl
#define print cout<<"**"<<endl;
const int inf=1e9+7;
void vcin(vector<ll> &n){for(int i=0;i<int(n.size());i++) cin>>n[i];}
void vcout(vector<ll> &n){for(int i=0;i<int(n.size());i++){cout<<n[i]<<" ";}cout<<endl;}
const ll MOD = 1e9+7;
double eps = 0.0000001;
#define endl "\n";
//member functions :
//1. order_of_key(k) : number of elements strictly lesser than k
//2. find_by_order(k) : k-th element in the set
// cout<<"Case #"<<p<<": "<<ans<<endl;
void dfs(int i,int j,vector<vector<bool>>&vis, vector<vector<int>>&grid,int curr)
{
int n=grid.size();
int m=grid[0].size();
if(i<0 || j<0 ||i>=n ||j>=m || vis[i][j])
return ;
vis[i][j]=true;
if(grid[i][j]==0)
grid[i][j]=curr;
dfs(i+1,j+1,vis,grid,curr);
dfs(i-1,j+1,vis,grid,curr);
dfs(i+1,j-1,vis,grid,curr);
dfs(i-1,j-1,vis,grid,curr);
}
void solve()
{
int n,m;
cin>>n>>m;
vector<vector<int>> grid(n,vector<int>(m));
int x1,y1;
cin>>x1>>y1;
int x2,y2;
cin>>x2>>y2;
vector<vector<bool>> vis(n,vector<bool>(m,false));
// vis[x1-1][y1-1]=true;
vis[x2-1][y2-1]=true;
dfs(x1-1,y1-1,vis,grid,1);
vis[x2-1][y2-1]=false;
dfs(x2-1,y2-1,vis,grid,2);
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
if(grid[i][j])
{
cout<<grid[i][j]<<" ";
}
else
cout<<3<<" ";
}
cout<<endl;
}
}
int32_t main()
{
ios::sync_with_stdio(false);
std::cin.tie(nullptr);
int t;
cin>>t;
while(t--)
{
solve();
}
}