the aim of this project is to keep the file as small as possible