code cleaning
recoded the whole thing. What an overhead....