diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..f98d1d20d53682a9e4b1f20b89abfb6df7037fdb
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+obj/
+sol
+
diff --git a/Makefile b/Makefile
index c00706d456cba10eece80d1d22dc411300525f24..7ebfdf9b7bf3abdb0d9d1c1ba8402c67c63b7def 100644
--- a/Makefile
+++ b/Makefile
@@ -12,7 +12,7 @@ ifeq ($(PACE),yes)
    PACE_FLAG= -DPACE_2020
 endif
 
-src=.
+src=./src
 
 all: daia
 
diff --git a/daia b/daia
new file mode 100755
index 0000000000000000000000000000000000000000..881b05bb6352dc9162c4d753bd88818b02dc03c1
Binary files /dev/null and b/daia differ
diff --git a/components.c b/src/components.c
similarity index 100%
rename from components.c
rename to src/components.c
diff --git a/components.h b/src/components.h
similarity index 100%
rename from components.h
rename to src/components.h
diff --git a/decompose.c b/src/decompose.c
similarity index 100%
rename from decompose.c
rename to src/decompose.c
diff --git a/decompose.h b/src/decompose.h
similarity index 100%
rename from decompose.h
rename to src/decompose.h
diff --git a/graph.c b/src/graph.c
similarity index 100%
rename from graph.c
rename to src/graph.c
diff --git a/graph.h b/src/graph.h
similarity index 100%
rename from graph.h
rename to src/graph.h
diff --git a/heap.c b/src/heap.c
similarity index 100%
rename from heap.c
rename to src/heap.c
diff --git a/heap.h b/src/heap.h
similarity index 100%
rename from heap.h
rename to src/heap.h
diff --git a/improve.c b/src/improve.c
similarity index 100%
rename from improve.c
rename to src/improve.c
diff --git a/improve.h b/src/improve.h
similarity index 100%
rename from improve.h
rename to src/improve.h
diff --git a/lire.c b/src/lire.c
similarity index 100%
rename from lire.c
rename to src/lire.c
diff --git a/lire.h b/src/lire.h
similarity index 100%
rename from lire.h
rename to src/lire.h
diff --git a/lists.c b/src/lists.c
similarity index 100%
rename from lists.c
rename to src/lists.c
diff --git a/lists.h b/src/lists.h
similarity index 100%
rename from lists.h
rename to src/lists.h
diff --git a/main.c b/src/main.c
similarity index 100%
rename from main.c
rename to src/main.c
diff --git a/main.h b/src/main.h
similarity index 100%
rename from main.h
rename to src/main.h
diff --git a/separator.c b/src/separator.c
similarity index 100%
rename from separator.c
rename to src/separator.c
diff --git a/separator.h b/src/separator.h
similarity index 100%
rename from separator.h
rename to src/separator.h
diff --git a/sets.c b/src/sets.c
similarity index 100%
rename from sets.c
rename to src/sets.c
diff --git a/sets.h b/src/sets.h
similarity index 100%
rename from sets.h
rename to src/sets.h
diff --git a/tree.c b/src/tree.c
similarity index 100%
rename from tree.c
rename to src/tree.c
diff --git a/tree.h b/src/tree.h
similarity index 100%
rename from tree.h
rename to src/tree.h
diff --git a/utils.c b/src/utils.c
similarity index 100%
rename from utils.c
rename to src/utils.c
diff --git a/utils.h b/src/utils.h
similarity index 100%
rename from utils.h
rename to src/utils.h