#include <bits/stdc++.h>
#define MOD 1000000007
#define int long long
using namespace std;

int dp[2010][2010] = {};

signed main(){
	int n,m,s[2010],t[2010];
	cin >> n >> m;
	for(int i = 0;i <= n;i++) dp[i][0] = 1;
	for(int i = 0;i <= m;i++) dp[0][i] = 1;
	for(int i = 0;i < n;i++) cin >> s[i];
	for(int i = 0;i < m;i++) cin >> t[i];
	for(int i = 1;i <= n;i++){
		for(int j = 1;j <= m;j++){
			dp[i][j] = (dp[i][j - 1] + dp[i - 1][j] - dp[i - 1][j - 1] + MOD) % MOD;
			if(s[i - 1] == t[j - 1]) dp[i][j] = (dp[i][j] + dp[i - 1][j - 1]) % MOD;
		}
	}
	cout << dp[n][m] << endl;
}