/***************************************************************************
   AUTOMATICALLY GENERATED by USBDescriptorKitchen (0.3)
   When editing, make sure you keep the indentation right
   and use an editor that doesn't mess around with the linefeeds.

   See http://github.com/zonque/USBDescriptorKitchen/
   for more information about the tool that was used to generate this file.
 ***************************************************************************/
static const char Device_1[] = {
  /* Device*/
  0x12,                       /* bLength (Size of this descriptor in bytes) */
  0x01,                       /* bDescriptorType (DEVICE Descriptor Type) */
  0x00, 0x02,                 /* bcdUSB (USB Specification Release Number in Binary-Coded Decimal) ("2.0") (512) */
  0x00,                       /* bDeviceClass (Class code (assigned by the USB-IF).) ("Defined at interface level") */
  0x00,                       /* bDeviceSubClass (Subclass code (assigned by the USB-IF).) */
  0x00,                       /* bDeviceProtocol (Protocol code (assigned by the USB-IF).) */
  0x40,                       /* bMaxPacketSize0 (Maximum packet size for endpoint zero) ("64") */
  0x50, 0x1d,                 /* idVendor (Vendor ID (assigned by the USB-IF)) (7504) */
  0xe1, 0xe1,                 /* idProduct (Product ID (assigned by the manufacturer)) (57825) */
  0x00, 0x01,                 /* bcdDevice (Device release number in binary-coded decimal) (256) */
  0x01,                       /* iManufacturer */
  0x02,                       /* iProduct */
  0x03,                       /* iSerialNumber */
  0x01,                       /* bNumConfigurations (Number of possible configurations) */
};

static const char Configuration_1[] = {
  /* Configuration*/
  0x09,                       /* bLength (Size of this descriptor in bytes) */
  0x02,                       /* bDescriptorType (CONFIGURATION Descriptor Type) */
  0x27, 0x00,                 /* wTotalLength (Total length of data returned for this configuration) (39) */
  0x01,                       /* bNumInterfaces (Number of interfaces supported by this configuration) */
  0x01,                       /* bConfigurationValue (Value to use as an argument to the SetConfiguration() request to select this configuration) */
  0x04,                       /* iConfiguration (Index of string descriptor describing this configuration) */
  0x80,                       /* bmAttributes (Configuration characteristics) ('Remote Wakeup' = 0, 'Self-powered' = 0, 'Reserved (set to one)' = 1) */
  0x32,                       /* bMaxPower (Maximum power consumption of the USB, device. Expressed in 2 mA units) */
    /* Interface*/
    0x09,                     /* bLength (Size of this descriptor in bytes) */
    0x04,                     /* bDescriptorType (INTERFACE Descriptor Type) */
    0x00,                     /* bInterfaceNumber (Number of this interface. Zero-based value.) */
    0x00,                     /* bAlternateSetting (Value used to select this alternate setting) */
    0x03,                     /* bNumEndpoints (Number of endpoints used by this interface) */
    0xff,                     /* bInterfaceClass (Class code (assigned by the USB-IF).) ("Vendor specific") */
    0x00,                     /* bInterfaceSubClass (Subclass code (assigned by the USB-IF).) ("0") */
    0x00,                     /* bInterfaceProtocol (Protocol code (assigned by the USB).) */
    0x02,                     /* iInterface (Index of string descriptor describing this interface) */
      /* Endpoint*/
      0x07,                   /* bLength (Size of this descriptor in bytes) */
      0x05,                   /* bDescriptorType (ENDPOINT descriptor) */
      0x01,                   /* bEndpointAddress ('Endpoint Number' = 1, 'Direction' = 0) */
      0x05,                   /* bEndpointAttributes ('Transfer Type' = 1, 'Synchronization Type' = 1, 'Usage Type' = 0) */
      0xb0, 0x01,             /* wMaxPacketSize (Maximum packet size this endpoint is capable of sending or receiving when this configuration is selected.) (432) */
      0x01,                   /* bInterval (Interval for polling endpoint for data transfers. Expressed in frames or microframes depending on the device operating speed (i.e., either 1 millisecond or 125 us units)) */
      /* Endpoint*/
      0x07,                   /* bLength (Size of this descriptor in bytes) */
      0x05,                   /* bDescriptorType (ENDPOINT descriptor) */
      0x81,                   /* bEndpointAddress ('Endpoint Number' = 1, 'Direction' = 1) */
      0x11,                   /* bEndpointAttributes ('Transfer Type' = 1, 'Synchronization Type' = 0, 'Usage Type' = 1) */
      0x08, 0x00,             /* wMaxPacketSize (Maximum packet size this endpoint is capable of sending or receiving when this configuration is selected.) (8) */
      0x03,                   /* bInterval (Interval for polling endpoint for data transfers. Expressed in frames or microframes depending on the device operating speed (i.e., either 1 millisecond or 125 us units)) */
      /* Endpoint*/
      0x07,                   /* bLength (Size of this descriptor in bytes) */
      0x05,                   /* bDescriptorType (ENDPOINT descriptor) */
      0x82,                   /* bEndpointAddress ('Endpoint Number' = 2, 'Direction' = 1) */
      0x05,                   /* bEndpointAttributes ('Transfer Type' = 1, 'Synchronization Type' = 1, 'Usage Type' = 0) */
      0xb0, 0x01,             /* wMaxPacketSize (Maximum packet size this endpoint is capable of sending or receiving when this configuration is selected.) (432) */
      0x01,                   /* bInterval (Interval for polling endpoint for data transfers. Expressed in frames or microframes depending on the device operating speed (i.e., either 1 millisecond or 125 us units)) */
};

