#include #include using namespace std; using namespace atcoder; #define ll long long #define rep(i,a,b) for(int i=(a);i<(b);i++) #define repl(i,a,b) for(ll i=(a);i<(b);i++) #define all(a) (a).begin(),(a).end() #define rall(a) (a).rbegin(),(a).rend() template bool chmin(T &a,T b){if(a>b){a=b;return true;} return false;} template bool chmax(T &a,T b){if(a> n; string s; cin >> s; vector> rle; rep(i,0,n){ if(i == 0) rle.push_back({s[i],1}); else{ if(rle.back().first == s[i]) rle.back().second++; else rle.push_back({s[i],1}); } } mint ans=1; rep(i,0,rle.size()){ if(rle[i].first == '0' && i<(int)rle.size()-1){ ans*=rle[i].second+rle[i+1].second+1; } } cout << ans.val() << "\n"; return; } int main(){ ios::sync_with_stdio(false); cin.tie(nullptr); int T=1; // cin >> T; while(T--) solve(); }