!!!!!!!!!!!!!!!!!!----- analyse de l'etape 3 -----!!!!!!!!!!!!!!!!!!
  !!-- si tous les champs ne sont pas remplis on alerte --!!
  !if $r1recipf=$empty
    1alertrecip1=$alert2
  !endif
  !if $r2recipf=$empty
    1alertrecip2=$alert2
  !endif
  !if $r1recipf=$empty or $r2recipf=$empty
    !exit
  !endif
  
  !!-- on verifie la validite des reponses --!!
  
  !!!!!!!!!---- elimination des signes bizarres ----!!!!!!!!!
  r1recipf=!nospace $r1recipf
  r2recipf=!nospace $r2recipf
  
  repsnb=2
  reps1=$r1recipf
  reps2=$r2recipf
  NonValide=alert3
  
  !read comsDir/repclean
  
  !if $alertreps1!=$empty
    2alertrecip1=$alert3
  !endif
  !if $alertreps2!=$empty
    2alertrecip2=$alert3
  !endif
  !if $2alertrecip1!=$empty or $2alertrecip2!=$empty
    r1recipf=!replace internal " by ?? in $r1recipf
    r2recipf=!replace internal " by ?? in $r2recipf
    !exit
  !endif

  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!  
  errnb=0
  varrecip=
  
  !for i=1 to 2
     varrecip=!varlist nofn $(r$(i)recipf)
     varrecip=!listcomplement $recipVarList in $varrecip
     !if $varrecip!=$empty
      2alertrecip$(i)=$alert3
      errnb=$[$errnb+1]
      varrecip=
    !endif
  !next i
  !if $errnb!=0
    !exit
  !endif
  
  !!!!---- maintenant on analyse la reponse ----!!!!
  !for i=1 to 2
    r$(i)recipf=!rawmath $(r$(i)recipf)
  !next i
  
  r1recipfTF=!exec maxima ratsimp($1recipf-($r1recipf));
  r2recipfTF=!exec maxima ratsimp($2recipf-($r2recipf));
  !if $r1recipfTF=0
    VFrecip1=$Vrcom
    note=$[$note+3]
   !else
    VFrecip1=$Fxcom
  !endif
  !if $r2recipfTF=0
    VFrecip2=$Vrcom
    note=$[$note+3]
   !else
    VFrecip2=$Fxcom
  !endif
  
  r1recipf=!texmath $r1recipf
  r2recipf=!texmath $r2recipf
  
  !if $VFrecip1=$Fxcom or $VFrecip2=$Fxcom
    module_score=$note
    !read answer.phtml
    status=done
    !exit
   !else
    rep=3
  !endif



module_score=$note
!read answer.phtml
status=done 
