tidy up codes