Refactoring ... not done yet.