refactoring DataTable