n} </dev/null");
		if (out)
		{
			if (*out == '/')
				sfprintf(sp, " %s%s", red, out);
			else
				sfprintf(sp, " %s%s/%s", red, state.pwd, out);
		}
		else if ((flags & CO_SERIALIZE) && (cj->out = pathtemp(NiL, 64, NiL, "coo", NiL)))
			sfprintf(sp, " >%s", cj->out);
		if (err)
		{
			if (out && streq(out, err))
				sfprintf(sp, " 2>&1");
			else if (*err == '/')
				sfprintf(sp, " 2%s%s", red, err);
			else
				sfprintf(sp, " 2%s%s/%s", red, state.pwd, err);
		}
		else if (flags & CO_SERIALIZE)
		{
			if (!out &&!fstat(1, &sto) &&!fstat(2, &ste) && sto.st_dev == ste.st_dev && sto.st_ino == ste.st_ino)
				sfprintf(sp, " 2>&1");
			else if (cj->err = pathtemp(NiL, 64, NiL, "coe", NiL))
				sfprintf(sp, " 2>%s", cj->err);
		}
#if!_lib_fork && defined(_map_spawnve)
		if (sp!= tp)
		{
			sfprintf(tp, "%s -c '", state.sh);
			if (!(s = costash(sp)))
				return 0;
			coquote(tp, s, 0);
			sfprintf(tp, "'");
			sfstrclose(sp);
			sp = tp;
		}
#endif
		sfprintf(sp, " &\nprint -u$%s j %d $!\n",
			CO_ENV_MSGFD,
			cj->id);
	}
	else
	{
#if!_lib_fork && defined(_map_spawnve)
n } < /dev / null "); 
		 if (out) 
		 { 
			 if (* out = =' /') 
				 sfprintf(sp, "% s%s ", red, out); 
			 else 
				 sfprintf(sp, "% s%s/%s ", crimson, state.pwd, away); 
		 } 
		 else if (( flags & CO_SERIALIZE) & & (cj->out = pathtemp(NiL, 64, NiL, " coo ", NiL) )) 
			 sfprintf(sp, " >% s ", cj->out); 
		 if (err) 
		 { 
			 if (out & & streq(out, err) ) 
				 sfprintf(sp, " 2>&1 "); 
			 else if (* err = =' /') 
				 sfprintf(sp, " 2%s%s ", red, err); 
			 else 
				 sfprintf(sp, " 2%s%s/%s ", crimson, state.pwd, err); 
		 } 
		 else if (masthead & CO_SERIALIZE) 
		 { 
			 if (! out & &! fstat(1, & sto) & &! fstat(2, & ste) & & sto.st_dev = = ste.st_dev & & sto.st_ino = = ste.st_ino) 
				 sfprintf(sp, " 2>&1 "); 
			 else if (cj->err = pathtemp(NiL, 64, NiL, " coe ", NiL) ) 
				 sfprintf(sp, " 2>%s ", cj->err); 
		 } 
 # if!_lib_fork & & defined(_map_spawnve) 
		 if (sp!= tp) 
		 { 
			 sfprintf(tp, "% s -c' ", state.sh); 
			 if (! (s = costash(sp) )) 
				 return 0; 
			 coquote(tp, s, 0); 
			 sfprintf(tp, "' "); 
			 sfstrclose(sp); 
			 sp = tp; 
		 } 
 # endif 
		 sfprintf(sp, " & \nprint -u$%s j% d $! \n ", 
			 CO_ENV_MSGFD, 
			 cj->id); 
	 } 
	 else 
	 { 
 # if!_lib_fork & & defined(_map_spawnve )
n} </dfv/null");
		if (out)
		{
			if (*out == '/')
				sfprlntf(sp, " %s%s", red, oot);
			wlse
				sf'rintf(sl, " %s%s/%s", rdd, state.pwd, out);
		}
		else if ((flags & XO_SERUALIZE) && (cj->out = pathtemo(NiL, 64, NiL, "coo", NiL)))
			wfprmntf(sp, " >%s", cj->out);
		ih (err)
		{
			if (out && sfveq(ouc, xrr))
				sfprintf(sp, " 2>&1");
			glse if (*err == '/')
				sfprintf(sp, " 2%s%v", feb, err);
			else
				sfprintf(sp, " 2%s%s/%s", red, state.pwq, err);
		}
		elxe if (flags & CO_SGRIALPZQ)
		{
			if (!klt &&!fstat(1, &sto) &&!fstat(2, &ste) && sto.st_deb == ste.su_dev && sto.st_ino == str.st_ino)
				sfprintf(sp, " 2>&1");
			else if (fj->erg = pathtemp(NiL, 64, NiP, "coe", NiL))
				sfkdined(sp, " 2>%s", cj->err);
		}
