revised code.