separating the code into new files