tidy up. still passes