diff --git a/.gitignore b/.gitignore
old mode 100644
new mode 100755
diff --git a/bin/tp8/Comparable b/bin/tp8/Comparable
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/bin/tpqu04/MyException.class b/bin/tpqu04/MyException.class
new file mode 100644
index 0000000000000000000000000000000000000000..0281b31ee08d5dc50136112fddfc60c14e6f2533
Binary files /dev/null and b/bin/tpqu04/MyException.class differ
diff --git a/bin/tpqu04/exemple2.class b/bin/tpqu04/exemple2.class
new file mode 100644
index 0000000000000000000000000000000000000000..7ccea777c8818a7c42148a6e71dde70e31d467ef
Binary files /dev/null and b/bin/tpqu04/exemple2.class differ
diff --git a/bin/tpqu04/exemple3.class b/bin/tpqu04/exemple3.class
new file mode 100644
index 0000000000000000000000000000000000000000..941fcb57cc3b928e125279691a7eb7572caed218
Binary files /dev/null and b/bin/tpqu04/exemple3.class differ
diff --git a/bin/tpqu04/exemple4.class b/bin/tpqu04/exemple4.class
new file mode 100644
index 0000000000000000000000000000000000000000..2aa18c3378d33e8c80ba8bb66e9f572792fa9fd3
Binary files /dev/null and b/bin/tpqu04/exemple4.class differ
diff --git a/bin/tpqu04/exemple5.class b/bin/tpqu04/exemple5.class
new file mode 100644
index 0000000000000000000000000000000000000000..d5ba969320e2c8b740ebfee9a3c0c66158da73d6
Binary files /dev/null and b/bin/tpqu04/exemple5.class differ
diff --git a/bin/tpqu04/exemple6.class b/bin/tpqu04/exemple6.class
new file mode 100644
index 0000000000000000000000000000000000000000..d1760f0a64e9803bb1ebfe8f4c17deffc9edc489
Binary files /dev/null and b/bin/tpqu04/exemple6.class differ
diff --git a/bin/tpqu04/exo2.class b/bin/tpqu04/exo2.class
new file mode 100644
index 0000000000000000000000000000000000000000..7dc92b37720cfde5659e5a983dc39530a58aafb8
Binary files /dev/null and b/bin/tpqu04/exo2.class differ
diff --git a/bin/tpqu04/testException.class b/bin/tpqu04/testException.class
new file mode 100644
index 0000000000000000000000000000000000000000..fc9bcbc488d4521aa1e483eac25c91fd4ae334e6
Binary files /dev/null and b/bin/tpqu04/testException.class differ
diff --git a/lib/tp07-res.jar b/lib/tp07-res.jar
old mode 100644
new mode 100755
diff --git a/src/tp5/Book.java b/src/tp5/Book.java
old mode 100644
new mode 100755
diff --git a/src/tp5/Library.java b/src/tp5/Library.java
old mode 100644
new mode 100755
diff --git a/src/tp6/Company.java b/src/tp6/Company.java
old mode 100644
new mode 100755
diff --git a/src/tp7/BidirectionalPhoneBookTest.java b/src/tp7/BidirectionalPhoneBookTest.java
old mode 100644
new mode 100755
diff --git a/src/tp7/BreedingFarmTest.java b/src/tp7/BreedingFarmTest.java
old mode 100644
new mode 100755
diff --git a/src/tp7/DuckTest.java b/src/tp7/DuckTest.java
old mode 100644
new mode 100755
diff --git a/src/tp7/GooseTest.java b/src/tp7/GooseTest.java
old mode 100644
new mode 100755
diff --git a/src/tp7/HenTest.java b/src/tp7/HenTest.java
old mode 100644
new mode 100755
diff --git a/src/tp7/ProPhoneNumber.java b/src/tp7/ProPhoneNumber.java
old mode 100644
new mode 100755
diff --git a/src/tp7/ProPhoneNumberTest.java b/src/tp7/ProPhoneNumberTest.java
old mode 100644
new mode 100755
diff --git a/src/tp7/UniversityDepartment.java b/src/tp7/UniversityDepartment.java
old mode 100644
new mode 100755
diff --git a/src/tp8/Food.java b/src/tp8/Food.java
old mode 100644
new mode 100755
index 6ee7d33d68d24b0f803b82e9d96c13b94e5c2603..3da62d76f254e177eb1cc1fa614ed3c9fbc3a36d
--- a/src/tp8/Food.java
+++ b/src/tp8/Food.java
@@ -46,5 +46,5 @@ public class Food implements IProduct, Comparable<Food> {
         return this.isBestBefore.compareTo(other.isBestBefore);
     }
     
-
+    
 }
diff --git a/src/tp8/Furniture.java b/src/tp8/Furniture.java
old mode 100644
new mode 100755
index 71c7593f75670e54bc0838442c2e2ad530813006..b7e314716fcdda4462c4468194bee821d6253600
--- a/src/tp8/Furniture.java
+++ b/src/tp8/Furniture.java
@@ -25,5 +25,6 @@ public class Furniture implements IProduct, Comparable<Furniture> {
     public boolean isPerishable() {
         return false;
     }
+
     
 }  
