add Problem.read