static const char StringZero_1[] = {
  /* StringZero*/
  0x04,                       /* bLength (Size of this descriptor in bytes) */
  0x03,                       /* bDescriptorType (STRING Descriptor Type) */
  0x09, 0x04,                 /* wLANGID(0) ("English (United States)") (1033) */
};

static const char String_1[] = {
  /* String*/
  0x10,                       /* bLength (Size of this descriptor in bytes) */
  0x03,                       /* bDescriptorType (STRING Descriptor Type) */
  0x6f, 0x00, 0x73, 0x00, 0x6d, 0x00, 0x6f, 0x00, 0x63, 0x00, 0x6f, 0x00, 0x6d, 0x00, /* bString (0) */
};

static const char String_2[] = {
  /* String*/
  0x22,                       /* bLength (Size of this descriptor in bytes) */
  0x03,                       /* bDescriptorType (STRING Descriptor Type) */
  0x55, 0x00, 0x53, 0x00, 0x42, 0x00, 0x20, 0x00, 0x45, 0x00, 0x31, 0x00, 0x20, 0x00, 0x69, 0x00, 
  0x6e, 0x00, 0x74, 0x00, 0x65, 0x00, 0x72, 0x00, 0x66, 0x00, 0x61, 0x00, 0x63, 0x00, 0x65, 0x00, 
   /* bString (0) */
};

static const char String_3[] = {
  /* String*/
  0x12,                       /* bLength (Size of this descriptor in bytes) */
  0x03,                       /* bDescriptorType (STRING Descriptor Type) */
  0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 
   /* bString (0) */
};

static const char String_4[] = {
  /* String*/
  0x0a,                       /* bLength (Size of this descriptor in bytes) */
  0x03,                       /* bDescriptorType (STRING Descriptor Type) */
  0x4d, 0x00, 0x61, 0x00, 0x69, 0x00, 0x6e, 0x00, /* bString ("Main") (0) */
};

static const char *Devices[] = {
	Device_1,
};

static const char *Configurations[] = {
	Configuration_1,
};

static const char *Strings[] = {
	String_1,
	String_2,
	String_3,
	String_4,
};

static const char *StringZeros[] = {
	StringZero_1,
};