- second try of tidying up