Add comments and modify zip function