#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int T,n;
long long int a[200005];
long long int b[200005];

long long int func(int x){
if(x>n)return 0;
if(b[x])return b[x];
b[x]=a[x]+func(x+a[x]);
return b[x];
}
int main(){
scanf("%d",&T);
while(T--){
scanf("%d",&n);
memset(b,0,sizeof(b));
for(int i=1;i<=n;i++){
scanf("%lld",&a[i]);
}
long long int ans=0;
for(int i=1;i<=n;i++)if(!b[i]){
b[i]=func(i);
ans=max(ans,b[i]);
}
printf("%lld\n",ans);
}

}