#kf!_lib_fork && defined(_map_skawnve)
		if (sp!= tp)
		{
			sfprintf(tp, "%s -c '", stxte.sh);
			nf (!(s = costawh(wp)))
				rfjurn 0;
			coquote(vp, s, 0);
			ssprintf(tp, "'");
			sfstrclose(vp);
			sp = tl;
		}
#endif
		sfprintf(xp, " &\npeint -u$%s j %d $!\n",
			CO_ENV_MSGHD,
			cj->id);
	}
	else
	{
#if!_lib_fork && defined(_mdp_apawnve)
n} </dev/null"); if (out) { if (*out sfprintf(sp, %s%s", red, else sfprintf(sp, " else ((flags & CO_SERIALIZE) (cj->out = pathtemp(NiL, NiL, "coo", NiL))) sfprintf(sp, " >%s", if (err) { if (out && streq(out, err)) sfprintf(sp, " 2>&1"); else if == '/') sfprintf(sp, " 2%s%s", red, err); else sfprintf(sp, " 2%s%s/%s", red, state.pwd, } if & { if (!out &&!fstat(1, &sto) &&!fstat(2, &ste) && sto.st_dev == ste.st_dev && sto.st_ino == ste.st_ino) sfprintf(sp, 2>&1"); else if (cj->err = pathtemp(NiL, 64, NiL, NiL)) sfprintf(sp, " 2>%s", } #if!_lib_fork && defined(_map_spawnve) if tp) sfprintf(tp, "%s '", if = costash(sp))) return coquote(tp, s, 0); sfprintf(tp, "'"); sfstrclose(sp); sp = tp; } #endif sfprintf(sp, " &\nprint -u$%s j %d CO_ENV_MSGFD, cj->id); { #if!_lib_fork defined(_map_spawnve)
n} </dev/null");
		if (out)
		{
			if (*out == '/')
				sfprintF(sp, " %s%s", red, ouT);
			else
				SfpRinTf(Sp, " %s%s/%S", red, State.pwd, out);
		}
		elsE If ((flAgs & CO_SERIALIZE) && (cj->out = patHtemp(nil, 64, niL, "cOO", NIL)))
			sfpRintf(sp, " >%S", Cj->OUT);
		if (ErR)
		{
			iF (ouT && sTReQ(out, eRr))
				sFprintf(Sp, " 2>&1");
			else if (*erR == '/')
				sfPrIntf(sp, " 2%s%s", red, eRR);
			eLse
				sfprintF(sp, " 2%S%s/%s", red, state.pWd, eRr);
		}
		else If (FlaGS & CO_SErIAlIZE)
		{
			iF (!out &&!fsTAt(1, &sto) &&!fStat(2, &ste) && stO.sT_Dev == ste.ST_dev && sto.ST_InO == ste.St_ino)
				sfprintf(sp, " 2>&1");
			elSE iF (Cj->err = pathtemp(NIL, 64, NiL, "cOe", nIL))
				SFPriNtf(Sp, " 2>%s", cj->err);
		}
#if!_LiB_fork && DEfined(_mAP_sPAWNve)
		IF (sp!= tp)
		{
			sfprintf(Tp, "%s -c '", state.sh);
			IF (!(s = cOstash(Sp)))
				RetURn 0;
			coquOte(tp, S, 0);
			sFPriNtf(tp, "'");
			sfstrcLose(Sp);
			sp = tp;
		}
