included explanation of coding process