[hal, wpilib] Add OpMode support (#7744)

User code:
- OpModeRobot used as the robot base class
- LinearOpMode and PeriodicOpMode are provided opmode base classes
- In Java, annotations can be used to automatically register opmode classes

Additional user code functionality:
- OpMode (string) is available in addition to the overall
auto/teleop/test robot mode
- OpMode does not indicate enable (enable/disable is still separate)
- The HAL API uses integer UIDs; these are exposed at the user API level
as well for faster checks
- User code creates opmodes on startup (these have name, category,
description, etc).

DS:
- DS will present opmode selection lists for auto and teleop for
match/practice. During a match, the DS will automatically activate the
selected opmode in the corresponding match period.
- For testing, an overall mode is selected (e.g. teleop/auto/test) and a
single opmode is selected

Future work:
- Command framework support/integration
- Python annotation support
- Unit tests (needs race-free DS sim updates)
- Porting of examples

Co-authored-by: Joseph Eng <91924258+KangarooKoala@users.noreply.github.com>
This commit is contained in:
Peter Johnson
2025-12-12 21:25:57 -07:00
committed by GitHub
parent 2a41b80e00
commit dacded37e5
163 changed files with 7454 additions and 2175 deletions

View File

@@ -60,7 +60,7 @@ static const uint8_t file_descriptor[] {
0x6f,0x62,0x75,0x66,0x43,0x6f,0x6e,0x74,0x72,0x6f,
0x6c,0x44,0x61,0x74,0x61,0x12,0x20,0x0a,0x0b,0x43,
0x6f,0x6e,0x74,0x72,0x6f,0x6c,0x57,0x6f,0x72,0x64,
0x18,0x01,0x20,0x01,0x28,0x0d,0x52,0x0b,0x43,0x6f,
0x18,0x05,0x20,0x01,0x28,0x0d,0x52,0x0b,0x43,0x6f,
0x6e,0x74,0x72,0x6f,0x6c,0x57,0x6f,0x72,0x64,0x12,
0x1c,0x0a,0x09,0x4d,0x61,0x74,0x63,0x68,0x54,0x69,
0x6d,0x65,0x18,0x02,0x20,0x01,0x28,0x05,0x52,0x09,
@@ -154,353 +154,388 @@ static const uint8_t file_descriptor[] {
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,
0xb8,0x01,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,0x12,0x14,
0x0a,0x05,0x47,0x72,0x6f,0x75,0x70,0x18,0x03,0x20,
0x01,0x28,0x09,0x52,0x05,0x47,0x72,0x6f,0x75,0x70,
0x12,0x20,0x0a,0x0b,0x44,0x65,0x73,0x63,0x72,0x69,
0x70,0x74,0x69,0x6f,0x6e,0x18,0x04,0x20,0x01,0x28,
0x09,0x52,0x0b,0x44,0x65,0x73,0x63,0x72,0x69,0x70,
0x74,0x69,0x6f,0x6e,0x12,0x1c,0x0a,0x09,0x54,0x65,
0x78,0x74,0x43,0x6f,0x6c,0x6f,0x72,0x18,0x05,0x20,
0x01,0x28,0x05,0x52,0x09,0x54,0x65,0x78,0x74,0x43,
0x6f,0x6c,0x6f,0x72,0x12,0x28,0x0a,0x0f,0x42,0x61,
0x63,0x6b,0x67,0x72,0x6f,0x75,0x6e,0x64,0x43,0x6f,
0x6c,0x6f,0x72,0x18,0x06,0x20,0x01,0x28,0x05,0x52,
0x0f,0x42,0x61,0x63,0x6b,0x67,0x72,0x6f,0x75,0x6e,
0x64,0x43,0x6f,0x6c,0x6f,0x72,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,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,
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,
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,0x93,0x17,
0x0a,0x06,0x12,0x04,0x00,0x00,0x5b,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,0x12,0x03,0x04,0x00,0x26,0x0a,
0x0a,0x0a,0x02,0x04,0x00,0x12,0x04,0x06,0x00,0x0a,
0x01,0x0a,0x0a,0x0a,0x03,0x04,0x00,0x01,0x12,0x03,
0x06,0x08,0x1a,0x0a,0x0b,0x0a,0x04,0x04,0x00,0x02,
0x00,0x12,0x03,0x07,0x04,0x11,0x0a,0x0c,0x0a,0x05,
0x04,0x00,0x02,0x00,0x05,0x12,0x03,0x07,0x04,0x0a,
0x0a,0x0c,0x0a,0x05,0x04,0x00,0x02,0x00,0x01,0x12,
0x03,0x07,0x0b,0x0c,0x0a,0x0c,0x0a,0x05,0x04,0x00,
0x02,0x00,0x03,0x12,0x03,0x07,0x0f,0x10,0x0a,0x0b,
0x0a,0x04,0x04,0x00,0x02,0x01,0x12,0x03,0x08,0x04,
0x11,0x0a,0x0c,0x0a,0x05,0x04,0x00,0x02,0x01,0x05,
0x12,0x03,0x08,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,
0x00,0x02,0x01,0x01,0x12,0x03,0x08,0x0b,0x0c,0x0a,
0x0c,0x0a,0x05,0x04,0x00,0x02,0x01,0x03,0x12,0x03,
0x08,0x0f,0x10,0x0a,0x0b,0x0a,0x04,0x04,0x00,0x02,
0x02,0x12,0x03,0x09,0x04,0x12,0x0a,0x0c,0x0a,0x05,
0x04,0x00,0x02,0x02,0x05,0x12,0x03,0x09,0x04,0x08,
0x0a,0x0c,0x0a,0x05,0x04,0x00,0x02,0x02,0x01,0x12,
0x03,0x09,0x09,0x0d,0x0a,0x0c,0x0a,0x05,0x04,0x00,
0x02,0x02,0x03,0x12,0x03,0x09,0x10,0x11,0x0a,0x0a,
0x0a,0x02,0x04,0x01,0x12,0x04,0x0c,0x00,0x0e,0x01,
0x0a,0x0a,0x0a,0x03,0x04,0x01,0x01,0x12,0x03,0x0c,
0x08,0x1c,0x0a,0x0b,0x0a,0x04,0x04,0x01,0x02,0x00,
0x12,0x03,0x0d,0x04,0x2c,0x0a,0x0c,0x0a,0x05,0x04,
0x01,0x02,0x00,0x04,0x12,0x03,0x0d,0x04,0x0c,0x0a,
0x0c,0x0a,0x05,0x04,0x01,0x02,0x00,0x06,0x12,0x03,
0x0d,0x0d,0x1f,0x0a,0x0c,0x0a,0x05,0x04,0x01,0x02,
0x00,0x01,0x12,0x03,0x0d,0x20,0x27,0x0a,0x0c,0x0a,
0x05,0x04,0x01,0x02,0x00,0x03,0x12,0x03,0x0d,0x2a,
0x2b,0x0a,0x0a,0x0a,0x02,0x04,0x02,0x12,0x04,0x10,
0x00,0x1a,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x02,0x01,
0x12,0x03,0x10,0x08,0x1c,0x0a,0x0b,0x0a,0x04,0x04,
0x02,0x02,0x00,0x12,0x03,0x11,0x04,0x20,0x0a,0x0c,
0x0a,0x05,0x04,0x02,0x02,0x00,0x05,0x12,0x03,0x11,
0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x00,
0x01,0x12,0x03,0x11,0x0b,0x1b,0x0a,0x0c,0x0a,0x05,
0x04,0x02,0x02,0x00,0x03,0x12,0x03,0x11,0x1e,0x1f,
0x0a,0x0b,0x0a,0x04,0x04,0x02,0x02,0x01,0x12,0x03,
0x12,0x04,0x17,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,
0x01,0x05,0x12,0x03,0x12,0x04,0x0a,0x0a,0x0c,0x0a,
0x05,0x04,0x02,0x02,0x01,0x01,0x12,0x03,0x12,0x0b,
0x12,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x01,0x03,
0x12,0x03,0x12,0x15,0x16,0x0a,0x0b,0x0a,0x04,0x04,
0x02,0x02,0x02,0x12,0x03,0x13,0x04,0x1d,0x0a,0x0c,
0x0a,0x05,0x04,0x02,0x02,0x02,0x05,0x12,0x03,0x13,
0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x02,
0x01,0x12,0x03,0x13,0x0b,0x18,0x0a,0x0c,0x0a,0x05,
0x04,0x02,0x02,0x02,0x03,0x12,0x03,0x13,0x1b,0x1c,
0x0a,0x0b,0x0a,0x04,0x04,0x02,0x02,0x03,0x12,0x03,
0x14,0x04,0x1d,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,
0x03,0x04,0x12,0x03,0x14,0x04,0x0c,0x0a,0x0c,0x0a,
0x05,0x04,0x02,0x02,0x03,0x05,0x12,0x03,0x14,0x0d,
0x13,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x03,0x01,
0x12,0x03,0x14,0x14,0x18,0x0a,0x0c,0x0a,0x05,0x04,
0x02,0x02,0x03,0x03,0x12,0x03,0x14,0x1b,0x1c,0x0a,
0x3e,0x0a,0x04,0x04,0x02,0x02,0x04,0x12,0x03,0x17,
0x04,0x18,0x1a,0x31,0x20,0x45,0x61,0x63,0x68,0x20,
0x50,0x4f,0x56,0x20,0x74,0x61,0x6b,0x65,0x73,0x20,
0x75,0x70,0x20,0x34,0x20,0x62,0x69,0x74,0x73,0x0a,
0x20,0x57,0x65,0x20,0x63,0x61,0x6e,0x20,0x66,0x69,
0x74,0x20,0x38,0x20,0x69,0x6e,0x20,0x68,0x65,0x72,
0x65,0x2e,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,
0x04,0x05,0x12,0x03,0x17,0x04,0x0a,0x0a,0x0c,0x0a,
0x05,0x04,0x02,0x02,0x04,0x01,0x12,0x03,0x17,0x0b,
0x13,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x04,0x03,
0x12,0x03,0x17,0x16,0x17,0x0a,0x0b,0x0a,0x04,0x04,
0x02,0x02,0x05,0x12,0x03,0x18,0x04,0x14,0x0a,0x0c,
0x0a,0x05,0x04,0x02,0x02,0x05,0x05,0x12,0x03,0x18,
0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x05,
0x01,0x12,0x03,0x18,0x0b,0x0f,0x0a,0x0c,0x0a,0x05,
0x04,0x02,0x02,0x05,0x03,0x12,0x03,0x18,0x12,0x13,
0x0a,0x0b,0x0a,0x04,0x04,0x02,0x02,0x06,0x12,0x03,
0x19,0x04,0x30,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,
0x06,0x04,0x12,0x03,0x19,0x04,0x0c,0x0a,0x0c,0x0a,
0x05,0x04,0x02,0x02,0x06,0x06,0x12,0x03,0x19,0x0d,
0x21,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x06,0x01,
0x12,0x03,0x19,0x22,0x2b,0x0a,0x0c,0x0a,0x05,0x04,
0x02,0x02,0x06,0x03,0x12,0x03,0x19,0x2e,0x2f,0x0a,
0x0a,0x0a,0x02,0x04,0x03,0x12,0x04,0x1c,0x00,0x21,
0x01,0x0a,0x0a,0x0a,0x03,0x04,0x03,0x01,0x12,0x03,
0x1c,0x08,0x1b,0x0a,0x0b,0x0a,0x04,0x04,0x03,0x02,
0x00,0x12,0x03,0x1d,0x04,0x1b,0x0a,0x0c,0x0a,0x05,
0x04,0x03,0x02,0x00,0x05,0x12,0x03,0x1d,0x04,0x0a,
0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,0x00,0x01,0x12,
0x03,0x1d,0x0b,0x16,0x0a,0x0c,0x0a,0x05,0x04,0x03,
0x02,0x00,0x03,0x12,0x03,0x1d,0x19,0x1a,0x0a,0x0b,
0x0a,0x04,0x04,0x03,0x02,0x01,0x12,0x03,0x1e,0x04,
0x18,0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,0x01,0x05,
0x12,0x03,0x1e,0x04,0x09,0x0a,0x0c,0x0a,0x05,0x04,
0x03,0x02,0x01,0x01,0x12,0x03,0x1e,0x0a,0x13,0x0a,
0x0c,0x0a,0x05,0x04,0x03,0x02,0x01,0x03,0x12,0x03,
0x1e,0x16,0x17,0x0a,0x0b,0x0a,0x04,0x04,0x03,0x02,
0x02,0x12,0x03,0x1f,0x04,0x30,0x0a,0x0c,0x0a,0x05,
0x04,0x03,0x02,0x02,0x04,0x12,0x03,0x1f,0x04,0x0c,
0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,0x02,0x06,0x12,
0x03,0x1f,0x0d,0x21,0x0a,0x0c,0x0a,0x05,0x04,0x03,
0x02,0x02,0x01,0x12,0x03,0x1f,0x22,0x2b,0x0a,0x0c,
0x0a,0x05,0x04,0x03,0x02,0x02,0x03,0x12,0x03,0x1f,
0x2e,0x2f,0x0a,0x0b,0x0a,0x04,0x04,0x03,0x02,0x03,
0x12,0x03,0x20,0x04,0x1e,0x0a,0x0c,0x0a,0x05,0x04,
0x03,0x02,0x03,0x05,0x12,0x03,0x20,0x04,0x0b,0x0a,
0x0c,0x0a,0x05,0x04,0x03,0x02,0x03,0x01,0x12,0x03,
0x20,0x0c,0x19,0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,
0x03,0x03,0x12,0x03,0x20,0x1c,0x1d,0x0a,0x0a,0x0a,
0x02,0x04,0x04,0x12,0x04,0x23,0x00,0x28,0x01,0x0a,
0x0a,0x0a,0x03,0x04,0x04,0x01,0x12,0x03,0x23,0x08,
0x22,0x0a,0x0b,0x0a,0x04,0x04,0x04,0x02,0x00,0x12,
0x03,0x24,0x04,0x1c,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,0x17,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x00,
0x03,0x12,0x03,0x24,0x1a,0x1b,0x0a,0x0b,0x0a,0x04,
0x04,0x04,0x02,0x01,0x12,0x03,0x25,0x04,0x17,0x0a,
0x0c,0x0a,0x05,0x04,0x04,0x02,0x01,0x05,0x12,0x03,
0x25,0x04,0x08,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,
0x01,0x01,0x12,0x03,0x25,0x09,0x12,0x0a,0x0c,0x0a,
0x05,0x04,0x04,0x02,0x01,0x03,0x12,0x03,0x25,0x15,
0x16,0x0a,0x0b,0x0a,0x04,0x04,0x04,0x02,0x02,0x12,
0x03,0x26,0x04,0x1b,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,0x16,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x02,
0x03,0x12,0x03,0x26,0x19,0x1a,0x0a,0x0b,0x0a,0x04,
0x04,0x04,0x02,0x03,0x12,0x03,0x27,0x04,0x20,0x0a,
0x0c,0x0a,0x05,0x04,0x04,0x02,0x03,0x05,0x12,0x03,
0x27,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,
0x03,0x01,0x12,0x03,0x27,0x0b,0x1b,0x0a,0x0c,0x0a,
0x05,0x04,0x04,0x02,0x03,0x03,0x12,0x03,0x27,0x1e,
0x1f,0x0a,0x0a,0x0a,0x02,0x04,0x05,0x12,0x04,0x2a,
0x00,0x2c,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x05,0x01,
0x12,0x03,0x2a,0x08,0x23,0x0a,0x0b,0x0a,0x04,0x04,
0x05,0x02,0x00,0x12,0x03,0x2b,0x04,0x38,0x0a,0x0c,
0x0a,0x05,0x04,0x05,0x02,0x00,0x04,0x12,0x03,0x2b,
0x04,0x0c,0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,0x00,
0x06,0x12,0x03,0x2b,0x0d,0x27,0x0a,0x0c,0x0a,0x05,
0x04,0x05,0x02,0x00,0x01,0x12,0x03,0x2b,0x28,0x33,
0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,0x00,0x03,0x12,
0x03,0x2b,0x36,0x37,0x0a,0x0a,0x0a,0x02,0x04,0x06,
0x12,0x04,0x2e,0x00,0x32,0x01,0x0a,0x0a,0x0a,0x03,
0x04,0x06,0x01,0x12,0x03,0x2e,0x08,0x1e,0x0a,0x0b,
0x0a,0x04,0x04,0x06,0x02,0x00,0x12,0x03,0x2f,0x04,
0x14,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x00,0x05,
0x12,0x03,0x2f,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,
0x06,0x02,0x00,0x01,0x12,0x03,0x2f,0x0b,0x0f,0x0a,
0x0c,0x0a,0x05,0x04,0x06,0x02,0x00,0x03,0x12,0x03,
0x2f,0x12,0x13,0x0a,0x2b,0x0a,0x04,0x04,0x06,0x02,
0x01,0x12,0x03,0x30,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,0x06,0x02,0x01,0x05,0x12,0x03,0x30,
0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x01,
0x01,0x12,0x03,0x30,0x0b,0x11,0x0a,0x0c,0x0a,0x05,
0x04,0x06,0x02,0x01,0x03,0x12,0x03,0x30,0x14,0x15,
0x0a,0x2b,0x0a,0x04,0x04,0x06,0x02,0x02,0x12,0x03,
0x31,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,
0x06,0x02,0x02,0x05,0x12,0x03,0x31,0x04,0x0a,0x0a,
0x0c,0x0a,0x05,0x04,0x06,0x02,0x02,0x01,0x12,0x03,
0x31,0x0b,0x18,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,
0x02,0x03,0x12,0x03,0x31,0x1b,0x1c,0x0a,0x0a,0x0a,
0x02,0x04,0x07,0x12,0x04,0x34,0x00,0x36,0x01,0x0a,
0x0a,0x0a,0x03,0x04,0x07,0x01,0x12,0x03,0x34,0x08,
0x1f,0x0a,0x0b,0x0a,0x04,0x04,0x07,0x02,0x00,0x12,
0x03,0x35,0x04,0x30,0x0a,0x0c,0x0a,0x05,0x04,0x07,
0x02,0x00,0x04,0x12,0x03,0x35,0x04,0x0c,0x0a,0x0c,
0x0a,0x05,0x04,0x07,0x02,0x00,0x06,0x12,0x03,0x35,
0x0d,0x23,0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,0x00,
0x01,0x12,0x03,0x35,0x24,0x2b,0x0a,0x0c,0x0a,0x05,
0x04,0x07,0x02,0x00,0x03,0x12,0x03,0x35,0x2e,0x2f,
0x0a,0x0a,0x0a,0x02,0x04,0x08,0x12,0x04,0x38,0x00,
0x3d,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x08,0x01,0x12,
0x03,0x38,0x08,0x19,0x0a,0x0b,0x0a,0x04,0x04,0x08,
0x02,0x00,0x12,0x03,0x39,0x04,0x19,0x0a,0x0c,0x0a,
0x05,0x04,0x08,0x02,0x00,0x05,0x12,0x03,0x39,0x04,
0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x00,0x01,
0x12,0x03,0x39,0x0b,0x14,0x0a,0x0c,0x0a,0x05,0x04,
0x08,0x02,0x00,0x03,0x12,0x03,0x39,0x17,0x18,0x0a,
0x0b,0x0a,0x04,0x04,0x08,0x02,0x01,0x12,0x03,0x3a,
0x04,0x1a,0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x01,
0x05,0x12,0x03,0x3a,0x04,0x09,0x0a,0x0c,0x0a,0x05,
0x04,0x08,0x02,0x01,0x01,0x12,0x03,0x3a,0x0a,0x15,
0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x01,0x03,0x12,
0x03,0x3a,0x18,0x19,0x0a,0x0b,0x0a,0x04,0x04,0x08,
0x02,0x02,0x12,0x03,0x3b,0x04,0x1b,0x0a,0x0c,0x0a,
0x05,0x04,0x08,0x02,0x02,0x05,0x12,0x03,0x3b,0x04,
0x09,0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x02,0x01,
0x12,0x03,0x3b,0x0a,0x16,0x0a,0x0c,0x0a,0x05,0x04,
0x08,0x02,0x02,0x03,0x12,0x03,0x3b,0x19,0x1a,0x0a,
0x0b,0x0a,0x04,0x04,0x08,0x02,0x03,0x12,0x03,0x3c,
0x04,0x18,0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x03,
0x05,0x12,0x03,0x3c,0x04,0x09,0x0a,0x0c,0x0a,0x05,
0x04,0x08,0x02,0x03,0x01,0x12,0x03,0x3c,0x0a,0x13,
0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x03,0x03,0x12,
0x03,0x3c,0x16,0x17,0x0a,0x0a,0x0a,0x02,0x04,0x09,
0x12,0x04,0x3f,0x00,0x45,0x01,0x0a,0x0a,0x0a,0x03,
0x04,0x09,0x01,0x12,0x03,0x3f,0x08,0x19,0x0a,0x0b,
0x0a,0x04,0x04,0x09,0x02,0x00,0x12,0x03,0x40,0x04,
0x15,0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,0x00,0x05,
0x12,0x03,0x40,0x04,0x08,0x0a,0x0c,0x0a,0x05,0x04,
0x09,0x02,0x00,0x01,0x12,0x03,0x40,0x09,0x10,0x0a,
0x0c,0x0a,0x05,0x04,0x09,0x02,0x00,0x03,0x12,0x03,
0x40,0x13,0x14,0x0a,0x0b,0x0a,0x04,0x04,0x09,0x02,
0x01,0x12,0x03,0x41,0x04,0x19,0x0a,0x0c,0x0a,0x05,
0x04,0x09,0x02,0x01,0x05,0x12,0x03,0x41,0x04,0x0a,
0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,0x01,0x01,0x12,
0x03,0x41,0x0b,0x14,0x0a,0x0c,0x0a,0x05,0x04,0x09,
0x02,0x01,0x03,0x12,0x03,0x41,0x17,0x18,0x0a,0x0b,
0x0a,0x04,0x04,0x09,0x02,0x02,0x12,0x03,0x42,0x04,
0x17,0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,0x02,0x05,
0x12,0x03,0x42,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,
0x09,0x02,0x02,0x01,0x12,0x03,0x42,0x0b,0x12,0x0a,
0x0c,0x0a,0x05,0x04,0x09,0x02,0x02,0x03,0x12,0x03,
0x42,0x15,0x16,0x0a,0x0b,0x0a,0x04,0x04,0x09,0x02,
0x03,0x12,0x03,0x43,0x04,0x18,0x0a,0x0c,0x0a,0x05,
0x04,0x09,0x02,0x03,0x05,0x12,0x03,0x43,0x04,0x0a,
0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,0x03,0x01,0x12,
0x03,0x43,0x0b,0x13,0x0a,0x0c,0x0a,0x05,0x04,0x09,
0x02,0x03,0x03,0x12,0x03,0x43,0x16,0x17,0x0a,0x0b,
0x0a,0x04,0x04,0x09,0x02,0x04,0x12,0x03,0x44,0x04,
0x19,0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,0x04,0x05,
0x12,0x03,0x44,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,
0x09,0x02,0x04,0x01,0x12,0x03,0x44,0x0b,0x14,0x0a,
0x0c,0x0a,0x05,0x04,0x09,0x02,0x04,0x03,0x12,0x03,
0x44,0x17,0x18,0x0a,0x0a,0x0a,0x02,0x04,0x0a,0x12,
0x04,0x47,0x00,0x4a,0x01,0x0a,0x0a,0x0a,0x03,0x04,
0x0a,0x01,0x12,0x03,0x47,0x08,0x16,0x0a,0x0b,0x0a,
0x04,0x04,0x0a,0x02,0x00,0x12,0x03,0x48,0x04,0x15,
0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,0x00,0x05,0x12,
0x03,0x48,0x04,0x0b,0x0a,0x0c,0x0a,0x05,0x04,0x0a,
0x02,0x00,0x01,0x12,0x03,0x48,0x0c,0x10,0x0a,0x0c,
0x0a,0x05,0x04,0x0a,0x02,0x00,0x03,0x12,0x03,0x48,
0x13,0x14,0x0a,0x0b,0x0a,0x04,0x04,0x0a,0x02,0x01,
0x12,0x03,0x49,0x04,0x14,0x0a,0x0c,0x0a,0x05,0x04,
0x0a,0x02,0x01,0x05,0x12,0x03,0x49,0x04,0x0a,0x0a,
0x0c,0x0a,0x05,0x04,0x0a,0x02,0x01,0x01,0x12,0x03,
0x49,0x0b,0x0f,0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,
0x01,0x03,0x12,0x03,0x49,0x12,0x13,0x0a,0x0a,0x0a,
0x02,0x04,0x0b,0x12,0x04,0x4c,0x00,0x4e,0x01,0x0a,
0x0a,0x0a,0x03,0x04,0x0b,0x01,0x12,0x03,0x4c,0x08,
0x20,0x0a,0x0b,0x0a,0x04,0x04,0x0b,0x02,0x00,0x12,
0x03,0x4d,0x04,0x26,0x0a,0x0c,0x0a,0x05,0x04,0x0b,
0x02,0x00,0x04,0x12,0x03,0x4d,0x04,0x0c,0x0a,0x0c,
0x0a,0x05,0x04,0x0b,0x02,0x00,0x06,0x12,0x03,0x4d,
0x0d,0x1b,0x0a,0x0c,0x0a,0x05,0x04,0x0b,0x02,0x00,
0x01,0x12,0x03,0x4d,0x1c,0x21,0x0a,0x0c,0x0a,0x05,
0x04,0x0b,0x02,0x00,0x03,0x12,0x03,0x4d,0x24,0x25,
0x0a,0x0a,0x0a,0x02,0x04,0x0c,0x12,0x04,0x50,0x00,
0x55,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x0c,0x01,0x12,
0x03,0x50,0x08,0x22,0x0a,0x0b,0x0a,0x04,0x04,0x0c,
0x02,0x00,0x12,0x03,0x51,0x04,0x24,0x0a,0x0c,0x0a,
0x05,0x04,0x0c,0x02,0x00,0x06,0x12,0x03,0x51,0x04,
0x15,0x0a,0x0c,0x0a,0x05,0x04,0x0c,0x02,0x00,0x01,
0x12,0x03,0x51,0x16,0x1f,0x0a,0x0c,0x0a,0x05,0x04,
0x0c,0x02,0x00,0x03,0x12,0x03,0x51,0x22,0x23,0x0a,
0x0b,0x0a,0x04,0x04,0x0c,0x02,0x01,0x12,0x03,0x52,
0x04,0x19,0x0a,0x0c,0x0a,0x05,0x04,0x0c,0x02,0x01,
0x05,0x12,0x03,0x52,0x04,0x0a,0x0a,0x0c,0x0a,0x05,
0x04,0x0c,0x02,0x01,0x01,0x12,0x03,0x52,0x0b,0x14,
0x0a,0x0c,0x0a,0x05,0x04,0x0c,0x02,0x01,0x03,0x12,
0x03,0x52,0x17,0x18,0x0a,0x0b,0x0a,0x04,0x04,0x0c,
0x02,0x02,0x12,0x03,0x53,0x04,0x1d,0x0a,0x0c,0x0a,
0x05,0x04,0x0c,0x02,0x02,0x05,0x12,0x03,0x53,0x04,
0x09,0x0a,0x0c,0x0a,0x05,0x04,0x0c,0x02,0x02,0x01,
0x12,0x03,0x53,0x0a,0x18,0x0a,0x0c,0x0a,0x05,0x04,
0x0c,0x02,0x02,0x03,0x12,0x03,0x53,0x1b,0x1c,0x0a,
0x0b,0x0a,0x04,0x04,0x0c,0x02,0x03,0x12,0x03,0x54,
0x04,0x1c,0x0a,0x0c,0x0a,0x05,0x04,0x0c,0x02,0x03,
0x05,0x12,0x03,0x54,0x04,0x09,0x0a,0x0c,0x0a,0x05,
0x04,0x0c,0x02,0x03,0x01,0x12,0x03,0x54,0x0a,0x17,
0x0a,0x0c,0x0a,0x05,0x04,0x0c,0x02,0x03,0x03,0x12,
0x03,0x54,0x1a,0x1b,0x0a,0x0a,0x0a,0x02,0x04,0x0d,
0x12,0x04,0x57,0x00,0x5b,0x01,0x0a,0x0a,0x0a,0x03,
0x04,0x0d,0x01,0x12,0x03,0x57,0x08,0x24,0x0a,0x0b,
0x0a,0x04,0x04,0x0d,0x02,0x00,0x12,0x03,0x58,0x04,
0x1b,0x0a,0x0c,0x0a,0x05,0x04,0x0d,0x02,0x00,0x05,
0x12,0x03,0x58,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,
0x0d,0x02,0x00,0x01,0x12,0x03,0x58,0x0b,0x16,0x0a,
0x0c,0x0a,0x05,0x04,0x0d,0x02,0x00,0x03,0x12,0x03,
0x58,0x19,0x1a,0x0a,0x0b,0x0a,0x04,0x04,0x0d,0x02,
0x01,0x12,0x03,0x59,0x04,0x19,0x0a,0x0c,0x0a,0x05,
0x04,0x0d,0x02,0x01,0x05,0x12,0x03,0x59,0x04,0x0a,
0x0a,0x0c,0x0a,0x05,0x04,0x0d,0x02,0x01,0x01,0x12,
0x03,0x59,0x0b,0x14,0x0a,0x0c,0x0a,0x05,0x04,0x0d,
0x02,0x01,0x03,0x12,0x03,0x59,0x17,0x18,0x0a,0x0b,
0x0a,0x04,0x04,0x0d,0x02,0x02,0x12,0x03,0x5a,0x04,
0x1d,0x0a,0x0c,0x0a,0x05,0x04,0x0d,0x02,0x02,0x05,
0x12,0x03,0x5a,0x04,0x09,0x0a,0x0c,0x0a,0x05,0x04,
0x0d,0x02,0x02,0x01,0x12,0x03,0x5a,0x0a,0x18,0x0a,
0x0c,0x0a,0x05,0x04,0x0d,0x02,0x02,0x03,0x12,0x03,
0x5a,0x1b,0x1c,0x62,0x06,0x70,0x72,0x6f,0x74,0x6f,
0x33,
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,0xef,0x18,0x0a,
0x06,0x12,0x04,0x00,0x00,0x5f,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,0x12,0x03,0x04,0x00,0x26,0x0a,0x0a,
0x0a,0x02,0x04,0x00,0x12,0x04,0x06,0x00,0x0a,0x01,
0x0a,0x0a,0x0a,0x03,0x04,0x00,0x01,0x12,0x03,0x06,
0x08,0x1a,0x0a,0x0b,0x0a,0x04,0x04,0x00,0x02,0x00,
0x12,0x03,0x07,0x04,0x11,0x0a,0x0c,0x0a,0x05,0x04,
0x00,0x02,0x00,0x05,0x12,0x03,0x07,0x04,0x0a,0x0a,
0x0c,0x0a,0x05,0x04,0x00,0x02,0x00,0x01,0x12,0x03,
0x07,0x0b,0x0c,0x0a,0x0c,0x0a,0x05,0x04,0x00,0x02,
0x00,0x03,0x12,0x03,0x07,0x0f,0x10,0x0a,0x0b,0x0a,
0x04,0x04,0x00,0x02,0x01,0x12,0x03,0x08,0x04,0x11,
0x0a,0x0c,0x0a,0x05,0x04,0x00,0x02,0x01,0x05,0x12,
0x03,0x08,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x00,
0x02,0x01,0x01,0x12,0x03,0x08,0x0b,0x0c,0x0a,0x0c,
0x0a,0x05,0x04,0x00,0x02,0x01,0x03,0x12,0x03,0x08,
0x0f,0x10,0x0a,0x0b,0x0a,0x04,0x04,0x00,0x02,0x02,
0x12,0x03,0x09,0x04,0x12,0x0a,0x0c,0x0a,0x05,0x04,
0x00,0x02,0x02,0x05,0x12,0x03,0x09,0x04,0x08,0x0a,
0x0c,0x0a,0x05,0x04,0x00,0x02,0x02,0x01,0x12,0x03,
0x09,0x09,0x0d,0x0a,0x0c,0x0a,0x05,0x04,0x00,0x02,
0x02,0x03,0x12,0x03,0x09,0x10,0x11,0x0a,0x0a,0x0a,
0x02,0x04,0x01,0x12,0x04,0x0c,0x00,0x0e,0x01,0x0a,
0x0a,0x0a,0x03,0x04,0x01,0x01,0x12,0x03,0x0c,0x08,
0x1c,0x0a,0x0b,0x0a,0x04,0x04,0x01,0x02,0x00,0x12,
0x03,0x0d,0x04,0x2c,0x0a,0x0c,0x0a,0x05,0x04,0x01,
0x02,0x00,0x04,0x12,0x03,0x0d,0x04,0x0c,0x0a,0x0c,
0x0a,0x05,0x04,0x01,0x02,0x00,0x06,0x12,0x03,0x0d,
0x0d,0x1f,0x0a,0x0c,0x0a,0x05,0x04,0x01,0x02,0x00,
0x01,0x12,0x03,0x0d,0x20,0x27,0x0a,0x0c,0x0a,0x05,
0x04,0x01,0x02,0x00,0x03,0x12,0x03,0x0d,0x2a,0x2b,
0x0a,0x0a,0x0a,0x02,0x04,0x02,0x12,0x04,0x10,0x00,
0x1a,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x02,0x01,0x12,
0x03,0x10,0x08,0x1c,0x0a,0x0b,0x0a,0x04,0x04,0x02,
0x02,0x00,0x12,0x03,0x11,0x04,0x20,0x0a,0x0c,0x0a,
0x05,0x04,0x02,0x02,0x00,0x05,0x12,0x03,0x11,0x04,
0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x00,0x01,
0x12,0x03,0x11,0x0b,0x1b,0x0a,0x0c,0x0a,0x05,0x04,
0x02,0x02,0x00,0x03,0x12,0x03,0x11,0x1e,0x1f,0x0a,
0x0b,0x0a,0x04,0x04,0x02,0x02,0x01,0x12,0x03,0x12,
0x04,0x17,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x01,
0x05,0x12,0x03,0x12,0x04,0x0a,0x0a,0x0c,0x0a,0x05,
0x04,0x02,0x02,0x01,0x01,0x12,0x03,0x12,0x0b,0x12,
0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x01,0x03,0x12,
0x03,0x12,0x15,0x16,0x0a,0x0b,0x0a,0x04,0x04,0x02,
0x02,0x02,0x12,0x03,0x13,0x04,0x1d,0x0a,0x0c,0x0a,
0x05,0x04,0x02,0x02,0x02,0x05,0x12,0x03,0x13,0x04,
0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x02,0x01,
0x12,0x03,0x13,0x0b,0x18,0x0a,0x0c,0x0a,0x05,0x04,
0x02,0x02,0x02,0x03,0x12,0x03,0x13,0x1b,0x1c,0x0a,
0x0b,0x0a,0x04,0x04,0x02,0x02,0x03,0x12,0x03,0x14,
0x04,0x1d,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x03,
0x04,0x12,0x03,0x14,0x04,0x0c,0x0a,0x0c,0x0a,0x05,
0x04,0x02,0x02,0x03,0x05,0x12,0x03,0x14,0x0d,0x13,
0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x03,0x01,0x12,
0x03,0x14,0x14,0x18,0x0a,0x0c,0x0a,0x05,0x04,0x02,
0x02,0x03,0x03,0x12,0x03,0x14,0x1b,0x1c,0x0a,0x3e,
0x0a,0x04,0x04,0x02,0x02,0x04,0x12,0x03,0x17,0x04,
0x18,0x1a,0x31,0x20,0x45,0x61,0x63,0x68,0x20,0x50,
0x4f,0x56,0x20,0x74,0x61,0x6b,0x65,0x73,0x20,0x75,
0x70,0x20,0x34,0x20,0x62,0x69,0x74,0x73,0x0a,0x20,
0x57,0x65,0x20,0x63,0x61,0x6e,0x20,0x66,0x69,0x74,
0x20,0x38,0x20,0x69,0x6e,0x20,0x68,0x65,0x72,0x65,
0x2e,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x04,
0x05,0x12,0x03,0x17,0x04,0x0a,0x0a,0x0c,0x0a,0x05,
0x04,0x02,0x02,0x04,0x01,0x12,0x03,0x17,0x0b,0x13,
0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x04,0x03,0x12,
0x03,0x17,0x16,0x17,0x0a,0x0b,0x0a,0x04,0x04,0x02,
0x02,0x05,0x12,0x03,0x18,0x04,0x14,0x0a,0x0c,0x0a,
0x05,0x04,0x02,0x02,0x05,0x05,0x12,0x03,0x18,0x04,
0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x05,0x01,
0x12,0x03,0x18,0x0b,0x0f,0x0a,0x0c,0x0a,0x05,0x04,
0x02,0x02,0x05,0x03,0x12,0x03,0x18,0x12,0x13,0x0a,
0x0b,0x0a,0x04,0x04,0x02,0x02,0x06,0x12,0x03,0x19,
0x04,0x30,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x06,
0x04,0x12,0x03,0x19,0x04,0x0c,0x0a,0x0c,0x0a,0x05,
0x04,0x02,0x02,0x06,0x06,0x12,0x03,0x19,0x0d,0x21,
0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x06,0x01,0x12,
0x03,0x19,0x22,0x2b,0x0a,0x0c,0x0a,0x05,0x04,0x02,
0x02,0x06,0x03,0x12,0x03,0x19,0x2e,0x2f,0x0a,0x0a,
0x0a,0x02,0x04,0x03,0x12,0x04,0x1c,0x00,0x21,0x01,
0x0a,0x0a,0x0a,0x03,0x04,0x03,0x01,0x12,0x03,0x1c,
0x08,0x1b,0x0a,0x0b,0x0a,0x04,0x04,0x03,0x02,0x00,
0x12,0x03,0x1d,0x04,0x1b,0x0a,0x0c,0x0a,0x05,0x04,
0x03,0x02,0x00,0x05,0x12,0x03,0x1d,0x04,0x0a,0x0a,
0x0c,0x0a,0x05,0x04,0x03,0x02,0x00,0x01,0x12,0x03,
0x1d,0x0b,0x16,0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,
0x00,0x03,0x12,0x03,0x1d,0x19,0x1a,0x0a,0x0b,0x0a,
0x04,0x04,0x03,0x02,0x01,0x12,0x03,0x1e,0x04,0x18,
0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,0x01,0x05,0x12,
0x03,0x1e,0x04,0x09,0x0a,0x0c,0x0a,0x05,0x04,0x03,
0x02,0x01,0x01,0x12,0x03,0x1e,0x0a,0x13,0x0a,0x0c,
0x0a,0x05,0x04,0x03,0x02,0x01,0x03,0x12,0x03,0x1e,
0x16,0x17,0x0a,0x0b,0x0a,0x04,0x04,0x03,0x02,0x02,
0x12,0x03,0x1f,0x04,0x30,0x0a,0x0c,0x0a,0x05,0x04,
0x03,0x02,0x02,0x04,0x12,0x03,0x1f,0x04,0x0c,0x0a,
0x0c,0x0a,0x05,0x04,0x03,0x02,0x02,0x06,0x12,0x03,
0x1f,0x0d,0x21,0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,
0x02,0x01,0x12,0x03,0x1f,0x22,0x2b,0x0a,0x0c,0x0a,
0x05,0x04,0x03,0x02,0x02,0x03,0x12,0x03,0x1f,0x2e,
0x2f,0x0a,0x0b,0x0a,0x04,0x04,0x03,0x02,0x03,0x12,
0x03,0x20,0x04,0x1e,0x0a,0x0c,0x0a,0x05,0x04,0x03,
0x02,0x03,0x05,0x12,0x03,0x20,0x04,0x0b,0x0a,0x0c,
0x0a,0x05,0x04,0x03,0x02,0x03,0x01,0x12,0x03,0x20,
0x0c,0x19,0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,0x03,
0x03,0x12,0x03,0x20,0x1c,0x1d,0x0a,0x0a,0x0a,0x02,
0x04,0x04,0x12,0x04,0x23,0x00,0x28,0x01,0x0a,0x0a,
0x0a,0x03,0x04,0x04,0x01,0x12,0x03,0x23,0x08,0x22,
0x0a,0x0b,0x0a,0x04,0x04,0x04,0x02,0x00,0x12,0x03,
0x24,0x04,0x1c,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,
0x17,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x00,0x03,
0x12,0x03,0x24,0x1a,0x1b,0x0a,0x0b,0x0a,0x04,0x04,
0x04,0x02,0x01,0x12,0x03,0x25,0x04,0x17,0x0a,0x0c,
0x0a,0x05,0x04,0x04,0x02,0x01,0x05,0x12,0x03,0x25,
0x04,0x08,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x01,
0x01,0x12,0x03,0x25,0x09,0x12,0x0a,0x0c,0x0a,0x05,
0x04,0x04,0x02,0x01,0x03,0x12,0x03,0x25,0x15,0x16,
0x0a,0x0b,0x0a,0x04,0x04,0x04,0x02,0x02,0x12,0x03,
0x26,0x04,0x1b,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,
0x16,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x02,0x03,
0x12,0x03,0x26,0x19,0x1a,0x0a,0x0b,0x0a,0x04,0x04,
0x04,0x02,0x03,0x12,0x03,0x27,0x04,0x20,0x0a,0x0c,
0x0a,0x05,0x04,0x04,0x02,0x03,0x05,0x12,0x03,0x27,
0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x03,
0x01,0x12,0x03,0x27,0x0b,0x1b,0x0a,0x0c,0x0a,0x05,
0x04,0x04,0x02,0x03,0x03,0x12,0x03,0x27,0x1e,0x1f,
0x0a,0x0a,0x0a,0x02,0x04,0x05,0x12,0x04,0x2a,0x00,
0x2c,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x05,0x01,0x12,
0x03,0x2a,0x08,0x23,0x0a,0x0b,0x0a,0x04,0x04,0x05,
0x02,0x00,0x12,0x03,0x2b,0x04,0x38,0x0a,0x0c,0x0a,
0x05,0x04,0x05,0x02,0x00,0x04,0x12,0x03,0x2b,0x04,
0x0c,0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,0x00,0x06,
0x12,0x03,0x2b,0x0d,0x27,0x0a,0x0c,0x0a,0x05,0x04,
0x05,0x02,0x00,0x01,0x12,0x03,0x2b,0x28,0x33,0x0a,
0x0c,0x0a,0x05,0x04,0x05,0x02,0x00,0x03,0x12,0x03,
0x2b,0x36,0x37,0x0a,0x0a,0x0a,0x02,0x04,0x06,0x12,
0x04,0x2e,0x00,0x32,0x01,0x0a,0x0a,0x0a,0x03,0x04,
0x06,0x01,0x12,0x03,0x2e,0x08,0x1e,0x0a,0x0b,0x0a,
0x04,0x04,0x06,0x02,0x00,0x12,0x03,0x2f,0x04,0x14,
0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x00,0x05,0x12,
0x03,0x2f,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x06,
0x02,0x00,0x01,0x12,0x03,0x2f,0x0b,0x0f,0x0a,0x0c,
0x0a,0x05,0x04,0x06,0x02,0x00,0x03,0x12,0x03,0x2f,
0x12,0x13,0x0a,0x2b,0x0a,0x04,0x04,0x06,0x02,0x01,
0x12,0x03,0x30,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,0x06,0x02,0x01,0x05,0x12,0x03,0x30,0x04,
0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x01,0x01,
0x12,0x03,0x30,0x0b,0x11,0x0a,0x0c,0x0a,0x05,0x04,
0x06,0x02,0x01,0x03,0x12,0x03,0x30,0x14,0x15,0x0a,
0x2b,0x0a,0x04,0x04,0x06,0x02,0x02,0x12,0x03,0x31,
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,0x06,
0x02,0x02,0x05,0x12,0x03,0x31,0x04,0x0a,0x0a,0x0c,
0x0a,0x05,0x04,0x06,0x02,0x02,0x01,0x12,0x03,0x31,
0x0b,0x18,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x02,
0x03,0x12,0x03,0x31,0x1b,0x1c,0x0a,0x0a,0x0a,0x02,
0x04,0x07,0x12,0x04,0x34,0x00,0x36,0x01,0x0a,0x0a,
0x0a,0x03,0x04,0x07,0x01,0x12,0x03,0x34,0x08,0x1f,
0x0a,0x0b,0x0a,0x04,0x04,0x07,0x02,0x00,0x12,0x03,
0x35,0x04,0x30,0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,
0x00,0x04,0x12,0x03,0x35,0x04,0x0c,0x0a,0x0c,0x0a,
0x05,0x04,0x07,0x02,0x00,0x06,0x12,0x03,0x35,0x0d,
0x23,0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,0x00,0x01,
0x12,0x03,0x35,0x24,0x2b,0x0a,0x0c,0x0a,0x05,0x04,
0x07,0x02,0x00,0x03,0x12,0x03,0x35,0x2e,0x2f,0x0a,
0x0a,0x0a,0x02,0x04,0x08,0x12,0x04,0x38,0x00,0x3d,
0x01,0x0a,0x0a,0x0a,0x03,0x04,0x08,0x01,0x12,0x03,
0x38,0x08,0x19,0x0a,0x0b,0x0a,0x04,0x04,0x08,0x02,
0x00,0x12,0x03,0x39,0x04,0x19,0x0a,0x0c,0x0a,0x05,
0x04,0x08,0x02,0x00,0x05,0x12,0x03,0x39,0x04,0x0a,
0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x00,0x01,0x12,
0x03,0x39,0x0b,0x14,0x0a,0x0c,0x0a,0x05,0x04,0x08,
0x02,0x00,0x03,0x12,0x03,0x39,0x17,0x18,0x0a,0x0b,
0x0a,0x04,0x04,0x08,0x02,0x01,0x12,0x03,0x3a,0x04,
0x1a,0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x01,0x05,
0x12,0x03,0x3a,0x04,0x09,0x0a,0x0c,0x0a,0x05,0x04,
0x08,0x02,0x01,0x01,0x12,0x03,0x3a,0x0a,0x15,0x0a,
0x0c,0x0a,0x05,0x04,0x08,0x02,0x01,0x03,0x12,0x03,
0x3a,0x18,0x19,0x0a,0x0b,0x0a,0x04,0x04,0x08,0x02,
0x02,0x12,0x03,0x3b,0x04,0x1b,0x0a,0x0c,0x0a,0x05,
0x04,0x08,0x02,0x02,0x05,0x12,0x03,0x3b,0x04,0x09,
0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x02,0x01,0x12,
0x03,0x3b,0x0a,0x16,0x0a,0x0c,0x0a,0x05,0x04,0x08,
0x02,0x02,0x03,0x12,0x03,0x3b,0x19,0x1a,0x0a,0x0b,
0x0a,0x04,0x04,0x08,0x02,0x03,0x12,0x03,0x3c,0x04,
0x18,0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x03,0x05,
0x12,0x03,0x3c,0x04,0x09,0x0a,0x0c,0x0a,0x05,0x04,
0x08,0x02,0x03,0x01,0x12,0x03,0x3c,0x0a,0x13,0x0a,
0x0c,0x0a,0x05,0x04,0x08,0x02,0x03,0x03,0x12,0x03,
0x3c,0x16,0x17,0x0a,0x0a,0x0a,0x02,0x04,0x09,0x12,
0x04,0x3f,0x00,0x45,0x01,0x0a,0x0a,0x0a,0x03,0x04,
0x09,0x01,0x12,0x03,0x3f,0x08,0x19,0x0a,0x0b,0x0a,
0x04,0x04,0x09,0x02,0x00,0x12,0x03,0x40,0x04,0x15,
0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,0x00,0x05,0x12,
0x03,0x40,0x04,0x08,0x0a,0x0c,0x0a,0x05,0x04,0x09,
0x02,0x00,0x01,0x12,0x03,0x40,0x09,0x10,0x0a,0x0c,
0x0a,0x05,0x04,0x09,0x02,0x00,0x03,0x12,0x03,0x40,
0x13,0x14,0x0a,0x0b,0x0a,0x04,0x04,0x09,0x02,0x01,
0x12,0x03,0x41,0x04,0x19,0x0a,0x0c,0x0a,0x05,0x04,
0x09,0x02,0x01,0x05,0x12,0x03,0x41,0x04,0x0a,0x0a,
0x0c,0x0a,0x05,0x04,0x09,0x02,0x01,0x01,0x12,0x03,
0x41,0x0b,0x14,0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,
0x01,0x03,0x12,0x03,0x41,0x17,0x18,0x0a,0x0b,0x0a,
0x04,0x04,0x09,0x02,0x02,0x12,0x03,0x42,0x04,0x17,
0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,0x02,0x05,0x12,
0x03,0x42,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x09,
0x02,0x02,0x01,0x12,0x03,0x42,0x0b,0x12,0x0a,0x0c,
0x0a,0x05,0x04,0x09,0x02,0x02,0x03,0x12,0x03,0x42,
0x15,0x16,0x0a,0x0b,0x0a,0x04,0x04,0x09,0x02,0x03,
0x12,0x03,0x43,0x04,0x18,0x0a,0x0c,0x0a,0x05,0x04,
0x09,0x02,0x03,0x05,0x12,0x03,0x43,0x04,0x0a,0x0a,
0x0c,0x0a,0x05,0x04,0x09,0x02,0x03,0x01,0x12,0x03,
0x43,0x0b,0x13,0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,
0x03,0x03,0x12,0x03,0x43,0x16,0x17,0x0a,0x0b,0x0a,
0x04,0x04,0x09,0x02,0x04,0x12,0x03,0x44,0x04,0x19,
0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,0x04,0x05,0x12,
0x03,0x44,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x09,
0x02,0x04,0x01,0x12,0x03,0x44,0x0b,0x14,0x0a,0x0c,
0x0a,0x05,0x04,0x09,0x02,0x04,0x03,0x12,0x03,0x44,
0x17,0x18,0x0a,0x0a,0x0a,0x02,0x04,0x0a,0x12,0x04,
0x47,0x00,0x4e,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x0a,
0x01,0x12,0x03,0x47,0x08,0x16,0x0a,0x0b,0x0a,0x04,
0x04,0x0a,0x02,0x00,0x12,0x03,0x48,0x04,0x15,0x0a,
0x0c,0x0a,0x05,0x04,0x0a,0x02,0x00,0x05,0x12,0x03,
0x48,0x04,0x0b,0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,
0x00,0x01,0x12,0x03,0x48,0x0c,0x10,0x0a,0x0c,0x0a,
0x05,0x04,0x0a,0x02,0x00,0x03,0x12,0x03,0x48,0x13,
0x14,0x0a,0x0b,0x0a,0x04,0x04,0x0a,0x02,0x01,0x12,
0x03,0x49,0x04,0x14,0x0a,0x0c,0x0a,0x05,0x04,0x0a,
0x02,0x01,0x05,0x12,0x03,0x49,0x04,0x0a,0x0a,0x0c,
0x0a,0x05,0x04,0x0a,0x02,0x01,0x01,0x12,0x03,0x49,
0x0b,0x0f,0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,0x01,
0x03,0x12,0x03,0x49,0x12,0x13,0x0a,0x0b,0x0a,0x04,
0x04,0x0a,0x02,0x02,0x12,0x03,0x4a,0x04,0x15,0x0a,
0x0c,0x0a,0x05,0x04,0x0a,0x02,0x02,0x05,0x12,0x03,
0x4a,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,
0x02,0x01,0x12,0x03,0x4a,0x0b,0x10,0x0a,0x0c,0x0a,
0x05,0x04,0x0a,0x02,0x02,0x03,0x12,0x03,0x4a,0x13,
0x14,0x0a,0x0b,0x0a,0x04,0x04,0x0a,0x02,0x03,0x12,
0x03,0x4b,0x04,0x1b,0x0a,0x0c,0x0a,0x05,0x04,0x0a,
0x02,0x03,0x05,0x12,0x03,0x4b,0x04,0x0a,0x0a,0x0c,
0x0a,0x05,0x04,0x0a,0x02,0x03,0x01,0x12,0x03,0x4b,
0x0b,0x16,0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,0x03,
0x03,0x12,0x03,0x4b,0x19,0x1a,0x0a,0x0b,0x0a,0x04,
0x04,0x0a,0x02,0x04,0x12,0x03,0x4c,0x04,0x18,0x0a,
0x0c,0x0a,0x05,0x04,0x0a,0x02,0x04,0x05,0x12,0x03,
0x4c,0x04,0x09,0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,
0x04,0x01,0x12,0x03,0x4c,0x0a,0x13,0x0a,0x0c,0x0a,
0x05,0x04,0x0a,0x02,0x04,0x03,0x12,0x03,0x4c,0x16,
0x17,0x0a,0x0b,0x0a,0x04,0x04,0x0a,0x02,0x05,0x12,
0x03,0x4d,0x04,0x1e,0x0a,0x0c,0x0a,0x05,0x04,0x0a,
0x02,0x05,0x05,0x12,0x03,0x4d,0x04,0x09,0x0a,0x0c,
0x0a,0x05,0x04,0x0a,0x02,0x05,0x01,0x12,0x03,0x4d,
0x0a,0x19,0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,0x05,
0x03,0x12,0x03,0x4d,0x1c,0x1d,0x0a,0x0a,0x0a,0x02,
0x04,0x0b,0x12,0x04,0x50,0x00,0x52,0x01,0x0a,0x0a,
0x0a,0x03,0x04,0x0b,0x01,0x12,0x03,0x50,0x08,0x20,
0x0a,0x0b,0x0a,0x04,0x04,0x0b,0x02,0x00,0x12,0x03,
0x51,0x04,0x26,0x0a,0x0c,0x0a,0x05,0x04,0x0b,0x02,
0x00,0x04,0x12,0x03,0x51,0x04,0x0c,0x0a,0x0c,0x0a,
0x05,0x04,0x0b,0x02,0x00,0x06,0x12,0x03,0x51,0x0d,
0x1b,0x0a,0x0c,0x0a,0x05,0x04,0x0b,0x02,0x00,0x01,
0x12,0x03,0x51,0x1c,0x21,0x0a,0x0c,0x0a,0x05,0x04,
0x0b,0x02,0x00,0x03,0x12,0x03,0x51,0x24,0x25,0x0a,
0x0a,0x0a,0x02,0x04,0x0c,0x12,0x04,0x54,0x00,0x59,
0x01,0x0a,0x0a,0x0a,0x03,0x04,0x0c,0x01,0x12,0x03,
0x54,0x08,0x22,0x0a,0x0b,0x0a,0x04,0x04,0x0c,0x02,
0x00,0x12,0x03,0x55,0x04,0x24,0x0a,0x0c,0x0a,0x05,
0x04,0x0c,0x02,0x00,0x06,0x12,0x03,0x55,0x04,0x15,
0x0a,0x0c,0x0a,0x05,0x04,0x0c,0x02,0x00,0x01,0x12,
0x03,0x55,0x16,0x1f,0x0a,0x0c,0x0a,0x05,0x04,0x0c,
0x02,0x00,0x03,0x12,0x03,0x55,0x22,0x23,0x0a,0x0b,
0x0a,0x04,0x04,0x0c,0x02,0x01,0x12,0x03,0x56,0x04,
0x19,0x0a,0x0c,0x0a,0x05,0x04,0x0c,0x02,0x01,0x05,
0x12,0x03,0x56,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,
0x0c,0x02,0x01,0x01,0x12,0x03,0x56,0x0b,0x14,0x0a,
0x0c,0x0a,0x05,0x04,0x0c,0x02,0x01,0x03,0x12,0x03,
0x56,0x17,0x18,0x0a,0x0b,0x0a,0x04,0x04,0x0c,0x02,
0x02,0x12,0x03,0x57,0x04,0x1d,0x0a,0x0c,0x0a,0x05,
0x04,0x0c,0x02,0x02,0x05,0x12,0x03,0x57,0x04,0x09,
0x0a,0x0c,0x0a,0x05,0x04,0x0c,0x02,0x02,0x01,0x12,
0x03,0x57,0x0a,0x18,0x0a,0x0c,0x0a,0x05,0x04,0x0c,
0x02,0x02,0x03,0x12,0x03,0x57,0x1b,0x1c,0x0a,0x0b,
0x0a,0x04,0x04,0x0c,0x02,0x03,0x12,0x03,0x58,0x04,
0x1c,0x0a,0x0c,0x0a,0x05,0x04,0x0c,0x02,0x03,0x05,
0x12,0x03,0x58,0x04,0x09,0x0a,0x0c,0x0a,0x05,0x04,
0x0c,0x02,0x03,0x01,0x12,0x03,0x58,0x0a,0x17,0x0a,
0x0c,0x0a,0x05,0x04,0x0c,0x02,0x03,0x03,0x12,0x03,
0x58,0x1a,0x1b,0x0a,0x0a,0x0a,0x02,0x04,0x0d,0x12,
0x04,0x5b,0x00,0x5f,0x01,0x0a,0x0a,0x0a,0x03,0x04,
0x0d,0x01,0x12,0x03,0x5b,0x08,0x24,0x0a,0x0b,0x0a,
0x04,0x04,0x0d,0x02,0x00,0x12,0x03,0x5c,0x04,0x1b,
0x0a,0x0c,0x0a,0x05,0x04,0x0d,0x02,0x00,0x05,0x12,
0x03,0x5c,0x04,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x0d,
0x02,0x00,0x01,0x12,0x03,0x5c,0x0b,0x16,0x0a,0x0c,
0x0a,0x05,0x04,0x0d,0x02,0x00,0x03,0x12,0x03,0x5c,
0x19,0x1a,0x0a,0x0b,0x0a,0x04,0x04,0x0d,0x02,0x01,
0x12,0x03,0x5d,0x04,0x19,0x0a,0x0c,0x0a,0x05,0x04,
0x0d,0x02,0x01,0x05,0x12,0x03,0x5d,0x04,0x0a,0x0a,
0x0c,0x0a,0x05,0x04,0x0d,0x02,0x01,0x01,0x12,0x03,
0x5d,0x0b,0x14,0x0a,0x0c,0x0a,0x05,0x04,0x0d,0x02,
0x01,0x03,0x12,0x03,0x5d,0x17,0x18,0x0a,0x0b,0x0a,
0x04,0x04,0x0d,0x02,0x02,0x12,0x03,0x5e,0x04,0x1d,
0x0a,0x0c,0x0a,0x05,0x04,0x0d,0x02,0x02,0x05,0x12,
0x03,0x5e,0x04,0x09,0x0a,0x0c,0x0a,0x05,0x04,0x0d,
0x02,0x02,0x01,0x12,0x03,0x5e,0x0a,0x18,0x0a,0x0c,
0x0a,0x05,0x04,0x0d,0x02,0x02,0x03,0x12,0x03,0x5e,
0x1b,0x1c,0x62,0x06,0x70,0x72,0x6f,0x74,0x6f,0x33,
};
static const char file_name[] = "MrcComm.proto";
static const char mrc_proto_ProtobufFingerData_name[] = "mrc.proto.ProtobufFingerData";

View File

@@ -54,10 +54,10 @@ typedef struct _mrc_proto_ProtobufControlData {
static std::string_view msg_name(void) noexcept;
static pb_filedesc_t file_descriptor(void) noexcept;
uint32_t ControlWord;
int32_t MatchTime;
pb_callback_t Joysticks;
uint64_t CurrentOpMode;
uint32_t ControlWord;
} mrc_proto_ProtobufControlData;
typedef struct _mrc_proto_ProtobufJoystickDescriptor {
@@ -127,6 +127,10 @@ typedef struct _mrc_proto_ProtobufOpMode {
uint64_t Hash;
pb_callback_t Name;
pb_callback_t Group;
pb_callback_t Description;
int32_t TextColor;
int32_t BackgroundColor;
} mrc_proto_ProtobufOpMode;
typedef struct _mrc_proto_ProtobufAvailableOpModes {
@@ -163,28 +167,28 @@ typedef struct _mrc_proto_ProtobufConsoleLineTimestamp {
#define mrc_proto_ProtobufFingerData_init_default {0, 0, 0}
#define mrc_proto_ProtobufTouchpadData_init_default {{{NULL}, NULL}}
#define mrc_proto_ProtobufJoystickData_init_default {0, 0, 0, {{NULL}, NULL}, 0, 0, {{NULL}, NULL}}
#define mrc_proto_ProtobufControlData_init_default {0, 0, {{NULL}, NULL}, 0}
#define mrc_proto_ProtobufControlData_init_default {0, {{NULL}, NULL}, 0, 0}
#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_ProtobufOpMode_init_default {0, {{NULL}, NULL}, {{NULL}, NULL}, {{NULL}, NULL}, 0, 0}
#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_ProtobufFingerData_init_zero {0, 0, 0}
#define mrc_proto_ProtobufTouchpadData_init_zero {{{NULL}, NULL}}
#define mrc_proto_ProtobufJoystickData_init_zero {0, 0, 0, {{NULL}, NULL}, 0, 0, {{NULL}, NULL}}
#define mrc_proto_ProtobufControlData_init_zero {0, 0, {{NULL}, NULL}, 0}
#define mrc_proto_ProtobufControlData_init_zero {0, {{NULL}, NULL}, 0, 0}
#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_ProtobufOpMode_init_zero {0, {{NULL}, NULL}, {{NULL}, NULL}, {{NULL}, NULL}, 0, 0}
#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}
@@ -201,10 +205,10 @@ typedef struct _mrc_proto_ProtobufConsoleLineTimestamp {
#define mrc_proto_ProtobufJoystickData_POVCount_tag 5
#define mrc_proto_ProtobufJoystickData_POVs_tag 6
#define mrc_proto_ProtobufJoystickData_Touchpads_tag 7
#define mrc_proto_ProtobufControlData_ControlWord_tag 1
#define mrc_proto_ProtobufControlData_MatchTime_tag 2
#define mrc_proto_ProtobufControlData_Joysticks_tag 3
#define mrc_proto_ProtobufControlData_CurrentOpMode_tag 4
#define mrc_proto_ProtobufControlData_ControlWord_tag 5
#define mrc_proto_ProtobufJoystickDescriptor_JoystickName_tag 1
#define mrc_proto_ProtobufJoystickDescriptor_IsGamepad_tag 2
#define mrc_proto_ProtobufJoystickDescriptor_GamepadType_tag 3
@@ -225,6 +229,10 @@ typedef struct _mrc_proto_ProtobufConsoleLineTimestamp {
#define mrc_proto_ProtobufErrorInfo_CallStack_tag 5
#define mrc_proto_ProtobufOpMode_Hash_tag 1
#define mrc_proto_ProtobufOpMode_Name_tag 2
#define mrc_proto_ProtobufOpMode_Group_tag 3
#define mrc_proto_ProtobufOpMode_Description_tag 4
#define mrc_proto_ProtobufOpMode_TextColor_tag 5
#define mrc_proto_ProtobufOpMode_BackgroundColor_tag 6
#define mrc_proto_ProtobufAvailableOpModes_Modes_tag 1
#define mrc_proto_ProtobufErrorInfoTimestamp_ErrorInfo_tag 1
#define mrc_proto_ProtobufErrorInfoTimestamp_Timestamp_tag 2
@@ -261,10 +269,10 @@ X(a, CALLBACK, REPEATED, MESSAGE, Touchpads, 7)
#define mrc_proto_ProtobufJoystickData_Touchpads_MSGTYPE mrc_proto_ProtobufTouchpadData
#define mrc_proto_ProtobufControlData_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, UINT32, ControlWord, 1) \
X(a, STATIC, SINGULAR, INT32, MatchTime, 2) \
X(a, CALLBACK, REPEATED, MESSAGE, Joysticks, 3) \
X(a, STATIC, SINGULAR, FIXED64, CurrentOpMode, 4)
X(a, STATIC, SINGULAR, FIXED64, CurrentOpMode, 4) \
X(a, STATIC, SINGULAR, UINT32, ControlWord, 5)
#define mrc_proto_ProtobufControlData_CALLBACK pb_default_field_callback
#define mrc_proto_ProtobufControlData_DEFAULT NULL
#define mrc_proto_ProtobufControlData_Joysticks_MSGTYPE mrc_proto_ProtobufJoystickData
@@ -315,7 +323,11 @@ X(a, CALLBACK, SINGULAR, STRING, CallStack, 5)
#define mrc_proto_ProtobufOpMode_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, FIXED64, Hash, 1) \
X(a, CALLBACK, SINGULAR, STRING, Name, 2)
X(a, CALLBACK, SINGULAR, STRING, Name, 2) \
X(a, CALLBACK, SINGULAR, STRING, Group, 3) \
X(a, CALLBACK, SINGULAR, STRING, Description, 4) \
X(a, STATIC, SINGULAR, INT32, TextColor, 5) \
X(a, STATIC, SINGULAR, INT32, BackgroundColor, 6)
#define mrc_proto_ProtobufOpMode_CALLBACK pb_default_field_callback
#define mrc_proto_ProtobufOpMode_DEFAULT NULL