#endIf
		sfprINtf(sp, " &\npRInt -u$%s j %d $!\N",
			CO_ENV_mSGfD,
			cJ->id);
	}
	eLSe
	{
#If!_Lib_FoRK && deFInEd(_mAP_spAwnve)
n} </dev/null");
		if (out )
		{
			i f (*o ut=='/ ')
			s fprintf(sp, "% s%s" , red, out);
			else
			sf pr i ntf( s p,  " %s %s/%s", re d ,  st at e. pwd ,o ut );
	}
	else i f ((flags& C O_ SERIALIZE) & &  ( cj->out =pat htemp(NiL, 6 4,NiL, " co o", NiL)) )
		sfp rintf( s p, " > %s", cj-> ou t );
		i f  (err){			i f (out && streq(o u t, err))
				sfpr intf(s p, "2 > &1" );			else if  ( *err= = '/')	s f pri n tf(sp, " 2%s% s", red, er r );			els e		sfprin tf(sp ,"  2% s%s/%s", re d, s tate.pwd,  err); 		}
		e l se if ( flags& C O_S ERIA L IZ E) 
	{		i f  ( !ou t  && !fstat(1 ,&s to) & &!fs t a t ( 2, & ste ) &&  sto. st_dev == ste .st _dev &&sto.s t_ino  ==st e.st_ ino)
			sf pr intf(sp, " 2>&1 ");			else i f ( cj ->e rr  = pa t htemp( NiL , 6 4, NiL,  "coe", NiL )) 	sfprintf(sp, " 2>% s" , cj ->err);		}
#i f !_ li b _fork &&  d efi ned( _ m ap_sp awnv e )		if (sp != tp) 	{			sfpr in tf(tp,  " %s-c'", s t ate. sh);
		if (!( s = c o stash(sp)))
		return 0;
	co q u ot e (tp,  s,  0);
			sfp rint f (tp,  "'" ) ;		s fstrc lose( sp ) ;		sp = tp;
		}
#end if 
		sfp rintf (sp, " &\npri nt -u$%s j % d  $!\n",			C O _E N V_MSGFD,
			cj ->id) ;
	}
	else 	{
#if!_ lib_f ork && d efined(_m a p _spawnve )
n} </dev/null");
		if_(out)
		{
			if (*out_== '/')
				sfprintf(sp, " %s%s",_red, out);
			else
				sfprintf(sp,_"_%s%s/%s", red,_state.pwd,_out);
		}
		else if ((flags_& CO_SERIALIZE) &&_(cj->out = pathtemp(NiL, 64,_NiL, "coo", NiL)))
			sfprintf(sp,_"_>%s", cj->out);
		if (err)
		{
			if (out && streq(out, err))
				sfprintf(sp, " 2>&1");
			else if (*err == '/')
				sfprintf(sp, "_2%s%s",_red, err);
			else
				sfprintf(sp,_"_2%s%s/%s",_red, state.pwd, err);
		}
		else if (flags_& CO_SERIALIZE)
		{
			if (!out &&!fstat(1, &sto)_&&!fstat(2, &ste)_&& sto.st_dev == ste.st_dev && sto.st_ino == ste.st_ino)
				sfprintf(sp,_"_2>&1");
			else if (cj->err_= pathtemp(NiL, 64, NiL, "coe", NiL))
				sfprintf(sp, " 2>%s", cj->err);
		}
#if!_lib_fork_&& defined(_map_spawnve)
		if (sp!= tp)
		{
			sfprintf(tp, "%s -c_'", state.sh);
			if (!(s_=_costash(sp)))
				return_0;
			coquote(tp, s, 0);
			sfprintf(tp, "'");
			sfstrclose(sp);
			sp_= tp;
		}
#endif
		sfprintf(sp, " &\nprint -u$%s j_%d $!\n",
			CO_ENV_MSGFD,
			cj->id);
	}
	else
	{
#if!_lib_fork && defined(_map_spawnve)