#include #include #include #include #include using namespace std; #define Whats(x) cout<<#x<<" is "<<(x)<>>>>>>>>>>>>>>"< bool GetMin(T &a,T b) { return ((a<=b)?false:(a=b,true)); } template bool GetMax(T &a,T b) { return ((a>=b)?false:(a=b,true)); } /* -- */ const int N=1e7+10; int n,a[N],sm[N]; int main() { scanf("%*d"); while(~scanf("%d",&n)) { int mx=0; for(int i=1;i<=n;++i) { scanf("%d",a+i); sm[i]=a[i]+sm[i-1]; } for(int i=1;i<=n;++i)if(a[i]&1) GetMax(mx,max(sm[i],sm[n]-sm[i-1])); printf("%d\n",mx+((sm[n]-mx)>>1)); } return 0; }