Some changes about refactor