[wpimath] Add ChassisAccelerations and drivetrain accelerations classes and add forward and inverse kinematics for accelerations to the interface (#8185)

ChassisAccelerations and the drivetrain acceleration types are added in
both Java and C++. `ChassisAccelerations` is basically just
`ChassisSpeeds` but for accelerations!
`DifferentialDriveWheelAccelerations`, `MecanumDriveWheelAccelerations`,
and `SwerveModuleAccelerations` are the acceleration equivalent of the
drivetrain speeds types.

In Java, the `Kinematics` interface now has an additional generic
parameter `A` which represents the accelerations, and
`toChassisAccelerations` and `toWheelAccelerations` methods, which are
implemented the same way as `toChassisSpeeds` and `toWheelSpeeds`.

Protobuf and struct classes were also added for all four classes in Java
and C++.

---------

Signed-off-by: Zach Harel <zach@zharel.me>
Co-authored-by: Joseph Eng <91924258+KangarooKoala@users.noreply.github.com>
Co-authored-by: Tyler Veness <calcmogul@gmail.com>
This commit is contained in:
Zach Harel
2025-12-08 19:25:07 -05:00
committed by GitHub
parent 44cf645632
commit 936be71a7d
101 changed files with 7041 additions and 523 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -24,296 +24,413 @@ static const uint8_t file_descriptor[] {
0x0a,0x02,0x76,0x79,0x18,0x02,0x20,0x01,0x28,0x01,
0x52,0x02,0x76,0x79,0x12,0x14,0x0a,0x05,0x6f,0x6d,
0x65,0x67,0x61,0x18,0x03,0x20,0x01,0x28,0x01,0x52,
0x05,0x6f,0x6d,0x65,0x67,0x61,0x22,0x45,0x0a,0x23,
0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,0x44,0x69,
0x66,0x66,0x65,0x72,0x65,0x6e,0x74,0x69,0x61,0x6c,
0x44,0x72,0x69,0x76,0x65,0x4b,0x69,0x6e,0x65,0x6d,
0x61,0x74,0x69,0x63,0x73,0x12,0x1e,0x0a,0x0a,0x74,
0x72,0x61,0x63,0x6b,0x77,0x69,0x64,0x74,0x68,0x18,
0x01,0x20,0x01,0x28,0x01,0x52,0x0a,0x74,0x72,0x61,
0x63,0x6b,0x77,0x69,0x64,0x74,0x68,0x22,0x50,0x0a,
0x24,0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,0x44,
0x69,0x66,0x66,0x65,0x72,0x65,0x6e,0x74,0x69,0x61,
0x6c,0x44,0x72,0x69,0x76,0x65,0x57,0x68,0x65,0x65,
0x6c,0x53,0x70,0x65,0x65,0x64,0x73,0x12,0x12,0x0a,
0x04,0x6c,0x65,0x66,0x74,0x18,0x01,0x20,0x01,0x28,
0x01,0x52,0x04,0x6c,0x65,0x66,0x74,0x12,0x14,0x0a,
0x05,0x72,0x69,0x67,0x68,0x74,0x18,0x02,0x20,0x01,
0x28,0x01,0x52,0x05,0x72,0x69,0x67,0x68,0x74,0x22,
0x53,0x0a,0x27,0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,
0x66,0x44,0x69,0x66,0x66,0x65,0x72,0x65,0x6e,0x74,
0x69,0x61,0x6c,0x44,0x72,0x69,0x76,0x65,0x57,0x68,
0x65,0x65,0x6c,0x50,0x6f,0x73,0x69,0x74,0x69,0x6f,
0x05,0x6f,0x6d,0x65,0x67,0x61,0x22,0x54,0x0a,0x1c,
0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,0x43,0x68,
0x61,0x73,0x73,0x69,0x73,0x41,0x63,0x63,0x65,0x6c,
0x65,0x72,0x61,0x74,0x69,0x6f,0x6e,0x73,0x12,0x0e,
0x0a,0x02,0x61,0x78,0x18,0x01,0x20,0x01,0x28,0x01,
0x52,0x02,0x61,0x78,0x12,0x0e,0x0a,0x02,0x61,0x79,
0x18,0x02,0x20,0x01,0x28,0x01,0x52,0x02,0x61,0x79,
0x12,0x14,0x0a,0x05,0x61,0x6c,0x70,0x68,0x61,0x18,
0x03,0x20,0x01,0x28,0x01,0x52,0x05,0x61,0x6c,0x70,
0x68,0x61,0x22,0x45,0x0a,0x23,0x50,0x72,0x6f,0x74,
0x6f,0x62,0x75,0x66,0x44,0x69,0x66,0x66,0x65,0x72,
0x65,0x6e,0x74,0x69,0x61,0x6c,0x44,0x72,0x69,0x76,
0x65,0x4b,0x69,0x6e,0x65,0x6d,0x61,0x74,0x69,0x63,
0x73,0x12,0x1e,0x0a,0x0a,0x74,0x72,0x61,0x63,0x6b,
0x77,0x69,0x64,0x74,0x68,0x18,0x01,0x20,0x01,0x28,
0x01,0x52,0x0a,0x74,0x72,0x61,0x63,0x6b,0x77,0x69,
0x64,0x74,0x68,0x22,0x50,0x0a,0x24,0x50,0x72,0x6f,
0x74,0x6f,0x62,0x75,0x66,0x44,0x69,0x66,0x66,0x65,
0x72,0x65,0x6e,0x74,0x69,0x61,0x6c,0x44,0x72,0x69,
0x76,0x65,0x57,0x68,0x65,0x65,0x6c,0x53,0x70,0x65,
0x65,0x64,0x73,0x12,0x12,0x0a,0x04,0x6c,0x65,0x66,
0x74,0x18,0x01,0x20,0x01,0x28,0x01,0x52,0x04,0x6c,
0x65,0x66,0x74,0x12,0x14,0x0a,0x05,0x72,0x69,0x67,
0x68,0x74,0x18,0x02,0x20,0x01,0x28,0x01,0x52,0x05,
0x72,0x69,0x67,0x68,0x74,0x22,0x57,0x0a,0x2b,0x50,
0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,0x44,0x69,0x66,
0x66,0x65,0x72,0x65,0x6e,0x74,0x69,0x61,0x6c,0x44,
0x72,0x69,0x76,0x65,0x57,0x68,0x65,0x65,0x6c,0x41,
0x63,0x63,0x65,0x6c,0x65,0x72,0x61,0x74,0x69,0x6f,
0x6e,0x73,0x12,0x12,0x0a,0x04,0x6c,0x65,0x66,0x74,
0x18,0x01,0x20,0x01,0x28,0x01,0x52,0x04,0x6c,0x65,
0x66,0x74,0x12,0x14,0x0a,0x05,0x72,0x69,0x67,0x68,
0x74,0x18,0x02,0x20,0x01,0x28,0x01,0x52,0x05,0x72,
0x69,0x67,0x68,0x74,0x22,0xa4,0x02,0x0a,0x1e,0x50,
0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,0x4d,0x65,0x63,
0x61,0x6e,0x75,0x6d,0x44,0x72,0x69,0x76,0x65,0x4b,
0x69,0x6e,0x65,0x6d,0x61,0x74,0x69,0x63,0x73,0x12,
0x3f,0x0a,0x0a,0x66,0x72,0x6f,0x6e,0x74,0x5f,0x6c,
0x65,0x66,0x74,0x18,0x01,0x20,0x01,0x28,0x0b,0x32,
0x20,0x2e,0x77,0x70,0x69,0x2e,0x70,0x72,0x6f,0x74,
0x6f,0x2e,0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,
0x54,0x72,0x61,0x6e,0x73,0x6c,0x61,0x74,0x69,0x6f,
0x6e,0x32,0x64,0x52,0x09,0x66,0x72,0x6f,0x6e,0x74,
0x4c,0x65,0x66,0x74,0x12,0x41,0x0a,0x0b,0x66,0x72,
0x6f,0x6e,0x74,0x5f,0x72,0x69,0x67,0x68,0x74,0x18,
0x02,0x20,0x01,0x28,0x0b,0x32,0x20,0x2e,0x77,0x70,
0x69,0x2e,0x70,0x72,0x6f,0x74,0x6f,0x2e,0x50,0x72,
0x6f,0x74,0x6f,0x62,0x75,0x66,0x54,0x72,0x61,0x6e,
0x73,0x6c,0x61,0x74,0x69,0x6f,0x6e,0x32,0x64,0x52,
0x0a,0x66,0x72,0x6f,0x6e,0x74,0x52,0x69,0x67,0x68,
0x74,0x12,0x3d,0x0a,0x09,0x72,0x65,0x61,0x72,0x5f,
0x6c,0x65,0x66,0x74,0x18,0x03,0x20,0x01,0x28,0x0b,
0x32,0x20,0x2e,0x77,0x70,0x69,0x2e,0x70,0x72,0x6f,
0x74,0x6f,0x2e,0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,
0x66,0x54,0x72,0x61,0x6e,0x73,0x6c,0x61,0x74,0x69,
0x6f,0x6e,0x32,0x64,0x52,0x08,0x72,0x65,0x61,0x72,
0x4c,0x65,0x66,0x74,0x12,0x3f,0x0a,0x0a,0x72,0x65,
0x61,0x72,0x5f,0x72,0x69,0x67,0x68,0x74,0x18,0x04,
0x69,0x67,0x68,0x74,0x22,0x53,0x0a,0x27,0x50,0x72,
0x6f,0x74,0x6f,0x62,0x75,0x66,0x44,0x69,0x66,0x66,
0x65,0x72,0x65,0x6e,0x74,0x69,0x61,0x6c,0x44,0x72,
0x69,0x76,0x65,0x57,0x68,0x65,0x65,0x6c,0x50,0x6f,
0x73,0x69,0x74,0x69,0x6f,0x6e,0x73,0x12,0x12,0x0a,
0x04,0x6c,0x65,0x66,0x74,0x18,0x01,0x20,0x01,0x28,
0x01,0x52,0x04,0x6c,0x65,0x66,0x74,0x12,0x14,0x0a,
0x05,0x72,0x69,0x67,0x68,0x74,0x18,0x02,0x20,0x01,
0x28,0x01,0x52,0x05,0x72,0x69,0x67,0x68,0x74,0x22,
0xa4,0x02,0x0a,0x1e,0x50,0x72,0x6f,0x74,0x6f,0x62,
0x75,0x66,0x4d,0x65,0x63,0x61,0x6e,0x75,0x6d,0x44,
0x72,0x69,0x76,0x65,0x4b,0x69,0x6e,0x65,0x6d,0x61,
0x74,0x69,0x63,0x73,0x12,0x3f,0x0a,0x0a,0x66,0x72,
0x6f,0x6e,0x74,0x5f,0x6c,0x65,0x66,0x74,0x18,0x01,
0x20,0x01,0x28,0x0b,0x32,0x20,0x2e,0x77,0x70,0x69,
0x2e,0x70,0x72,0x6f,0x74,0x6f,0x2e,0x50,0x72,0x6f,
0x74,0x6f,0x62,0x75,0x66,0x54,0x72,0x61,0x6e,0x73,
0x6c,0x61,0x74,0x69,0x6f,0x6e,0x32,0x64,0x52,0x09,
0x72,0x65,0x61,0x72,0x52,0x69,0x67,0x68,0x74,0x22,
0xa0,0x01,0x0a,0x22,0x50,0x72,0x6f,0x74,0x6f,0x62,
0x75,0x66,0x4d,0x65,0x63,0x61,0x6e,0x75,0x6d,0x44,
0x72,0x69,0x76,0x65,0x57,0x68,0x65,0x65,0x6c,0x50,
0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x73,0x12,0x1d,
0x0a,0x0a,0x66,0x72,0x6f,0x6e,0x74,0x5f,0x6c,0x65,
0x66,0x74,0x18,0x01,0x20,0x01,0x28,0x01,0x52,0x09,
0x66,0x72,0x6f,0x6e,0x74,0x4c,0x65,0x66,0x74,0x12,
0x1f,0x0a,0x0b,0x66,0x72,0x6f,0x6e,0x74,0x5f,0x72,
0x69,0x67,0x68,0x74,0x18,0x02,0x20,0x01,0x28,0x01,
0x52,0x0a,0x66,0x72,0x6f,0x6e,0x74,0x52,0x69,0x67,
0x68,0x74,0x12,0x1b,0x0a,0x09,0x72,0x65,0x61,0x72,
0x5f,0x6c,0x65,0x66,0x74,0x18,0x03,0x20,0x01,0x28,
0x01,0x52,0x08,0x72,0x65,0x61,0x72,0x4c,0x65,0x66,
0x74,0x12,0x1d,0x0a,0x0a,0x72,0x65,0x61,0x72,0x5f,
0x72,0x69,0x67,0x68,0x74,0x18,0x04,0x20,0x01,0x28,
0x01,0x52,0x09,0x72,0x65,0x61,0x72,0x52,0x69,0x67,
0x68,0x74,0x22,0x9d,0x01,0x0a,0x1f,0x50,0x72,0x6f,
0x74,0x6f,0x62,0x75,0x66,0x4d,0x65,0x63,0x61,0x6e,
0x75,0x6d,0x44,0x72,0x69,0x76,0x65,0x57,0x68,0x65,
0x65,0x6c,0x53,0x70,0x65,0x65,0x64,0x73,0x12,0x1d,
0x0a,0x0a,0x66,0x72,0x6f,0x6e,0x74,0x5f,0x6c,0x65,
0x66,0x74,0x18,0x01,0x20,0x01,0x28,0x01,0x52,0x09,
0x66,0x72,0x6f,0x6e,0x74,0x4c,0x65,0x66,0x74,0x12,
0x1f,0x0a,0x0b,0x66,0x72,0x6f,0x6e,0x74,0x5f,0x72,
0x69,0x67,0x68,0x74,0x18,0x02,0x20,0x01,0x28,0x01,
0x52,0x0a,0x66,0x72,0x6f,0x6e,0x74,0x52,0x69,0x67,
0x68,0x74,0x12,0x1b,0x0a,0x09,0x72,0x65,0x61,0x72,
0x5f,0x6c,0x65,0x66,0x74,0x18,0x03,0x20,0x01,0x28,
0x01,0x52,0x08,0x72,0x65,0x61,0x72,0x4c,0x65,0x66,
0x74,0x12,0x1d,0x0a,0x0a,0x72,0x65,0x61,0x72,0x5f,
0x72,0x69,0x67,0x68,0x74,0x18,0x04,0x20,0x01,0x28,
0x01,0x52,0x09,0x72,0x65,0x61,0x72,0x52,0x69,0x67,
0x68,0x74,0x22,0x5b,0x0a,0x1d,0x50,0x72,0x6f,0x74,
0x6f,0x62,0x75,0x66,0x53,0x77,0x65,0x72,0x76,0x65,
0x44,0x72,0x69,0x76,0x65,0x4b,0x69,0x6e,0x65,0x6d,
0x61,0x74,0x69,0x63,0x73,0x12,0x3a,0x0a,0x07,0x6d,
0x6f,0x64,0x75,0x6c,0x65,0x73,0x18,0x01,0x20,0x03,
0x28,0x0b,0x32,0x20,0x2e,0x77,0x70,0x69,0x2e,0x70,
0x72,0x6f,0x74,0x6f,0x2e,0x50,0x72,0x6f,0x74,0x6f,
0x62,0x75,0x66,0x54,0x72,0x61,0x6e,0x73,0x6c,0x61,
0x74,0x69,0x6f,0x6e,0x32,0x64,0x52,0x07,0x6d,0x6f,
0x64,0x75,0x6c,0x65,0x73,0x22,0x6f,0x0a,0x1c,0x50,
0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,0x53,0x77,0x65,
0x72,0x76,0x65,0x4d,0x6f,0x64,0x75,0x6c,0x65,0x50,
0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x12,0x1a,0x0a,
0x08,0x64,0x69,0x73,0x74,0x61,0x6e,0x63,0x65,0x18,
0x01,0x20,0x01,0x28,0x01,0x52,0x08,0x64,0x69,0x73,
0x74,0x61,0x6e,0x63,0x65,0x12,0x33,0x0a,0x05,0x61,
0x6e,0x67,0x6c,0x65,0x18,0x02,0x20,0x01,0x28,0x0b,
0x32,0x1d,0x2e,0x77,0x70,0x69,0x2e,0x70,0x72,0x6f,
0x41,0x0a,0x0b,0x66,0x72,0x6f,0x6e,0x74,0x5f,0x72,
0x69,0x67,0x68,0x74,0x18,0x02,0x20,0x01,0x28,0x0b,
0x32,0x20,0x2e,0x77,0x70,0x69,0x2e,0x70,0x72,0x6f,
0x74,0x6f,0x2e,0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,
0x66,0x52,0x6f,0x74,0x61,0x74,0x69,0x6f,0x6e,0x32,
0x64,0x52,0x05,0x61,0x6e,0x67,0x6c,0x65,0x22,0x66,
0x0a,0x19,0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,
0x53,0x77,0x65,0x72,0x76,0x65,0x4d,0x6f,0x64,0x75,
0x6c,0x65,0x53,0x74,0x61,0x74,0x65,0x12,0x14,0x0a,
0x05,0x73,0x70,0x65,0x65,0x64,0x18,0x01,0x20,0x01,
0x28,0x01,0x52,0x05,0x73,0x70,0x65,0x65,0x64,0x12,
0x33,0x0a,0x05,0x61,0x6e,0x67,0x6c,0x65,0x18,0x02,
0x20,0x01,0x28,0x0b,0x32,0x1d,0x2e,0x77,0x70,0x69,
0x66,0x54,0x72,0x61,0x6e,0x73,0x6c,0x61,0x74,0x69,
0x6f,0x6e,0x32,0x64,0x52,0x0a,0x66,0x72,0x6f,0x6e,
0x74,0x52,0x69,0x67,0x68,0x74,0x12,0x3d,0x0a,0x09,
0x72,0x65,0x61,0x72,0x5f,0x6c,0x65,0x66,0x74,0x18,
0x03,0x20,0x01,0x28,0x0b,0x32,0x20,0x2e,0x77,0x70,
0x69,0x2e,0x70,0x72,0x6f,0x74,0x6f,0x2e,0x50,0x72,
0x6f,0x74,0x6f,0x62,0x75,0x66,0x54,0x72,0x61,0x6e,
0x73,0x6c,0x61,0x74,0x69,0x6f,0x6e,0x32,0x64,0x52,
0x08,0x72,0x65,0x61,0x72,0x4c,0x65,0x66,0x74,0x12,
0x3f,0x0a,0x0a,0x72,0x65,0x61,0x72,0x5f,0x72,0x69,
0x67,0x68,0x74,0x18,0x04,0x20,0x01,0x28,0x0b,0x32,
0x20,0x2e,0x77,0x70,0x69,0x2e,0x70,0x72,0x6f,0x74,
0x6f,0x2e,0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,
0x54,0x72,0x61,0x6e,0x73,0x6c,0x61,0x74,0x69,0x6f,
0x6e,0x32,0x64,0x52,0x09,0x72,0x65,0x61,0x72,0x52,
0x69,0x67,0x68,0x74,0x22,0xa0,0x01,0x0a,0x22,0x50,
0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,0x4d,0x65,0x63,
0x61,0x6e,0x75,0x6d,0x44,0x72,0x69,0x76,0x65,0x57,
0x68,0x65,0x65,0x6c,0x50,0x6f,0x73,0x69,0x74,0x69,
0x6f,0x6e,0x73,0x12,0x1d,0x0a,0x0a,0x66,0x72,0x6f,
0x6e,0x74,0x5f,0x6c,0x65,0x66,0x74,0x18,0x01,0x20,
0x01,0x28,0x01,0x52,0x09,0x66,0x72,0x6f,0x6e,0x74,
0x4c,0x65,0x66,0x74,0x12,0x1f,0x0a,0x0b,0x66,0x72,
0x6f,0x6e,0x74,0x5f,0x72,0x69,0x67,0x68,0x74,0x18,
0x02,0x20,0x01,0x28,0x01,0x52,0x0a,0x66,0x72,0x6f,
0x6e,0x74,0x52,0x69,0x67,0x68,0x74,0x12,0x1b,0x0a,
0x09,0x72,0x65,0x61,0x72,0x5f,0x6c,0x65,0x66,0x74,
0x18,0x03,0x20,0x01,0x28,0x01,0x52,0x08,0x72,0x65,
0x61,0x72,0x4c,0x65,0x66,0x74,0x12,0x1d,0x0a,0x0a,
0x72,0x65,0x61,0x72,0x5f,0x72,0x69,0x67,0x68,0x74,
0x18,0x04,0x20,0x01,0x28,0x01,0x52,0x09,0x72,0x65,
0x61,0x72,0x52,0x69,0x67,0x68,0x74,0x22,0x9d,0x01,
0x0a,0x1f,0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,
0x4d,0x65,0x63,0x61,0x6e,0x75,0x6d,0x44,0x72,0x69,
0x76,0x65,0x57,0x68,0x65,0x65,0x6c,0x53,0x70,0x65,
0x65,0x64,0x73,0x12,0x1d,0x0a,0x0a,0x66,0x72,0x6f,
0x6e,0x74,0x5f,0x6c,0x65,0x66,0x74,0x18,0x01,0x20,
0x01,0x28,0x01,0x52,0x09,0x66,0x72,0x6f,0x6e,0x74,
0x4c,0x65,0x66,0x74,0x12,0x1f,0x0a,0x0b,0x66,0x72,
0x6f,0x6e,0x74,0x5f,0x72,0x69,0x67,0x68,0x74,0x18,
0x02,0x20,0x01,0x28,0x01,0x52,0x0a,0x66,0x72,0x6f,
0x6e,0x74,0x52,0x69,0x67,0x68,0x74,0x12,0x1b,0x0a,
0x09,0x72,0x65,0x61,0x72,0x5f,0x6c,0x65,0x66,0x74,
0x18,0x03,0x20,0x01,0x28,0x01,0x52,0x08,0x72,0x65,
0x61,0x72,0x4c,0x65,0x66,0x74,0x12,0x1d,0x0a,0x0a,
0x72,0x65,0x61,0x72,0x5f,0x72,0x69,0x67,0x68,0x74,
0x18,0x04,0x20,0x01,0x28,0x01,0x52,0x09,0x72,0x65,
0x61,0x72,0x52,0x69,0x67,0x68,0x74,0x22,0xa4,0x01,
0x0a,0x26,0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,
0x4d,0x65,0x63,0x61,0x6e,0x75,0x6d,0x44,0x72,0x69,
0x76,0x65,0x57,0x68,0x65,0x65,0x6c,0x41,0x63,0x63,
0x65,0x6c,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e,0x73,
0x12,0x1d,0x0a,0x0a,0x66,0x72,0x6f,0x6e,0x74,0x5f,
0x6c,0x65,0x66,0x74,0x18,0x01,0x20,0x01,0x28,0x01,
0x52,0x09,0x66,0x72,0x6f,0x6e,0x74,0x4c,0x65,0x66,
0x74,0x12,0x1f,0x0a,0x0b,0x66,0x72,0x6f,0x6e,0x74,
0x5f,0x72,0x69,0x67,0x68,0x74,0x18,0x02,0x20,0x01,
0x28,0x01,0x52,0x0a,0x66,0x72,0x6f,0x6e,0x74,0x52,
0x69,0x67,0x68,0x74,0x12,0x1b,0x0a,0x09,0x72,0x65,
0x61,0x72,0x5f,0x6c,0x65,0x66,0x74,0x18,0x03,0x20,
0x01,0x28,0x01,0x52,0x08,0x72,0x65,0x61,0x72,0x4c,
0x65,0x66,0x74,0x12,0x1d,0x0a,0x0a,0x72,0x65,0x61,
0x72,0x5f,0x72,0x69,0x67,0x68,0x74,0x18,0x04,0x20,
0x01,0x28,0x01,0x52,0x09,0x72,0x65,0x61,0x72,0x52,
0x69,0x67,0x68,0x74,0x22,0x5b,0x0a,0x1d,0x50,0x72,
0x6f,0x74,0x6f,0x62,0x75,0x66,0x53,0x77,0x65,0x72,
0x76,0x65,0x44,0x72,0x69,0x76,0x65,0x4b,0x69,0x6e,
0x65,0x6d,0x61,0x74,0x69,0x63,0x73,0x12,0x3a,0x0a,
0x07,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x73,0x18,0x01,
0x20,0x03,0x28,0x0b,0x32,0x20,0x2e,0x77,0x70,0x69,
0x2e,0x70,0x72,0x6f,0x74,0x6f,0x2e,0x50,0x72,0x6f,
0x74,0x6f,0x62,0x75,0x66,0x52,0x6f,0x74,0x61,0x74,
0x69,0x6f,0x6e,0x32,0x64,0x52,0x05,0x61,0x6e,0x67,
0x6c,0x65,0x42,0x17,0x0a,0x15,0x6f,0x72,0x67,0x2e,
0x77,0x70,0x69,0x6c,0x69,0x62,0x2e,0x6d,0x61,0x74,
0x68,0x2e,0x70,0x72,0x6f,0x74,0x6f,0x4a,0x99,0x0d,
0x0a,0x06,0x12,0x04,0x00,0x00,0x3d,0x01,0x0a,0x08,
0x0a,0x01,0x0c,0x12,0x03,0x00,0x00,0x12,0x0a,0x08,
0x0a,0x01,0x02,0x12,0x03,0x02,0x00,0x12,0x0a,0x09,
0x0a,0x02,0x03,0x00,0x12,0x03,0x04,0x00,0x1a,0x0a,
0x08,0x0a,0x01,0x08,0x12,0x03,0x06,0x00,0x2e,0x0a,
0x09,0x0a,0x02,0x08,0x01,0x12,0x03,0x06,0x00,0x2e,
0x0a,0x0a,0x0a,0x02,0x04,0x00,0x12,0x04,0x08,0x00,
0x0c,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x00,0x01,0x12,
0x03,0x08,0x08,0x1d,0x0a,0x0b,0x0a,0x04,0x04,0x00,
0x02,0x00,0x12,0x03,0x09,0x02,0x10,0x0a,0x0c,0x0a,
0x05,0x04,0x00,0x02,0x00,0x05,0x12,0x03,0x09,0x02,
0x08,0x0a,0x0c,0x0a,0x05,0x04,0x00,0x02,0x00,0x01,
0x12,0x03,0x09,0x09,0x0b,0x0a,0x0c,0x0a,0x05,0x04,
0x00,0x02,0x00,0x03,0x12,0x03,0x09,0x0e,0x0f,0x0a,
0x0b,0x0a,0x04,0x04,0x00,0x02,0x01,0x12,0x03,0x0a,
0x02,0x10,0x0a,0x0c,0x0a,0x05,0x04,0x00,0x02,0x01,
0x05,0x12,0x03,0x0a,0x02,0x08,0x0a,0x0c,0x0a,0x05,
0x04,0x00,0x02,0x01,0x01,0x12,0x03,0x0a,0x09,0x0b,
0x0a,0x0c,0x0a,0x05,0x04,0x00,0x02,0x01,0x03,0x12,
0x03,0x0a,0x0e,0x0f,0x0a,0x0b,0x0a,0x04,0x04,0x00,
0x02,0x02,0x12,0x03,0x0b,0x02,0x13,0x0a,0x0c,0x0a,
0x05,0x04,0x00,0x02,0x02,0x05,0x12,0x03,0x0b,0x02,
0x08,0x0a,0x0c,0x0a,0x05,0x04,0x00,0x02,0x02,0x01,
0x12,0x03,0x0b,0x09,0x0e,0x0a,0x0c,0x0a,0x05,0x04,
0x00,0x02,0x02,0x03,0x12,0x03,0x0b,0x11,0x12,0x0a,
0x0a,0x0a,0x02,0x04,0x01,0x12,0x04,0x0e,0x00,0x10,
0x01,0x0a,0x0a,0x0a,0x03,0x04,0x01,0x01,0x12,0x03,
0x0e,0x08,0x2b,0x0a,0x0b,0x0a,0x04,0x04,0x01,0x02,
0x00,0x12,0x03,0x0f,0x02,0x18,0x0a,0x0c,0x0a,0x05,
0x04,0x01,0x02,0x00,0x05,0x12,0x03,0x0f,0x02,0x08,
0x0a,0x0c,0x0a,0x05,0x04,0x01,0x02,0x00,0x01,0x12,
0x03,0x0f,0x09,0x13,0x0a,0x0c,0x0a,0x05,0x04,0x01,
0x02,0x00,0x03,0x12,0x03,0x0f,0x16,0x17,0x0a,0x0a,
0x0a,0x02,0x04,0x02,0x12,0x04,0x12,0x00,0x15,0x01,
0x0a,0x0a,0x0a,0x03,0x04,0x02,0x01,0x12,0x03,0x12,
0x08,0x2c,0x0a,0x0b,0x0a,0x04,0x04,0x02,0x02,0x00,
0x12,0x03,0x13,0x02,0x12,0x0a,0x0c,0x0a,0x05,0x04,
0x02,0x02,0x00,0x05,0x12,0x03,0x13,0x02,0x08,0x0a,
0x0c,0x0a,0x05,0x04,0x02,0x02,0x00,0x01,0x12,0x03,
0x13,0x09,0x0d,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,
0x00,0x03,0x12,0x03,0x13,0x10,0x11,0x0a,0x0b,0x0a,
0x04,0x04,0x02,0x02,0x01,0x12,0x03,0x14,0x02,0x13,
0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x01,0x05,0x12,
0x03,0x14,0x02,0x08,0x0a,0x0c,0x0a,0x05,0x04,0x02,
0x02,0x01,0x01,0x12,0x03,0x14,0x09,0x0e,0x0a,0x0c,
0x0a,0x05,0x04,0x02,0x02,0x01,0x03,0x12,0x03,0x14,
0x11,0x12,0x0a,0x0a,0x0a,0x02,0x04,0x03,0x12,0x04,
0x17,0x00,0x1a,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x03,
0x01,0x12,0x03,0x17,0x08,0x2f,0x0a,0x0b,0x0a,0x04,
0x04,0x03,0x02,0x00,0x12,0x03,0x18,0x02,0x12,0x0a,
0x0c,0x0a,0x05,0x04,0x03,0x02,0x00,0x05,0x12,0x03,
0x18,0x02,0x08,0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,
0x00,0x01,0x12,0x03,0x18,0x09,0x0d,0x0a,0x0c,0x0a,
0x05,0x04,0x03,0x02,0x00,0x03,0x12,0x03,0x18,0x10,
0x11,0x0a,0x0b,0x0a,0x04,0x04,0x03,0x02,0x01,0x12,
0x03,0x19,0x02,0x13,0x0a,0x0c,0x0a,0x05,0x04,0x03,
0x02,0x01,0x05,0x12,0x03,0x19,0x02,0x08,0x0a,0x0c,
0x0a,0x05,0x04,0x03,0x02,0x01,0x01,0x12,0x03,0x19,
0x09,0x0e,0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,0x01,
0x03,0x12,0x03,0x19,0x11,0x12,0x0a,0x0a,0x0a,0x02,
0x04,0x04,0x12,0x04,0x1c,0x00,0x21,0x01,0x0a,0x0a,
0x0a,0x03,0x04,0x04,0x01,0x12,0x03,0x1c,0x08,0x26,
0x0a,0x0b,0x0a,0x04,0x04,0x04,0x02,0x00,0x12,0x03,
0x1d,0x02,0x27,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,
0x00,0x06,0x12,0x03,0x1d,0x02,0x17,0x0a,0x0c,0x0a,
0x05,0x04,0x04,0x02,0x00,0x01,0x12,0x03,0x1d,0x18,
0x22,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x00,0x03,
0x12,0x03,0x1d,0x25,0x26,0x0a,0x0b,0x0a,0x04,0x04,
0x04,0x02,0x01,0x12,0x03,0x1e,0x02,0x28,0x0a,0x0c,
0x0a,0x05,0x04,0x04,0x02,0x01,0x06,0x12,0x03,0x1e,
0x02,0x17,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x01,
0x01,0x12,0x03,0x1e,0x18,0x23,0x0a,0x0c,0x0a,0x05,
0x04,0x04,0x02,0x01,0x03,0x12,0x03,0x1e,0x26,0x27,
0x0a,0x0b,0x0a,0x04,0x04,0x04,0x02,0x02,0x12,0x03,
0x1f,0x02,0x26,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,
0x02,0x06,0x12,0x03,0x1f,0x02,0x17,0x0a,0x0c,0x0a,
0x05,0x04,0x04,0x02,0x02,0x01,0x12,0x03,0x1f,0x18,
0x21,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x02,0x03,
0x12,0x03,0x1f,0x24,0x25,0x0a,0x0b,0x0a,0x04,0x04,
0x04,0x02,0x03,0x12,0x03,0x20,0x02,0x27,0x0a,0x0c,
0x0a,0x05,0x04,0x04,0x02,0x03,0x06,0x12,0x03,0x20,
0x02,0x17,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x03,
0x01,0x12,0x03,0x20,0x18,0x22,0x0a,0x0c,0x0a,0x05,
0x04,0x04,0x02,0x03,0x03,0x12,0x03,0x20,0x25,0x26,
0x0a,0x0a,0x0a,0x02,0x04,0x05,0x12,0x04,0x23,0x00,
0x28,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x05,0x01,0x12,
0x03,0x23,0x08,0x2a,0x0a,0x0b,0x0a,0x04,0x04,0x05,
0x02,0x00,0x12,0x03,0x24,0x02,0x18,0x0a,0x0c,0x0a,
0x05,0x04,0x05,0x02,0x00,0x05,0x12,0x03,0x24,0x02,
0x08,0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,0x00,0x01,
0x12,0x03,0x24,0x09,0x13,0x0a,0x0c,0x0a,0x05,0x04,
0x05,0x02,0x00,0x03,0x12,0x03,0x24,0x16,0x17,0x0a,
0x0b,0x0a,0x04,0x04,0x05,0x02,0x01,0x12,0x03,0x25,
0x02,0x19,0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,0x01,
0x05,0x12,0x03,0x25,0x02,0x08,0x0a,0x0c,0x0a,0x05,
0x04,0x05,0x02,0x01,0x01,0x12,0x03,0x25,0x09,0x14,
0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,0x01,0x03,0x12,
0x03,0x25,0x17,0x18,0x0a,0x0b,0x0a,0x04,0x04,0x05,
0x02,0x02,0x12,0x03,0x26,0x02,0x17,0x0a,0x0c,0x0a,
0x05,0x04,0x05,0x02,0x02,0x05,0x12,0x03,0x26,0x02,
0x08,0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,0x02,0x01,
0x12,0x03,0x26,0x09,0x12,0x0a,0x0c,0x0a,0x05,0x04,
0x05,0x02,0x02,0x03,0x12,0x03,0x26,0x15,0x16,0x0a,
0x0b,0x0a,0x04,0x04,0x05,0x02,0x03,0x12,0x03,0x27,
0x02,0x18,0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,0x03,
0x05,0x12,0x03,0x27,0x02,0x08,0x0a,0x0c,0x0a,0x05,
0x04,0x05,0x02,0x03,0x01,0x12,0x03,0x27,0x09,0x13,
0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,0x03,0x03,0x12,
0x03,0x27,0x16,0x17,0x0a,0x0a,0x0a,0x02,0x04,0x06,
0x12,0x04,0x2a,0x00,0x2f,0x01,0x0a,0x0a,0x0a,0x03,
0x04,0x06,0x01,0x12,0x03,0x2a,0x08,0x27,0x0a,0x0b,
0x0a,0x04,0x04,0x06,0x02,0x00,0x12,0x03,0x2b,0x02,
0x18,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x00,0x05,
0x12,0x03,0x2b,0x02,0x08,0x0a,0x0c,0x0a,0x05,0x04,
0x06,0x02,0x00,0x01,0x12,0x03,0x2b,0x09,0x13,0x0a,
0x0c,0x0a,0x05,0x04,0x06,0x02,0x00,0x03,0x12,0x03,
0x2b,0x16,0x17,0x0a,0x0b,0x0a,0x04,0x04,0x06,0x02,
0x01,0x12,0x03,0x2c,0x02,0x19,0x0a,0x0c,0x0a,0x05,
0x04,0x06,0x02,0x01,0x05,0x12,0x03,0x2c,0x02,0x08,
0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x01,0x01,0x12,
0x03,0x2c,0x09,0x14,0x0a,0x0c,0x0a,0x05,0x04,0x06,
0x02,0x01,0x03,0x12,0x03,0x2c,0x17,0x18,0x0a,0x0b,
0x0a,0x04,0x04,0x06,0x02,0x02,0x12,0x03,0x2d,0x02,
0x17,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x02,0x05,
0x12,0x03,0x2d,0x02,0x08,0x0a,0x0c,0x0a,0x05,0x04,
0x06,0x02,0x02,0x01,0x12,0x03,0x2d,0x09,0x12,0x0a,
0x0c,0x0a,0x05,0x04,0x06,0x02,0x02,0x03,0x12,0x03,
0x2d,0x15,0x16,0x0a,0x0b,0x0a,0x04,0x04,0x06,0x02,
0x03,0x12,0x03,0x2e,0x02,0x18,0x0a,0x0c,0x0a,0x05,
0x04,0x06,0x02,0x03,0x05,0x12,0x03,0x2e,0x02,0x08,
0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x03,0x01,0x12,
0x03,0x2e,0x09,0x13,0x0a,0x0c,0x0a,0x05,0x04,0x06,
0x02,0x03,0x03,0x12,0x03,0x2e,0x16,0x17,0x0a,0x0a,
0x0a,0x02,0x04,0x07,0x12,0x04,0x31,0x00,0x33,0x01,
0x0a,0x0a,0x0a,0x03,0x04,0x07,0x01,0x12,0x03,0x31,
0x08,0x25,0x0a,0x0b,0x0a,0x04,0x04,0x07,0x02,0x00,
0x12,0x03,0x32,0x02,0x2d,0x0a,0x0c,0x0a,0x05,0x04,
0x07,0x02,0x00,0x04,0x12,0x03,0x32,0x02,0x0a,0x0a,
0x0c,0x0a,0x05,0x04,0x07,0x02,0x00,0x06,0x12,0x03,
0x32,0x0b,0x20,0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,
0x00,0x01,0x12,0x03,0x32,0x21,0x28,0x0a,0x0c,0x0a,
0x05,0x04,0x07,0x02,0x00,0x03,0x12,0x03,0x32,0x2b,
0x2c,0x0a,0x0a,0x0a,0x02,0x04,0x08,0x12,0x04,0x35,
0x00,0x38,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x08,0x01,
0x12,0x03,0x35,0x08,0x24,0x0a,0x0b,0x0a,0x04,0x04,
0x08,0x02,0x00,0x12,0x03,0x36,0x02,0x16,0x0a,0x0c,
0x0a,0x05,0x04,0x08,0x02,0x00,0x05,0x12,0x03,0x36,
0x02,0x08,0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x00,
0x01,0x12,0x03,0x36,0x09,0x11,0x0a,0x0c,0x0a,0x05,
0x04,0x08,0x02,0x00,0x03,0x12,0x03,0x36,0x14,0x15,
0x0a,0x0b,0x0a,0x04,0x04,0x08,0x02,0x01,0x12,0x03,
0x37,0x02,0x1f,0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,
0x01,0x06,0x12,0x03,0x37,0x02,0x14,0x0a,0x0c,0x0a,
0x05,0x04,0x08,0x02,0x01,0x01,0x12,0x03,0x37,0x15,
0x1a,0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x01,0x03,
0x12,0x03,0x37,0x1d,0x1e,0x0a,0x0a,0x0a,0x02,0x04,
0x09,0x12,0x04,0x3a,0x00,0x3d,0x01,0x0a,0x0a,0x0a,
0x03,0x04,0x09,0x01,0x12,0x03,0x3a,0x08,0x21,0x0a,
0x0b,0x0a,0x04,0x04,0x09,0x02,0x00,0x12,0x03,0x3b,
0x02,0x13,0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,0x00,
0x05,0x12,0x03,0x3b,0x02,0x08,0x0a,0x0c,0x0a,0x05,
0x04,0x09,0x02,0x00,0x01,0x12,0x03,0x3b,0x09,0x0e,
0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,0x00,0x03,0x12,
0x03,0x3b,0x11,0x12,0x0a,0x0b,0x0a,0x04,0x04,0x09,
0x02,0x01,0x12,0x03,0x3c,0x02,0x1f,0x0a,0x0c,0x0a,
0x05,0x04,0x09,0x02,0x01,0x06,0x12,0x03,0x3c,0x02,
0x14,0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,0x01,0x01,
0x12,0x03,0x3c,0x15,0x1a,0x0a,0x0c,0x0a,0x05,0x04,
0x09,0x02,0x01,0x03,0x12,0x03,0x3c,0x1d,0x1e,0x62,
0x06,0x70,0x72,0x6f,0x74,0x6f,0x33,
0x74,0x6f,0x62,0x75,0x66,0x54,0x72,0x61,0x6e,0x73,
0x6c,0x61,0x74,0x69,0x6f,0x6e,0x32,0x64,0x52,0x07,
0x6d,0x6f,0x64,0x75,0x6c,0x65,0x73,0x22,0x6f,0x0a,
0x1c,0x50,0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,0x53,
0x77,0x65,0x72,0x76,0x65,0x4d,0x6f,0x64,0x75,0x6c,
0x65,0x50,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x12,
0x1a,0x0a,0x08,0x64,0x69,0x73,0x74,0x61,0x6e,0x63,
0x65,0x18,0x01,0x20,0x01,0x28,0x01,0x52,0x08,0x64,
0x69,0x73,0x74,0x61,0x6e,0x63,0x65,0x12,0x33,0x0a,
0x05,0x61,0x6e,0x67,0x6c,0x65,0x18,0x02,0x20,0x01,
0x28,0x0b,0x32,0x1d,0x2e,0x77,0x70,0x69,0x2e,0x70,
0x72,0x6f,0x74,0x6f,0x2e,0x50,0x72,0x6f,0x74,0x6f,
0x62,0x75,0x66,0x52,0x6f,0x74,0x61,0x74,0x69,0x6f,
0x6e,0x32,0x64,0x52,0x05,0x61,0x6e,0x67,0x6c,0x65,
0x22,0x66,0x0a,0x19,0x50,0x72,0x6f,0x74,0x6f,0x62,
0x75,0x66,0x53,0x77,0x65,0x72,0x76,0x65,0x4d,0x6f,
0x64,0x75,0x6c,0x65,0x53,0x74,0x61,0x74,0x65,0x12,
0x14,0x0a,0x05,0x73,0x70,0x65,0x65,0x64,0x18,0x01,
0x20,0x01,0x28,0x01,0x52,0x05,0x73,0x70,0x65,0x65,
0x64,0x12,0x33,0x0a,0x05,0x61,0x6e,0x67,0x6c,0x65,
0x18,0x02,0x20,0x01,0x28,0x0b,0x32,0x1d,0x2e,0x77,
0x70,0x69,0x2e,0x70,0x72,0x6f,0x74,0x6f,0x2e,0x50,
0x72,0x6f,0x74,0x6f,0x62,0x75,0x66,0x52,0x6f,0x74,
0x61,0x74,0x69,0x6f,0x6e,0x32,0x64,0x52,0x05,0x61,
0x6e,0x67,0x6c,0x65,0x22,0x7b,0x0a,0x20,0x50,0x72,
0x6f,0x74,0x6f,0x62,0x75,0x66,0x53,0x77,0x65,0x72,
0x76,0x65,0x4d,0x6f,0x64,0x75,0x6c,0x65,0x41,0x63,
0x63,0x65,0x6c,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e,
0x12,0x22,0x0a,0x0c,0x61,0x63,0x63,0x65,0x6c,0x65,
0x72,0x61,0x74,0x69,0x6f,0x6e,0x18,0x01,0x20,0x01,
0x28,0x01,0x52,0x0c,0x61,0x63,0x63,0x65,0x6c,0x65,
0x72,0x61,0x74,0x69,0x6f,0x6e,0x12,0x33,0x0a,0x05,
0x61,0x6e,0x67,0x6c,0x65,0x18,0x02,0x20,0x01,0x28,
0x0b,0x32,0x1d,0x2e,0x77,0x70,0x69,0x2e,0x70,0x72,
0x6f,0x74,0x6f,0x2e,0x50,0x72,0x6f,0x74,0x6f,0x62,
0x75,0x66,0x52,0x6f,0x74,0x61,0x74,0x69,0x6f,0x6e,
0x32,0x64,0x52,0x05,0x61,0x6e,0x67,0x6c,0x65,0x42,
0x17,0x0a,0x15,0x6f,0x72,0x67,0x2e,0x77,0x70,0x69,
0x6c,0x69,0x62,0x2e,0x6d,0x61,0x74,0x68,0x2e,0x70,
0x72,0x6f,0x74,0x6f,0x4a,0xd6,0x12,0x0a,0x06,0x12,
0x04,0x00,0x00,0x54,0x01,0x0a,0x08,0x0a,0x01,0x0c,
0x12,0x03,0x00,0x00,0x12,0x0a,0x08,0x0a,0x01,0x02,
0x12,0x03,0x02,0x00,0x12,0x0a,0x09,0x0a,0x02,0x03,
0x00,0x12,0x03,0x04,0x00,0x1a,0x0a,0x08,0x0a,0x01,
0x08,0x12,0x03,0x06,0x00,0x2e,0x0a,0x09,0x0a,0x02,
0x08,0x01,0x12,0x03,0x06,0x00,0x2e,0x0a,0x0a,0x0a,
0x02,0x04,0x00,0x12,0x04,0x08,0x00,0x0c,0x01,0x0a,
0x0a,0x0a,0x03,0x04,0x00,0x01,0x12,0x03,0x08,0x08,
0x1d,0x0a,0x0b,0x0a,0x04,0x04,0x00,0x02,0x00,0x12,
0x03,0x09,0x02,0x10,0x0a,0x0c,0x0a,0x05,0x04,0x00,
0x02,0x00,0x05,0x12,0x03,0x09,0x02,0x08,0x0a,0x0c,
0x0a,0x05,0x04,0x00,0x02,0x00,0x01,0x12,0x03,0x09,
0x09,0x0b,0x0a,0x0c,0x0a,0x05,0x04,0x00,0x02,0x00,
0x03,0x12,0x03,0x09,0x0e,0x0f,0x0a,0x0b,0x0a,0x04,
0x04,0x00,0x02,0x01,0x12,0x03,0x0a,0x02,0x10,0x0a,
0x0c,0x0a,0x05,0x04,0x00,0x02,0x01,0x05,0x12,0x03,
0x0a,0x02,0x08,0x0a,0x0c,0x0a,0x05,0x04,0x00,0x02,
0x01,0x01,0x12,0x03,0x0a,0x09,0x0b,0x0a,0x0c,0x0a,
0x05,0x04,0x00,0x02,0x01,0x03,0x12,0x03,0x0a,0x0e,
0x0f,0x0a,0x0b,0x0a,0x04,0x04,0x00,0x02,0x02,0x12,
0x03,0x0b,0x02,0x13,0x0a,0x0c,0x0a,0x05,0x04,0x00,
0x02,0x02,0x05,0x12,0x03,0x0b,0x02,0x08,0x0a,0x0c,
0x0a,0x05,0x04,0x00,0x02,0x02,0x01,0x12,0x03,0x0b,
0x09,0x0e,0x0a,0x0c,0x0a,0x05,0x04,0x00,0x02,0x02,
0x03,0x12,0x03,0x0b,0x11,0x12,0x0a,0x0a,0x0a,0x02,
0x04,0x01,0x12,0x04,0x0e,0x00,0x12,0x01,0x0a,0x0a,
0x0a,0x03,0x04,0x01,0x01,0x12,0x03,0x0e,0x08,0x24,
0x0a,0x0b,0x0a,0x04,0x04,0x01,0x02,0x00,0x12,0x03,
0x0f,0x02,0x10,0x0a,0x0c,0x0a,0x05,0x04,0x01,0x02,
0x00,0x05,0x12,0x03,0x0f,0x02,0x08,0x0a,0x0c,0x0a,
0x05,0x04,0x01,0x02,0x00,0x01,0x12,0x03,0x0f,0x09,
0x0b,0x0a,0x0c,0x0a,0x05,0x04,0x01,0x02,0x00,0x03,
0x12,0x03,0x0f,0x0e,0x0f,0x0a,0x0b,0x0a,0x04,0x04,
0x01,0x02,0x01,0x12,0x03,0x10,0x02,0x10,0x0a,0x0c,
0x0a,0x05,0x04,0x01,0x02,0x01,0x05,0x12,0x03,0x10,
0x02,0x08,0x0a,0x0c,0x0a,0x05,0x04,0x01,0x02,0x01,
0x01,0x12,0x03,0x10,0x09,0x0b,0x0a,0x0c,0x0a,0x05,
0x04,0x01,0x02,0x01,0x03,0x12,0x03,0x10,0x0e,0x0f,
0x0a,0x0b,0x0a,0x04,0x04,0x01,0x02,0x02,0x12,0x03,
0x11,0x02,0x13,0x0a,0x0c,0x0a,0x05,0x04,0x01,0x02,
0x02,0x05,0x12,0x03,0x11,0x02,0x08,0x0a,0x0c,0x0a,
0x05,0x04,0x01,0x02,0x02,0x01,0x12,0x03,0x11,0x09,
0x0e,0x0a,0x0c,0x0a,0x05,0x04,0x01,0x02,0x02,0x03,
0x12,0x03,0x11,0x11,0x12,0x0a,0x0a,0x0a,0x02,0x04,
0x02,0x12,0x04,0x14,0x00,0x16,0x01,0x0a,0x0a,0x0a,
0x03,0x04,0x02,0x01,0x12,0x03,0x14,0x08,0x2b,0x0a,
0x0b,0x0a,0x04,0x04,0x02,0x02,0x00,0x12,0x03,0x15,
0x02,0x18,0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x00,
0x05,0x12,0x03,0x15,0x02,0x08,0x0a,0x0c,0x0a,0x05,
0x04,0x02,0x02,0x00,0x01,0x12,0x03,0x15,0x09,0x13,
0x0a,0x0c,0x0a,0x05,0x04,0x02,0x02,0x00,0x03,0x12,
0x03,0x15,0x16,0x17,0x0a,0x0a,0x0a,0x02,0x04,0x03,
0x12,0x04,0x18,0x00,0x1b,0x01,0x0a,0x0a,0x0a,0x03,
0x04,0x03,0x01,0x12,0x03,0x18,0x08,0x2c,0x0a,0x0b,
0x0a,0x04,0x04,0x03,0x02,0x00,0x12,0x03,0x19,0x02,
0x12,0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,0x00,0x05,
0x12,0x03,0x19,0x02,0x08,0x0a,0x0c,0x0a,0x05,0x04,
0x03,0x02,0x00,0x01,0x12,0x03,0x19,0x09,0x0d,0x0a,
0x0c,0x0a,0x05,0x04,0x03,0x02,0x00,0x03,0x12,0x03,
0x19,0x10,0x11,0x0a,0x0b,0x0a,0x04,0x04,0x03,0x02,
0x01,0x12,0x03,0x1a,0x02,0x13,0x0a,0x0c,0x0a,0x05,
0x04,0x03,0x02,0x01,0x05,0x12,0x03,0x1a,0x02,0x08,
0x0a,0x0c,0x0a,0x05,0x04,0x03,0x02,0x01,0x01,0x12,
0x03,0x1a,0x09,0x0e,0x0a,0x0c,0x0a,0x05,0x04,0x03,
0x02,0x01,0x03,0x12,0x03,0x1a,0x11,0x12,0x0a,0x0a,
0x0a,0x02,0x04,0x04,0x12,0x04,0x1d,0x00,0x20,0x01,
0x0a,0x0a,0x0a,0x03,0x04,0x04,0x01,0x12,0x03,0x1d,
0x08,0x33,0x0a,0x0b,0x0a,0x04,0x04,0x04,0x02,0x00,
0x12,0x03,0x1e,0x02,0x12,0x0a,0x0c,0x0a,0x05,0x04,
0x04,0x02,0x00,0x05,0x12,0x03,0x1e,0x02,0x08,0x0a,
0x0c,0x0a,0x05,0x04,0x04,0x02,0x00,0x01,0x12,0x03,
0x1e,0x09,0x0d,0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,
0x00,0x03,0x12,0x03,0x1e,0x10,0x11,0x0a,0x0b,0x0a,
0x04,0x04,0x04,0x02,0x01,0x12,0x03,0x1f,0x02,0x13,
0x0a,0x0c,0x0a,0x05,0x04,0x04,0x02,0x01,0x05,0x12,
0x03,0x1f,0x02,0x08,0x0a,0x0c,0x0a,0x05,0x04,0x04,
0x02,0x01,0x01,0x12,0x03,0x1f,0x09,0x0e,0x0a,0x0c,
0x0a,0x05,0x04,0x04,0x02,0x01,0x03,0x12,0x03,0x1f,
0x11,0x12,0x0a,0x0a,0x0a,0x02,0x04,0x05,0x12,0x04,
0x22,0x00,0x25,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x05,
0x01,0x12,0x03,0x22,0x08,0x2f,0x0a,0x0b,0x0a,0x04,
0x04,0x05,0x02,0x00,0x12,0x03,0x23,0x02,0x12,0x0a,
0x0c,0x0a,0x05,0x04,0x05,0x02,0x00,0x05,0x12,0x03,
0x23,0x02,0x08,0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,
0x00,0x01,0x12,0x03,0x23,0x09,0x0d,0x0a,0x0c,0x0a,
0x05,0x04,0x05,0x02,0x00,0x03,0x12,0x03,0x23,0x10,
0x11,0x0a,0x0b,0x0a,0x04,0x04,0x05,0x02,0x01,0x12,
0x03,0x24,0x02,0x13,0x0a,0x0c,0x0a,0x05,0x04,0x05,
0x02,0x01,0x05,0x12,0x03,0x24,0x02,0x08,0x0a,0x0c,
0x0a,0x05,0x04,0x05,0x02,0x01,0x01,0x12,0x03,0x24,
0x09,0x0e,0x0a,0x0c,0x0a,0x05,0x04,0x05,0x02,0x01,
0x03,0x12,0x03,0x24,0x11,0x12,0x0a,0x0a,0x0a,0x02,
0x04,0x06,0x12,0x04,0x27,0x00,0x2c,0x01,0x0a,0x0a,
0x0a,0x03,0x04,0x06,0x01,0x12,0x03,0x27,0x08,0x26,
0x0a,0x0b,0x0a,0x04,0x04,0x06,0x02,0x00,0x12,0x03,
0x28,0x02,0x27,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,
0x00,0x06,0x12,0x03,0x28,0x02,0x17,0x0a,0x0c,0x0a,
0x05,0x04,0x06,0x02,0x00,0x01,0x12,0x03,0x28,0x18,
0x22,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x00,0x03,
0x12,0x03,0x28,0x25,0x26,0x0a,0x0b,0x0a,0x04,0x04,
0x06,0x02,0x01,0x12,0x03,0x29,0x02,0x28,0x0a,0x0c,
0x0a,0x05,0x04,0x06,0x02,0x01,0x06,0x12,0x03,0x29,
0x02,0x17,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x01,
0x01,0x12,0x03,0x29,0x18,0x23,0x0a,0x0c,0x0a,0x05,
0x04,0x06,0x02,0x01,0x03,0x12,0x03,0x29,0x26,0x27,
0x0a,0x0b,0x0a,0x04,0x04,0x06,0x02,0x02,0x12,0x03,
0x2a,0x02,0x26,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,
0x02,0x06,0x12,0x03,0x2a,0x02,0x17,0x0a,0x0c,0x0a,
0x05,0x04,0x06,0x02,0x02,0x01,0x12,0x03,0x2a,0x18,
0x21,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x02,0x03,
0x12,0x03,0x2a,0x24,0x25,0x0a,0x0b,0x0a,0x04,0x04,
0x06,0x02,0x03,0x12,0x03,0x2b,0x02,0x27,0x0a,0x0c,
0x0a,0x05,0x04,0x06,0x02,0x03,0x06,0x12,0x03,0x2b,
0x02,0x17,0x0a,0x0c,0x0a,0x05,0x04,0x06,0x02,0x03,
0x01,0x12,0x03,0x2b,0x18,0x22,0x0a,0x0c,0x0a,0x05,
0x04,0x06,0x02,0x03,0x03,0x12,0x03,0x2b,0x25,0x26,
0x0a,0x0a,0x0a,0x02,0x04,0x07,0x12,0x04,0x2e,0x00,
0x33,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x07,0x01,0x12,
0x03,0x2e,0x08,0x2a,0x0a,0x0b,0x0a,0x04,0x04,0x07,
0x02,0x00,0x12,0x03,0x2f,0x02,0x18,0x0a,0x0c,0x0a,
0x05,0x04,0x07,0x02,0x00,0x05,0x12,0x03,0x2f,0x02,
0x08,0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,0x00,0x01,
0x12,0x03,0x2f,0x09,0x13,0x0a,0x0c,0x0a,0x05,0x04,
0x07,0x02,0x00,0x03,0x12,0x03,0x2f,0x16,0x17,0x0a,
0x0b,0x0a,0x04,0x04,0x07,0x02,0x01,0x12,0x03,0x30,
0x02,0x19,0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,0x01,
0x05,0x12,0x03,0x30,0x02,0x08,0x0a,0x0c,0x0a,0x05,
0x04,0x07,0x02,0x01,0x01,0x12,0x03,0x30,0x09,0x14,
0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,0x01,0x03,0x12,
0x03,0x30,0x17,0x18,0x0a,0x0b,0x0a,0x04,0x04,0x07,
0x02,0x02,0x12,0x03,0x31,0x02,0x17,0x0a,0x0c,0x0a,
0x05,0x04,0x07,0x02,0x02,0x05,0x12,0x03,0x31,0x02,
0x08,0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,0x02,0x01,
0x12,0x03,0x31,0x09,0x12,0x0a,0x0c,0x0a,0x05,0x04,
0x07,0x02,0x02,0x03,0x12,0x03,0x31,0x15,0x16,0x0a,
0x0b,0x0a,0x04,0x04,0x07,0x02,0x03,0x12,0x03,0x32,
0x02,0x18,0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,0x03,
0x05,0x12,0x03,0x32,0x02,0x08,0x0a,0x0c,0x0a,0x05,
0x04,0x07,0x02,0x03,0x01,0x12,0x03,0x32,0x09,0x13,
0x0a,0x0c,0x0a,0x05,0x04,0x07,0x02,0x03,0x03,0x12,
0x03,0x32,0x16,0x17,0x0a,0x0a,0x0a,0x02,0x04,0x08,
0x12,0x04,0x35,0x00,0x3a,0x01,0x0a,0x0a,0x0a,0x03,
0x04,0x08,0x01,0x12,0x03,0x35,0x08,0x27,0x0a,0x0b,
0x0a,0x04,0x04,0x08,0x02,0x00,0x12,0x03,0x36,0x02,
0x18,0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x00,0x05,
0x12,0x03,0x36,0x02,0x08,0x0a,0x0c,0x0a,0x05,0x04,
0x08,0x02,0x00,0x01,0x12,0x03,0x36,0x09,0x13,0x0a,
0x0c,0x0a,0x05,0x04,0x08,0x02,0x00,0x03,0x12,0x03,
0x36,0x16,0x17,0x0a,0x0b,0x0a,0x04,0x04,0x08,0x02,
0x01,0x12,0x03,0x37,0x02,0x19,0x0a,0x0c,0x0a,0x05,
0x04,0x08,0x02,0x01,0x05,0x12,0x03,0x37,0x02,0x08,
0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x01,0x01,0x12,
0x03,0x37,0x09,0x14,0x0a,0x0c,0x0a,0x05,0x04,0x08,
0x02,0x01,0x03,0x12,0x03,0x37,0x17,0x18,0x0a,0x0b,
0x0a,0x04,0x04,0x08,0x02,0x02,0x12,0x03,0x38,0x02,
0x17,0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x02,0x05,
0x12,0x03,0x38,0x02,0x08,0x0a,0x0c,0x0a,0x05,0x04,
0x08,0x02,0x02,0x01,0x12,0x03,0x38,0x09,0x12,0x0a,
0x0c,0x0a,0x05,0x04,0x08,0x02,0x02,0x03,0x12,0x03,
0x38,0x15,0x16,0x0a,0x0b,0x0a,0x04,0x04,0x08,0x02,
0x03,0x12,0x03,0x39,0x02,0x18,0x0a,0x0c,0x0a,0x05,
0x04,0x08,0x02,0x03,0x05,0x12,0x03,0x39,0x02,0x08,
0x0a,0x0c,0x0a,0x05,0x04,0x08,0x02,0x03,0x01,0x12,
0x03,0x39,0x09,0x13,0x0a,0x0c,0x0a,0x05,0x04,0x08,
0x02,0x03,0x03,0x12,0x03,0x39,0x16,0x17,0x0a,0x0a,
0x0a,0x02,0x04,0x09,0x12,0x04,0x3c,0x00,0x41,0x01,
0x0a,0x0a,0x0a,0x03,0x04,0x09,0x01,0x12,0x03,0x3c,
0x08,0x2e,0x0a,0x0b,0x0a,0x04,0x04,0x09,0x02,0x00,
0x12,0x03,0x3d,0x02,0x18,0x0a,0x0c,0x0a,0x05,0x04,
0x09,0x02,0x00,0x05,0x12,0x03,0x3d,0x02,0x08,0x0a,
0x0c,0x0a,0x05,0x04,0x09,0x02,0x00,0x01,0x12,0x03,
0x3d,0x09,0x13,0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,
0x00,0x03,0x12,0x03,0x3d,0x16,0x17,0x0a,0x0b,0x0a,
0x04,0x04,0x09,0x02,0x01,0x12,0x03,0x3e,0x02,0x19,
0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,0x01,0x05,0x12,
0x03,0x3e,0x02,0x08,0x0a,0x0c,0x0a,0x05,0x04,0x09,
0x02,0x01,0x01,0x12,0x03,0x3e,0x09,0x14,0x0a,0x0c,
0x0a,0x05,0x04,0x09,0x02,0x01,0x03,0x12,0x03,0x3e,
0x17,0x18,0x0a,0x0b,0x0a,0x04,0x04,0x09,0x02,0x02,
0x12,0x03,0x3f,0x02,0x17,0x0a,0x0c,0x0a,0x05,0x04,
0x09,0x02,0x02,0x05,0x12,0x03,0x3f,0x02,0x08,0x0a,
0x0c,0x0a,0x05,0x04,0x09,0x02,0x02,0x01,0x12,0x03,
0x3f,0x09,0x12,0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,
0x02,0x03,0x12,0x03,0x3f,0x15,0x16,0x0a,0x0b,0x0a,
0x04,0x04,0x09,0x02,0x03,0x12,0x03,0x40,0x02,0x18,
0x0a,0x0c,0x0a,0x05,0x04,0x09,0x02,0x03,0x05,0x12,
0x03,0x40,0x02,0x08,0x0a,0x0c,0x0a,0x05,0x04,0x09,
0x02,0x03,0x01,0x12,0x03,0x40,0x09,0x13,0x0a,0x0c,
0x0a,0x05,0x04,0x09,0x02,0x03,0x03,0x12,0x03,0x40,
0x16,0x17,0x0a,0x0a,0x0a,0x02,0x04,0x0a,0x12,0x04,
0x43,0x00,0x45,0x01,0x0a,0x0a,0x0a,0x03,0x04,0x0a,
0x01,0x12,0x03,0x43,0x08,0x25,0x0a,0x0b,0x0a,0x04,
0x04,0x0a,0x02,0x00,0x12,0x03,0x44,0x02,0x2d,0x0a,
0x0c,0x0a,0x05,0x04,0x0a,0x02,0x00,0x04,0x12,0x03,
0x44,0x02,0x0a,0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,
0x00,0x06,0x12,0x03,0x44,0x0b,0x20,0x0a,0x0c,0x0a,
0x05,0x04,0x0a,0x02,0x00,0x01,0x12,0x03,0x44,0x21,
0x28,0x0a,0x0c,0x0a,0x05,0x04,0x0a,0x02,0x00,0x03,
0x12,0x03,0x44,0x2b,0x2c,0x0a,0x0a,0x0a,0x02,0x04,
0x0b,0x12,0x04,0x47,0x00,0x4a,0x01,0x0a,0x0a,0x0a,
0x03,0x04,0x0b,0x01,0x12,0x03,0x47,0x08,0x24,0x0a,
0x0b,0x0a,0x04,0x04,0x0b,0x02,0x00,0x12,0x03,0x48,
0x02,0x16,0x0a,0x0c,0x0a,0x05,0x04,0x0b,0x02,0x00,
0x05,0x12,0x03,0x48,0x02,0x08,0x0a,0x0c,0x0a,0x05,
0x04,0x0b,0x02,0x00,0x01,0x12,0x03,0x48,0x09,0x11,
0x0a,0x0c,0x0a,0x05,0x04,0x0b,0x02,0x00,0x03,0x12,
0x03,0x48,0x14,0x15,0x0a,0x0b,0x0a,0x04,0x04,0x0b,
0x02,0x01,0x12,0x03,0x49,0x02,0x1f,0x0a,0x0c,0x0a,
0x05,0x04,0x0b,0x02,0x01,0x06,0x12,0x03,0x49,0x02,
0x14,0x0a,0x0c,0x0a,0x05,0x04,0x0b,0x02,0x01,0x01,
0x12,0x03,0x49,0x15,0x1a,0x0a,0x0c,0x0a,0x05,0x04,
0x0b,0x02,0x01,0x03,0x12,0x03,0x49,0x1d,0x1e,0x0a,
0x0a,0x0a,0x02,0x04,0x0c,0x12,0x04,0x4c,0x00,0x4f,
0x01,0x0a,0x0a,0x0a,0x03,0x04,0x0c,0x01,0x12,0x03,
0x4c,0x08,0x21,0x0a,0x0b,0x0a,0x04,0x04,0x0c,0x02,
0x00,0x12,0x03,0x4d,0x02,0x13,0x0a,0x0c,0x0a,0x05,
0x04,0x0c,0x02,0x00,0x05,0x12,0x03,0x4d,0x02,0x08,
0x0a,0x0c,0x0a,0x05,0x04,0x0c,0x02,0x00,0x01,0x12,
0x03,0x4d,0x09,0x0e,0x0a,0x0c,0x0a,0x05,0x04,0x0c,
0x02,0x00,0x03,0x12,0x03,0x4d,0x11,0x12,0x0a,0x0b,
0x0a,0x04,0x04,0x0c,0x02,0x01,0x12,0x03,0x4e,0x02,
0x1f,0x0a,0x0c,0x0a,0x05,0x04,0x0c,0x02,0x01,0x06,
0x12,0x03,0x4e,0x02,0x14,0x0a,0x0c,0x0a,0x05,0x04,
0x0c,0x02,0x01,0x01,0x12,0x03,0x4e,0x15,0x1a,0x0a,
0x0c,0x0a,0x05,0x04,0x0c,0x02,0x01,0x03,0x12,0x03,
0x4e,0x1d,0x1e,0x0a,0x0a,0x0a,0x02,0x04,0x0d,0x12,
0x04,0x51,0x00,0x54,0x01,0x0a,0x0a,0x0a,0x03,0x04,
0x0d,0x01,0x12,0x03,0x51,0x08,0x28,0x0a,0x0b,0x0a,
0x04,0x04,0x0d,0x02,0x00,0x12,0x03,0x52,0x02,0x1a,
0x0a,0x0c,0x0a,0x05,0x04,0x0d,0x02,0x00,0x05,0x12,
0x03,0x52,0x02,0x08,0x0a,0x0c,0x0a,0x05,0x04,0x0d,
0x02,0x00,0x01,0x12,0x03,0x52,0x09,0x15,0x0a,0x0c,
0x0a,0x05,0x04,0x0d,0x02,0x00,0x03,0x12,0x03,0x52,
0x18,0x19,0x0a,0x0b,0x0a,0x04,0x04,0x0d,0x02,0x01,
0x12,0x03,0x53,0x02,0x1f,0x0a,0x0c,0x0a,0x05,0x04,
0x0d,0x02,0x01,0x06,0x12,0x03,0x53,0x02,0x14,0x0a,
0x0c,0x0a,0x05,0x04,0x0d,0x02,0x01,0x01,0x12,0x03,
0x53,0x15,0x1a,0x0a,0x0c,0x0a,0x05,0x04,0x0d,0x02,
0x01,0x03,0x12,0x03,0x53,0x1d,0x1e,0x62,0x06,0x70,
0x72,0x6f,0x74,0x6f,0x33,
};
static const char file_name[] = "kinematics.proto";
static const char wpi_proto_ProtobufChassisSpeeds_name[] = "wpi.proto.ProtobufChassisSpeeds";
@@ -322,6 +439,12 @@ pb_filedesc_t wpi_proto_ProtobufChassisSpeeds::file_descriptor(void) noexcept {
PB_BIND(wpi_proto_ProtobufChassisSpeeds, wpi_proto_ProtobufChassisSpeeds, AUTO)
static const char wpi_proto_ProtobufChassisAccelerations_name[] = "wpi.proto.ProtobufChassisAccelerations";
std::string_view wpi_proto_ProtobufChassisAccelerations::msg_name(void) noexcept { return wpi_proto_ProtobufChassisAccelerations_name; }
pb_filedesc_t wpi_proto_ProtobufChassisAccelerations::file_descriptor(void) noexcept { return {::file_name, ::file_descriptor}; }
PB_BIND(wpi_proto_ProtobufChassisAccelerations, wpi_proto_ProtobufChassisAccelerations, AUTO)
static const char wpi_proto_ProtobufDifferentialDriveKinematics_name[] = "wpi.proto.ProtobufDifferentialDriveKinematics";
std::string_view wpi_proto_ProtobufDifferentialDriveKinematics::msg_name(void) noexcept { return wpi_proto_ProtobufDifferentialDriveKinematics_name; }
pb_filedesc_t wpi_proto_ProtobufDifferentialDriveKinematics::file_descriptor(void) noexcept { return {::file_name, ::file_descriptor}; }
@@ -334,6 +457,12 @@ pb_filedesc_t wpi_proto_ProtobufDifferentialDriveWheelSpeeds::file_descriptor(vo
PB_BIND(wpi_proto_ProtobufDifferentialDriveWheelSpeeds, wpi_proto_ProtobufDifferentialDriveWheelSpeeds, AUTO)
static const char wpi_proto_ProtobufDifferentialDriveWheelAccelerations_name[] = "wpi.proto.ProtobufDifferentialDriveWheelAccelerations";
std::string_view wpi_proto_ProtobufDifferentialDriveWheelAccelerations::msg_name(void) noexcept { return wpi_proto_ProtobufDifferentialDriveWheelAccelerations_name; }
pb_filedesc_t wpi_proto_ProtobufDifferentialDriveWheelAccelerations::file_descriptor(void) noexcept { return {::file_name, ::file_descriptor}; }
PB_BIND(wpi_proto_ProtobufDifferentialDriveWheelAccelerations, wpi_proto_ProtobufDifferentialDriveWheelAccelerations, AUTO)
static const char wpi_proto_ProtobufDifferentialDriveWheelPositions_name[] = "wpi.proto.ProtobufDifferentialDriveWheelPositions";
std::string_view wpi_proto_ProtobufDifferentialDriveWheelPositions::msg_name(void) noexcept { return wpi_proto_ProtobufDifferentialDriveWheelPositions_name; }
pb_filedesc_t wpi_proto_ProtobufDifferentialDriveWheelPositions::file_descriptor(void) noexcept { return {::file_name, ::file_descriptor}; }
@@ -358,6 +487,12 @@ pb_filedesc_t wpi_proto_ProtobufMecanumDriveWheelSpeeds::file_descriptor(void) n
PB_BIND(wpi_proto_ProtobufMecanumDriveWheelSpeeds, wpi_proto_ProtobufMecanumDriveWheelSpeeds, AUTO)
static const char wpi_proto_ProtobufMecanumDriveWheelAccelerations_name[] = "wpi.proto.ProtobufMecanumDriveWheelAccelerations";
std::string_view wpi_proto_ProtobufMecanumDriveWheelAccelerations::msg_name(void) noexcept { return wpi_proto_ProtobufMecanumDriveWheelAccelerations_name; }
pb_filedesc_t wpi_proto_ProtobufMecanumDriveWheelAccelerations::file_descriptor(void) noexcept { return {::file_name, ::file_descriptor}; }
PB_BIND(wpi_proto_ProtobufMecanumDriveWheelAccelerations, wpi_proto_ProtobufMecanumDriveWheelAccelerations, AUTO)
static const char wpi_proto_ProtobufSwerveDriveKinematics_name[] = "wpi.proto.ProtobufSwerveDriveKinematics";
std::string_view wpi_proto_ProtobufSwerveDriveKinematics::msg_name(void) noexcept { return wpi_proto_ProtobufSwerveDriveKinematics_name; }
pb_filedesc_t wpi_proto_ProtobufSwerveDriveKinematics::file_descriptor(void) noexcept { return {::file_name, ::file_descriptor}; }
@@ -376,6 +511,12 @@ pb_filedesc_t wpi_proto_ProtobufSwerveModuleState::file_descriptor(void) noexcep
PB_BIND(wpi_proto_ProtobufSwerveModuleState, wpi_proto_ProtobufSwerveModuleState, AUTO)
static const char wpi_proto_ProtobufSwerveModuleAcceleration_name[] = "wpi.proto.ProtobufSwerveModuleAcceleration";
std::string_view wpi_proto_ProtobufSwerveModuleAcceleration::msg_name(void) noexcept { return wpi_proto_ProtobufSwerveModuleAcceleration_name; }
pb_filedesc_t wpi_proto_ProtobufSwerveModuleAcceleration::file_descriptor(void) noexcept { return {::file_name, ::file_descriptor}; }
PB_BIND(wpi_proto_ProtobufSwerveModuleAcceleration, wpi_proto_ProtobufSwerveModuleAcceleration, AUTO)
#ifndef PB_CONVERT_DOUBLE_FLOAT
/* On some platforms (such as AVR), double is really float.

View File

@@ -26,6 +26,16 @@ typedef struct _wpi_proto_ProtobufChassisSpeeds {
double omega;
} wpi_proto_ProtobufChassisSpeeds;
typedef struct _wpi_proto_ProtobufChassisAccelerations {
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;
double ax;
double ay;
double alpha;
} wpi_proto_ProtobufChassisAccelerations;
typedef struct _wpi_proto_ProtobufDifferentialDriveKinematics {
static const pb_msgdesc_t* msg_descriptor(void) noexcept;
static std::string_view msg_name(void) noexcept;
@@ -43,6 +53,15 @@ typedef struct _wpi_proto_ProtobufDifferentialDriveWheelSpeeds {
double right;
} wpi_proto_ProtobufDifferentialDriveWheelSpeeds;
typedef struct _wpi_proto_ProtobufDifferentialDriveWheelAccelerations {
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;
double left;
double right;
} wpi_proto_ProtobufDifferentialDriveWheelAccelerations;
typedef struct _wpi_proto_ProtobufDifferentialDriveWheelPositions {
static const pb_msgdesc_t* msg_descriptor(void) noexcept;
static std::string_view msg_name(void) noexcept;
@@ -85,6 +104,17 @@ typedef struct _wpi_proto_ProtobufMecanumDriveWheelSpeeds {
double rear_right;
} wpi_proto_ProtobufMecanumDriveWheelSpeeds;
typedef struct _wpi_proto_ProtobufMecanumDriveWheelAccelerations {
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;
double front_left;
double front_right;
double rear_left;
double rear_right;
} wpi_proto_ProtobufMecanumDriveWheelAccelerations;
typedef struct _wpi_proto_ProtobufSwerveDriveKinematics {
static const pb_msgdesc_t* msg_descriptor(void) noexcept;
static std::string_view msg_name(void) noexcept;
@@ -111,36 +141,58 @@ typedef struct _wpi_proto_ProtobufSwerveModuleState {
pb_callback_t angle;
} wpi_proto_ProtobufSwerveModuleState;
typedef struct _wpi_proto_ProtobufSwerveModuleAcceleration {
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;
double acceleration;
pb_callback_t angle;
} wpi_proto_ProtobufSwerveModuleAcceleration;
/* Initializer values for message structs */
#define wpi_proto_ProtobufChassisSpeeds_init_default {0, 0, 0}
#define wpi_proto_ProtobufChassisAccelerations_init_default {0, 0, 0}
#define wpi_proto_ProtobufDifferentialDriveKinematics_init_default {0}
#define wpi_proto_ProtobufDifferentialDriveWheelSpeeds_init_default {0, 0}
#define wpi_proto_ProtobufDifferentialDriveWheelAccelerations_init_default {0, 0}
#define wpi_proto_ProtobufDifferentialDriveWheelPositions_init_default {0, 0}
#define wpi_proto_ProtobufMecanumDriveKinematics_init_default {{{NULL}, NULL}, {{NULL}, NULL}, {{NULL}, NULL}, {{NULL}, NULL}}
#define wpi_proto_ProtobufMecanumDriveWheelPositions_init_default {0, 0, 0, 0}
#define wpi_proto_ProtobufMecanumDriveWheelSpeeds_init_default {0, 0, 0, 0}
#define wpi_proto_ProtobufMecanumDriveWheelAccelerations_init_default {0, 0, 0, 0}
#define wpi_proto_ProtobufSwerveDriveKinematics_init_default {{{NULL}, NULL}}
#define wpi_proto_ProtobufSwerveModulePosition_init_default {0, {{NULL}, NULL}}
#define wpi_proto_ProtobufSwerveModuleState_init_default {0, {{NULL}, NULL}}
#define wpi_proto_ProtobufSwerveModuleAcceleration_init_default {0, {{NULL}, NULL}}
#define wpi_proto_ProtobufChassisSpeeds_init_zero {0, 0, 0}
#define wpi_proto_ProtobufChassisAccelerations_init_zero {0, 0, 0}
#define wpi_proto_ProtobufDifferentialDriveKinematics_init_zero {0}
#define wpi_proto_ProtobufDifferentialDriveWheelSpeeds_init_zero {0, 0}
#define wpi_proto_ProtobufDifferentialDriveWheelAccelerations_init_zero {0, 0}
#define wpi_proto_ProtobufDifferentialDriveWheelPositions_init_zero {0, 0}
#define wpi_proto_ProtobufMecanumDriveKinematics_init_zero {{{NULL}, NULL}, {{NULL}, NULL}, {{NULL}, NULL}, {{NULL}, NULL}}
#define wpi_proto_ProtobufMecanumDriveWheelPositions_init_zero {0, 0, 0, 0}
#define wpi_proto_ProtobufMecanumDriveWheelSpeeds_init_zero {0, 0, 0, 0}
#define wpi_proto_ProtobufMecanumDriveWheelAccelerations_init_zero {0, 0, 0, 0}
#define wpi_proto_ProtobufSwerveDriveKinematics_init_zero {{{NULL}, NULL}}
#define wpi_proto_ProtobufSwerveModulePosition_init_zero {0, {{NULL}, NULL}}
#define wpi_proto_ProtobufSwerveModuleState_init_zero {0, {{NULL}, NULL}}
#define wpi_proto_ProtobufSwerveModuleAcceleration_init_zero {0, {{NULL}, NULL}}
/* Field tags (for use in manual encoding/decoding) */
#define wpi_proto_ProtobufChassisSpeeds_vx_tag 1
#define wpi_proto_ProtobufChassisSpeeds_vy_tag 2
#define wpi_proto_ProtobufChassisSpeeds_omega_tag 3
#define wpi_proto_ProtobufChassisAccelerations_ax_tag 1
#define wpi_proto_ProtobufChassisAccelerations_ay_tag 2
#define wpi_proto_ProtobufChassisAccelerations_alpha_tag 3
#define wpi_proto_ProtobufDifferentialDriveKinematics_trackwidth_tag 1
#define wpi_proto_ProtobufDifferentialDriveWheelSpeeds_left_tag 1
#define wpi_proto_ProtobufDifferentialDriveWheelSpeeds_right_tag 2
#define wpi_proto_ProtobufDifferentialDriveWheelAccelerations_left_tag 1
#define wpi_proto_ProtobufDifferentialDriveWheelAccelerations_right_tag 2
#define wpi_proto_ProtobufDifferentialDriveWheelPositions_left_tag 1
#define wpi_proto_ProtobufDifferentialDriveWheelPositions_right_tag 2
#define wpi_proto_ProtobufMecanumDriveKinematics_front_left_tag 1
@@ -155,11 +207,17 @@ typedef struct _wpi_proto_ProtobufSwerveModuleState {
#define wpi_proto_ProtobufMecanumDriveWheelSpeeds_front_right_tag 2
#define wpi_proto_ProtobufMecanumDriveWheelSpeeds_rear_left_tag 3
#define wpi_proto_ProtobufMecanumDriveWheelSpeeds_rear_right_tag 4
#define wpi_proto_ProtobufMecanumDriveWheelAccelerations_front_left_tag 1
#define wpi_proto_ProtobufMecanumDriveWheelAccelerations_front_right_tag 2
#define wpi_proto_ProtobufMecanumDriveWheelAccelerations_rear_left_tag 3
#define wpi_proto_ProtobufMecanumDriveWheelAccelerations_rear_right_tag 4
#define wpi_proto_ProtobufSwerveDriveKinematics_modules_tag 1
#define wpi_proto_ProtobufSwerveModulePosition_distance_tag 1
#define wpi_proto_ProtobufSwerveModulePosition_angle_tag 2
#define wpi_proto_ProtobufSwerveModuleState_speed_tag 1
#define wpi_proto_ProtobufSwerveModuleState_angle_tag 2
#define wpi_proto_ProtobufSwerveModuleAcceleration_acceleration_tag 1
#define wpi_proto_ProtobufSwerveModuleAcceleration_angle_tag 2
/* Struct field encoding specification for nanopb */
#define wpi_proto_ProtobufChassisSpeeds_FIELDLIST(X, a) \
@@ -169,6 +227,13 @@ X(a, STATIC, SINGULAR, DOUBLE, omega, 3)
#define wpi_proto_ProtobufChassisSpeeds_CALLBACK NULL
#define wpi_proto_ProtobufChassisSpeeds_DEFAULT NULL
#define wpi_proto_ProtobufChassisAccelerations_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, DOUBLE, ax, 1) \
X(a, STATIC, SINGULAR, DOUBLE, ay, 2) \
X(a, STATIC, SINGULAR, DOUBLE, alpha, 3)
#define wpi_proto_ProtobufChassisAccelerations_CALLBACK NULL
#define wpi_proto_ProtobufChassisAccelerations_DEFAULT NULL
#define wpi_proto_ProtobufDifferentialDriveKinematics_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, DOUBLE, trackwidth, 1)
#define wpi_proto_ProtobufDifferentialDriveKinematics_CALLBACK NULL
@@ -180,6 +245,12 @@ X(a, STATIC, SINGULAR, DOUBLE, right, 2)
#define wpi_proto_ProtobufDifferentialDriveWheelSpeeds_CALLBACK NULL
#define wpi_proto_ProtobufDifferentialDriveWheelSpeeds_DEFAULT NULL
#define wpi_proto_ProtobufDifferentialDriveWheelAccelerations_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, DOUBLE, left, 1) \
X(a, STATIC, SINGULAR, DOUBLE, right, 2)
#define wpi_proto_ProtobufDifferentialDriveWheelAccelerations_CALLBACK NULL
#define wpi_proto_ProtobufDifferentialDriveWheelAccelerations_DEFAULT NULL
#define wpi_proto_ProtobufDifferentialDriveWheelPositions_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, DOUBLE, left, 1) \
X(a, STATIC, SINGULAR, DOUBLE, right, 2)
@@ -214,6 +285,14 @@ X(a, STATIC, SINGULAR, DOUBLE, rear_right, 4)
#define wpi_proto_ProtobufMecanumDriveWheelSpeeds_CALLBACK NULL
#define wpi_proto_ProtobufMecanumDriveWheelSpeeds_DEFAULT NULL
#define wpi_proto_ProtobufMecanumDriveWheelAccelerations_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, DOUBLE, front_left, 1) \
X(a, STATIC, SINGULAR, DOUBLE, front_right, 2) \
X(a, STATIC, SINGULAR, DOUBLE, rear_left, 3) \
X(a, STATIC, SINGULAR, DOUBLE, rear_right, 4)
#define wpi_proto_ProtobufMecanumDriveWheelAccelerations_CALLBACK NULL
#define wpi_proto_ProtobufMecanumDriveWheelAccelerations_DEFAULT NULL
#define wpi_proto_ProtobufSwerveDriveKinematics_FIELDLIST(X, a) \
X(a, CALLBACK, REPEATED, MESSAGE, modules, 1)
#define wpi_proto_ProtobufSwerveDriveKinematics_CALLBACK pb_default_field_callback
@@ -234,16 +313,27 @@ X(a, CALLBACK, OPTIONAL, MESSAGE, angle, 2)
#define wpi_proto_ProtobufSwerveModuleState_DEFAULT NULL
#define wpi_proto_ProtobufSwerveModuleState_angle_MSGTYPE wpi_proto_ProtobufRotation2d
#define wpi_proto_ProtobufSwerveModuleAcceleration_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, DOUBLE, acceleration, 1) \
X(a, CALLBACK, OPTIONAL, MESSAGE, angle, 2)
#define wpi_proto_ProtobufSwerveModuleAcceleration_CALLBACK pb_default_field_callback
#define wpi_proto_ProtobufSwerveModuleAcceleration_DEFAULT NULL
#define wpi_proto_ProtobufSwerveModuleAcceleration_angle_MSGTYPE wpi_proto_ProtobufRotation2d
/* Maximum encoded size of messages (where known) */
/* wpi_proto_ProtobufMecanumDriveKinematics_size depends on runtime parameters */
/* wpi_proto_ProtobufSwerveDriveKinematics_size depends on runtime parameters */
/* wpi_proto_ProtobufSwerveModulePosition_size depends on runtime parameters */
/* wpi_proto_ProtobufSwerveModuleState_size depends on runtime parameters */
/* wpi_proto_ProtobufSwerveModuleAcceleration_size depends on runtime parameters */
#define WPI_PROTO_KINEMATICS_NPB_H_MAX_SIZE wpi_proto_ProtobufMecanumDriveWheelPositions_size
#define wpi_proto_ProtobufChassisAccelerations_size 27
#define wpi_proto_ProtobufChassisSpeeds_size 27
#define wpi_proto_ProtobufDifferentialDriveKinematics_size 9
#define wpi_proto_ProtobufDifferentialDriveWheelAccelerations_size 18
#define wpi_proto_ProtobufDifferentialDriveWheelPositions_size 18
#define wpi_proto_ProtobufDifferentialDriveWheelSpeeds_size 18
#define wpi_proto_ProtobufMecanumDriveWheelAccelerations_size 36
#define wpi_proto_ProtobufMecanumDriveWheelPositions_size 36
#define wpi_proto_ProtobufMecanumDriveWheelSpeeds_size 36