#include <bits/stdc++.h>
char str1[100000];
char str2[100000];
int dp[5001][5001];
int main() {
  scanf("%s", str1);
  scanf("%s", str2);
  int l1 = strlen(str1);
  int l2 = strlen(str2);
  int tot = 0;
  for (int i = 0; i < l1; i++) {
    int cumsum = 0;
    for (int j = 0; j < l2; j++) {
      if (str1[i] == str2[j]) {
        dp[i][j] = (1 + cumsum) % 1000000007;
        tot = (tot + dp[i][j]) % 1000000007;
      }
      if (i > 0) cumsum += dp[i - 1][j];
      cumsum %= 1000000007;
    }
  }
  printf("%d\n", tot);
  return 0;
}
