diff --git a/src/main/java/matrix/Matrix.java b/src/main/java/matrix/Matrix.java
index f2c908e63e1e44a2552bbf98a946fba6ba6bee6b..ca9b25270a3075fda9ccfddc4d9bbf67cee16a9d 100644
--- a/src/main/java/matrix/Matrix.java
+++ b/src/main/java/matrix/Matrix.java
@@ -58,7 +58,8 @@ public interface Matrix<T> extends Iterable<T> {
   }
 
   default Matrix<T> subMatrix(Coordinate corner, int width, int height){
-    return null ;
+
+    return new ListMatrix<>(width, height, new SubMatrixInitializer(this, corner));
   }