use template methods for printDeviceInformation