#include<bits/stdc++.h>
using namespace std;
const long long mod=1e9+7;
int n,m,a[2005],b[2005];
long long dp[2005][2005];
int main()
{
    cin>>n>>m;
    for(int i=1;i<=n;i++)
        cin>>a[i];
    for(int i=1;i<=m;i++)
        cin>>b[i];
    for(int i=1;i<=n;i++)
        for(int j=1;j<=m;j++)
        {   
          dp[i][j]=(dp[i-1][j]+dp[i][j-1]-dp[i-1][j-1])%mod;
          if(a[i]==b[j])
            dp[i][j]+=(dp[i-1][j-1]+1),dp[i][j]%=mod;
        }
    cout<<(dp[n][m]%mod+1+mod)%mod;
    return 0;
}
