solution to P0107