divide program into different parts