#include<bits/stdc++.h>
#define ll long long
#define task ""
using namespace std;
const ll N=1e6+11;
const ll mod=1e9+7;
ll n,a[N],d[4*N],ans=0;
void solve(){
cin>>n;
for(ll i=1;i<=n;i++){
cin>>a[i];
}
for(ll i=1;i<=n;i++){
for(ll j=i+1;j<=n;j++){
ans=(ans+d[-a[i]+a[j]+N])%mod;
ans%=mod;
}
for(ll j=1;j<=i-1;j++){
d[a[i]+a[j]+N]++;
}
}
cout<<ans;
}
int main(){
ios_base::sync_with_stdio(false);
cin.tie(0);cout.tie(0);
freopen("TSUM.INP","r",stdin);
freopen("TSUM.OUT","w",stdout);
solve();
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2RlZmluZSBsbCBsb25nIGxvbmcKI2RlZmluZSB0YXNrICIiCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmNvbnN0IGxsIE49MWU2KzExOwpjb25zdCBsbCBtb2Q9MWU5Kzc7CmxsIG4sYVtOXSxkWzQqTl0sYW5zPTA7CnZvaWQgc29sdmUoKXsKICAgIGNpbj4+bjsKICAgIGZvcihsbCBpPTE7aTw9bjtpKyspewogICAgICAgIGNpbj4+YVtpXTsKICAgIH0KICAgIGZvcihsbCBpPTE7aTw9bjtpKyspewogICAgICAgIGZvcihsbCBqPWkrMTtqPD1uO2orKyl7CiAgICAgICAgICAgIGFucz0oYW5zK2RbLWFbaV0rYVtqXStOXSklbW9kOwogICAgICAgICAgICBhbnMlPW1vZDsKICAgICAgICB9CiAgICAgICAgZm9yKGxsIGo9MTtqPD1pLTE7aisrKXsKICAgICAgICAgICAgZFthW2ldK2Fbal0rTl0rKzsKICAgICAgICB9CiAgICB9CiAgICBjb3V0PDxhbnM7Cn0KaW50IG1haW4oKXsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZSgwKTtjb3V0LnRpZSgwKTsKICAgIGZyZW9wZW4oIlRTVU0uSU5QIiwiciIsc3RkaW4pOwogICAgZnJlb3BlbigiVFNVTS5PVVQiLCJ3IixzdGRvdXQpOwogICAgc29sdmUoKTsKfQo=