#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; const int MOD = 1000000009; vector solve(const string& s) { int n = s.size(); vector > dp(2, vector(1, 0)); dp[0][0] = 1; for(int i=0; i > nextDp(2, vector(dp[0].size() + 9, 0)); for(int j=0; j<2; ++j){ for(unsigned k=0; k ans(dp[0].size()); for(unsigned i=0; i> m >> d; vector a = solve(m); vector b = solve(d); int n = min(a.size(), b.size()); long long ans = 0; for(int i=1; i