#include <bits/stdc++.h>
using namespace std;
int dp[100000 + 1][1 << 2];
int main() {
  cin.sync_with_stdio(false);
  int n;
  string s, w;
  cin >> n;
  cin >> s >> w;
  dp[0][0] = 1;
  for (int i = 0; i < n; i++) {
    for (int h = 0; h < 1 << 2; h++) {
      for (int d1 = 0; d1 < 10; d1++) {
        if (s[i] != d1 + '0' && s[i] != '?') continue;
        for (int d2 = 0; d2 < 10; d2++) {
          if (w[i] != d2 + '0' && w[i] != '?') continue;
          if (d1 == d2)
            dp[i + 1][h] = (dp[i + 1][h] + dp[i][h]) % 1000000007;
          else if (d1 > d2) {
            dp[i + 1][h | 1] = (dp[i + 1][h | 1] + dp[i][h]) % 1000000007;
          } else {
            dp[i + 1][h | 2] = (dp[i + 1][h | 2] + dp[i][h]) % 1000000007;
          }
        }
      }
    }
  }
  cout << dp[n][3] << endl;
  return 0;
}
