#include <bits/stdc++.h>
using namespace std;

int main() {
	int t;
	cin>>t;
	while(t>0)
	{
	    int n,k;
	    cin>>n>>k;
	    int pos[k];
	   priority_queue<pair<int,int>,vector<pair<int,int>>,greater<pair<int,int>>>pq;
	    for(int i=0;i<k;i++)
	    {
	        cin>>pos[i];
	        pos[i]--;
	        
	    }
	    int temp[k];
	    for(int i=0;i<k;i++)
	    {
	        cin>>temp[i];
	        pq.push({temp[i],pos[i]});
	      
	    }
	    int res[n];
	    for(int i=0;i<n;i++)
	    {
	        res[i]=INT_MAX;
	    }
	    for(int i=0;i<k;i++)
	    {
	        res[pos[i]]=temp[i];
	    }
	    while(!pq.empty())
	    {
	        int x=pq.top().first;
	        int y=pq.top().second;
	        pq.pop();
	        for(int i=y-1;i>=0;i--)
	        {
	            if(x-i+y<res[i])
	            res[i]=x+y-i;
	            else
	            break;
	        }
	        for(int i=y+1;i<n;i++)
	        {
	            if(i-y+x<res[i])
	            res[i]=i-y+x;
	            else
	            break;
	        }
	    }
	    for(int i=0;i<n;i++)
	    cout<<res[i]<<" ";
	    cout<<endl;
	    t--;
	}
	return 0;
}
