-               switch (USB_HostState)
-               {
-                       case HOST_STATE_Addressed:
-                               LEDs_SetAllLEDs(LEDMASK_USB_ENUMERATING);
-                       
-                               uint16_t ConfigDescriptorSize;
-                               uint8_t  ConfigDescriptorData[512];
-
-                               if (USB_Host_GetDeviceConfigDescriptor(1, &ConfigDescriptorSize, ConfigDescriptorData,
-                                                                      sizeof(ConfigDescriptorData)) != HOST_GETCONFIG_Successful)
-                               {
-                                       puts_P(PSTR("Error Retrieving Configuration Descriptor.\r\n"));
-                                       LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
-                                       USB_HostState = HOST_STATE_WaitForDeviceRemoval;
-                                       break;
-                               }
-
-                               if (CDC_Host_ConfigurePipes(&VirtualSerial_CDC_Interface,
-                                                           ConfigDescriptorSize, ConfigDescriptorData) != CDC_ENUMERROR_NoError)
-                               {
-                                       puts_P(PSTR("Attached Device Not a Valid CDC Class Device.\r\n"));
-                                       LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
-                                       USB_HostState = HOST_STATE_WaitForDeviceRemoval;
-                                       break;
-                               }
-                               
-                               if (USB_Host_SetDeviceConfiguration(1) != HOST_SENDCONTROL_Successful)
-                               {
-                                       puts_P(PSTR("Error Setting Device Configuration.\r\n"));
-                                       LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
-                                       USB_HostState = HOST_STATE_WaitForDeviceRemoval;
-                                       break;
-                               }
-                               
-                               puts_P(PSTR("CDC Device Enumerated.\r\n"));
-                               LEDs_SetAllLEDs(LEDMASK_USB_READY);
-                               USB_HostState = HOST_STATE_Configured;
-                               break;
-                       case HOST_STATE_Configured:
-                               if (CDC_Host_BytesReceived(&VirtualSerial_CDC_Interface))
-                               {
-                                       /* Echo received bytes from the attached device through the USART */
-                                       while (CDC_Host_BytesReceived(&VirtualSerial_CDC_Interface))
-                                         putchar(CDC_Host_ReceiveByte(&VirtualSerial_CDC_Interface));
-                                         
-                                       CDC_Host_Flush(&VirtualSerial_CDC_Interface);  
-                               }
-                       
-                               break;
-               }
-