add pure and less