#include<bits/stdc++.h>
#define ll long long
#define N 200005
using namespace std;
ll n,p[N],q[N],fir[N],fa[N],si[N],da[N]={0,1,3},ans=1;
inline ll findfa(ll x){
return x==fa[x]?x:fa[x]=findfa(fa[x]);
}
ll he(ll u,ll v){
ll x=findfa(u),y=findfa(v);
if(x!=y){
fa[x]=y;si[y]+=si[x];
}
}
int main(){
scanf("%lld",&n);
for(int i=1;i<=n;i++)si[i]=1,fa[i]=i;
for(int i=3;i<=n;i++)da[i]=(da[i-1]+da[i-2])%998244353;
for(int i=1;i<=n;i++){
scanf("%lld",&p[i]);fir[p[i]]=i;
}
for(int i=1;i<=n;i++){
scanf("%lld",&q[i]);
he(fir[q[i]],i);
}
for(int i=1;i<=n;i++)
if(fa[i]==i)ans=ans*da[si[i]]%998244353;
printf("%lld\n",ans);
return 0;
}
大佬们救救我!