Various modify and fix.