diff --git a/include/libdraw.h b/include/libdraw.h
index c25f14e5ec5c8fd233e48d4d0ea612edf68d74bf..34253813ac5f93011ed8a18c8856fa2667bf7344 100644
--- a/include/libdraw.h
+++ b/include/libdraw.h
@@ -27,10 +27,9 @@ BEGIN_C_DECLS
  */
 
 void libhqr_writeheader(FILE *tree);
-void libhqr_writecss();
 void libhqr_writeend(FILE *tree);
-void libhqr_drawTT(int x, int y, int w, int h, FILE *tree);
-void libhqr_drawTS(int x, int y, int w, int h, FILE *tree);
+void libhqr_drawTT(int x, int y, int w, int h, int k, FILE *tree);
+void libhqr_drawTS(int x, int y, int w, int h, int k, FILE *tree);
 void libhqr_drawline(int x1, int y1, int x2, int y2, FILE *tree);
 
 END_C_DECLS
diff --git a/src/treedraw.c b/src/treedraw.c
index 63362ef46c2c458fc3d8e5f6a0c3e3a05503d6b5..2fd52ff22112b0c2c6edc7739a8844c8a63e68c9 100644
--- a/src/treedraw.c
+++ b/src/treedraw.c
@@ -28,14 +28,42 @@ void libhqr_writeheader(FILE *tree){
     if(fprintf(tree, "<svg width=\"2000\" height=\"2000\" version=\"1.1\" \n xmlns=\"http://www.w3.org/2000/svg\">\n") <0) return;
 }
 
-void libhqr_writecss();
-
-void libhqr_drawTT(int x, int y, int w, int h, FILE *tree){
-    if(fprintf(tree,"<rect x=\"%d\" y=\"%d\" width=\"%d\" height=\"%d\" fill=\"red\" /> \n", x, y, w, h) < 0 ) return;
+void libhqr_drawTT(int x, int y, int w, int h, int k, FILE *tree){
+    switch (k % 4){
+    case 0 :
+        if(fprintf(tree,"<rect x=\"%d\" y=\"%d\" width=\"%d\" height=\"%d\" fill=\"red\" /> \n", x, y, w, h) < 0 ) return;
+        break;
+    case 1 :
+        if(fprintf(tree,"<rect x=\"%d\" y=\"%d\" width=\"%d\" height=\"%d\" fill=\"blue\" /> \n", x, y, w, h) < 0 ) return;
+        break;
+    case 2 :
+        if(fprintf(tree,"<rect x=\"%d\" y=\"%d\" width=\"%d\" height=\"%d\" fill=\"green\" /> \n", x, y, w, h) < 0 ) return;
+        break;
+    case 3 :
+        if(fprintf(tree,"<rect x=\"%d\" y=\"%d\" width=\"%d\" height=\"%d\" fill=\"black\" /> \n", x, y, w, h) < 0 ) return;
+        break;
+    default:
+        return;
+    }
 }
 
-void libhqr_drawTS(int x, int y, int w, int h, FILE *tree){
-    if(fprintf(tree,"<rect x=\"%d\" y=\"%d\" width=\"%d\" height=\"%d\" fill =\"red\" /> \n", x, y, w, h) < 0 ) return;
+void libhqr_drawTS(int x, int y, int w, int h, int k, FILE *tree){
+    switch (k % 4){
+    case 0 :
+        if(fprintf(tree,"<rect x=\"%d\" y=\"%d\" width=\"%d\" height=\"%d\" fill=\"red\" /> \n", x, y, w, h) < 0 ) return;
+        break;
+    case 1 :
+        if(fprintf(tree,"<rect x=\"%d\" y=\"%d\" width=\"%d\" height=\"%d\" fill=\"blue\" /> \n", x, y, w, h) < 0 ) return;
+        break;
+    case 2 :
+        if(fprintf(tree,"<rect x=\"%d\" y=\"%d\" width=\"%d\" height=\"%d\" fill=\"green\" /> \n", x, y, w, h) < 0 ) return;
+        break;
+    case 3 :
+        if(fprintf(tree,"<rect x=\"%d\" y=\"%d\" width=\"%d\" height=\"%d\" fill=\"black\" /> \n", x, y, w, h) < 0 ) return;
+        break;
+    default:
+        return;
+    }
     int x2 = x + (w / 4);
     int y2 = y + (h / 4);
     int w2 = (w / 2);
@@ -44,7 +72,7 @@ void libhqr_drawTS(int x, int y, int w, int h, FILE *tree){
 }
 
 void libhqr_drawline(int x1, int y1, int x2, int y2, FILE *tree){
-    if(fprintf(tree,"<line x1=\"%d\" y1=\"%d\" x2=\"%d\" y2=\"%d\" /> \n", x1, y1, x2, y2) < 0 ) return;
+    if(fprintf(tree,"<line x1=\"%d\" y1=\"%d\" x2=\"%d\" y2=\"%d\" style=\"fill:none;stroke:black;stroke-width:2px;\"/> \n", x1, y1, x2, y2) < 0 ) return;
 }
 
 void libhqr_writeend(FILE *tree){
diff --git a/testings/testing_treedraw.c b/testings/testing_treedraw.c
index f3cff63243ed277b8a49f840473205a3ed247c1f..f2fdd7b8e48e28f43d85061991f5510ecf40f5bf 100644
--- a/testings/testing_treedraw.c
+++ b/testings/testing_treedraw.c
@@ -19,20 +19,21 @@
 #include <string.h>
 #include "libdraw.h"
 
+#define WIDTH  50
+#define HEIGHT 50
+
 int
 main(int argc, char ** argv)
 {
   FILE *tree = fopen("tree.svg","w+");
-  int x,y,w,h,i,j;
-  w = 50;
-  h = 50;
+  int x,y,i,j;
   libhqr_writeheader(tree);
+  libhqr_drawline(125,100,125,800,tree);
   for (i = 1; i < 5; i++){
       for (j = 1; j < 9; j++){
           x = 100*i;
           y = 100*j;
-          libhqr_drawline(x,y,w,h,tree);
-          libhqr_drawTS(x,y,w,h,tree);
+          libhqr_drawTS(x,y,WIDTH,HEIGHT,1,tree);
       }
   }
   libhqr_writeend(tree);