another descriptor refactoring