Contractor refactoring