diff --git a/README.md b/README.md
index aed0d036779633d07f602cac2f5b1d57a24b39d8..53854dc32a90c746ec92f1afa48db5784968045d 100644
--- a/README.md
+++ b/README.md
@@ -71,3 +71,27 @@ Voir code
 
 Voir code
 
+
+### Question 3.1
+
+Pour éviter les interblocages, il est nécessaire de contrôler la direction des trains en circulation et leur nombre dans chaque section. Nous ajoutons deux nouvelles variables : `trainsWaitingRL` et `trainsWaitingLR`, qui comptent les trains en attente par direction. Ces variables permettront de donner la priorité aux trains qui attendent depuis plus longtemps et ainsi d’éviter les situations de famine où un train pourrait être bloqué indéfiniment.
+
+### Question 3.2
+
+L’invariant de sûreté doit garantir qu’un train ne quitte pas une gare si des trains du sens inverse sont déjà en mouvement.  Pour cela, un train ne pourra avancer que si aucun train ne se déplace dans le sens opposé. La nouvelle condition qui doit être respectée peut être formulée ainsi :
+
+(currentDirection == d) || (movingTrains == 0) 
+
+
+### Question 3.3
+
+
+La gestion des interblocages repose principalement sur la classe Railway, qui contrôle la direction des trains, le nombre de trains en déplacement et les trains en attente. C’est dans cette classe que les décisions de départ des trains doivent être prises en fonction de l’état du système. Railway sera donc responsable de la mise en œuvre de la synchronisation et du respect de l’invariant de sûreté.
+
+### Question 3.4
+
+Voir code
+
+### Question 3.5
+
+Voir code
diff --git a/src/train/Railway.java b/src/train/Railway.java
index 3f9d668daa27c4daf0ba175199de93c05f78a7b6..6ae52ca851eec80400413a8f04a5a2139f21b304 100644
--- a/src/train/Railway.java
+++ b/src/train/Railway.java
@@ -63,7 +63,7 @@ public class Railway {
 	    else trainsWaitingRL++;
 
 	    // Attente si un train circule déjà en sens inverse
-	    while (movingTrains > 0 && currentDirection != d && (trainsWaitingRL <= trainsWaitingLR)) {
+	    while (movingTrains > 0 && currentDirection != d ) {
 	        wait();
 	    }