imporve by list comperhension