First version withour bugs