// ROOT : DRAGON3012009 : WA in Real Life
#include <bits/stdc++.h>
#define FOR(i,l,r) for(int i = l ; i <= r ; i ++)
#define FORD(i,r,l) for(int i = r ; i >= l ; i --)
#define REP(i, a ) for(int i = 0 ; i < a ; i ++ )
#define compare(v) sort((v).begin(), (v).end()); (v).erase(unique((v).begin(), (v).end()), (v).end());
#define ll long long
#define el "\n"
#define fi first
#define se second
#define _ROOT_ int main()
#define M 1000000007
#define MAXN 1000001
#define Bit(i) (1LL << i )
#define INF (1ll<<30)
#define NAME "file"
#define debug(a) cout << #a << " = " << a << endl;
using namespace std;
ll n, m, q ;
ll a[MAXN] ;
vector<ll> adj[MAXN ] ;
pair<ll,ll> dfs(ll u, ll p, bool & check ) {
if(a[u]) {
return {a[u], a[u] } ;
}
if(!check ) {
return {-1, - 1 } ;
}
vector<pair<ll,ll>> seg ;
for(ll v : adj[u]) if(v != p ) {
seg.push_back(dfs(v, u, check ) ) ;
}
vector<pair<ll,ll> > sort_seg = seg ;
sort(sort_seg.begin(), sort_seg.end() ) ;
ll pp = -1 ;
REP(i, sort_seg.size() ) if(sort_seg[0] == seg[i]) pp = i ;
if(pp == -1 ) {
check = false ;
return {- 1, - 1 } ;
}
REP(i, sort_seg.size() - 1 ) if(sort_seg[i].se + 1 != sort_seg[i + 1].fi ) {
check = false ;
return {- 1, - 1 } ;
}
REP(i, seg.size() ) if(sort_seg[i] != seg[ (i + pp ) % seg.size() ] ) {
check = false ;
return {-1, - 1 } ;
}
return {sort_seg.front().fi, sort_seg.back().se } ;
}
void init() {
cin >> n ;
FOR(i, 2, n ) {
ll p ;
cin >> p ;
adj[i].push_back(p) ;
adj[p].push_back(i) ;
}
FOR(i, 1, n ) cin >> a[i] ;
}
void solve() {
bool check = true ;
pair<ll,ll> res = dfs(1, 1, check ) ;
ll k = 0;
FOR(i, 1, n ) k = max(k, a[i]) ;
// debug(check ) ;
// debug(res.fi ) ;
// debug(res.se ) ;
if(check && res.fi == 1 && res.se == k ) cout << "yes" << el ;
else cout << "no" << el ;
FOR(i, 1, n ) adj[i].clear() ;
}
_ROOT_ {
// freopen(NAME".inp", "r", stdin);
// freopen(NAME".out", "w", stdout) ;
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int t = 1;
cin >> t ;
while(t--) {
init();
solve();
}
return (0&0);
}
Ly8gUk9PVCA6IERSQUdPTjMwMTIwMDkgOiBXQSBpbiBSZWFsIExpZmUKI2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgRk9SKGksbCxyKSBmb3IoaW50IGkgPSBsIDsgaSA8PSByIDsgaSArKykKI2RlZmluZSBGT1JEKGkscixsKSBmb3IoaW50IGkgPSByIDsgaSA+PSBsIDsgaSAtLSkKI2RlZmluZSBSRVAoaSwgYSApIGZvcihpbnQgaSA9IDAgOyBpIDwgYSA7IGkgKysgKQojZGVmaW5lIGNvbXBhcmUodikgc29ydCgodikuYmVnaW4oKSwgKHYpLmVuZCgpKTsgKHYpLmVyYXNlKHVuaXF1ZSgodikuYmVnaW4oKSwgKHYpLmVuZCgpKSwgKHYpLmVuZCgpKTsKI2RlZmluZSBsbCBsb25nIGxvbmcKI2RlZmluZSBlbCAiXG4iCiNkZWZpbmUgZmkgZmlyc3QKI2RlZmluZSBzZSBzZWNvbmQKI2RlZmluZSBfUk9PVF8gaW50IG1haW4oKQojZGVmaW5lIE0gMTAwMDAwMDAwNwojZGVmaW5lIE1BWE4gMTAwMDAwMQojZGVmaW5lIEJpdChpKSAoMUxMIDw8IGkgKQojZGVmaW5lIElORiAoMWxsPDwzMCkKI2RlZmluZSBOQU1FICJmaWxlIgojZGVmaW5lIGRlYnVnKGEpIGNvdXQgPDwgI2EgPDwgIiA9ICIgPDwgYSA8PCBlbmRsOwp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKbGwgbiwgbSwgcSA7CmxsIGFbTUFYTl0gOwp2ZWN0b3I8bGw+IGFkaltNQVhOIF0gOwoKcGFpcjxsbCxsbD4gZGZzKGxsIHUsIGxsIHAsIGJvb2wgJiBjaGVjayAgKSB7CiAgICBpZihhW3VdKSB7CiAgICAgICAgcmV0dXJuIHthW3VdLCBhW3VdIH0gOwogICAgfQogICAgaWYoIWNoZWNrICkgewogICAgICAgIHJldHVybiB7LTEsIC0gMSB9IDsKICAgIH0KICAgIHZlY3RvcjxwYWlyPGxsLGxsPj4gc2VnIDsKICAgIGZvcihsbCB2IDogYWRqW3VdKSBpZih2ICE9IHAgKSB7CiAgICAgICAgICAgIHNlZy5wdXNoX2JhY2soZGZzKHYsIHUsIGNoZWNrICkgKSA7CiAgICAgICAgfQogICAgdmVjdG9yPHBhaXI8bGwsbGw+ID4gc29ydF9zZWcgPSBzZWcgOwogICAgc29ydChzb3J0X3NlZy5iZWdpbigpLCBzb3J0X3NlZy5lbmQoKSApIDsKICAgIGxsIHBwID0gLTEgOwogICAgUkVQKGksIHNvcnRfc2VnLnNpemUoKSApIGlmKHNvcnRfc2VnWzBdID09IHNlZ1tpXSkgcHAgPSBpIDsKICAgIGlmKHBwID09IC0xICkgewogICAgICAgIGNoZWNrID0gZmFsc2UgOwogICAgICAgIHJldHVybiB7LSAxLCAtIDEgfSA7CiAgICB9CgogICAgUkVQKGksIHNvcnRfc2VnLnNpemUoKSAtIDEgKSBpZihzb3J0X3NlZ1tpXS5zZSArIDEgIT0gc29ydF9zZWdbaSArIDFdLmZpICkgewogICAgICAgIGNoZWNrID0gZmFsc2UgOwogICAgICAgIHJldHVybiB7LSAxLCAtIDEgfSA7CiAgICB9CgogICAgUkVQKGksICBzZWcuc2l6ZSgpICkgaWYoc29ydF9zZWdbaV0gIT0gc2VnWyAoaSArIHBwICkgJSBzZWcuc2l6ZSgpIF0gKSB7CiAgICAgICAgY2hlY2sgPSBmYWxzZSA7CiAgICAgICAgcmV0dXJuIHstMSwgLSAxIH0gOwogICAgfQogICAgcmV0dXJuIHtzb3J0X3NlZy5mcm9udCgpLmZpLCBzb3J0X3NlZy5iYWNrKCkuc2UgfSA7Cn0KCnZvaWQgaW5pdCgpIHsKICAgIGNpbiA+PiBuIDsKICAgIEZPUihpLCAyLCBuICkgewogICAgICAgIGxsIHAgOwogICAgICAgIGNpbiA+PiBwIDsKICAgICAgICBhZGpbaV0ucHVzaF9iYWNrKHApIDsKICAgICAgICBhZGpbcF0ucHVzaF9iYWNrKGkpIDsKICAgIH0KICAgIEZPUihpLCAxLCBuICkgY2luID4+IGFbaV0gOwp9Cgp2b2lkIHNvbHZlKCkgewogICAgYm9vbCBjaGVjayA9IHRydWUgOwoKICAgIHBhaXI8bGwsbGw+IHJlcyA9IGRmcygxLCAxLCBjaGVjayApIDsKICAgIGxsIGsgPSAwOwogICAgRk9SKGksIDEsIG4gKSBrID0gbWF4KGssIGFbaV0pIDsKLy8gICAgZGVidWcoY2hlY2sgKSA7Ci8vICAgIGRlYnVnKHJlcy5maSApIDsKLy8gICAgZGVidWcocmVzLnNlICkgOwogICAgaWYoY2hlY2sgJiYgcmVzLmZpID09IDEgJiYgcmVzLnNlID09IGsgKSBjb3V0IDw8ICJ5ZXMiIDw8IGVsIDsKICAgIGVsc2UgY291dCA8PCAibm8iIDw8IGVsIDsKCiAgICBGT1IoaSwgMSwgbiApIGFkaltpXS5jbGVhcigpIDsKfQoKCl9ST09UXyB7Ci8vICAgIGZyZW9wZW4oTkFNRSIuaW5wIiwgInIiLCBzdGRpbik7Ci8vICAgIGZyZW9wZW4oTkFNRSIub3V0IiwgInciLCBzdGRvdXQpIDsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7CiAgICBjaW4udGllKDApOwogICAgY291dC50aWUoMCk7CiAgICBpbnQgdCA9IDE7CiAgICBjaW4gPj4gdCA7CiAgICB3aGlsZSh0LS0pIHsKICAgICAgICBpbml0KCk7CiAgICAgICAgc29sdmUoKTsKICAgIH0KICAgIHJldHVybiAoMCYwKTsKfQ==