\ No newline at end of file
diff --git a/src/tp8/IProduct.java b/src/tp8/IProduct.java
old mode 100644
new mode 100755
diff --git a/src/tp8/Shelf.java b/src/tp8/Shelf.java
old mode 100644
new mode 100755
diff --git a/src/tpqu02/WarriorCard.java b/src/tpqu02/WarriorCard.java
old mode 100644
new mode 100755
diff --git a/src/tpqu04/MyException.java b/src/tpqu04/MyException.java
new file mode 100644
index 0000000000000000000000000000000000000000..72307bbef876fe6fd35d1891bc0e3bd992abfbc3
--- /dev/null
+++ b/src/tpqu04/MyException.java
@@ -0,0 +1,6 @@
+package tpqu04;
+
+public class MyException extends Exception {
+    public MyException() {}
+    public MyException(String msg) {super(msg);}
+}
\ No newline at end of file
diff --git a/src/tpqu04/exemple2.java b/src/tpqu04/exemple2.java
new file mode 100644
index 0000000000000000000000000000000000000000..8eda77cc4dd981cd07e1f929cc27a8f26c886fb4
--- /dev/null
+++ b/src/tpqu04/exemple2.java
@@ -0,0 +1,7 @@
+package tpqu04;
+
+public class exemple2 { //throws MyException
+    public void example2() {
+        throw new MyException(); //ca ne marchera pas, il faut prévenir que c'est risqué
+    }
+}
diff --git a/src/tpqu04/exemple3.java b/src/tpqu04/exemple3.java
new file mode 100644
index 0000000000000000000000000000000000000000..6eaa014389ac45e1f1eb7129ed8cddbb74a9b55b
--- /dev/null
+++ b/src/tpqu04/exemple3.java
@@ -0,0 +1,14 @@
+package tpqu04;
+
+public class exemple3 {
+    public void doItAgain() throws MyException {
+        throw new MyException();
+    }
+    public void example3() {
+        try {
+            doItAgain();
+        } catch (Exception e) { //corriger Exception > MyException
+            processing();
+        }
+    }
+}
diff --git a/src/tpqu04/exemple4.java b/src/tpqu04/exemple4.java
new file mode 100644
index 0000000000000000000000000000000000000000..47347f57f87e00fd2fec264d55f14891181de4ae
--- /dev/null
+++ b/src/tpqu04/exemple4.java
@@ -0,0 +1,16 @@
+package tpqu04;
+
+public class exemple4 {
+
+    public int example4() {
+        int data;
+        try {
+            data = getData();
+        } catch (NullPointerException e) {e.printStackTrace();}
+            return data;
+        }
+
+    public int getData() throws NullPointerException {
+        throw new NullPointerException();
+    }
+}
diff --git a/src/tpqu04/exemple5.java b/src/tpqu04/exemple5.java
new file mode 100644
index 0000000000000000000000000000000000000000..273760565eb4d36281f220a2d879c3f765a36d67
--- /dev/null
+++ b/src/tpqu04/exemple5.java
@@ -0,0 +1,13 @@
+package tpqu04;
+
+public class exemple5 {
+
+    public void example5() {
+        doItFinally();
+    }
+    
+    public int doItFinally() {
+        throw new RuntimeException();
+    }
+    
+}
\ No newline at end of file
diff --git a/src/tpqu04/exemple6.java b/src/tpqu04/exemple6.java
new file mode 100644
index 0000000000000000000000000000000000000000..46a74c6dd51180ccaa22de4f05b6e2db91c76a27
--- /dev/null
+++ b/src/tpqu04/exemple6.java
@@ -0,0 +1,13 @@
+package tpqu04;
+
+public class exemple6 {
+    public static void main(String[] args) {
+        int k;
+        try {
+            k = 1/Integer.parseInt(args[0]);
+        }
+        catch(RuntimeException e) {System.err.println("Runtime " + e);}  //Exception prend tt en premier, trop global, mettre dans l'autre sens
+        catch(ArrayIndexOutOfBoundsException e) {System.err.println("Index " + e);}
+        catch(ArithmeticException e) {System.err.println("Arithmetic " + "");}
+    }
+}
diff --git a/src/tpqu04/exo2.java b/src/tpqu04/exo2.java
new file mode 100644
index 0000000000000000000000000000000000000000..64d7079614e83cad0a93a7bee6c7a9aeb8373e93
--- /dev/null
+++ b/src/tpqu04/exo2.java
@@ -0,0 +1,28 @@
+package tpqu04;
+
+import tpqu04.exo2;
+
+public class exo2 {
+    public static int[] tab = {17, 12, 15, 38, 29, 157, 89, -22, 0, 5}; 
+
+    public static int division(int index, int divisor) throws ArithmeticException { // se manifeste lors d’une division par zéro 
+        return tab[index]/divisor;
+    }
+
+
+public static void statement() { // demande la lecture d’un entier et qu’autre chose qu’un entier est lu.
+    try {
+         int x, y;
+        x = LocalKeyboard.readInt("Write the index of the integer to divide: ");
+        y = LocalKeyboard.readInt("Write the divisor: ");
+        System.out.println("The result is: " + division(x,y));
+    } catch (ArithmeticException e) {}
+        finally {
+            System.out.println("Gros bêta");
+        }
+
+    }
+    
+   
+    } 
+
diff --git a/src/tpqu04/testException.java b/src/tpqu04/testException.java
new file mode 100644
index 0000000000000000000000000000000000000000..72023a9d0fdebaf2ea892b08e44d742f997befca
--- /dev/null
+++ b/src/tpqu04/testException.java
@@ -0,0 +1,12 @@
+package tpqu04;
+
+public class testException {
+
+    public void example1() {
+        doIt();
+    }
+
+    public int doIt() throws Exception {
+        throw new Exception();
+    }
+}