finish to refactore printing + restart brainstorming on threading