#include<bits/stdc++.h>
using namespace std;
const int md = 1e9+7;
long long n,ans;
int cnt[100005],ma,f[5][100005],s[5][100005];
int main(){
scanf("%lld",&n);
for(int i = 1;i <= n;i ++){
int x;
scanf("%d",&x);
cnt[x] ++;
f[1][x] ++;
ma = max(ma,x);
}
for(int i = 1;i <= ma;i ++){
s[1][i] = (s[1][i-1]+f[1][i])%md;
}
for(int i = 2;i <= 4; ++i){
for(int j = 1;j <= ma;++j){
f[i][j] = (f[i][j]+(cnt[j]*s[i-1][j/2])%md)%md;
s[i][j] = (s[i][j-1]+f[i][j])%md;
}
}
for(int i = 0;i <= ma;i ++){
ans =( ans + f[4][i])%md;
}
printf("%lld",ans);
return 0;
}