#include<fstream>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int n,i,maxi,x,sum,pi,pf,p;
int main()
{
f>>n>>x;
sum=x;p=1;maxi=-2000000000;
for(i=2;i<=n;i++)
{
f>>x;
if(sum>=0)sum+=x;
else{ sum=x; p=i; }
if(maxi<sum){maxi=sum;pi=p;pf=i;}
}
g<<maxi<<" "<<pi<<" "<<pf;
return 0;
}
//#include<fstream>
//using namespace std;
//ifstream fi("elmaj.in");
//ofstream fo("elmaj.out");
//int maj,k,t,n,i,a[1000003];
//int main()
//{
//
// fi>>n;
// for(i=1; i<=n; i++)
// fi>>a[i];
// maj=a[1];
// k=1;
// for(i=2; i<=n; i++)
// if(a[i]==maj)k++;
// else
// {
// k--;
// if(k==-1){maj=a[i];k=1;}
// }
// for(i=1; i<=n; i++)
// if(a[i]==maj)t++;
// if(t>n/2) fo<<maj<<" "<<t;
// else fo<<-1;
// return 0;
//}
//#include<fstream>
//using namespace std;
//ifstream fi("defrag.in");
//ofstream fo("defrag.out");
//int n,v,t,i,j,s,p,P,z,a[103][363],b[806],k;
//int main()
//{
//
//fi>>v>>p>>s>>P;
//for(t=1;t<=P;t++){fi>>i>>j;a[i][j]=1;}
//if(v==1){
// for(i=1;i<=p;i++){
// k=0;
// for(j=1;j<=s;j++)k+=a[i][j];
// if(k==0)z++;
// }
// fo<<z<<'\n';
//}
//if(v==2){
// for(i=1;i<=p;i++){
// for(j=1;j<=s;j++)b[j]=b[j+s]=a[i][j];
// int q,lung=0,su,mini=10000;
// for(t=1;t<=s;t++) //lung = cati de 1 consecutivi are solutia
// lung+=b[t];
// for(t=1;t<=s;t++)
// if(b[t]==1&&b[t-1]==0) //se incepe din primul 1 (011111)
// { //numar cati de 1 are secv. de lungime "lung" si diferenta trebuie completata
// for(su=0,q=t;q<=t+lung-1;q++)su+=b[q];
// if(mini>lung-su)mini=lung-su;
// }
// if(lung==0)fo<<0<<" ";//cazul cand totul este 0
// else fo<<mini<<" ";
// }
//}
//return 0;
//}
//#include<fstream>
//using namespace std;
//ifstream fi("submultimi.in");
//ofstream fo("submultimi.out");
//int n,sol[20],i,k;
//int main()
//{
//
//fi>>n;
//while(sol[n+1]==0)
// {
// sol[1]++;k=1;
// while(sol[k]>1)
// {
// sol[k]=0; sol[k+1]++; k++;
// }
// for(i=1;i<=n;i++)
// if(sol[i]==1) fo<<i<<" ";
// fo<<'\n';
// }
//return 0;
//}
//#include<fstream>//varianta cu generare 0,1,2
//using namespace std;
//ifstream fi("submult.in");
//ofstream fo("submult.out");
//int ssol,n,sol[20],a[20],b[20],smaxi,i,k,s1,s2,nrsol;
//int main()
//{
//n=10;
//for(i=1;i<=n;i++)fi>>a[i];
//nrsol=0;
//while(sol[n+1]==0)
// {
// sol[1]++;k=1;
// while(sol[k]>2)
// {
// sol[k]=0;
// sol[k+1]++;
// k++;
// }
// s1=s2=0;
// for(i=1;i<=n;i++)
// {if(sol[i]==1)s1+=a[i];//1 pt.el din prima multime
// if(sol[i]==2)s2+=a[i];//2 pt.el din prima multime
// }
// if(s1==s2 and s1!=0 ){
// nrsol++;
// if(s1>smaxi){
// smaxi=s1;
// for(i=1;i<=10;i++)b[i]=sol[i];//salvam suma maxima
// }
// }
// }
//fo<< nrsol/2<<" "<<smaxi<<'\n';
//for(i=1;i<=n;i++)
// if(b[i]==1)fo<<a[i]<<" ";
//fo<<'\n';
//for(i=1;i<=n;i++)
// if(b[i]==2)fo<<a[i]<<" ";
//return 0;
//}
//#include <fstream> //backtraking iterativ
//using namespace std;
//ifstream fi("submult.in");
//ofstream fo("submult.out");
//int i,j,n,ok,k,maxi;
//int a[100],b[100],c[100];
//int main()
//{n=10;
// for(i=1;i<=10;i++)fi>>b[i];
// i=1;
// while(i>0){
// if(i==n+1){ //daca am ajuns la solutie o afisam
// int s1=0;
// for(j=1;j<=10;j++)
// if(a[j]==1)s1+=b[j];
// int s2=0;
// for(j=1;j<=10;j++)
// if(a[j]==2)s2+=b[j];
// if(s1==s2){
// k++;
// if(maxi<s1){
// maxi=s1;
// for(j=1;j<=10;j++) c[j]=a[j];
// }
// }
// i--; //revenire
// }
// else //daca nu am ajuns la solutie
// if(a[i]<3){
// a[i]++; //daca se poate se creste valoarea lui a[i]
// //se verifica solitia partiala
// ok=1;
// if(ok==1) i++; //daca sol. partiala e valida se continua
// }
// else {a[i]=0;i--;}//daca nu se poate creste valoarea lui a[i] se revine
// }
// fo<<(k-1)/2<<" "<<maxi<<'\n';
// for(j=1;j<=10;j++)
// if(c[j]==1)fo<<b[j]<<" ";
//fo<<'\n';
//for(j=1;j<=10;j++)
// if(c[j]==2)fo<<b[j]<<" ";
// return 0;
//}
//#include <fstream>
//#include<cstring>
//using namespace std;
//ifstream fi ("comp.in");
//ofstream fo ("comp.out");
//char s[260];
//int s1,s2,n,i,j,k,x,t,semn,m,sol[1001];
//int main()
//{
// fi>>n;fi.get();
// for (i=1;i<=n;i++)
// {
// s1=0;s2=0;
// fi.getline(s,260);
// semn=2;
// m=strlen(s);
// for (j=0;j<m;j++)
// {if ( s[j]=='>') semn=1;
// if ( s[j]=='<') t++;
// }
// s1=0;s2=0;x=0;k=1;
// for (j=0;j<m;j++)
// if(k==1)
// {
// if (s[j]>='0' and s[j]<='9') x=x*10+s[j]-'0';
// if (s[j]=='u') {s1+=x*1;x=0;}
// if (s[j]=='z') {s1+=x*10;x=0;}
// if (s[j]=='s') {s1+=x*100;x=0;}
// if (s[j]=='m') {s1+=x*1000;x=0;}
// if (s[j]=='>' or s[j]=='<') k=2;
// }
// else
// {
// if (s[j]>='0' and s[j]<='9') x=x*10+s[j]-'0';
// if (s[j]=='u') {s2+=x*1;x=0;}
// if (s[j]=='z') {s2+=x*10;x=0;}
// if (s[j]=='s') {s2+=x*100;x=0;}
// if (s[j]=='m') {s2+=x*1000;x=0;}
// }
// if(semn==1)
// if(s1>s2) sol[i]=1;
// else sol[i]=0;
// if(semn==2)
// if(s1<s2) sol[i]=1;
// else sol[i]=0;
// }
// fo<<t<<'\n';
// for (i=1;i<=n;i++) fo<<sol[i]<<'\n';
// return 0;
//}
//#include <fstream>
//#include<cstring>
//#define M 480003
//using namespace std;
//ifstream fi("paritate.in");
//ofstream fo("paritate.out");
//char a[M];
//int k,j,i,n,s,bitp,ok,x,term;
//int main()
//{
// fi.getline(a,M);
// n=strlen(a);
// ok=1;
// for(i=0; i<n; i=i+8)
// {
// s=0;
// bitp=a[i];
// for(j=1; j<=7; j++)s+=a[i+j]-'0';
// if((s+bitp)%2==1)ok=0;
// }
// if(ok==1)
// {
// fo<<"DA"<<'\n';
// for(i=0; i<n; i=i+8)
// {
// x=0;term=1;
// for(j=7; j>=1; j--){
// x+=(a[i+j]-'0')*term;
// term=term*2;
// }
// if(x==10)fo<<'\n';
// else fo<<(char)x;
// }
// }
// if(ok==0){
// fo<<"NU"<<'\n';
// for(i=0; i<n; i=i+8)
// {
// s=0;
// bitp=a[i];
// for(j=1; j<=7; j++)s+=a[i+j]-'0';
// if((s+bitp)%2==1)fo<<k<<" ";
// k++;
// }
// }
// // fo<<'\n';
// return 0;
// }
//#include <fstream>
//using namespace std;
//ifstream fi("bool.in");
//ofstream fo("bool.out");
//char s[10003];
//int i;
//int Val[100];
//bool expresie();
//bool termen(){ //termen=(expresie) sau termen=NOT A sau termen=A
// bool rez;
// if(s[i]==' ')i++;
// else
// if(s[i]=='('){
// i++; //paranteza (
// rez=expresie();
// i++; //paranteza )
// }
// else
// if(s[i]=='N' and s[i+1]=='O' and s[i+2]=='T') {i+=3;rez=not(expresie());}
// else
// if(s[i]>='A' and s[i]<='Z'){rez=Val[s[i]-64];i++;}
// return rez;
//}
//bool factor(){ //factor=termen and termen and termen.....
// bool rez=termen();
// if (s[i]==' ')i++;
// else
// while(s[i]=='A' and s[i+1]=='N' and s[i+2]=='D')
// { i+=3; rez =rez and termen(); }
// return rez;
//}
//bool expresie(){ //expresie =factor or factor or factor.....
// bool rez=factor();
// if (s[i]==' ')i++;
// else
// while(s[i]=='O' and s[i+1]=='R')
// { i+=2; rez= rez or factor(); }
// return rez;
//}
//int main(){
// fi.get(s,1003);
// //for(i=1;i<=30;i++)Val[i]=0;
// fo<<expresie()<<'\n';
// return 0;
//}
//#include <iostream>
//#include <fstream>
//#include <cstring>
//using namespace std;
//
//ifstream in("bool.in");
//ofstream out("bool.out");
//
//const int MAXN = 1000;
//
//char s[MAXN+1], *p;
//int N;
//bool state[MAXN+1];
//
//bool evalueaza();
//bool termen();
//bool factor();
//
//void readData()
//{
// in.getline(s,MAXN);
// in>>N;
// for(int i = 0; i <= 27; i++)
// state[ i ] = false;
// for(int i = 1; i <= N; i++)
// {
// char x;
// in>>x;
// p = s;
// state[ x - 'A' ] = !state[ x - 'A' ];
// out<<evalueaza();
// }
//}
//
//bool evalueaza()
//{
// bool r = termen();
//
// while( *p == 'O' && *(p + 1) == 'R' )
// {
// p+=3;
// bool f = termen();
// r = r | f;
// }
//
// return r;
//}
//
//bool termen()
//{
// bool r = factor();
//
// while( *p == 'A' && *(p + 1) == 'N' )
// {
// p+=4;
// bool t = factor();
// r = r & t;
// }
//
// return r;
//}
//
//bool factor()
//{
// bool r;
//
//
// if( *p == '(' )
// {
// p++;
// r = evalueaza();
// p++;
// }
// else
// if( *p == 'N' && *( p + 1 ) == 'O' )
// {
// p +=4;
// r = !factor();
// }
// else
// {
// if( *p == 'T' && *(p + 1) == 'R' )
// {
// r = true;
// p += 5;
// }
// else
// if( *p == 'F' && *(p + 1) == 'A' )
// {
// r = false;
// p += 6;
// }
// else
// {
// r = state[ *p - 'A' ];
// p+=2;
// }
// }
//
// return r;
//}
//
//
//int main()
//{
// readData();
//
// //evalueaza();
// return 0;
//}
//#include <fstream>
//using namespace std;
//ifstream fi("evaluare.in");
//ofstream fo("evaluare.out");
//char s[100003];
//int i;
//int expresie();
//int termen(){ //termen=(expresie) sau termen=213
// int rez=0;
// if(s[i]=='('){
// i++; //paranteza (
// rez=expresie();
// i++; //paranteza )
// }
// else while(s[i]>='0' && s[i]<='9'){ rez=rez*10+s[i]-'0'; i++; }
// return rez;
//}
//int factor(){ //factor=termen*termen/termen*termen/termen.....
// int rez=termen();
// while(s[i]=='*' || s[i]=='/')
// if(s[i]=='*'){ i++; rez*=termen(); }
// else{ i++; rez/=termen(); }
// return rez;
//}
//int expresie(){ //expresie =factor+factor-factor+factor-factor+.....
// int rez=factor();
// while(s[i]=='+' || s[i]=='-')
// if(s[i]=='+'){ i++; rez+=factor(); }
// else{ i++; rez-=factor(); }
// return rez;
//}
//int main(){
// fi>>s;
// fo<<expresie()<<'\n';
// return 0;
//}
//#include <fstream>
//using namespace std;
//ifstream fi("evaluare.in");
//ofstream fo("evaluare.out");
//char s[100003];
//int i;
//int expresie();
//int termen(){ //termen=(expresie) sau termen=213
// int rez=0;
// if(s[i]=='('){
// i++; //paranteza (
// rez=expresie();
// i++; //paranteza )
// }
// else while(s[i]>='0' && s[i]<='9'){ rez=rez*10+s[i]-'0'; i++; }
// return rez;
//}
//int factor(){ //factor=termen*termen/termen*termen/termen.....
// int rez=termen();
// while(s[i]=='*' || s[i]=='/')
// if(s[i]=='*'){ i++; rez*=termen(); }
// else{ i++; rez/=termen(); }
// return rez;
//}
//int expresie(){ //expresie =factor+factor-factor+factor-factor+.....
// int rez=factor();
// while(s[i]=='+' || s[i]=='-')
// if(s[i]=='+'){ i++; rez+=factor(); }
// else{ i++; rez-=factor(); }
// return rez;
//}
//int main(){
// fi>>s;
// fo<<expresie()<<'\n';
// return 0;
//}
//#include <fstream>
//using namespace std;
//ifstream fi("evaluare.in");
//ofstream fo("evaluare.out");
//char s[100003];
//int i;
//int expresie();
//int termen(){ //termen=(expresie) sau termen=213
// int rez=0;
// if(s[i]=='('){
// i++; //paranteza (
// rez=expresie();
// i++; //paranteza )
// }
// else while(s[i]>='0' && s[i]<='9'){ rez=rez*10+s[i]-'0'; i++; }
// return rez;
//}
//int factor(){ //factor=termen*termen/termen*termen/termen.....
// int rez=termen();
// while(s[i]=='*' || s[i]=='/')
// if(s[i]=='*'){ i++; rez*=termen(); }
// else{ i++; rez/=termen(); }
// return rez;
//}
//int expresie(){ //expresie =factor+factor-factor+factor-factor+.....
// int rez=factor();
// while(s[i]=='+' || s[i]=='-')
// if(s[i]=='+'){ i++; rez+=factor(); }
// else{ i++; rez-=factor(); }
// return rez;
//}
//int main(){
// fi>>s;
// fo<<expresie()<<'\n';
// return 0;
//}
//#include <fstream>//var I 100p
//#include <cmath>//cu ciur si desc. in factori +super optimizari
//using namespace std;
//ifstream fi("nrdiv.in");
//ofstream fo("nrdiv.out");
//bool prim[4000000];
//int nrd,p,i,j,nb,n,nrmax,zz;
//long long q,t,x,maxi,a[60],b[700000];
//int main()
//{
// fi>>n;
// for (i=1; i<=n; i++)
// fi>>a[i];
// for (i=1; i<=n; i++)
// if (a[i]>maxi) maxi=a[i];
//
// //Ciur Eratostene
// nrmax=(int )sqrt((double)maxi);
// for(t=2; t<=nrmax ;t++)
// if (prim[t]==0)
// for(q=t*t; q<=nrmax; q=q+t) prim[q]=1;
//
// //constructie vector d numere prime
// for (t=2; t<=nrmax; t++)
// if (prim[t]==0) b[++nb]=t;
// b[++nb]=(int)1e9;
// for (i=1; i<=n; i++)
// {
// x=a[i];
// nrd=1;
// for(j=1;b[j]*b[j]<=x;j++){
// p=0;
// while(x%b[j]==0)
// p++,x/=b[j];
// nrd*=(p+1);
// }
// if(x!=1)nrd*=2;
// fo<<nrd<<'\n';
// }
// return 0;
//}
//#include <fstream>//10p varianta ca desc in factori primi!!!
//#include <cmath>//timp depasit
//using namespace std;
//ifstream fi("nrdiv.in");
//ofstream fo("nrdiv.out");
//bool prim[4000000];
//long long x,a[60],b[700000];
//long long nrmax, d,n,i,p,k,j,maxi,nb,nrd;
//int main()
//{
// fi>>n;
// for (i=1; i<=n; i++)
// fi>>a[i];
//
// for (i=1; i<=n; i++)
// {
// nrd=1;
// x=a[i];
// d=2;
// while (x!=1)
// {
// p=0;
// while (x%d==0)
// {
// x=x/d;
// p++;
// }
// nrd=nrd*(p+1);
// d++;
// if(nrd==1&&d*d>x){nrd=2;break;}//optimizare pentru numere prime
// }
// fo<<nrd<<'\n';
// }
// return 0;
//}
//#include <fstream>//40p nu se incadreaza in timp
//#include <cmath>//cu ciur si desc. in factori +optimizari
//using namespace std;
//ifstream fi("nrdiv.in");
//ofstream fo("nrdiv.out");
//bool prim[4000000];
//long long x,maxi,a[60],b[700000];
//long long nrmax, n,i,p,k,j,nb,nrd,zz;
//int main()
//{
// fi>>n;
// for (i=1; i<=n; i++)
// fi>>a[i];
// for (i=1; i<=n; i++)
// if (a[i]>maxi) maxi=a[i];
//
// //Ciur Eratostene
// nrmax=(long long )sqrt((double)maxi);
// for(int i=2; i<=nrmax ;i++)
// if (prim[i]==0)
// for(int j=i*2; j<=nrmax; j=j+i) prim[j]=1;
//
// //constructie vector d numere prime
// for (i=2; i<=nrmax; i++)
// if (prim[i]==0) b[++nb]=i;
//
// for (i=1; i<=n; i++)
// {
// x=a[i];
// zz=(long long )sqrt((double)x);nrd=1;
// for(j=1; x!=1 && j<=nb && b[j]<=zz;j++){
// p=0;
// while(x%b[j]==0)
// p++,x/=b[j];
// nrd*=(p+1);
// }
// if(x!=1)nrd*=2;
// fo<<nrd<<'\n';
// }
// return 0;
//}
//#include<fstream>
//using namespace std;
//ifstream f("petrol.in");
//ofstream g("petrol.out");
//int n,eu,du,i,j;
//double maxi,e[101],d[101];
//int main()
//{
// f>>n>>eu>>du;
// for(i=1; i<=n; i++)
// f>>e[i]>>d[i];
// for(i=1; i<=n; i++)
// {
// e[i]=eu/e[i];
// d[i]=du/d[i];
// }
// if(n!=1)
// {for(i=1; i<=n; i++)
// for(j=1; j<=n; j++)
// if(i!=j)
// maxi=max(maxi,e[i]+d[j]);
// g<<maxi;
// }
// else g<<max(e[1],d[1]);
//
// return 0;
//}
//#include <cstdio>//varianata IV 100p
//using namespace std;
//int palme,n,k,i,x,fr[100001];
//int main(){
// freopen("carti1.in","r",stdin);
// freopen("carti1.out","w",stdout);
// scanf("%d",&n); //citire modificata
// for(i=1;i<=n;i++)
// { scanf("%d",&x); //citire modificata
// if(fr[x-1]==1){fr[x-1]=0;fr[x]=1;}
// else fr[x]=1;
// }
// for(i=1;i<=n;i++)
// if(fr[i]>0)palme++;
//
// printf("%d\n",palme-1);//afisare modificata
// return 0;
//}
//#include <fstream>//varianata III 50p timpul de citire !!!!!
//using namespace std;
//ifstream f("carti1.in");
//ofstream g("carti1.out");
//int palme,n,k,i,x,fr[100001];
//int main(){
// f>>n;
// for(i=1;i<=n;i++)
// {
// f>>x;
// if(fr[x-1]==1){fr[x-1]=0;fr[x]=1;}
// else fr[x]=1;
// }
// for(i=1;i<=n;i++)
// if(fr[i]>0)palme++;
// g<<palme-1;
// return 0;
//}
//#include <fstream>//varianata II 50p timpul de citire !!!!!
//using namespace std;
//ifstream f("carti1.in");
//ofstream g("carti1.out");
//int palme,n,k,i,x,fr[100001];
//int main(){
// f>>n;
// for(i=1;i<=n;i++) //se ia in ordine fiecare element
// {
// f>>x; //se ia in ordine fiecare element!!!!
// if(fr[x-1]==1) //daca este deja pus precedentul sau(x-1) pe 1
// {fr[x-1]=0;fr[x]=1;} //atunci precedentul sa pune pe 0
// //si cel curent (x) se pune pe 1
// else fr[x]=1; //altfel cel curent (x) se pune pe 1
// }
// for(i=1;i<=n;i++)
// if(fr[i]>0)palme++; //solutia va fi numarul de elemente de 1 din care scadem 1
//
// g<<palme-1;
// return 0;
//}
//#include <fstream>//varianata I 30p timpul de citire si rezolvare!!!
//using namespace std;
//ifstream f("carti1.in");
//ofstream g("carti1.out");
//int palme,n,k,i,maxi,a[100001];
//int main(){
// f>>n;
// for(i=1;i<=n;i++)f>>a[i];
// k=1;i=1;palme=0;
// while(1==1){
// if(a[i]==k)k++;
// i++;
// if(k==n+1)break;
// if(i==n+1){i=1;palme++;}
// }
// g<<palme;
// return 0;
//}
//#include <fstream>
//using namespace std;
//ifstream f("ciur.in");
//ofstream g("ciur.out");
//bool prim[2006000];
//int sol=0;
//int n=0;
//int main()
//{
// f>>n;
//
//for(int i=2;i<=n;++i)
// if (prim[i]==0)
// for(int j=i*2;j<=n;j+=i)
// prim[j]=1;
//
//for(int i=2;i<=n;++i)
// if (prim[i]==0){//g<<i<<" ";
// ++sol;
// }
//g<<sol;
//return 0;
//}
////vezi cmmmc 2010 ONI IX
//#include <iostream>
//#include<cmath>
//using namespace std;
//int nrsol;
//int pp,i,j,r,m,n,x;
//int a[1001],p[50000],b[20000];
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
// //ciur Eratostene
// r=sqrt(2000000004);
// for(i=2;i<=r;i++)
// if(p[i]==0)
// for(j=2*i;j<=r;j+=i)p[j]=1;
// for(i=2;i<=r;i++)
// if(p[i]==0)b[++m]=i;
// // for(i=1;i<=m;i++)cout<<b[i]<<" ";
// for(i=1;i<=n;i++){
// x=a[i];nrsol=1;
// j=1;
// while(x!=1 and x>=b[j] and j<=m)//avem x, numerele din ciur nu depasesc x,
// { //nu s-a terminat numerele din ciur
// pp=0;
// while(x%b[j]==0){pp++;x=x/b[j];}
// nrsol*=(2*pp+1);
// j++;
// }
// if(a[i]==1)nrsol=1; //caz particular x==1
// else if(a[i]==x)nrsol=3;//caz particular numar prim
// else if(x!=1)nrsol=nrsol*3;//caz cand avem numar cu factor prim>sqrt(x)
// //x=2*13 sqrt(26)=5.1 deci nu-l gaseste pe 13 !!
// //daca ramane ceva in x dupa desc. atunci ramane
// //doar un numar prim!!!! si atunci *3
// cout<<nrsol<<" ";
// }
// return 0;
//}
//#include <iostream>//bac V25 SIII pr4
//#include<fstream>
//using namespace std;
//float a,b;
//float n;
//ifstream f("bac.txt");
//int cmmdc(int a,int b){
// int r;
// do{
// r=a%b;
// a=b;
// b=r;
// }while(r);
// return a;
//}
//int main()
//{
// f>>n;
// a=n;b=1;
// while((int)a!=a){a=a*10;b=b*10;}
// cout<<a/cmmdc(a,b)<<" "<<b/cmmdc(a,b);
// return 0;
//}
//#include <iostream>//bac V23 SIII pr4
//#include<fstream>
//using namespace std;
//int a[1001],b[1001],j,i,n;
//bool se_inter;
//ifstream f("bac.txt");
//bool intersectie(int a,int b,int c,int d){
// if(b<c or d<a) return false;
// else return true;
//}
//int main()
//{
// f>>n;
// for(i=1;i<=n;i++)
// f>>a[i]>>b[i];
// for(i=1;i<=n;i++){
// se_inter=false;
// for(j=1;j<=n;j++)
// if(i!=j)
// if(intersectie(a[i],b[i],a[j],b[j])==true)se_inter=true;
// if(se_inter==false)cout<<a[i]<<" "<<b[i]<<endl;
// }
// return 0;
//}
//#include <iostream>
//#include<cstring>
//using namespace std;
//char a[100],b[100];
//char ch,e;
//int n,i,nr,k,m;
//int main()
//{
// cin.get(a,100);
// n=strlen(a);
// k=0;
// for(i=0;i<n;i++)
// if(a[i]!=' ')k++;
// else {m=max(m,k);k=0;}
//
// m=max(m,k);
// cout<<m;
// return 0;
//}
//#include <iostream>//Babes 2012
//#include <cmath>
//using namespace std;
//int a[100],n,i;
//void citire(int a[100],int &n){
// int x;
// while(cin>>x)
// if(x)a[++n]=x;
// else break;
//}
//void afisare(int a[100],int n){
//int i;
//for(i=1;i<=n;i++)
// cout<<a[i]<<" ";
//}
//bool asemenea(int x,int y){
// int i;
// int frx[10],fry[10];
// for(i=0;i<=9;i++)frx[i]=fry[i]=0;
// while(x){frx[x%10]=1;x=x/10;}
// while(y){fry[y%10]=1;y=y/10;}
// for(i=0;i<=9;i++)
// if(frx[i]!=fry[i])return false;
// return true;
//}
//void eliminare_subsir(int a[100],int &n,int p1,int p2){
//int i,j;
//j=p1;
//for(i=p2+1;i<=n;i++)
// a[j++]=a[i];
//n-=p2-p1+1;
//}
//void eliminare_secv_asemenea(int a[100],int &n){
//int i,j;
// i=1;
// while(i<=n){
// j=i;
// while(asemenea(a[j],a[j+1]))j++;
// if(i!=j)eliminare_subsir(a,n,i,j);
// else i++;
// }
//}
//int main()
//{
// citire(a,n);
// eliminare_secv_asemenea(a,n);
// afisare(a,n);
//
// return 0;
//}
//#include <iostream>
//#include <cmath>
//using namespace std;
//int i,n,s,S,mini,maxi,maxd,k,x,a,b,d,y;
//int main()
//{cin>>n;
//while(n%2==0)n=n/2;
//S=0;
//for(d=1;d<=n/2;d=d+2)
// if(n%d==0)S+=d;
//if(n%2==1) S+=n;
//cout<<S;
//return 0;
//}
//#include <iostream>//100p
//using namespace std;
//int x,y,d,z,t,a,b,r;
//int main()
//{cin>>x>>y;
//a=x;b=y;
//do{
// r=x%y;
// x=y;
// y=r;
//}while(r);
//for(d=1;d<=x;d++)
//if(a%d==0 and b%d==0)cout<<d<<" ";
//return 0;
//}
//#include <iostream>//90p
//using namespace std;
//int x,y,d,z,t;
//int main()
//{cin>>x>>y;
//z=min(x,y);
//t=z/2;
//for(d=1;d<=t;d++)
//if(x%d==0 and y%d==0)
//cout<<d<<" ";
//if(x%z==0 and y%z==0)cout<<z;
//return 0;
//}
//#include <iostream>//90p
//using namespace std;
//int x,y,d,mini;
//int main()
//{cin>>x>>y;
//mini=min(x,y);
//for(d=1;d<=mini;d++)
//if(x%d==0 and y%d==0)
//cout<<d<<" ";
//return 0;
//}
//
//#include <fstream>
//using namespace std;
//ifstream fi("zone.in");
//ofstream fo("zone.out");
//int a[303],i,j,n,k;
//bool gasit1,gasit2;
//int main()
//{
//fi>>n;
//for(i=1;i<=3*n;i++)fi>>a[i];
//gasit1=false;
//for(i=1;i<=n;i++)
// if(a[i]%2==0){gasit1=true;break;}
//gasit2=false;
//for(j=3*n;j>=2*n+1;j--)
// if(a[j]%2==1){gasit2=true;break;}
//if(gasit1==true and gasit2==true)swap(a[i],a[j]);
//for(i=1;i<=3*n;i++)fo<<a[i]<<" ";
// return 0;
//}
//#include <iostream>
//using namespace std;
//int a[200][200],i,j,v,vv,n,k;
//int main()
//{
// cin>>n;
// k=(n+1)/2;
// for(v=1;v<=k;v++)
// {
// a[v][k]=v;
// vv=v;i=v;
// j=k+1;
// while(vv){a[i][j]=--vv;j++;}
// vv=v;i=v;
// j=k-1;
// while(vv){a[i][j]=--vv;j--;}
// }
// for(i=1;i<=n;i++){
// for(j=1;j<=n;j++)
// if(i<=n/2)a[n-i+1][j]=a[i][j];
// }
// for(i=1;i<=n;i++){
// for(j=1;j<=n;j++)cout<<a[i][j]<<" ";
// cout<<endl;
// }
// return 0;
//
//}
////#include <iostream>
////using namespace std;
////int x1,y1,x2,y2;
////int main()
////{
//// cin>>x1>>y1>>x2>>y2;
//// if(x1==x2)cout<<"verticala";
//// else if(y1==y2)cout<<"orizontala";
//// else cout<<"oblica";
//// return 0;
////
////}
//#include <fstream>
//using namespace std;
//ifstream fi("spectacole.in");
//ofstream fo("spectacole.out");
// int n, i,j, x[101], y[101], k, ales;
// int main()
//{
// fi>>n;
// for(i=1;i<=n;i++) fi>>x[i]>>y[i];
// for(i=1;i<=n;i++)
// for(j=i+1;j<=n;j++)
// if(y[i]>y[j]){
// swap(x[i], x[j]);
// swap(y[i], y[j]);
// }
// k=1;
// ales=y[1];
// //fo<<x[1]<<" "<<y[1]<<endl;
// for(i=2;i<=n;i++)
// if(ales<=x[i]){
// k++;
// // fo<<x[i]<<" "<<y[i]<<endl;
// ales=y[i];
// }
// fo<<k;
// return 0;
//}
//
//#include <iostream>
//#include<cstring>
//using namespace std;
//char s[100];
//char c;
//int i,j,p,n; //mare frig saci =>mare frig sai
//int main()
//{
// cin.get(s,100);
// n=strlen(s);
// for(i=n-1;i>=0;i--)
// if(s[i]!=' ' and s[i]!='a' and s[i]!='e' and
// s[i]!='i' and s[i]!='o' and s[i]!='u' )
// {p=i;break; }
// cout<<p<<" ";
// strcpy(s+p,s+p+1);
// cout<<s;
//// cout<<"dati propozitie";
//// cin.get(a,100);
//// //a)
//// cout<<"lungimea propozitiei:"<<strlen(a)<<endl;
//// // b)
//// for(i=0;i<strlen(a);i++)
//// if(a[i]=='a' or a[i]=='A')k++;
//// cout<<"numarul de litere de a este:"<<k<<endl;
//// //c)
//// cout<<"propozitia fara litera 'c' este:";
//// for(i=0;i<strlen(a);i++)
//// if(a[i]!='c' and a[i]!='C')cout<<a[i];
//// cout<<endl;
//// //d)
////// for(i=0;i<strlen(a);i++)
////// if(a[i]>='a' and a[i]<='z')a[i]=a[i]-32;
////// cout<<a<<endl;
//// //e)
////// for(i=0;i<strlen(a);i++)
////// if(a[i]>='a' and a[i]<='z')a[i]=a[i]-32;
////// else
////// if(a[i]>='A' and a[i]<='Z') a[i]=a[i]+32;
////// cout<<a<<endl;
//// //f)
//// int voc=0,con=0;
//// for(i=0;i<strlen(a);i++)
//// if((a[i]>='a' and a[i]<='z')or(a[i]>='A' and a[i]<='Z'))
//// if(a[i]=='a' or a[i]=='e' or a[i]=='i' or a[i]=='o' or a[i]=='u' or
//// a[i]=='A' or a[i]=='E' or a[i]=='I' or a[i]=='O' or a[i]=='U' )voc++;
//// else con++;
//// cout<<"numar vocale si consoane:"<<voc<<" "<<con<<endl;
//
// return 0;
//}
//
//#include <iostream>
//#include<cstring>
//using namespace std;
//char a[100],b[100];
//char ch,e;
//int main()
//{
// cin>>a; //citire sir(cuvânt) pâna la spațiu
// cout<<a<<" "<<strlen(a)<<" "<<a[0];
//
// cin.get(a,100); //citire sir(propozitie) cu cin.get( , ) var I
// cout<<a;
//
//// cin.get(a,100,'m'); //citire sir(propozitie) cu cin.get( , , ) var II
//// cout<<a;
//
// return 0;
//}
//#include <fstream>//var I
//using namespace std;
//ifstream f("munte3.in");
//ofstream g("munte3.out");
// int a[101],b[101],fr[101],sk,s,i,n,k,j,p;
// int main()
//{
// f>>n;
// for(i=1;i<=n;i++)
// f>>a[i];
// for(i=2;i<n;i++)
// if(a[i-1]<a[i] and a[i]>a[i+1])k++;
// g<<k<<endl;
// do{
// for(i=1;i<=n;i++)fr[i]=0;
// k=0;
// for(i=2;i<n;i++)
// if(a[i-1]<a[i] and a[i]>a[i+1]){k++;fr[i]=1;}
// if(k==0)break;
// else
// {
// sk+=k;
// p=0;
// for(i=1;i<=n;i++)
// if(fr[i]==0)b[++p]=a[i];//{p++;b[p]=a[i];}
// for(i=1;i<=p;i++) a[i]=b[i]; n=p;
// }
// }while(1);
// g<<sk<<endl<<n;
// return 0;
//}
//#include <fstream>//var II
//using namespace std;
//ifstream f("meteo1.in");
//ofstream g("meteo1.out");
// int a[1001],s,i,n,k,j,maxi,pi,pf;
// int main()
//{
// f>>n;
// for(i=1;i<=n;i++)
// f>>a[i];
// k=1;
// for(i=1;i<n;i++)
// if((a[i]<0 and a[i+1]>=0) or (a[i]>=0 and a[i+1]<0))k++;
// else {
// if(k>=maxi){maxi=k;pi=i-k+1;pf=i;}
// k=1;
// }
// if(k>=maxi){maxi=k;pi=i-k+1;pf=i;}
// if(maxi>=2){
// g<<maxi<<endl;
// for(i=pi;i<=pf;i++)g<<a[i]<<" ";
// }
// else g<<0;
// return 0;
//}
//#include <fstream>//var I
//using namespace std;
//ifstream f("meteo1.in");
//ofstream g("meteo1.out");
// int a[1001],s,i,n,k,j,maxi,pi,pf;
// int main()
//{
// f>>n;
// for(i=1;i<=n;i++)
// f>>a[i];
// for(i=1;i<=n;i++)
// {
// k=1;
// for(j=i;j<n;j++)
// if((a[j]<0 and a[j+1]>=0)or (a[j]>=0 and a[j+1]<0))
// k++;
// else break;
// if(k>=maxi){maxi=k;pi=i;pf=j;}
// }
// if(maxi>=2){
// g<<maxi<<endl;
// for(i=pi;i<=pf;i++)g<<a[i]<<" ";
// }
// else g<<0;
// return 0;
//}
//#include <fstream>
//#define NMax 1001
//using namespace std;
//ifstream fi("eoliene.in");
//ofstream fo("eoliene.out");
// int n, i,j, x[NMax], y[NMax],d[NMax],l[NMax],k, ales;
// int main()
//{
// fi>>n;
// for(i=1;i<=n;i++) fi>>d[i];
// for(i=1;i<=n;i++) fi>>l[i];
// for(i=1;i<=n;i++) {x[i]=d[i]-l[i];y[i]=d[i]+l[i];}
// for(i=1;i<=n;i++)
// for(j=i+1;j<=n;j++)
// if(y[i]>y[j]){
// swap(x[i], x[j]);
// swap(y[i], y[j]);
// }
// k=1;
// ales=y[1];
// for(i=2;i<=n;i++)
// if(ales<x[i]){
// k++;
// ales=y[i];
// }
// fo<<n-k;
// return 0;
//}
//
//#include <iostream>
//#include<cstring>
//using namespace std;
//char a[100],b[100];
//char ch,e,*p;
//int strlena(char a[100]){
//int i=0;
// while(a[i]!='\0')i++;
// return i;
// //return strlen(a);
//}
//int main()
//{
// cin.get(a,100); //citire sir(propozitie) cu cin.get( , , ) var II
// for(int i=0;i<strlen(a);i++)
// a[i]=a[i+1];
// cout<<a;;
//
//
//return 0;
//}
//#include <iostream>
//using namespace std;
//void detnr(int x,int a[100])
//{
// int n=0;
// while(x!=0)
// {
// a[++n]=x%10;
// x=x/10;
// }
//}
//int palindrom(int a[100],int n)
//{
// int j=n,i=1;
// while(i<=j)
// {
// if(a[i]!=a[j]) return 0;
// i++;j--;
// }
// return 1;
//}
//
//
//void tiparire(int a[100][100],int n)
//{
// int i,j;
// for(i=1;i<=n;i++)
// {
// for(j=1;j<=n;j++)
// cout<<a[i][j]<<" ";
// cout<<endl;
// }
//}
//int n,i,j,a[100][100];
//int main()
//{
//
// return 0;
//}
//#include <iostream>
//using namespace std;
//int prim(int x)
//{
// int d,k=0;
// for(d=1;d<=x;d++)
// if(x%d==0) k++;
// if(k==2) return 1;
// else return 0;
//}
//int mprim(int m)
//{
// int k,p;
// p=0;
// k=1;
// while(p!=m)
// {
// k++;
// if(prim(k)==1)
// p++;
// }
// return k;
//}
//void tiparire(int a[100][100],int n)
//{
// int i,j;
// for(i=1;i<=n;i++)
// {
// for(j=1;j<=n;j++)
// cout<<a[i][j]<<" ";
// cout<<endl;
// }
//}
//int n,i,j,a[100][100];
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)
// for(j=1;j<=n;j++)
// if(i==j) a[i][j]=0;
// else if(i>j) a[i][j]=i;
// else if(i<j) a[i][j]=mprim(i);
// tiparire(a,n);
// return 0;
//}
//
//// www.pbinfo.ro
//#include <fstream>
//using namespace std;
//ifstream fi("maxsim.in");
//ofstream fo("maxsim.out");
//int maxi,n,i,p1,p2,a[1001];
//bool prim;
//int main()
//{
// fi>>n;
// for(i=1;i<=n;i++)fi>>a[i];
// for(i=1;i<=n/2;i++)
// if(maxi<a[i]+a[n-i+1]){maxi=a[i]+a[n-i+1];p1=i;p2=n-i+1;}
// fo <<maxi<<" "<<p1<<" "<<p2;
// return 0;
//}
//
//// nrapprime www.pbinfo.ro stergeti el prime
//#include <fstream>//100p
//#include<cmath>
//using namespace std;
//ifstream fi("nrapprime.in");
//ofstream fo("nrapprime.out");
//int n,i,j,t, x,d,rad,a[1001];
//bool prim;
//int main()
//{
// fi>>n;
// for(i=1;i<=n;i++)fi>>a[i];
// for(i=1;i<=n;i++)
// {
// x=a[i];
// if(x==0 or x==1)prim=false;
// if(x==2)prim=true;
// if(x>2){
// prim=true;
// rad=sqrt(x);
// for(d=2;d<=rad;d++)
// if(x%d==0){prim=false;break;}
// }
// if(prim) t++;
// }
//
// fo <<t;
// return 0;
//}
//// nraparitii www.pbinfo.ro
//#include <fstream>
//using namespace std;
//ifstream fi("nraparitii.in");
//ofstream fo("nraparitii.out");
//int k,i,n,maxi,a[1001];
//
//int main()
//{
// fi>>n;
// for(i=1;i<=n;i++)fi>>a[i];
// for(i=1;i<=n;i++)
// if(a[i]==a[n])k++;
// fo<<k;
// return 0;
//}
//// minmax www.pbinfo.ro
//#include <fstream>
//using namespace std;
//ifstream fi("minmax.in");
//ofstream fo("minmax.out");
//int mini,i,n,maxi,a[1001];
//
//int main()
//{
// fi>>n;
// for(i=1;i<=n;i++)fi>>a[i];
// mini=a[1];
// for(i=1;i<=n;i++)
// if(a[i]<mini)mini=a[i];
// for(i=1;i<=n;i++)
// if(a[i]>maxi)maxi=a[i];
// fo<<mini<<" "<<maxi;
// return 0;
//}
//// majoritar www.pbinfo.ro
//#include <iostream>//100p
//using namespace std;
//int k,majoritar,i,n,t,a[100001];
//
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
// majoritar=a[1];
// for(i=1;i<=n;i++)
// {if(a[i]==majoritar)k++;
// else k--;
// if(k==0){majoritar=a[i];k=1;}
// }
// for(i=1;i<=n;i++)
// if(a[i]==majoritar)t++;
// if(t>n/2)cout<<"DA "<<majoritar;
// else cout<<"NU";
// return 0;
//}
//// inserareDupa www.pbinfo.ro
//#include <iostream>//100p
//using namespace std;
//int i,n,t,a[1001],b[1001];
//
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
// for(i=1;i<=n;i++)
// {
// b[++t]=a[i];
// if(a[i]%2==0)b[++t]=a[i]*2;
// }
// for(i=1;i<=t;i++)
// cout<<b[i]<<" ";
// return 0;
//}
//// numarMunte www.pbinfo.ro stergeti el prime
//#include <iostream>//100p
//using namespace std;
//int c,n,i,j,t, x,d,k,a[1001];
//bool prim;
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
// for(i=1;i<=n;i++)
// {
// x=a[i];k=0;t=0;
// c=x%10;x=x/10;
// while(c<x%10&&x>0){c=x%10;x=x/10;k++;}
// while(c>x%10&&x>0){c=x%10;x=x/10;t++;}
// if(t&&k&&x==0)cout<<1<<endl;
// else cout<<0<<endl;
// }
// return 0;
//}
//// sterge www.pbinfo.ro stergeti el prime
//#include <iostream>//100p
//#include<cmath>
//using namespace std;
//int n,i,j,t, x,d,rad,a[1001];
//bool prim;
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
// for(i=1;i<=n;i++)
// {
// x=a[i];
// if(x==0 or x==1)prim=false;
// if(x==2)prim=true;
// if(x>2){
// prim=true;
// rad=sqrt(x);
// for(d=2;d<=rad;d++)
// if(x%d==0){prim=false;break;}
// }
// if(prim) {for(j=i;j<n;j++)a[j]=a[j+1];n--;i--;}
// }
// for(i=1;i<=n;i++)
// cout <<a[i]<<" ";
// return 0;
//}
////PermCirc www.pbinfo.ro
//#include <iostream>
//using namespace std;
//int t,p,s,n,i,x,k,a[1001];
//int main()
//{
// cin>>n;
// for(i=1; i<=n; i++)cin>>a[i];
// for(t=1; t<=n; t++)
// {
// for(i=1; i<=n; i++) cout<<a[i]<<" ";
// cout<<endl;
// x=a[1];
// for(i=1; i<n; i++)
// a[i]=a[i+1];
// a[n]=x;
// }
// return 0;
//}
////inserareInainte www.pbinfo.ro
//#include <iostream>
//#include<cmath>
//using namespace std;
//int m,maxi,cnt,n,i,x,k,j,a[101][1001];
//int main()
//{
// cin>>m>>n;
// for(i=1;i<=m;i++)
// for(j=1;j<=n;j++)
// cin>>a[i][j];
//
// for(i=1;i<=m;i++)
// for(j=1;j<=n;j++)
// if(maxi<a[i][j])maxi=a[i][j];
//
// for(i=1;i<=m;i++){
// k=0;
// for(j=1;j<=n;j++)
// if(maxi==a[i][j])k++;
// if(k>0)cnt++;
// }
// cout<<maxi<<" "<<cnt;
// return 0;
//}
////inserareInainte www.pbinfo.ro
//#include <iostream>
//#include<cmath>
//using namespace std;
//int p,s,n,i,x,k,j,a[1001];
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
//
// for(i=1;i<=n;i++)
// if(sqrt(a[i])==(int)sqrt(a[i]))
// {
// for(j=n;j>=i;j--)a[j+1]=a[j];
// a[i]=sqrt(a[i]);
// n++;
// i++;
// }
// for(i=1;i<=n;i++)
// cout<<a[i]<<" ";
// return 0;
//}
////inserare www.pbinfo.ro
//#include <iostream>
//using namespace std;
//int p,s,n,i,x,k,a[1001];
//int main()
//{
// cin>>n>>x>>p;
// for(i=1;i<=n;i++)cin>>a[i];
//
// for(i=n;i>=p;i--)
// a[i+1]=a[i];
// a[p]=x;
// n++;
// for(i=1;i<=n;i++)
// cout<<a[i]<<" ";
// return 0;
//}
////inlociure www.pbinfo.ro
//#include <iostream>
//using namespace std;
//int med,s,n,i,j,k,a[1001];
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
//
// for(i=1;i<=n;i++)
// if(a[i]!=0){s+=a[i];k++;}
// med=s/k;
// for(i=1;i<=n;i++)
// if(a[i]==0)a[i]=med;;
// for(i=1;i<=n;i++)
// cout<<a[i]<<" ";
// return 0;
//}
//// numarare3 www.pbinfo.ro
//#include <iostream>
//using namespace std;
//int n,i,j,k;
//int x,y,a[1001];
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
// for(i=1;i<=n;i++)
// {
// x=a[i];y=a[n];
// while(x!=y)
// if(x>y)x=x-y;
// else y=y-x;
// if(x==1)k++;
// }
// cout <<k;
// return 0;
//}
//// constr1 www.pbinfo.ro
//#include <iostream>
//using namespace std;
//int s,n,i,j,t,a[1001],b[1001];
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
// for(i=1;i<=n;i++)s+=a[i];
//
// for(i=1;i<=n;i++)b[i]=s-a[i];
//
// for(i=1;i<=n;i++) cout <<b[i]<<" ";
// return 0;
//}
//// constr2 www.pbinfo.ro af el prime in ordine inversa
//#include <iostream>//100p
//#include<cmath>
//using namespace std;
//int n,i,j,t, x,d,rad,a[1001],b[1001];
//bool prim;
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
// for(i=1;i<=n;i++)
// {
// x=a[i];
// if(x==0 or x==1)prim=false;
// if(x==2)prim=true;
// if(x>2){
// prim=true;
// rad=sqrt(x);
// for(d=2;d<=rad;d++)
// if(x%d==0){prim=false;break;}
// }
// if(prim) b[++t]=x;
// }
// for(i=t;i>=1;i--)
// cout <<b[i]<<" ";
// return 0;
//}
//// constr2 www.pbinfo.ro af el prime in ordine inversa
//#include <iostream>//60p
//#include<cmath>
//using namespace std;
//int k,n,i,j,t, x,d,rad,a[1001],b[1001];
//bool prim;
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
// for(i=1;i<=n;i++)
// {
// x=a[i];k=0;
// for(d=2;d<=x/2;d++)
// if(x%d==0)k++;
// if(k==0) b[++t]=x;
// }
// for(i=t;i>=1;i--)
// cout <<b[i]<<" ";
// return 0;
//}
//// constr www.pbinfo.ro
//#include <iostream>
//using namespace std;
//int n,i,j,k;
//int x,s,y,a[1001],b[1001];
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
// for(i=1;i<=n;i++)
// {
// x=a[i];s=0;
// while(x){
// s+=x%10;
// x=x/10;
// }
// b[i]=a[i]%s;
// }
// for(i=1;i<=n;i++)
// cout <<b[i]<<" ";
// return 0;
//}
//// numarare5 www.pbinfo.ro
//#include <iostream>
//using namespace std;
//int n,i,j,k,sx,sy;
//int x,y,a[1001];
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
// for(i=1;i<=n;i++)
// for(j=i+1;j<=n;j++)
// {
// x=a[i];sx=0;
// while(x){
// sx+=x%10;
// x=x/10;
// }
// y=a[j];sy=0;
// while(y){
// sy+=y%10;
// y=y/10;
// }
// if(sx==sy)k++;
// }
// cout <<k;
// return 0;
//}
//// numarare3 www.pbinfo.ro
//#include <iostream>
//using namespace std;
//int n,i,j,k;
//int x,y,a[1001];
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
// i=1;j=n;
// while(i<j)
// {
// x=a[i];y=a[j];
// while(x!=y)
// if(x>y)x=x-y;
// else y=y-x;
// if(x==1)k++;
// i++;j--;
// }
// cout <<k;
// return 0;
//}
//// numarare7 www.pbinfo.ro
//#include <iostream>
//using namespace std;
//int s,n,i,j,k;
//float x,y,a[1001];
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
// x=a[1];y=a[n];
// if(x>y)swap(x,y);
// for(i=1;i<=n;i++)
// if(a[i]<x or a[i]>y)k++;
// cout <<k;
// return 0;
//}
////numarare2 www.pbinfo.ro
//#include <iostream>
//using namespace std;
//int s,n,i,j,k,a[1001];
//float med;
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
//
// for(i=1;i<=n;i++)
// s+=a[i];
// med=(float)s/n;
// for(i=1;i<=n;i++)
// if(a[i]>med)k++;
// cout <<k;
// return 0;
//}
////suma2 www.pbinfo.ro (suma de la primul par si ultimul par)
//#include <iostream>
//using namespace std;
//int s,n,i,j,ip,iq,mini,maxi,a[1001];
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
//
// for(i=1;i<=n;i++)
// if(a[i]%2==0){ip=i;break;}
// for(i=n;i>=1;i--)
// if(a[i]%2==0){iq=i;break;}
//
// if(ip==0)cout<<"NU EXISTA";
// else { for(i=ip;i<=iq;i++)s+=a[i];cout << s;}
// return 0;
//}
////numere6 www.pbinfo.ro (cate el. sunt = maxi-mini)
//#include <iostream>
//using namespace std;
//int k,dif,n,i,j,imin,imax,mini,maxi,a[1001];
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
//
// mini=a[1];
// for(i=1;i<=n;i++)
// if(a[i]<mini)mini=a[i];
//
// maxi=a[1];
// for(i=1;i<=n;i++)
// if(a[i]>maxi)maxi=a[i];
//
// dif=maxi-mini;
// for(i=1;i<=n;i++)
// if(a[i]==dif)k++;
// cout << k;
// return 0;
//}
////pozminmax www.pbinfo.ro
//#include <iostream>
//using namespace std;
//int n,i,j,imin,imax,mini,maxi,a[1001];
//int main()
//{
// cin>>n;
// for(i=1;i<=n;i++)cin>>a[i];
//
// mini=a[1];imin=1;
// for(i=1;i<=n;i++)
// if(a[i]<mini){mini=a[i];imin=i;}
//
// maxi=a[1];imax=1;
// for(i=1;i<=n;i++)
// if(a[i]>maxi){maxi=a[i];imax=i;}
//
// cout << imin<<" " << imax;
// return 0;
//}