+ if(rowRemove>0){nrow[rowRemove]=0; rowId[rowRemove]=-1;}
+ }
+ AliDebug(4, Form(" Ncl[%d[%d] + %d[%d] + %d[%d]]", nrow[0], rowId[0], nrow[1], rowId[1], nrow[2], rowId[2]));
+
+ if(nr==3){
+ SetBit(kRowCross, kTRUE); // mark pad row crossing
+ SetErrorMsg(kAttachRow);
+ const Float_t am[]={TMath::Abs(mean[0]), TMath::Abs(mean[1]), TMath::Abs(mean[2])};
+ AliDebug(4, Form("complex row configuration\n"
+ " r[%d] n[%d] m[%6.3f] s[%6.3f]\n"
+ " r[%d] n[%d] m[%6.3f] s[%6.3f]\n"
+ " r[%d] n[%d] m[%6.3f] s[%6.3f]\n"
+ , rowId[0], nrow[0], am[0], syDis[0]
+ , rowId[1], nrow[1], am[1], syDis[1]
+ , rowId[2], nrow[2], am[2], syDis[2]));
+ Int_t id[]={0,1,2}; TMath::Sort(3, am, id, kFALSE);
+ // backup
+ Int_t rnn[3]; memcpy(rnn, nrow, 3*sizeof(Int_t));
+ Int_t rid[3]; memcpy(rid, rowId, 3*sizeof(Int_t));
+ Double_t rm[3]; memcpy(rm, mean, 3*sizeof(Double_t));
+ Double_t rs[3]; memcpy(rs, syDis, 3*sizeof(Double_t));
+ nrow[0]=rnn[id[0]]; rowId[0]=rid[id[0]]; mean[0]=rm[id[0]]; syDis[0]=rs[id[0]];
+ nrow[1]=rnn[id[1]]; rowId[1]=rid[id[1]]; mean[1]=rm[id[1]]; syDis[1]=rs[id[1]];
+ nrow[2]=0; rowId[2]=-1; mean[2] = 1.e3; syDis[2] = 1.e3;
+ AliDebug(4, Form("solved configuration\n"
+ " r[%d] n[%d] m[%+6.3f] s[%6.3f]\n"
+ " r[%d] n[%d] m[%+6.3f] s[%6.3f]\n"
+ " r[%d] n[%d] m[%+6.3f] s[%6.3f]\n"
+ , rowId[0], nrow[0], mean[0], syDis[0]
+ , rowId[1], nrow[1], mean[1], syDis[1]
+ , rowId[2], nrow[2], mean[2], syDis[2]));
+ nr=2;
+ } else if(nr==2) {