#include<bits/stdc++.h>
using namespace std;
const long long MaxN = 1e5 + 5;
long long n,a[MaxN],res=0;
map<long long, long long> mp;
void input()
{
cin >> n;
for (long long i=1; i<=n; i++)
{
cin >> a[i];
}
}
void solve()
{
for (long long i=1; i<=n; i++)
{
mp[a[i]^i]++;
}
for (auto x: mp)
{
res = res + x.second*(x.second-1)/2;
}
cout << res;
}
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
input();
solve();
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKY29uc3QgbG9uZyBsb25nIE1heE4gPSAxZTUgKyA1Owpsb25nIGxvbmcgbixhW01heE5dLHJlcz0wOwptYXA8bG9uZyBsb25nLCBsb25nIGxvbmc+IG1wOwp2b2lkIGlucHV0KCkKewogICAgY2luID4+IG47CiAgICBmb3IgKGxvbmcgbG9uZyBpPTE7IGk8PW47IGkrKykKICAgIHsKICAgICAgICBjaW4gPj4gYVtpXTsKICAgIH0KfQp2b2lkIHNvbHZlKCkKewogICAgZm9yIChsb25nIGxvbmcgaT0xOyBpPD1uOyBpKyspCiAgICB7CiAgICAgICAgbXBbYVtpXV5pXSsrOwogICAgfQogICAgZm9yIChhdXRvIHg6IG1wKQogICAgewogICAgICAgIHJlcyA9IHJlcyArIHguc2Vjb25kKih4LnNlY29uZC0xKS8yOwogICAgfQogICAgY291dCA8PCByZXM7Cn0KaW50IG1haW4oKQp7CiAgICBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKDApOwogICAgY2luLnRpZSgwKTsKICAgIGlucHV0KCk7CiAgICBzb2x2ZSgpOwp9Cg==