diff --git a/kata.md b/kata.md
new file mode 100644
index 0000000000000000000000000000000000000000..a424323945c7eea1040049fdf06fd24a8c61ed3a
--- /dev/null
+++ b/kata.md
@@ -0,0 +1,46 @@
+Au programme aujourd'hui, il ne s'agira pas tellement de cercle mais plutôt de sinus: ceux des equations de
+[Lotka-Volterra](https://en.wikipedia.org/wiki/Lotka%E2%80%93Volterra_equations).
+
+```
+Kezako ?
+```
+
+En résumé, il s'agit d'une modélisation mathématique de la relation qui existe entre l'évolution d'une population de
+proie et l'évolution de la population de ses prédateurs.
+
+![lotka-volterra](https://upload.wikimedia.org/wikipedia/commons/7/70/Lotka_Volterra_Dynamique.gif "Lotka Volterra")
+
+En 4 phrases:
+
+* lorsque les proies sont peu nombreuses, le manque de nourriture entraine la diminution de la population de prédateurs
+* lorsque les prédateurs sont peu nombreux, la diminution du danger entraine l'augmentation de la population de proies
+* lorsque les proies sont nombreuses, l'abondance de nourriture entraine l'augmentation de la population de prédateurs
+* lorsque les prédateurs sont nombreux, l'augmentation du danger entraine la diminituion de la population de proies.
+
+```
+D'accord, mais moi je code quoi ?
+```
+
+Rien de moins qu'un écosystème virtuel. Une simulation mettant en jeu une population de proie, une population de
+prédateurs, une relation de prédation et une relation de reproduction, dont la complexité se limitera à ton imagination.
+
+Par exemple, une relation de prédation simple:
+
+* dans `x` % des cas, la prédation est réussie: le prédateur survit et la proie meurt
+* dans `(100 - x)` % des cas, la prédation échoue: le prédateur meurt et la proie survit.
+
+Bien sûr, cette version ultra-simplifiée est très peu représentative de la réalité. Tu peux par exemple décider
+d'ajouter une notion de distance entre les entités, un système de *points de vie* pour que les prédateurs ne meurent pas
+au premier échec, ... Cet exercice est volontairement libre pour que ton imagination puisse s'exprimer.
+
+```
+Et le rapport avec Lotka-Volterra ?
+```
+
+Si ta simulation est stable, alors elle ne devrait aboutir ni à l'extinction, ni à la prolifération (croissance infinie
+qui ne peut correspondre à la réalité) de l'une ou l'autre des deux (ou plus ;) ) espèces. En traçant la courbe de
+l'évolution des populations, tu devrais donc retrouver des formes familières.
+
+Voici un [petit exemple](https://gitlab.takima.io/dlesignac/lotka-volterra) en Java de simulation pas encore stabilisée.
+
+Pas facile... De quoi faire réfléchir sur la complexité et la fragilité de notre écosystème.
diff --git a/src/main/java/fr/takima/lotka_volterra/common/measure/Angle.java b/src/main/java/fr/takima/lotka_volterra/common/Angle.java
similarity index 87%
rename from src/main/java/fr/takima/lotka_volterra/common/measure/Angle.java
rename to src/main/java/fr/takima/lotka_volterra/common/Angle.java
index 78e16b2a1cdb58f0c2d39e379355b3adb3d63a60..785d0201fa83826005d82f531e4e80aba35a94cd 100644
--- a/src/main/java/fr/takima/lotka_volterra/common/measure/Angle.java
+++ b/src/main/java/fr/takima/lotka_volterra/common/Angle.java
@@ -1,4 +1,4 @@
-package fr.takima.lotka_volterra.common.measure;
+package fr.takima.lotka_volterra.common;
 
 import fr.takima.lotka_volterra.common.value.PositiveInt;
 import fr.takima.lotka_volterra.validator.LowerThanValidator;
diff --git a/src/main/java/fr/takima/lotka_volterra/common/measure/Distance.java b/src/main/java/fr/takima/lotka_volterra/common/Distance.java
similarity index 91%
rename from src/main/java/fr/takima/lotka_volterra/common/measure/Distance.java
rename to src/main/java/fr/takima/lotka_volterra/common/Distance.java
index 11da308da3973e4b453feb296fe79bc201f7cdb5..08fd030c3877d355675180cd69bc9594e7738075 100644
--- a/src/main/java/fr/takima/lotka_volterra/common/measure/Distance.java
+++ b/src/main/java/fr/takima/lotka_volterra/common/Distance.java
@@ -1,4 +1,4 @@
-package fr.takima.lotka_volterra.common.measure;
+package fr.takima.lotka_volterra.common;
 
 import fr.takima.lotka_volterra.common.value.BigDecimalValue;
 import fr.takima.lotka_volterra.validator.GreaterThanValidator;
diff --git a/src/main/java/fr/takima/lotka_volterra/common/measure/Probability.java b/src/main/java/fr/takima/lotka_volterra/common/Probability.java
similarity index 92%
rename from src/main/java/fr/takima/lotka_volterra/common/measure/Probability.java
rename to src/main/java/fr/takima/lotka_volterra/common/Probability.java
index 21b745873c53e8ab65c56d63d7efe93808e15251..4b7ba4af6e9d0d373e26b5d98952f2b24248aebb 100644
--- a/src/main/java/fr/takima/lotka_volterra/common/measure/Probability.java
+++ b/src/main/java/fr/takima/lotka_volterra/common/Probability.java
@@ -1,4 +1,4 @@
-package fr.takima.lotka_volterra.common.measure;
+package fr.takima.lotka_volterra.common;
 
 import fr.takima.lotka_volterra.common.value.BigDecimalValue;
 import fr.takima.lotka_volterra.validator.GreaterThanValidator;
diff --git a/src/main/java/fr/takima/lotka_volterra/common/measure/Vector.java b/src/main/java/fr/takima/lotka_volterra/common/Vector.java
similarity index 96%
rename from src/main/java/fr/takima/lotka_volterra/common/measure/Vector.java
rename to src/main/java/fr/takima/lotka_volterra/common/Vector.java
index 614a577d7a8c1c2cdf90ab534297b13d41f76ed9..00b209c94d1f4212e2b47bdd7be72b306103ccf4 100644
--- a/src/main/java/fr/takima/lotka_volterra/common/measure/Vector.java
+++ b/src/main/java/fr/takima/lotka_volterra/common/Vector.java
@@ -1,4 +1,4 @@
-package fr.takima.lotka_volterra.common.measure;
+package fr.takima.lotka_volterra.common;
 
 import fr.takima.lotka_volterra.validator.NotNullValidator;
 
diff --git a/src/main/java/fr/takima/lotka_volterra/common/measure/VectorComponent.java b/src/main/java/fr/takima/lotka_volterra/common/VectorComponent.java
similarity index 80%
rename from src/main/java/fr/takima/lotka_volterra/common/measure/VectorComponent.java
rename to src/main/java/fr/takima/lotka_volterra/common/VectorComponent.java
index 30bdc3cc7a4b24ce1db00c5b3ca5e7e8d18a730b..71179bda74947cd4b5e69a77c790c8cab7d118c0 100644
--- a/src/main/java/fr/takima/lotka_volterra/common/measure/VectorComponent.java
+++ b/src/main/java/fr/takima/lotka_volterra/common/VectorComponent.java
@@ -1,4 +1,4 @@
-package fr.takima.lotka_volterra.common.measure;
+package fr.takima.lotka_volterra.common;
 
 import fr.takima.lotka_volterra.validator.NotNullValidator;
 
diff --git a/src/main/java/fr/takima/lotka_volterra/mating/DefaultPredatorMatingConfigurer.java b/src/main/java/fr/takima/lotka_volterra/mating/DefaultPredatorMatingConfigurer.java
index 7ec8b5c1a79abd4c222f3de16a3858620e8d2551..dbac6c64fe0205e318e77799d2e034f85a4a4e07 100644
--- a/src/main/java/fr/takima/lotka_volterra/mating/DefaultPredatorMatingConfigurer.java
+++ b/src/main/java/fr/takima/lotka_volterra/mating/DefaultPredatorMatingConfigurer.java
@@ -1,7 +1,7 @@
 package fr.takima.lotka_volterra.mating;
 
-import fr.takima.lotka_volterra.common.measure.Probability;
-import fr.takima.lotka_volterra.common.measure.Distance;
+import fr.takima.lotka_volterra.common.Probability;
+import fr.takima.lotka_volterra.common.Distance;
 import org.springframework.stereotype.Component;
 
 import java.math.BigDecimal;
diff --git a/src/main/java/fr/takima/lotka_volterra/mating/DefaultPreyMatingConfigurer.java b/src/main/java/fr/takima/lotka_volterra/mating/DefaultPreyMatingConfigurer.java
index b671d954d38d4a43e0466452888f9a229700485e..5fa22f855194380384ee0c78402003ad87f3b7c8 100644
--- a/src/main/java/fr/takima/lotka_volterra/mating/DefaultPreyMatingConfigurer.java
+++ b/src/main/java/fr/takima/lotka_volterra/mating/DefaultPreyMatingConfigurer.java
@@ -1,7 +1,7 @@
 package fr.takima.lotka_volterra.mating;
 
-import fr.takima.lotka_volterra.common.measure.Probability;
-import fr.takima.lotka_volterra.common.measure.Distance;
+import fr.takima.lotka_volterra.common.Probability;
+import fr.takima.lotka_volterra.common.Distance;
 import org.springframework.stereotype.Component;
 
 import java.math.BigDecimal;
diff --git a/src/main/java/fr/takima/lotka_volterra/mating/MatingConfigurer.java b/src/main/java/fr/takima/lotka_volterra/mating/MatingConfigurer.java
index aea75794a13173310904dbfdc379ed976a07311f..f5cb9ec7cfbe729f779e0a0ddac8cde03cd29d60 100644
--- a/src/main/java/fr/takima/lotka_volterra/mating/MatingConfigurer.java
+++ b/src/main/java/fr/takima/lotka_volterra/mating/MatingConfigurer.java
@@ -1,7 +1,7 @@
 package fr.takima.lotka_volterra.mating;
 
-import fr.takima.lotka_volterra.common.measure.Probability;
-import fr.takima.lotka_volterra.common.measure.Distance;
+import fr.takima.lotka_volterra.common.Probability;
+import fr.takima.lotka_volterra.common.Distance;
 
 import java.util.Random;
 
diff --git a/src/main/java/fr/takima/lotka_volterra/moving/DefaultPredatorMovingConfigurer.java b/src/main/java/fr/takima/lotka_volterra/moving/DefaultPredatorMovingConfigurer.java
index d291f0a1567296ab848a7d4f436606ae1ec90f8c..46827a3169009ac12b752a9a50dfbfd85c3098b4 100644
--- a/src/main/java/fr/takima/lotka_volterra/moving/DefaultPredatorMovingConfigurer.java
+++ b/src/main/java/fr/takima/lotka_volterra/moving/DefaultPredatorMovingConfigurer.java
@@ -1,6 +1,6 @@
 package fr.takima.lotka_volterra.moving;
 
-import fr.takima.lotka_volterra.common.measure.Distance;
+import fr.takima.lotka_volterra.common.Distance;
 import org.springframework.stereotype.Component;
 
 import java.util.Random;
diff --git a/src/main/java/fr/takima/lotka_volterra/moving/DefaultPreyMovingConfigurer.java b/src/main/java/fr/takima/lotka_volterra/moving/DefaultPreyMovingConfigurer.java
index 6c800b28915356b2bb815a6e1510382490410d7d..6730b98d44e4229d2c3f64c37d16eaa06fdc4d2e 100644
--- a/src/main/java/fr/takima/lotka_volterra/moving/DefaultPreyMovingConfigurer.java
+++ b/src/main/java/fr/takima/lotka_volterra/moving/DefaultPreyMovingConfigurer.java
@@ -1,6 +1,6 @@
 package fr.takima.lotka_volterra.moving;
 
-import fr.takima.lotka_volterra.common.measure.Distance;
+import fr.takima.lotka_volterra.common.Distance;
 import org.springframework.stereotype.Component;
 
 import java.util.Random;
diff --git a/src/main/java/fr/takima/lotka_volterra/moving/Moving.java b/src/main/java/fr/takima/lotka_volterra/moving/Moving.java
index 9971985f245ad221b16990b8f54ff3bfdf7a285c..08a55e490cd5412370478913f29ef63b6e2bc1bb 100644
--- a/src/main/java/fr/takima/lotka_volterra/moving/Moving.java
+++ b/src/main/java/fr/takima/lotka_volterra/moving/Moving.java
@@ -1,8 +1,8 @@
 package fr.takima.lotka_volterra.moving;
 
-import fr.takima.lotka_volterra.common.measure.Angle;
-import fr.takima.lotka_volterra.common.measure.Distance;
-import fr.takima.lotka_volterra.common.measure.Vector;
+import fr.takima.lotka_volterra.common.Angle;
+import fr.takima.lotka_volterra.common.Distance;
+import fr.takima.lotka_volterra.common.Vector;
 import fr.takima.lotka_volterra.validator.NotNullValidator;
 
 import java.util.HashSet;
diff --git a/src/main/java/fr/takima/lotka_volterra/moving/MovingConfigurer.java b/src/main/java/fr/takima/lotka_volterra/moving/MovingConfigurer.java
index da217e6ced9e31599e7580ee04770487a9804cf3..169d2016c119da2d0368ffce42dc7fde475a3f9a 100644
--- a/src/main/java/fr/takima/lotka_volterra/moving/MovingConfigurer.java
+++ b/src/main/java/fr/takima/lotka_volterra/moving/MovingConfigurer.java
@@ -1,6 +1,6 @@
 package fr.takima.lotka_volterra.moving;
 
-import fr.takima.lotka_volterra.common.measure.Distance;
+import fr.takima.lotka_volterra.common.Distance;
 
 import java.util.Random;
 
diff --git a/src/main/java/fr/takima/lotka_volterra/moving/MovingEntity.java b/src/main/java/fr/takima/lotka_volterra/moving/MovingEntity.java
index 2e0f4ddd4d94328d5f03a62bdb4d1d0724b654f8..8968c9804b96dbfd2cb292c2e2be08de577fdc76 100644
--- a/src/main/java/fr/takima/lotka_volterra/moving/MovingEntity.java
+++ b/src/main/java/fr/takima/lotka_volterra/moving/MovingEntity.java
@@ -1,6 +1,6 @@
 package fr.takima.lotka_volterra.moving;
 
-import fr.takima.lotka_volterra.common.measure.Distance;
+import fr.takima.lotka_volterra.common.Distance;
 
 public interface MovingEntity {
 
diff --git a/src/main/java/fr/takima/lotka_volterra/moving/Position.java b/src/main/java/fr/takima/lotka_volterra/moving/Position.java
index 00198ed821ff4deb73f8467f6349cb7d2727a714..cf8c69db6f6ea80a29eca2a8fae5ee3379edd66f 100644
--- a/src/main/java/fr/takima/lotka_volterra/moving/Position.java
+++ b/src/main/java/fr/takima/lotka_volterra/moving/Position.java
@@ -1,7 +1,7 @@
 package fr.takima.lotka_volterra.moving;
 
-import fr.takima.lotka_volterra.common.measure.Distance;
-import fr.takima.lotka_volterra.common.measure.Vector;
+import fr.takima.lotka_volterra.common.Distance;
+import fr.takima.lotka_volterra.common.Vector;
 import fr.takima.lotka_volterra.validator.NotNullValidator;
 
 import java.math.BigDecimal;
diff --git a/src/main/java/fr/takima/lotka_volterra/moving/PositionComponent.java b/src/main/java/fr/takima/lotka_volterra/moving/PositionComponent.java
index 722934e59b6d9d59f2f45d8e43cd427848bab840..2849e54daf9a895332f9bc5dde51207743f103a6 100644
--- a/src/main/java/fr/takima/lotka_volterra/moving/PositionComponent.java
+++ b/src/main/java/fr/takima/lotka_volterra/moving/PositionComponent.java
@@ -1,6 +1,6 @@
 package fr.takima.lotka_volterra.moving;
 
-import fr.takima.lotka_volterra.common.measure.VectorComponent;
+import fr.takima.lotka_volterra.common.VectorComponent;
 import fr.takima.lotka_volterra.common.value.IntValue;
 import fr.takima.lotka_volterra.validator.GreaterThanValidator;
 import fr.takima.lotka_volterra.validator.LowerThanValidator;
diff --git a/src/main/java/fr/takima/lotka_volterra/predation/DefaultPredationConfigurer.java b/src/main/java/fr/takima/lotka_volterra/predation/DefaultPredationConfigurer.java
index 07124e26f79bdfdeb1076c1345f92e32fcf700f1..f72bc80b53ab0de996fe8876adc0a5ea946d060e 100644
--- a/src/main/java/fr/takima/lotka_volterra/predation/DefaultPredationConfigurer.java
+++ b/src/main/java/fr/takima/lotka_volterra/predation/DefaultPredationConfigurer.java
@@ -1,7 +1,7 @@
 package fr.takima.lotka_volterra.predation;
 
-import fr.takima.lotka_volterra.common.measure.Probability;
-import fr.takima.lotka_volterra.common.measure.Distance;
+import fr.takima.lotka_volterra.common.Probability;
+import fr.takima.lotka_volterra.common.Distance;
 import fr.takima.lotka_volterra.predator.Satiety;
 import org.springframework.stereotype.Component;
 
diff --git a/src/main/java/fr/takima/lotka_volterra/predation/PredationConfigurer.java b/src/main/java/fr/takima/lotka_volterra/predation/PredationConfigurer.java
index 36f939bfbd4ed2fda1436890f812ed0720c75200..7c32142f9be6845dce614edced82524d2760b6a3 100644
--- a/src/main/java/fr/takima/lotka_volterra/predation/PredationConfigurer.java
+++ b/src/main/java/fr/takima/lotka_volterra/predation/PredationConfigurer.java
@@ -1,7 +1,7 @@
 package fr.takima.lotka_volterra.predation;
 
-import fr.takima.lotka_volterra.common.measure.Probability;
-import fr.takima.lotka_volterra.common.measure.Distance;
+import fr.takima.lotka_volterra.common.Probability;
+import fr.takima.lotka_volterra.common.Distance;
 import fr.takima.lotka_volterra.predator.Satiety;
 
 import java.util.Random;
diff --git a/src/test/java/fr/takima/lotka_volterra/moving/MovingEntityTest.java b/src/test/java/fr/takima/lotka_volterra/moving/MovingEntityTest.java
index 62cc56f0be5f51c38c4c005540e3fab473e2aec5..589105aa3054cd543a2e76bbb078158f35811338 100644
--- a/src/test/java/fr/takima/lotka_volterra/moving/MovingEntityTest.java
+++ b/src/test/java/fr/takima/lotka_volterra/moving/MovingEntityTest.java
@@ -1,7 +1,7 @@
 package fr.takima.lotka_volterra.moving;
 
 
-import fr.takima.lotka_volterra.common.measure.Distance;
+import fr.takima.lotka_volterra.common.Distance;
 import org.junit.jupiter.api.Nested;
 import org.junit.jupiter.api.Test;