#include <bits/stdc++.h>
using namespace std;
const int mod = 1e9+7;
const int N = 1e5+5;
int n;
long long a[N];
long long pref_mul[N];
int fastP(int b, int e){
if(!e)
return 1;
if(e & 1)
return b * 1ll * fastP(b * 1ll * b % mod, e >> 1) % mod;
return fastP(b * 1ll * b % mod, e >> 1) % mod;
}
int main(){
cin >> n;
for(int i = 1; i <= n; i++){
cin >> a[i];
}
pref_mul[0] = 1;
for(int i = 1; i <= n; i++){
pref_mul[i] = pref_mul[i - 1] * a[i];
pref_mul[i] %= mod;
}
int to = ((n+1)/2) + 1;
long long sum = 0;
for(int i = 1; i <= to; i++){
sum += (pref_mul[i + n/2 - 1] * fastP(pref_mul[i - 1] , mod - 2)) % mod;
sum %= mod;
}
cout << sum << "\n";
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY29uc3QgaW50IG1vZCA9IDFlOSs3OwoKY29uc3QgaW50IE4gPSAxZTUrNTsKCmludCBuOwpsb25nIGxvbmcgYVtOXTsKbG9uZyBsb25nIHByZWZfbXVsW05dOwoKaW50IGZhc3RQKGludCBiLCBpbnQgZSl7CiAgICBpZighZSkKICAgICAgICByZXR1cm4gMTsKICAgIGlmKGUgJiAxKQogICAgICAgIHJldHVybiBiICogMWxsICogZmFzdFAoYiAqIDFsbCAqIGIgJSBtb2QsIGUgPj4gMSkgJSBtb2Q7CiAgICByZXR1cm4gZmFzdFAoYiAqIDFsbCAqIGIgJSBtb2QsIGUgPj4gMSkgJSBtb2Q7Cn0KCmludCBtYWluKCl7CiAgICBjaW4gPj4gbjsKICAgIGZvcihpbnQgaSA9IDE7IGkgPD0gbjsgaSsrKXsKICAgICAgICBjaW4gPj4gYVtpXTsKICAgIH0KICAgIHByZWZfbXVsWzBdID0gMTsKICAgIGZvcihpbnQgaSA9IDE7IGkgPD0gbjsgaSsrKXsKICAgICAgICBwcmVmX211bFtpXSA9IHByZWZfbXVsW2kgLSAxXSAqIGFbaV07CiAgICAgICAgcHJlZl9tdWxbaV0gJT0gbW9kOwogICAgfQogICAgaW50IHRvID0gKChuKzEpLzIpICsgMTsKICAgIGxvbmcgbG9uZyBzdW0gPSAwOwogICAgZm9yKGludCBpID0gMTsgaSA8PSB0bzsgaSsrKXsKICAgICAgICBzdW0gKz0gKHByZWZfbXVsW2kgKyBuLzIgLSAxXSAqIGZhc3RQKHByZWZfbXVsW2kgLSAxXSAsIG1vZCAtIDIpKSAlIG1vZDsKICAgICAgICBzdW0gJT0gbW9kOwogICAgfQogICAgY291dCA8PCBzdW0gPDwgIlxuIjsKfQo=