#include<bits/stdc++.h>
using namespace std;
// Numeric Constants
#define N 1000000007
#define maxs 300005
#define mins 1005
#define eps 0.000000000001
#define imax 2000000200
#define llmax 1000000002000000000ll
#define pi 3.141592653589793
// Others
#define ll long long
#define pb push_back
#define gc getchar_unlocked
#define iosbase ios_base::sync_with_stdio(false)
#define pii pair<int,int>
#define pll pair<ll,ll>
#define ppi pair<pair<int,int>,int>
#define ppl pair<pll,ll>
#define vi vector<int>
#define sc scanf
#define pr printf
#define lld I64d
#define F first
#define S second
#define siter set<int>::iterator
#define p_pq priority_queue
#define ub upper_bound
#define lb lower_bound
int z[maxs],dp[maxs],given[maxs],search1[maxs],search2[maxs];
vector<int>v;
void calcZ(vector<int>s){
int l=0,r=0;
int n=s.size();
for(int i=1;i<n;i++){
if(i>r){
l=r=i;
while(r<n && s[r-l]==s[r]){
r++;
}
z[i]=r-l;
r--;
}
else{
int k=i-l;
if(z[k]<r-i+1){
z[i]=z[k];
}
else{
l=i;
while(r<n && s[r-l]==s[r]){
r++;
}
z[i]=r-l;
r--;
}
}
}
}
int main()
{
int n,k,l,i,j;
sc("%d %d %d",&n,&k,&l);
for(i=0;i<n;i++){
sc("%d",&given[i]);
}
for(i=0;i<k;i++){
sc("%d",&search1[i]);
}
for(i=0;i<l;i++){
sc("%d",&search2[i]);
}
for(i=0;i<k;i++){
v.pb(search1[i]);
}
v.pb(-1);
for(i=0;i<n;i++){
v.pb(given[i]);
}
calcZ(v);
for(i=0;i<n;i++){
if(z[i+k+1]==k){
dp[i]=1;
}
}
for(i=n-1;i>=0;i--){
dp[i]=dp[i]+dp[i+1];
}
v.clear();
for(i=0;i<l;i++){
v.pb(search2[i]);
}
v.pb(-1);
for(i=0;i<n;i++){
v.pb(given[i]);
}
calcZ(v);
ll ans=0;
for(i=0;i<n;i++){
if(z[i+l+1]==l){
ans+=dp[i];
}
}
pr("%lld\n",ans);
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCi8vIE51bWVyaWMgQ29uc3RhbnRzCiNkZWZpbmUgTiAxMDAwMDAwMDA3CiNkZWZpbmUgbWF4cyAzMDAwMDUKI2RlZmluZSBtaW5zIDEwMDUKI2RlZmluZSBlcHMgMC4wMDAwMDAwMDAwMDEKI2RlZmluZSBpbWF4IDIwMDAwMDAyMDAKI2RlZmluZSBsbG1heCAxMDAwMDAwMDAyMDAwMDAwMDAwbGwKI2RlZmluZSBwaSAzLjE0MTU5MjY1MzU4OTc5MwoKLy8gT3RoZXJzCiNkZWZpbmUgbGwgbG9uZyBsb25nCiNkZWZpbmUgcGIgcHVzaF9iYWNrCiNkZWZpbmUgZ2MgZ2V0Y2hhcl91bmxvY2tlZAojZGVmaW5lIGlvc2Jhc2UgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSkKI2RlZmluZSBwaWkgcGFpcjxpbnQsaW50PgojZGVmaW5lIHBsbCBwYWlyPGxsLGxsPgojZGVmaW5lIHBwaSBwYWlyPHBhaXI8aW50LGludD4saW50PgojZGVmaW5lIHBwbCBwYWlyPHBsbCxsbD4KI2RlZmluZSB2aSB2ZWN0b3I8aW50PgojZGVmaW5lIHNjIHNjYW5mCiNkZWZpbmUgcHIgcHJpbnRmCiNkZWZpbmUgbGxkIEk2NGQKI2RlZmluZSBGIGZpcnN0CiNkZWZpbmUgUyBzZWNvbmQKI2RlZmluZSBzaXRlciBzZXQ8aW50Pjo6aXRlcmF0b3IKI2RlZmluZSBwX3BxIHByaW9yaXR5X3F1ZXVlCiNkZWZpbmUgdWIgdXBwZXJfYm91bmQKI2RlZmluZSBsYiBsb3dlcl9ib3VuZAoKaW50IHpbbWF4c10sZHBbbWF4c10sZ2l2ZW5bbWF4c10sc2VhcmNoMVttYXhzXSxzZWFyY2gyW21heHNdOwp2ZWN0b3I8aW50PnY7CnZvaWQgY2FsY1oodmVjdG9yPGludD5zKXsKCWludCBsPTAscj0wOwoJaW50IG49cy5zaXplKCk7Cglmb3IoaW50IGk9MTtpPG47aSsrKXsKCQlpZihpPnIpewoJCQlsPXI9aTsKCQkJd2hpbGUocjxuICYmIHNbci1sXT09c1tyXSl7CgkJCQlyKys7CgkJCX0KCQkJeltpXT1yLWw7CgkJCXItLTsKCQl9CgkJZWxzZXsKCQkJaW50IGs9aS1sOwoJCQlpZih6W2tdPHItaSsxKXsKCQkJCXpbaV09eltrXTsKCQkJfQoJCQllbHNlewoJCQkJbD1pOwoJCQkJd2hpbGUocjxuICYmIHNbci1sXT09c1tyXSl7CgkJCQkJcisrOwoJCQkJfQoJCQkJeltpXT1yLWw7CgkJCQlyLS07CgkJCX0KCQl9Cgl9Cn0KaW50IG1haW4oKQp7CglpbnQgbixrLGwsaSxqOwoJc2MoIiVkICVkICVkIiwmbiwmaywmbCk7Cglmb3IoaT0wO2k8bjtpKyspewoJCXNjKCIlZCIsJmdpdmVuW2ldKTsKCX0KCWZvcihpPTA7aTxrO2krKyl7CgkJc2MoIiVkIiwmc2VhcmNoMVtpXSk7Cgl9Cglmb3IoaT0wO2k8bDtpKyspewoJCXNjKCIlZCIsJnNlYXJjaDJbaV0pOwoJfQoJZm9yKGk9MDtpPGs7aSsrKXsKCQl2LnBiKHNlYXJjaDFbaV0pOwoJfQoJdi5wYigtMSk7Cglmb3IoaT0wO2k8bjtpKyspewoJCXYucGIoZ2l2ZW5baV0pOwoJfQoJY2FsY1oodik7Cglmb3IoaT0wO2k8bjtpKyspewoJCWlmKHpbaStrKzFdPT1rKXsKCQkJZHBbaV09MTsKCQl9Cgl9Cglmb3IoaT1uLTE7aT49MDtpLS0pewoJCWRwW2ldPWRwW2ldK2RwW2krMV07Cgl9Cgl2LmNsZWFyKCk7Cglmb3IoaT0wO2k8bDtpKyspewoJCXYucGIoc2VhcmNoMltpXSk7Cgl9Cgl2LnBiKC0xKTsKCWZvcihpPTA7aTxuO2krKyl7CgkJdi5wYihnaXZlbltpXSk7Cgl9CgljYWxjWih2KTsKCWxsIGFucz0wOwoJZm9yKGk9MDtpPG47aSsrKXsKCQlpZih6W2krbCsxXT09bCl7CgkJCWFucys9ZHBbaV07CgkJfQoJfQoJcHIoIiVsbGRcbiIsYW5zKTsKCXJldHVybiAwOwp9