#include <bits/stdc++.h>
using namespace std;
string st1, st2;
long ans[6000][6000], answ;
int main() {
  cin >> st1;
  cin >> st2;
  ans[0][0] = 0;
  for (int i = 0; i < st1.size(); i++)
    for (int j = 0; j < st2.size(); j++) {
      if (st1[i] == st2[j]) {
        if (j) ans[i][j] = ans[i][j - 1];
        if (i && j) ans[i][j] += ans[i - 1][j - 1];
        ans[i][j] %= 1000000007;
        ans[i][j] += 1;
      } else {
        if (j > 0) ans[i][j] = ans[i][j - 1];
      }
      ans[i][j] %= 1000000007;
    }
  for (int i = 0; i < st1.size(); i++) {
    answ += ans[i][st2.size() - 1];
    answ %= 1000000007;
  }
  cout << answ % 1000000007 << endl;
  cin.get();
  cin.get();
  return 0;
}
