divided the code