Add assign2 codes