[hal,wpilib] Add support for joystick outputs (#8385)

Support joystick outputs, including Rumble and LEDs.

Also requires an update to Joystick descriptors, as that has also
changed in mrccomm to support showing what outputs are supported.
This commit is contained in:
Thad House
2025-11-17 14:36:14 -08:00
committed by GitHub
parent 5db6d2f500
commit ce6fd225a6
54 changed files with 1607 additions and 854 deletions

View File

@@ -53,86 +53,136 @@ static const uint8_t file_descriptor[] {
0x0a,0x0d,0x43,0x75,0x72,0x72,0x65,0x6e,0x74,0x4f,
0x70,0x4d,0x6f,0x64,0x65,0x18,0x04,0x20,0x01,0x28,
0x06,0x52,0x0d,0x43,0x75,0x72,0x72,0x65,0x6e,0x74,
0x4f,0x70,0x4d,0x6f,0x64,0x65,0x22,0x80,0x02,0x0a,
0x4f,0x70,0x4d,0x6f,0x64,0x65,0x22,0xac,0x01,0x0a,
0x1a,0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,0x4a,
0x6f,0x79,0x73,0x74,0x69,0x63,0x6b,0x44,0x65,0x73,
0x63,0x72,0x69,0x70,0x74,0x6f,0x72,0x12,0x22,0x0a,
0x0c,0x4a,0x6f,0x79,0x73,0x74,0x69,0x63,0x6b,0x4e,
0x61,0x6d,0x65,0x18,0x01,0x20,0x01,0x28,0x09,0x52,
0x0c,0x4a,0x6f,0x79,0x73,0x74,0x69,0x63,0x6b,0x4e,
0x61,0x6d,0x65,0x12,0x1c,0x0a,0x09,0x41,0x78,0x69,
0x73,0x54,0x79,0x70,0x65,0x73,0x18,0x02,0x20,0x03,
0x28,0x05,0x52,0x09,0x41,0x78,0x69,0x73,0x54,0x79,
0x70,0x65,0x73,0x12,0x1c,0x0a,0x09,0x49,0x73,0x47,
0x61,0x6d,0x65,0x70,0x61,0x64,0x18,0x03,0x20,0x01,
0x61,0x6d,0x65,0x12,0x1c,0x0a,0x09,0x49,0x73,0x47,
0x61,0x6d,0x65,0x70,0x61,0x64,0x18,0x02,0x20,0x01,
0x28,0x08,0x52,0x09,0x49,0x73,0x47,0x61,0x6d,0x65,
0x70,0x61,0x64,0x12,0x22,0x0a,0x0c,0x4a,0x6f,0x79,
0x73,0x74,0x69,0x63,0x6b,0x54,0x79,0x70,0x65,0x18,
0x04,0x20,0x01,0x28,0x05,0x52,0x0c,0x4a,0x6f,0x79,
0x73,0x74,0x69,0x63,0x6b,0x54,0x79,0x70,0x65,0x12,
0x20,0x0a,0x0b,0x42,0x75,0x74,0x74,0x6f,0x6e,0x43,
0x6f,0x75,0x6e,0x74,0x18,0x05,0x20,0x01,0x28,0x05,
0x52,0x0b,0x42,0x75,0x74,0x74,0x6f,0x6e,0x43,0x6f,
0x75,0x6e,0x74,0x12,0x1a,0x0a,0x08,0x50,0x6f,0x76,
0x43,0x6f,0x75,0x6e,0x74,0x18,0x06,0x20,0x01,0x28,
0x05,0x52,0x08,0x50,0x6f,0x76,0x43,0x6f,0x75,0x6e,
0x74,0x12,0x20,0x0a,0x0b,0x52,0x75,0x6d,0x62,0x6c,
0x65,0x43,0x6f,0x75,0x6e,0x74,0x18,0x07,0x20,0x01,
0x28,0x05,0x52,0x0b,0x52,0x75,0x6d,0x62,0x6c,0x65,
0x43,0x6f,0x75,0x6e,0x74,0x22,0x32,0x0a,0x1a,0x50,
0x70,0x61,0x64,0x12,0x20,0x0a,0x0b,0x47,0x61,0x6d,
0x65,0x70,0x61,0x64,0x54,0x79,0x70,0x65,0x18,0x03,
0x20,0x01,0x28,0x0d,0x52,0x0b,0x47,0x61,0x6d,0x65,
0x70,0x61,0x64,0x54,0x79,0x70,0x65,0x12,0x2a,0x0a,
0x10,0x53,0x75,0x70,0x70,0x6f,0x72,0x74,0x65,0x64,
0x4f,0x75,0x74,0x70,0x75,0x74,0x73,0x18,0x04,0x20,
0x01,0x28,0x0d,0x52,0x10,0x53,0x75,0x70,0x70,0x6f,
0x72,0x74,0x65,0x64,0x4f,0x75,0x74,0x70,0x75,0x74,
0x73,0x22,0x66,0x0a,0x1b,0x50,0x72,0x6f,0x74,0x6f,
0x62,0x75,0x66,0x4a,0x6f,0x79,0x73,0x74,0x69,0x63,
0x6b,0x44,0x65,0x73,0x63,0x72,0x69,0x70,0x74,0x6f,
0x72,0x73,0x12,0x47,0x0a,0x0b,0x44,0x65,0x73,0x63,
0x72,0x69,0x70,0x74,0x6f,0x72,0x73,0x18,0x01,0x20,
0x03,0x28,0x0b,0x32,0x25,0x2e,0x6d,0x72,0x63,0x2e,
0x70,0x72,0x6f,0x74,0x6f,0x2e,0x50,0x72,0x6f,0x74,
0x6f,0x62,0x75,0x66,0x4a,0x6f,0x79,0x73,0x74,0x69,
0x63,0x6b,0x44,0x65,0x73,0x63,0x72,0x69,0x70,0x74,
0x6f,0x72,0x52,0x0b,0x44,0x65,0x73,0x63,0x72,0x69,
0x70,0x74,0x6f,0x72,0x73,0x22,0x6a,0x0a,0x16,0x50,
0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,0x4a,0x6f,0x79,
0x73,0x74,0x69,0x63,0x6b,0x52,0x75,0x6d,0x62,0x6c,
0x65,0x44,0x61,0x74,0x61,0x12,0x14,0x0a,0x05,0x56,
0x61,0x6c,0x75,0x65,0x18,0x03,0x20,0x03,0x28,0x0d,
0x52,0x05,0x56,0x61,0x6c,0x75,0x65,0x22,0x95,0x01,
0x0a,0x11,0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,
0x4d,0x61,0x74,0x63,0x68,0x49,0x6e,0x66,0x6f,0x12,
0x1c,0x0a,0x09,0x45,0x76,0x65,0x6e,0x74,0x4e,0x61,
0x6d,0x65,0x18,0x01,0x20,0x01,0x28,0x09,0x52,0x09,
0x45,0x76,0x65,0x6e,0x74,0x4e,0x61,0x6d,0x65,0x12,
0x20,0x0a,0x0b,0x4d,0x61,0x74,0x63,0x68,0x4e,0x75,
0x6d,0x62,0x65,0x72,0x18,0x02,0x20,0x01,0x28,0x05,
0x52,0x0b,0x4d,0x61,0x74,0x63,0x68,0x4e,0x75,0x6d,
0x62,0x65,0x72,0x12,0x22,0x0a,0x0c,0x52,0x65,0x70,
0x6c,0x61,0x79,0x4e,0x75,0x6d,0x62,0x65,0x72,0x18,
0x03,0x20,0x01,0x28,0x05,0x52,0x0c,0x52,0x65,0x70,
0x6c,0x61,0x79,0x4e,0x75,0x6d,0x62,0x65,0x72,0x12,
0x1c,0x0a,0x09,0x4d,0x61,0x74,0x63,0x68,0x54,0x79,
0x70,0x65,0x18,0x04,0x20,0x01,0x28,0x05,0x52,0x09,
0x4d,0x61,0x74,0x63,0x68,0x54,0x79,0x70,0x65,0x22,
0x9f,0x01,0x0a,0x11,0x50,0x72,0x6f,0x74,0x6f,0x62,
0x75,0x66,0x45,0x72,0x72,0x6f,0x72,0x49,0x6e,0x66,
0x6f,0x12,0x18,0x0a,0x07,0x49,0x73,0x45,0x72,0x72,
0x6f,0x72,0x18,0x01,0x20,0x01,0x28,0x08,0x52,0x07,
0x49,0x73,0x45,0x72,0x72,0x6f,0x72,0x12,0x1c,0x0a,
0x09,0x45,0x72,0x72,0x6f,0x72,0x43,0x6f,0x64,0x65,
0x18,0x02,0x20,0x01,0x28,0x11,0x52,0x09,0x45,0x72,
0x72,0x6f,0x72,0x43,0x6f,0x64,0x65,0x12,0x18,0x0a,
0x07,0x44,0x65,0x74,0x61,0x69,0x6c,0x73,0x18,0x03,
0x20,0x01,0x28,0x09,0x52,0x07,0x44,0x65,0x74,0x61,
0x69,0x6c,0x73,0x12,0x1a,0x0a,0x08,0x4c,0x6f,0x63,
0x61,0x74,0x69,0x6f,0x6e,0x18,0x04,0x20,0x01,0x28,
0x09,0x52,0x08,0x4c,0x6f,0x63,0x61,0x74,0x69,0x6f,
0x6e,0x12,0x1c,0x0a,0x09,0x43,0x61,0x6c,0x6c,0x53,
0x74,0x61,0x63,0x6b,0x18,0x05,0x20,0x01,0x28,0x09,
0x52,0x09,0x43,0x61,0x6c,0x6c,0x53,0x74,0x61,0x63,
0x6b,0x22,0x38,0x0a,0x0e,0x50,0x72,0x6f,0x74,0x6f,
0x62,0x75,0x66,0x4f,0x70,0x4d,0x6f,0x64,0x65,0x12,
0x12,0x0a,0x04,0x48,0x61,0x73,0x68,0x18,0x01,0x20,
0x01,0x28,0x06,0x52,0x04,0x48,0x61,0x73,0x68,0x12,
0x12,0x0a,0x04,0x4e,0x61,0x6d,0x65,0x18,0x02,0x20,
0x01,0x28,0x09,0x52,0x04,0x4e,0x61,0x6d,0x65,0x22,
0x4b,0x0a,0x18,0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,
0x66,0x41,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,
0x4f,0x70,0x4d,0x6f,0x64,0x65,0x73,0x12,0x2f,0x0a,
0x05,0x4d,0x6f,0x64,0x65,0x73,0x18,0x01,0x20,0x03,
0x28,0x0b,0x32,0x19,0x2e,0x6d,0x72,0x63,0x2e,0x70,
0x72,0x6f,0x74,0x6f,0x2e,0x50,0x72,0x6f,0x74,0x6f,
0x62,0x75,0x66,0x4f,0x70,0x4d,0x6f,0x64,0x65,0x52,
0x05,0x4d,0x6f,0x64,0x65,0x73,0x42,0x0f,0x0a,0x0d,
0x73,0x74,0x69,0x63,0x6b,0x4f,0x75,0x74,0x70,0x75,
0x74,0x12,0x12,0x0a,0x04,0x4c,0x45,0x44,0x73,0x18,
0x01,0x20,0x01,0x28,0x0d,0x52,0x04,0x4c,0x45,0x44,
0x73,0x12,0x16,0x0a,0x06,0x52,0x75,0x6d,0x62,0x6c,
0x65,0x18,0x02,0x20,0x01,0x28,0x0d,0x52,0x06,0x52,
0x75,0x6d,0x62,0x6c,0x65,0x12,0x24,0x0a,0x0d,0x54,
0x72,0x69,0x67,0x67,0x65,0x72,0x52,0x75,0x6d,0x62,
0x6c,0x65,0x18,0x03,0x20,0x01,0x28,0x0d,0x52,0x0d,
0x54,0x72,0x69,0x67,0x67,0x65,0x72,0x52,0x75,0x6d,
0x62,0x6c,0x65,0x22,0x56,0x0a,0x17,0x50,0x72,0x6f,
0x74,0x6f,0x62,0x75,0x66,0x4a,0x6f,0x79,0x73,0x74,
0x69,0x63,0x6b,0x4f,0x75,0x74,0x70,0x75,0x74,0x73,
0x12,0x3b,0x0a,0x07,0x4f,0x75,0x74,0x70,0x75,0x74,
0x73,0x18,0x01,0x20,0x03,0x28,0x0b,0x32,0x21,0x2e,
0x6d,0x72,0x63,0x2e,0x70,0x72,0x6f,0x74,0x6f,0x2e,
0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,0x4a,0x6f,
0x79,0x73,0x74,0x69,0x63,0x6b,0x4f,0x75,0x74,0x70,
0x75,0x74,0x52,0x07,0x4f,0x75,0x74,0x70,0x75,0x74,
0x73,0x22,0x95,0x01,0x0a,0x11,0x50,0x72,0x6f,0x74,
0x6f,0x62,0x75,0x66,0x4d,0x61,0x74,0x63,0x68,0x49,
0x6e,0x66,0x6f,0x12,0x1c,0x0a,0x09,0x45,0x76,0x65,
0x6e,0x74,0x4e,0x61,0x6d,0x65,0x18,0x01,0x20,0x01,
0x28,0x09,0x52,0x09,0x45,0x76,0x65,0x6e,0x74,0x4e,
0x61,0x6d,0x65,0x12,0x20,0x0a,0x0b,0x4d,0x61,0x74,
0x63,0x68,0x4e,0x75,0x6d,0x62,0x65,0x72,0x18,0x02,
0x20,0x01,0x28,0x05,0x52,0x0b,0x4d,0x61,0x74,0x63,
0x68,0x4e,0x75,0x6d,0x62,0x65,0x72,0x12,0x22,0x0a,
0x0c,0x52,0x65,0x70,0x6c,0x61,0x79,0x4e,0x75,0x6d,
0x62,0x65,0x72,0x18,0x03,0x20,0x01,0x28,0x05,0x52,
0x0c,0x52,0x65,0x70,0x6c,0x61,0x79,0x4e,0x75,0x6d,
0x62,0x65,0x72,0x12,0x1c,0x0a,0x09,0x4d,0x61,0x74,
0x63,0x68,0x54,0x79,0x70,0x65,0x18,0x04,0x20,0x01,
0x28,0x05,0x52,0x09,0x4d,0x61,0x74,0x63,0x68,0x54,
0x79,0x70,0x65,0x22,0x9f,0x01,0x0a,0x11,0x50,0x72,
0x6f,0x74,0x6f,0x62,0x75,0x66,0x45,0x72,0x72,0x6f,
0x72,0x49,0x6e,0x66,0x6f,0x12,0x18,0x0a,0x07,0x49,
0x73,0x45,0x72,0x72,0x6f,0x72,0x18,0x01,0x20,0x01,
0x28,0x08,0x52,0x07,0x49,0x73,0x45,0x72,0x72,0x6f,
0x72,0x12,0x1c,0x0a,0x09,0x45,0x72,0x72,0x6f,0x72,
0x43,0x6f,0x64,0x65,0x18,0x02,0x20,0x01,0x28,0x11,
0x52,0x09,0x45,0x72,0x72,0x6f,0x72,0x43,0x6f,0x64,
0x65,0x12,0x18,0x0a,0x07,0x44,0x65,0x74,0x61,0x69,
0x6c,0x73,0x18,0x03,0x20,0x01,0x28,0x09,0x52,0x07,
0x44,0x65,0x74,0x61,0x69,0x6c,0x73,0x12,0x1a,0x0a,
0x08,0x4c,0x6f,0x63,0x61,0x74,0x69,0x6f,0x6e,0x18,
0x04,0x20,0x01,0x28,0x09,0x52,0x08,0x4c,0x6f,0x63,
0x61,0x74,0x69,0x6f,0x6e,0x12,0x1c,0x0a,0x09,0x43,
0x61,0x6c,0x6c,0x53,0x74,0x61,0x63,0x6b,0x18,0x05,
0x20,0x01,0x28,0x09,0x52,0x09,0x43,0x61,0x6c,0x6c,
0x53,0x74,0x61,0x63,0x6b,0x22,0x38,0x0a,0x0e,0x50,
0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,0x4f,0x70,0x4d,
0x6f,0x64,0x65,0x12,0x12,0x0a,0x04,0x48,0x61,0x73,
0x68,0x18,0x01,0x20,0x01,0x28,0x06,0x52,0x04,0x48,
0x61,0x73,0x68,0x12,0x12,0x0a,0x04,0x4e,0x61,0x6d,
0x65,0x18,0x02,0x20,0x01,0x28,0x09,0x52,0x04,0x4e,
0x61,0x6d,0x65,0x22,0x4b,0x0a,0x18,0x50,0x72,0x6f,
0x74,0x6f,0x62,0x75,0x66,0x41,0x76,0x61,0x69,0x6c,
0x61,0x62,0x6c,0x65,0x4f,0x70,0x4d,0x6f,0x64,0x65,
0x73,0x12,0x2f,0x0a,0x05,0x4d,0x6f,0x64,0x65,0x73,
0x18,0x01,0x20,0x03,0x28,0x0b,0x32,0x19,0x2e,0x6d,
0x72,0x63,0x2e,0x70,0x72,0x6f,0x74,0x6f,0x2e,0x50,
0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,0x4f,0x70,0x4d,
0x6f,0x64,0x65,0x52,0x05,0x4d,0x6f,0x64,0x65,0x73,
0x22,0xc4,0x01,0x0a,0x1a,0x50,0x72,0x6f,0x74,0x6f,
0x62,0x75,0x66,0x45,0x72,0x72,0x6f,0x72,0x49,0x6e,
0x66,0x6f,0x54,0x69,0x6d,0x65,0x73,0x74,0x61,0x6d,
0x70,0x12,0x3a,0x0a,0x09,0x45,0x72,0x72,0x6f,0x72,
0x49,0x6e,0x66,0x6f,0x18,0x01,0x20,0x01,0x28,0x0b,
0x32,0x1c,0x2e,0x6d,0x72,0x63,0x2e,0x70,0x72,0x6f,
0x74,0x6f,0x2e,0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,
0x66,0x45,0x72,0x72,0x6f,0x72,0x49,0x6e,0x66,0x6f,
0x52,0x09,0x45,0x72,0x72,0x6f,0x72,0x49,0x6e,0x66,
0x6f,0x12,0x1c,0x0a,0x09,0x54,0x69,0x6d,0x65,0x73,
0x74,0x61,0x6d,0x70,0x18,0x02,0x20,0x01,0x28,0x04,
0x52,0x09,0x54,0x69,0x6d,0x65,0x73,0x74,0x61,0x6d,
0x70,0x12,0x26,0x0a,0x0e,0x53,0x65,0x71,0x75,0x65,
0x6e,0x63,0x65,0x4e,0x75,0x6d,0x62,0x65,0x72,0x18,
0x03,0x20,0x01,0x28,0x05,0x52,0x0e,0x53,0x65,0x71,
0x75,0x65,0x6e,0x63,0x65,0x4e,0x75,0x6d,0x62,0x65,
0x72,0x12,0x24,0x0a,0x0d,0x4e,0x75,0x6d,0x4f,0x63,
0x63,0x75,0x72,0x61,0x6e,0x63,0x65,0x73,0x18,0x04,
0x20,0x01,0x28,0x05,0x52,0x0d,0x4e,0x75,0x6d,0x4f,
0x63,0x63,0x75,0x72,0x61,0x6e,0x63,0x65,0x73,0x22,
0x86,0x01,0x0a,0x1c,0x50,0x72,0x6f,0x74,0x6f,0x62,
0x75,0x66,0x43,0x6f,0x6e,0x73,0x6f,0x6c,0x65,0x4c,
0x69,0x6e,0x65,0x54,0x69,0x6d,0x65,0x73,0x74,0x61,
0x6d,0x70,0x12,0x20,0x0a,0x0b,0x43,0x6f,0x6e,0x73,
0x6f,0x6c,0x65,0x4c,0x69,0x6e,0x65,0x18,0x01,0x20,
0x01,0x28,0x09,0x52,0x0b,0x43,0x6f,0x6e,0x73,0x6f,
0x6c,0x65,0x4c,0x69,0x6e,0x65,0x12,0x1c,0x0a,0x09,
0x54,0x69,0x6d,0x65,0x73,0x74,0x61,0x6d,0x70,0x18,
0x02,0x20,0x01,0x28,0x04,0x52,0x09,0x54,0x69,0x6d,
0x65,0x73,0x74,0x61,0x6d,0x70,0x12,0x26,0x0a,0x0e,
0x53,0x65,0x71,0x75,0x65,0x6e,0x63,0x65,0x4e,0x75,
0x6d,0x62,0x65,0x72,0x18,0x03,0x20,0x01,0x28,0x05,
0x52,0x0e,0x53,0x65,0x71,0x75,0x65,0x6e,0x63,0x65,
0x4e,0x75,0x6d,0x62,0x65,0x72,0x42,0x0f,0x0a,0x0d,
0x63,0x6f,0x6d,0x2e,0x6d,0x72,0x63,0x2e,0x70,0x72,
0x6f,0x74,0x6f,0x4a,0xdc,0x0f,0x0a,0x06,0x12,0x04,
0x00,0x00,0x3c,0x01,0x0a,0x08,0x0a,0x01,0x0c,0x12,
0x6f,0x74,0x6f,0x4a,0xb4,0x14,0x0a,0x06,0x12,0x04,
0x00,0x00,0x50,0x01,0x0a,0x08,0x0a,0x01,0x0c,0x12,
0x03,0x00,0x00,0x12,0x0a,0x08,0x0a,0x01,0x02,0x12,
0x03,0x02,0x00,0x12,0x0a,0x08,0x0a,0x01,0x08,0x12,
0x03,0x04,0x00,0x26,0x0a,0x09,0x0a,0x02,0x08,0x01,
@@ -205,7 +255,7 @@ static const uint8_t file_descriptor[] {
0x02,0x03,0x01,0x12,0x03,0x15,0x0c,0x19,0x0a,0x0c,
0x0a,0x05,0x04,0x01,0x02,0x03,0x03,0x12,0x03,0x15,
0x1c,0x1d,0x0a,0x0a,0x0a,0x02,0x04,0x02,0x12,0x04,
0x18,0x00,0x20,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x02,
0x18,0x00,0x1d,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x02,
0x01,0x12,0x03,0x18,0x08,0x22,0x0a,0x0b,0x0a,0x04,
0x04,0x02,0x02,0x00,0x12,0x03,0x19,0x04,0x1c,0x0a,
0x0c,0x0a,0x05,0x04,0x02,0x02,0x00,0x05,0x12,0x03,
@@ -213,126 +263,186 @@ static const uint8_t file_descriptor[] {
0x00,0x01,0x12,0x03,0x19,0x0b,0x17,0x0a,0x0c,0x0a,
0x05,0x04,0x02,0x02,0x00,0x03,0x12,0x03,0x19,0x1a,
0x1b,0x0a,0x0b,0x0a,0x04,0x04,0x02,0x02,0x01,0x12,
0x03,0x1a,0x04,0x21,0x0a,0x0c,0x0a,0x05,0x04,0x02,
0x02,0x01,0x04,0x12,0x03,0x1a,0x04,0x0c,0x0a,0x0c,
0x0a,0x05,0x04,0x02,0x02,0x01,0x05,0x12,0x03,0x1a,
0x0d,0x12,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x01,
0x01,0x12,0x03,0x1a,0x13,0x1c,0x0a,0x0c,0x0a,0x05,
0x04,0x02,0x02,0x01,0x03,0x12,0x03,0x1a,0x1f,0x20,
0x0a,0x0b,0x0a,0x04,0x04,0x02,0x02,0x02,0x12,0x03,
0x1b,0x04,0x17,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,
0x02,0x05,0x12,0x03,0x1b,0x04,0x08,0x0a,0x0c,0x0a,
0x05,0x04,0x02,0x02,0x02,0x01,0x12,0x03,0x1b,0x09,
0x12,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x02,0x03,
0x12,0x03,0x1b,0x15,0x16,0x0a,0x0b,0x0a,0x04,0x04,
0x02,0x02,0x03,0x12,0x03,0x1c,0x04,0x1b,0x0a,0x0c,
0x0a,0x05,0x04,0x02,0x02,0x03,0x05,0x12,0x03,0x1c,
0x04,0x09,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x03,
0x01,0x12,0x03,0x1c,0x0a,0x16,0x0a,0x0c,0x0a,0x05,
0x04,0x02,0x02,0x03,0x03,0x12,0x03,0x1c,0x19,0x1a,
0x0a,0x0b,0x0a,0x04,0x04,0x02,0x02,0x04,0x12,0x03,
0x1d,0x04,0x1a,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,
0x04,0x05,0x12,0x03,0x1d,0x04,0x09,0x0a,0x0c,0x0a,
0x05,0x04,0x02,0x02,0x04,0x01,0x12,0x03,0x1d,0x0a,
0x15,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x04,0x03,
0x12,0x03,0x1d,0x18,0x19,0x0a,0x0b,0x0a,0x04,0x04,
0x02,0x02,0x05,0x12,0x03,0x1e,0x04,0x17,0x0a,0x0c,
0x0a,0x05,0x04,0x02,0x02,0x05,0x05,0x12,0x03,0x1e,
0x04,0x09,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x05,
0x01,0x12,0x03,0x1e,0x0a,0x12,0x0a,0x0c,0x0a,0x05,
0x04,0x02,0x02,0x05,0x03,0x12,0x03,0x1e,0x15,0x16,
0x0a,0x0b,0x0a,0x04,0x04,0x02,0x02,0x06,0x12,0x03,
0x1f,0x04,0x1a,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,
0x06,0x05,0x12,0x03,0x1f,0x04,0x09,0x0a,0x0c,0x0a,
0x05,0x04,0x02,0x02,0x06,0x01,0x12,0x03,0x1f,0x0a,
0x15,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x06,0x03,
0x12,0x03,0x1f,0x18,0x19,0x0a,0x0a,0x0a,0x02,0x04,
0x03,0x12,0x04,0x22,0x00,0x24,0x01,0x0a,0x0a,0x0a,
0x03,0x04,0x03,0x01,0x12,0x03,0x22,0x08,0x22,0x0a,
0x0b,0x0a,0x04,0x04,0x03,0x02,0x00,0x12,0x03,0x23,
0x04,0x1e,0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,0x00,
0x04,0x12,0x03,0x23,0x04,0x0c,0x0a,0x0c,0x0a,0x05,
0x04,0x03,0x02,0x00,0x05,0x12,0x03,0x23,0x0d,0x13,
0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,0x00,0x01,0x12,
0x03,0x23,0x14,0x19,0x0a,0x0c,0x0a,0x05,0x04,0x03,
0x02,0x00,0x03,0x12,0x03,0x23,0x1c,0x1d,0x0a,0x0a,
0x0a,0x02,0x04,0x04,0x12,0x04,0x26,0x00,0x2b,0x01,
0x0a,0x0a,0x0a,0x03,0x04,0x04,0x01,0x12,0x03,0x26,
0x08,0x19,0x0a,0x0b,0x0a,0x04,0x04,0x04,0x02,0x00,
0x12,0x03,0x27,0x04,0x19,0x0a,0x0c,0x0a,0x05,0x04,
0x04,0x02,0x00,0x05,0x12,0x03,0x27,0x04,0x0a,0x0a,
0x0c,0x0a,0x05,0x04,0x04,0x02,0x00,0x01,0x12,0x03,
0x27,0x0b,0x14,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,
0x00,0x03,0x12,0x03,0x27,0x17,0x18,0x0a,0x0b,0x0a,
0x04,0x04,0x04,0x02,0x01,0x12,0x03,0x28,0x04,0x1a,
0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x01,0x05,0x12,
0x03,0x28,0x04,0x09,0x0a,0x0c,0x0a,0x05,0x04,0x04,
0x02,0x01,0x01,0x12,0x03,0x28,0x0a,0x15,0x0a,0x0c,
0x0a,0x05,0x04,0x04,0x02,0x01,0x03,0x12,0x03,0x28,
0x18,0x19,0x0a,0x0b,0x0a,0x04,0x04,0x04,0x02,0x02,
0x12,0x03,0x29,0x04,0x1b,0x0a,0x0c,0x0a,0x05,0x04,
0x04,0x02,0x02,0x05,0x12,0x03,0x29,0x04,0x09,0x0a,
0x0c,0x0a,0x05,0x04,0x04,0x02,0x02,0x01,0x12,0x03,
0x29,0x0a,0x16,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,
0x02,0x03,0x12,0x03,0x29,0x19,0x1a,0x0a,0x0b,0x0a,
0x04,0x04,0x04,0x02,0x03,0x12,0x03,0x2a,0x04,0x18,
0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x03,0x05,0x12,
0x03,0x2a,0x04,0x09,0x0a,0x0c,0x0a,0x05,0x04,0x04,
0x02,0x03,0x01,0x12,0x03,0x2a,0x0a,0x13,0x0a,0x0c,
0x0a,0x05,0x04,0x04,0x02,0x03,0x03,0x12,0x03,0x2a,
0x16,0x17,0x0a,0x0a,0x0a,0x02,0x04,0x05,0x12,0x04,
0x2d,0x00,0x33,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x05,
0x01,0x12,0x03,0x2d,0x08,0x19,0x0a,0x0b,0x0a,0x04,
0x04,0x05,0x02,0x00,0x12,0x03,0x2e,0x04,0x15,0x0a,
0x0c,0x0a,0x05,0x04,0x05,0x02,0x00,0x05,0x12,0x03,
0x2e,0x04,0x08,0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,
0x00,0x01,0x12,0x03,0x2e,0x09,0x10,0x0a,0x0c,0x0a,
0x05,0x04,0x05,0x02,0x00,0x03,0x12,0x03,0x2e,0x13,
0x14,0x0a,0x0b,0x0a,0x04,0x04,0x05,0x02,0x01,0x12,
0x03,0x2f,0x04,0x19,0x0a,0x0c,0x0a,0x05,0x04,0x05,
0x02,0x01,0x05,0x12,0x03,0x2f,0x04,0x0a,0x0a,0x0c,
0x0a,0x05,0x04,0x05,0x02,0x01,0x01,0x12,0x03,0x2f,
0x0b,0x14,0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,0x01,
0x03,0x12,0x03,0x2f,0x17,0x18,0x0a,0x0b,0x0a,0x04,
0x04,0x05,0x02,0x02,0x12,0x03,0x30,0x04,0x17,0x0a,
0x0c,0x0a,0x05,0x04,0x05,0x02,0x02,0x05,0x12,0x03,
0x30,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,
0x02,0x01,0x12,0x03,0x30,0x0b,0x12,0x0a,0x0c,0x0a,
0x05,0x04,0x05,0x02,0x02,0x03,0x12,0x03,0x30,0x15,
0x16,0x0a,0x0b,0x0a,0x04,0x04,0x05,0x02,0x03,0x12,
0x03,0x31,0x04,0x18,0x0a,0x0c,0x0a,0x05,0x04,0x05,
0x02,0x03,0x05,0x12,0x03,0x31,0x04,0x0a,0x0a,0x0c,
0x0a,0x05,0x04,0x05,0x02,0x03,0x01,0x12,0x03,0x31,
0x0b,0x13,0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,0x03,
0x03,0x12,0x03,0x31,0x16,0x17,0x0a,0x0b,0x0a,0x04,
0x04,0x05,0x02,0x04,0x12,0x03,0x32,0x04,0x19,0x0a,
0x0c,0x0a,0x05,0x04,0x05,0x02,0x04,0x05,0x12,0x03,
0x32,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,
0x04,0x01,0x12,0x03,0x32,0x0b,0x14,0x0a,0x0c,0x0a,
0x05,0x04,0x05,0x02,0x04,0x03,0x12,0x03,0x32,0x17,
0x18,0x0a,0x0a,0x0a,0x02,0x04,0x06,0x12,0x04,0x35,
0x00,0x38,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x06,0x01,
0x12,0x03,0x35,0x08,0x16,0x0a,0x0b,0x0a,0x04,0x04,
0x06,0x02,0x00,0x12,0x03,0x36,0x04,0x15,0x0a,0x0c,
0x0a,0x05,0x04,0x06,0x02,0x00,0x05,0x12,0x03,0x36,
0x04,0x0b,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x00,
0x01,0x12,0x03,0x36,0x0c,0x10,0x0a,0x0c,0x0a,0x05,
0x04,0x06,0x02,0x00,0x03,0x12,0x03,0x36,0x13,0x14,
0x0a,0x0b,0x0a,0x04,0x04,0x06,0x02,0x01,0x12,0x03,
0x37,0x04,0x14,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,
0x01,0x05,0x12,0x03,0x37,0x04,0x0a,0x0a,0x0c,0x0a,
0x05,0x04,0x06,0x02,0x01,0x01,0x12,0x03,0x37,0x0b,
0x0f,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x01,0x03,
0x12,0x03,0x37,0x12,0x13,0x0a,0x0a,0x0a,0x02,0x04,
0x07,0x12,0x04,0x3a,0x00,0x3c,0x01,0x0a,0x0a,0x0a,
0x03,0x04,0x07,0x01,0x12,0x03,0x3a,0x08,0x20,0x0a,
0x0b,0x0a,0x04,0x04,0x07,0x02,0x00,0x12,0x03,0x3b,
0x04,0x26,0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,0x00,
0x04,0x12,0x03,0x3b,0x04,0x0c,0x0a,0x0c,0x0a,0x05,
0x04,0x07,0x02,0x00,0x06,0x12,0x03,0x3b,0x0d,0x1b,
0x03,0x1a,0x04,0x17,0x0a,0x0c,0x0a,0x05,0x04,0x02,
0x02,0x01,0x05,0x12,0x03,0x1a,0x04,0x08,0x0a,0x0c,
0x0a,0x05,0x04,0x02,0x02,0x01,0x01,0x12,0x03,0x1a,
0x09,0x12,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x01,
0x03,0x12,0x03,0x1a,0x15,0x16,0x0a,0x0b,0x0a,0x04,
0x04,0x02,0x02,0x02,0x12,0x03,0x1b,0x04,0x1b,0x0a,
0x0c,0x0a,0x05,0x04,0x02,0x02,0x02,0x05,0x12,0x03,
0x1b,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,
0x02,0x01,0x12,0x03,0x1b,0x0b,0x16,0x0a,0x0c,0x0a,
0x05,0x04,0x02,0x02,0x02,0x03,0x12,0x03,0x1b,0x19,
0x1a,0x0a,0x0b,0x0a,0x04,0x04,0x02,0x02,0x03,0x12,
0x03,0x1c,0x04,0x20,0x0a,0x0c,0x0a,0x05,0x04,0x02,
0x02,0x03,0x05,0x12,0x03,0x1c,0x04,0x0a,0x0a,0x0c,
0x0a,0x05,0x04,0x02,0x02,0x03,0x01,0x12,0x03,0x1c,
0x0b,0x1b,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x03,
0x03,0x12,0x03,0x1c,0x1e,0x1f,0x0a,0x0a,0x0a,0x02,
0x04,0x03,0x12,0x04,0x1f,0x00,0x21,0x01,0x0a,0x0a,
0x0a,0x03,0x04,0x03,0x01,0x12,0x03,0x1f,0x08,0x23,
0x0a,0x0b,0x0a,0x04,0x04,0x03,0x02,0x00,0x12,0x03,
0x20,0x04,0x38,0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,
0x00,0x04,0x12,0x03,0x20,0x04,0x0c,0x0a,0x0c,0x0a,
0x05,0x04,0x03,0x02,0x00,0x06,0x12,0x03,0x20,0x0d,
0x27,0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,0x00,0x01,
0x12,0x03,0x20,0x28,0x33,0x0a,0x0c,0x0a,0x05,0x04,
0x03,0x02,0x00,0x03,0x12,0x03,0x20,0x36,0x37,0x0a,
0x0a,0x0a,0x02,0x04,0x04,0x12,0x04,0x23,0x00,0x27,
0x01,0x0a,0x0a,0x0a,0x03,0x04,0x04,0x01,0x12,0x03,
0x23,0x08,0x1e,0x0a,0x0b,0x0a,0x04,0x04,0x04,0x02,
0x00,0x12,0x03,0x24,0x04,0x14,0x0a,0x0c,0x0a,0x05,
0x04,0x04,0x02,0x00,0x05,0x12,0x03,0x24,0x04,0x0a,
0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x00,0x01,0x12,
0x03,0x24,0x0b,0x0f,0x0a,0x0c,0x0a,0x05,0x04,0x04,
0x02,0x00,0x03,0x12,0x03,0x24,0x12,0x13,0x0a,0x2b,
0x0a,0x04,0x04,0x04,0x02,0x01,0x12,0x03,0x25,0x04,
0x16,0x22,0x1e,0x20,0x31,0x36,0x20,0x62,0x69,0x74,
0x73,0x2c,0x20,0x6c,0x65,0x66,0x74,0x20,0x6d,0x73,
0x62,0x2c,0x20,0x72,0x69,0x67,0x68,0x74,0x20,0x6c,
0x73,0x62,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,
0x01,0x05,0x12,0x03,0x25,0x04,0x0a,0x0a,0x0c,0x0a,
0x05,0x04,0x04,0x02,0x01,0x01,0x12,0x03,0x25,0x0b,
0x11,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x01,0x03,
0x12,0x03,0x25,0x14,0x15,0x0a,0x2b,0x0a,0x04,0x04,
0x04,0x02,0x02,0x12,0x03,0x26,0x04,0x1d,0x22,0x1e,
0x20,0x31,0x36,0x20,0x62,0x69,0x74,0x73,0x2c,0x20,
0x6c,0x65,0x66,0x74,0x20,0x6d,0x73,0x62,0x2c,0x20,
0x72,0x69,0x67,0x68,0x74,0x20,0x6c,0x73,0x62,0x0a,
0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x02,0x05,0x12,
0x03,0x26,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x04,
0x02,0x02,0x01,0x12,0x03,0x26,0x0b,0x18,0x0a,0x0c,
0x0a,0x05,0x04,0x04,0x02,0x02,0x03,0x12,0x03,0x26,
0x1b,0x1c,0x0a,0x0a,0x0a,0x02,0x04,0x05,0x12,0x04,
0x29,0x00,0x2b,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x05,
0x01,0x12,0x03,0x29,0x08,0x1f,0x0a,0x0b,0x0a,0x04,
0x04,0x05,0x02,0x00,0x12,0x03,0x2a,0x04,0x30,0x0a,
0x0c,0x0a,0x05,0x04,0x05,0x02,0x00,0x04,0x12,0x03,
0x2a,0x04,0x0c,0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,
0x00,0x06,0x12,0x03,0x2a,0x0d,0x23,0x0a,0x0c,0x0a,
0x05,0x04,0x05,0x02,0x00,0x01,0x12,0x03,0x2a,0x24,
0x2b,0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,0x00,0x03,
0x12,0x03,0x2a,0x2e,0x2f,0x0a,0x0a,0x0a,0x02,0x04,
0x06,0x12,0x04,0x2d,0x00,0x32,0x01,0x0a,0x0a,0x0a,
0x03,0x04,0x06,0x01,0x12,0x03,0x2d,0x08,0x19,0x0a,
0x0b,0x0a,0x04,0x04,0x06,0x02,0x00,0x12,0x03,0x2e,
0x04,0x19,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x00,
0x05,0x12,0x03,0x2e,0x04,0x0a,0x0a,0x0c,0x0a,0x05,
0x04,0x06,0x02,0x00,0x01,0x12,0x03,0x2e,0x0b,0x14,
0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x00,0x03,0x12,
0x03,0x2e,0x17,0x18,0x0a,0x0b,0x0a,0x04,0x04,0x06,
0x02,0x01,0x12,0x03,0x2f,0x04,0x1a,0x0a,0x0c,0x0a,
0x05,0x04,0x06,0x02,0x01,0x05,0x12,0x03,0x2f,0x04,
0x09,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x01,0x01,
0x12,0x03,0x2f,0x0a,0x15,0x0a,0x0c,0x0a,0x05,0x04,
0x06,0x02,0x01,0x03,0x12,0x03,0x2f,0x18,0x19,0x0a,
0x0b,0x0a,0x04,0x04,0x06,0x02,0x02,0x12,0x03,0x30,
0x04,0x1b,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x02,
0x05,0x12,0x03,0x30,0x04,0x09,0x0a,0x0c,0x0a,0x05,
0x04,0x06,0x02,0x02,0x01,0x12,0x03,0x30,0x0a,0x16,
0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x02,0x03,0x12,
0x03,0x30,0x19,0x1a,0x0a,0x0b,0x0a,0x04,0x04,0x06,
0x02,0x03,0x12,0x03,0x31,0x04,0x18,0x0a,0x0c,0x0a,
0x05,0x04,0x06,0x02,0x03,0x05,0x12,0x03,0x31,0x04,
0x09,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x03,0x01,
0x12,0x03,0x31,0x0a,0x13,0x0a,0x0c,0x0a,0x05,0x04,
0x06,0x02,0x03,0x03,0x12,0x03,0x31,0x16,0x17,0x0a,
0x0a,0x0a,0x02,0x04,0x07,0x12,0x04,0x34,0x00,0x3a,
0x01,0x0a,0x0a,0x0a,0x03,0x04,0x07,0x01,0x12,0x03,
0x34,0x08,0x19,0x0a,0x0b,0x0a,0x04,0x04,0x07,0x02,
0x00,0x12,0x03,0x35,0x04,0x15,0x0a,0x0c,0x0a,0x05,
0x04,0x07,0x02,0x00,0x05,0x12,0x03,0x35,0x04,0x08,
0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,0x00,0x01,0x12,
0x03,0x3b,0x1c,0x21,0x0a,0x0c,0x0a,0x05,0x04,0x07,
0x02,0x00,0x03,0x12,0x03,0x3b,0x24,0x25,0x62,0x06,
0x03,0x35,0x09,0x10,0x0a,0x0c,0x0a,0x05,0x04,0x07,
0x02,0x00,0x03,0x12,0x03,0x35,0x13,0x14,0x0a,0x0b,
0x0a,0x04,0x04,0x07,0x02,0x01,0x12,0x03,0x36,0x04,
0x19,0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,0x01,0x05,
0x12,0x03,0x36,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,
0x07,0x02,0x01,0x01,0x12,0x03,0x36,0x0b,0x14,0x0a,
0x0c,0x0a,0x05,0x04,0x07,0x02,0x01,0x03,0x12,0x03,
0x36,0x17,0x18,0x0a,0x0b,0x0a,0x04,0x04,0x07,0x02,
0x02,0x12,0x03,0x37,0x04,0x17,0x0a,0x0c,0x0a,0x05,
0x04,0x07,0x02,0x02,0x05,0x12,0x03,0x37,0x04,0x0a,
0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,0x02,0x01,0x12,
0x03,0x37,0x0b,0x12,0x0a,0x0c,0x0a,0x05,0x04,0x07,
0x02,0x02,0x03,0x12,0x03,0x37,0x15,0x16,0x0a,0x0b,
0x0a,0x04,0x04,0x07,0x02,0x03,0x12,0x03,0x38,0x04,
0x18,0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,0x03,0x05,
0x12,0x03,0x38,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,
0x07,0x02,0x03,0x01,0x12,0x03,0x38,0x0b,0x13,0x0a,
0x0c,0x0a,0x05,0x04,0x07,0x02,0x03,0x03,0x12,0x03,
0x38,0x16,0x17,0x0a,0x0b,0x0a,0x04,0x04,0x07,0x02,
0x04,0x12,0x03,0x39,0x04,0x19,0x0a,0x0c,0x0a,0x05,
0x04,0x07,0x02,0x04,0x05,0x12,0x03,0x39,0x04,0x0a,
0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,0x04,0x01,0x12,
0x03,0x39,0x0b,0x14,0x0a,0x0c,0x0a,0x05,0x04,0x07,
0x02,0x04,0x03,0x12,0x03,0x39,0x17,0x18,0x0a,0x0a,
0x0a,0x02,0x04,0x08,0x12,0x04,0x3c,0x00,0x3f,0x01,
0x0a,0x0a,0x0a,0x03,0x04,0x08,0x01,0x12,0x03,0x3c,
0x08,0x16,0x0a,0x0b,0x0a,0x04,0x04,0x08,0x02,0x00,
0x12,0x03,0x3d,0x04,0x15,0x0a,0x0c,0x0a,0x05,0x04,
0x08,0x02,0x00,0x05,0x12,0x03,0x3d,0x04,0x0b,0x0a,
0x0c,0x0a,0x05,0x04,0x08,0x02,0x00,0x01,0x12,0x03,
0x3d,0x0c,0x10,0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,
0x00,0x03,0x12,0x03,0x3d,0x13,0x14,0x0a,0x0b,0x0a,
0x04,0x04,0x08,0x02,0x01,0x12,0x03,0x3e,0x04,0x14,
0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x01,0x05,0x12,
0x03,0x3e,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x08,
0x02,0x01,0x01,0x12,0x03,0x3e,0x0b,0x0f,0x0a,0x0c,
0x0a,0x05,0x04,0x08,0x02,0x01,0x03,0x12,0x03,0x3e,
0x12,0x13,0x0a,0x0a,0x0a,0x02,0x04,0x09,0x12,0x04,
0x41,0x00,0x43,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x09,
0x01,0x12,0x03,0x41,0x08,0x20,0x0a,0x0b,0x0a,0x04,
0x04,0x09,0x02,0x00,0x12,0x03,0x42,0x04,0x26,0x0a,
0x0c,0x0a,0x05,0x04,0x09,0x02,0x00,0x04,0x12,0x03,
0x42,0x04,0x0c,0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,
0x00,0x06,0x12,0x03,0x42,0x0d,0x1b,0x0a,0x0c,0x0a,
0x05,0x04,0x09,0x02,0x00,0x01,0x12,0x03,0x42,0x1c,
0x21,0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,0x00,0x03,
0x12,0x03,0x42,0x24,0x25,0x0a,0x0a,0x0a,0x02,0x04,
0x0a,0x12,0x04,0x45,0x00,0x4a,0x01,0x0a,0x0a,0x0a,
0x03,0x04,0x0a,0x01,0x12,0x03,0x45,0x08,0x22,0x0a,
0x0b,0x0a,0x04,0x04,0x0a,0x02,0x00,0x12,0x03,0x46,
0x04,0x24,0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,0x00,
0x06,0x12,0x03,0x46,0x04,0x15,0x0a,0x0c,0x0a,0x05,
0x04,0x0a,0x02,0x00,0x01,0x12,0x03,0x46,0x16,0x1f,
0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,0x00,0x03,0x12,
0x03,0x46,0x22,0x23,0x0a,0x0b,0x0a,0x04,0x04,0x0a,
0x02,0x01,0x12,0x03,0x47,0x04,0x19,0x0a,0x0c,0x0a,
0x05,0x04,0x0a,0x02,0x01,0x05,0x12,0x03,0x47,0x04,
0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,0x01,0x01,
0x12,0x03,0x47,0x0b,0x14,0x0a,0x0c,0x0a,0x05,0x04,
0x0a,0x02,0x01,0x03,0x12,0x03,0x47,0x17,0x18,0x0a,
0x0b,0x0a,0x04,0x04,0x0a,0x02,0x02,0x12,0x03,0x48,
0x04,0x1d,0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,0x02,
0x05,0x12,0x03,0x48,0x04,0x09,0x0a,0x0c,0x0a,0x05,
0x04,0x0a,0x02,0x02,0x01,0x12,0x03,0x48,0x0a,0x18,
0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,0x02,0x03,0x12,
0x03,0x48,0x1b,0x1c,0x0a,0x0b,0x0a,0x04,0x04,0x0a,
0x02,0x03,0x12,0x03,0x49,0x04,0x1c,0x0a,0x0c,0x0a,
0x05,0x04,0x0a,0x02,0x03,0x05,0x12,0x03,0x49,0x04,
0x09,0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,0x03,0x01,
0x12,0x03,0x49,0x0a,0x17,0x0a,0x0c,0x0a,0x05,0x04,
0x0a,0x02,0x03,0x03,0x12,0x03,0x49,0x1a,0x1b,0x0a,
0x0a,0x0a,0x02,0x04,0x0b,0x12,0x04,0x4c,0x00,0x50,
0x01,0x0a,0x0a,0x0a,0x03,0x04,0x0b,0x01,0x12,0x03,
0x4c,0x08,0x24,0x0a,0x0b,0x0a,0x04,0x04,0x0b,0x02,
0x00,0x12,0x03,0x4d,0x04,0x1b,0x0a,0x0c,0x0a,0x05,
0x04,0x0b,0x02,0x00,0x05,0x12,0x03,0x4d,0x04,0x0a,
0x0a,0x0c,0x0a,0x05,0x04,0x0b,0x02,0x00,0x01,0x12,
0x03,0x4d,0x0b,0x16,0x0a,0x0c,0x0a,0x05,0x04,0x0b,
0x02,0x00,0x03,0x12,0x03,0x4d,0x19,0x1a,0x0a,0x0b,
0x0a,0x04,0x04,0x0b,0x02,0x01,0x12,0x03,0x4e,0x04,
0x19,0x0a,0x0c,0x0a,0x05,0x04,0x0b,0x02,0x01,0x05,
0x12,0x03,0x4e,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,
0x0b,0x02,0x01,0x01,0x12,0x03,0x4e,0x0b,0x14,0x0a,
0x0c,0x0a,0x05,0x04,0x0b,0x02,0x01,0x03,0x12,0x03,
0x4e,0x17,0x18,0x0a,0x0b,0x0a,0x04,0x04,0x0b,0x02,
0x02,0x12,0x03,0x4f,0x04,0x1d,0x0a,0x0c,0x0a,0x05,
0x04,0x0b,0x02,0x02,0x05,0x12,0x03,0x4f,0x04,0x09,
0x0a,0x0c,0x0a,0x05,0x04,0x0b,0x02,0x02,0x01,0x12,
0x03,0x4f,0x0a,0x18,0x0a,0x0c,0x0a,0x05,0x04,0x0b,
0x02,0x02,0x03,0x12,0x03,0x4f,0x1b,0x1c,0x62,0x06,
0x70,0x72,0x6f,0x74,0x6f,0x33,
};
static const char file_name[] = "MrcComm.proto";
@@ -354,10 +464,22 @@ pb_filedesc_t mrc_proto_ProtobufJoystickDescriptor::file_descriptor(void) noexce
PB_BIND(mrc_proto_ProtobufJoystickDescriptor, mrc_proto_ProtobufJoystickDescriptor, AUTO)
static const char mrc_proto_ProtobufJoystickRumbleData_name[] = "mrc.proto.ProtobufJoystickRumbleData";
std::string_view mrc_proto_ProtobufJoystickRumbleData::msg_name(void) noexcept { return mrc_proto_ProtobufJoystickRumbleData_name; }
pb_filedesc_t mrc_proto_ProtobufJoystickRumbleData::file_descriptor(void) noexcept { return {::file_name, ::file_descriptor}; }
PB_BIND(mrc_proto_ProtobufJoystickRumbleData, mrc_proto_ProtobufJoystickRumbleData, AUTO)
static const char mrc_proto_ProtobufJoystickDescriptors_name[] = "mrc.proto.ProtobufJoystickDescriptors";
std::string_view mrc_proto_ProtobufJoystickDescriptors::msg_name(void) noexcept { return mrc_proto_ProtobufJoystickDescriptors_name; }
pb_filedesc_t mrc_proto_ProtobufJoystickDescriptors::file_descriptor(void) noexcept { return {::file_name, ::file_descriptor}; }
PB_BIND(mrc_proto_ProtobufJoystickDescriptors, mrc_proto_ProtobufJoystickDescriptors, AUTO)
static const char mrc_proto_ProtobufJoystickOutput_name[] = "mrc.proto.ProtobufJoystickOutput";
std::string_view mrc_proto_ProtobufJoystickOutput::msg_name(void) noexcept { return mrc_proto_ProtobufJoystickOutput_name; }
pb_filedesc_t mrc_proto_ProtobufJoystickOutput::file_descriptor(void) noexcept { return {::file_name, ::file_descriptor}; }
PB_BIND(mrc_proto_ProtobufJoystickOutput, mrc_proto_ProtobufJoystickOutput, AUTO)
static const char mrc_proto_ProtobufJoystickOutputs_name[] = "mrc.proto.ProtobufJoystickOutputs";
std::string_view mrc_proto_ProtobufJoystickOutputs::msg_name(void) noexcept { return mrc_proto_ProtobufJoystickOutputs_name; }
pb_filedesc_t mrc_proto_ProtobufJoystickOutputs::file_descriptor(void) noexcept { return {::file_name, ::file_descriptor}; }
PB_BIND(mrc_proto_ProtobufJoystickOutputs, mrc_proto_ProtobufJoystickOutputs, AUTO)
static const char mrc_proto_ProtobufMatchInfo_name[] = "mrc.proto.ProtobufMatchInfo";
@@ -384,4 +506,16 @@ pb_filedesc_t mrc_proto_ProtobufAvailableOpModes::file_descriptor(void) noexcept
PB_BIND(mrc_proto_ProtobufAvailableOpModes, mrc_proto_ProtobufAvailableOpModes, AUTO)
static const char mrc_proto_ProtobufErrorInfoTimestamp_name[] = "mrc.proto.ProtobufErrorInfoTimestamp";
std::string_view mrc_proto_ProtobufErrorInfoTimestamp::msg_name(void) noexcept { return mrc_proto_ProtobufErrorInfoTimestamp_name; }
pb_filedesc_t mrc_proto_ProtobufErrorInfoTimestamp::file_descriptor(void) noexcept { return {::file_name, ::file_descriptor}; }
PB_BIND(mrc_proto_ProtobufErrorInfoTimestamp, mrc_proto_ProtobufErrorInfoTimestamp, AUTO)
static const char mrc_proto_ProtobufConsoleLineTimestamp_name[] = "mrc.proto.ProtobufConsoleLineTimestamp";
std::string_view mrc_proto_ProtobufConsoleLineTimestamp::msg_name(void) noexcept { return mrc_proto_ProtobufConsoleLineTimestamp_name; }
pb_filedesc_t mrc_proto_ProtobufConsoleLineTimestamp::file_descriptor(void) noexcept { return {::file_name, ::file_descriptor}; }
PB_BIND(mrc_proto_ProtobufConsoleLineTimestamp, mrc_proto_ProtobufConsoleLineTimestamp, AUTO)

View File

@@ -47,21 +47,36 @@ typedef struct _mrc_proto_ProtobufJoystickDescriptor {
static pb_filedesc_t file_descriptor(void) noexcept;
pb_callback_t JoystickName;
pb_callback_t AxisTypes;
bool IsGamepad;
int32_t JoystickType;
int32_t ButtonCount;
int32_t PovCount;
int32_t RumbleCount;
uint32_t GamepadType;
uint32_t SupportedOutputs;
} mrc_proto_ProtobufJoystickDescriptor;
typedef struct _mrc_proto_ProtobufJoystickRumbleData {
typedef struct _mrc_proto_ProtobufJoystickDescriptors {
static const pb_msgdesc_t* msg_descriptor(void) noexcept;
static std::string_view msg_name(void) noexcept;
static pb_filedesc_t file_descriptor(void) noexcept;
pb_callback_t Value;
} mrc_proto_ProtobufJoystickRumbleData;
pb_callback_t Descriptors;
} mrc_proto_ProtobufJoystickDescriptors;
typedef struct _mrc_proto_ProtobufJoystickOutput {
static const pb_msgdesc_t* msg_descriptor(void) noexcept;
static std::string_view msg_name(void) noexcept;
static pb_filedesc_t file_descriptor(void) noexcept;
uint32_t LEDs;
uint32_t Rumble; /* 16 bits, left msb, right lsb */
uint32_t TriggerRumble; /* 16 bits, left msb, right lsb */
} mrc_proto_ProtobufJoystickOutput;
typedef struct _mrc_proto_ProtobufJoystickOutputs {
static const pb_msgdesc_t* msg_descriptor(void) noexcept;
static std::string_view msg_name(void) noexcept;
static pb_filedesc_t file_descriptor(void) noexcept;
pb_callback_t Outputs;
} mrc_proto_ProtobufJoystickOutputs;
typedef struct _mrc_proto_ProtobufMatchInfo {
static const pb_msgdesc_t* msg_descriptor(void) noexcept;
@@ -103,24 +118,53 @@ typedef struct _mrc_proto_ProtobufAvailableOpModes {
pb_callback_t Modes;
} mrc_proto_ProtobufAvailableOpModes;
typedef struct _mrc_proto_ProtobufErrorInfoTimestamp {
static const pb_msgdesc_t* msg_descriptor(void) noexcept;
static std::string_view msg_name(void) noexcept;
static pb_filedesc_t file_descriptor(void) noexcept;
pb_callback_t ErrorInfo;
uint64_t Timestamp;
int32_t SequenceNumber;
int32_t NumOccurances;
} mrc_proto_ProtobufErrorInfoTimestamp;
typedef struct _mrc_proto_ProtobufConsoleLineTimestamp {
static const pb_msgdesc_t* msg_descriptor(void) noexcept;
static std::string_view msg_name(void) noexcept;
static pb_filedesc_t file_descriptor(void) noexcept;
pb_callback_t ConsoleLine;
uint64_t Timestamp;
int32_t SequenceNumber;
} mrc_proto_ProtobufConsoleLineTimestamp;
/* Initializer values for message structs */
#define mrc_proto_ProtobufJoystickData_init_default {0, 0, 0, {{NULL}, NULL}, 0, 0}
#define mrc_proto_ProtobufControlData_init_default {0, 0, {{NULL}, NULL}, 0}
#define mrc_proto_ProtobufJoystickDescriptor_init_default {{{NULL}, NULL}, {{NULL}, NULL}, 0, 0, 0, 0, 0}
#define mrc_proto_ProtobufJoystickRumbleData_init_default {{{NULL}, NULL}}
#define mrc_proto_ProtobufJoystickDescriptor_init_default {{{NULL}, NULL}, 0, 0, 0}
#define mrc_proto_ProtobufJoystickDescriptors_init_default {{{NULL}, NULL}}
#define mrc_proto_ProtobufJoystickOutput_init_default {0, 0, 0}
#define mrc_proto_ProtobufJoystickOutputs_init_default {{{NULL}, NULL}}
#define mrc_proto_ProtobufMatchInfo_init_default {{{NULL}, NULL}, 0, 0, 0}
#define mrc_proto_ProtobufErrorInfo_init_default {0, 0, {{NULL}, NULL}, {{NULL}, NULL}, {{NULL}, NULL}}
#define mrc_proto_ProtobufOpMode_init_default {0, {{NULL}, NULL}}
#define mrc_proto_ProtobufAvailableOpModes_init_default {{{NULL}, NULL}}
#define mrc_proto_ProtobufErrorInfoTimestamp_init_default {{{NULL}, NULL}, 0, 0, 0}
#define mrc_proto_ProtobufConsoleLineTimestamp_init_default {{{NULL}, NULL}, 0, 0}
#define mrc_proto_ProtobufJoystickData_init_zero {0, 0, 0, {{NULL}, NULL}, 0, 0}
#define mrc_proto_ProtobufControlData_init_zero {0, 0, {{NULL}, NULL}, 0}
#define mrc_proto_ProtobufJoystickDescriptor_init_zero {{{NULL}, NULL}, {{NULL}, NULL}, 0, 0, 0, 0, 0}
#define mrc_proto_ProtobufJoystickRumbleData_init_zero {{{NULL}, NULL}}
#define mrc_proto_ProtobufJoystickDescriptor_init_zero {{{NULL}, NULL}, 0, 0, 0}
#define mrc_proto_ProtobufJoystickDescriptors_init_zero {{{NULL}, NULL}}
#define mrc_proto_ProtobufJoystickOutput_init_zero {0, 0, 0}
#define mrc_proto_ProtobufJoystickOutputs_init_zero {{{NULL}, NULL}}
#define mrc_proto_ProtobufMatchInfo_init_zero {{{NULL}, NULL}, 0, 0, 0}
#define mrc_proto_ProtobufErrorInfo_init_zero {0, 0, {{NULL}, NULL}, {{NULL}, NULL}, {{NULL}, NULL}}
#define mrc_proto_ProtobufOpMode_init_zero {0, {{NULL}, NULL}}
#define mrc_proto_ProtobufAvailableOpModes_init_zero {{{NULL}, NULL}}
#define mrc_proto_ProtobufErrorInfoTimestamp_init_zero {{{NULL}, NULL}, 0, 0, 0}
#define mrc_proto_ProtobufConsoleLineTimestamp_init_zero {{{NULL}, NULL}, 0, 0}
/* Field tags (for use in manual encoding/decoding) */
#define mrc_proto_ProtobufJoystickData_AvailableButtons_tag 1
@@ -134,13 +178,14 @@ typedef struct _mrc_proto_ProtobufAvailableOpModes {
#define mrc_proto_ProtobufControlData_Joysticks_tag 3
#define mrc_proto_ProtobufControlData_CurrentOpMode_tag 4
#define mrc_proto_ProtobufJoystickDescriptor_JoystickName_tag 1
#define mrc_proto_ProtobufJoystickDescriptor_AxisTypes_tag 2
#define mrc_proto_ProtobufJoystickDescriptor_IsGamepad_tag 3
#define mrc_proto_ProtobufJoystickDescriptor_JoystickType_tag 4
#define mrc_proto_ProtobufJoystickDescriptor_ButtonCount_tag 5
#define mrc_proto_ProtobufJoystickDescriptor_PovCount_tag 6
#define mrc_proto_ProtobufJoystickDescriptor_RumbleCount_tag 7
#define mrc_proto_ProtobufJoystickRumbleData_Value_tag 3
#define mrc_proto_ProtobufJoystickDescriptor_IsGamepad_tag 2
#define mrc_proto_ProtobufJoystickDescriptor_GamepadType_tag 3
#define mrc_proto_ProtobufJoystickDescriptor_SupportedOutputs_tag 4
#define mrc_proto_ProtobufJoystickDescriptors_Descriptors_tag 1
#define mrc_proto_ProtobufJoystickOutput_LEDs_tag 1
#define mrc_proto_ProtobufJoystickOutput_Rumble_tag 2
#define mrc_proto_ProtobufJoystickOutput_TriggerRumble_tag 3
#define mrc_proto_ProtobufJoystickOutputs_Outputs_tag 1
#define mrc_proto_ProtobufMatchInfo_EventName_tag 1
#define mrc_proto_ProtobufMatchInfo_MatchNumber_tag 2
#define mrc_proto_ProtobufMatchInfo_ReplayNumber_tag 3
@@ -153,6 +198,13 @@ typedef struct _mrc_proto_ProtobufAvailableOpModes {
#define mrc_proto_ProtobufOpMode_Hash_tag 1
#define mrc_proto_ProtobufOpMode_Name_tag 2
#define mrc_proto_ProtobufAvailableOpModes_Modes_tag 1
#define mrc_proto_ProtobufErrorInfoTimestamp_ErrorInfo_tag 1
#define mrc_proto_ProtobufErrorInfoTimestamp_Timestamp_tag 2
#define mrc_proto_ProtobufErrorInfoTimestamp_SequenceNumber_tag 3
#define mrc_proto_ProtobufErrorInfoTimestamp_NumOccurances_tag 4
#define mrc_proto_ProtobufConsoleLineTimestamp_ConsoleLine_tag 1
#define mrc_proto_ProtobufConsoleLineTimestamp_Timestamp_tag 2
#define mrc_proto_ProtobufConsoleLineTimestamp_SequenceNumber_tag 3
/* Struct field encoding specification for nanopb */
#define mrc_proto_ProtobufJoystickData_FIELDLIST(X, a) \
@@ -176,19 +228,30 @@ X(a, STATIC, SINGULAR, FIXED64, CurrentOpMode, 4)
#define mrc_proto_ProtobufJoystickDescriptor_FIELDLIST(X, a) \
X(a, CALLBACK, SINGULAR, STRING, JoystickName, 1) \
X(a, CALLBACK, REPEATED, INT32, AxisTypes, 2) \
X(a, STATIC, SINGULAR, BOOL, IsGamepad, 3) \
X(a, STATIC, SINGULAR, INT32, JoystickType, 4) \
X(a, STATIC, SINGULAR, INT32, ButtonCount, 5) \
X(a, STATIC, SINGULAR, INT32, PovCount, 6) \
X(a, STATIC, SINGULAR, INT32, RumbleCount, 7)
X(a, STATIC, SINGULAR, BOOL, IsGamepad, 2) \
X(a, STATIC, SINGULAR, UINT32, GamepadType, 3) \
X(a, STATIC, SINGULAR, UINT32, SupportedOutputs, 4)
#define mrc_proto_ProtobufJoystickDescriptor_CALLBACK pb_default_field_callback
#define mrc_proto_ProtobufJoystickDescriptor_DEFAULT NULL
#define mrc_proto_ProtobufJoystickRumbleData_FIELDLIST(X, a) \
X(a, CALLBACK, REPEATED, UINT32, Value, 3)
#define mrc_proto_ProtobufJoystickRumbleData_CALLBACK pb_default_field_callback
#define mrc_proto_ProtobufJoystickRumbleData_DEFAULT NULL
#define mrc_proto_ProtobufJoystickDescriptors_FIELDLIST(X, a) \
X(a, CALLBACK, REPEATED, MESSAGE, Descriptors, 1)
#define mrc_proto_ProtobufJoystickDescriptors_CALLBACK pb_default_field_callback
#define mrc_proto_ProtobufJoystickDescriptors_DEFAULT NULL
#define mrc_proto_ProtobufJoystickDescriptors_Descriptors_MSGTYPE mrc_proto_ProtobufJoystickDescriptor
#define mrc_proto_ProtobufJoystickOutput_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, UINT32, LEDs, 1) \
X(a, STATIC, SINGULAR, UINT32, Rumble, 2) \
X(a, STATIC, SINGULAR, UINT32, TriggerRumble, 3)
#define mrc_proto_ProtobufJoystickOutput_CALLBACK NULL
#define mrc_proto_ProtobufJoystickOutput_DEFAULT NULL
#define mrc_proto_ProtobufJoystickOutputs_FIELDLIST(X, a) \
X(a, CALLBACK, REPEATED, MESSAGE, Outputs, 1)
#define mrc_proto_ProtobufJoystickOutputs_CALLBACK pb_default_field_callback
#define mrc_proto_ProtobufJoystickOutputs_DEFAULT NULL
#define mrc_proto_ProtobufJoystickOutputs_Outputs_MSGTYPE mrc_proto_ProtobufJoystickOutput
#define mrc_proto_ProtobufMatchInfo_FIELDLIST(X, a) \
X(a, CALLBACK, SINGULAR, STRING, EventName, 1) \
@@ -219,15 +282,36 @@ X(a, CALLBACK, REPEATED, MESSAGE, Modes, 1)
#define mrc_proto_ProtobufAvailableOpModes_DEFAULT NULL
#define mrc_proto_ProtobufAvailableOpModes_Modes_MSGTYPE mrc_proto_ProtobufOpMode
#define mrc_proto_ProtobufErrorInfoTimestamp_FIELDLIST(X, a) \
X(a, CALLBACK, OPTIONAL, MESSAGE, ErrorInfo, 1) \
X(a, STATIC, SINGULAR, UINT64, Timestamp, 2) \
X(a, STATIC, SINGULAR, INT32, SequenceNumber, 3) \
X(a, STATIC, SINGULAR, INT32, NumOccurances, 4)
#define mrc_proto_ProtobufErrorInfoTimestamp_CALLBACK pb_default_field_callback
#define mrc_proto_ProtobufErrorInfoTimestamp_DEFAULT NULL
#define mrc_proto_ProtobufErrorInfoTimestamp_ErrorInfo_MSGTYPE mrc_proto_ProtobufErrorInfo
#define mrc_proto_ProtobufConsoleLineTimestamp_FIELDLIST(X, a) \
X(a, CALLBACK, SINGULAR, STRING, ConsoleLine, 1) \
X(a, STATIC, SINGULAR, UINT64, Timestamp, 2) \
X(a, STATIC, SINGULAR, INT32, SequenceNumber, 3)
#define mrc_proto_ProtobufConsoleLineTimestamp_CALLBACK pb_default_field_callback
#define mrc_proto_ProtobufConsoleLineTimestamp_DEFAULT NULL
/* Maximum encoded size of messages (where known) */
/* mrc_proto_ProtobufJoystickData_size depends on runtime parameters */
/* mrc_proto_ProtobufControlData_size depends on runtime parameters */
/* mrc_proto_ProtobufJoystickDescriptor_size depends on runtime parameters */
/* mrc_proto_ProtobufJoystickRumbleData_size depends on runtime parameters */
/* mrc_proto_ProtobufJoystickDescriptors_size depends on runtime parameters */
/* mrc_proto_ProtobufJoystickOutputs_size depends on runtime parameters */
/* mrc_proto_ProtobufMatchInfo_size depends on runtime parameters */
/* mrc_proto_ProtobufErrorInfo_size depends on runtime parameters */
/* mrc_proto_ProtobufOpMode_size depends on runtime parameters */
/* mrc_proto_ProtobufAvailableOpModes_size depends on runtime parameters */
/* mrc_proto_ProtobufErrorInfoTimestamp_size depends on runtime parameters */
/* mrc_proto_ProtobufConsoleLineTimestamp_size depends on runtime parameters */
#define MRC_PROTO_MRCCOMM_NPB_H_MAX_SIZE mrc_proto_ProtobufJoystickOutput_size
#define mrc_proto_ProtobufJoystickOutput_size 18
#endif