#2 improved how_to_build