docs: function _formatCnd(cnd,map)
  {
      let ret={bodyCnt:0,exp:'',err:[]};
      if(String==cnd.constructor)
          cnd=[{R:cnd}];
      else if(Array!=cnd.constructor)
          cnd=[cnd];
      for(let i=0;i<cnd.length;i++)
      {
          let R=cnd[i],M=null,no=null;
          if(String!=R.constructor)
          {
              M=R.M;no=R.no;R=R.R;
          }
          ret.exp+=' || (('+R+')?0:'+(i+1)+')';
          R={M:M,no:no};
          if(!M) delete R.M;
          if(!no) delete R.no;
          ret.err.push(R);
      }
      ret.exp=ret.exp.substr(4).replace(/{[SUX]?}/g,function($0)
      {
          if('{}'==$0) ret.bodyCnt++;
          return map[$0];
      });
      return ret;
  }