refactoring HIDThing