refactor usb