modify some codes for review