#include using namespace std; using ll=long long; using ld=long double; ld pie=3.141592653589793; ll inf=300000000; ll mod=998244353; int main(){ ll n; cin >> n; vectorb(n); ll d=1000000000000000000; for (ll i = 0; i < n; i++) { cin >> b[i]; } ll now=0; bool ok=true; ll pl=1,mn=d; if (n==1&&b[0]==1) { cout << -1 << endl; return 0; } for (ll i = 1; i < n; i+=2) { now*=-1; now+=b[i-1]-b[i]; if ((i/2)%2==0) { if (d-now<=0||2*d<-now) { ok=false; break; } pl=max(pl,-d-now); mn=min(mn,d-now); }else{ if (d-now<=0||2*d<-now) { ok=false; break; } pl=max(pl,now-d); mn=min(now+d,mn); } } if (!ok) { cout << -1 << endl; return 0;; } if (pl>mn) { cout << -1 << endl; return 0; } ll nn=pl; cout << n+1 << endl; cout << nn << endl; for (ll i = 0; i < n; i++) { if (i%2==0) { nn*=-1; nn+=b[i]; }else{ nn-=b[i]; } cout << nn << endl; } }