diff --git a/Makefile b/Makefile
index 495324710..418b4c076 100644
--- a/Makefile
+++ b/Makefile
@@ -77,7 +77,7 @@ lint-go: install-golangci-lint
.PHONY: format-go
format-go:
- golangci-lint run --fix
+ $(GOLANGCI_LINT) run --fix
.PHONY: lint-proto
lint-proto: install-buf
diff --git a/api/service/v1alpha1/service.proto b/api/service/v1alpha1/service.proto
index b1e471960..e9a03ec37 100644
--- a/api/service/v1alpha1/service.proto
+++ b/api/service/v1alpha1/service.proto
@@ -90,6 +90,9 @@ service KargoService {
rpc ListAnalysisTemplates(ListAnalysisTemplatesRequest) returns (ListAnalysisTemplatesResponse);
rpc GetAnalysisTemplate(GetAnalysisTemplateRequest) returns (GetAnalysisTemplateResponse);
rpc DeleteAnalysisTemplate(DeleteAnalysisTemplateRequest) returns (DeleteAnalysisTemplateResponse);
+ rpc ListClusterAnalysisTemplates(ListClusterAnalysisTemplatesRequest) returns (ListClusterAnalysisTemplatesResponse);
+ rpc GetClusterAnalysisTemplate(GetClusterAnalysisTemplateRequest) returns (GetClusterAnalysisTemplateResponse);
+ rpc DeleteClusterAnalysisTemplate(DeleteClusterAnalysisTemplateRequest) returns (DeleteClusterAnalysisTemplateResponse);
rpc GetAnalysisRun(GetAnalysisRunRequest) returns (GetAnalysisRunResponse);
rpc ListAnalysisTemplateConfigMaps(ListAnalysisTemplateConfigMapsRequest) returns (ListAnalysisTemplateConfigMapsResponse);
@@ -613,6 +616,24 @@ message GetAnalysisTemplateResponse {
}
}
+message ListClusterAnalysisTemplatesRequest {}
+
+message ListClusterAnalysisTemplatesResponse {
+ repeated github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.ClusterAnalysisTemplate cluster_analysis_templates = 1 [json_name = "clusteranalysisTemplates"];
+}
+
+message GetClusterAnalysisTemplateRequest {
+ string name = 2;
+ RawFormat format = 3;
+}
+
+message GetClusterAnalysisTemplateResponse {
+ oneof result {
+ github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.ClusterAnalysisTemplate cluster_analysis_template = 1 [json_name = "clusterAnalysisTemplate"];
+ bytes raw = 2;
+ }
+}
+
message GetAnalysisRunRequest {
string namespace = 1;
string name = 2;
@@ -635,6 +656,14 @@ message DeleteAnalysisTemplateResponse {
/* explicitly empty */
}
+message DeleteClusterAnalysisTemplateRequest {
+ string name = 2;
+}
+
+message DeleteClusterAnalysisTemplateResponse {
+ /* explicitly empty */
+}
+
message ListProjectEventsRequest {
string project = 1;
}
diff --git a/api/v1alpha1/generated.pb.go b/api/v1alpha1/generated.pb.go
index a3c7fd4a0..180797e4e 100644
--- a/api/v1alpha1/generated.pb.go
+++ b/api/v1alpha1/generated.pb.go
@@ -1696,237 +1696,238 @@ func init() {
}
var fileDescriptor_e26b7f7bbc391025 = []byte{
- // 3673 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x3c, 0x4d, 0x6f, 0x23, 0x47,
- 0x76, 0xd3, 0xa4, 0x44, 0x89, 0x8f, 0xfa, 0xac, 0xd1, 0xd8, 0x5a, 0x6d, 0x2c, 0x4d, 0xda, 0x86,
- 0x61, 0xc7, 0x36, 0x95, 0xf9, 0xf2, 0x7c, 0x38, 0x99, 0x40, 0xa4, 0xe6, 0x43, 0x13, 0xad, 0x47,
- 0x29, 0x8e, 0x67, 0x76, 0x67, 0x67, 0xe0, 0x94, 0xc8, 0x12, 0xd9, 0x11, 0xd9, 0xcd, 0xed, 0x2a,
- 0x6a, 0xad, 0x24, 0x48, 0x36, 0x5f, 0xc0, 0x02, 0xf9, 0x40, 0x0e, 0x46, 0xbc, 0x01, 0x12, 0x20,
- 0x48, 0xce, 0xc9, 0x1f, 0xc8, 0xc1, 0x87, 0x5c, 0x8c, 0xc0, 0x09, 0x8c, 0x24, 0x07, 0x1f, 0x0c,
- 0x21, 0x96, 0x81, 0x1c, 0x7d, 0xcb, 0x65, 0x80, 0x00, 0x41, 0x7d, 0x74, 0x77, 0x75, 0xb3, 0x39,
- 0x62, 0x73, 0xa4, 0xc1, 0x60, 0x6f, 0x54, 0xbd, 0xaf, 0xaa, 0x57, 0xef, 0xbd, 0x7a, 0xef, 0x55,
- 0xb5, 0xe0, 0x62, 0xd3, 0xe1, 0xad, 0xde, 0x76, 0xb9, 0xee, 0x75, 0x56, 0xc9, 0x6e, 0xcf, 0xe1,
- 0xfb, 0xab, 0xbb, 0xc4, 0x6f, 0x7a, 0xab, 0xa4, 0xeb, 0xac, 0xee, 0x9d, 0x23, 0xed, 0x6e, 0x8b,
- 0x9c, 0x5b, 0x6d, 0x52, 0x97, 0xfa, 0x84, 0xd3, 0x46, 0xb9, 0xeb, 0x7b, 0xdc, 0x43, 0xaf, 0x45,
- 0x54, 0x65, 0x45, 0x55, 0x96, 0x54, 0x65, 0xd2, 0x75, 0xca, 0x01, 0xd5, 0xd2, 0x3b, 0x06, 0xef,
- 0xa6, 0xd7, 0xf4, 0x56, 0x25, 0xf1, 0x76, 0x6f, 0x47, 0xfe, 0x25, 0xff, 0x90, 0xbf, 0x14, 0xd3,
- 0xa5, 0xdb, 0xbb, 0x57, 0x58, 0xd9, 0x91, 0x92, 0xe9, 0x47, 0x9c, 0xba, 0xcc, 0xf1, 0x5c, 0xf6,
- 0x0e, 0xe9, 0x3a, 0x8c, 0xfa, 0x7b, 0xd4, 0x5f, 0xed, 0xee, 0x36, 0x05, 0x8c, 0xc5, 0x11, 0x56,
- 0xf7, 0xfa, 0xa6, 0xb7, 0x74, 0x31, 0xe2, 0xd4, 0x21, 0xf5, 0x96, 0xe3, 0x52, 0x7f, 0x3f, 0x22,
- 0xef, 0x50, 0x4e, 0xd2, 0xa8, 0x56, 0x07, 0x51, 0xf9, 0x3d, 0x97, 0x3b, 0x1d, 0xda, 0x47, 0xf0,
- 0xee, 0x51, 0x04, 0xac, 0xde, 0xa2, 0x1d, 0x92, 0xa4, 0xb3, 0x1f, 0xc1, 0xe9, 0x35, 0x97, 0xb4,
- 0xf7, 0x99, 0xc3, 0x70, 0xcf, 0x5d, 0xf3, 0x9b, 0xbd, 0x0e, 0x75, 0x39, 0x3a, 0x0b, 0x63, 0x2e,
- 0xe9, 0xd0, 0x45, 0xeb, 0xac, 0xf5, 0x46, 0xb1, 0x32, 0xf5, 0xd9, 0xc1, 0xca, 0xa9, 0xc3, 0x83,
- 0x95, 0xb1, 0xf7, 0x49, 0x87, 0x62, 0x09, 0x41, 0xaf, 0xc2, 0xf8, 0x1e, 0x69, 0xf7, 0xe8, 0x62,
- 0x4e, 0xa2, 0x4c, 0x6b, 0x94, 0xf1, 0xfb, 0x62, 0x10, 0x2b, 0x98, 0xfd, 0x47, 0xf9, 0x18, 0xfb,
- 0xef, 0x51, 0x4e, 0x1a, 0x84, 0x13, 0xd4, 0x81, 0x42, 0x9b, 0x6c, 0xd3, 0x36, 0x5b, 0xb4, 0xce,
- 0xe6, 0xdf, 0x28, 0x9d, 0xbf, 0x51, 0x1e, 0x66, 0x13, 0xcb, 0x29, 0xac, 0xca, 0x9b, 0x92, 0xcf,
- 0x0d, 0x97, 0xfb, 0xfb, 0x95, 0x19, 0x3d, 0x89, 0x82, 0x1a, 0xc4, 0x5a, 0x08, 0xfa, 0x03, 0x0b,
- 0x4a, 0xc4, 0x75, 0x3d, 0x4e, 0xb8, 0xd8, 0xa6, 0xc5, 0x9c, 0x14, 0x7a, 0x67, 0x74, 0xa1, 0x6b,
- 0x11, 0x33, 0x25, 0xf9, 0xb4, 0x96, 0x5c, 0x32, 0x20, 0xd8, 0x94, 0xb9, 0x74, 0x15, 0x4a, 0xc6,
- 0x54, 0xd1, 0x1c, 0xe4, 0x77, 0xe9, 0xbe, 0xd2, 0x2f, 0x16, 0x3f, 0xd1, 0x42, 0x4c, 0xa1, 0x5a,
- 0x83, 0xd7, 0x72, 0x57, 0xac, 0xa5, 0xeb, 0x30, 0x97, 0x14, 0x98, 0x85, 0xde, 0xfe, 0x0b, 0x0b,
- 0x16, 0x8c, 0x55, 0x60, 0xba, 0x43, 0x7d, 0xea, 0xd6, 0x29, 0x5a, 0x85, 0xa2, 0xd8, 0x4b, 0xd6,
- 0x25, 0xf5, 0x60, 0xab, 0xe7, 0xf5, 0x42, 0x8a, 0xef, 0x07, 0x00, 0x1c, 0xe1, 0x84, 0x66, 0x91,
- 0x7b, 0x9a, 0x59, 0x74, 0x5b, 0x84, 0xd1, 0xc5, 0x7c, 0xdc, 0x2c, 0xb6, 0xc4, 0x20, 0x56, 0x30,
- 0xfb, 0x57, 0xe1, 0x3b, 0xc1, 0x7c, 0xee, 0xd1, 0x4e, 0xb7, 0x4d, 0x38, 0x8d, 0x26, 0x75, 0xa4,
- 0xe9, 0xd9, 0xb3, 0x30, 0xbd, 0xd6, 0xed, 0xfa, 0xde, 0x1e, 0x6d, 0xd4, 0x38, 0x69, 0x52, 0xfb,
- 0x0f, 0x2d, 0x38, 0xb3, 0xe6, 0x37, 0xbd, 0xea, 0xfa, 0x5a, 0xb7, 0x7b, 0x9b, 0x92, 0x36, 0x6f,
- 0xd5, 0x38, 0xe1, 0x3d, 0x86, 0xae, 0x43, 0x81, 0xc9, 0x5f, 0x9a, 0xdd, 0xeb, 0x81, 0x85, 0x28,
- 0xf8, 0x93, 0x83, 0x95, 0x85, 0x14, 0x42, 0x8a, 0x35, 0x15, 0x7a, 0x13, 0x26, 0x3a, 0x94, 0x31,
- 0xd2, 0x0c, 0xd6, 0x3c, 0xab, 0x19, 0x4c, 0x7c, 0x4f, 0x0d, 0xe3, 0x00, 0x6e, 0xff, 0x6b, 0x0e,
- 0x66, 0x43, 0x5e, 0x5a, 0xfc, 0x09, 0x28, 0xb8, 0x07, 0x53, 0x2d, 0x63, 0x85, 0x52, 0xcf, 0xa5,
- 0xf3, 0xef, 0x0d, 0x69, 0xcb, 0x69, 0x4a, 0xaa, 0x2c, 0x68, 0x31, 0x53, 0xe6, 0x28, 0x8e, 0x89,
- 0x41, 0x1d, 0x00, 0xb6, 0xef, 0xd6, 0xb5, 0xd0, 0x31, 0x29, 0xf4, 0x6a, 0x46, 0xa1, 0xb5, 0x90,
- 0x41, 0x05, 0x69, 0x91, 0x10, 0x8d, 0x61, 0x43, 0x80, 0xfd, 0x4f, 0x16, 0x9c, 0x4e, 0xa1, 0x43,
- 0xbf, 0x92, 0xd8, 0xcf, 0xd7, 0xfa, 0xf6, 0x13, 0xf5, 0x91, 0x45, 0xbb, 0xf9, 0x36, 0x4c, 0xfa,
- 0x74, 0xcf, 0x11, 0xb1, 0x5a, 0x6b, 0x78, 0x4e, 0xd3, 0x4f, 0x62, 0x3d, 0x8e, 0x43, 0x0c, 0xf4,
- 0x16, 0x14, 0x83, 0xdf, 0x42, 0xcd, 0x79, 0x61, 0xce, 0x62, 0xe3, 0x02, 0x54, 0x86, 0x23, 0xb8,
- 0xfd, 0xfb, 0x30, 0x5e, 0x6d, 0x11, 0x9f, 0x0b, 0x8b, 0xf1, 0x69, 0xd7, 0xfb, 0x00, 0x6f, 0xea,
- 0x29, 0x86, 0x16, 0x83, 0xd5, 0x30, 0x0e, 0xe0, 0x43, 0x6c, 0xf6, 0x9b, 0x30, 0xb1, 0x47, 0x7d,
- 0x39, 0xdf, 0x7c, 0x9c, 0xd9, 0x7d, 0x35, 0x8c, 0x03, 0xb8, 0xfd, 0x9f, 0x16, 0x2c, 0xc8, 0x19,
- 0xac, 0x3b, 0xac, 0xee, 0xed, 0x51, 0x7f, 0x1f, 0x53, 0xd6, 0x6b, 0x1f, 0xf3, 0x84, 0xd6, 0x61,
- 0x8e, 0xd1, 0xce, 0x1e, 0xf5, 0xab, 0x9e, 0xcb, 0xb8, 0x4f, 0x1c, 0x97, 0xeb, 0x99, 0x2d, 0x6a,
- 0xec, 0xb9, 0x5a, 0x02, 0x8e, 0xfb, 0x28, 0xd0, 0x1b, 0x30, 0xa9, 0xa7, 0x2d, 0x4c, 0x49, 0x28,
- 0x76, 0x4a, 0xec, 0x81, 0x5e, 0x13, 0xc3, 0x21, 0xd4, 0xfe, 0x1f, 0x0b, 0xe6, 0xe5, 0xaa, 0x6a,
- 0xbd, 0x6d, 0x56, 0xf7, 0x9d, 0xae, 0x08, 0x81, 0x2f, 0xe2, 0x92, 0xae, 0xc3, 0x4c, 0x23, 0x50,
- 0xfc, 0xa6, 0xd3, 0x71, 0xb8, 0xf4, 0x91, 0xf1, 0xca, 0x4b, 0x9a, 0xc7, 0xcc, 0x7a, 0x0c, 0x8a,
- 0x13, 0xd8, 0xf6, 0xdf, 0xe4, 0xe1, 0x74, 0x80, 0x42, 0x1b, 0x6b, 0x3e, 0x77, 0x76, 0x48, 0x9d,
- 0x33, 0xd4, 0x80, 0xa9, 0x46, 0x34, 0xcc, 0xb5, 0xe7, 0xfd, 0x52, 0x59, 0x1d, 0xf7, 0x65, 0xf3,
- 0xb8, 0x2f, 0x77, 0x77, 0x9b, 0x62, 0x80, 0x95, 0x45, 0x56, 0x51, 0xde, 0x3b, 0x57, 0xbe, 0xe7,
- 0x74, 0x68, 0xe4, 0xdd, 0x06, 0x7b, 0x8e, 0x63, 0x5c, 0xd1, 0x03, 0xc8, 0x37, 0x1d, 0xae, 0x0f,
- 0xe3, 0x2b, 0xc3, 0xb9, 0xf5, 0x2d, 0x27, 0x69, 0x6a, 0x95, 0x92, 0x16, 0x95, 0xbf, 0xe5, 0x70,
- 0x2c, 0x38, 0xa2, 0x6d, 0x28, 0x38, 0x1d, 0xd2, 0xa4, 0xc1, 0x99, 0x7b, 0x6d, 0x38, 0xde, 0x1b,
- 0x82, 0x26, 0xc9, 0x3d, 0x3c, 0xdd, 0x25, 0x94, 0x61, 0xcd, 0x59, 0xc8, 0xa8, 0x0b, 0x13, 0x51,
- 0x4e, 0x3a, 0xb4, 0x8c, 0x34, 0x67, 0x89, 0x64, 0x48, 0x28, 0xc3, 0x9a, 0xb3, 0xfd, 0x65, 0x0e,
- 0xe6, 0x22, 0xfd, 0x55, 0xbd, 0x4e, 0xc7, 0xe1, 0x68, 0x09, 0x72, 0x4e, 0x43, 0x5b, 0x20, 0x68,
- 0xc2, 0xdc, 0xc6, 0x3a, 0xce, 0x39, 0x0d, 0xf4, 0x3a, 0x14, 0xb6, 0x7d, 0xe2, 0xd6, 0x5b, 0xda,
- 0xf2, 0x42, 0xc6, 0x15, 0x39, 0x8a, 0x35, 0x14, 0xbd, 0x02, 0x79, 0x4e, 0x9a, 0xda, 0xe0, 0x42,
- 0xfd, 0xdd, 0x23, 0x4d, 0x2c, 0xc6, 0x85, 0xa5, 0xb3, 0xde, 0xf6, 0x6f, 0xd1, 0xba, 0xda, 0x79,
- 0xc3, 0xd2, 0x6b, 0x6a, 0x18, 0x07, 0x70, 0x21, 0x91, 0xf4, 0x78, 0xcb, 0xf3, 0x17, 0xc7, 0xe3,
- 0x12, 0xd7, 0xe4, 0x28, 0xd6, 0x50, 0x71, 0x26, 0xd5, 0xe5, 0xfc, 0x39, 0xf5, 0x17, 0x0b, 0xf1,
- 0x33, 0xa9, 0x1a, 0x00, 0x70, 0x84, 0x83, 0x1e, 0x43, 0xa9, 0xee, 0x53, 0xc2, 0x3d, 0x7f, 0x9d,
- 0x70, 0xba, 0x38, 0x91, 0xd9, 0x02, 0x67, 0x45, 0x62, 0x54, 0x8d, 0x58, 0x60, 0x93, 0x9f, 0xfd,
- 0xad, 0x05, 0x8b, 0x91, 0x6a, 0xe5, 0xde, 0x46, 0xc9, 0x80, 0x56, 0x8f, 0x35, 0x40, 0x3d, 0xaf,
- 0x43, 0xa1, 0xe1, 0x34, 0x29, 0xe3, 0x49, 0x2d, 0xaf, 0xcb, 0x51, 0xac, 0xa1, 0xe8, 0x3c, 0x40,
- 0xd3, 0xe1, 0x3a, 0x38, 0x68, 0x65, 0x87, 0x47, 0xd0, 0xad, 0x10, 0x82, 0x0d, 0x2c, 0xf4, 0x00,
- 0x8a, 0x72, 0x9a, 0x23, 0xba, 0x9d, 0x3c, 0x2a, 0xaa, 0x01, 0x03, 0x1c, 0xf1, 0xb2, 0xbf, 0x18,
- 0x83, 0x89, 0x9b, 0x3e, 0x75, 0x9a, 0x2d, 0x8e, 0x7e, 0x13, 0x26, 0x3b, 0x3a, 0xa9, 0x94, 0x8b,
- 0x2c, 0x9d, 0xff, 0xe5, 0xe1, 0x64, 0xdc, 0x95, 0x9b, 0x2e, 0x12, 0xd2, 0x68, 0x21, 0xd1, 0x18,
- 0x0e, 0xb9, 0x8a, 0x84, 0x8c, 0xb4, 0x1d, 0xc2, 0xe4, 0xbe, 0x19, 0x09, 0xd9, 0x9a, 0x18, 0xc4,
- 0x0a, 0x86, 0x7e, 0x08, 0x05, 0xcf, 0x77, 0x9a, 0x8e, 0xbb, 0x58, 0x94, 0x93, 0xb8, 0x30, 0x9c,
- 0x0b, 0xe9, 0x55, 0xdc, 0x95, 0xa4, 0x91, 0xf2, 0xd5, 0xdf, 0x58, 0xb3, 0x44, 0x0f, 0x61, 0x42,
- 0x19, 0x53, 0xe0, 0xa0, 0xab, 0x43, 0x07, 0x18, 0x65, 0x8f, 0x91, 0xd1, 0xab, 0xbf, 0x19, 0x0e,
- 0x18, 0xa2, 0x5a, 0x18, 0x5f, 0xc6, 0x24, 0xeb, 0xb7, 0x32, 0xc4, 0x97, 0x81, 0x01, 0xa5, 0x16,
- 0x06, 0x94, 0xf1, 0x2c, 0x4c, 0x65, 0xc8, 0x18, 0x14, 0x41, 0x84, 0x8a, 0x75, 0xe6, 0x52, 0x18,
- 0x41, 0xc5, 0x3a, 0x6d, 0x9a, 0x89, 0xa7, 0x3b, 0x41, 0x62, 0x63, 0x7f, 0x9c, 0x87, 0x79, 0x8d,
- 0x59, 0xf5, 0xda, 0x6d, 0x5a, 0x97, 0xc7, 0xa4, 0x8a, 0x4f, 0xf9, 0xd4, 0xf8, 0xe4, 0xc0, 0xb8,
- 0xc3, 0x69, 0x27, 0x28, 0xc0, 0x2a, 0x99, 0x66, 0x13, 0xc9, 0x28, 0x6f, 0x08, 0x26, 0xaa, 0x06,
- 0x0a, 0x77, 0x49, 0x63, 0x61, 0x25, 0x01, 0xfd, 0x89, 0x05, 0xa7, 0xf7, 0xa8, 0xef, 0xec, 0x38,
- 0x75, 0x59, 0xc1, 0xdc, 0x76, 0x18, 0xf7, 0xfc, 0x7d, 0x7d, 0x22, 0xbc, 0x3b, 0x9c, 0xe4, 0xfb,
- 0x06, 0x83, 0x0d, 0x77, 0xc7, 0xab, 0x7c, 0x57, 0x4b, 0x3b, 0x7d, 0xbf, 0x9f, 0x35, 0x4e, 0x93,
- 0xb7, 0xd4, 0x05, 0x88, 0x66, 0x9b, 0x52, 0x40, 0x6d, 0x9a, 0x05, 0xd4, 0xd0, 0x13, 0x0b, 0x16,
- 0x1b, 0x84, 0x2c, 0xb3, 0xf0, 0xfa, 0xd4, 0x82, 0x92, 0x86, 0x6f, 0x3a, 0x8c, 0xa3, 0x47, 0x7d,
- 0xde, 0x5e, 0x1e, 0xce, 0xdb, 0x05, 0xb5, 0xf4, 0xf5, 0x30, 0x5f, 0x0d, 0x46, 0x0c, 0x4f, 0xc7,
- 0xc1, 0x96, 0x2a, 0xc5, 0xbe, 0x93, 0x69, 0xfe, 0x51, 0x60, 0x90, 0x3a, 0xd2, 0x7b, 0x67, 0xfb,
- 0x30, 0x1d, 0x73, 0x72, 0x74, 0x09, 0xc6, 0x76, 0x1d, 0x37, 0x38, 0xf5, 0x7e, 0x31, 0xc8, 0xa7,
- 0x7e, 0xdd, 0x71, 0x1b, 0x4f, 0x0e, 0x56, 0xe6, 0x63, 0xc8, 0x62, 0x10, 0x4b, 0xf4, 0xa3, 0xd3,
- 0xb0, 0x6b, 0x93, 0x3f, 0xfb, 0xbb, 0x95, 0x53, 0x3f, 0xf9, 0xea, 0xec, 0x29, 0xfb, 0x93, 0x3c,
- 0xcc, 0x25, 0xb5, 0x3a, 0x44, 0x43, 0x22, 0x8a, 0x61, 0x93, 0x27, 0x1a, 0xc3, 0x72, 0x27, 0x17,
- 0xc3, 0xf2, 0x27, 0x11, 0xc3, 0xc6, 0x8e, 0x2d, 0x86, 0xd9, 0xff, 0x6e, 0xc1, 0x4c, 0xb8, 0x33,
- 0x3f, 0xea, 0x89, 0x93, 0x35, 0xd2, 0xba, 0x75, 0xfc, 0x5a, 0xff, 0x10, 0x26, 0x98, 0xd7, 0xf3,
- 0xeb, 0x32, 0x7d, 0x14, 0xdc, 0x2f, 0x66, 0x0b, 0x9a, 0x8a, 0xd6, 0xc8, 0x99, 0xd4, 0x00, 0x0e,
- 0xb8, 0xda, 0x8f, 0xc2, 0xf5, 0x68, 0x90, 0xca, 0x28, 0x7c, 0x91, 0x6f, 0x89, 0xf5, 0x4c, 0x9a,
- 0x19, 0x85, 0x18, 0xc5, 0x1a, 0x8a, 0x6c, 0x19, 0xce, 0x83, 0xc4, 0xb6, 0x58, 0x01, 0x1d, 0x95,
- 0xe5, 0x1e, 0x28, 0x88, 0xfd, 0x6d, 0x3e, 0xf4, 0x1e, 0x5d, 0xbe, 0xfe, 0x18, 0x40, 0x45, 0x26,
- 0xda, 0xd8, 0x70, 0x75, 0xe8, 0xad, 0x8e, 0x70, 0x10, 0xe8, 0x70, 0x28, 0xb8, 0xa8, 0xd8, 0x1b,
- 0xe6, 0x00, 0x11, 0x00, 0x1b, 0xa2, 0xd0, 0xef, 0x40, 0x89, 0xe8, 0x96, 0xc9, 0x4d, 0xcf, 0xd7,
- 0x36, 0xbc, 0x3e, 0x8a, 0xe4, 0xb5, 0x88, 0x4d, 0xb2, 0xf5, 0x15, 0x41, 0xb0, 0x29, 0x6d, 0xc9,
- 0x87, 0xd9, 0xc4, 0x7c, 0x53, 0xa2, 0xef, 0x46, 0x3c, 0xfa, 0x5e, 0xc8, 0x72, 0x2c, 0xe8, 0x3e,
- 0x90, 0xd9, 0x33, 0x63, 0x30, 0x97, 0x9c, 0xe9, 0xb1, 0x09, 0x8d, 0x35, 0x9f, 0xcc, 0x78, 0xff,
- 0xb7, 0x39, 0x28, 0x86, 0x1e, 0x9f, 0xa5, 0x4a, 0x55, 0x27, 0x75, 0xee, 0x88, 0x4a, 0x22, 0x3f,
- 0x4c, 0x25, 0x31, 0x36, 0xb8, 0x92, 0x08, 0x3a, 0x59, 0x85, 0xa7, 0x77, 0xb2, 0x8c, 0x4a, 0x62,
- 0x62, 0xf8, 0x4a, 0x62, 0xf2, 0xe8, 0x4a, 0xc2, 0xfe, 0x7b, 0x0b, 0x50, 0x7f, 0xd9, 0x98, 0x45,
- 0x51, 0x24, 0x19, 0x87, 0x87, 0x3c, 0xa5, 0x93, 0xb5, 0xdb, 0xe0, 0x70, 0x6c, 0x7f, 0x3a, 0x0e,
- 0xb3, 0xb7, 0x9c, 0x91, 0x1b, 0x0e, 0x1c, 0x5e, 0x56, 0x9c, 0x6a, 0x54, 0xe7, 0x48, 0x35, 0xee,
- 0x13, 0x4e, 0x9b, 0xfb, 0x7a, 0x7f, 0xaf, 0x69, 0xd2, 0x97, 0xab, 0xe9, 0x68, 0x4f, 0x06, 0x83,
- 0xf0, 0x20, 0xd6, 0x43, 0x1b, 0xc9, 0x7b, 0x30, 0xcd, 0xb8, 0xef, 0xd4, 0xb9, 0x6a, 0x69, 0xb0,
- 0xc5, 0x92, 0x8c, 0x72, 0x67, 0x34, 0xfa, 0x74, 0xcd, 0x04, 0xe2, 0x38, 0x6e, 0x6a, 0xa7, 0x64,
- 0x2c, 0x73, 0xa7, 0x64, 0x15, 0x8a, 0xa4, 0xdd, 0xf6, 0x7e, 0x7c, 0x8f, 0x34, 0x99, 0x2e, 0x55,
- 0x43, 0xab, 0x59, 0x0b, 0x00, 0x38, 0xc2, 0x41, 0x65, 0x00, 0xa7, 0xe9, 0x7a, 0x3e, 0x95, 0x14,
- 0x05, 0x19, 0x6e, 0x67, 0x44, 0xac, 0xdb, 0x08, 0x47, 0xb1, 0x81, 0x81, 0x6a, 0x70, 0xc6, 0x71,
- 0x19, 0xad, 0xf7, 0x7c, 0x5a, 0xdb, 0x75, 0xba, 0xf7, 0x36, 0x6b, 0x32, 0x4a, 0xec, 0x4b, 0x6b,
- 0x9e, 0xac, 0xbc, 0xa2, 0x85, 0x9d, 0xd9, 0x48, 0x43, 0xc2, 0xe9, 0xb4, 0xe8, 0x22, 0x4c, 0x39,
- 0x6e, 0xbd, 0xdd, 0x6b, 0xd0, 0x2d, 0xc2, 0x5b, 0x6c, 0x71, 0x52, 0x4e, 0x63, 0xee, 0xf0, 0x60,
- 0x65, 0x6a, 0xc3, 0x18, 0xc7, 0x31, 0x2c, 0x41, 0x45, 0x3f, 0x32, 0xa8, 0x8a, 0x11, 0xd5, 0x8d,
- 0x8f, 0x4c, 0x2a, 0x13, 0x2b, 0xa5, 0x97, 0x04, 0x99, 0x7a, 0x49, 0x7f, 0x95, 0x87, 0x82, 0x6a,
- 0xe5, 0xa2, 0x4b, 0x89, 0x7e, 0xe9, 0x2b, 0x7d, 0xfd, 0xd2, 0x52, 0x5a, 0xdb, 0xdb, 0x86, 0x82,
- 0xc3, 0x58, 0x2f, 0x7e, 0xba, 0x6d, 0xc8, 0x11, 0xac, 0x21, 0xc8, 0x01, 0x20, 0x41, 0xab, 0x35,
- 0x48, 0x5d, 0x2e, 0x65, 0xed, 0x08, 0x27, 0xba, 0xc1, 0x21, 0x80, 0x61, 0x83, 0xb9, 0xec, 0xf0,
- 0x78, 0xee, 0x8e, 0xd3, 0xd4, 0x75, 0xf8, 0x75, 0x23, 0x6b, 0x8e, 0x6e, 0xdf, 0x3e, 0x0c, 0xaf,
- 0xe7, 0xa2, 0x04, 0x3a, 0x86, 0x20, 0x32, 0xe9, 0x3b, 0xb5, 0xbb, 0xef, 0xab, 0xe5, 0x54, 0x25,
- 0x47, 0xac, 0x39, 0x0b, 0x19, 0x5e, 0x8f, 0x77, 0x7b, 0x5c, 0xda, 0xe4, 0x31, 0xc9, 0xb8, 0x2b,
- 0x39, 0x62, 0xcd, 0xd9, 0xfe, 0xc4, 0x82, 0x59, 0xa5, 0xee, 0x6a, 0x8b, 0xd6, 0x77, 0x6b, 0x9c,
- 0x76, 0x45, 0x62, 0xdb, 0x63, 0x94, 0x25, 0x13, 0xdb, 0x0f, 0x18, 0x65, 0x58, 0x42, 0x8c, 0xd5,
- 0xe7, 0x4e, 0x6a, 0xf5, 0xf6, 0x3f, 0x5a, 0x30, 0x2e, 0x33, 0xc8, 0x2c, 0xa1, 0x2e, 0xde, 0x55,
- 0xc9, 0x0d, 0xd5, 0x55, 0x39, 0xa2, 0xdf, 0x15, 0x35, 0x74, 0xc6, 0x9e, 0xd6, 0xd0, 0xb1, 0xbf,
- 0xb1, 0x60, 0x21, 0xad, 0x49, 0x98, 0x65, 0xfa, 0x6f, 0xc3, 0x64, 0xb7, 0x4d, 0xf8, 0x8e, 0xe7,
- 0x77, 0x92, 0xb7, 0x01, 0x5b, 0x7a, 0x1c, 0x87, 0x18, 0xc8, 0x07, 0xf0, 0x83, 0x6a, 0x24, 0x30,
- 0xf7, 0xeb, 0x59, 0x0f, 0x9f, 0x78, 0x77, 0x2b, 0x52, 0x56, 0x38, 0xc4, 0xb0, 0x21, 0xc5, 0xfe,
- 0xd3, 0x71, 0x98, 0x97, 0x24, 0xa3, 0x1e, 0x46, 0xa3, 0xec, 0x50, 0x17, 0x5e, 0x92, 0x35, 0x44,
- 0xff, 0xf9, 0xa5, 0x36, 0xed, 0x8a, 0xa6, 0x7f, 0x69, 0x23, 0x15, 0xeb, 0xc9, 0x40, 0x08, 0x1e,
- 0xc0, 0xb7, 0xff, 0x50, 0x82, 0x9f, 0xbf, 0x43, 0xc9, 0x34, 0xb6, 0x89, 0x23, 0x8d, 0x6d, 0xe0,
- 0x11, 0x36, 0xf9, 0x0c, 0x47, 0x58, 0xff, 0xb1, 0x52, 0xcc, 0x74, 0xac, 0xfc, 0x75, 0x0e, 0x26,
- 0xb6, 0x7c, 0x4f, 0x36, 0x9b, 0x4f, 0xbe, 0x6f, 0x79, 0x17, 0xc6, 0x58, 0x97, 0xd6, 0x75, 0xcc,
- 0x3b, 0x37, 0x9c, 0xa7, 0xe9, 0xe9, 0xd5, 0xba, 0xb4, 0x5e, 0x99, 0x14, 0x61, 0x54, 0xfc, 0xc2,
- 0x92, 0x91, 0xd1, 0x80, 0xcb, 0x67, 0x49, 0xf6, 0x03, 0x96, 0x4f, 0x6f, 0xc0, 0x7d, 0x6a, 0x41,
- 0x49, 0x63, 0xbe, 0xb0, 0x9d, 0x1e, 0x3d, 0xbf, 0x01, 0x9d, 0x9e, 0x3f, 0x8f, 0x56, 0x20, 0x94,
- 0x86, 0x7e, 0x0f, 0xe6, 0xbb, 0xbe, 0xd7, 0xf1, 0x84, 0xa7, 0x6e, 0x79, 0x6d, 0xa7, 0xee, 0xd0,
- 0xa0, 0x59, 0x78, 0x69, 0x68, 0x79, 0x06, 0xf9, 0x7e, 0xe5, 0x3b, 0x5a, 0xee, 0xfc, 0x56, 0x92,
- 0x2f, 0xee, 0x17, 0x65, 0xff, 0x97, 0x05, 0xd3, 0x31, 0xdd, 0xa3, 0x3a, 0x40, 0xdd, 0x73, 0x1b,
- 0x0e, 0x0f, 0x2f, 0x64, 0x4b, 0xe7, 0x57, 0x87, 0xd3, 0x6a, 0x35, 0xa0, 0x8b, 0x8c, 0x2e, 0x1c,
- 0x62, 0xd8, 0x60, 0x8b, 0x2e, 0x04, 0xef, 0x17, 0xe2, 0xf9, 0x92, 0x7a, 0xbf, 0xf0, 0xe4, 0x60,
- 0x65, 0x4a, 0xcf, 0xc9, 0x7c, 0xcf, 0x90, 0xe5, 0x95, 0xc0, 0x3f, 0xe4, 0xa0, 0x18, 0xae, 0xff,
- 0x39, 0xb8, 0xd1, 0x07, 0x31, 0x37, 0xba, 0x90, 0x71, 0xe7, 0xa4, 0x23, 0x85, 0x39, 0x89, 0xe1,
- 0x4c, 0x8f, 0x13, 0xce, 0x94, 0xd5, 0x24, 0x8e, 0x70, 0xa7, 0x7f, 0x51, 0x9b, 0xaf, 0x70, 0x9f,
- 0x83, 0x43, 0xdd, 0x8b, 0x3b, 0xd4, 0x6a, 0xc6, 0xd5, 0x0c, 0x70, 0xa9, 0x9f, 0x5a, 0x30, 0x9b,
- 0x70, 0x02, 0xf4, 0x2a, 0x8c, 0xcb, 0xee, 0x90, 0xb6, 0xaf, 0x90, 0x50, 0xf7, 0x12, 0x24, 0x0c,
- 0x6d, 0xc1, 0x02, 0xe9, 0x71, 0x2f, 0xa4, 0xbd, 0xe1, 0x92, 0xed, 0x36, 0x55, 0x0d, 0x82, 0xc9,
- 0xca, 0x2f, 0x68, 0x9a, 0x85, 0xb5, 0x14, 0x1c, 0x9c, 0x4a, 0x69, 0x7f, 0x9e, 0x03, 0x14, 0x0e,
- 0x66, 0xe9, 0xaa, 0x3e, 0x86, 0x89, 0x1d, 0xd5, 0xff, 0x79, 0xb6, 0xb6, 0x78, 0xa5, 0x64, 0xde,
- 0x0c, 0x04, 0x3c, 0xd1, 0x0f, 0x8e, 0xc7, 0x8e, 0xa0, 0xdf, 0x86, 0xd0, 0x43, 0x80, 0x1d, 0xc7,
- 0x75, 0x58, 0x6b, 0xc4, 0x0b, 0x3c, 0x79, 0x9a, 0xdf, 0x0c, 0x39, 0x60, 0x83, 0x9b, 0xfd, 0x71,
- 0xce, 0xb0, 0x4f, 0x19, 0x2e, 0x87, 0xda, 0xd7, 0x37, 0xe3, 0xca, 0x2c, 0xf6, 0x5f, 0x99, 0x18,
- 0x8a, 0x19, 0xdb, 0x23, 0x7e, 0xd0, 0xbd, 0xbd, 0x9c, 0x51, 0x2d, 0xf7, 0x89, 0xef, 0x88, 0x8d,
- 0x8f, 0xb6, 0xf4, 0x3e, 0xf1, 0x19, 0x96, 0x2c, 0xd1, 0xf7, 0xc5, 0x54, 0x69, 0x58, 0xb3, 0x65,
- 0x8e, 0x09, 0x9c, 0x76, 0xcd, 0xf5, 0xd1, 0x2e, 0xc3, 0x8a, 0xa1, 0xfd, 0x6f, 0x05, 0xc3, 0xe0,
- 0x75, 0xd4, 0xbe, 0x03, 0xa8, 0x4d, 0x18, 0xbf, 0x4d, 0xdc, 0x86, 0x30, 0x4f, 0xba, 0xe3, 0x53,
- 0xd6, 0xd2, 0x19, 0xda, 0x92, 0xe6, 0x82, 0x36, 0xfb, 0x30, 0x70, 0x0a, 0x15, 0xba, 0x14, 0x0f,
- 0xce, 0x2b, 0xc9, 0xe0, 0x3c, 0x13, 0x79, 0xdb, 0x68, 0xe1, 0xd9, 0x34, 0xf7, 0xf1, 0x13, 0x30,
- 0xf7, 0xdf, 0x85, 0xf9, 0x9d, 0xe4, 0x15, 0x9a, 0xbe, 0x50, 0xbf, 0x3c, 0xe2, 0x0d, 0x5c, 0xe5,
- 0xcc, 0x61, 0x74, 0xef, 0x12, 0x0d, 0xe3, 0x7e, 0x41, 0xc8, 0x0b, 0x9e, 0x8e, 0xc9, 0xea, 0x53,
- 0xf5, 0x30, 0x86, 0x76, 0xb9, 0x44, 0xdd, 0x9a, 0x7c, 0x34, 0xa6, 0x58, 0xe2, 0x98, 0x80, 0x84,
- 0x0b, 0x16, 0x8e, 0xd3, 0x05, 0xd1, 0x25, 0x28, 0xd5, 0x7b, 0xbe, 0x4f, 0x5d, 0x2e, 0xa6, 0x23,
- 0x53, 0xd9, 0x7c, 0xd4, 0x8b, 0xae, 0x46, 0x20, 0x6c, 0xe2, 0x09, 0x73, 0x34, 0xfe, 0x5c, 0xe3,
- 0x9c, 0x76, 0xba, 0x5c, 0x76, 0xc1, 0xf2, 0x91, 0x39, 0x56, 0xfb, 0x30, 0x70, 0x0a, 0x15, 0xfa,
- 0x50, 0xfa, 0x3c, 0xa7, 0xb2, 0x5e, 0x79, 0xf6, 0xba, 0xbc, 0xa8, 0xe3, 0x05, 0x57, 0xf1, 0x82,
- 0x53, 0xfb, 0xcf, 0x62, 0x61, 0x66, 0xb8, 0x6e, 0xc1, 0x12, 0xe4, 0x08, 0x4b, 0xb6, 0x92, 0xd7,
- 0x18, 0xce, 0x11, 0x86, 0x7e, 0x00, 0xe3, 0x3e, 0xe5, 0xfe, 0xbe, 0x8e, 0x86, 0x57, 0x46, 0xf0,
- 0x7c, 0x2c, 0xe8, 0xd5, 0x54, 0xe5, 0x4f, 0xac, 0x38, 0x1a, 0x4d, 0x8a, 0xfc, 0x89, 0x35, 0x29,
- 0x2a, 0xc6, 0x19, 0x16, 0xce, 0x45, 0x54, 0x56, 0x44, 0x6d, 0x88, 0x52, 0x4b, 0x3e, 0x3a, 0xe9,
- 0xf5, 0x46, 0x31, 0x1c, 0x62, 0xd8, 0x3e, 0x44, 0xe9, 0x67, 0xf0, 0xf6, 0x14, 0x3d, 0xd6, 0x49,
- 0x92, 0x95, 0xe5, 0x2d, 0x65, 0x1f, 0x9b, 0x41, 0xc9, 0x92, 0xfd, 0xb9, 0x05, 0x67, 0x52, 0xb1,
- 0xc3, 0x28, 0x9f, 0x3b, 0xc1, 0x28, 0x6f, 0x1d, 0x77, 0x94, 0x7f, 0x68, 0xa8, 0x30, 0x98, 0xc2,
- 0x71, 0x3d, 0x18, 0xff, 0x59, 0x0e, 0xe6, 0x30, 0xed, 0x7a, 0xb1, 0x86, 0xc7, 0x56, 0xf0, 0x3a,
- 0x2d, 0x43, 0x86, 0x90, 0xe8, 0xe0, 0x57, 0x26, 0x62, 0xcf, 0xd2, 0xbe, 0x0f, 0xe3, 0xb2, 0x17,
- 0xa1, 0x73, 0x9a, 0xcb, 0x19, 0x6e, 0x5c, 0x63, 0x5c, 0xa5, 0x1f, 0xa8, 0xa6, 0x8e, 0x62, 0x28,
- 0x38, 0xcb, 0xcb, 0x52, 0xed, 0x06, 0x97, 0x33, 0x5c, 0xbb, 0xf6, 0x73, 0x96, 0xc3, 0x58, 0x31,
- 0xb4, 0x3f, 0xc9, 0x81, 0xca, 0x26, 0x9e, 0x43, 0xd5, 0xf0, 0x1b, 0xb1, 0xaa, 0x61, 0xc8, 0x74,
- 0x58, 0x4e, 0x6e, 0x60, 0xc5, 0x90, 0xcc, 0xf4, 0xce, 0x65, 0x61, 0xfa, 0xf4, 0x6a, 0xe1, 0x9f,
- 0x2d, 0x28, 0x4a, 0xbc, 0xe7, 0x50, 0x29, 0x6c, 0xc5, 0x2b, 0x85, 0xb7, 0x32, 0xac, 0x62, 0x40,
- 0x95, 0xf0, 0x71, 0x5e, 0xcf, 0x3e, 0xcc, 0x23, 0x5b, 0xc4, 0x6f, 0xe8, 0x0c, 0x29, 0xf2, 0x40,
- 0x31, 0x88, 0x15, 0x0c, 0xfd, 0x36, 0xcc, 0xf9, 0xea, 0xfe, 0x9d, 0x36, 0x6e, 0x86, 0xe9, 0x4a,
- 0x3e, 0xf3, 0x05, 0xb9, 0xbe, 0xc4, 0x8f, 0x3a, 0x65, 0x38, 0xc1, 0x15, 0xf7, 0xc9, 0x11, 0x29,
- 0x4c, 0x37, 0x19, 0xcb, 0xf4, 0xd1, 0x7e, 0x79, 0xc4, 0xc0, 0xa9, 0x52, 0x98, 0xbe, 0x61, 0xdc,
- 0x2f, 0x08, 0xb5, 0x60, 0xca, 0x7c, 0xda, 0xa3, 0x6d, 0xe9, 0x7c, 0xf6, 0x37, 0x44, 0xea, 0x12,
- 0xc6, 0x1c, 0xc1, 0x31, 0xce, 0xf6, 0x41, 0x01, 0x4a, 0x86, 0xf1, 0x25, 0xba, 0x0f, 0xd3, 0x27,
- 0xd3, 0x7d, 0x48, 0x4f, 0x96, 0x4b, 0x23, 0x25, 0xcb, 0xe7, 0xe2, 0xc9, 0xf2, 0x77, 0x93, 0xc9,
- 0x32, 0xc8, 0xd5, 0xc5, 0x12, 0x65, 0x06, 0x33, 0x3a, 0x6b, 0x0c, 0xde, 0x68, 0x65, 0x2a, 0x3f,
- 0xfa, 0x73, 0x53, 0x74, 0x78, 0xb0, 0x12, 0xbc, 0xb0, 0x08, 0xde, 0x66, 0x25, 0x44, 0xa0, 0xeb,
- 0xa1, 0xd0, 0x5a, 0xaf, 0xd3, 0x21, 0xfe, 0xfe, 0xe2, 0x94, 0x9c, 0x70, 0xd8, 0x96, 0xbc, 0x19,
- 0x83, 0xe2, 0x04, 0x36, 0xda, 0x82, 0x82, 0x4a, 0x3a, 0xf5, 0xbb, 0x9f, 0xb7, 0xb3, 0xe4, 0xb3,
- 0x2a, 0xcf, 0x50, 0xbf, 0xb1, 0xe6, 0x63, 0xd6, 0x0b, 0xc5, 0x23, 0xea, 0x85, 0x3b, 0x80, 0xbc,
- 0x6d, 0x99, 0xd1, 0x34, 0x6e, 0xa9, 0x2f, 0xab, 0x84, 0x55, 0x16, 0xe2, 0xe9, 0xe4, 0xdd, 0x3e,
- 0x0c, 0x9c, 0x42, 0x25, 0xbc, 0x5a, 0x27, 0x99, 0xa1, 0x2b, 0xe8, 0xda, 0x20, 0x6b, 0xa2, 0x16,
- 0x95, 0x21, 0x0b, 0xc2, 0xab, 0xab, 0x09, 0xae, 0xb8, 0x4f, 0x0e, 0xfa, 0x11, 0x4c, 0x0b, 0x13,
- 0x8a, 0x04, 0xc3, 0x33, 0x0a, 0x9e, 0x3f, 0x3c, 0x58, 0x99, 0xde, 0x34, 0x59, 0xe2, 0xb8, 0x04,
- 0xfb, 0xff, 0x72, 0x10, 0xf3, 0x3f, 0xf4, 0x53, 0x0b, 0xe6, 0x49, 0xe2, 0xb3, 0xa0, 0x20, 0x7d,
- 0xf9, 0xb5, 0x6c, 0xdf, 0x6a, 0xf5, 0x7d, 0x55, 0x14, 0x35, 0x1f, 0x93, 0x28, 0x0c, 0xf7, 0x0b,
- 0x45, 0x7f, 0x6c, 0xc1, 0x69, 0xd2, 0xff, 0xdd, 0x97, 0x3e, 0x0f, 0xaf, 0x8e, 0xfc, 0xe1, 0x58,
- 0xe5, 0xe5, 0xc3, 0x83, 0x95, 0xb4, 0x2f, 0xe2, 0x70, 0x9a, 0x38, 0xf4, 0x43, 0x18, 0x23, 0x7e,
- 0x33, 0x28, 0xd4, 0xb3, 0x8b, 0x0d, 0x3e, 0xe7, 0x8b, 0x0e, 0xe4, 0x35, 0xbf, 0xc9, 0xb0, 0x64,
- 0x6a, 0x7f, 0x95, 0x87, 0xb9, 0xe4, 0xab, 0x4a, 0xfd, 0x10, 0x65, 0x2c, 0xf5, 0x21, 0xca, 0xab,
- 0x30, 0x4e, 0xea, 0x3c, 0x7c, 0x15, 0x12, 0xbd, 0x24, 0x16, 0x83, 0x58, 0xc1, 0xd0, 0x03, 0x28,
- 0x32, 0x4e, 0x7c, 0x2e, 0xea, 0x37, 0x5d, 0x42, 0x67, 0x7e, 0x35, 0x5d, 0x0b, 0x18, 0xe0, 0x88,
- 0x17, 0xba, 0x12, 0x0f, 0x67, 0x76, 0x32, 0x9c, 0xcd, 0x9b, 0x6b, 0x19, 0xb5, 0xfc, 0xef, 0x40,
- 0xc9, 0xd8, 0x07, 0x7d, 0xba, 0x5c, 0xcb, 0xac, 0xf7, 0xc8, 0xec, 0x66, 0xd5, 0x37, 0x81, 0x11,
- 0xc4, 0xe4, 0x1f, 0xd5, 0xc7, 0x52, 0x5b, 0xcf, 0x54, 0x1f, 0x4b, 0x75, 0x19, 0xdc, 0xec, 0x59,
- 0x98, 0x8e, 0x3d, 0x8e, 0x92, 0x9d, 0xe7, 0x07, 0xc4, 0xa7, 0x2d, 0xaf, 0xc7, 0xe8, 0x8b, 0xda,
- 0x79, 0x0e, 0x27, 0x78, 0xdc, 0x9d, 0xe7, 0x88, 0xf1, 0xd1, 0x9d, 0xe7, 0x10, 0xf7, 0x85, 0xed,
- 0x3c, 0x87, 0x33, 0x1c, 0x90, 0x53, 0xfe, 0x6f, 0xce, 0x58, 0x45, 0x3c, 0xaf, 0xcc, 0x3d, 0x25,
- 0xaf, 0x7c, 0x04, 0x93, 0x8e, 0xcb, 0xa9, 0xbf, 0x47, 0xda, 0xba, 0x45, 0x30, 0xe4, 0x52, 0xd7,
- 0x7b, 0xbe, 0xce, 0xaa, 0x82, 0xa5, 0x6e, 0x68, 0x3e, 0x38, 0xe4, 0x88, 0xda, 0x70, 0x26, 0xe8,
- 0x49, 0xf9, 0x94, 0x44, 0x3d, 0x71, 0x7d, 0xaf, 0xfc, 0x6e, 0x70, 0xa9, 0x79, 0x33, 0x0d, 0xe9,
- 0xc9, 0x20, 0x00, 0x4e, 0x67, 0x8a, 0x18, 0x4c, 0x33, 0xa3, 0xa0, 0x0a, 0x0e, 0x92, 0x21, 0xfb,
- 0x79, 0xc9, 0x1a, 0xd4, 0xb8, 0x8c, 0x36, 0x99, 0xe2, 0xb8, 0x0c, 0xfb, 0x3f, 0xf2, 0x30, 0x9b,
- 0xb0, 0xb4, 0x44, 0xe2, 0x58, 0x7c, 0x9e, 0x89, 0x63, 0x61, 0xa4, 0xc4, 0x31, 0x3d, 0xa7, 0x19,
- 0x1b, 0x29, 0xa7, 0x79, 0x4f, 0xe5, 0x15, 0x7a, 0xe7, 0x36, 0xd6, 0xf5, 0x33, 0xc1, 0x50, 0x9b,
- 0x9b, 0x26, 0x10, 0xc7, 0x71, 0xe5, 0x29, 0xdc, 0xe8, 0xff, 0x26, 0x4e, 0x27, 0x45, 0x57, 0xb3,
- 0x3e, 0xbe, 0x08, 0x19, 0xa8, 0x53, 0x38, 0x05, 0x80, 0xd3, 0xc4, 0x55, 0xee, 0x7c, 0xf6, 0xf5,
- 0xf2, 0xa9, 0x2f, 0xbe, 0x5e, 0x3e, 0xf5, 0xe5, 0xd7, 0xcb, 0xa7, 0x7e, 0x72, 0xb8, 0x6c, 0x7d,
- 0x76, 0xb8, 0x6c, 0x7d, 0x71, 0xb8, 0x6c, 0x7d, 0x79, 0xb8, 0x6c, 0xfd, 0xf7, 0xe1, 0xb2, 0xf5,
- 0x97, 0xdf, 0x2c, 0x9f, 0x7a, 0xf8, 0xda, 0x30, 0xff, 0xbc, 0xe0, 0xff, 0x03, 0x00, 0x00, 0xff,
- 0xff, 0x90, 0x47, 0xd6, 0xce, 0xe3, 0x40, 0x00, 0x00,
+ // 3694 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x3c, 0x5d, 0x6f, 0x1b, 0xc7,
+ 0x76, 0x5e, 0x52, 0xa2, 0xc4, 0x43, 0x7d, 0x8e, 0xe5, 0x44, 0x57, 0xb7, 0x91, 0xdc, 0x4d, 0x10,
+ 0x24, 0x4d, 0x42, 0xd5, 0x5f, 0xf1, 0x47, 0x0a, 0x17, 0x22, 0xe5, 0x0f, 0xb9, 0xba, 0xb1, 0x3a,
+ 0x74, 0xec, 0x7b, 0x7d, 0x6d, 0xa4, 0x23, 0x72, 0x44, 0x6e, 0x45, 0xee, 0xf2, 0xce, 0x0c, 0x95,
+ 0xa8, 0x2d, 0xda, 0xdb, 0x2f, 0xe0, 0x02, 0xfd, 0x40, 0x1f, 0x82, 0xe6, 0x16, 0x68, 0x81, 0xa2,
+ 0x7d, 0x6e, 0xff, 0x40, 0x1f, 0xf2, 0xd0, 0x97, 0xa0, 0x48, 0x8b, 0xa0, 0xed, 0x43, 0x1e, 0x02,
+ 0xa1, 0x51, 0x80, 0x3e, 0xe6, 0xad, 0x2f, 0x06, 0x0a, 0x14, 0x3b, 0x33, 0xbb, 0x3b, 0xbb, 0x5c,
+ 0x5a, 0x5c, 0x5a, 0x32, 0x8c, 0xbe, 0x51, 0x73, 0xbe, 0x66, 0xce, 0x9c, 0x73, 0xe6, 0x9c, 0x33,
+ 0xb3, 0x82, 0x8b, 0x4d, 0x47, 0xb4, 0x7a, 0xdb, 0xe5, 0xba, 0xd7, 0x59, 0x25, 0xbb, 0x3d, 0x47,
+ 0xec, 0xaf, 0xee, 0x12, 0xd6, 0xf4, 0x56, 0x49, 0xd7, 0x59, 0xdd, 0x3b, 0x47, 0xda, 0xdd, 0x16,
+ 0x39, 0xb7, 0xda, 0xa4, 0x2e, 0x65, 0x44, 0xd0, 0x46, 0xb9, 0xcb, 0x3c, 0xe1, 0xa1, 0xd7, 0x22,
+ 0xaa, 0xb2, 0xa2, 0x2a, 0x4b, 0xaa, 0x32, 0xe9, 0x3a, 0xe5, 0x80, 0x6a, 0xe9, 0x1d, 0x83, 0x77,
+ 0xd3, 0x6b, 0x7a, 0xab, 0x92, 0x78, 0xbb, 0xb7, 0x23, 0xff, 0x92, 0x7f, 0xc8, 0x5f, 0x8a, 0xe9,
+ 0xd2, 0xed, 0xdd, 0x2b, 0xbc, 0xec, 0x48, 0xc9, 0xf4, 0x63, 0x41, 0x5d, 0xee, 0x78, 0x2e, 0x7f,
+ 0x87, 0x74, 0x1d, 0x4e, 0xd9, 0x1e, 0x65, 0xab, 0xdd, 0xdd, 0xa6, 0x0f, 0xe3, 0x71, 0x84, 0xd5,
+ 0xbd, 0xbe, 0xe9, 0x2d, 0x5d, 0x8c, 0x38, 0x75, 0x48, 0xbd, 0xe5, 0xb8, 0x94, 0xed, 0x47, 0xe4,
+ 0x1d, 0x2a, 0x48, 0x1a, 0xd5, 0xea, 0x20, 0x2a, 0xd6, 0x73, 0x85, 0xd3, 0xa1, 0x7d, 0x04, 0xef,
+ 0x1e, 0x45, 0xc0, 0xeb, 0x2d, 0xda, 0x21, 0x49, 0x3a, 0xfb, 0x11, 0x9c, 0x5e, 0x73, 0x49, 0x7b,
+ 0x9f, 0x3b, 0x1c, 0xf7, 0xdc, 0x35, 0xd6, 0xec, 0x75, 0xa8, 0x2b, 0xd0, 0x59, 0x18, 0x73, 0x49,
+ 0x87, 0x2e, 0x5a, 0x67, 0xad, 0x37, 0x8a, 0x95, 0xa9, 0xcf, 0x0f, 0x56, 0x4e, 0x1d, 0x1e, 0xac,
+ 0x8c, 0xbd, 0x4f, 0x3a, 0x14, 0x4b, 0x08, 0x7a, 0x15, 0xc6, 0xf7, 0x48, 0xbb, 0x47, 0x17, 0x73,
+ 0x12, 0x65, 0x5a, 0xa3, 0x8c, 0xdf, 0xf7, 0x07, 0xb1, 0x82, 0xd9, 0x7f, 0x98, 0x8f, 0xb1, 0xff,
+ 0x01, 0x15, 0xa4, 0x41, 0x04, 0x41, 0x1d, 0x28, 0xb4, 0xc9, 0x36, 0x6d, 0xf3, 0x45, 0xeb, 0x6c,
+ 0xfe, 0x8d, 0xd2, 0xf9, 0x1b, 0xe5, 0x61, 0x36, 0xb1, 0x9c, 0xc2, 0xaa, 0xbc, 0x29, 0xf9, 0xdc,
+ 0x70, 0x05, 0xdb, 0xaf, 0xcc, 0xe8, 0x49, 0x14, 0xd4, 0x20, 0xd6, 0x42, 0xd0, 0xef, 0x5b, 0x50,
+ 0x22, 0xae, 0xeb, 0x09, 0x22, 0xfc, 0x6d, 0x5a, 0xcc, 0x49, 0xa1, 0x77, 0x46, 0x17, 0xba, 0x16,
+ 0x31, 0x53, 0x92, 0x4f, 0x6b, 0xc9, 0x25, 0x03, 0x82, 0x4d, 0x99, 0x4b, 0x57, 0xa1, 0x64, 0x4c,
+ 0x15, 0xcd, 0x41, 0x7e, 0x97, 0xee, 0x2b, 0xfd, 0x62, 0xff, 0x27, 0x5a, 0x88, 0x29, 0x54, 0x6b,
+ 0xf0, 0x5a, 0xee, 0x8a, 0xb5, 0x74, 0x1d, 0xe6, 0x92, 0x02, 0xb3, 0xd0, 0xdb, 0x7f, 0x6e, 0xc1,
+ 0x82, 0xb1, 0x0a, 0x4c, 0x77, 0x28, 0xa3, 0x6e, 0x9d, 0xa2, 0x55, 0x28, 0xfa, 0x7b, 0xc9, 0xbb,
+ 0xa4, 0x1e, 0x6c, 0xf5, 0xbc, 0x5e, 0x48, 0xf1, 0xfd, 0x00, 0x80, 0x23, 0x9c, 0xd0, 0x2c, 0x72,
+ 0x4f, 0x33, 0x8b, 0x6e, 0x8b, 0x70, 0xba, 0x98, 0x8f, 0x9b, 0xc5, 0x96, 0x3f, 0x88, 0x15, 0xcc,
+ 0xfe, 0x08, 0xbe, 0x17, 0xcc, 0xe7, 0x1e, 0xed, 0x74, 0xdb, 0x44, 0xd0, 0x68, 0x52, 0x47, 0x9b,
+ 0xde, 0x15, 0x98, 0xaa, 0xb7, 0x7b, 0x5c, 0x50, 0x56, 0xab, 0x7b, 0x5d, 0x35, 0x9b, 0xc9, 0xca,
+ 0x82, 0xc6, 0x9c, 0xaa, 0x1a, 0x30, 0x1c, 0xc3, 0xb4, 0x67, 0x61, 0x7a, 0xad, 0xdb, 0x65, 0xde,
+ 0x1e, 0x6d, 0xd4, 0x04, 0x69, 0x52, 0xfb, 0x0f, 0x2c, 0x38, 0xb3, 0xc6, 0x9a, 0x5e, 0x75, 0x7d,
+ 0xad, 0xdb, 0xbd, 0x4d, 0x49, 0x5b, 0xb4, 0x6a, 0x82, 0x88, 0x1e, 0x47, 0xd7, 0xa1, 0xc0, 0xe5,
+ 0x2f, 0x3d, 0x91, 0xd7, 0x03, 0xdb, 0x52, 0xf0, 0x27, 0x07, 0x2b, 0x0b, 0x29, 0x84, 0x14, 0x6b,
+ 0x2a, 0xf4, 0x26, 0x4c, 0x74, 0x28, 0xe7, 0xa4, 0x19, 0x68, 0x6b, 0x56, 0x33, 0x98, 0xf8, 0x81,
+ 0x1a, 0xc6, 0x01, 0xdc, 0xfe, 0x97, 0x1c, 0xcc, 0x86, 0xbc, 0xb4, 0xf8, 0x13, 0xd8, 0x9a, 0x1e,
+ 0x4c, 0xb5, 0x8c, 0x15, 0xca, 0x1d, 0x2a, 0x9d, 0x7f, 0x6f, 0x48, 0x2f, 0x48, 0x53, 0x52, 0xa4,
+ 0x73, 0x73, 0x14, 0xc7, 0xc4, 0xa0, 0x0e, 0x00, 0xdf, 0x77, 0xeb, 0x5a, 0xe8, 0x98, 0x14, 0x7a,
+ 0x35, 0xa3, 0xd0, 0x5a, 0xc8, 0xa0, 0x82, 0xb4, 0x48, 0x88, 0xc6, 0xb0, 0x21, 0xc0, 0xfe, 0x47,
+ 0x0b, 0x4e, 0xa7, 0xd0, 0xa1, 0x5f, 0x49, 0xec, 0xe7, 0x6b, 0x7d, 0xfb, 0x89, 0xfa, 0xc8, 0xa2,
+ 0xdd, 0x7c, 0x1b, 0x26, 0x19, 0xdd, 0x73, 0xfc, 0x28, 0xaf, 0x35, 0x3c, 0xa7, 0xe9, 0x27, 0xb1,
+ 0x1e, 0xc7, 0x21, 0x06, 0x7a, 0x0b, 0x8a, 0xc1, 0x6f, 0x5f, 0xcd, 0x79, 0xdf, 0x11, 0xfc, 0x8d,
+ 0x0b, 0x50, 0x39, 0x8e, 0xe0, 0xf6, 0xef, 0xc1, 0x78, 0xb5, 0x45, 0x98, 0xf0, 0x2d, 0x86, 0xd1,
+ 0xae, 0xf7, 0x01, 0xde, 0xd4, 0x53, 0x0c, 0x2d, 0x06, 0xab, 0x61, 0x1c, 0xc0, 0x87, 0xd8, 0xec,
+ 0x37, 0x61, 0x62, 0x8f, 0x32, 0x39, 0xdf, 0x7c, 0x9c, 0xd9, 0x7d, 0x35, 0x8c, 0x03, 0xb8, 0xfd,
+ 0x1f, 0x16, 0x2c, 0xc8, 0x19, 0xac, 0x3b, 0xbc, 0xee, 0xed, 0x51, 0xb6, 0x8f, 0x29, 0xef, 0xb5,
+ 0x8f, 0x79, 0x42, 0xeb, 0x30, 0xc7, 0x69, 0x67, 0x8f, 0xb2, 0xaa, 0xe7, 0x72, 0xc1, 0x88, 0xe3,
+ 0x0a, 0x3d, 0xb3, 0x45, 0x8d, 0x3d, 0x57, 0x4b, 0xc0, 0x71, 0x1f, 0x05, 0x7a, 0x03, 0x26, 0xf5,
+ 0xb4, 0x7d, 0x53, 0xf2, 0x15, 0x3b, 0xe5, 0xef, 0x81, 0x5e, 0x13, 0xc7, 0x21, 0xd4, 0xfe, 0x6f,
+ 0x0b, 0xe6, 0xe5, 0xaa, 0x6a, 0xbd, 0x6d, 0x5e, 0x67, 0x4e, 0xd7, 0x0f, 0x9e, 0x2f, 0xe2, 0x92,
+ 0xae, 0xc3, 0x4c, 0x23, 0x50, 0xfc, 0xa6, 0xd3, 0x71, 0x84, 0xf4, 0x91, 0xf1, 0xca, 0x4b, 0x9a,
+ 0xc7, 0xcc, 0x7a, 0x0c, 0x8a, 0x13, 0xd8, 0xf6, 0x5f, 0xe7, 0xe1, 0x74, 0x80, 0x42, 0x1b, 0x6b,
+ 0x4c, 0x38, 0x3b, 0xa4, 0x2e, 0x38, 0x6a, 0xc0, 0x54, 0x23, 0x1a, 0x16, 0xda, 0xf3, 0x7e, 0xa9,
+ 0xac, 0x12, 0x85, 0xb2, 0x99, 0x28, 0x94, 0xbb, 0xbb, 0x4d, 0x7f, 0x80, 0x97, 0xfd, 0x7c, 0xa4,
+ 0xbc, 0x77, 0xae, 0x7c, 0xcf, 0xe9, 0xd0, 0xc8, 0xbb, 0x0d, 0xf6, 0x02, 0xc7, 0xb8, 0xa2, 0x07,
+ 0x90, 0x6f, 0x3a, 0x42, 0x1f, 0xe3, 0x57, 0x86, 0x73, 0xeb, 0x5b, 0x4e, 0xd2, 0xd4, 0x2a, 0x25,
+ 0x2d, 0x2a, 0x7f, 0xcb, 0x11, 0xd8, 0xe7, 0x88, 0xb6, 0xa1, 0xe0, 0x74, 0x48, 0x93, 0x06, 0xa7,
+ 0xf5, 0xb5, 0xe1, 0x78, 0x6f, 0xf8, 0x34, 0x49, 0xee, 0x61, 0x5e, 0x20, 0xa1, 0x1c, 0x6b, 0xce,
+ 0xbe, 0x8c, 0xba, 0x6f, 0x22, 0xca, 0x49, 0x87, 0x96, 0x91, 0xe6, 0x2c, 0x91, 0x0c, 0x09, 0xe5,
+ 0x58, 0x73, 0xb6, 0xbf, 0xca, 0xc1, 0x5c, 0xa4, 0xbf, 0xaa, 0xd7, 0xe9, 0x38, 0x02, 0x2d, 0x41,
+ 0xce, 0x69, 0x68, 0x0b, 0x04, 0x4d, 0x98, 0xdb, 0x58, 0xc7, 0x39, 0xa7, 0x81, 0x5e, 0x87, 0xc2,
+ 0x36, 0x23, 0x6e, 0xbd, 0xa5, 0x2d, 0x2f, 0x64, 0x5c, 0x91, 0xa3, 0x58, 0x43, 0xd1, 0x2b, 0x90,
+ 0x17, 0xa4, 0xa9, 0x0d, 0x2e, 0xd4, 0xdf, 0x3d, 0xd2, 0xc4, 0xfe, 0xb8, 0x6f, 0xe9, 0xbc, 0xb7,
+ 0xfd, 0x9b, 0xb4, 0xae, 0x76, 0xde, 0xb0, 0xf4, 0x9a, 0x1a, 0xc6, 0x01, 0xdc, 0x97, 0x48, 0x7a,
+ 0xa2, 0xe5, 0xb1, 0xc5, 0xf1, 0xb8, 0xc4, 0x35, 0x39, 0x8a, 0x35, 0xd4, 0x3f, 0x93, 0xea, 0x72,
+ 0xfe, 0x82, 0xb2, 0xc5, 0x42, 0xfc, 0x4c, 0xaa, 0x06, 0x00, 0x1c, 0xe1, 0xa0, 0xc7, 0x50, 0xaa,
+ 0x33, 0x4a, 0x84, 0xc7, 0xd6, 0x89, 0xa0, 0x8b, 0x13, 0x99, 0x2d, 0x70, 0xd6, 0x4f, 0xa9, 0xaa,
+ 0x11, 0x0b, 0x6c, 0xf2, 0xb3, 0xbf, 0xb3, 0x60, 0x31, 0x52, 0xad, 0xdc, 0xdb, 0x28, 0x8d, 0xd0,
+ 0xea, 0xb1, 0x06, 0xa8, 0xe7, 0x75, 0x28, 0x34, 0x9c, 0x26, 0xe5, 0x22, 0xa9, 0xe5, 0x75, 0x39,
+ 0x8a, 0x35, 0x14, 0x9d, 0x07, 0x68, 0x3a, 0x42, 0x07, 0x07, 0xad, 0xec, 0xf0, 0x08, 0xba, 0x15,
+ 0x42, 0xb0, 0x81, 0x85, 0x1e, 0x40, 0x51, 0x4e, 0x73, 0x44, 0xb7, 0x93, 0x47, 0x45, 0x35, 0x60,
+ 0x80, 0x23, 0x5e, 0xf6, 0x97, 0x63, 0x30, 0x71, 0x93, 0x51, 0xa7, 0xd9, 0x12, 0xe8, 0x37, 0x60,
+ 0xb2, 0xa3, 0xd3, 0x51, 0xb9, 0xc8, 0xd2, 0xf9, 0x5f, 0x1e, 0x4e, 0xc6, 0x5d, 0xb9, 0xe9, 0x7e,
+ 0x2a, 0x1b, 0x2d, 0x24, 0x1a, 0xc3, 0x21, 0x57, 0x3f, 0x95, 0x23, 0x6d, 0x87, 0x70, 0xb9, 0x6f,
+ 0x46, 0x2a, 0xb7, 0xe6, 0x0f, 0x62, 0x05, 0x43, 0x3f, 0x86, 0x82, 0xc7, 0x9c, 0xa6, 0xe3, 0x2e,
+ 0x16, 0xe5, 0x24, 0x2e, 0x0c, 0xe7, 0x42, 0x7a, 0x15, 0x77, 0x25, 0x69, 0xa4, 0x7c, 0xf5, 0x37,
+ 0xd6, 0x2c, 0xd1, 0x43, 0x98, 0x50, 0xc6, 0x14, 0x38, 0xe8, 0xea, 0xd0, 0x01, 0x46, 0xd9, 0x63,
+ 0x64, 0xf4, 0xea, 0x6f, 0x8e, 0x03, 0x86, 0xa8, 0x16, 0xc6, 0x97, 0x31, 0xc9, 0xfa, 0xad, 0x0c,
+ 0xf1, 0x65, 0x60, 0x40, 0xa9, 0x85, 0x01, 0x65, 0x3c, 0x0b, 0x53, 0x19, 0x32, 0x06, 0x45, 0x10,
+ 0x5f, 0xc5, 0x3a, 0x73, 0x29, 0x8c, 0xa0, 0x62, 0x9d, 0x36, 0xcd, 0xc4, 0xd3, 0x9d, 0x20, 0xb1,
+ 0xb1, 0x3f, 0xc9, 0xc3, 0xbc, 0xc6, 0xac, 0x7a, 0xed, 0x36, 0xad, 0xcb, 0x63, 0x52, 0xc5, 0xa7,
+ 0x7c, 0x6a, 0x7c, 0x72, 0x60, 0xdc, 0x11, 0xb4, 0x13, 0x94, 0x6e, 0x95, 0x4c, 0xb3, 0x89, 0x64,
+ 0x94, 0x37, 0x7c, 0x26, 0xaa, 0x7a, 0x0a, 0x77, 0x49, 0x63, 0x61, 0x25, 0x01, 0xfd, 0xb1, 0x05,
+ 0xa7, 0xf7, 0x28, 0x73, 0x76, 0x9c, 0xba, 0xac, 0x7d, 0x6e, 0x3b, 0x5c, 0x78, 0x6c, 0x5f, 0x9f,
+ 0x08, 0xef, 0x0e, 0x27, 0xf9, 0xbe, 0xc1, 0x60, 0xc3, 0xdd, 0xf1, 0x2a, 0xdf, 0xd7, 0xd2, 0x4e,
+ 0xdf, 0xef, 0x67, 0x8d, 0xd3, 0xe4, 0x2d, 0x75, 0x01, 0xa2, 0xd9, 0xa6, 0x94, 0x5e, 0x9b, 0x66,
+ 0xe9, 0x35, 0xf4, 0xc4, 0x82, 0xc5, 0x06, 0x21, 0xcb, 0x2c, 0xd9, 0x3e, 0xb3, 0xa0, 0xa4, 0xe1,
+ 0x9b, 0x0e, 0x17, 0xe8, 0x51, 0x9f, 0xb7, 0x97, 0x87, 0xf3, 0x76, 0x9f, 0x5a, 0xfa, 0x7a, 0x98,
+ 0xaf, 0x06, 0x23, 0x86, 0xa7, 0xe3, 0x60, 0x4b, 0x95, 0x62, 0xdf, 0xc9, 0x34, 0xff, 0x28, 0x30,
+ 0x48, 0x1d, 0xe9, 0xbd, 0xb3, 0x19, 0x4c, 0xc7, 0x9c, 0x1c, 0x5d, 0x82, 0xb1, 0x5d, 0xc7, 0x0d,
+ 0x4e, 0xbd, 0x5f, 0x0c, 0xf2, 0xa9, 0x5f, 0x73, 0xdc, 0xc6, 0x93, 0x83, 0x95, 0xf9, 0x18, 0xb2,
+ 0x3f, 0x88, 0x25, 0xfa, 0xd1, 0x69, 0xd8, 0xb5, 0xc9, 0x9f, 0xff, 0xed, 0xca, 0xa9, 0x9f, 0x7e,
+ 0x7d, 0xf6, 0x94, 0xfd, 0x69, 0x1e, 0xe6, 0x92, 0x5a, 0x1d, 0xa2, 0x9e, 0x8c, 0x62, 0xd8, 0xe4,
+ 0x89, 0xc6, 0xb0, 0xdc, 0xc9, 0xc5, 0xb0, 0xfc, 0x49, 0xc4, 0xb0, 0xb1, 0x63, 0x8b, 0x61, 0xf6,
+ 0xbf, 0x59, 0x30, 0x13, 0xee, 0xcc, 0x4f, 0x7a, 0xfe, 0xc9, 0x1a, 0x69, 0xdd, 0x3a, 0x7e, 0xad,
+ 0x7f, 0x08, 0x13, 0xdc, 0xeb, 0xb1, 0xba, 0x4c, 0x1f, 0x7d, 0xee, 0x17, 0xb3, 0x05, 0x4d, 0x45,
+ 0x6b, 0xe4, 0x4c, 0x6a, 0x00, 0x07, 0x5c, 0xed, 0x47, 0xe1, 0x7a, 0x34, 0x48, 0x65, 0x14, 0xcc,
+ 0xcf, 0xb7, 0x2c, 0xd9, 0x8f, 0x30, 0x32, 0x0a, 0x7f, 0x14, 0x6b, 0x28, 0xb2, 0x65, 0x38, 0x0f,
+ 0x12, 0xdb, 0x62, 0x05, 0x74, 0x54, 0x96, 0x7b, 0xa0, 0x20, 0xf6, 0x77, 0xf9, 0xd0, 0x7b, 0x74,
+ 0xf9, 0xfa, 0x11, 0x80, 0x8a, 0x4c, 0xb4, 0xb1, 0xe1, 0xea, 0xd0, 0x5b, 0x1d, 0xe1, 0x20, 0xd0,
+ 0xe1, 0xd0, 0xe7, 0xa2, 0x62, 0x6f, 0x98, 0x03, 0x44, 0x00, 0x6c, 0x88, 0x42, 0xbf, 0x0d, 0x25,
+ 0xa2, 0x5b, 0x26, 0x37, 0x3d, 0xa6, 0x6d, 0x78, 0x7d, 0x14, 0xc9, 0x6b, 0x11, 0x9b, 0x64, 0xd3,
+ 0x2c, 0x82, 0x60, 0x53, 0xda, 0x12, 0x83, 0xd9, 0xc4, 0x7c, 0x53, 0xa2, 0xef, 0x46, 0x3c, 0xfa,
+ 0x5e, 0xc8, 0x72, 0x2c, 0xe8, 0x3e, 0x90, 0xd9, 0x6d, 0xe3, 0x30, 0x97, 0x9c, 0xe9, 0xb1, 0x09,
+ 0x8d, 0x35, 0x9f, 0xcc, 0x78, 0xff, 0x37, 0x39, 0x28, 0x86, 0x1e, 0x9f, 0xa5, 0x4a, 0x55, 0x27,
+ 0x75, 0xee, 0x88, 0x4a, 0x22, 0x3f, 0x4c, 0x25, 0x31, 0x36, 0xb8, 0x92, 0x08, 0x3a, 0x59, 0x85,
+ 0xa7, 0x77, 0xb2, 0x8c, 0x4a, 0x62, 0x62, 0xf8, 0x4a, 0x62, 0xf2, 0xe8, 0x4a, 0xc2, 0xfe, 0x3b,
+ 0x0b, 0x50, 0x7f, 0xd9, 0x98, 0x45, 0x51, 0x24, 0x19, 0x87, 0x87, 0x3c, 0xa5, 0x93, 0xb5, 0xdb,
+ 0xe0, 0x70, 0x6c, 0x7f, 0x36, 0x0e, 0xb3, 0xb7, 0x9c, 0x91, 0x1b, 0x0e, 0x02, 0x5e, 0x56, 0x9c,
+ 0x6a, 0x54, 0xe7, 0x48, 0x35, 0xc1, 0x88, 0xa0, 0xcd, 0x7d, 0xbd, 0xbf, 0xd7, 0x34, 0xe9, 0xcb,
+ 0xd5, 0x74, 0xb4, 0x27, 0x83, 0x41, 0x78, 0x10, 0xeb, 0xa1, 0x8d, 0xe4, 0x3d, 0x98, 0xe6, 0x82,
+ 0x39, 0x75, 0xa1, 0x5a, 0x1a, 0x7c, 0xb1, 0x24, 0xa3, 0xdc, 0x19, 0x8d, 0x3e, 0x5d, 0x33, 0x81,
+ 0x38, 0x8e, 0x9b, 0xda, 0x29, 0x19, 0xcb, 0xdc, 0x29, 0x59, 0x85, 0x22, 0x69, 0xb7, 0xbd, 0x8f,
+ 0xee, 0x91, 0x26, 0xd7, 0xa5, 0x6a, 0x68, 0x35, 0x6b, 0x01, 0x00, 0x47, 0x38, 0xa8, 0x0c, 0xe0,
+ 0x34, 0x5d, 0x8f, 0x51, 0x49, 0x51, 0x90, 0xe1, 0x76, 0xc6, 0x8f, 0x75, 0x1b, 0xe1, 0x28, 0x36,
+ 0x30, 0x50, 0x0d, 0xce, 0x38, 0x2e, 0xa7, 0xf5, 0x1e, 0xa3, 0xb5, 0x5d, 0xa7, 0x7b, 0x6f, 0xb3,
+ 0x26, 0xa3, 0xc4, 0xbe, 0xb4, 0xe6, 0xc9, 0xca, 0x2b, 0x5a, 0xd8, 0x99, 0x8d, 0x34, 0x24, 0x9c,
+ 0x4e, 0x8b, 0x2e, 0xc2, 0x94, 0xe3, 0xd6, 0xdb, 0xbd, 0x06, 0xdd, 0x22, 0xa2, 0xc5, 0x17, 0x27,
+ 0xe5, 0x34, 0xe6, 0x0e, 0x0f, 0x56, 0xa6, 0x36, 0x8c, 0x71, 0x1c, 0xc3, 0xf2, 0xa9, 0xe8, 0xc7,
+ 0x06, 0x55, 0x31, 0xa2, 0xba, 0xf1, 0xb1, 0x49, 0x65, 0x62, 0xa5, 0xf4, 0x92, 0x20, 0x53, 0x2f,
+ 0xe9, 0x2f, 0xf3, 0x50, 0x50, 0xad, 0x5c, 0x74, 0x29, 0xd1, 0x2f, 0x7d, 0xa5, 0xaf, 0x5f, 0x5a,
+ 0x4a, 0x6b, 0x7b, 0xdb, 0x50, 0x70, 0x38, 0xef, 0xc5, 0x4f, 0xb7, 0x0d, 0x39, 0x82, 0x35, 0x04,
+ 0x39, 0x00, 0x24, 0x68, 0xb5, 0x06, 0xa9, 0xcb, 0xa5, 0xac, 0x1d, 0xe1, 0x44, 0x37, 0x38, 0x04,
+ 0x70, 0x6c, 0x30, 0x97, 0x1d, 0x1e, 0xcf, 0xdd, 0x71, 0x9a, 0xba, 0x0e, 0xbf, 0x6e, 0x64, 0xcd,
+ 0xd1, 0xbd, 0xdd, 0x87, 0xe1, 0xc5, 0x5e, 0x94, 0x40, 0xc7, 0x10, 0xfc, 0x4c, 0xfa, 0x4e, 0xed,
+ 0xee, 0xfb, 0x6a, 0x39, 0x55, 0xc9, 0x11, 0x6b, 0xce, 0xbe, 0x0c, 0xaf, 0x27, 0xba, 0x3d, 0x21,
+ 0x6d, 0xf2, 0x98, 0x64, 0xdc, 0x95, 0x1c, 0xb1, 0xe6, 0x6c, 0x7f, 0x6a, 0xc1, 0xac, 0x52, 0x77,
+ 0xb5, 0x45, 0xeb, 0xbb, 0x35, 0x41, 0xbb, 0x7e, 0x62, 0xdb, 0xe3, 0x94, 0x27, 0x13, 0xdb, 0x0f,
+ 0x38, 0xe5, 0x58, 0x42, 0x8c, 0xd5, 0xe7, 0x4e, 0x6a, 0xf5, 0xf6, 0x3f, 0x58, 0x30, 0x2e, 0x33,
+ 0xc8, 0x2c, 0xa1, 0x2e, 0xde, 0x55, 0xc9, 0x0d, 0xd5, 0x55, 0x39, 0xa2, 0xdf, 0x15, 0x35, 0x74,
+ 0xc6, 0x9e, 0xd6, 0xd0, 0xb1, 0xbf, 0xb5, 0x60, 0x21, 0xad, 0x49, 0x98, 0x65, 0xfa, 0x6f, 0xc3,
+ 0x64, 0xb7, 0x4d, 0xc4, 0x8e, 0xc7, 0x3a, 0xc9, 0xdb, 0x80, 0x2d, 0x3d, 0x8e, 0x43, 0x0c, 0xc4,
+ 0x00, 0x58, 0x50, 0x8d, 0x04, 0xe6, 0x7e, 0x3d, 0xeb, 0xe1, 0x13, 0xef, 0x6e, 0x45, 0xca, 0x0a,
+ 0x87, 0x38, 0x36, 0xa4, 0xd8, 0x7f, 0x32, 0x0e, 0xf3, 0x92, 0x64, 0xd4, 0xc3, 0x68, 0x94, 0x1d,
+ 0xea, 0xc2, 0x4b, 0xb2, 0x86, 0xe8, 0x3f, 0xbf, 0xd4, 0xa6, 0x5d, 0xd1, 0xf4, 0x2f, 0x6d, 0xa4,
+ 0x62, 0x3d, 0x19, 0x08, 0xc1, 0x03, 0xf8, 0xf6, 0x1f, 0x4a, 0xf0, 0xff, 0xef, 0x50, 0x32, 0x8d,
+ 0x6d, 0xe2, 0x48, 0x63, 0x1b, 0x78, 0x84, 0x4d, 0x3e, 0xc3, 0x11, 0xd6, 0x7f, 0xac, 0x14, 0x33,
+ 0x1d, 0x2b, 0x7f, 0x95, 0x83, 0x89, 0x2d, 0xe6, 0xc9, 0x66, 0xf3, 0xc9, 0xf7, 0x2d, 0xef, 0xc2,
+ 0x18, 0xef, 0xd2, 0xba, 0x8e, 0x79, 0xe7, 0x86, 0xf3, 0x34, 0x3d, 0xbd, 0x5a, 0x97, 0xd6, 0x2b,
+ 0x93, 0x7e, 0x18, 0xf5, 0x7f, 0x61, 0xc9, 0xc8, 0x68, 0xc0, 0xe5, 0xb3, 0x24, 0xfb, 0x01, 0xcb,
+ 0xa7, 0x37, 0xe0, 0x3e, 0xb3, 0xa0, 0xa4, 0x31, 0x5f, 0xd8, 0x4e, 0x8f, 0x9e, 0xdf, 0x80, 0x4e,
+ 0xcf, 0x9f, 0x45, 0x2b, 0xf0, 0x95, 0x86, 0x7e, 0x17, 0xe6, 0xbb, 0xcc, 0xeb, 0x78, 0xbe, 0xa7,
+ 0x6e, 0x79, 0x6d, 0xa7, 0xee, 0xd0, 0xa0, 0x59, 0x78, 0x69, 0x68, 0x79, 0x06, 0xf9, 0x7e, 0xe5,
+ 0x7b, 0x5a, 0xee, 0xfc, 0x56, 0x92, 0x2f, 0xee, 0x17, 0x65, 0xff, 0xa7, 0x05, 0xd3, 0x31, 0xdd,
+ 0xa3, 0x3a, 0x40, 0xdd, 0x73, 0x1b, 0x8e, 0x08, 0x2f, 0x64, 0x4b, 0xe7, 0x57, 0x87, 0xd3, 0x6a,
+ 0x35, 0xa0, 0x8b, 0x8c, 0x2e, 0x1c, 0xe2, 0xd8, 0x60, 0x8b, 0x2e, 0x04, 0x2f, 0x1f, 0xe2, 0xf9,
+ 0x92, 0x7a, 0xf9, 0xf0, 0xe4, 0x60, 0x65, 0x4a, 0xcf, 0xc9, 0x7c, 0x09, 0x91, 0xe5, 0x95, 0xc0,
+ 0xdf, 0xe7, 0xa0, 0x18, 0xae, 0xff, 0x39, 0xb8, 0xd1, 0x07, 0x31, 0x37, 0xba, 0x90, 0x71, 0xe7,
+ 0xa4, 0x23, 0x85, 0x39, 0x89, 0xe1, 0x4c, 0x8f, 0x13, 0xce, 0x94, 0xd5, 0x24, 0x8e, 0x70, 0xa7,
+ 0x7f, 0x56, 0x9b, 0xaf, 0x70, 0x9f, 0x83, 0x43, 0xdd, 0x8b, 0x3b, 0xd4, 0x6a, 0xc6, 0xd5, 0x0c,
+ 0x70, 0xa9, 0x9f, 0x59, 0x30, 0x9b, 0x70, 0x02, 0xf4, 0x2a, 0x8c, 0xcb, 0xee, 0x90, 0xb6, 0xaf,
+ 0x90, 0x50, 0xf7, 0x12, 0x24, 0x0c, 0x6d, 0xc1, 0x02, 0xe9, 0x09, 0x2f, 0xa4, 0xbd, 0xe1, 0x92,
+ 0xed, 0x36, 0x6d, 0xe8, 0x27, 0x32, 0xbf, 0xa0, 0x69, 0x16, 0xd6, 0x52, 0x70, 0x70, 0x2a, 0xa5,
+ 0xfd, 0x45, 0x0e, 0x50, 0x38, 0x98, 0xa5, 0xab, 0xfa, 0x18, 0x26, 0x76, 0x54, 0xff, 0xe7, 0xd9,
+ 0xda, 0xe2, 0x95, 0x92, 0x79, 0x33, 0x10, 0xf0, 0x44, 0x3f, 0x3a, 0x1e, 0x3b, 0x82, 0x7e, 0x1b,
+ 0x42, 0x0f, 0x01, 0x76, 0x1c, 0xd7, 0xe1, 0xad, 0x11, 0x2f, 0xf0, 0xe4, 0x69, 0x7e, 0x33, 0xe4,
+ 0x80, 0x0d, 0x6e, 0xf6, 0x27, 0x39, 0xc3, 0x3e, 0x65, 0xb8, 0x1c, 0x6a, 0x5f, 0xdf, 0x8c, 0x2b,
+ 0xb3, 0xd8, 0x7f, 0x65, 0x62, 0x28, 0x66, 0x6c, 0x8f, 0xb0, 0xa0, 0x7b, 0x7b, 0x39, 0xa3, 0x5a,
+ 0xee, 0x13, 0xe6, 0xf8, 0x1b, 0x1f, 0x6d, 0xe9, 0x7d, 0xc2, 0x38, 0x96, 0x2c, 0xd1, 0x0f, 0xfd,
+ 0xa9, 0xd2, 0xb0, 0x66, 0xcb, 0x1c, 0x13, 0x04, 0xed, 0x9a, 0xeb, 0xa3, 0x5d, 0x8e, 0x15, 0x43,
+ 0xfb, 0x5f, 0x0b, 0x86, 0xc1, 0xeb, 0xa8, 0x7d, 0x07, 0x50, 0x9b, 0x70, 0x71, 0x9b, 0xb8, 0x0d,
+ 0xdf, 0x3c, 0xe9, 0x0e, 0xa3, 0xbc, 0xa5, 0x33, 0xb4, 0x25, 0xcd, 0x05, 0x6d, 0xf6, 0x61, 0xe0,
+ 0x14, 0x2a, 0x74, 0x29, 0x1e, 0x9c, 0x57, 0x92, 0xc1, 0x79, 0x26, 0xf2, 0xb6, 0xd1, 0xc2, 0xb3,
+ 0x69, 0xee, 0xe3, 0x27, 0x60, 0xee, 0xbf, 0x03, 0xf3, 0x3b, 0xc9, 0x2b, 0x34, 0x7d, 0xa1, 0x7e,
+ 0x79, 0xc4, 0x1b, 0xb8, 0xca, 0x99, 0xc3, 0xe8, 0xde, 0x25, 0x1a, 0xc6, 0xfd, 0x82, 0x90, 0x17,
+ 0x3c, 0x1d, 0x93, 0xd5, 0xa7, 0xea, 0x61, 0x0c, 0xed, 0x72, 0x89, 0xba, 0x35, 0xf9, 0x68, 0x4c,
+ 0xb1, 0xc4, 0x31, 0x01, 0x09, 0x17, 0x2c, 0x1c, 0xa7, 0x0b, 0xa2, 0x4b, 0x50, 0xaa, 0xf7, 0x18,
+ 0xa3, 0xae, 0xf0, 0xa7, 0x23, 0x53, 0xd9, 0x7c, 0xd4, 0x8b, 0xae, 0x46, 0x20, 0x6c, 0xe2, 0xf9,
+ 0xe6, 0x68, 0xfc, 0xb9, 0x26, 0x04, 0xed, 0x74, 0x85, 0xec, 0x82, 0xe5, 0x23, 0x73, 0xac, 0xf6,
+ 0x61, 0xe0, 0x14, 0x2a, 0xf4, 0xa1, 0xf4, 0x79, 0x41, 0x65, 0xbd, 0xf2, 0xec, 0x75, 0x79, 0x51,
+ 0xc7, 0x0b, 0xa1, 0xe2, 0x85, 0xa0, 0xf6, 0x9f, 0xc6, 0xc2, 0xcc, 0x70, 0xdd, 0x82, 0x25, 0xc8,
+ 0x11, 0x9e, 0x6c, 0x25, 0xaf, 0x71, 0x9c, 0x23, 0x1c, 0xfd, 0x08, 0xc6, 0x19, 0x15, 0x6c, 0x5f,
+ 0x47, 0xc3, 0x2b, 0x23, 0x78, 0x3e, 0xf6, 0xe9, 0xd5, 0x54, 0xe5, 0x4f, 0xac, 0x38, 0x1a, 0x4d,
+ 0x8a, 0xfc, 0x89, 0x35, 0x29, 0x2a, 0xc6, 0x19, 0x16, 0xce, 0xc5, 0xaf, 0xac, 0x88, 0xda, 0x10,
+ 0xa5, 0x96, 0x7c, 0x74, 0xd2, 0xeb, 0x8d, 0xe2, 0x38, 0xc4, 0xb0, 0x19, 0x44, 0xe9, 0x67, 0xf0,
+ 0x6a, 0x15, 0x3d, 0xd6, 0x49, 0x92, 0x95, 0xe5, 0x2d, 0x65, 0x1f, 0x9b, 0x41, 0xc9, 0x92, 0xfd,
+ 0x85, 0x05, 0x67, 0x52, 0xb1, 0xc3, 0x28, 0x9f, 0x3b, 0xc1, 0x28, 0x6f, 0x1d, 0x77, 0x94, 0x7f,
+ 0x68, 0xa8, 0x30, 0x98, 0xc2, 0x71, 0x3d, 0x35, 0xff, 0x79, 0x0e, 0xe6, 0x30, 0xed, 0x7a, 0xb1,
+ 0x86, 0xc7, 0x56, 0xf0, 0x3a, 0x2d, 0x43, 0x86, 0x90, 0xe8, 0xe0, 0x57, 0x26, 0x62, 0xcf, 0xd2,
+ 0x7e, 0x08, 0xe3, 0xb2, 0x17, 0xa1, 0x73, 0x9a, 0xcb, 0x19, 0x6e, 0x5c, 0x63, 0x5c, 0xa5, 0x1f,
+ 0xa8, 0xa6, 0x8e, 0x62, 0xe8, 0x73, 0x96, 0x97, 0xa5, 0xda, 0x0d, 0x2e, 0x67, 0xb8, 0x76, 0xed,
+ 0xe7, 0x2c, 0x87, 0xb1, 0x62, 0x68, 0x7f, 0x9a, 0x03, 0x95, 0x4d, 0x3c, 0x87, 0xaa, 0xe1, 0xd7,
+ 0x63, 0x55, 0xc3, 0x90, 0xe9, 0xb0, 0x9c, 0xdc, 0xc0, 0x8a, 0x21, 0x99, 0xe9, 0x9d, 0xcb, 0xc2,
+ 0xf4, 0xe9, 0xd5, 0xc2, 0x3f, 0x59, 0x50, 0x94, 0x78, 0xcf, 0xa1, 0x52, 0xd8, 0x8a, 0x57, 0x0a,
+ 0x6f, 0x65, 0x58, 0xc5, 0x80, 0x2a, 0xe1, 0x93, 0xbc, 0x9e, 0x7d, 0x98, 0x47, 0xb6, 0x08, 0x6b,
+ 0xe8, 0x0c, 0x29, 0xf2, 0x40, 0x7f, 0x10, 0x2b, 0x18, 0xfa, 0x2d, 0x98, 0x63, 0xea, 0xfe, 0x9d,
+ 0x36, 0x6e, 0x86, 0xe9, 0x4a, 0x3e, 0xf3, 0x05, 0xb9, 0xbe, 0xc4, 0x8f, 0x3a, 0x65, 0x38, 0xc1,
+ 0x15, 0xf7, 0xc9, 0xf1, 0x53, 0x98, 0x6e, 0x32, 0x96, 0xe9, 0xa3, 0xfd, 0xf2, 0x88, 0x81, 0x53,
+ 0xa5, 0x30, 0x7d, 0xc3, 0xb8, 0x5f, 0x10, 0x6a, 0xc1, 0x94, 0xf9, 0xb4, 0x47, 0xdb, 0xd2, 0xf9,
+ 0xec, 0x6f, 0x88, 0xd4, 0x25, 0x8c, 0x39, 0x82, 0x63, 0x9c, 0xed, 0x83, 0x02, 0x94, 0x0c, 0xe3,
+ 0x4b, 0x74, 0x1f, 0xa6, 0x4f, 0xa6, 0xfb, 0x90, 0x9e, 0x2c, 0x97, 0x46, 0x4a, 0x96, 0xcf, 0xc5,
+ 0x93, 0xe5, 0xef, 0x27, 0x93, 0x65, 0x90, 0xab, 0x8b, 0x25, 0xca, 0x1c, 0x66, 0x74, 0xd6, 0x18,
+ 0xbc, 0xd1, 0xca, 0x54, 0x7e, 0xf4, 0xe7, 0xa6, 0xe8, 0xf0, 0x60, 0x25, 0x78, 0x61, 0x11, 0xbc,
+ 0xcd, 0x4a, 0x88, 0x40, 0xd7, 0x43, 0xa1, 0xb5, 0x5e, 0xa7, 0x43, 0xd8, 0xfe, 0xe2, 0x94, 0x9c,
+ 0x70, 0xd8, 0x96, 0xbc, 0x19, 0x83, 0xe2, 0x04, 0x36, 0xda, 0x82, 0x82, 0x4a, 0x3a, 0xf5, 0xbb,
+ 0x9f, 0xb7, 0xb3, 0xe4, 0xb3, 0x2a, 0xcf, 0x50, 0xbf, 0xb1, 0xe6, 0x63, 0xd6, 0x0b, 0xc5, 0x23,
+ 0xea, 0x85, 0x3b, 0x80, 0xbc, 0x6d, 0x99, 0xd1, 0x34, 0x6e, 0xa9, 0x6f, 0xb2, 0x7c, 0xab, 0x2c,
+ 0xc4, 0xd3, 0xc9, 0xbb, 0x7d, 0x18, 0x38, 0x85, 0xca, 0xf7, 0x6a, 0x9d, 0x64, 0x86, 0xae, 0xa0,
+ 0x6b, 0x83, 0xac, 0x89, 0x5a, 0x54, 0x86, 0x2c, 0xf8, 0x5e, 0x5d, 0x4d, 0x70, 0xc5, 0x7d, 0x72,
+ 0xd0, 0x4f, 0x60, 0xda, 0x37, 0xa1, 0x48, 0x30, 0x3c, 0xa3, 0xe0, 0xf9, 0xc3, 0x83, 0x95, 0xe9,
+ 0x4d, 0x93, 0x25, 0x8e, 0x4b, 0xb0, 0xff, 0x37, 0x07, 0x31, 0xff, 0x43, 0x3f, 0xb3, 0x60, 0x9e,
+ 0x24, 0x3e, 0x28, 0x0a, 0xd2, 0x97, 0x5f, 0xcd, 0xf6, 0x95, 0x57, 0xdf, 0xf7, 0x48, 0x51, 0xf3,
+ 0x31, 0x89, 0xc2, 0x71, 0xbf, 0x50, 0xf4, 0x47, 0x16, 0x9c, 0x26, 0xfd, 0x5f, 0x8c, 0xe9, 0xf3,
+ 0xf0, 0xea, 0xc8, 0x9f, 0x9c, 0x55, 0x5e, 0x3e, 0x3c, 0x58, 0x49, 0xfb, 0x96, 0x0e, 0xa7, 0x89,
+ 0x43, 0x3f, 0x86, 0x31, 0xc2, 0x9a, 0x41, 0xa1, 0x9e, 0x5d, 0x6c, 0xf0, 0x21, 0x60, 0x74, 0x20,
+ 0xaf, 0xb1, 0x26, 0xc7, 0x92, 0xa9, 0xfd, 0x75, 0x1e, 0xe6, 0x92, 0xaf, 0x2a, 0xf5, 0x43, 0x94,
+ 0xb1, 0xd4, 0x87, 0x28, 0xaf, 0xc2, 0x38, 0xa9, 0x8b, 0xf0, 0x55, 0x48, 0xf4, 0x92, 0xd8, 0x1f,
+ 0xc4, 0x0a, 0x86, 0x1e, 0x40, 0x91, 0x0b, 0xc2, 0x84, 0x5f, 0xbf, 0xe9, 0x12, 0x3a, 0xf3, 0xab,
+ 0xe9, 0x5a, 0xc0, 0x00, 0x47, 0xbc, 0xd0, 0x95, 0x78, 0x38, 0xb3, 0x93, 0xe1, 0x6c, 0xde, 0x5c,
+ 0xcb, 0xa8, 0xe5, 0x7f, 0x07, 0x4a, 0xc6, 0x3e, 0xe8, 0xd3, 0xe5, 0x5a, 0x66, 0xbd, 0x47, 0x66,
+ 0x37, 0xab, 0xbe, 0x26, 0x8c, 0x20, 0x26, 0xff, 0xa8, 0x3e, 0x96, 0xda, 0x7a, 0xa6, 0xfa, 0x58,
+ 0xaa, 0xcb, 0xe0, 0x66, 0xcf, 0xc2, 0x74, 0xec, 0x71, 0x94, 0xec, 0x3c, 0x3f, 0x20, 0x8c, 0xb6,
+ 0xbc, 0x1e, 0xa7, 0x2f, 0x6a, 0xe7, 0x39, 0x9c, 0xe0, 0x71, 0x77, 0x9e, 0x23, 0xc6, 0x47, 0x77,
+ 0x9e, 0x43, 0xdc, 0x17, 0xb6, 0xf3, 0x1c, 0xce, 0x70, 0x40, 0x4e, 0xf9, 0x3f, 0x39, 0x63, 0x15,
+ 0xf1, 0xbc, 0x32, 0xf7, 0x94, 0xbc, 0xf2, 0x11, 0x4c, 0x3a, 0xae, 0xa0, 0x6c, 0x8f, 0xb4, 0x75,
+ 0x8b, 0x60, 0xc8, 0xa5, 0xae, 0xf7, 0x98, 0xce, 0xaa, 0x82, 0xa5, 0x6e, 0x68, 0x3e, 0x38, 0xe4,
+ 0x88, 0xda, 0x70, 0x26, 0xe8, 0x49, 0x31, 0x4a, 0xa2, 0x9e, 0xb8, 0xbe, 0x57, 0x7e, 0x37, 0xb8,
+ 0xd4, 0xbc, 0x99, 0x86, 0xf4, 0x64, 0x10, 0x00, 0xa7, 0x33, 0x45, 0x1c, 0xa6, 0xb9, 0x51, 0x50,
+ 0x05, 0x07, 0xc9, 0x90, 0xfd, 0xbc, 0x64, 0x0d, 0x6a, 0x5c, 0x46, 0x9b, 0x4c, 0x71, 0x5c, 0x86,
+ 0xfd, 0xef, 0x79, 0x98, 0x4d, 0x58, 0x5a, 0x22, 0x71, 0x2c, 0x3e, 0xcf, 0xc4, 0xb1, 0x30, 0x52,
+ 0xe2, 0x98, 0x9e, 0xd3, 0x8c, 0x8d, 0x94, 0xd3, 0xbc, 0xa7, 0xf2, 0x0a, 0xbd, 0x73, 0x1b, 0xeb,
+ 0xfa, 0x99, 0x60, 0xa8, 0xcd, 0x4d, 0x13, 0x88, 0xe3, 0xb8, 0xf2, 0x14, 0x6e, 0xf4, 0x7f, 0x13,
+ 0xa7, 0x93, 0xa2, 0xab, 0x59, 0x1f, 0x5f, 0x84, 0x0c, 0xd4, 0x29, 0x9c, 0x02, 0xc0, 0x69, 0xe2,
+ 0x2a, 0x77, 0x3e, 0xff, 0x66, 0xf9, 0xd4, 0x97, 0xdf, 0x2c, 0x9f, 0xfa, 0xea, 0x9b, 0xe5, 0x53,
+ 0x3f, 0x3d, 0x5c, 0xb6, 0x3e, 0x3f, 0x5c, 0xb6, 0xbe, 0x3c, 0x5c, 0xb6, 0xbe, 0x3a, 0x5c, 0xb6,
+ 0xfe, 0xeb, 0x70, 0xd9, 0xfa, 0x8b, 0x6f, 0x97, 0x4f, 0x3d, 0x7c, 0x6d, 0x98, 0x7f, 0x7b, 0xf0,
+ 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xb4, 0x7f, 0x24, 0x05, 0x1d, 0x41, 0x00, 0x00,
}
func (m *AnalysisRunArgument) Marshal() (dAtA []byte, err error) {
@@ -2091,6 +2092,14 @@ func (m *AnalysisTemplateReference) MarshalToSizedBuffer(dAtA []byte) (int, erro
_ = i
var l int
_ = l
+ i--
+ if m.ClusterScope {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x10
i -= len(m.Name)
copy(dAtA[i:], m.Name)
i = encodeVarintGenerated(dAtA, i, uint64(len(m.Name)))
@@ -5085,6 +5094,7 @@ func (m *AnalysisTemplateReference) Size() (n int) {
_ = l
l = len(m.Name)
n += 1 + l + sovGenerated(uint64(l))
+ n += 2
return n
}
@@ -6242,6 +6252,7 @@ func (this *AnalysisTemplateReference) String() string {
}
s := strings.Join([]string{`&AnalysisTemplateReference{`,
`Name:` + fmt.Sprintf("%v", this.Name) + `,`,
+ `ClusterScope:` + fmt.Sprintf("%v", this.ClusterScope) + `,`,
`}`,
}, "")
return s
@@ -7729,6 +7740,26 @@ func (m *AnalysisTemplateReference) Unmarshal(dAtA []byte) error {
}
m.Name = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ClusterScope", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return ErrIntOverflowGenerated
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.ClusterScope = bool(v != 0)
default:
iNdEx = preIndex
skippy, err := skipGenerated(dAtA[iNdEx:])
diff --git a/api/v1alpha1/generated.proto b/api/v1alpha1/generated.proto
index 08f411a1c..2492372bb 100644
--- a/api/v1alpha1/generated.proto
+++ b/api/v1alpha1/generated.proto
@@ -55,6 +55,12 @@ message AnalysisTemplateReference {
//
// +kubebuilder:validation:Required
optional string name = 1;
+
+ // ClusterScope determines whether the template is an
+ // AnalysisTemplate or a ClusterAnalysisTemplate resource
+ //
+ // +kubebuilder:validation:Optional
+ optional bool clusterScope = 2;
}
// ApprovedStage describes a Stage for which Freight has been (manually)
diff --git a/api/v1alpha1/stage_types.go b/api/v1alpha1/stage_types.go
index f38e37896..8f085096a 100644
--- a/api/v1alpha1/stage_types.go
+++ b/api/v1alpha1/stage_types.go
@@ -596,6 +596,11 @@ type AnalysisTemplateReference struct {
//
// +kubebuilder:validation:Required
Name string `json:"name" protobuf:"bytes,1,opt,name=name"`
+ // ClusterScope determines whether the template is an
+ // AnalysisTemplate or a ClusterAnalysisTemplate resource
+ //
+ // +kubebuilder:validation:Optional
+ ClusterScope bool `json:"clusterScope" protobuf:"varint,2,opt,name=clusterScope"`
}
// AnalysisRunMetadata contains optional metadata that should be applied to all
diff --git a/charts/kargo/resources/crds/kargo.akuity.io_stages.yaml b/charts/kargo/resources/crds/kargo.akuity.io_stages.yaml
index c2d17a876..bf31043f2 100644
--- a/charts/kargo/resources/crds/kargo.akuity.io_stages.yaml
+++ b/charts/kargo/resources/crds/kargo.akuity.io_stages.yaml
@@ -245,6 +245,11 @@ spec:
description: AnalysisTemplateReference is a reference to an
AnalysisTemplate.
properties:
+ clusterScope:
+ description: |-
+ ClusterScope determines whether the template is an
+ AnalysisTemplate or a ClusterAnalysisTemplate resource
+ type: boolean
name:
description: |-
Name is the name of the AnalysisTemplate in the same project/namespace as
diff --git a/charts/kargo/templates/api/cluster-role.yaml b/charts/kargo/templates/api/cluster-role.yaml
index f1b6b6d25..de0670d83 100644
--- a/charts/kargo/templates/api/cluster-role.yaml
+++ b/charts/kargo/templates/api/cluster-role.yaml
@@ -113,6 +113,7 @@ rules:
- argoproj.io
resources:
- analysistemplates
+ - clusteranalysistemplates
verbs:
- "*"
{{- end }}
diff --git a/charts/kargo/templates/controller/cluster-roles.yaml b/charts/kargo/templates/controller/cluster-roles.yaml
index f482a18cf..c24215bcb 100644
--- a/charts/kargo/templates/controller/cluster-roles.yaml
+++ b/charts/kargo/templates/controller/cluster-roles.yaml
@@ -127,6 +127,14 @@ rules:
- get
- list
- watch
+- apiGroups:
+ - argoproj.io
+ resources:
+ - clusteranalysistemplates
+ verbs:
+ - get
+ - list
+ - watch
- apiGroups:
- argoproj.io
resources:
diff --git a/charts/kargo/templates/users/cluster-roles.yaml b/charts/kargo/templates/users/cluster-roles.yaml
index 545ab1ad9..71fcc9afa 100644
--- a/charts/kargo/templates/users/cluster-roles.yaml
+++ b/charts/kargo/templates/users/cluster-roles.yaml
@@ -74,6 +74,12 @@ rules:
- analysistemplates
verbs:
- "*" # full access to analysistemplates
+- apiGroups:
+ - argoproj.io
+ resources:
+ - clusteranalysistemplates
+ verbs:
+ - "*" # full access to clusteranalysistemplates
{{- end }}
---
apiVersion: rbac.authorization.k8s.io/v1
@@ -120,6 +126,7 @@ rules:
resources:
- analysisruns
- analysistemplates
+ - clusteranalysistemplates
verbs:
- get
- list
diff --git a/docs/docs/15-concepts.md b/docs/docs/15-concepts.md
index 1348a7b81..b09786b2f 100644
--- a/docs/docs/15-concepts.md
+++ b/docs/docs/15-concepts.md
@@ -291,11 +291,11 @@ processes that should be executed after a `Promotion` has successfully deployed
healthy state.
Verification processes are defined through _references_ to one or more
-[Argo Rollouts `AnalysisTemplate` resources](https://argoproj.github.io/argo-rollouts/features/analysis/)
-that reside in the same `Project`/`Namespace` as the `Stage` resource.
+[Argo Rollouts `AnalysisTemplate` or `ClusterAnalysisTemplate` resources](https://argoproj.github.io/argo-rollouts/features/analysis/).
+`AnalysisTemplate` resources must reside in the same `Project`/`Namespace` as the `Stage` resource but `ClusterAnalysisTemplate` can be referenced by any `Stage`.
:::info
-Argo Rollouts `AnalysisTemplate` resources (and the `AnalysisRun` resources that
+Argo Rollouts `AnalysisTemplate` and `ClusterAnalysisTemplate` resources (and the `AnalysisRun` resources that
are spawned from them) were intentionally built to be re-usable in contexts
other than Argo Rollouts. Re-using this resource type to define verification
processes means those processes benefit from this rich and battle-tested feature
@@ -344,6 +344,23 @@ spec:
value: bar
```
+To refer to a `ClusterAnalysisTemplate` that exists across all namespaces,
+use the `clusterScope` option.
+
+```yaml
+apiVersion: kargo.akuity.io/v1alpha1
+kind: Stage
+metadata:
+ name: test
+ namespace: kargo-demo
+spec:
+ # ...
+ verification:
+ analysisTemplates:
+ - name: kargo-demo
+ clusterScope: true
+```
+
An `AnalysisTemplate` could be as simple as the following, which merely executes
a Kubernetes `Job` that is defined inline:
diff --git a/internal/api/delete_clusteranalysistemplate_v1alpha1.go b/internal/api/delete_clusteranalysistemplate_v1alpha1.go
new file mode 100644
index 000000000..3377867f2
--- /dev/null
+++ b/internal/api/delete_clusteranalysistemplate_v1alpha1.go
@@ -0,0 +1,40 @@
+package api
+
+import (
+ "context"
+ "errors"
+ "fmt"
+
+ "connectrpc.com/connect"
+ metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+
+ "github.com/akuity/kargo/internal/controller/rollouts/api/v1alpha1"
+ svcv1alpha1 "github.com/akuity/kargo/pkg/api/service/v1alpha1"
+)
+
+func (s *server) DeleteClusterAnalysisTemplate(
+ ctx context.Context,
+ req *connect.Request[svcv1alpha1.DeleteClusterAnalysisTemplateRequest],
+) (*connect.Response[svcv1alpha1.DeleteClusterAnalysisTemplateResponse], error) {
+ if !s.cfg.RolloutsIntegrationEnabled {
+ return nil, connect.NewError(
+ connect.CodeUnimplemented,
+ errors.New("Argo Rollouts integration is not enabled"),
+ )
+ }
+
+ name := req.Msg.GetName()
+ if err := validateFieldNotEmpty("name", name); err != nil {
+ return nil, err
+ }
+
+ if err := s.client.Delete(ctx, &v1alpha1.ClusterAnalysisTemplate{
+ ObjectMeta: metav1.ObjectMeta{
+ Name: name,
+ },
+ }); err != nil {
+ return nil, fmt.Errorf("delete ClusterAnalysisTemplate: %w", err)
+ }
+
+ return connect.NewResponse(&svcv1alpha1.DeleteClusterAnalysisTemplateResponse{}), nil
+}
diff --git a/internal/api/delete_clusteranalysistemplate_v1alpha1_test.go b/internal/api/delete_clusteranalysistemplate_v1alpha1_test.go
new file mode 100644
index 000000000..596e54a08
--- /dev/null
+++ b/internal/api/delete_clusteranalysistemplate_v1alpha1_test.go
@@ -0,0 +1,108 @@
+package api
+
+import (
+ "context"
+ "fmt"
+ "testing"
+
+ "connectrpc.com/connect"
+ "github.com/stretchr/testify/require"
+ "k8s.io/apimachinery/pkg/runtime"
+ "k8s.io/client-go/rest"
+ "sigs.k8s.io/controller-runtime/pkg/client"
+ "sigs.k8s.io/controller-runtime/pkg/client/fake"
+
+ "github.com/akuity/kargo/internal/api/config"
+ "github.com/akuity/kargo/internal/api/kubernetes"
+ "github.com/akuity/kargo/internal/api/validation"
+ rollouts "github.com/akuity/kargo/internal/controller/rollouts/api/v1alpha1"
+ svcv1alpha1 "github.com/akuity/kargo/pkg/api/service/v1alpha1"
+)
+
+func TestDeleteClusterAnalysisTemplate(t *testing.T) {
+ testCases := map[string]struct {
+ req *svcv1alpha1.DeleteClusterAnalysisTemplateRequest
+ rolloutsDisabled bool
+ errExpected bool
+ expectedCode connect.Code
+ }{
+ "empty name": {
+ req: &svcv1alpha1.DeleteClusterAnalysisTemplateRequest{
+ Name: "",
+ },
+ errExpected: true,
+ expectedCode: connect.CodeInvalidArgument,
+ },
+ "existing ClusterAnalysisTemplate": {
+ req: &svcv1alpha1.DeleteClusterAnalysisTemplateRequest{
+ Name: "test",
+ },
+ },
+ "non-existing ClusterAnalysisTemplate": {
+ req: &svcv1alpha1.DeleteClusterAnalysisTemplateRequest{
+ Name: "non-existing",
+ },
+ errExpected: true,
+ expectedCode: connect.CodeUnknown,
+ },
+ "Argo Rollouts integration is not enabled": {
+ req: &svcv1alpha1.DeleteClusterAnalysisTemplateRequest{
+ Name: "test",
+ },
+ rolloutsDisabled: true,
+ errExpected: true,
+ expectedCode: connect.CodeUnimplemented,
+ },
+ }
+ for name, testCase := range testCases {
+ t.Run(name, func(t *testing.T) {
+ t.Parallel()
+
+ ctx := context.Background()
+
+ cfg := config.ServerConfigFromEnv()
+ if testCase.rolloutsDisabled {
+ cfg.RolloutsIntegrationEnabled = false
+ }
+
+ client, err := kubernetes.NewClient(
+ ctx,
+ &rest.Config{},
+ kubernetes.ClientOptions{
+ SkipAuthorization: true,
+ NewInternalClient: func(
+ _ context.Context,
+ _ *rest.Config,
+ scheme *runtime.Scheme,
+ ) (client.Client, error) {
+ return fake.NewClientBuilder().
+ WithScheme(scheme).
+ WithObjects(
+ mustNewObject[rollouts.ClusterAnalysisTemplate]("testdata/clusteranalysistemplate.yaml"),
+ ).
+ Build(), nil
+ },
+ },
+ )
+ require.NoError(t, err)
+
+ svr := &server{
+ client: client,
+ cfg: cfg,
+ externalValidateProjectFn: validation.ValidateProject,
+ }
+ _, err = (svr).DeleteClusterAnalysisTemplate(ctx, connect.NewRequest(testCase.req))
+ if testCase.errExpected {
+ require.Error(t, err)
+ fmt.Printf("actual: %s, expected: %s", connect.CodeOf(err), testCase.expectedCode)
+ require.Equal(t, testCase.expectedCode, connect.CodeOf(err))
+ return
+ }
+ require.NoError(t, err)
+
+ at, err := rollouts.GetClusterAnalysisTemplate(ctx, client, testCase.req.Name)
+ require.NoError(t, err)
+ require.Nil(t, at)
+ })
+ }
+}
diff --git a/internal/api/get_clusteranalysistemplate_v1alpha1.go b/internal/api/get_clusteranalysistemplate_v1alpha1.go
new file mode 100644
index 000000000..d82b80867
--- /dev/null
+++ b/internal/api/get_clusteranalysistemplate_v1alpha1.go
@@ -0,0 +1,79 @@
+package api
+
+import (
+ "context"
+ "errors"
+ "fmt"
+
+ "connectrpc.com/connect"
+ "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
+ "k8s.io/apimachinery/pkg/runtime"
+ "k8s.io/apimachinery/pkg/types"
+ "sigs.k8s.io/controller-runtime/pkg/client"
+
+ rolloutsapi "github.com/akuity/kargo/internal/controller/rollouts/api/v1alpha1"
+ svcv1alpha1 "github.com/akuity/kargo/pkg/api/service/v1alpha1"
+)
+
+func (s *server) GetClusterAnalysisTemplate(
+ ctx context.Context,
+ req *connect.Request[svcv1alpha1.GetClusterAnalysisTemplateRequest],
+) (*connect.Response[svcv1alpha1.GetClusterAnalysisTemplateResponse], error) {
+ if !s.cfg.RolloutsIntegrationEnabled {
+ return nil, connect.NewError(
+ connect.CodeUnimplemented,
+ errors.New("Argo Rollouts integration is not enabled"),
+ )
+ }
+
+ name := req.Msg.GetName()
+ if err := validateFieldNotEmpty("name", name); err != nil {
+ return nil, err
+ }
+
+ // Get the ClusterAnalysisTemplate from the Kubernetes API as an unstructured object.
+ // Using an unstructured object allows us to return the object _as presented
+ // by the API_ if a raw format is requested.
+ u := unstructured.Unstructured{
+ Object: map[string]any{
+ "apiVersion": rolloutsapi.GroupVersion.String(),
+ "kind": "ClusterAnalysisTemplate",
+ },
+ }
+ if err := s.client.Get(ctx, types.NamespacedName{
+ Name: name,
+ }, &u); err != nil {
+ if client.IgnoreNotFound(err) == nil {
+ err = fmt.Errorf("ClusterAnalysisTemplate %q not found", name)
+ return nil, connect.NewError(connect.CodeNotFound, err)
+ }
+ return nil, err
+ }
+
+ switch req.Msg.GetFormat() {
+ case svcv1alpha1.RawFormat_RAW_FORMAT_JSON, svcv1alpha1.RawFormat_RAW_FORMAT_YAML:
+ _, raw, err := objectOrRaw(&u, req.Msg.GetFormat())
+ if err != nil {
+ return nil, connect.NewError(connect.CodeInternal, err)
+ }
+ return connect.NewResponse(&svcv1alpha1.GetClusterAnalysisTemplateResponse{
+ Result: &svcv1alpha1.GetClusterAnalysisTemplateResponse_Raw{
+ Raw: raw,
+ },
+ }), nil
+ default:
+ at := rolloutsapi.ClusterAnalysisTemplate{}
+ if err := runtime.DefaultUnstructuredConverter.FromUnstructured(u.Object, &at); err != nil {
+ return nil, connect.NewError(connect.CodeInternal, err)
+ }
+ obj, _, err := objectOrRaw(&at, req.Msg.GetFormat())
+ if err != nil {
+ return nil, connect.NewError(connect.CodeInternal, err)
+ }
+ return connect.NewResponse(&svcv1alpha1.GetClusterAnalysisTemplateResponse{
+ Result: &svcv1alpha1.GetClusterAnalysisTemplateResponse_ClusterAnalysisTemplate{
+ ClusterAnalysisTemplate: obj,
+ },
+ }), nil
+ }
+}
diff --git a/internal/api/get_clusteranalysistemplate_v1alpha1_test.go b/internal/api/get_clusteranalysistemplate_v1alpha1_test.go
new file mode 100644
index 000000000..d0e87eafc
--- /dev/null
+++ b/internal/api/get_clusteranalysistemplate_v1alpha1_test.go
@@ -0,0 +1,194 @@
+package api
+
+import (
+ "context"
+ "testing"
+
+ "connectrpc.com/connect"
+ "github.com/stretchr/testify/require"
+ apierrors "k8s.io/apimachinery/pkg/api/errors"
+ "k8s.io/apimachinery/pkg/runtime"
+ "k8s.io/apimachinery/pkg/runtime/serializer"
+ "k8s.io/client-go/rest"
+ "sigs.k8s.io/controller-runtime/pkg/client"
+ "sigs.k8s.io/controller-runtime/pkg/client/fake"
+ "sigs.k8s.io/controller-runtime/pkg/client/interceptor"
+
+ "github.com/akuity/kargo/internal/api/config"
+ "github.com/akuity/kargo/internal/api/kubernetes"
+ "github.com/akuity/kargo/internal/api/validation"
+ rollouts "github.com/akuity/kargo/internal/controller/rollouts/api/v1alpha1"
+ svcv1alpha1 "github.com/akuity/kargo/pkg/api/service/v1alpha1"
+)
+
+func TestGetClusterAnalysisTemplate(t *testing.T) {
+ testCases := map[string]struct {
+ req *svcv1alpha1.GetClusterAnalysisTemplateRequest
+ rolloutsDisabled bool
+ interceptor interceptor.Funcs
+ assertions func(*testing.T, *connect.Response[svcv1alpha1.GetClusterAnalysisTemplateResponse], error)
+ }{
+ "empty name": {
+ req: &svcv1alpha1.GetClusterAnalysisTemplateRequest{
+ Name: "",
+ },
+ assertions: func(t *testing.T, c *connect.Response[svcv1alpha1.GetClusterAnalysisTemplateResponse], err error) {
+ require.Error(t, err)
+ require.Equal(t, connect.CodeInvalidArgument, connect.CodeOf(err))
+ require.Nil(t, c)
+ },
+ },
+ "existing ClusterAnalysisTemplate": {
+ req: &svcv1alpha1.GetClusterAnalysisTemplateRequest{
+ Name: "test",
+ },
+ assertions: func(t *testing.T, c *connect.Response[svcv1alpha1.GetClusterAnalysisTemplateResponse], err error) {
+ require.NoError(t, err)
+
+ require.NotNil(t, c)
+ require.Nil(t, c.Msg.GetRaw())
+
+ require.NotNil(t, c.Msg.GetClusterAnalysisTemplate())
+ require.Equal(t, "test", c.Msg.GetClusterAnalysisTemplate().Name)
+ },
+ },
+ "non-existing ClusterAnalysisTemplate": {
+ req: &svcv1alpha1.GetClusterAnalysisTemplateRequest{
+ Name: "non-existing",
+ },
+ assertions: func(t *testing.T, c *connect.Response[svcv1alpha1.GetClusterAnalysisTemplateResponse], err error) {
+ require.Error(t, err)
+ require.Equal(t, connect.CodeNotFound, connect.CodeOf(err))
+ require.Nil(t, c)
+ },
+ },
+ "error getting ClusterAnalysisTemplate": {
+ req: &svcv1alpha1.GetClusterAnalysisTemplateRequest{
+ Name: "test",
+ },
+ interceptor: interceptor.Funcs{
+ // This interceptor will be called when the client.Get method is called.
+ // It will return an error to simulate a failure in the client.Get method.
+ Get: func(
+ _ context.Context,
+ _ client.WithWatch,
+ _ client.ObjectKey,
+ _ client.Object,
+ _ ...client.GetOption,
+ ) error {
+ return apierrors.NewServiceUnavailable("test")
+ },
+ },
+ assertions: func(t *testing.T, c *connect.Response[svcv1alpha1.GetClusterAnalysisTemplateResponse], err error) {
+ require.Error(t, err)
+ require.Equal(t, connect.CodeUnknown, connect.CodeOf(err))
+ require.Nil(t, c)
+ },
+ },
+ "Argo Rollouts integration is not enabled": {
+ req: &svcv1alpha1.GetClusterAnalysisTemplateRequest{
+ Name: "test",
+ },
+ rolloutsDisabled: true,
+ assertions: func(t *testing.T, c *connect.Response[svcv1alpha1.GetClusterAnalysisTemplateResponse], err error) {
+ require.Error(t, err)
+ require.Equal(t, connect.CodeUnimplemented, connect.CodeOf(err))
+ require.Nil(t, c)
+ },
+ },
+ "raw format JSON": {
+ req: &svcv1alpha1.GetClusterAnalysisTemplateRequest{
+ Name: "test",
+ Format: svcv1alpha1.RawFormat_RAW_FORMAT_JSON,
+ },
+ assertions: func(t *testing.T, c *connect.Response[svcv1alpha1.GetClusterAnalysisTemplateResponse], err error) {
+ require.NoError(t, err)
+
+ require.NotNil(t, c)
+ require.Nil(t, c.Msg.GetClusterAnalysisTemplate())
+ require.NotNil(t, c.Msg.GetRaw())
+
+ scheme := runtime.NewScheme()
+ require.NoError(t, rollouts.AddToScheme(scheme))
+
+ obj, _, err := serializer.NewCodecFactory(scheme).UniversalDeserializer().Decode(
+ c.Msg.GetRaw(),
+ nil,
+ nil,
+ )
+ require.NoError(t, err)
+ tObj, ok := obj.(*rollouts.ClusterAnalysisTemplate)
+ require.True(t, ok)
+ require.Equal(t, "test", tObj.Name)
+ },
+ },
+ "raw format YAML": {
+ req: &svcv1alpha1.GetClusterAnalysisTemplateRequest{
+ Name: "test",
+ Format: svcv1alpha1.RawFormat_RAW_FORMAT_YAML,
+ },
+ assertions: func(t *testing.T, c *connect.Response[svcv1alpha1.GetClusterAnalysisTemplateResponse], err error) {
+ require.NoError(t, err)
+
+ require.NotNil(t, c)
+ require.Nil(t, c.Msg.GetClusterAnalysisTemplate())
+ require.NotNil(t, c.Msg.GetRaw())
+
+ scheme := runtime.NewScheme()
+ require.NoError(t, rollouts.AddToScheme(scheme))
+
+ obj, _, err := serializer.NewCodecFactory(scheme).UniversalDeserializer().Decode(
+ c.Msg.GetRaw(),
+ nil,
+ nil,
+ )
+ require.NoError(t, err)
+ tObj, ok := obj.(*rollouts.ClusterAnalysisTemplate)
+ require.True(t, ok)
+ require.Equal(t, "test", tObj.Name)
+ },
+ },
+ }
+ for name, testCase := range testCases {
+ t.Run(name, func(t *testing.T) {
+ t.Parallel()
+
+ ctx := context.Background()
+
+ cfg := config.ServerConfigFromEnv()
+ if testCase.rolloutsDisabled {
+ cfg.RolloutsIntegrationEnabled = false
+ }
+
+ client, err := kubernetes.NewClient(
+ ctx,
+ &rest.Config{},
+ kubernetes.ClientOptions{
+ SkipAuthorization: true,
+ NewInternalClient: func(
+ _ context.Context,
+ _ *rest.Config,
+ scheme *runtime.Scheme,
+ ) (client.Client, error) {
+ return fake.NewClientBuilder().
+ WithScheme(scheme).
+ WithObjects(
+ mustNewObject[rollouts.ClusterAnalysisTemplate]("testdata/clusteranalysistemplate.yaml"),
+ ).
+ WithInterceptorFuncs(testCase.interceptor).
+ Build(), nil
+ },
+ },
+ )
+ require.NoError(t, err)
+
+ svr := &server{
+ client: client,
+ cfg: cfg,
+ externalValidateProjectFn: validation.ValidateProject,
+ }
+ res, err := (svr).GetClusterAnalysisTemplate(ctx, connect.NewRequest(testCase.req))
+ testCase.assertions(t, res, err)
+ })
+ }
+}
diff --git a/internal/api/list_clusteranalysistemplates_v1alpha1.go b/internal/api/list_clusteranalysistemplates_v1alpha1.go
new file mode 100644
index 000000000..71a229851
--- /dev/null
+++ b/internal/api/list_clusteranalysistemplates_v1alpha1.go
@@ -0,0 +1,44 @@
+package api
+
+import (
+ "context"
+ "fmt"
+ "slices"
+ "strings"
+
+ "connectrpc.com/connect"
+
+ rollouts "github.com/akuity/kargo/internal/controller/rollouts/api/v1alpha1"
+ svcv1alpha1 "github.com/akuity/kargo/pkg/api/service/v1alpha1"
+)
+
+func (s *server) ListClusterAnalysisTemplates(
+ ctx context.Context,
+ _ *connect.Request[svcv1alpha1.ListClusterAnalysisTemplatesRequest],
+) (*connect.Response[svcv1alpha1.ListClusterAnalysisTemplatesResponse], error) {
+ if !s.cfg.RolloutsIntegrationEnabled {
+ return nil, connect.NewError(
+ connect.CodeUnimplemented,
+ fmt.Errorf("Argo Rollouts integration is not enabled"),
+ )
+ }
+
+ var list rollouts.ClusterAnalysisTemplateList
+ if err := s.client.List(ctx, &list); err != nil {
+ return nil, fmt.Errorf("list clusteranalysistemplates: %w", err)
+ }
+
+ // Sort ascending by name
+ slices.SortFunc(list.Items, func(lhs, rhs rollouts.ClusterAnalysisTemplate) int {
+ return strings.Compare(lhs.Name, rhs.Name)
+ })
+
+ cats := make([]*rollouts.ClusterAnalysisTemplate, len(list.Items))
+ for idx := range list.Items {
+ cats[idx] = &list.Items[idx]
+ }
+
+ return connect.NewResponse(&svcv1alpha1.ListClusterAnalysisTemplatesResponse{
+ ClusterAnalysisTemplates: cats,
+ }), nil
+}
diff --git a/internal/api/list_clusteranalysistemplates_v1alpha1_test.go b/internal/api/list_clusteranalysistemplates_v1alpha1_test.go
new file mode 100644
index 000000000..f1c96f076
--- /dev/null
+++ b/internal/api/list_clusteranalysistemplates_v1alpha1_test.go
@@ -0,0 +1,125 @@
+package api
+
+import (
+ "context"
+ "testing"
+
+ "connectrpc.com/connect"
+ "github.com/stretchr/testify/require"
+ "k8s.io/apimachinery/pkg/runtime"
+ "k8s.io/client-go/rest"
+ "sigs.k8s.io/controller-runtime/pkg/client"
+ "sigs.k8s.io/controller-runtime/pkg/client/fake"
+
+ "github.com/akuity/kargo/internal/api/config"
+ "github.com/akuity/kargo/internal/api/kubernetes"
+ "github.com/akuity/kargo/internal/api/validation"
+ rollouts "github.com/akuity/kargo/internal/controller/rollouts/api/v1alpha1"
+ svcv1alpha1 "github.com/akuity/kargo/pkg/api/service/v1alpha1"
+)
+
+func TestListClusterAnalysisTemplates(t *testing.T) {
+ testCases := map[string]struct {
+ req *svcv1alpha1.ListClusterAnalysisTemplatesRequest
+ objects []client.Object
+ rolloutsDisabled bool
+ assertions func(*testing.T, *connect.Response[svcv1alpha1.ListClusterAnalysisTemplatesResponse], error)
+ }{
+ "existing": {
+ req: &svcv1alpha1.ListClusterAnalysisTemplatesRequest{},
+ objects: []client.Object{
+ mustNewObject[rollouts.ClusterAnalysisTemplate]("testdata/clusteranalysistemplate.yaml"),
+ },
+ assertions: func(t *testing.T, r *connect.Response[svcv1alpha1.ListClusterAnalysisTemplatesResponse], err error) {
+ require.NoError(t, err)
+ require.NotNil(t, r)
+ require.Len(t, r.Msg.GetClusterAnalysisTemplates(), 1)
+ },
+ },
+ "Argo Rollouts integration is not enabled": {
+ req: &svcv1alpha1.ListClusterAnalysisTemplatesRequest{},
+ rolloutsDisabled: true,
+ assertions: func(t *testing.T, r *connect.Response[svcv1alpha1.ListClusterAnalysisTemplatesResponse], err error) {
+ require.Error(t, err)
+ require.Equal(t, connect.CodeUnimplemented, connect.CodeOf(err))
+ require.Nil(t, r)
+ },
+ },
+ "orders by name": {
+ req: &svcv1alpha1.ListClusterAnalysisTemplatesRequest{},
+ objects: []client.Object{
+ func() client.Object {
+ obj := mustNewObject[rollouts.ClusterAnalysisTemplate]("testdata/clusteranalysistemplate.yaml")
+ obj.SetName("z-clusteranalysistemplate")
+ return obj
+ }(),
+ func() client.Object {
+ obj := mustNewObject[rollouts.ClusterAnalysisTemplate]("testdata/clusteranalysistemplate.yaml")
+ obj.SetName("a-clusteranalysistemplate")
+ return obj
+ }(),
+ func() client.Object {
+ obj := mustNewObject[rollouts.ClusterAnalysisTemplate]("testdata/clusteranalysistemplate.yaml")
+ obj.SetName("m-clusteranalysistemplate")
+ return obj
+ }(),
+ func() client.Object {
+ obj := mustNewObject[rollouts.ClusterAnalysisTemplate]("testdata/clusteranalysistemplate.yaml")
+ obj.SetName("0-clusteranalysistemplate")
+ return obj
+ }(),
+ },
+ assertions: func(t *testing.T, r *connect.Response[svcv1alpha1.ListClusterAnalysisTemplatesResponse], err error) {
+ require.NoError(t, err)
+ require.NotNil(t, r)
+ require.Len(t, r.Msg.GetClusterAnalysisTemplates(), 4)
+
+ // Check that the analysis templates are ordered by name.
+ require.Equal(t, "0-clusteranalysistemplate", r.Msg.GetClusterAnalysisTemplates()[0].GetName())
+ require.Equal(t, "a-clusteranalysistemplate", r.Msg.GetClusterAnalysisTemplates()[1].GetName())
+ require.Equal(t, "m-clusteranalysistemplate", r.Msg.GetClusterAnalysisTemplates()[2].GetName())
+ require.Equal(t, "z-clusteranalysistemplate", r.Msg.GetClusterAnalysisTemplates()[3].GetName())
+ },
+ },
+ }
+ for name, testCase := range testCases {
+ t.Run(name, func(t *testing.T) {
+ t.Parallel()
+
+ ctx := context.Background()
+
+ cfg := config.ServerConfigFromEnv()
+ if testCase.rolloutsDisabled {
+ cfg.RolloutsIntegrationEnabled = false
+ }
+
+ client, err := kubernetes.NewClient(
+ ctx,
+ &rest.Config{},
+ kubernetes.ClientOptions{
+ SkipAuthorization: true,
+ NewInternalClient: func(
+ _ context.Context,
+ _ *rest.Config,
+ scheme *runtime.Scheme,
+ ) (client.Client, error) {
+ c := fake.NewClientBuilder().WithScheme(scheme)
+ if len(testCase.objects) > 0 {
+ c.WithObjects(testCase.objects...)
+ }
+ return c.Build(), nil
+ },
+ },
+ )
+ require.NoError(t, err)
+
+ svr := &server{
+ client: client,
+ cfg: cfg,
+ externalValidateProjectFn: validation.ValidateProject,
+ }
+ res, err := (svr).ListClusterAnalysisTemplates(ctx, connect.NewRequest(testCase.req))
+ testCase.assertions(t, res, err)
+ })
+ }
+}
diff --git a/internal/api/server.go b/internal/api/server.go
index 0a53283f2..f784204f8 100644
--- a/internal/api/server.go
+++ b/internal/api/server.go
@@ -136,6 +136,12 @@ type server struct {
types.NamespacedName,
) (*rollouts.AnalysisTemplate, error)
+ getClusterAnalysisTemplateFn func(
+ context.Context,
+ client.Client,
+ string,
+ ) (*rollouts.ClusterAnalysisTemplate, error)
+
getAnalysisRunFn func(
context.Context,
client.Client,
@@ -184,6 +190,7 @@ func NewServer(
s.patchFreightStatusFn = s.patchFreightStatus
s.authorizeFn = kubeClient.Authorize
s.getAnalysisTemplateFn = rollouts.GetAnalysisTemplate
+ s.getClusterAnalysisTemplateFn = rollouts.GetClusterAnalysisTemplate
s.getAnalysisRunFn = rollouts.GetAnalysisRun
return s
diff --git a/internal/api/testdata/clusteranalysistemplate.yaml b/internal/api/testdata/clusteranalysistemplate.yaml
new file mode 100644
index 000000000..6cb792a14
--- /dev/null
+++ b/internal/api/testdata/clusteranalysistemplate.yaml
@@ -0,0 +1,19 @@
+apiVersion: argoproj.io/v1alpha1
+kind: ClusterAnalysisTemplate
+metadata:
+ name: test
+spec:
+ metrics:
+ - name: test
+ provider:
+ job:
+ spec:
+ backoffLimit: 1
+ template:
+ spec:
+ containers:
+ - name: test
+ image: alpine:latest
+ command: [sh, -c]
+ args: ["sleep 180; exit 0"]
+ restartPolicy: Never
diff --git a/internal/controller/rollouts/api/v1alpha1/analysis_helpers.go b/internal/controller/rollouts/api/v1alpha1/analysis_helpers.go
index e932847fb..4d8e5f568 100644
--- a/internal/controller/rollouts/api/v1alpha1/analysis_helpers.go
+++ b/internal/controller/rollouts/api/v1alpha1/analysis_helpers.go
@@ -31,6 +31,34 @@ func GetAnalysisTemplate(
return &at, nil
}
+// GetClusterAnalysisTemplate returns a pointer to the ClusterAnalysisTemplate resource
+// specified by the name argument. If no such resource is found, nil
+// is returned instead.
+func GetClusterAnalysisTemplate(
+ ctx context.Context,
+ c client.Client,
+ name string,
+) (*ClusterAnalysisTemplate, error) {
+ cat := ClusterAnalysisTemplate{}
+ if err := c.Get(
+ ctx,
+ types.NamespacedName{
+ Name: name,
+ },
+ &cat,
+ ); err != nil {
+ if err = client.IgnoreNotFound(err); err == nil {
+ return nil, nil
+ }
+ return nil, fmt.Errorf(
+ "error getting ClusterAnalysisTemplate %q: %w",
+ name,
+ err,
+ )
+ }
+ return &cat, nil
+}
+
func GetAnalysisRun(
ctx context.Context,
c client.Client,
diff --git a/internal/controller/rollouts/api/v1alpha1/analysis_helpers_test.go b/internal/controller/rollouts/api/v1alpha1/analysis_helpers_test.go
index a4988b8c5..766797f73 100644
--- a/internal/controller/rollouts/api/v1alpha1/analysis_helpers_test.go
+++ b/internal/controller/rollouts/api/v1alpha1/analysis_helpers_test.go
@@ -63,6 +63,52 @@ func TestGetAnalysisTemplate(t *testing.T) {
}
}
+func TestGetClusterAnalysisTemplate(t *testing.T) {
+ scheme := k8sruntime.NewScheme()
+ require.NoError(t, SchemeBuilder.AddToScheme(scheme))
+
+ testCases := []struct {
+ name string
+ client client.Client
+ assertions func(*testing.T, *ClusterAnalysisTemplate, error)
+ }{
+ {
+ name: "not found",
+ client: fake.NewClientBuilder().WithScheme(scheme).Build(),
+ assertions: func(t *testing.T, template *ClusterAnalysisTemplate, err error) {
+ require.NoError(t, err)
+ require.Nil(t, template)
+ },
+ },
+
+ {
+ name: "found",
+ client: fake.NewClientBuilder().WithScheme(scheme).WithObjects(
+ &ClusterAnalysisTemplate{
+ ObjectMeta: metav1.ObjectMeta{
+ Name: "fake-template",
+ },
+ },
+ ).Build(),
+ assertions: func(t *testing.T, template *ClusterAnalysisTemplate, err error) {
+ require.NoError(t, err)
+ require.Equal(t, "fake-template", template.Name)
+ },
+ },
+ }
+
+ for _, testCase := range testCases {
+ t.Run(testCase.name, func(t *testing.T) {
+ template, err := GetClusterAnalysisTemplate(
+ context.Background(),
+ testCase.client,
+ "fake-template",
+ )
+ testCase.assertions(t, template, err)
+ })
+ }
+}
+
func TestGetAnalysisRun(t *testing.T) {
scheme := k8sruntime.NewScheme()
require.NoError(t, SchemeBuilder.AddToScheme(scheme))
diff --git a/internal/controller/rollouts/api/v1alpha1/analysis_types.go b/internal/controller/rollouts/api/v1alpha1/analysis_types.go
index ee2acd0f4..492b8b9db 100644
--- a/internal/controller/rollouts/api/v1alpha1/analysis_types.go
+++ b/internal/controller/rollouts/api/v1alpha1/analysis_types.go
@@ -25,6 +25,22 @@ type AnalysisTemplateList struct {
Items []AnalysisTemplate `json:"items" protobuf:"bytes,2,rep,name=items"`
}
+//+kubebuilder:object:root=true
+
+type ClusterAnalysisTemplate struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`
+ Spec AnalysisTemplateSpec `json:"spec" protobuf:"bytes,2,opt,name=spec"`
+}
+
+//+kubebuilder:object:root=true
+
+type ClusterAnalysisTemplateList struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ListMeta `json:"metadata" protobuf:"bytes,1,opt,name=metadata"`
+ Items []ClusterAnalysisTemplate `json:"items" protobuf:"bytes,2,rep,name=items"`
+}
+
type AnalysisTemplateSpec struct {
Metrics []Metric `json:"metrics" protobuf:"bytes,1,rep,name=metrics"`
Args []Argument `json:"args,omitempty" protobuf:"bytes,2,rep,name=args"`
diff --git a/internal/controller/rollouts/api/v1alpha1/generated.pb.go b/internal/controller/rollouts/api/v1alpha1/generated.pb.go
index cbae1ea08..eff9961e2 100644
--- a/internal/controller/rollouts/api/v1alpha1/generated.pb.go
+++ b/internal/controller/rollouts/api/v1alpha1/generated.pb.go
@@ -424,10 +424,66 @@ func (m *CloudWatchMetricStatMetricDimension) XXX_DiscardUnknown() {
var xxx_messageInfo_CloudWatchMetricStatMetricDimension proto.InternalMessageInfo
+func (m *ClusterAnalysisTemplate) Reset() { *m = ClusterAnalysisTemplate{} }
+func (*ClusterAnalysisTemplate) ProtoMessage() {}
+func (*ClusterAnalysisTemplate) Descriptor() ([]byte, []int) {
+ return fileDescriptor_c5bdcafc2831c0b4, []int{14}
+}
+func (m *ClusterAnalysisTemplate) XXX_Unmarshal(b []byte) error {
+ return m.Unmarshal(b)
+}
+func (m *ClusterAnalysisTemplate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ b = b[:cap(b)]
+ n, err := m.MarshalToSizedBuffer(b)
+ if err != nil {
+ return nil, err
+ }
+ return b[:n], nil
+}
+func (m *ClusterAnalysisTemplate) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ClusterAnalysisTemplate.Merge(m, src)
+}
+func (m *ClusterAnalysisTemplate) XXX_Size() int {
+ return m.Size()
+}
+func (m *ClusterAnalysisTemplate) XXX_DiscardUnknown() {
+ xxx_messageInfo_ClusterAnalysisTemplate.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ClusterAnalysisTemplate proto.InternalMessageInfo
+
+func (m *ClusterAnalysisTemplateList) Reset() { *m = ClusterAnalysisTemplateList{} }
+func (*ClusterAnalysisTemplateList) ProtoMessage() {}
+func (*ClusterAnalysisTemplateList) Descriptor() ([]byte, []int) {
+ return fileDescriptor_c5bdcafc2831c0b4, []int{15}
+}
+func (m *ClusterAnalysisTemplateList) XXX_Unmarshal(b []byte) error {
+ return m.Unmarshal(b)
+}
+func (m *ClusterAnalysisTemplateList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ b = b[:cap(b)]
+ n, err := m.MarshalToSizedBuffer(b)
+ if err != nil {
+ return nil, err
+ }
+ return b[:n], nil
+}
+func (m *ClusterAnalysisTemplateList) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ClusterAnalysisTemplateList.Merge(m, src)
+}
+func (m *ClusterAnalysisTemplateList) XXX_Size() int {
+ return m.Size()
+}
+func (m *ClusterAnalysisTemplateList) XXX_DiscardUnknown() {
+ xxx_messageInfo_ClusterAnalysisTemplateList.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ClusterAnalysisTemplateList proto.InternalMessageInfo
+
func (m *DatadogMetric) Reset() { *m = DatadogMetric{} }
func (*DatadogMetric) ProtoMessage() {}
func (*DatadogMetric) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{14}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{16}
}
func (m *DatadogMetric) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -455,7 +511,7 @@ var xxx_messageInfo_DatadogMetric proto.InternalMessageInfo
func (m *DryRun) Reset() { *m = DryRun{} }
func (*DryRun) ProtoMessage() {}
func (*DryRun) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{15}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{17}
}
func (m *DryRun) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -483,7 +539,7 @@ var xxx_messageInfo_DryRun proto.InternalMessageInfo
func (m *FieldRef) Reset() { *m = FieldRef{} }
func (*FieldRef) ProtoMessage() {}
func (*FieldRef) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{16}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{18}
}
func (m *FieldRef) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -511,7 +567,7 @@ var xxx_messageInfo_FieldRef proto.InternalMessageInfo
func (m *GraphiteMetric) Reset() { *m = GraphiteMetric{} }
func (*GraphiteMetric) ProtoMessage() {}
func (*GraphiteMetric) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{17}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{19}
}
func (m *GraphiteMetric) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -539,7 +595,7 @@ var xxx_messageInfo_GraphiteMetric proto.InternalMessageInfo
func (m *InfluxdbMetric) Reset() { *m = InfluxdbMetric{} }
func (*InfluxdbMetric) ProtoMessage() {}
func (*InfluxdbMetric) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{18}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{20}
}
func (m *InfluxdbMetric) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -567,7 +623,7 @@ var xxx_messageInfo_InfluxdbMetric proto.InternalMessageInfo
func (m *JobMetric) Reset() { *m = JobMetric{} }
func (*JobMetric) ProtoMessage() {}
func (*JobMetric) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{19}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{21}
}
func (m *JobMetric) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -595,7 +651,7 @@ var xxx_messageInfo_JobMetric proto.InternalMessageInfo
func (m *KayentaMetric) Reset() { *m = KayentaMetric{} }
func (*KayentaMetric) ProtoMessage() {}
func (*KayentaMetric) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{20}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{22}
}
func (m *KayentaMetric) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -623,7 +679,7 @@ var xxx_messageInfo_KayentaMetric proto.InternalMessageInfo
func (m *KayentaScope) Reset() { *m = KayentaScope{} }
func (*KayentaScope) ProtoMessage() {}
func (*KayentaScope) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{21}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{23}
}
func (m *KayentaScope) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -651,7 +707,7 @@ var xxx_messageInfo_KayentaScope proto.InternalMessageInfo
func (m *KayentaThreshold) Reset() { *m = KayentaThreshold{} }
func (*KayentaThreshold) ProtoMessage() {}
func (*KayentaThreshold) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{22}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{24}
}
func (m *KayentaThreshold) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -679,7 +735,7 @@ var xxx_messageInfo_KayentaThreshold proto.InternalMessageInfo
func (m *Measurement) Reset() { *m = Measurement{} }
func (*Measurement) ProtoMessage() {}
func (*Measurement) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{23}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{25}
}
func (m *Measurement) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -707,7 +763,7 @@ var xxx_messageInfo_Measurement proto.InternalMessageInfo
func (m *MeasurementRetention) Reset() { *m = MeasurementRetention{} }
func (*MeasurementRetention) ProtoMessage() {}
func (*MeasurementRetention) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{24}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{26}
}
func (m *MeasurementRetention) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -735,7 +791,7 @@ var xxx_messageInfo_MeasurementRetention proto.InternalMessageInfo
func (m *Metric) Reset() { *m = Metric{} }
func (*Metric) ProtoMessage() {}
func (*Metric) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{25}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{27}
}
func (m *Metric) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -763,7 +819,7 @@ var xxx_messageInfo_Metric proto.InternalMessageInfo
func (m *MetricProvider) Reset() { *m = MetricProvider{} }
func (*MetricProvider) ProtoMessage() {}
func (*MetricProvider) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{26}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{28}
}
func (m *MetricProvider) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -791,7 +847,7 @@ var xxx_messageInfo_MetricProvider proto.InternalMessageInfo
func (m *MetricResult) Reset() { *m = MetricResult{} }
func (*MetricResult) ProtoMessage() {}
func (*MetricResult) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{27}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{29}
}
func (m *MetricResult) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -819,7 +875,7 @@ var xxx_messageInfo_MetricResult proto.InternalMessageInfo
func (m *NewRelicMetric) Reset() { *m = NewRelicMetric{} }
func (*NewRelicMetric) ProtoMessage() {}
func (*NewRelicMetric) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{28}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{30}
}
func (m *NewRelicMetric) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -847,7 +903,7 @@ var xxx_messageInfo_NewRelicMetric proto.InternalMessageInfo
func (m *OAuth2Config) Reset() { *m = OAuth2Config{} }
func (*OAuth2Config) ProtoMessage() {}
func (*OAuth2Config) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{29}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{31}
}
func (m *OAuth2Config) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -875,7 +931,7 @@ var xxx_messageInfo_OAuth2Config proto.InternalMessageInfo
func (m *PrometheusMetric) Reset() { *m = PrometheusMetric{} }
func (*PrometheusMetric) ProtoMessage() {}
func (*PrometheusMetric) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{30}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{32}
}
func (m *PrometheusMetric) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -903,7 +959,7 @@ var xxx_messageInfo_PrometheusMetric proto.InternalMessageInfo
func (m *RunSummary) Reset() { *m = RunSummary{} }
func (*RunSummary) ProtoMessage() {}
func (*RunSummary) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{31}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{33}
}
func (m *RunSummary) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -931,7 +987,7 @@ var xxx_messageInfo_RunSummary proto.InternalMessageInfo
func (m *ScopeDetail) Reset() { *m = ScopeDetail{} }
func (*ScopeDetail) ProtoMessage() {}
func (*ScopeDetail) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{32}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{34}
}
func (m *ScopeDetail) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -959,7 +1015,7 @@ var xxx_messageInfo_ScopeDetail proto.InternalMessageInfo
func (m *SecretKeyRef) Reset() { *m = SecretKeyRef{} }
func (*SecretKeyRef) ProtoMessage() {}
func (*SecretKeyRef) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{33}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{35}
}
func (m *SecretKeyRef) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -987,7 +1043,7 @@ var xxx_messageInfo_SecretKeyRef proto.InternalMessageInfo
func (m *Sigv4Config) Reset() { *m = Sigv4Config{} }
func (*Sigv4Config) ProtoMessage() {}
func (*Sigv4Config) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{34}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{36}
}
func (m *Sigv4Config) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -1015,7 +1071,7 @@ var xxx_messageInfo_Sigv4Config proto.InternalMessageInfo
func (m *SkyWalkingMetric) Reset() { *m = SkyWalkingMetric{} }
func (*SkyWalkingMetric) ProtoMessage() {}
func (*SkyWalkingMetric) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{35}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{37}
}
func (m *SkyWalkingMetric) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -1043,7 +1099,7 @@ var xxx_messageInfo_SkyWalkingMetric proto.InternalMessageInfo
func (m *ValueFrom) Reset() { *m = ValueFrom{} }
func (*ValueFrom) ProtoMessage() {}
func (*ValueFrom) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{36}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{38}
}
func (m *ValueFrom) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -1071,7 +1127,7 @@ var xxx_messageInfo_ValueFrom proto.InternalMessageInfo
func (m *WavefrontMetric) Reset() { *m = WavefrontMetric{} }
func (*WavefrontMetric) ProtoMessage() {}
func (*WavefrontMetric) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{37}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{39}
}
func (m *WavefrontMetric) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -1099,7 +1155,7 @@ var xxx_messageInfo_WavefrontMetric proto.InternalMessageInfo
func (m *WebMetric) Reset() { *m = WebMetric{} }
func (*WebMetric) ProtoMessage() {}
func (*WebMetric) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{38}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{40}
}
func (m *WebMetric) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -1127,7 +1183,7 @@ var xxx_messageInfo_WebMetric proto.InternalMessageInfo
func (m *WebMetricHeader) Reset() { *m = WebMetricHeader{} }
func (*WebMetricHeader) ProtoMessage() {}
func (*WebMetricHeader) Descriptor() ([]byte, []int) {
- return fileDescriptor_c5bdcafc2831c0b4, []int{39}
+ return fileDescriptor_c5bdcafc2831c0b4, []int{41}
}
func (m *WebMetricHeader) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@@ -1167,6 +1223,8 @@ func init() {
proto.RegisterType((*CloudWatchMetricStat)(nil), "github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.CloudWatchMetricStat")
proto.RegisterType((*CloudWatchMetricStatMetric)(nil), "github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.CloudWatchMetricStatMetric")
proto.RegisterType((*CloudWatchMetricStatMetricDimension)(nil), "github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.CloudWatchMetricStatMetricDimension")
+ proto.RegisterType((*ClusterAnalysisTemplate)(nil), "github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.ClusterAnalysisTemplate")
+ proto.RegisterType((*ClusterAnalysisTemplateList)(nil), "github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.ClusterAnalysisTemplateList")
proto.RegisterType((*DatadogMetric)(nil), "github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.DatadogMetric")
proto.RegisterMapType((map[string]string)(nil), "github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.DatadogMetric.QueriesEntry")
proto.RegisterType((*DryRun)(nil), "github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.DryRun")
@@ -1204,212 +1262,215 @@ func init() {
}
var fileDescriptor_c5bdcafc2831c0b4 = []byte{
- // 3278 bytes of a gzipped FileDescriptorProto
+ // 3322 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5b, 0x4d, 0x6c, 0x24, 0x47,
- 0xf5, 0xdf, 0x9e, 0x2f, 0xcf, 0x3c, 0x8f, 0xbd, 0xde, 0xfa, 0xef, 0xfe, 0x99, 0x58, 0x89, 0xbd,
- 0xf4, 0x8a, 0x68, 0x13, 0xc2, 0x0c, 0x59, 0x02, 0xca, 0x07, 0x8a, 0xe4, 0xb1, 0xd7, 0xe0, 0xcd,
- 0x7e, 0x78, 0x6b, 0x9c, 0x18, 0x45, 0x01, 0xa5, 0x3c, 0x53, 0x33, 0xd3, 0x71, 0x4f, 0xf7, 0xa4,
- 0xbb, 0xda, 0xde, 0x11, 0xa0, 0x10, 0x41, 0x20, 0x4a, 0x38, 0x90, 0x1b, 0xda, 0x1b, 0x48, 0x1c,
- 0x10, 0xe2, 0xc8, 0x0d, 0x24, 0x4e, 0x68, 0xc5, 0x85, 0x1c, 0x73, 0x32, 0xc4, 0xe1, 0x00, 0x12,
- 0x82, 0x33, 0x2b, 0x84, 0x50, 0x7d, 0x75, 0x57, 0xcf, 0xd8, 0x59, 0x7b, 0xd3, 0x4e, 0x90, 0x38,
- 0xad, 0xe7, 0xd5, 0xab, 0xf7, 0x7b, 0xf5, 0xaa, 0xea, 0x7d, 0x55, 0x2f, 0xdc, 0xec, 0x39, 0xac,
- 0x1f, 0x6d, 0xd5, 0xdb, 0xfe, 0xa0, 0x41, 0xb6, 0x23, 0x87, 0x8d, 0x1a, 0xdb, 0x24, 0xe8, 0xf9,
- 0x0d, 0xc7, 0x63, 0x34, 0xf0, 0x88, 0xdb, 0x68, 0xfb, 0x1e, 0x0b, 0x7c, 0xd7, 0xa5, 0x41, 0x83,
- 0xff, 0xe3, 0x47, 0x2c, 0x6c, 0x90, 0xa1, 0xd3, 0xd8, 0x79, 0x9c, 0xb8, 0xc3, 0x3e, 0x79, 0xbc,
- 0xd1, 0xa3, 0x1e, 0x0d, 0x08, 0xa3, 0x9d, 0xfa, 0x30, 0xf0, 0x99, 0x8f, 0x96, 0x12, 0x91, 0x75,
- 0x29, 0xb2, 0x2e, 0x44, 0xd6, 0xb5, 0xc8, 0x7a, 0x22, 0xb2, 0xae, 0x45, 0xd6, 0xc9, 0xd0, 0xa9,
- 0x6b, 0x91, 0xf3, 0x9f, 0x33, 0xb4, 0xea, 0xf9, 0x3d, 0xbf, 0x21, 0x24, 0x6f, 0x45, 0x5d, 0xf1,
- 0x4b, 0xfc, 0x10, 0x7f, 0x49, 0xc4, 0xf9, 0x0b, 0xdb, 0x4f, 0x86, 0x75, 0xc7, 0x17, 0x6a, 0x6d,
- 0x11, 0xd6, 0xee, 0x37, 0x76, 0x26, 0xd4, 0x9a, 0x7f, 0x22, 0x61, 0x1a, 0x90, 0x76, 0xdf, 0xf1,
- 0x68, 0x30, 0x6a, 0x0c, 0xb7, 0x7b, 0x9c, 0x10, 0x36, 0x06, 0x94, 0x91, 0x83, 0x66, 0x35, 0x0e,
- 0x9b, 0x15, 0x44, 0x1e, 0x73, 0x06, 0x74, 0x62, 0xc2, 0x97, 0xee, 0x35, 0x21, 0x6c, 0xf7, 0xe9,
- 0x80, 0x4c, 0xcc, 0xfb, 0xc2, 0x61, 0xf3, 0x22, 0xe6, 0xb8, 0x7c, 0x37, 0x42, 0x16, 0x8c, 0x4f,
- 0xb2, 0x3f, 0xc8, 0xc1, 0xf4, 0x92, 0x47, 0xdc, 0x51, 0xe8, 0x84, 0x38, 0xf2, 0xd0, 0xcb, 0x50,
- 0xe6, 0x0b, 0xe9, 0x10, 0x46, 0x6a, 0xd6, 0x79, 0xeb, 0xe2, 0xf4, 0xa5, 0xcf, 0xd7, 0xa5, 0xdc,
- 0xba, 0x29, 0xb7, 0x3e, 0xdc, 0xee, 0x71, 0x42, 0x58, 0xe7, 0xdc, 0xf5, 0x9d, 0xc7, 0xeb, 0x37,
- 0xb6, 0x5e, 0xa1, 0x6d, 0x76, 0x8d, 0x32, 0xd2, 0x44, 0x77, 0xf6, 0x16, 0x4f, 0xed, 0xef, 0x2d,
- 0x42, 0x42, 0xc3, 0xb1, 0x54, 0xc4, 0xa0, 0x10, 0x0e, 0x69, 0xbb, 0x96, 0x13, 0xd2, 0x71, 0xfd,
- 0x23, 0xef, 0x75, 0xdd, 0xd0, 0xbf, 0x35, 0xa4, 0xed, 0x66, 0x55, 0xe1, 0x17, 0xf8, 0x2f, 0x2c,
- 0xd0, 0xd0, 0xb7, 0xa0, 0x14, 0x32, 0xc2, 0xa2, 0xb0, 0x96, 0x17, 0xb8, 0x1b, 0x19, 0xe3, 0x0a,
- 0xd9, 0xcd, 0x59, 0x85, 0x5c, 0x92, 0xbf, 0xb1, 0xc2, 0xb4, 0xff, 0x6c, 0xc1, 0x69, 0x83, 0xfb,
- 0xaa, 0x13, 0x32, 0xf4, 0xd2, 0x84, 0xa5, 0xeb, 0x47, 0xb3, 0x34, 0x9f, 0x2d, 0xec, 0x3c, 0xa7,
- 0xd0, 0xca, 0x9a, 0x62, 0x58, 0x39, 0x84, 0xa2, 0xc3, 0xe8, 0x20, 0xac, 0xe5, 0xce, 0xe7, 0x2f,
- 0x4e, 0x5f, 0xba, 0x9e, 0xed, 0x72, 0x9b, 0x33, 0x0a, 0xba, 0xb8, 0xc6, 0x41, 0xb0, 0xc4, 0xb2,
- 0x7f, 0x57, 0x48, 0x2d, 0x93, 0x9b, 0x1f, 0x31, 0x98, 0x1a, 0x50, 0x16, 0x38, 0xed, 0xb0, 0x66,
- 0x09, 0x55, 0xd6, 0x32, 0x50, 0xe5, 0x9a, 0x90, 0xd8, 0x3c, 0xad, 0xb4, 0x98, 0x92, 0xbf, 0x43,
- 0xac, 0xa1, 0xd0, 0x00, 0x0a, 0x24, 0xe8, 0xe9, 0xd5, 0x3f, 0x97, 0xc5, 0xea, 0x83, 0x5e, 0x34,
- 0xa0, 0x1e, 0x4b, 0x4e, 0xd7, 0x52, 0xd0, 0x0b, 0xb1, 0x80, 0x41, 0x0d, 0xa8, 0x30, 0x1a, 0x0c,
- 0x1c, 0x8f, 0x30, 0x2a, 0x0e, 0x58, 0xb9, 0x79, 0x46, 0xb1, 0x55, 0x36, 0xf4, 0x00, 0x4e, 0x78,
- 0xd0, 0xab, 0x50, 0xea, 0x04, 0x23, 0x1c, 0x79, 0xb5, 0x42, 0x66, 0x46, 0x59, 0x11, 0x02, 0x93,
- 0x33, 0x28, 0x7f, 0x63, 0x05, 0x84, 0x7e, 0x6e, 0xc1, 0xd9, 0x01, 0x25, 0x61, 0x14, 0x50, 0xbe,
- 0x0e, 0x4c, 0x19, 0xf5, 0x98, 0xe3, 0x7b, 0xb5, 0xa2, 0xd0, 0x60, 0x33, 0x93, 0x6d, 0x99, 0x14,
- 0xdf, 0x7c, 0x50, 0xe9, 0x73, 0xf6, 0xa0, 0x51, 0x7c, 0xa0, 0x4a, 0xf6, 0x5f, 0x0b, 0x70, 0x66,
- 0xe2, 0x76, 0xa1, 0x27, 0xa0, 0x38, 0xec, 0x93, 0x90, 0x8a, 0xeb, 0x52, 0x69, 0x2e, 0xe8, 0x33,
- 0xb8, 0xce, 0x89, 0x77, 0xf7, 0x16, 0x67, 0xf4, 0x14, 0x41, 0xc0, 0x92, 0x19, 0x3d, 0xc2, 0x0f,
- 0x60, 0x18, 0x92, 0x1e, 0x15, 0x2e, 0xa7, 0x62, 0x9e, 0x1a, 0x41, 0xc6, 0x7a, 0x1c, 0xfd, 0xd0,
- 0x82, 0x19, 0x79, 0x82, 0x30, 0x0d, 0x23, 0x97, 0x71, 0x67, 0xc1, 0x6d, 0x73, 0x23, 0xb3, 0x23,
- 0x2b, 0xe5, 0x36, 0xcf, 0x29, 0x15, 0x66, 0x4c, 0x6a, 0x88, 0xd3, 0xe0, 0x68, 0x13, 0x2a, 0x21,
- 0x23, 0x01, 0xa3, 0x9d, 0x25, 0x56, 0x2b, 0x08, 0x17, 0xf1, 0xe8, 0xd1, 0x5c, 0xc4, 0x86, 0x33,
- 0xa0, 0xcd, 0x19, 0x7e, 0xfa, 0x5a, 0x5a, 0x00, 0x4e, 0x64, 0xa1, 0xd7, 0x2d, 0x80, 0x20, 0xf2,
- 0x5a, 0xd1, 0x60, 0x40, 0x82, 0x51, 0xad, 0x28, 0x44, 0x5f, 0xcb, 0x60, 0x91, 0x38, 0x16, 0x9a,
- 0x04, 0x81, 0x84, 0x86, 0x0d, 0x50, 0xf4, 0x7d, 0x0b, 0x66, 0xe4, 0xc9, 0xd4, 0x6a, 0x94, 0x4e,
- 0x42, 0x8d, 0x33, 0xdc, 0xca, 0x2b, 0x26, 0x0e, 0x4e, 0xc3, 0xda, 0xff, 0xb0, 0x60, 0x4e, 0x1f,
- 0x9c, 0x0d, 0x3a, 0x18, 0xba, 0xfc, 0x7e, 0x9e, 0x7c, 0x18, 0x1c, 0xa5, 0xc2, 0xe0, 0x66, 0x86,
- 0xfe, 0x59, 0x2f, 0xe2, 0xb0, 0x58, 0x68, 0xff, 0xdd, 0x82, 0xb3, 0xe3, 0xcc, 0x1f, 0x43, 0x48,
- 0xba, 0x95, 0x0e, 0x49, 0xad, 0x13, 0x58, 0xf2, 0x21, 0x71, 0xe9, 0x76, 0x61, 0x72, 0xc1, 0xff,
- 0x3b, 0xc1, 0x29, 0x89, 0x35, 0xf9, 0x4f, 0x3c, 0xd6, 0x14, 0xfe, 0xfb, 0x62, 0xcd, 0x1d, 0x0b,
- 0xca, 0xda, 0x7e, 0xe8, 0x3c, 0x14, 0x3c, 0x32, 0xd0, 0x11, 0x26, 0xb6, 0xe6, 0x75, 0x32, 0xa0,
- 0x58, 0x8c, 0xa0, 0x45, 0x28, 0xee, 0x10, 0x37, 0xd2, 0xc1, 0xa4, 0xc2, 0x0f, 0xdb, 0x0b, 0x9c,
- 0x80, 0x25, 0x1d, 0x8d, 0xa0, 0x22, 0xfe, 0x58, 0x0d, 0xfc, 0x81, 0x4a, 0x36, 0xaf, 0x66, 0xb0,
- 0xde, 0x17, 0xb4, 0x4c, 0xe9, 0xd7, 0xe3, 0x9f, 0x38, 0x41, 0xb3, 0xff, 0x6d, 0xc1, 0xec, 0x52,
- 0xc4, 0xfa, 0x7c, 0x65, 0x6d, 0xc2, 0x57, 0xc7, 0xf3, 0xc0, 0xd0, 0xe9, 0xed, 0x3c, 0xa1, 0xee,
- 0x73, 0x16, 0x79, 0x60, 0x8b, 0xcb, 0x5b, 0xf6, 0xbd, 0xae, 0xd3, 0x4b, 0xee, 0x9b, 0x20, 0x62,
- 0x89, 0x85, 0x76, 0xa1, 0xe4, 0x93, 0x88, 0xf5, 0x2f, 0x29, 0xef, 0x96, 0x45, 0xfc, 0xbc, 0xc1,
- 0x17, 0x76, 0x49, 0xc1, 0xc6, 0xe7, 0x4e, 0x52, 0xb1, 0x82, 0xb3, 0xef, 0x5a, 0x30, 0xb7, 0xec,
- 0xfa, 0x51, 0x67, 0x93, 0xd7, 0x70, 0xf2, 0xe2, 0xa1, 0x67, 0xa1, 0x2c, 0x60, 0x76, 0x88, 0xab,
- 0xf6, 0xd5, 0xd6, 0x5e, 0x6a, 0x4d, 0xd1, 0xef, 0xee, 0x2d, 0xce, 0xae, 0x44, 0x81, 0x30, 0x59,
- 0x8b, 0x05, 0x8e, 0xd7, 0xc3, 0xf1, 0x1c, 0xf4, 0x33, 0x0b, 0xce, 0xc8, 0xab, 0xbb, 0x42, 0x18,
- 0xb9, 0x19, 0xd1, 0xc0, 0xa1, 0xfa, 0xf2, 0xbe, 0x94, 0xc1, 0xca, 0xc6, 0x15, 0xd6, 0x28, 0xa3,
- 0xe6, 0x03, 0x4a, 0xcf, 0x33, 0xd7, 0xc6, 0xe1, 0xf1, 0xa4, 0x46, 0xf6, 0x8f, 0xf3, 0xf0, 0xc0,
- 0xa1, 0xb2, 0xd0, 0x3c, 0xe4, 0x9c, 0x8e, 0x5a, 0x3f, 0x28, 0xb9, 0xb9, 0xb5, 0x0e, 0xce, 0x39,
- 0x1d, 0x54, 0x07, 0xa0, 0xb7, 0x86, 0x01, 0x0d, 0x43, 0x7e, 0x47, 0xe5, 0xc1, 0x9e, 0xe5, 0x91,
- 0xeb, 0x72, 0x4c, 0xc5, 0x06, 0x07, 0xbf, 0x03, 0x2e, 0xd9, 0xa2, 0xae, 0x38, 0xde, 0xea, 0x0e,
- 0x5c, 0xe5, 0x04, 0x2c, 0xe9, 0xe8, 0x07, 0x16, 0x80, 0x54, 0x90, 0xa7, 0x6e, 0x2a, 0x77, 0xd9,
- 0x3c, 0x01, 0x5b, 0x71, 0xf1, 0x52, 0xd5, 0xe4, 0x37, 0x36, 0xa0, 0xd1, 0x06, 0x94, 0x86, 0x34,
- 0x70, 0xfc, 0x8e, 0xca, 0x72, 0x0e, 0x0f, 0xe3, 0xbc, 0x4a, 0xae, 0xcb, 0x2a, 0xb9, 0xbe, 0xe6,
- 0xb1, 0x1b, 0x81, 0x3c, 0x08, 0x4d, 0xe0, 0xe7, 0x6c, 0x5d, 0xc8, 0xc0, 0x4a, 0x16, 0x37, 0x58,
- 0x40, 0x59, 0x14, 0x78, 0xdc, 0xbe, 0x22, 0x71, 0x29, 0x4b, 0x2d, 0x70, 0x4c, 0xc5, 0x06, 0x87,
- 0xfd, 0xeb, 0x1c, 0x9c, 0x3d, 0x48, 0x75, 0xf4, 0x86, 0x05, 0x25, 0xa9, 0xad, 0xba, 0xa0, 0x5f,
- 0x3f, 0x21, 0x23, 0xa9, 0xa0, 0x14, 0x5f, 0x1c, 0x95, 0x78, 0x2a, 0x70, 0xf4, 0xb5, 0xd8, 0x4c,
- 0xb9, 0xfb, 0x34, 0x53, 0x2c, 0x79, 0xcc, 0x54, 0xe7, 0xa1, 0xc0, 0x8b, 0x60, 0x75, 0x54, 0x92,
- 0x74, 0x84, 0x6f, 0x94, 0x18, 0xe1, 0x1c, 0x91, 0xe7, 0xc8, 0x53, 0x62, 0x70, 0x3c, 0xef, 0x39,
- 0x0c, 0x8b, 0x11, 0xfb, 0x76, 0x0e, 0xe6, 0x0f, 0x5f, 0x14, 0xba, 0x6d, 0x01, 0x74, 0x9c, 0x01,
- 0xf5, 0xf8, 0xe1, 0xd4, 0x91, 0xbc, 0x7b, 0xa2, 0x86, 0x5c, 0xd1, 0x70, 0x49, 0x96, 0x17, 0x93,
- 0x42, 0x6c, 0x68, 0x83, 0x2e, 0xe9, 0x9b, 0xc0, 0x63, 0x88, 0xba, 0x5b, 0xf1, 0x9c, 0x6b, 0xf1,
- 0x08, 0x36, 0xb8, 0xd0, 0x67, 0xa1, 0xc2, 0x63, 0x4d, 0x38, 0x24, 0x6d, 0xaa, 0x0c, 0x27, 0x9c,
- 0xfe, 0x75, 0x4d, 0xc4, 0xc9, 0xb8, 0xed, 0xc2, 0x85, 0x23, 0xe8, 0x79, 0x84, 0xc8, 0x76, 0x21,
- 0x1d, 0xd9, 0x62, 0xd7, 0x6e, 0x46, 0x37, 0xfb, 0x76, 0x1e, 0x66, 0xf8, 0x91, 0xee, 0xf8, 0xbd,
- 0x8c, 0xdc, 0xeb, 0x05, 0x28, 0xbe, 0xca, 0x3d, 0xd4, 0x38, 0xac, 0x70, 0x5b, 0x58, 0x8e, 0xa1,
- 0x37, 0x2d, 0x98, 0x7a, 0x55, 0x79, 0x5e, 0x99, 0xc5, 0x64, 0x71, 0x51, 0x52, 0x0b, 0xa9, 0x2b,
- 0x3f, 0x7a, 0xd9, 0x63, 0xc1, 0x28, 0xc9, 0xde, 0xb4, 0xc3, 0xd5, 0xf0, 0xbc, 0x9e, 0xec, 0xfa,
- 0xc1, 0x20, 0x72, 0x89, 0x3a, 0xb1, 0x31, 0xeb, 0xaa, 0x24, 0x63, 0x3d, 0xce, 0xf7, 0x9e, 0x0c,
- 0x9d, 0x17, 0x68, 0x10, 0xca, 0x3a, 0x3b, 0xb5, 0xf7, 0x4b, 0xf1, 0x08, 0x36, 0xb8, 0xe6, 0x9f,
- 0x86, 0xaa, 0xa9, 0x08, 0x9a, 0x83, 0xfc, 0x36, 0x1d, 0x49, 0xcb, 0x62, 0xfe, 0x27, 0x3a, 0x9b,
- 0xda, 0x27, 0xb5, 0x31, 0x4f, 0xe7, 0x9e, 0xb4, 0xec, 0x2f, 0x83, 0x4a, 0xc4, 0xc6, 0x4e, 0x9d,
- 0x75, 0x94, 0x53, 0x67, 0x3f, 0x03, 0xe5, 0x55, 0x87, 0xba, 0x1d, 0x4c, 0xbb, 0xa8, 0x01, 0x95,
- 0x2e, 0xff, 0x7b, 0x9d, 0xb0, 0xbe, 0x9a, 0x1e, 0x37, 0x34, 0x56, 0xf5, 0x00, 0x4e, 0x78, 0xec,
- 0x97, 0x61, 0xf6, 0x2b, 0x01, 0x19, 0xf6, 0x1d, 0x46, 0xd5, 0xb9, 0x78, 0x04, 0xa6, 0x48, 0xa7,
- 0xc3, 0x43, 0x86, 0x12, 0x10, 0xdb, 0x69, 0x49, 0x92, 0xb1, 0x1e, 0x3f, 0xd2, 0x11, 0xe0, 0x08,
- 0x6b, 0x5e, 0xd7, 0x8d, 0x6e, 0x75, 0xb6, 0x12, 0x84, 0x61, 0xe0, 0x77, 0x1d, 0x97, 0x8e, 0x23,
- 0xac, 0x4b, 0x32, 0xd6, 0xe3, 0x47, 0x43, 0xf8, 0x85, 0x05, 0x95, 0x2b, 0xbe, 0x96, 0xfe, 0x8d,
- 0x0c, 0x4a, 0xc0, 0xb8, 0x1c, 0xba, 0xa6, 0x24, 0x19, 0xe5, 0xd0, 0xb3, 0xa9, 0x02, 0xf0, 0x41,
- 0x43, 0x76, 0x5d, 0x74, 0xa0, 0xb9, 0xa8, 0x2b, 0xfe, 0xd6, 0xa1, 0x55, 0xdc, 0x2f, 0x8b, 0x30,
- 0xf3, 0x1c, 0x19, 0x51, 0x8f, 0x91, 0xe3, 0x5b, 0xfc, 0x8b, 0x30, 0x4d, 0x86, 0x43, 0x57, 0x65,
- 0x89, 0xca, 0x2a, 0xff, 0xa7, 0xd8, 0xa7, 0x97, 0x92, 0x21, 0x6c, 0xf2, 0xa1, 0x15, 0x98, 0x6b,
- 0x13, 0x8f, 0x04, 0x23, 0x99, 0x87, 0x89, 0xc3, 0x25, 0xfd, 0x53, 0x4d, 0xcd, 0x9d, 0x5b, 0x1e,
- 0x1b, 0xc7, 0x13, 0x33, 0xd0, 0x15, 0x40, 0xaa, 0x14, 0x5a, 0x6a, 0xb7, 0xfd, 0xc8, 0x63, 0x42,
- 0x8e, 0xbc, 0x4c, 0xf3, 0x4a, 0x0e, 0xba, 0x36, 0xc1, 0x81, 0x0f, 0x98, 0x85, 0x5e, 0x82, 0x5a,
- 0x5b, 0x48, 0x56, 0xee, 0xc5, 0x94, 0x28, 0x2f, 0xdc, 0x79, 0x25, 0xb1, 0xb6, 0x7c, 0x08, 0x1f,
- 0x3e, 0x54, 0x02, 0xd7, 0x34, 0x64, 0x7e, 0x40, 0x7a, 0xd4, 0x94, 0x5b, 0x4a, 0x6b, 0xda, 0x9a,
- 0xe0, 0xc0, 0x07, 0xcc, 0x42, 0xdf, 0xb3, 0xa0, 0xc2, 0xfa, 0x01, 0x0d, 0xfb, 0xbe, 0xdb, 0xa9,
- 0x4d, 0x89, 0x5d, 0xcf, 0xa2, 0x06, 0x56, 0x67, 0x60, 0x43, 0x8b, 0x36, 0x3a, 0x8f, 0x9a, 0x84,
- 0x13, 0x60, 0x9e, 0x9b, 0x87, 0x6d, 0x7f, 0x48, 0xc3, 0x5a, 0x39, 0xb3, 0xde, 0x96, 0x52, 0xa1,
- 0xc5, 0xe5, 0x1a, 0x3d, 0x70, 0x01, 0x83, 0x15, 0x9c, 0xfd, 0x87, 0x1c, 0x54, 0x4d, 0xc6, 0x23,
- 0x44, 0xa4, 0x37, 0x2d, 0xa8, 0x2a, 0x70, 0x31, 0x45, 0xdd, 0x95, 0x4c, 0x8a, 0x18, 0x2e, 0x6f,
- 0x85, 0x32, 0xe2, 0xb8, 0xcd, 0xb3, 0x0a, 0xba, 0xba, 0x6c, 0x60, 0xe1, 0x14, 0x32, 0x7a, 0xc7,
- 0x82, 0xd3, 0xf4, 0x16, 0xcf, 0x69, 0x78, 0x9d, 0x28, 0xb5, 0xc9, 0x9f, 0x88, 0x36, 0x9f, 0x52,
- 0xda, 0x9c, 0xbe, 0x9c, 0x86, 0xc3, 0xe3, 0xf8, 0xf6, 0x16, 0xcc, 0x8d, 0x6f, 0x3e, 0x37, 0xea,
- 0x90, 0x28, 0x07, 0x90, 0x4f, 0x8c, 0xba, 0x4e, 0xc2, 0x10, 0x8b, 0x11, 0xf4, 0x18, 0x94, 0x07,
- 0x24, 0xe8, 0x39, 0x1e, 0x71, 0x85, 0x3d, 0xf3, 0x86, 0x97, 0x52, 0x74, 0x1c, 0x73, 0xd8, 0x7f,
- 0x29, 0xc0, 0xb4, 0x51, 0x4c, 0x9f, 0x7c, 0x0f, 0x36, 0xd5, 0xf4, 0xcc, 0x67, 0xd8, 0xf4, 0x7c,
- 0x11, 0xa0, 0xeb, 0x78, 0x4e, 0xd8, 0xbf, 0xcf, 0x76, 0xaa, 0xc8, 0xef, 0x57, 0x63, 0x09, 0xd8,
- 0x90, 0x96, 0xa4, 0x4e, 0xc5, 0xc3, 0x53, 0x27, 0xf4, 0x96, 0x65, 0x44, 0x94, 0x52, 0x66, 0xe5,
- 0xa3, 0xb1, 0x3b, 0x75, 0x1d, 0x66, 0x64, 0x0e, 0xf3, 0x61, 0xd1, 0x67, 0x03, 0xca, 0x01, 0x0d,
- 0xa3, 0x01, 0x5d, 0x62, 0xca, 0x17, 0x1d, 0xc7, 0x16, 0x55, 0x2e, 0x15, 0xab, 0xf9, 0x38, 0x96,
- 0x34, 0xff, 0x0c, 0xcc, 0xa4, 0x54, 0x38, 0x56, 0xf6, 0xe2, 0xc3, 0x81, 0x6d, 0x9b, 0xfb, 0xc9,
- 0x65, 0xf8, 0x86, 0xb8, 0xce, 0xc0, 0x61, 0x02, 0xa5, 0x98, 0x6c, 0xc8, 0x55, 0x4e, 0xc4, 0x72,
- 0xcc, 0xfe, 0x67, 0x09, 0x54, 0x1d, 0x74, 0x04, 0x5f, 0x64, 0xa6, 0xb9, 0xb9, 0xfb, 0x48, 0x73,
- 0xaf, 0x40, 0xd5, 0xf1, 0x1c, 0xe6, 0x10, 0x77, 0x85, 0xba, 0x64, 0xa4, 0xc2, 0xe6, 0xc3, 0xda,
- 0xf5, 0xac, 0x19, 0x63, 0x07, 0xc8, 0x49, 0xcd, 0x45, 0x37, 0xa1, 0x28, 0xe2, 0x8a, 0x3a, 0xc5,
- 0xc7, 0x2f, 0xd6, 0x44, 0xc5, 0xbe, 0xcc, 0x45, 0x60, 0x29, 0x89, 0x47, 0xf6, 0x30, 0x6a, 0xb7,
- 0x69, 0x18, 0x2e, 0xfb, 0x5e, 0xc7, 0x61, 0x49, 0xc2, 0x1a, 0x47, 0xf6, 0xd6, 0xd8, 0x38, 0x9e,
- 0x98, 0xc1, 0xa5, 0x74, 0x89, 0xe3, 0x46, 0x01, 0x4d, 0xa4, 0x94, 0xd2, 0x52, 0x56, 0xc7, 0xc6,
- 0xf1, 0xc4, 0x0c, 0xd4, 0x85, 0xaa, 0xa2, 0x89, 0xed, 0x52, 0xe7, 0xf3, 0xf8, 0xab, 0x9c, 0xe3,
- 0x86, 0x5d, 0x35, 0x24, 0xe1, 0x94, 0x5c, 0x14, 0xc1, 0x19, 0xc7, 0x6b, 0xfb, 0x5e, 0xdb, 0x8d,
- 0x42, 0x67, 0x47, 0x81, 0x95, 0xef, 0x13, 0xec, 0xdc, 0xfe, 0xde, 0xe2, 0x99, 0xb5, 0x71, 0x71,
- 0x78, 0x12, 0x01, 0xbd, 0x6e, 0xc1, 0xb9, 0xb6, 0xef, 0x85, 0xb4, 0x1d, 0x31, 0x67, 0x87, 0x5e,
- 0x0e, 0x02, 0x3f, 0x90, 0xd8, 0x95, 0xfb, 0xc4, 0x7e, 0x60, 0x7f, 0x6f, 0xf1, 0xdc, 0xf2, 0x41,
- 0x22, 0xf1, 0xc1, 0x48, 0xe8, 0x35, 0x28, 0x0f, 0x03, 0x7f, 0xc7, 0xe9, 0xd0, 0xa0, 0x06, 0x02,
- 0xf5, 0x66, 0x66, 0x9d, 0xef, 0x75, 0x25, 0x38, 0xf1, 0x3f, 0x9a, 0x82, 0x63, 0x50, 0xfb, 0x37,
- 0x55, 0x98, 0x4d, 0xb3, 0xa3, 0xef, 0x5a, 0x00, 0xc3, 0xc0, 0x1f, 0x50, 0xd6, 0xa7, 0x51, 0xa8,
- 0x72, 0xee, 0x2c, 0x32, 0xa4, 0xf5, 0x58, 0xa8, 0xee, 0x82, 0x70, 0xcf, 0x91, 0x50, 0xb1, 0x01,
- 0x8b, 0x76, 0x61, 0x6a, 0x5b, 0x06, 0x55, 0x95, 0x6d, 0xac, 0x67, 0x97, 0x20, 0x29, 0xf8, 0x69,
- 0x1e, 0xf8, 0x14, 0x09, 0x6b, 0x34, 0xd4, 0x83, 0xfc, 0x2e, 0xdd, 0xca, 0xb0, 0x63, 0xbc, 0x49,
- 0x55, 0x29, 0xd3, 0x9c, 0xda, 0xdf, 0x5b, 0xcc, 0x6f, 0xd2, 0x2d, 0xcc, 0x11, 0xf8, 0x0a, 0x3b,
- 0xb2, 0xf0, 0x55, 0xfe, 0x63, 0x3d, 0xeb, 0x52, 0x5a, 0xae, 0x50, 0x91, 0xb0, 0x46, 0x43, 0xaf,
- 0x41, 0x65, 0x97, 0xec, 0xd0, 0x6e, 0xe0, 0x7b, 0x4c, 0xb5, 0xe3, 0xb2, 0xf8, 0xfc, 0x63, 0x53,
- 0xcb, 0x54, 0xe0, 0x22, 0x05, 0x88, 0x89, 0x38, 0xc1, 0x44, 0xdf, 0x84, 0xb2, 0x47, 0x77, 0x31,
- 0x75, 0x9d, 0xb6, 0x7a, 0x6d, 0xcc, 0xe2, 0xd4, 0x5f, 0x57, 0x22, 0x15, 0xbc, 0x88, 0x8d, 0x9a,
- 0x86, 0x63, 0x40, 0xbe, 0xbf, 0xaf, 0xf8, 0x5b, 0xca, 0x99, 0x65, 0xb1, 0xbf, 0x71, 0xa9, 0x2a,
- 0xf7, 0xf7, 0x8a, 0xbf, 0x85, 0x39, 0x82, 0xb8, 0x47, 0xed, 0xb8, 0x23, 0xa4, 0x1c, 0x5a, 0xeb,
- 0x04, 0xda, 0x61, 0xf2, 0x1e, 0x25, 0x54, 0x6c, 0xc0, 0x72, 0x5b, 0xf7, 0x54, 0x43, 0x40, 0xf9,
- 0xb5, 0x2c, 0x6c, 0x9d, 0xee, 0x31, 0x48, 0x5b, 0x6b, 0x1a, 0x8e, 0x01, 0x39, 0xb8, 0xa3, 0x7a,
- 0x05, 0x19, 0xba, 0xb7, 0x74, 0xfb, 0x41, 0x82, 0x6b, 0x1a, 0x8e, 0x01, 0x85, 0xfd, 0xc3, 0xed,
- 0xd1, 0x2e, 0x71, 0xb7, 0x1d, 0xaf, 0x57, 0x9b, 0xce, 0xcc, 0xfe, 0xad, 0xed, 0xd1, 0xa6, 0x14,
- 0x6a, 0xda, 0x3f, 0xa1, 0x62, 0x03, 0x16, 0xfd, 0xc4, 0x82, 0xd2, 0xd0, 0x8d, 0x7a, 0x8e, 0x57,
- 0xab, 0x66, 0xd6, 0x30, 0x4b, 0x7b, 0xec, 0xfa, 0xba, 0x90, 0x2f, 0x93, 0xcd, 0x47, 0xe3, 0xfe,
- 0xaf, 0x20, 0xbe, 0xf5, 0xc7, 0xc5, 0x1a, 0xf5, 0xda, 0x7e, 0xc7, 0xf1, 0x7a, 0x8d, 0x57, 0x42,
- 0xdf, 0xab, 0x63, 0xb2, 0xab, 0x93, 0x7d, 0xa5, 0xd8, 0xfc, 0x53, 0x30, 0x6d, 0x88, 0xb8, 0x57,
- 0xb2, 0x58, 0x35, 0x93, 0xc5, 0x5f, 0x95, 0xa0, 0x6a, 0x7e, 0x3c, 0x71, 0x84, 0x0c, 0x2e, 0x2e,
- 0x5d, 0x72, 0xc7, 0x29, 0x5d, 0x78, 0x0d, 0x6a, 0xbc, 0x1b, 0xea, 0xf6, 0xe3, 0xf5, 0x6c, 0x33,
- 0xf7, 0xa4, 0x06, 0x35, 0x88, 0x21, 0x4e, 0x21, 0x9b, 0x55, 0x54, 0xe1, 0x1e, 0x55, 0xd4, 0x05,
- 0x9d, 0x21, 0x16, 0xd3, 0xf9, 0x6f, 0x2a, 0xe7, 0xbb, 0x04, 0xa0, 0x32, 0xb8, 0x6e, 0xe4, 0x0a,
- 0x87, 0x58, 0x4c, 0x12, 0xeb, 0x56, 0x3c, 0x82, 0x0d, 0x2e, 0xf4, 0x30, 0x94, 0x78, 0x0e, 0x45,
- 0x65, 0x07, 0xa3, 0x98, 0x54, 0xfb, 0xab, 0x82, 0x8a, 0xd5, 0x28, 0x7a, 0x92, 0xa7, 0xbb, 0x49,
- 0xe6, 0x23, 0xbc, 0x50, 0x31, 0x59, 0xa5, 0x99, 0x28, 0xe1, 0x14, 0x27, 0x57, 0x9d, 0xf2, 0x44,
- 0x45, 0x78, 0x0d, 0x43, 0x75, 0x91, 0xbd, 0x60, 0x39, 0x26, 0x1a, 0x51, 0x63, 0x89, 0x8d, 0xb8,
- 0xe8, 0x45, 0xa3, 0x11, 0x35, 0x36, 0x8e, 0x27, 0x66, 0xf0, 0xc5, 0xa8, 0x97, 0xf1, 0x69, 0xf9,
- 0x84, 0x73, 0xc8, 0x73, 0xf6, 0xdb, 0x66, 0xe5, 0x96, 0xf5, 0x6d, 0x92, 0xe7, 0xf7, 0xe8, 0xa5,
- 0xdb, 0x47, 0x2b, 0xb2, 0x5e, 0x86, 0xd9, 0x74, 0xbc, 0xca, 0xbc, 0x8b, 0x7a, 0xc7, 0x82, 0xaa,
- 0xf9, 0x58, 0x8b, 0x1e, 0x83, 0x32, 0xf3, 0xb7, 0xa9, 0xf7, 0x7c, 0xa0, 0x1f, 0x08, 0xe2, 0xd5,
- 0x6d, 0x08, 0x3a, 0xbe, 0x8a, 0x63, 0x0e, 0xce, 0xdd, 0x76, 0x1d, 0xea, 0xb1, 0xb5, 0x8e, 0x82,
- 0x89, 0xb9, 0x97, 0x25, 0x7d, 0x05, 0xc7, 0x1c, 0xfc, 0x98, 0xc9, 0xbf, 0x5b, 0xb4, 0x1d, 0x50,
- 0xfd, 0xca, 0x94, 0x34, 0x74, 0x8c, 0x31, 0x9c, 0xe2, 0x44, 0x76, 0xdc, 0x07, 0x2b, 0x9c, 0xcf,
- 0x5f, 0xac, 0xc8, 0x67, 0xbe, 0xb1, 0x96, 0xd5, 0xef, 0xf3, 0x30, 0x37, 0x9e, 0x3c, 0x66, 0xdd,
- 0xd7, 0x46, 0xef, 0x58, 0x30, 0x4b, 0x52, 0x8f, 0xf6, 0x2a, 0x07, 0xcc, 0x22, 0x64, 0xa5, 0xbf,
- 0x06, 0x68, 0xfe, 0xbf, 0xd2, 0x60, 0xec, 0x2b, 0x01, 0x3c, 0xa6, 0x00, 0xfa, 0x0c, 0x4c, 0x31,
- 0x67, 0x40, 0xfd, 0x48, 0x96, 0x98, 0x79, 0x99, 0xd0, 0x6d, 0x48, 0x12, 0xd6, 0x63, 0x7c, 0xaf,
- 0x1c, 0x71, 0xa5, 0x02, 0xd9, 0xf9, 0x28, 0x27, 0x7b, 0xb5, 0xa6, 0xe8, 0x38, 0xe6, 0x40, 0xdf,
- 0x86, 0xa9, 0x3e, 0x25, 0x1d, 0x1a, 0x84, 0xaa, 0xfb, 0x81, 0xb3, 0x4c, 0x72, 0xbf, 0x2a, 0x44,
- 0x27, 0x9b, 0x21, 0x7f, 0x87, 0x58, 0x63, 0xda, 0x7f, 0xb3, 0xc0, 0xf8, 0x16, 0x2d, 0xf1, 0x90,
- 0xd6, 0x91, 0x3d, 0x64, 0xee, 0x98, 0x1e, 0x32, 0x7f, 0x2c, 0x0f, 0x59, 0x38, 0xbe, 0x87, 0x2c,
- 0x1e, 0xee, 0x21, 0xed, 0xdf, 0x5a, 0x30, 0x6d, 0xb4, 0x15, 0xf9, 0x24, 0x71, 0xaa, 0xd5, 0xa1,
- 0x4d, 0x3e, 0xdc, 0x10, 0xbd, 0x45, 0x39, 0xc6, 0x75, 0x0f, 0x68, 0xcf, 0xf8, 0x08, 0x40, 0xeb,
- 0x8e, 0x05, 0x15, 0xab, 0x51, 0xf9, 0xa8, 0x4b, 0x87, 0x62, 0x85, 0x79, 0xf3, 0x51, 0x97, 0x0e,
- 0xb1, 0x18, 0x11, 0x70, 0x8c, 0x04, 0xfa, 0x55, 0x37, 0x81, 0xe3, 0x44, 0x2c, 0xc7, 0xd0, 0x43,
- 0x90, 0xa7, 0x5e, 0x47, 0xf5, 0x19, 0xa6, 0x15, 0x4b, 0xfe, 0xb2, 0xd7, 0xc1, 0x9c, 0x6e, 0xdf,
- 0x80, 0xaa, 0xbc, 0xac, 0xcf, 0xd1, 0x11, 0xa6, 0xdd, 0x23, 0x84, 0xf8, 0x87, 0xa4, 0x27, 0xcc,
- 0xa5, 0x05, 0xf2, 0xe9, 0x9c, 0x6e, 0xbf, 0xcd, 0x6d, 0x92, 0x7c, 0xbd, 0x62, 0x2c, 0xd7, 0xfa,
- 0xd0, 0xe5, 0x1a, 0x2e, 0x32, 0x77, 0x0f, 0x17, 0xf9, 0x08, 0x4c, 0x05, 0xbe, 0x4b, 0x97, 0x02,
- 0x4f, 0xf9, 0xa2, 0x98, 0x15, 0x73, 0x32, 0xbe, 0x8e, 0xf5, 0xb8, 0xfd, 0x53, 0x0b, 0xe6, 0xc6,
- 0x53, 0xba, 0xcc, 0xbd, 0x8b, 0xd9, 0xb6, 0xca, 0x1f, 0xbf, 0x6d, 0x65, 0xbf, 0x95, 0x83, 0xe4,
- 0x5b, 0x23, 0xf4, 0x86, 0x05, 0xd5, 0xd0, 0xd8, 0x12, 0x55, 0xa4, 0x67, 0xf1, 0x86, 0x60, 0xee,
- 0xb4, 0xec, 0xdc, 0x98, 0x14, 0x9c, 0x82, 0x45, 0x11, 0x94, 0xbb, 0xea, 0xa9, 0x52, 0x55, 0xe9,
- 0x59, 0x7c, 0x45, 0xa7, 0x5f, 0x3f, 0x65, 0x66, 0xaf, 0x7f, 0xe1, 0x18, 0xca, 0x26, 0x70, 0x7a,
- 0xac, 0xd8, 0xcc, 0xfc, 0x95, 0xf3, 0x5f, 0x05, 0xa8, 0xc4, 0x3e, 0x0d, 0x3d, 0x25, 0xbe, 0x0e,
- 0xe9, 0xfb, 0xfa, 0xc3, 0x9d, 0x4f, 0x1b, 0x9f, 0x6f, 0xf4, 0xfd, 0xce, 0xdd, 0xbd, 0xc5, 0xd3,
- 0x31, 0xb3, 0x24, 0x61, 0x35, 0x81, 0x5f, 0x85, 0x28, 0x70, 0xc7, 0xaf, 0x02, 0x8f, 0xb5, 0x9c,
- 0x6e, 0x3a, 0xe3, 0xfc, 0xc7, 0xef, 0x8c, 0xf9, 0x55, 0xde, 0xf2, 0x3b, 0xa3, 0xf1, 0x6f, 0x3e,
- 0x9a, 0x7e, 0x67, 0x84, 0xc5, 0x08, 0x7a, 0x16, 0x66, 0x55, 0x98, 0x69, 0xd1, 0xb6, 0xef, 0x75,
- 0x42, 0xe1, 0x26, 0xf2, 0x49, 0x08, 0xdb, 0x48, 0x8d, 0xe2, 0x31, 0x6e, 0x1e, 0x9b, 0x78, 0xd9,
- 0x21, 0x1e, 0xb0, 0x4b, 0xe9, 0x3c, 0xe2, 0x4a, 0xeb, 0xc6, 0x75, 0xf1, 0x7e, 0x1d, 0x73, 0xa4,
- 0x22, 0xd9, 0xd4, 0x3d, 0x23, 0xd9, 0x8a, 0x94, 0xcd, 0xb5, 0x15, 0x89, 0x6d, 0xb5, 0x79, 0x51,
- 0xcb, 0xe5, 0xb4, 0xbb, 0x7b, 0x1f, 0x52, 0xfb, 0xc4, 0x33, 0x0f, 0x0a, 0xfc, 0x95, 0x4f, 0x38,
- 0xf0, 0xdb, 0xcf, 0xc3, 0xe9, 0xb1, 0x4d, 0xd4, 0x3e, 0xd5, 0x3a, 0xd8, 0xa7, 0x1e, 0xe9, 0xab,
- 0x91, 0x66, 0xef, 0xce, 0xfb, 0x0b, 0xa7, 0xde, 0x7d, 0x7f, 0xe1, 0xd4, 0x7b, 0xef, 0x2f, 0x9c,
- 0xfa, 0xce, 0xfe, 0x82, 0x75, 0x67, 0x7f, 0xc1, 0x7a, 0x77, 0x7f, 0xc1, 0x7a, 0x6f, 0x7f, 0xc1,
- 0xfa, 0xd3, 0xfe, 0x82, 0xf5, 0xa3, 0x0f, 0x16, 0x4e, 0xbd, 0xb8, 0xf4, 0x91, 0xff, 0x27, 0xd9,
- 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x0b, 0x11, 0xfa, 0x13, 0x8d, 0x36, 0x00, 0x00,
+ 0xf5, 0xdf, 0x9e, 0x0f, 0x7b, 0xe6, 0x79, 0xec, 0xf5, 0xd6, 0x7f, 0xf7, 0x9f, 0x89, 0xff, 0x89,
+ 0xbd, 0xff, 0x5e, 0x11, 0xed, 0x86, 0x30, 0x43, 0x96, 0x80, 0xf2, 0x81, 0x22, 0x79, 0xec, 0x35,
+ 0x78, 0xb3, 0x1f, 0xde, 0x1a, 0x27, 0x46, 0x51, 0x40, 0x29, 0xcf, 0xd4, 0xcc, 0x74, 0xdc, 0xd3,
+ 0x3d, 0xe9, 0xae, 0xf6, 0xee, 0x08, 0x50, 0x88, 0x20, 0x10, 0x25, 0x1c, 0xc8, 0x0d, 0xe5, 0x06,
+ 0x12, 0x07, 0x84, 0x38, 0x72, 0x03, 0x89, 0x13, 0x5a, 0x71, 0x21, 0xc7, 0x9c, 0x0c, 0x71, 0x38,
+ 0x80, 0x84, 0xe0, 0x86, 0xc4, 0x2a, 0x42, 0xa8, 0xbe, 0xba, 0xab, 0x67, 0x3c, 0x59, 0x7b, 0xd3,
+ 0x4e, 0x90, 0x72, 0xf2, 0xf4, 0xab, 0x57, 0xef, 0xf7, 0xea, 0x55, 0xd5, 0x7b, 0xaf, 0x5e, 0x95,
+ 0xe1, 0x46, 0xd7, 0x61, 0xbd, 0x68, 0xbb, 0xd6, 0xf2, 0xfb, 0x75, 0xb2, 0x13, 0x39, 0x6c, 0x58,
+ 0xdf, 0x21, 0x41, 0xd7, 0xaf, 0x3b, 0x1e, 0xa3, 0x81, 0x47, 0xdc, 0x7a, 0xcb, 0xf7, 0x58, 0xe0,
+ 0xbb, 0x2e, 0x0d, 0xea, 0xfc, 0x8f, 0x1f, 0xb1, 0xb0, 0x4e, 0x06, 0x4e, 0x7d, 0xf7, 0x51, 0xe2,
+ 0x0e, 0x7a, 0xe4, 0xd1, 0x7a, 0x97, 0x7a, 0x34, 0x20, 0x8c, 0xb6, 0x6b, 0x83, 0xc0, 0x67, 0x3e,
+ 0x5a, 0x4e, 0x44, 0xd6, 0xa4, 0xc8, 0x9a, 0x10, 0x59, 0xd3, 0x22, 0x6b, 0x89, 0xc8, 0x9a, 0x16,
+ 0x59, 0x23, 0x03, 0xa7, 0xa6, 0x45, 0x2e, 0x7c, 0xce, 0xd0, 0xaa, 0xeb, 0x77, 0xfd, 0xba, 0x90,
+ 0xbc, 0x1d, 0x75, 0xc4, 0x97, 0xf8, 0x10, 0xbf, 0x24, 0xe2, 0xc2, 0xb9, 0x9d, 0xc7, 0xc3, 0x9a,
+ 0xe3, 0x0b, 0xb5, 0xb6, 0x09, 0x6b, 0xf5, 0xea, 0xbb, 0x63, 0x6a, 0x2d, 0x3c, 0x96, 0x30, 0xf5,
+ 0x49, 0xab, 0xe7, 0x78, 0x34, 0x18, 0xd6, 0x07, 0x3b, 0x5d, 0x4e, 0x08, 0xeb, 0x7d, 0xca, 0xc8,
+ 0x41, 0xbd, 0xea, 0x93, 0x7a, 0x05, 0x91, 0xc7, 0x9c, 0x3e, 0x1d, 0xeb, 0xf0, 0xa5, 0xbb, 0x75,
+ 0x08, 0x5b, 0x3d, 0xda, 0x27, 0x63, 0xfd, 0xbe, 0x30, 0xa9, 0x5f, 0xc4, 0x1c, 0x97, 0xcf, 0x46,
+ 0xc8, 0x82, 0xd1, 0x4e, 0xf6, 0xfb, 0x39, 0x98, 0x59, 0xf6, 0x88, 0x3b, 0x0c, 0x9d, 0x10, 0x47,
+ 0x1e, 0x7a, 0x11, 0x4a, 0x7c, 0x20, 0x6d, 0xc2, 0x48, 0xd5, 0x3a, 0x6b, 0x9d, 0x9f, 0xb9, 0xf8,
+ 0xf9, 0x9a, 0x94, 0x5b, 0x33, 0xe5, 0xd6, 0x06, 0x3b, 0x5d, 0x4e, 0x08, 0x6b, 0x9c, 0xbb, 0xb6,
+ 0xfb, 0x68, 0xed, 0xfa, 0xf6, 0x4b, 0xb4, 0xc5, 0xae, 0x52, 0x46, 0x1a, 0xe8, 0xf6, 0xde, 0xd2,
+ 0x89, 0xfd, 0xbd, 0x25, 0x48, 0x68, 0x38, 0x96, 0x8a, 0x18, 0x14, 0xc2, 0x01, 0x6d, 0x55, 0x73,
+ 0x42, 0x3a, 0xae, 0x7d, 0xe4, 0xb9, 0xae, 0x19, 0xfa, 0x37, 0x07, 0xb4, 0xd5, 0xa8, 0x28, 0xfc,
+ 0x02, 0xff, 0xc2, 0x02, 0x0d, 0x7d, 0x0b, 0xa6, 0x42, 0x46, 0x58, 0x14, 0x56, 0xf3, 0x02, 0x77,
+ 0x33, 0x63, 0x5c, 0x21, 0xbb, 0x31, 0xa7, 0x90, 0xa7, 0xe4, 0x37, 0x56, 0x98, 0xf6, 0x9f, 0x2d,
+ 0x38, 0x69, 0x70, 0x5f, 0x71, 0x42, 0x86, 0x5e, 0x18, 0xb3, 0x74, 0xed, 0x70, 0x96, 0xe6, 0xbd,
+ 0x85, 0x9d, 0xe7, 0x15, 0x5a, 0x49, 0x53, 0x0c, 0x2b, 0x87, 0x50, 0x74, 0x18, 0xed, 0x87, 0xd5,
+ 0xdc, 0xd9, 0xfc, 0xf9, 0x99, 0x8b, 0xd7, 0xb2, 0x1d, 0x6e, 0x63, 0x56, 0x41, 0x17, 0xd7, 0x39,
+ 0x08, 0x96, 0x58, 0xf6, 0xef, 0x0a, 0xa9, 0x61, 0x72, 0xf3, 0x23, 0x06, 0xd3, 0x7d, 0xca, 0x02,
+ 0xa7, 0x15, 0x56, 0x2d, 0xa1, 0xca, 0x7a, 0x06, 0xaa, 0x5c, 0x15, 0x12, 0x1b, 0x27, 0x95, 0x16,
+ 0xd3, 0xf2, 0x3b, 0xc4, 0x1a, 0x0a, 0xf5, 0xa1, 0x40, 0x82, 0xae, 0x1e, 0xfd, 0x33, 0x59, 0x8c,
+ 0x3e, 0xe8, 0x46, 0x7d, 0xea, 0xb1, 0x64, 0x75, 0x2d, 0x07, 0xdd, 0x10, 0x0b, 0x18, 0x54, 0x87,
+ 0x32, 0xa3, 0x41, 0xdf, 0xf1, 0x08, 0xa3, 0x62, 0x81, 0x95, 0x1a, 0xa7, 0x14, 0x5b, 0x79, 0x53,
+ 0x37, 0xe0, 0x84, 0x07, 0xbd, 0x0c, 0x53, 0xed, 0x60, 0x88, 0x23, 0xaf, 0x5a, 0xc8, 0xcc, 0x28,
+ 0xab, 0x42, 0x60, 0xb2, 0x06, 0xe5, 0x37, 0x56, 0x40, 0xe8, 0xe7, 0x16, 0x9c, 0xee, 0x53, 0x12,
+ 0x46, 0x01, 0xe5, 0xe3, 0xc0, 0x94, 0x51, 0x8f, 0x39, 0xbe, 0x57, 0x2d, 0x0a, 0x0d, 0xb6, 0x32,
+ 0x99, 0x96, 0x71, 0xf1, 0x8d, 0x07, 0x94, 0x3e, 0xa7, 0x0f, 0x6a, 0xc5, 0x07, 0xaa, 0x64, 0xff,
+ 0xb5, 0x00, 0xa7, 0xc6, 0x76, 0x17, 0x7a, 0x0c, 0x8a, 0x83, 0x1e, 0x09, 0xa9, 0xd8, 0x2e, 0xe5,
+ 0xc6, 0xa2, 0x5e, 0x83, 0x1b, 0x9c, 0x78, 0x67, 0x6f, 0x69, 0x56, 0x77, 0x11, 0x04, 0x2c, 0x99,
+ 0xd1, 0x05, 0xbe, 0x00, 0xc3, 0x90, 0x74, 0xa9, 0x70, 0x39, 0x65, 0x73, 0xd5, 0x08, 0x32, 0xd6,
+ 0xed, 0xe8, 0x87, 0x16, 0xcc, 0xca, 0x15, 0x84, 0x69, 0x18, 0xb9, 0x8c, 0x3b, 0x0b, 0x6e, 0x9b,
+ 0xeb, 0x99, 0x2d, 0x59, 0x29, 0xb7, 0x71, 0x46, 0xa9, 0x30, 0x6b, 0x52, 0x43, 0x9c, 0x06, 0x47,
+ 0x5b, 0x50, 0x0e, 0x19, 0x09, 0x18, 0x6d, 0x2f, 0xb3, 0x6a, 0x41, 0xb8, 0x88, 0x87, 0x0f, 0xe7,
+ 0x22, 0x36, 0x9d, 0x3e, 0x6d, 0xcc, 0xf2, 0xd5, 0xd7, 0xd4, 0x02, 0x70, 0x22, 0x0b, 0xbd, 0x6a,
+ 0x01, 0x04, 0x91, 0xd7, 0x8c, 0xfa, 0x7d, 0x12, 0x0c, 0xab, 0x45, 0x21, 0xfa, 0x6a, 0x06, 0x83,
+ 0xc4, 0xb1, 0xd0, 0x24, 0x08, 0x24, 0x34, 0x6c, 0x80, 0xa2, 0xef, 0x5b, 0x30, 0x2b, 0x57, 0xa6,
+ 0x56, 0x63, 0xea, 0x38, 0xd4, 0x38, 0xc5, 0xad, 0xbc, 0x6a, 0xe2, 0xe0, 0x34, 0xac, 0xfd, 0x0f,
+ 0x0b, 0xe6, 0xf5, 0xc2, 0xd9, 0xa4, 0xfd, 0x81, 0xcb, 0xf7, 0xe7, 0xf1, 0x87, 0xc1, 0x61, 0x2a,
+ 0x0c, 0x6e, 0x65, 0xe8, 0x9f, 0xf5, 0x20, 0x26, 0xc5, 0x42, 0xfb, 0xef, 0x16, 0x9c, 0x1e, 0x65,
+ 0xfe, 0x18, 0x42, 0xd2, 0xad, 0x74, 0x48, 0x6a, 0x1e, 0xc3, 0x90, 0x27, 0xc4, 0xa5, 0xb7, 0x0b,
+ 0xe3, 0x03, 0xfe, 0xf4, 0x04, 0xa7, 0x24, 0xd6, 0xe4, 0x3f, 0xf1, 0x58, 0x53, 0xf8, 0xef, 0x8b,
+ 0x35, 0xb7, 0x2d, 0x28, 0x69, 0xfb, 0xa1, 0xb3, 0x50, 0xf0, 0x48, 0x5f, 0x47, 0x98, 0xd8, 0x9a,
+ 0xd7, 0x48, 0x9f, 0x62, 0xd1, 0x82, 0x96, 0xa0, 0xb8, 0x4b, 0xdc, 0x48, 0x07, 0x93, 0x32, 0x5f,
+ 0x6c, 0xcf, 0x71, 0x02, 0x96, 0x74, 0x34, 0x84, 0xb2, 0xf8, 0xb1, 0x16, 0xf8, 0x7d, 0x95, 0x6c,
+ 0x5e, 0xc9, 0x60, 0xbc, 0xcf, 0x69, 0x99, 0xd2, 0xaf, 0xc7, 0x9f, 0x38, 0x41, 0xb3, 0xff, 0x6d,
+ 0xc1, 0xdc, 0x72, 0xc4, 0x7a, 0x7c, 0x64, 0x2d, 0xc2, 0x47, 0xc7, 0xf3, 0xc0, 0xd0, 0xe9, 0xee,
+ 0x3e, 0xa6, 0xf6, 0x73, 0x16, 0x79, 0x60, 0x93, 0xcb, 0x5b, 0xf1, 0xbd, 0x8e, 0xd3, 0x4d, 0xf6,
+ 0x9b, 0x20, 0x62, 0x89, 0x85, 0x6e, 0xc2, 0x94, 0x4f, 0x22, 0xd6, 0xbb, 0xa8, 0xbc, 0x5b, 0x16,
+ 0xf1, 0xf3, 0x3a, 0x1f, 0xd8, 0x45, 0x05, 0x1b, 0xaf, 0x3b, 0x49, 0xc5, 0x0a, 0xce, 0xbe, 0x63,
+ 0xc1, 0xfc, 0x8a, 0xeb, 0x47, 0xed, 0x2d, 0x7e, 0x86, 0x93, 0x1b, 0x0f, 0x3d, 0x0d, 0x25, 0x01,
+ 0xb3, 0x4b, 0x5c, 0x35, 0xaf, 0xb6, 0xf6, 0x52, 0xeb, 0x8a, 0x7e, 0x67, 0x6f, 0x69, 0x6e, 0x35,
+ 0x0a, 0x84, 0xc9, 0x9a, 0x2c, 0x70, 0xbc, 0x2e, 0x8e, 0xfb, 0xa0, 0x9f, 0x59, 0x70, 0x4a, 0x6e,
+ 0xdd, 0x55, 0xc2, 0xc8, 0x8d, 0x88, 0x06, 0x0e, 0xd5, 0x9b, 0xf7, 0x85, 0x0c, 0x46, 0x36, 0xaa,
+ 0xb0, 0x46, 0x19, 0x36, 0xee, 0x57, 0x7a, 0x9e, 0xba, 0x3a, 0x0a, 0x8f, 0xc7, 0x35, 0xb2, 0x7f,
+ 0x9c, 0x87, 0xfb, 0x27, 0xca, 0x42, 0x0b, 0x90, 0x73, 0xda, 0x6a, 0xfc, 0xa0, 0xe4, 0xe6, 0xd6,
+ 0xdb, 0x38, 0xe7, 0xb4, 0x51, 0x0d, 0x80, 0xde, 0x1a, 0x04, 0x34, 0x0c, 0xf9, 0x1e, 0x95, 0x0b,
+ 0x7b, 0x8e, 0x47, 0xae, 0x4b, 0x31, 0x15, 0x1b, 0x1c, 0x7c, 0x0f, 0xb8, 0x64, 0x9b, 0xba, 0x62,
+ 0x79, 0xab, 0x3d, 0x70, 0x85, 0x13, 0xb0, 0xa4, 0xa3, 0x1f, 0x58, 0x00, 0x52, 0x41, 0x9e, 0xba,
+ 0xa9, 0xdc, 0x65, 0xeb, 0x18, 0x6c, 0xc5, 0xc5, 0x4b, 0x55, 0x93, 0x6f, 0x6c, 0x40, 0xa3, 0x4d,
+ 0x98, 0x1a, 0xd0, 0xc0, 0xf1, 0xdb, 0x2a, 0xcb, 0x99, 0x1c, 0xc6, 0xf9, 0x29, 0xb9, 0x26, 0x4f,
+ 0xc9, 0xb5, 0x75, 0x8f, 0x5d, 0x0f, 0xe4, 0x42, 0x68, 0x00, 0x5f, 0x67, 0x1b, 0x42, 0x06, 0x56,
+ 0xb2, 0xb8, 0xc1, 0x02, 0xca, 0xa2, 0xc0, 0xe3, 0xf6, 0x15, 0x89, 0x4b, 0x49, 0x6a, 0x81, 0x63,
+ 0x2a, 0x36, 0x38, 0xec, 0x5f, 0xe7, 0xe0, 0xf4, 0x41, 0xaa, 0xa3, 0xd7, 0x2c, 0x98, 0x92, 0xda,
+ 0xaa, 0x0d, 0xfa, 0xf5, 0x63, 0x32, 0x92, 0x0a, 0x4a, 0xf1, 0xc6, 0x51, 0x89, 0xa7, 0x02, 0x47,
+ 0x5f, 0x8b, 0xcd, 0x94, 0xbb, 0x47, 0x33, 0xc5, 0x92, 0x47, 0x4c, 0x75, 0x16, 0x0a, 0xfc, 0x10,
+ 0xac, 0x96, 0x4a, 0x92, 0x8e, 0xf0, 0x89, 0x12, 0x2d, 0x9c, 0x23, 0xf2, 0x1c, 0xb9, 0x4a, 0x0c,
+ 0x8e, 0x67, 0x3d, 0x87, 0x61, 0xd1, 0x62, 0xbf, 0x9d, 0x83, 0x85, 0xc9, 0x83, 0x42, 0x6f, 0x5b,
+ 0x00, 0x6d, 0xa7, 0x4f, 0x3d, 0xbe, 0x38, 0x75, 0x24, 0xef, 0x1c, 0xab, 0x21, 0x57, 0x35, 0x5c,
+ 0x92, 0xe5, 0xc5, 0xa4, 0x10, 0x1b, 0xda, 0xa0, 0x8b, 0x7a, 0x27, 0xf0, 0x18, 0xa2, 0xf6, 0x56,
+ 0xdc, 0xe7, 0x6a, 0xdc, 0x82, 0x0d, 0x2e, 0xf4, 0x59, 0x28, 0xf3, 0x58, 0x13, 0x0e, 0x48, 0x8b,
+ 0x2a, 0xc3, 0x09, 0xa7, 0x7f, 0x4d, 0x13, 0x71, 0xd2, 0x6e, 0xbb, 0x70, 0xee, 0x10, 0x7a, 0x1e,
+ 0x22, 0xb2, 0x9d, 0x4b, 0x47, 0xb6, 0xd8, 0xb5, 0x9b, 0xd1, 0xcd, 0xfe, 0xa7, 0x05, 0xf7, 0xad,
+ 0xb8, 0x51, 0xc8, 0x68, 0xf0, 0xe9, 0x4a, 0x9a, 0x3f, 0xb0, 0xe0, 0xff, 0x26, 0x0c, 0xfc, 0x63,
+ 0xc8, 0x9d, 0x5f, 0x49, 0xe7, 0xce, 0xcf, 0x67, 0xb2, 0xb8, 0x0f, 0x1c, 0xcc, 0xa4, 0x14, 0x3a,
+ 0x0f, 0xb3, 0xdc, 0x95, 0xb5, 0xfd, 0x6e, 0x46, 0x61, 0xf5, 0x1c, 0x14, 0x5f, 0xe6, 0x91, 0x69,
+ 0x74, 0xb9, 0x89, 0x70, 0x85, 0x65, 0x1b, 0x7a, 0xdd, 0x82, 0xe9, 0x97, 0x55, 0xc4, 0x95, 0xd9,
+ 0x6b, 0x16, 0x0e, 0x32, 0x35, 0x90, 0x9a, 0x8a, 0x9f, 0x97, 0x3c, 0x16, 0x0c, 0x93, 0xac, 0x5d,
+ 0x07, 0x5a, 0x0d, 0x8f, 0x2e, 0xc0, 0x74, 0xc7, 0x0f, 0xfa, 0x91, 0x4b, 0x94, 0xa7, 0x8a, 0x59,
+ 0xd7, 0x24, 0x19, 0xeb, 0x76, 0xbe, 0xe7, 0xc9, 0xc0, 0x79, 0x8e, 0x06, 0xa1, 0xac, 0xaf, 0xa4,
+ 0xf6, 0xfc, 0x72, 0xdc, 0x82, 0x0d, 0xae, 0x85, 0x27, 0xa1, 0x62, 0x2a, 0x82, 0xe6, 0x21, 0xbf,
+ 0x43, 0x87, 0xd2, 0xb2, 0x98, 0xff, 0x44, 0xa7, 0x53, 0xfb, 0x53, 0x6d, 0xc8, 0x27, 0x73, 0x8f,
+ 0x5b, 0xf6, 0x97, 0x41, 0x25, 0xe0, 0x23, 0xde, 0xc6, 0x3a, 0x8c, 0xb7, 0xb1, 0x9f, 0x82, 0xd2,
+ 0x9a, 0x43, 0xdd, 0x36, 0xa6, 0x1d, 0x54, 0x87, 0x72, 0x87, 0xff, 0xde, 0x20, 0xac, 0xa7, 0xba,
+ 0xc7, 0x85, 0xac, 0x35, 0xdd, 0x80, 0x13, 0x1e, 0xfb, 0x45, 0x98, 0xfb, 0x4a, 0x40, 0x06, 0x3d,
+ 0x87, 0x51, 0xb5, 0x2e, 0x2e, 0xc0, 0x34, 0x69, 0xb7, 0x79, 0xaa, 0xa0, 0x04, 0xc4, 0x76, 0x5a,
+ 0x96, 0x64, 0xac, 0xdb, 0x0f, 0xb5, 0x04, 0x38, 0xc2, 0xba, 0xd7, 0x71, 0xa3, 0x5b, 0xed, 0xed,
+ 0x04, 0x61, 0x10, 0xf8, 0x1d, 0xc7, 0xa5, 0xa3, 0x08, 0x1b, 0x92, 0x8c, 0x75, 0xfb, 0xe1, 0x10,
+ 0x7e, 0x61, 0x41, 0xf9, 0xb2, 0xaf, 0xa5, 0x7f, 0x23, 0x03, 0x2f, 0x16, 0x6f, 0xe5, 0xab, 0x4a,
+ 0x92, 0xb1, 0x95, 0x9f, 0x4e, 0xf9, 0xb0, 0x07, 0x0c, 0xd9, 0x35, 0x71, 0xf3, 0xc0, 0x45, 0x5d,
+ 0xf6, 0xb7, 0x27, 0x3a, 0xa2, 0x5f, 0x16, 0x61, 0xf6, 0x19, 0x32, 0xa4, 0x1e, 0x23, 0x47, 0xb7,
+ 0xf8, 0x17, 0x61, 0x86, 0x0c, 0x06, 0xae, 0x3a, 0x1d, 0x28, 0xab, 0xfc, 0x8f, 0x62, 0x9f, 0x59,
+ 0x4e, 0x9a, 0xb0, 0xc9, 0x87, 0x56, 0x61, 0xbe, 0x45, 0x3c, 0x12, 0x0c, 0x65, 0xfe, 0x2d, 0x16,
+ 0x97, 0x8c, 0x4b, 0x55, 0xd5, 0x77, 0x7e, 0x65, 0xa4, 0x1d, 0x8f, 0xf5, 0x40, 0x97, 0x01, 0xa9,
+ 0x23, 0xf0, 0x72, 0xab, 0xe5, 0x47, 0x1e, 0x13, 0x72, 0xe4, 0x66, 0x5a, 0x50, 0x72, 0xd0, 0xd5,
+ 0x31, 0x0e, 0x7c, 0x40, 0x2f, 0xf4, 0x02, 0x54, 0x5b, 0x42, 0xb2, 0x72, 0x2f, 0xa6, 0x44, 0xb9,
+ 0xe1, 0xce, 0x2a, 0x89, 0xd5, 0x95, 0x09, 0x7c, 0x78, 0xa2, 0x04, 0xae, 0x69, 0xc8, 0xfc, 0x80,
+ 0x74, 0xa9, 0x29, 0x77, 0x2a, 0xad, 0x69, 0x73, 0x8c, 0x03, 0x1f, 0xd0, 0x0b, 0x7d, 0xcf, 0x82,
+ 0x32, 0xeb, 0x05, 0x34, 0xec, 0xf9, 0x6e, 0xbb, 0x3a, 0x2d, 0x66, 0x3d, 0x8b, 0xda, 0x87, 0x5a,
+ 0x03, 0x9b, 0x5a, 0xb4, 0x51, 0x71, 0xd6, 0x24, 0x9c, 0x00, 0xf3, 0x33, 0x59, 0xd8, 0xf2, 0x07,
+ 0x34, 0xac, 0x96, 0x32, 0xab, 0x69, 0x2a, 0x15, 0x9a, 0x5c, 0xae, 0x71, 0xf7, 0x21, 0x60, 0xb0,
+ 0x82, 0xb3, 0xff, 0x90, 0x83, 0x8a, 0xc9, 0x78, 0x88, 0x4c, 0xe4, 0x75, 0x0b, 0x2a, 0x0a, 0x5c,
+ 0x74, 0x51, 0x7b, 0x25, 0x93, 0xc3, 0x2b, 0x97, 0xb7, 0x4a, 0x19, 0x71, 0xdc, 0xc6, 0x69, 0x05,
+ 0x5d, 0x59, 0x31, 0xb0, 0x70, 0x0a, 0x19, 0xbd, 0x65, 0xc1, 0x49, 0x7a, 0x8b, 0xe7, 0xb2, 0x7d,
+ 0xea, 0x31, 0xa9, 0x4d, 0xfe, 0x58, 0xb4, 0xb9, 0x4f, 0x69, 0x73, 0xf2, 0x52, 0x1a, 0x0e, 0x8f,
+ 0xe2, 0xdb, 0xdb, 0x30, 0x3f, 0x3a, 0xf9, 0xdc, 0xa8, 0x03, 0xa2, 0x1c, 0x40, 0x3e, 0x31, 0xea,
+ 0x06, 0x09, 0x43, 0x2c, 0x5a, 0xd0, 0x23, 0x50, 0xea, 0x93, 0xa0, 0xeb, 0x78, 0xc4, 0x15, 0xf6,
+ 0xcc, 0x1b, 0x5e, 0x4a, 0xd1, 0x71, 0xcc, 0x61, 0xff, 0xa5, 0x00, 0x33, 0x46, 0x11, 0xe5, 0xf8,
+ 0x6b, 0xef, 0xa9, 0x62, 0x77, 0x3e, 0xc3, 0x62, 0xf7, 0xf3, 0x00, 0x1d, 0xc7, 0x73, 0xc2, 0xde,
+ 0x3d, 0x96, 0xd1, 0xc5, 0xb9, 0x6e, 0x2d, 0x96, 0x80, 0x0d, 0x69, 0x49, 0xca, 0x5c, 0x9c, 0x9c,
+ 0x32, 0xa3, 0x37, 0x2c, 0x23, 0xa2, 0x4c, 0x65, 0x56, 0x36, 0x30, 0x66, 0xa7, 0xa6, 0xc3, 0x8c,
+ 0xcc, 0x61, 0x3e, 0x2c, 0xfa, 0x6c, 0x42, 0x29, 0xa0, 0x61, 0xd4, 0xa7, 0xcb, 0x4c, 0xf9, 0xa2,
+ 0xa3, 0xd8, 0xa2, 0xc2, 0xa5, 0x62, 0xd5, 0x1f, 0xc7, 0x92, 0x16, 0x9e, 0x82, 0xd9, 0x94, 0x0a,
+ 0x47, 0xca, 0x5e, 0x7c, 0x38, 0xb0, 0x5c, 0x77, 0x2f, 0xb9, 0x0c, 0x9f, 0x10, 0xd7, 0xe9, 0x3b,
+ 0x4c, 0xa0, 0x14, 0x93, 0x09, 0xb9, 0xc2, 0x89, 0x58, 0xb6, 0xd9, 0xff, 0x9a, 0x02, 0x75, 0xfe,
+ 0x3d, 0x84, 0x2f, 0x32, 0xd3, 0xdc, 0xdc, 0x3d, 0xa4, 0xb9, 0x97, 0xa1, 0xe2, 0x78, 0x0e, 0x73,
+ 0x88, 0xbb, 0x4a, 0x5d, 0x32, 0x54, 0x61, 0xf3, 0x21, 0xed, 0x7a, 0xd6, 0x8d, 0xb6, 0x03, 0xe4,
+ 0xa4, 0xfa, 0xa2, 0x1b, 0x50, 0x14, 0x71, 0x45, 0xad, 0xe2, 0xa3, 0x1f, 0xd2, 0x45, 0xa5, 0x66,
+ 0x85, 0x8b, 0xc0, 0x52, 0x12, 0x8f, 0xec, 0x61, 0xd4, 0x6a, 0xd1, 0x30, 0x5c, 0xf1, 0xbd, 0xb6,
+ 0xc3, 0x92, 0x84, 0x35, 0x8e, 0xec, 0xcd, 0x91, 0x76, 0x3c, 0xd6, 0x83, 0x4b, 0xe9, 0x10, 0xc7,
+ 0x8d, 0x02, 0x9a, 0x48, 0x99, 0x4a, 0x4b, 0x59, 0x1b, 0x69, 0xc7, 0x63, 0x3d, 0x50, 0x07, 0x2a,
+ 0x8a, 0x26, 0xa6, 0x4b, 0xad, 0xcf, 0xa3, 0x8f, 0x72, 0x9e, 0x1b, 0x76, 0xcd, 0x90, 0x84, 0x53,
+ 0x72, 0x51, 0x04, 0xa7, 0x1c, 0xaf, 0xe5, 0x7b, 0x2d, 0x37, 0x0a, 0x9d, 0x5d, 0x05, 0x56, 0xba,
+ 0x47, 0xb0, 0x33, 0xfb, 0x7b, 0x4b, 0xa7, 0xd6, 0x47, 0xc5, 0xe1, 0x71, 0x04, 0xf4, 0xaa, 0x05,
+ 0x67, 0x5a, 0xbe, 0x17, 0xd2, 0x56, 0xc4, 0x9c, 0x5d, 0x7a, 0x29, 0x08, 0xfc, 0x40, 0x62, 0x97,
+ 0xef, 0x11, 0xfb, 0xfe, 0xfd, 0xbd, 0xa5, 0x33, 0x2b, 0x07, 0x89, 0xc4, 0x07, 0x23, 0xa1, 0x57,
+ 0xa0, 0x34, 0x08, 0xfc, 0x5d, 0xa7, 0x4d, 0x83, 0x2a, 0x08, 0xd4, 0x1b, 0x99, 0xdd, 0x78, 0x6c,
+ 0x28, 0xc1, 0x89, 0xff, 0xd1, 0x14, 0x1c, 0x83, 0xda, 0xbf, 0xa9, 0xc0, 0x5c, 0x9a, 0x1d, 0x7d,
+ 0xd7, 0x02, 0x18, 0x04, 0x7e, 0x9f, 0xb2, 0x1e, 0x8d, 0x42, 0x95, 0x73, 0x67, 0x91, 0x21, 0x6d,
+ 0xc4, 0x42, 0x75, 0xf5, 0x8b, 0x7b, 0x8e, 0x84, 0x8a, 0x0d, 0x58, 0x74, 0x13, 0xa6, 0x77, 0x64,
+ 0x50, 0x55, 0xd9, 0xc6, 0x46, 0x76, 0x09, 0x92, 0x82, 0x9f, 0xe1, 0x81, 0x4f, 0x91, 0xb0, 0x46,
+ 0x43, 0x5d, 0xc8, 0xdf, 0xa4, 0xdb, 0x19, 0xde, 0x14, 0x6c, 0x51, 0x75, 0x94, 0x69, 0x4c, 0xef,
+ 0xef, 0x2d, 0xe5, 0xb7, 0xe8, 0x36, 0xe6, 0x08, 0x7c, 0x84, 0x6d, 0x79, 0xf0, 0x55, 0xfe, 0x63,
+ 0x23, 0xeb, 0xa3, 0xb4, 0x1c, 0xa1, 0x22, 0x61, 0x8d, 0x86, 0x5e, 0x81, 0xf2, 0x4d, 0xb2, 0x4b,
+ 0x3b, 0x81, 0xef, 0x31, 0x55, 0x86, 0xcd, 0xe2, 0xd9, 0xcf, 0x96, 0x96, 0xa9, 0xc0, 0x45, 0x0a,
+ 0x10, 0x13, 0x71, 0x82, 0x89, 0xbe, 0x09, 0x25, 0x8f, 0xde, 0xc4, 0xd4, 0x75, 0x5a, 0xea, 0x96,
+ 0x39, 0x8b, 0x55, 0x7f, 0x4d, 0x89, 0x54, 0xf0, 0x22, 0x36, 0x6a, 0x1a, 0x8e, 0x01, 0xf9, 0xfc,
+ 0xbe, 0xe4, 0x6f, 0x2b, 0x67, 0x96, 0xc5, 0xfc, 0xc6, 0x47, 0x55, 0x39, 0xbf, 0x97, 0xfd, 0x6d,
+ 0xcc, 0x11, 0xc4, 0x3e, 0x6a, 0xc5, 0x95, 0x40, 0xe5, 0xd0, 0x9a, 0xc7, 0x50, 0x06, 0x95, 0xfb,
+ 0x28, 0xa1, 0x62, 0x03, 0x96, 0xdb, 0xba, 0xab, 0x0a, 0x02, 0xca, 0xaf, 0x65, 0x61, 0xeb, 0x74,
+ 0x8d, 0x41, 0xda, 0x5a, 0xd3, 0x70, 0x0c, 0xc8, 0xc1, 0x1d, 0x55, 0x2b, 0xc8, 0xd0, 0xbd, 0xa5,
+ 0xcb, 0x0f, 0x12, 0x5c, 0xd3, 0x70, 0x0c, 0x28, 0xec, 0x1f, 0xee, 0x0c, 0x6f, 0x12, 0x77, 0xc7,
+ 0xf1, 0xba, 0xd5, 0x99, 0xcc, 0xec, 0xdf, 0xdc, 0x19, 0x6e, 0x49, 0xa1, 0xa6, 0xfd, 0x13, 0x2a,
+ 0x36, 0x60, 0xd1, 0x4f, 0x2c, 0x98, 0x1a, 0xb8, 0x51, 0xd7, 0xf1, 0xaa, 0x95, 0xcc, 0x0a, 0x66,
+ 0x69, 0x8f, 0x5d, 0xdb, 0x10, 0xf2, 0x65, 0xb2, 0xf9, 0x70, 0x5c, 0xf7, 0x17, 0xc4, 0x37, 0xfe,
+ 0xb8, 0x54, 0xa5, 0x5e, 0xcb, 0x6f, 0x3b, 0x5e, 0xb7, 0xfe, 0x52, 0xe8, 0x7b, 0x35, 0x4c, 0x6e,
+ 0xea, 0x64, 0x5f, 0x29, 0xb6, 0xf0, 0x04, 0xcc, 0x18, 0x22, 0xee, 0x96, 0x2c, 0x56, 0xcc, 0x64,
+ 0xf1, 0x57, 0x53, 0x50, 0x31, 0x1f, 0xcd, 0x1c, 0x22, 0x83, 0x8b, 0x8f, 0x2e, 0xb9, 0xa3, 0x1c,
+ 0x5d, 0xf8, 0x19, 0xd4, 0xb8, 0x2f, 0xd6, 0xe5, 0xc7, 0x6b, 0xd9, 0x66, 0xee, 0xc9, 0x19, 0xd4,
+ 0x20, 0x86, 0x38, 0x85, 0x6c, 0x9e, 0xa2, 0x0a, 0x77, 0x39, 0x45, 0x9d, 0xd3, 0x19, 0x62, 0x31,
+ 0x9d, 0xff, 0xa6, 0x72, 0xbe, 0x8b, 0x00, 0x2a, 0x83, 0xeb, 0x44, 0xae, 0x70, 0x88, 0xc5, 0x24,
+ 0xb1, 0x6e, 0xc6, 0x2d, 0xd8, 0xe0, 0x42, 0x0f, 0xc1, 0x14, 0xcf, 0xa1, 0xa8, 0xac, 0x60, 0x14,
+ 0x93, 0xd3, 0xfe, 0x9a, 0xa0, 0x62, 0xd5, 0x8a, 0x1e, 0xe7, 0xe9, 0x6e, 0x92, 0xf9, 0x08, 0x2f,
+ 0x54, 0x4c, 0x46, 0x69, 0x26, 0x4a, 0x38, 0xc5, 0xc9, 0x55, 0xa7, 0x3c, 0x51, 0x11, 0x5e, 0xc3,
+ 0x50, 0x5d, 0x64, 0x2f, 0x58, 0xb6, 0x89, 0x42, 0xd4, 0x48, 0x62, 0x23, 0x36, 0x7a, 0xd1, 0x28,
+ 0x44, 0x8d, 0xb4, 0xe3, 0xb1, 0x1e, 0x7c, 0x30, 0xea, 0x45, 0xc4, 0x8c, 0xbc, 0xba, 0x9b, 0xf0,
+ 0x8c, 0xe1, 0x4d, 0xf3, 0xe4, 0x96, 0xf5, 0x6e, 0x92, 0xeb, 0xf7, 0xf0, 0x47, 0xb7, 0x8f, 0x76,
+ 0xc8, 0x7a, 0x11, 0xe6, 0xd2, 0xf1, 0x2a, 0xf3, 0x2a, 0xea, 0x6d, 0x0b, 0x2a, 0xe6, 0x25, 0x3d,
+ 0x7a, 0x04, 0x4a, 0xcc, 0xdf, 0xa1, 0xde, 0xb3, 0x81, 0xbe, 0x20, 0x88, 0x47, 0xb7, 0x29, 0xe8,
+ 0xf8, 0x0a, 0x8e, 0x39, 0x38, 0x77, 0xcb, 0x75, 0xa8, 0xc7, 0xd6, 0xdb, 0x0a, 0x26, 0xe6, 0x5e,
+ 0x91, 0xf4, 0x55, 0x1c, 0x73, 0xf0, 0x65, 0x26, 0x7f, 0x37, 0x69, 0x2b, 0xa0, 0xfa, 0x76, 0x31,
+ 0x29, 0xe8, 0x18, 0x6d, 0x38, 0xc5, 0x89, 0xec, 0xb8, 0x0e, 0x56, 0x38, 0x9b, 0x3f, 0x5f, 0x96,
+ 0xd7, 0xbb, 0x23, 0x25, 0xab, 0xdf, 0xe7, 0x61, 0x7e, 0x34, 0x79, 0xcc, 0xba, 0xae, 0x8d, 0xde,
+ 0xb2, 0x60, 0x8e, 0xa4, 0x1e, 0x6b, 0xa8, 0x1c, 0x30, 0x8b, 0x90, 0x95, 0x7e, 0x05, 0xd2, 0xf8,
+ 0x5f, 0xa5, 0xc1, 0xc8, 0xeb, 0x10, 0x3c, 0xa2, 0x00, 0xfa, 0x0c, 0x4c, 0x33, 0xa7, 0x4f, 0xfd,
+ 0x48, 0x1e, 0x31, 0xf3, 0x32, 0xa1, 0xdb, 0x94, 0x24, 0xac, 0xdb, 0xf8, 0x5c, 0x39, 0x62, 0x4b,
+ 0x05, 0xb2, 0xf2, 0x51, 0x4a, 0xe6, 0x6a, 0x5d, 0xd1, 0x71, 0xcc, 0x81, 0xbe, 0x0d, 0xd3, 0x3d,
+ 0x4a, 0xda, 0x34, 0x08, 0x55, 0xf5, 0x03, 0x67, 0x99, 0xe4, 0x7e, 0x55, 0x88, 0x4e, 0x26, 0x43,
+ 0x7e, 0x87, 0x58, 0x63, 0xda, 0x7f, 0xb3, 0xc0, 0x78, 0x83, 0x98, 0x78, 0x48, 0xeb, 0xd0, 0x1e,
+ 0x32, 0x77, 0x44, 0x0f, 0x99, 0x3f, 0x92, 0x87, 0x2c, 0x1c, 0xdd, 0x43, 0x16, 0x27, 0x7b, 0x48,
+ 0xfb, 0xb7, 0x16, 0xcc, 0x18, 0x65, 0x45, 0xde, 0x49, 0xac, 0x6a, 0xb5, 0x68, 0x93, 0x07, 0x3b,
+ 0xa2, 0xb6, 0x28, 0xdb, 0xb8, 0xee, 0x01, 0xed, 0x1a, 0x8f, 0x3f, 0xb4, 0xee, 0x58, 0x50, 0xb1,
+ 0x6a, 0x95, 0x97, 0xf9, 0x74, 0x20, 0x46, 0x98, 0x37, 0x2f, 0xf3, 0xe9, 0x00, 0x8b, 0x16, 0x01,
+ 0xc7, 0x48, 0xa0, 0x6f, 0xf3, 0x13, 0x38, 0x4e, 0xc4, 0xb2, 0x0d, 0x3d, 0x08, 0x79, 0xea, 0xb5,
+ 0x55, 0x9d, 0x61, 0x46, 0xb1, 0xe4, 0x2f, 0x79, 0x6d, 0xcc, 0xe9, 0xf6, 0x75, 0xa8, 0xc8, 0xcd,
+ 0xfa, 0x0c, 0x1d, 0x62, 0xda, 0x39, 0x44, 0x88, 0x7f, 0x50, 0x7a, 0xc2, 0x5c, 0x5a, 0x20, 0xef,
+ 0xce, 0xe9, 0xf6, 0x9b, 0xdc, 0x26, 0xc9, 0xab, 0x25, 0x63, 0xb8, 0xd6, 0x87, 0x0e, 0xd7, 0x70,
+ 0x91, 0xb9, 0xbb, 0xb8, 0xc8, 0x0b, 0x30, 0x1d, 0xf8, 0x2e, 0x5d, 0x0e, 0x3c, 0xe5, 0x8b, 0x62,
+ 0x56, 0xcc, 0xc9, 0xf8, 0x1a, 0xd6, 0xed, 0xf6, 0x4f, 0x2d, 0x98, 0x1f, 0x4d, 0xe9, 0x32, 0xf7,
+ 0x2e, 0x66, 0xd9, 0x2a, 0x7f, 0xf4, 0xb2, 0x95, 0xfd, 0x46, 0x0e, 0x92, 0x37, 0x66, 0xe8, 0x35,
+ 0x0b, 0x2a, 0xa1, 0x31, 0x25, 0xea, 0x90, 0x9e, 0xc5, 0x1d, 0x82, 0x39, 0xd3, 0xb2, 0x72, 0x63,
+ 0x52, 0x70, 0x0a, 0x16, 0x45, 0x50, 0xea, 0xa8, 0xab, 0x4a, 0x75, 0x4a, 0xcf, 0xe2, 0xf5, 0xa4,
+ 0xbe, 0xfd, 0x94, 0x99, 0xbd, 0xfe, 0xc2, 0x31, 0x94, 0x4d, 0xe0, 0xe4, 0xc8, 0x61, 0x33, 0xf3,
+ 0x5b, 0xce, 0x0f, 0x0a, 0x50, 0x8e, 0x7d, 0x1a, 0x7a, 0x42, 0xbc, 0x0a, 0xea, 0xf9, 0xfa, 0xc1,
+ 0xd6, 0xff, 0x1b, 0xcf, 0x76, 0x7a, 0x7e, 0xfb, 0xce, 0xde, 0xd2, 0xc9, 0x98, 0x59, 0x92, 0xb0,
+ 0xea, 0xc0, 0xb7, 0x42, 0x14, 0xb8, 0xa3, 0x5b, 0x81, 0xc7, 0x5a, 0x4e, 0x37, 0x9d, 0x71, 0xfe,
+ 0xe3, 0x77, 0xc6, 0x7c, 0x2b, 0x6f, 0xfb, 0xed, 0xe1, 0xe8, 0x5b, 0x9f, 0x86, 0xdf, 0x1e, 0x62,
+ 0xd1, 0x82, 0x9e, 0x86, 0x39, 0x15, 0x66, 0x9a, 0xb4, 0xe5, 0x7b, 0xed, 0x50, 0xb8, 0x89, 0x7c,
+ 0x12, 0xc2, 0x36, 0x53, 0xad, 0x78, 0x84, 0x9b, 0xc7, 0x26, 0x7e, 0xec, 0x10, 0x17, 0xd8, 0x53,
+ 0xe9, 0x3c, 0xe2, 0x72, 0xf3, 0xfa, 0x35, 0x71, 0x7f, 0x1d, 0x73, 0xa4, 0x22, 0xd9, 0xf4, 0x5d,
+ 0x23, 0xd9, 0xaa, 0x94, 0xcd, 0xb5, 0x15, 0x89, 0x6d, 0xa5, 0x71, 0x5e, 0xcb, 0xe5, 0xb4, 0x3b,
+ 0x7b, 0x1f, 0x72, 0xf6, 0x89, 0x7b, 0x1e, 0x14, 0xf8, 0xcb, 0x9f, 0x70, 0xe0, 0xb7, 0x9f, 0x85,
+ 0x93, 0x23, 0x93, 0xa8, 0x7d, 0xaa, 0x75, 0xb0, 0x4f, 0x3d, 0xd4, 0x6b, 0xa1, 0x46, 0xf7, 0xf6,
+ 0x7b, 0x8b, 0x27, 0xde, 0x79, 0x6f, 0xf1, 0xc4, 0xbb, 0xef, 0x2d, 0x9e, 0xf8, 0xce, 0xfe, 0xa2,
+ 0x75, 0x7b, 0x7f, 0xd1, 0x7a, 0x67, 0x7f, 0xd1, 0x7a, 0x77, 0x7f, 0xd1, 0xfa, 0xd3, 0xfe, 0xa2,
+ 0xf5, 0xa3, 0xf7, 0x17, 0x4f, 0x3c, 0xbf, 0xfc, 0x91, 0xff, 0x83, 0xf0, 0x3f, 0x01, 0x00, 0x00,
+ 0xff, 0xff, 0x7b, 0x0c, 0x2a, 0x92, 0x85, 0x38, 0x00, 0x00,
}
func (m *AnalysisRun) Marshal() (dAtA []byte, err error) {
@@ -2192,6 +2253,96 @@ func (m *CloudWatchMetricStatMetricDimension) MarshalToSizedBuffer(dAtA []byte)
return len(dAtA) - i, nil
}
+func (m *ClusterAnalysisTemplate) Marshal() (dAtA []byte, err error) {
+ size := m.Size()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBuffer(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *ClusterAnalysisTemplate) MarshalTo(dAtA []byte) (int, error) {
+ size := m.Size()
+ return m.MarshalToSizedBuffer(dAtA[:size])
+}
+
+func (m *ClusterAnalysisTemplate) MarshalToSizedBuffer(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ {
+ size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = encodeVarintGenerated(dAtA, i, uint64(size))
+ }
+ i--
+ dAtA[i] = 0x12
+ {
+ size, err := m.ObjectMeta.MarshalToSizedBuffer(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = encodeVarintGenerated(dAtA, i, uint64(size))
+ }
+ i--
+ dAtA[i] = 0xa
+ return len(dAtA) - i, nil
+}
+
+func (m *ClusterAnalysisTemplateList) Marshal() (dAtA []byte, err error) {
+ size := m.Size()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBuffer(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *ClusterAnalysisTemplateList) MarshalTo(dAtA []byte) (int, error) {
+ size := m.Size()
+ return m.MarshalToSizedBuffer(dAtA[:size])
+}
+
+func (m *ClusterAnalysisTemplateList) MarshalToSizedBuffer(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if len(m.Items) > 0 {
+ for iNdEx := len(m.Items) - 1; iNdEx >= 0; iNdEx-- {
+ {
+ size, err := m.Items[iNdEx].MarshalToSizedBuffer(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = encodeVarintGenerated(dAtA, i, uint64(size))
+ }
+ i--
+ dAtA[i] = 0x12
+ }
+ }
+ {
+ size, err := m.ListMeta.MarshalToSizedBuffer(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = encodeVarintGenerated(dAtA, i, uint64(size))
+ }
+ i--
+ dAtA[i] = 0xa
+ return len(dAtA) - i, nil
+}
+
func (m *DatadogMetric) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
@@ -3936,6 +4087,36 @@ func (m *CloudWatchMetricStatMetricDimension) Size() (n int) {
return n
}
+func (m *ClusterAnalysisTemplate) Size() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ l = m.ObjectMeta.Size()
+ n += 1 + l + sovGenerated(uint64(l))
+ l = m.Spec.Size()
+ n += 1 + l + sovGenerated(uint64(l))
+ return n
+}
+
+func (m *ClusterAnalysisTemplateList) Size() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ l = m.ListMeta.Size()
+ n += 1 + l + sovGenerated(uint64(l))
+ if len(m.Items) > 0 {
+ for _, e := range m.Items {
+ l = e.Size()
+ n += 1 + l + sovGenerated(uint64(l))
+ }
+ }
+ return n
+}
+
func (m *DatadogMetric) Size() (n int) {
if m == nil {
return 0
@@ -4713,6 +4894,33 @@ func (this *CloudWatchMetricStatMetricDimension) String() string {
}, "")
return s
}
+func (this *ClusterAnalysisTemplate) String() string {
+ if this == nil {
+ return "nil"
+ }
+ s := strings.Join([]string{`&ClusterAnalysisTemplate{`,
+ `ObjectMeta:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.ObjectMeta), "ObjectMeta", "v1.ObjectMeta", 1), `&`, ``, 1) + `,`,
+ `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "AnalysisTemplateSpec", "AnalysisTemplateSpec", 1), `&`, ``, 1) + `,`,
+ `}`,
+ }, "")
+ return s
+}
+func (this *ClusterAnalysisTemplateList) String() string {
+ if this == nil {
+ return "nil"
+ }
+ repeatedStringForItems := "[]ClusterAnalysisTemplate{"
+ for _, f := range this.Items {
+ repeatedStringForItems += strings.Replace(strings.Replace(f.String(), "ClusterAnalysisTemplate", "ClusterAnalysisTemplate", 1), `&`, ``, 1) + ","
+ }
+ repeatedStringForItems += "}"
+ s := strings.Join([]string{`&ClusterAnalysisTemplateList{`,
+ `ListMeta:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.ListMeta), "ListMeta", "v1.ListMeta", 1), `&`, ``, 1) + `,`,
+ `Items:` + repeatedStringForItems + `,`,
+ `}`,
+ }, "")
+ return s
+}
func (this *DatadogMetric) String() string {
if this == nil {
return "nil"
@@ -7340,6 +7548,239 @@ func (m *CloudWatchMetricStatMetricDimension) Unmarshal(dAtA []byte) error {
}
return nil
}
+func (m *ClusterAnalysisTemplate) Unmarshal(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return ErrIntOverflowGenerated
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: ClusterAnalysisTemplate: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: ClusterAnalysisTemplate: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return ErrIntOverflowGenerated
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return ErrInvalidLengthGenerated
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return ErrInvalidLengthGenerated
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if err := m.ObjectMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ case 2:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return ErrIntOverflowGenerated
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return ErrInvalidLengthGenerated
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return ErrInvalidLengthGenerated
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := skipGenerated(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return ErrInvalidLengthGenerated
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *ClusterAnalysisTemplateList) Unmarshal(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return ErrIntOverflowGenerated
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: ClusterAnalysisTemplateList: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: ClusterAnalysisTemplateList: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ListMeta", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return ErrIntOverflowGenerated
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return ErrInvalidLengthGenerated
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return ErrInvalidLengthGenerated
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if err := m.ListMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ case 2:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return ErrIntOverflowGenerated
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return ErrInvalidLengthGenerated
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return ErrInvalidLengthGenerated
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.Items = append(m.Items, ClusterAnalysisTemplate{})
+ if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := skipGenerated(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return ErrInvalidLengthGenerated
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
func (m *DatadogMetric) Unmarshal(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
diff --git a/internal/controller/rollouts/api/v1alpha1/generated.proto b/internal/controller/rollouts/api/v1alpha1/generated.proto
index 59701874f..7456e465c 100644
--- a/internal/controller/rollouts/api/v1alpha1/generated.proto
+++ b/internal/controller/rollouts/api/v1alpha1/generated.proto
@@ -134,6 +134,18 @@ message CloudWatchMetricStatMetricDimension {
optional string value = 2;
}
+message ClusterAnalysisTemplate {
+ optional .k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1;
+
+ optional AnalysisTemplateSpec spec = 2;
+}
+
+message ClusterAnalysisTemplateList {
+ optional .k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1;
+
+ repeated ClusterAnalysisTemplate items = 2;
+}
+
message DatadogMetric {
optional string interval = 1;
diff --git a/internal/controller/rollouts/api/v1alpha1/groupversion_info.go b/internal/controller/rollouts/api/v1alpha1/groupversion_info.go
index bced3e888..dfb672604 100644
--- a/internal/controller/rollouts/api/v1alpha1/groupversion_info.go
+++ b/internal/controller/rollouts/api/v1alpha1/groupversion_info.go
@@ -24,6 +24,8 @@ func addKnownTypes(scheme *runtime.Scheme) error {
GroupVersion,
&AnalysisTemplate{},
&AnalysisTemplateList{},
+ &ClusterAnalysisTemplate{},
+ &ClusterAnalysisTemplateList{},
&AnalysisRun{},
&AnalysisRunList{},
)
diff --git a/internal/controller/rollouts/api/v1alpha1/zz_generated.deepcopy.go b/internal/controller/rollouts/api/v1alpha1/zz_generated.deepcopy.go
index c6017630f..b753e9322 100644
--- a/internal/controller/rollouts/api/v1alpha1/zz_generated.deepcopy.go
+++ b/internal/controller/rollouts/api/v1alpha1/zz_generated.deepcopy.go
@@ -398,6 +398,64 @@ func (in *CloudWatchMetricStatMetricDimension) DeepCopy() *CloudWatchMetricStatM
return out
}
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ClusterAnalysisTemplate) DeepCopyInto(out *ClusterAnalysisTemplate) {
+ *out = *in
+ out.TypeMeta = in.TypeMeta
+ in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
+ in.Spec.DeepCopyInto(&out.Spec)
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterAnalysisTemplate.
+func (in *ClusterAnalysisTemplate) DeepCopy() *ClusterAnalysisTemplate {
+ if in == nil {
+ return nil
+ }
+ out := new(ClusterAnalysisTemplate)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *ClusterAnalysisTemplate) DeepCopyObject() runtime.Object {
+ if c := in.DeepCopy(); c != nil {
+ return c
+ }
+ return nil
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ClusterAnalysisTemplateList) DeepCopyInto(out *ClusterAnalysisTemplateList) {
+ *out = *in
+ out.TypeMeta = in.TypeMeta
+ in.ListMeta.DeepCopyInto(&out.ListMeta)
+ if in.Items != nil {
+ in, out := &in.Items, &out.Items
+ *out = make([]ClusterAnalysisTemplate, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterAnalysisTemplateList.
+func (in *ClusterAnalysisTemplateList) DeepCopy() *ClusterAnalysisTemplateList {
+ if in == nil {
+ return nil
+ }
+ out := new(ClusterAnalysisTemplateList)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *ClusterAnalysisTemplateList) DeepCopyObject() runtime.Object {
+ if c := in.DeepCopy(); c != nil {
+ return c
+ }
+ return nil
+}
+
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DatadogMetric) DeepCopyInto(out *DatadogMetric) {
*out = *in
diff --git a/internal/rollouts/analysis_run_builder.go b/internal/rollouts/analysis_run_builder.go
index 43f2972cd..433d9b462 100644
--- a/internal/rollouts/analysis_run_builder.go
+++ b/internal/rollouts/analysis_run_builder.go
@@ -67,7 +67,7 @@ func (b *AnalysisRunBuilder) Build(
opts.ExtraLabels,
)
- templates, err := b.getAnalysisTemplates(
+ analysisTemplates, clusterAnalysisTemplates, err := b.getAnalysisTemplates(
ctx,
namespace,
cfg.AnalysisTemplates,
@@ -76,7 +76,9 @@ func (b *AnalysisRunBuilder) Build(
return nil, fmt.Errorf("get analysis templates: %w", err)
}
- spec, err := b.buildSpec(templates, cfg.Args)
+ analysisTemplateSpecs := combineAnalysisTemplateSpecs(analysisTemplates, clusterAnalysisTemplates)
+
+ spec, err := b.buildSpec(analysisTemplateSpecs, cfg.Args)
if err != nil {
return nil, fmt.Errorf("build spec: %w", err)
}
@@ -149,10 +151,10 @@ func (b *AnalysisRunBuilder) buildMetadata(
// buildSpec constructs an AnalysisRunSpec from the provided templates and
// arguments.
func (b *AnalysisRunBuilder) buildSpec(
- templates []*rolloutsapi.AnalysisTemplate,
+ analysisTemplateSpecs []*rolloutsapi.AnalysisTemplateSpec,
args []kargoapi.AnalysisRunArgument,
) (rolloutsapi.AnalysisRunSpec, error) {
- template, err := flattenTemplates(templates)
+ template, err := flattenTemplates(analysisTemplateSpecs)
if err != nil {
return rolloutsapi.AnalysisRunSpec{}, fmt.Errorf("flatten templates: %w", err)
}
@@ -238,24 +240,54 @@ func (b *AnalysisRunBuilder) getAnalysisTemplates(
ctx context.Context,
namespace string,
references []kargoapi.AnalysisTemplateReference,
-) ([]*rolloutsapi.AnalysisTemplate, error) {
- templates := make([]*rolloutsapi.AnalysisTemplate, len(references))
-
- for i, ref := range references {
- template := &rolloutsapi.AnalysisTemplate{}
- if err := b.client.Get(ctx, types.NamespacedName{
- Namespace: namespace,
- Name: ref.Name,
- }, template); err != nil {
- return nil, fmt.Errorf(
- "get AnalysisRun %q in namespace %q: %w",
- ref.Name,
- namespace,
- err,
- )
+) ([]*rolloutsapi.AnalysisTemplate, []*rolloutsapi.ClusterAnalysisTemplate, error) {
+ analysisTemplates := []*rolloutsapi.AnalysisTemplate{}
+ clusterAnalysisTemplates := []*rolloutsapi.ClusterAnalysisTemplate{}
+ for _, ref := range references {
+ if ref.ClusterScope {
+ template := &rolloutsapi.ClusterAnalysisTemplate{}
+ if err := b.client.Get(ctx, types.NamespacedName{
+ Name: ref.Name,
+ }, template); err != nil {
+ return nil, nil, fmt.Errorf(
+ "get ClusterAnalysisRun %q: %w",
+ ref.Name,
+ err,
+ )
+ }
+ clusterAnalysisTemplates = append(clusterAnalysisTemplates, template)
+ } else {
+ template := &rolloutsapi.AnalysisTemplate{}
+ if err := b.client.Get(ctx, types.NamespacedName{
+ Namespace: namespace,
+ Name: ref.Name,
+ }, template); err != nil {
+ return nil, nil, fmt.Errorf(
+ "get AnalysisRun %q in namespace %q: %w",
+ ref.Name,
+ namespace,
+ err,
+ )
+ }
+ analysisTemplates = append(analysisTemplates, template)
}
- templates[i] = template
}
- return templates, nil
+ return analysisTemplates, clusterAnalysisTemplates, nil
+}
+
+// combineAnalysisTemplateSpecs combines the specs of analysis
+// templates and cluster analysis templates into one array
+func combineAnalysisTemplateSpecs(
+ analysisTemplates []*rolloutsapi.AnalysisTemplate,
+ clusterAnalysisTemplates []*rolloutsapi.ClusterAnalysisTemplate,
+) []*rolloutsapi.AnalysisTemplateSpec {
+ templateSpecs := make([]*rolloutsapi.AnalysisTemplateSpec, 0, len(analysisTemplates)+len(clusterAnalysisTemplates))
+ for _, template := range analysisTemplates {
+ templateSpecs = append(templateSpecs, &template.Spec)
+ }
+ for _, template := range clusterAnalysisTemplates {
+ templateSpecs = append(templateSpecs, &template.Spec)
+ }
+ return templateSpecs
}
diff --git a/internal/rollouts/analysis_run_builder_test.go b/internal/rollouts/analysis_run_builder_test.go
index 75330bedd..fb99de8ca 100644
--- a/internal/rollouts/analysis_run_builder_test.go
+++ b/internal/rollouts/analysis_run_builder_test.go
@@ -398,15 +398,15 @@ func TestAnalysisRunBuilder_buildMetadata(t *testing.T) {
func TestAnalysisRunBuilder_buildSpec(t *testing.T) {
tests := []struct {
- name string
- templates []*rolloutsapi.AnalysisTemplate
- args []kargoapi.AnalysisRunArgument
- assertions func(*testing.T, rolloutsapi.AnalysisRunSpec, error)
+ name string
+ templateSpecs []*rolloutsapi.AnalysisTemplateSpec
+ args []kargoapi.AnalysisRunArgument
+ assertions func(*testing.T, rolloutsapi.AnalysisRunSpec, error)
}{
{
- name: "empty templates and args",
- templates: []*rolloutsapi.AnalysisTemplate{},
- args: []kargoapi.AnalysisRunArgument{},
+ name: "empty templates and args",
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{},
+ args: []kargoapi.AnalysisRunArgument{},
assertions: func(t *testing.T, spec rolloutsapi.AnalysisRunSpec, err error) {
require.NoError(t, err)
assert.Empty(t, spec.Metrics)
@@ -417,24 +417,20 @@ func TestAnalysisRunBuilder_buildSpec(t *testing.T) {
},
{
name: "single template with metrics and args",
- templates: []*rolloutsapi.AnalysisTemplate{
- {
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Metrics: []rolloutsapi.Metric{
- {Name: "metric1", Provider: rolloutsapi.MetricProvider{Prometheus: &rolloutsapi.PrometheusMetric{}}},
- },
- Args: []rolloutsapi.Argument{
- {Name: "param1"},
- },
- DryRun: []rolloutsapi.DryRun{
- {MetricName: "metric1"},
- },
- MeasurementRetention: []rolloutsapi.MeasurementRetention{
- {MetricName: "metric1", Limit: int32(5)},
- },
- },
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{{
+ Metrics: []rolloutsapi.Metric{
+ {Name: "metric1", Provider: rolloutsapi.MetricProvider{Prometheus: &rolloutsapi.PrometheusMetric{}}},
},
- },
+ Args: []rolloutsapi.Argument{
+ {Name: "param1"},
+ },
+ DryRun: []rolloutsapi.DryRun{
+ {MetricName: "metric1"},
+ },
+ MeasurementRetention: []rolloutsapi.MeasurementRetention{
+ {MetricName: "metric1", Limit: int32(5)},
+ },
+ }},
args: []kargoapi.AnalysisRunArgument{
{Name: "param1", Value: "value1"},
},
@@ -459,16 +455,12 @@ func TestAnalysisRunBuilder_buildSpec(t *testing.T) {
},
{
name: "template flattening error",
- templates: []*rolloutsapi.AnalysisTemplate{
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Metrics: []rolloutsapi.Metric{{Name: "metric1"}},
- },
+ Metrics: []rolloutsapi.Metric{{Name: "metric1"}},
},
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Metrics: []rolloutsapi.Metric{{Name: "metric1"}},
- },
+ Metrics: []rolloutsapi.Metric{{Name: "metric1"}},
},
},
assertions: func(t *testing.T, _ rolloutsapi.AnalysisRunSpec, err error) {
@@ -477,12 +469,10 @@ func TestAnalysisRunBuilder_buildSpec(t *testing.T) {
},
{
name: "argument error",
- templates: []*rolloutsapi.AnalysisTemplate{
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: []rolloutsapi.Argument{
- {Name: "param1"},
- },
+ Args: []rolloutsapi.Argument{
+ {Name: "param1"},
},
},
},
@@ -498,7 +488,7 @@ func TestAnalysisRunBuilder_buildSpec(t *testing.T) {
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
builder := &AnalysisRunBuilder{}
- spec, err := builder.buildSpec(tt.templates, tt.args)
+ spec, err := builder.buildSpec(tt.templateSpecs, tt.args)
tt.assertions(t, spec, err)
})
}
@@ -796,15 +786,15 @@ func TestAnalysisRunBuilder_getAnalysisTemplates(t *testing.T) {
namespace string
references []kargoapi.AnalysisTemplateReference
objects []client.Object
- assertions func(*testing.T, []*rolloutsapi.AnalysisTemplate, error)
+ assertions func(*testing.T, []*rolloutsapi.AnalysisTemplateSpec, error)
}{
{
name: "empty references",
namespace: "default",
references: []kargoapi.AnalysisTemplateReference{},
- assertions: func(t *testing.T, templates []*rolloutsapi.AnalysisTemplate, err error) {
+ assertions: func(t *testing.T, templateSpecs []*rolloutsapi.AnalysisTemplateSpec, err error) {
require.NoError(t, err)
- assert.Empty(t, templates)
+ assert.Empty(t, templateSpecs)
},
},
{
@@ -824,11 +814,10 @@ func TestAnalysisRunBuilder_getAnalysisTemplates(t *testing.T) {
},
},
},
- assertions: func(t *testing.T, templates []*rolloutsapi.AnalysisTemplate, err error) {
+ assertions: func(t *testing.T, templateSpecs []*rolloutsapi.AnalysisTemplateSpec, err error) {
require.NoError(t, err)
- assert.Len(t, templates, 1)
- assert.Equal(t, "template1", templates[0].Name)
- assert.Len(t, templates[0].Spec.Metrics, 1)
+ assert.Len(t, templateSpecs, 1)
+ assert.Len(t, templateSpecs[0].Metrics, 1)
},
},
{
@@ -837,9 +826,9 @@ func TestAnalysisRunBuilder_getAnalysisTemplates(t *testing.T) {
references: []kargoapi.AnalysisTemplateReference{
{Name: "nonexistent"},
},
- assertions: func(t *testing.T, templates []*rolloutsapi.AnalysisTemplate, err error) {
+ assertions: func(t *testing.T, templateSpecs []*rolloutsapi.AnalysisTemplateSpec, err error) {
assert.ErrorContains(t, err, "get AnalysisRun")
- assert.Nil(t, templates)
+ assert.Equal(t, templateSpecs, []*rolloutsapi.AnalysisTemplateSpec{})
},
},
{
@@ -869,11 +858,11 @@ func TestAnalysisRunBuilder_getAnalysisTemplates(t *testing.T) {
},
},
},
- assertions: func(t *testing.T, templates []*rolloutsapi.AnalysisTemplate, err error) {
+ assertions: func(t *testing.T, templateSpecs []*rolloutsapi.AnalysisTemplateSpec, err error) {
require.NoError(t, err)
- assert.Len(t, templates, 2)
- assert.Equal(t, "template1", templates[0].Name)
- assert.Equal(t, "template2", templates[1].Name)
+ assert.Len(t, templateSpecs, 2)
+ assert.Len(t, templateSpecs[0].Metrics, 1)
+ assert.Len(t, templateSpecs[1].Metrics, 1)
},
},
{
@@ -890,9 +879,9 @@ func TestAnalysisRunBuilder_getAnalysisTemplates(t *testing.T) {
},
},
},
- assertions: func(t *testing.T, templates []*rolloutsapi.AnalysisTemplate, err error) {
+ assertions: func(t *testing.T, templateSpecs []*rolloutsapi.AnalysisTemplateSpec, err error) {
assert.ErrorContains(t, err, "get AnalysisRun")
- assert.Nil(t, templates)
+ assert.Equal(t, templateSpecs, []*rolloutsapi.AnalysisTemplateSpec{})
},
},
}
@@ -905,8 +894,13 @@ func TestAnalysisRunBuilder_getAnalysisTemplates(t *testing.T) {
Build()
builder := &AnalysisRunBuilder{client: c}
- templates, err := builder.getAnalysisTemplates(context.Background(), tt.namespace, tt.references)
- tt.assertions(t, templates, err)
+ analysisTemplates, clusterAnalysisTemplates, err := builder.getAnalysisTemplates(
+ context.Background(),
+ tt.namespace,
+ tt.references,
+ )
+ analysisTemplateSpecs := combineAnalysisTemplateSpecs(analysisTemplates, clusterAnalysisTemplates)
+ tt.assertions(t, analysisTemplateSpecs, err)
})
}
}
diff --git a/internal/rollouts/analysis_template.go b/internal/rollouts/analysis_template.go
index d7281b6cd..22ea4c12b 100644
--- a/internal/rollouts/analysis_template.go
+++ b/internal/rollouts/analysis_template.go
@@ -9,23 +9,25 @@ import (
// flattenTemplates combines multiple analysis templates into a single
// template. It merges metrics, dry-run metrics, measurement retention
// metrics, and arguments.
-func flattenTemplates(templates []*rolloutsapi.AnalysisTemplate) (*rolloutsapi.AnalysisTemplate, error) {
- metrics, err := flattenMetrics(templates)
+func flattenTemplates(
+ analysisTemplateSpecs []*rolloutsapi.AnalysisTemplateSpec,
+) (*rolloutsapi.AnalysisTemplate, error) {
+ metrics, err := flattenMetrics(analysisTemplateSpecs)
if err != nil {
return nil, fmt.Errorf("flatten metrics: %w", err)
}
- dryRun, err := flattenDryRunMetrics(templates)
+ dryRun, err := flattenDryRunMetrics(analysisTemplateSpecs)
if err != nil {
return nil, fmt.Errorf("flatten dry-run metrics: %w", err)
}
- retention, err := flattenMeasurementRetentionMetrics(templates)
+ retention, err := flattenMeasurementRetentionMetrics(analysisTemplateSpecs)
if err != nil {
return nil, fmt.Errorf("flatten measurement retention metrics: %w", err)
}
- args, err := flattenArgs(templates)
+ args, err := flattenArgs(analysisTemplateSpecs)
if err != nil {
return nil, fmt.Errorf("flatten arguments: %w", err)
}
@@ -42,12 +44,12 @@ func flattenTemplates(templates []*rolloutsapi.AnalysisTemplate) (*rolloutsapi.A
// flattenMetrics combines metrics from multiple templates while ensuring
// unique names.
-func flattenMetrics(templates []*rolloutsapi.AnalysisTemplate) ([]rolloutsapi.Metric, error) {
- metrics := make([]rolloutsapi.Metric, 0, len(templates))
+func flattenMetrics(analysisTemplateSpecs []*rolloutsapi.AnalysisTemplateSpec) ([]rolloutsapi.Metric, error) {
+ metrics := make([]rolloutsapi.Metric, 0, len(analysisTemplateSpecs))
seen := make(map[string]struct{})
- for _, tmpl := range templates {
- for _, metric := range tmpl.Spec.Metrics {
+ for _, analysisTmplSpec := range analysisTemplateSpecs {
+ for _, metric := range analysisTmplSpec.Metrics {
if _, exists := seen[metric.Name]; exists {
return nil, fmt.Errorf("duplicate metric name: %q", metric.Name)
}
@@ -60,11 +62,11 @@ func flattenMetrics(templates []*rolloutsapi.AnalysisTemplate) ([]rolloutsapi.Me
}
// flattenDryRunMetrics combines dry-run metrics from multiple templates.
-func flattenDryRunMetrics(templates []*rolloutsapi.AnalysisTemplate) ([]rolloutsapi.DryRun, error) {
- dryRun := make([]rolloutsapi.DryRun, 0, len(templates))
+func flattenDryRunMetrics(analysisTemplateSpecs []*rolloutsapi.AnalysisTemplateSpec) ([]rolloutsapi.DryRun, error) {
+ dryRun := make([]rolloutsapi.DryRun, 0, len(analysisTemplateSpecs))
- for _, tmpl := range templates {
- dryRun = append(dryRun, tmpl.Spec.DryRun...)
+ for _, tmplSpec := range analysisTemplateSpecs {
+ dryRun = append(dryRun, tmplSpec.DryRun...)
}
if err := validateUniqueDryRunMetrics(dryRun); err != nil {
@@ -77,12 +79,12 @@ func flattenDryRunMetrics(templates []*rolloutsapi.AnalysisTemplate) ([]rollouts
// flattenMeasurementRetentionMetrics combines measurement retention metrics
// from multiple templates.
func flattenMeasurementRetentionMetrics(
- templates []*rolloutsapi.AnalysisTemplate,
+ analysisTemplateSpecs []*rolloutsapi.AnalysisTemplateSpec,
) ([]rolloutsapi.MeasurementRetention, error) {
- retention := make([]rolloutsapi.MeasurementRetention, 0, len(templates))
+ retention := make([]rolloutsapi.MeasurementRetention, 0, len(analysisTemplateSpecs))
- for _, tmpl := range templates {
- retention = append(retention, tmpl.Spec.MeasurementRetention...)
+ for _, tmplSpec := range analysisTemplateSpecs {
+ retention = append(retention, tmplSpec.MeasurementRetention...)
}
if err := validateUniqueMeasurementRetentionMetrics(retention); err != nil {
@@ -94,7 +96,7 @@ func flattenMeasurementRetentionMetrics(
// flattenArgs combines arguments from multiple templates, handling conflicts
// and updates.
-func flattenArgs(templates []*rolloutsapi.AnalysisTemplate) ([]rolloutsapi.Argument, error) {
+func flattenArgs(analysisTemplateSpecs []*rolloutsapi.AnalysisTemplateSpec) ([]rolloutsapi.Argument, error) {
var combinedArgs []rolloutsapi.Argument
updateOrAppend := func(newArg rolloutsapi.Argument) error {
@@ -111,8 +113,8 @@ func flattenArgs(templates []*rolloutsapi.AnalysisTemplate) ([]rolloutsapi.Argum
return nil
}
- for _, tmpl := range templates {
- for _, arg := range tmpl.Spec.Args {
+ for _, tmplSpec := range analysisTemplateSpecs {
+ for _, arg := range tmplSpec.Args {
if err := updateOrAppend(arg); err != nil {
return nil, err
}
diff --git a/internal/rollouts/analysis_template_test.go b/internal/rollouts/analysis_template_test.go
index 7446509ea..2911cf888 100644
--- a/internal/rollouts/analysis_template_test.go
+++ b/internal/rollouts/analysis_template_test.go
@@ -12,13 +12,13 @@ import (
func Test_flattenTemplates(t *testing.T) {
tests := []struct {
- name string
- templates []*rolloutsapi.AnalysisTemplate
- assertions func(*testing.T, *rolloutsapi.AnalysisTemplate, error)
+ name string
+ templateSpecs []*rolloutsapi.AnalysisTemplateSpec
+ assertions func(*testing.T, *rolloutsapi.AnalysisTemplate, error)
}{
{
- name: "handle nil templates",
- templates: nil,
+ name: "handle nil templates",
+ templateSpecs: nil,
assertions: func(t *testing.T, template *rolloutsapi.AnalysisTemplate, err error) {
require.NoError(t, err)
require.NotNil(t, template)
@@ -29,8 +29,8 @@ func Test_flattenTemplates(t *testing.T) {
},
},
{
- name: "handle empty list",
- templates: []*rolloutsapi.AnalysisTemplate{},
+ name: "handle empty list",
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{},
assertions: func(t *testing.T, template *rolloutsapi.AnalysisTemplate, err error) {
require.NoError(t, err)
require.Empty(t, template.Spec.Metrics)
@@ -39,20 +39,18 @@ func Test_flattenTemplates(t *testing.T) {
},
{
name: "no changes on single template",
- templates: []*rolloutsapi.AnalysisTemplate{
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Metrics: []rolloutsapi.Metric{
- {
- Name: "foo",
- SuccessCondition: "{{args.test}}",
- },
+ Metrics: []rolloutsapi.Metric{
+ {
+ Name: "foo",
+ SuccessCondition: "{{args.test}}",
},
- Args: []rolloutsapi.Argument{
- {
- Name: "test",
- Value: ptr.To("true"),
- },
+ },
+ Args: []rolloutsapi.Argument{
+ {
+ Name: "test",
+ Value: ptr.To("true"),
},
},
},
@@ -71,46 +69,42 @@ func Test_flattenTemplates(t *testing.T) {
},
{
name: "merge multiple metrics",
- templates: []*rolloutsapi.AnalysisTemplate{
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Metrics: []rolloutsapi.Metric{
- {
- Name: "foo",
- SuccessCondition: "true",
- },
+ Metrics: []rolloutsapi.Metric{
+ {
+ Name: "foo",
+ SuccessCondition: "true",
},
- DryRun: []rolloutsapi.DryRun{
- {
- MetricName: "foo",
- },
+ },
+ DryRun: []rolloutsapi.DryRun{
+ {
+ MetricName: "foo",
},
- MeasurementRetention: []rolloutsapi.MeasurementRetention{
- {
- MetricName: "foo",
- Limit: int32(5),
- },
+ },
+ MeasurementRetention: []rolloutsapi.MeasurementRetention{
+ {
+ MetricName: "foo",
+ Limit: int32(5),
},
},
},
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Metrics: []rolloutsapi.Metric{
- {
- Name: "bar",
- SuccessCondition: "true",
- },
+ Metrics: []rolloutsapi.Metric{
+ {
+ Name: "bar",
+ SuccessCondition: "true",
},
- DryRun: []rolloutsapi.DryRun{
- {
- MetricName: "bar",
- },
+ },
+ DryRun: []rolloutsapi.DryRun{
+ {
+ MetricName: "bar",
},
- MeasurementRetention: []rolloutsapi.MeasurementRetention{
- {
- MetricName: "bar",
- Limit: int32(10),
- },
+ },
+ MeasurementRetention: []rolloutsapi.MeasurementRetention{
+ {
+ MetricName: "bar",
+ Limit: int32(10),
},
},
},
@@ -149,24 +143,20 @@ func Test_flattenTemplates(t *testing.T) {
},
{
name: "merge fail with metric name collision",
- templates: []*rolloutsapi.AnalysisTemplate{
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Metrics: []rolloutsapi.Metric{
- {
- Name: "foo",
- SuccessCondition: "true",
- },
+ Metrics: []rolloutsapi.Metric{
+ {
+ Name: "foo",
+ SuccessCondition: "true",
},
},
},
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Metrics: []rolloutsapi.Metric{
- {
- Name: "foo",
- SuccessCondition: "false",
- },
+ Metrics: []rolloutsapi.Metric{
+ {
+ Name: "foo",
+ SuccessCondition: "false",
},
},
},
@@ -178,34 +168,30 @@ func Test_flattenTemplates(t *testing.T) {
},
{
name: "merge fail with dry-run name collision",
- templates: []*rolloutsapi.AnalysisTemplate{
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Metrics: []rolloutsapi.Metric{
- {
- Name: "foo",
- SuccessCondition: "true",
- },
+ Metrics: []rolloutsapi.Metric{
+ {
+ Name: "foo",
+ SuccessCondition: "true",
},
- DryRun: []rolloutsapi.DryRun{
- {
- MetricName: "metric1",
- },
+ },
+ DryRun: []rolloutsapi.DryRun{
+ {
+ MetricName: "metric1",
},
},
},
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Metrics: []rolloutsapi.Metric{
- {
- Name: "bar",
- SuccessCondition: "true",
- },
+ Metrics: []rolloutsapi.Metric{
+ {
+ Name: "bar",
+ SuccessCondition: "true",
},
- DryRun: []rolloutsapi.DryRun{
- {
- MetricName: "metric1",
- },
+ },
+ DryRun: []rolloutsapi.DryRun{
+ {
+ MetricName: "metric1",
},
},
},
@@ -217,24 +203,20 @@ func Test_flattenTemplates(t *testing.T) {
},
{
name: "merge fail with measurement retention name collision",
- templates: []*rolloutsapi.AnalysisTemplate{
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- MeasurementRetention: []rolloutsapi.MeasurementRetention{
- {
- MetricName: "metric1",
- Limit: int32(0),
- },
+ MeasurementRetention: []rolloutsapi.MeasurementRetention{
+ {
+ MetricName: "metric1",
+ Limit: int32(0),
},
},
},
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- MeasurementRetention: []rolloutsapi.MeasurementRetention{
- {
- MetricName: "metric1",
- Limit: int32(0),
- },
+ MeasurementRetention: []rolloutsapi.MeasurementRetention{
+ {
+ MetricName: "metric1",
+ Limit: int32(0),
},
},
},
@@ -246,24 +228,20 @@ func Test_flattenTemplates(t *testing.T) {
},
{
name: "merge fail with argument error",
- templates: []*rolloutsapi.AnalysisTemplate{
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: []rolloutsapi.Argument{
- {
- Name: "foo",
- Value: ptr.To("value1"),
- },
+ Args: []rolloutsapi.Argument{
+ {
+ Name: "foo",
+ Value: ptr.To("value1"),
},
},
},
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: []rolloutsapi.Argument{
- {
- Name: "foo",
- Value: ptr.To("value2"),
- },
+ Args: []rolloutsapi.Argument{
+ {
+ Name: "foo",
+ Value: ptr.To("value2"),
},
},
},
@@ -278,7 +256,7 @@ func Test_flattenTemplates(t *testing.T) {
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
- result, err := flattenTemplates(tt.templates)
+ result, err := flattenTemplates(tt.templateSpecs)
tt.assertions(t, result, err)
})
}
@@ -399,30 +377,26 @@ func Test_mergeArgs(t *testing.T) {
func Test_flattenArgs(t *testing.T) {
tests := []struct {
- name string
- templates []*rolloutsapi.AnalysisTemplate
- assertions func(*testing.T, []rolloutsapi.Argument, error)
+ name string
+ templateSpecs []*rolloutsapi.AnalysisTemplateSpec
+ assertions func(*testing.T, []rolloutsapi.Argument, error)
}{
{
name: "merge multiple args",
- templates: []*rolloutsapi.AnalysisTemplate{
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: []rolloutsapi.Argument{
- {
- Name: "foo",
- Value: ptr.To("true"),
- },
+ Args: []rolloutsapi.Argument{
+ {
+ Name: "foo",
+ Value: ptr.To("true"),
},
},
},
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: []rolloutsapi.Argument{
- {
- Name: "bar",
- Value: ptr.To("false"),
- },
+ Args: []rolloutsapi.Argument{
+ {
+ Name: "bar",
+ Value: ptr.To("false"),
},
},
},
@@ -442,24 +416,20 @@ func Test_flattenArgs(t *testing.T) {
},
{
name: "merge args with same name but only one has value",
- templates: []*rolloutsapi.AnalysisTemplate{
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: []rolloutsapi.Argument{
- {
- Name: "foo",
- Value: ptr.To("value"),
- },
+ Args: []rolloutsapi.Argument{
+ {
+ Name: "foo",
+ Value: ptr.To("value"),
},
},
},
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: []rolloutsapi.Argument{
- {
- Name: "foo",
- Value: nil,
- },
+ Args: []rolloutsapi.Argument{
+ {
+ Name: "foo",
+ Value: nil,
},
},
},
@@ -475,24 +445,20 @@ func Test_flattenArgs(t *testing.T) {
},
{
name: "error when merging args with same name but different values",
- templates: []*rolloutsapi.AnalysisTemplate{
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: []rolloutsapi.Argument{
- {
- Name: "foo",
- Value: ptr.To("true"),
- },
+ Args: []rolloutsapi.Argument{
+ {
+ Name: "foo",
+ Value: ptr.To("true"),
},
},
},
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: []rolloutsapi.Argument{
- {
- Name: "foo",
- Value: ptr.To("false"),
- },
+ Args: []rolloutsapi.Argument{
+ {
+ Name: "foo",
+ Value: ptr.To("false"),
},
},
},
@@ -503,20 +469,16 @@ func Test_flattenArgs(t *testing.T) {
},
},
{
- name: "nil args in templates",
- templates: []*rolloutsapi.AnalysisTemplate{
+ name: "nil args in templateSpecs",
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: nil,
- },
+ Args: nil,
},
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: []rolloutsapi.Argument{
- {
- Name: "foo",
- Value: ptr.To("value"),
- },
+ Args: []rolloutsapi.Argument{
+ {
+ Name: "foo",
+ Value: ptr.To("value"),
},
},
},
@@ -531,20 +493,16 @@ func Test_flattenArgs(t *testing.T) {
},
},
{
- name: "empty args slice in templates",
- templates: []*rolloutsapi.AnalysisTemplate{
+ name: "empty args slice in templateSpecs",
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: []rolloutsapi.Argument{},
- },
+ Args: []rolloutsapi.Argument{},
},
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: []rolloutsapi.Argument{
- {
- Name: "foo",
- Value: ptr.To("value"),
- },
+ Args: []rolloutsapi.Argument{
+ {
+ Name: "foo",
+ Value: ptr.To("value"),
},
},
},
@@ -560,18 +518,16 @@ func Test_flattenArgs(t *testing.T) {
},
{
name: "handle argument with both value and valueFrom",
- templates: []*rolloutsapi.AnalysisTemplate{
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: []rolloutsapi.Argument{
- {
- Name: "foo",
- Value: ptr.To("value"),
- ValueFrom: &rolloutsapi.ValueFrom{
- SecretKeyRef: &rolloutsapi.SecretKeyRef{
- Name: "secret1",
- Key: "key1",
- },
+ Args: []rolloutsapi.Argument{
+ {
+ Name: "foo",
+ Value: ptr.To("value"),
+ ValueFrom: &rolloutsapi.ValueFrom{
+ SecretKeyRef: &rolloutsapi.SecretKeyRef{
+ Name: "secret1",
+ Key: "key1",
},
},
},
@@ -595,29 +551,25 @@ func Test_flattenArgs(t *testing.T) {
},
{
name: "merge args with ValueFrom",
- templates: []*rolloutsapi.AnalysisTemplate{
+ templateSpecs: []*rolloutsapi.AnalysisTemplateSpec{
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: []rolloutsapi.Argument{
- {
- Name: "foo",
- ValueFrom: &rolloutsapi.ValueFrom{
- SecretKeyRef: &rolloutsapi.SecretKeyRef{
- Name: "secret1",
- Key: "key1",
- },
+ Args: []rolloutsapi.Argument{
+ {
+ Name: "foo",
+ ValueFrom: &rolloutsapi.ValueFrom{
+ SecretKeyRef: &rolloutsapi.SecretKeyRef{
+ Name: "secret1",
+ Key: "key1",
},
},
},
},
},
{
- Spec: rolloutsapi.AnalysisTemplateSpec{
- Args: []rolloutsapi.Argument{
- {
- Name: "foo",
- Value: nil,
- },
+ Args: []rolloutsapi.Argument{
+ {
+ Name: "foo",
+ Value: nil,
},
},
},
@@ -640,7 +592,7 @@ func Test_flattenArgs(t *testing.T) {
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
- result, err := flattenArgs(tt.templates)
+ result, err := flattenArgs(tt.templateSpecs)
tt.assertions(t, result, err)
})
}
diff --git a/pkg/api/service/v1alpha1/service.pb.go b/pkg/api/service/v1alpha1/service.pb.go
index 365ce61e3..d04865c48 100644
--- a/pkg/api/service/v1alpha1/service.pb.go
+++ b/pkg/api/service/v1alpha1/service.pb.go
@@ -5565,6 +5565,228 @@ func (*GetAnalysisTemplateResponse_AnalysisTemplate) isGetAnalysisTemplateRespon
func (*GetAnalysisTemplateResponse_Raw) isGetAnalysisTemplateResponse_Result() {}
+type ListClusterAnalysisTemplatesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *ListClusterAnalysisTemplatesRequest) Reset() {
+ *x = ListClusterAnalysisTemplatesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_service_v1alpha1_service_proto_msgTypes[97]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListClusterAnalysisTemplatesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListClusterAnalysisTemplatesRequest) ProtoMessage() {}
+
+func (x *ListClusterAnalysisTemplatesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_service_v1alpha1_service_proto_msgTypes[97]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListClusterAnalysisTemplatesRequest.ProtoReflect.Descriptor instead.
+func (*ListClusterAnalysisTemplatesRequest) Descriptor() ([]byte, []int) {
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{97}
+}
+
+type ListClusterAnalysisTemplatesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ClusterAnalysisTemplates []*v1alpha11.ClusterAnalysisTemplate `protobuf:"bytes,1,rep,name=cluster_analysis_templates,json=clusteranalysisTemplates,proto3" json:"cluster_analysis_templates,omitempty"`
+}
+
+func (x *ListClusterAnalysisTemplatesResponse) Reset() {
+ *x = ListClusterAnalysisTemplatesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_service_v1alpha1_service_proto_msgTypes[98]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListClusterAnalysisTemplatesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListClusterAnalysisTemplatesResponse) ProtoMessage() {}
+
+func (x *ListClusterAnalysisTemplatesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_service_v1alpha1_service_proto_msgTypes[98]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListClusterAnalysisTemplatesResponse.ProtoReflect.Descriptor instead.
+func (*ListClusterAnalysisTemplatesResponse) Descriptor() ([]byte, []int) {
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{98}
+}
+
+func (x *ListClusterAnalysisTemplatesResponse) GetClusterAnalysisTemplates() []*v1alpha11.ClusterAnalysisTemplate {
+ if x != nil {
+ return x.ClusterAnalysisTemplates
+ }
+ return nil
+}
+
+type GetClusterAnalysisTemplateRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+ Format RawFormat `protobuf:"varint,3,opt,name=format,proto3,enum=akuity.io.kargo.service.v1alpha1.RawFormat" json:"format,omitempty"`
+}
+
+func (x *GetClusterAnalysisTemplateRequest) Reset() {
+ *x = GetClusterAnalysisTemplateRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_service_v1alpha1_service_proto_msgTypes[99]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetClusterAnalysisTemplateRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetClusterAnalysisTemplateRequest) ProtoMessage() {}
+
+func (x *GetClusterAnalysisTemplateRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_service_v1alpha1_service_proto_msgTypes[99]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetClusterAnalysisTemplateRequest.ProtoReflect.Descriptor instead.
+func (*GetClusterAnalysisTemplateRequest) Descriptor() ([]byte, []int) {
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{99}
+}
+
+func (x *GetClusterAnalysisTemplateRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *GetClusterAnalysisTemplateRequest) GetFormat() RawFormat {
+ if x != nil {
+ return x.Format
+ }
+ return RawFormat_RAW_FORMAT_UNSPECIFIED
+}
+
+type GetClusterAnalysisTemplateResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Types that are assignable to Result:
+ //
+ // *GetClusterAnalysisTemplateResponse_ClusterAnalysisTemplate
+ // *GetClusterAnalysisTemplateResponse_Raw
+ Result isGetClusterAnalysisTemplateResponse_Result `protobuf_oneof:"result"`
+}
+
+func (x *GetClusterAnalysisTemplateResponse) Reset() {
+ *x = GetClusterAnalysisTemplateResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_service_v1alpha1_service_proto_msgTypes[100]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetClusterAnalysisTemplateResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetClusterAnalysisTemplateResponse) ProtoMessage() {}
+
+func (x *GetClusterAnalysisTemplateResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_service_v1alpha1_service_proto_msgTypes[100]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetClusterAnalysisTemplateResponse.ProtoReflect.Descriptor instead.
+func (*GetClusterAnalysisTemplateResponse) Descriptor() ([]byte, []int) {
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{100}
+}
+
+func (m *GetClusterAnalysisTemplateResponse) GetResult() isGetClusterAnalysisTemplateResponse_Result {
+ if m != nil {
+ return m.Result
+ }
+ return nil
+}
+
+func (x *GetClusterAnalysisTemplateResponse) GetClusterAnalysisTemplate() *v1alpha11.ClusterAnalysisTemplate {
+ if x, ok := x.GetResult().(*GetClusterAnalysisTemplateResponse_ClusterAnalysisTemplate); ok {
+ return x.ClusterAnalysisTemplate
+ }
+ return nil
+}
+
+func (x *GetClusterAnalysisTemplateResponse) GetRaw() []byte {
+ if x, ok := x.GetResult().(*GetClusterAnalysisTemplateResponse_Raw); ok {
+ return x.Raw
+ }
+ return nil
+}
+
+type isGetClusterAnalysisTemplateResponse_Result interface {
+ isGetClusterAnalysisTemplateResponse_Result()
+}
+
+type GetClusterAnalysisTemplateResponse_ClusterAnalysisTemplate struct {
+ ClusterAnalysisTemplate *v1alpha11.ClusterAnalysisTemplate `protobuf:"bytes,1,opt,name=cluster_analysis_template,json=clusterAnalysisTemplate,proto3,oneof"`
+}
+
+type GetClusterAnalysisTemplateResponse_Raw struct {
+ Raw []byte `protobuf:"bytes,2,opt,name=raw,proto3,oneof"`
+}
+
+func (*GetClusterAnalysisTemplateResponse_ClusterAnalysisTemplate) isGetClusterAnalysisTemplateResponse_Result() {
+}
+
+func (*GetClusterAnalysisTemplateResponse_Raw) isGetClusterAnalysisTemplateResponse_Result() {}
+
type GetAnalysisRunRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -5578,7 +5800,7 @@ type GetAnalysisRunRequest struct {
func (x *GetAnalysisRunRequest) Reset() {
*x = GetAnalysisRunRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[97]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[101]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5591,7 +5813,7 @@ func (x *GetAnalysisRunRequest) String() string {
func (*GetAnalysisRunRequest) ProtoMessage() {}
func (x *GetAnalysisRunRequest) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[97]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[101]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5604,7 +5826,7 @@ func (x *GetAnalysisRunRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetAnalysisRunRequest.ProtoReflect.Descriptor instead.
func (*GetAnalysisRunRequest) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{97}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{101}
}
func (x *GetAnalysisRunRequest) GetNamespace() string {
@@ -5643,7 +5865,7 @@ type GetAnalysisRunResponse struct {
func (x *GetAnalysisRunResponse) Reset() {
*x = GetAnalysisRunResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[98]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[102]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5656,7 +5878,7 @@ func (x *GetAnalysisRunResponse) String() string {
func (*GetAnalysisRunResponse) ProtoMessage() {}
func (x *GetAnalysisRunResponse) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[98]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[102]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5669,7 +5891,7 @@ func (x *GetAnalysisRunResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetAnalysisRunResponse.ProtoReflect.Descriptor instead.
func (*GetAnalysisRunResponse) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{98}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{102}
}
func (m *GetAnalysisRunResponse) GetResult() isGetAnalysisRunResponse_Result {
@@ -5721,7 +5943,7 @@ type DeleteAnalysisTemplateRequest struct {
func (x *DeleteAnalysisTemplateRequest) Reset() {
*x = DeleteAnalysisTemplateRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[99]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[103]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5734,7 +5956,7 @@ func (x *DeleteAnalysisTemplateRequest) String() string {
func (*DeleteAnalysisTemplateRequest) ProtoMessage() {}
func (x *DeleteAnalysisTemplateRequest) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[99]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[103]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5747,7 +5969,7 @@ func (x *DeleteAnalysisTemplateRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeleteAnalysisTemplateRequest.ProtoReflect.Descriptor instead.
func (*DeleteAnalysisTemplateRequest) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{99}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{103}
}
func (x *DeleteAnalysisTemplateRequest) GetProject() string {
@@ -5773,7 +5995,7 @@ type DeleteAnalysisTemplateResponse struct {
func (x *DeleteAnalysisTemplateResponse) Reset() {
*x = DeleteAnalysisTemplateResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[100]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[104]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5786,7 +6008,7 @@ func (x *DeleteAnalysisTemplateResponse) String() string {
func (*DeleteAnalysisTemplateResponse) ProtoMessage() {}
func (x *DeleteAnalysisTemplateResponse) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[100]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[104]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5799,7 +6021,92 @@ func (x *DeleteAnalysisTemplateResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeleteAnalysisTemplateResponse.ProtoReflect.Descriptor instead.
func (*DeleteAnalysisTemplateResponse) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{100}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{104}
+}
+
+type DeleteClusterAnalysisTemplateRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *DeleteClusterAnalysisTemplateRequest) Reset() {
+ *x = DeleteClusterAnalysisTemplateRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_service_v1alpha1_service_proto_msgTypes[105]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteClusterAnalysisTemplateRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteClusterAnalysisTemplateRequest) ProtoMessage() {}
+
+func (x *DeleteClusterAnalysisTemplateRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_service_v1alpha1_service_proto_msgTypes[105]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteClusterAnalysisTemplateRequest.ProtoReflect.Descriptor instead.
+func (*DeleteClusterAnalysisTemplateRequest) Descriptor() ([]byte, []int) {
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{105}
+}
+
+func (x *DeleteClusterAnalysisTemplateRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+type DeleteClusterAnalysisTemplateResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *DeleteClusterAnalysisTemplateResponse) Reset() {
+ *x = DeleteClusterAnalysisTemplateResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_service_v1alpha1_service_proto_msgTypes[106]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteClusterAnalysisTemplateResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteClusterAnalysisTemplateResponse) ProtoMessage() {}
+
+func (x *DeleteClusterAnalysisTemplateResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_service_v1alpha1_service_proto_msgTypes[106]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteClusterAnalysisTemplateResponse.ProtoReflect.Descriptor instead.
+func (*DeleteClusterAnalysisTemplateResponse) Descriptor() ([]byte, []int) {
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{106}
}
type ListProjectEventsRequest struct {
@@ -5813,7 +6120,7 @@ type ListProjectEventsRequest struct {
func (x *ListProjectEventsRequest) Reset() {
*x = ListProjectEventsRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[101]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[107]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5826,7 +6133,7 @@ func (x *ListProjectEventsRequest) String() string {
func (*ListProjectEventsRequest) ProtoMessage() {}
func (x *ListProjectEventsRequest) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[101]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[107]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5839,7 +6146,7 @@ func (x *ListProjectEventsRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListProjectEventsRequest.ProtoReflect.Descriptor instead.
func (*ListProjectEventsRequest) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{101}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{107}
}
func (x *ListProjectEventsRequest) GetProject() string {
@@ -5860,7 +6167,7 @@ type ListProjectEventsResponse struct {
func (x *ListProjectEventsResponse) Reset() {
*x = ListProjectEventsResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[102]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[108]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5873,7 +6180,7 @@ func (x *ListProjectEventsResponse) String() string {
func (*ListProjectEventsResponse) ProtoMessage() {}
func (x *ListProjectEventsResponse) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[102]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[108]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5886,7 +6193,7 @@ func (x *ListProjectEventsResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListProjectEventsResponse.ProtoReflect.Descriptor instead.
func (*ListProjectEventsResponse) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{102}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{108}
}
func (x *ListProjectEventsResponse) GetEvents() []*v1.Event {
@@ -5907,7 +6214,7 @@ type CreateRoleRequest struct {
func (x *CreateRoleRequest) Reset() {
*x = CreateRoleRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[103]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[109]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5920,7 +6227,7 @@ func (x *CreateRoleRequest) String() string {
func (*CreateRoleRequest) ProtoMessage() {}
func (x *CreateRoleRequest) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[103]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[109]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5933,7 +6240,7 @@ func (x *CreateRoleRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use CreateRoleRequest.ProtoReflect.Descriptor instead.
func (*CreateRoleRequest) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{103}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{109}
}
func (x *CreateRoleRequest) GetRole() *v1alpha12.Role {
@@ -5954,7 +6261,7 @@ type CreateRoleResponse struct {
func (x *CreateRoleResponse) Reset() {
*x = CreateRoleResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[104]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[110]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5967,7 +6274,7 @@ func (x *CreateRoleResponse) String() string {
func (*CreateRoleResponse) ProtoMessage() {}
func (x *CreateRoleResponse) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[104]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[110]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5980,7 +6287,7 @@ func (x *CreateRoleResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use CreateRoleResponse.ProtoReflect.Descriptor instead.
func (*CreateRoleResponse) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{104}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{110}
}
func (x *CreateRoleResponse) GetRole() *v1alpha12.Role {
@@ -6002,7 +6309,7 @@ type DeleteRoleRequest struct {
func (x *DeleteRoleRequest) Reset() {
*x = DeleteRoleRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[105]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[111]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6015,7 +6322,7 @@ func (x *DeleteRoleRequest) String() string {
func (*DeleteRoleRequest) ProtoMessage() {}
func (x *DeleteRoleRequest) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[105]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[111]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6028,7 +6335,7 @@ func (x *DeleteRoleRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeleteRoleRequest.ProtoReflect.Descriptor instead.
func (*DeleteRoleRequest) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{105}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{111}
}
func (x *DeleteRoleRequest) GetProject() string {
@@ -6054,7 +6361,7 @@ type DeleteRoleResponse struct {
func (x *DeleteRoleResponse) Reset() {
*x = DeleteRoleResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[106]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[112]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6067,7 +6374,7 @@ func (x *DeleteRoleResponse) String() string {
func (*DeleteRoleResponse) ProtoMessage() {}
func (x *DeleteRoleResponse) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[106]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[112]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6080,7 +6387,7 @@ func (x *DeleteRoleResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeleteRoleResponse.ProtoReflect.Descriptor instead.
func (*DeleteRoleResponse) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{106}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{112}
}
type GetRoleRequest struct {
@@ -6097,7 +6404,7 @@ type GetRoleRequest struct {
func (x *GetRoleRequest) Reset() {
*x = GetRoleRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[107]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[113]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6110,7 +6417,7 @@ func (x *GetRoleRequest) String() string {
func (*GetRoleRequest) ProtoMessage() {}
func (x *GetRoleRequest) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[107]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[113]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6123,7 +6430,7 @@ func (x *GetRoleRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetRoleRequest.ProtoReflect.Descriptor instead.
func (*GetRoleRequest) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{107}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{113}
}
func (x *GetRoleRequest) GetProject() string {
@@ -6170,7 +6477,7 @@ type GetRoleResponse struct {
func (x *GetRoleResponse) Reset() {
*x = GetRoleResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[108]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[114]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6183,7 +6490,7 @@ func (x *GetRoleResponse) String() string {
func (*GetRoleResponse) ProtoMessage() {}
func (x *GetRoleResponse) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[108]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[114]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6196,7 +6503,7 @@ func (x *GetRoleResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetRoleResponse.ProtoReflect.Descriptor instead.
func (*GetRoleResponse) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{108}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{114}
}
func (m *GetRoleResponse) GetResult() isGetRoleResponse_Result {
@@ -6261,7 +6568,7 @@ type Claims struct {
func (x *Claims) Reset() {
*x = Claims{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[109]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[115]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6274,7 +6581,7 @@ func (x *Claims) String() string {
func (*Claims) ProtoMessage() {}
func (x *Claims) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[109]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[115]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6287,7 +6594,7 @@ func (x *Claims) ProtoReflect() protoreflect.Message {
// Deprecated: Use Claims.ProtoReflect.Descriptor instead.
func (*Claims) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{109}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{115}
}
func (x *Claims) GetClaims() []*v1alpha12.Claim {
@@ -6314,7 +6621,7 @@ type GrantRequest struct {
func (x *GrantRequest) Reset() {
*x = GrantRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[110]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[116]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6327,7 +6634,7 @@ func (x *GrantRequest) String() string {
func (*GrantRequest) ProtoMessage() {}
func (x *GrantRequest) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[110]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[116]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6340,7 +6647,7 @@ func (x *GrantRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use GrantRequest.ProtoReflect.Descriptor instead.
func (*GrantRequest) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{110}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{116}
}
func (x *GrantRequest) GetProject() string {
@@ -6405,7 +6712,7 @@ type GrantResponse struct {
func (x *GrantResponse) Reset() {
*x = GrantResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[111]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[117]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6418,7 +6725,7 @@ func (x *GrantResponse) String() string {
func (*GrantResponse) ProtoMessage() {}
func (x *GrantResponse) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[111]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[117]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6431,7 +6738,7 @@ func (x *GrantResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use GrantResponse.ProtoReflect.Descriptor instead.
func (*GrantResponse) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{111}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{117}
}
func (x *GrantResponse) GetRole() *v1alpha12.Role {
@@ -6453,7 +6760,7 @@ type ListRolesRequest struct {
func (x *ListRolesRequest) Reset() {
*x = ListRolesRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[112]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[118]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6466,7 +6773,7 @@ func (x *ListRolesRequest) String() string {
func (*ListRolesRequest) ProtoMessage() {}
func (x *ListRolesRequest) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[112]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[118]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6479,7 +6786,7 @@ func (x *ListRolesRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListRolesRequest.ProtoReflect.Descriptor instead.
func (*ListRolesRequest) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{112}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{118}
}
func (x *ListRolesRequest) GetProject() string {
@@ -6509,7 +6816,7 @@ type ListRolesResponse struct {
func (x *ListRolesResponse) Reset() {
*x = ListRolesResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[113]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[119]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6522,7 +6829,7 @@ func (x *ListRolesResponse) String() string {
func (*ListRolesResponse) ProtoMessage() {}
func (x *ListRolesResponse) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[113]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[119]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6535,7 +6842,7 @@ func (x *ListRolesResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListRolesResponse.ProtoReflect.Descriptor instead.
func (*ListRolesResponse) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{113}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{119}
}
func (x *ListRolesResponse) GetRoles() []*v1alpha12.Role {
@@ -6569,7 +6876,7 @@ type RevokeRequest struct {
func (x *RevokeRequest) Reset() {
*x = RevokeRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[114]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[120]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6582,7 +6889,7 @@ func (x *RevokeRequest) String() string {
func (*RevokeRequest) ProtoMessage() {}
func (x *RevokeRequest) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[114]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[120]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6595,7 +6902,7 @@ func (x *RevokeRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use RevokeRequest.ProtoReflect.Descriptor instead.
func (*RevokeRequest) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{114}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{120}
}
func (x *RevokeRequest) GetProject() string {
@@ -6660,7 +6967,7 @@ type RevokeResponse struct {
func (x *RevokeResponse) Reset() {
*x = RevokeResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[115]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[121]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6673,7 +6980,7 @@ func (x *RevokeResponse) String() string {
func (*RevokeResponse) ProtoMessage() {}
func (x *RevokeResponse) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[115]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[121]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6686,7 +6993,7 @@ func (x *RevokeResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use RevokeResponse.ProtoReflect.Descriptor instead.
func (*RevokeResponse) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{115}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{121}
}
func (x *RevokeResponse) GetRole() *v1alpha12.Role {
@@ -6707,7 +7014,7 @@ type UpdateRoleRequest struct {
func (x *UpdateRoleRequest) Reset() {
*x = UpdateRoleRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[116]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[122]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6720,7 +7027,7 @@ func (x *UpdateRoleRequest) String() string {
func (*UpdateRoleRequest) ProtoMessage() {}
func (x *UpdateRoleRequest) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[116]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[122]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6733,7 +7040,7 @@ func (x *UpdateRoleRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateRoleRequest.ProtoReflect.Descriptor instead.
func (*UpdateRoleRequest) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{116}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{122}
}
func (x *UpdateRoleRequest) GetRole() *v1alpha12.Role {
@@ -6754,7 +7061,7 @@ type UpdateRoleResponse struct {
func (x *UpdateRoleResponse) Reset() {
*x = UpdateRoleResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[117]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[123]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6767,7 +7074,7 @@ func (x *UpdateRoleResponse) String() string {
func (*UpdateRoleResponse) ProtoMessage() {}
func (x *UpdateRoleResponse) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[117]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[123]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6780,7 +7087,7 @@ func (x *UpdateRoleResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateRoleResponse.ProtoReflect.Descriptor instead.
func (*UpdateRoleResponse) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{117}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{123}
}
func (x *UpdateRoleResponse) GetRole() *v1alpha12.Role {
@@ -6801,7 +7108,7 @@ type ListAnalysisTemplateConfigMapsRequest struct {
func (x *ListAnalysisTemplateConfigMapsRequest) Reset() {
*x = ListAnalysisTemplateConfigMapsRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[118]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[124]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6814,7 +7121,7 @@ func (x *ListAnalysisTemplateConfigMapsRequest) String() string {
func (*ListAnalysisTemplateConfigMapsRequest) ProtoMessage() {}
func (x *ListAnalysisTemplateConfigMapsRequest) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[118]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[124]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6827,7 +7134,7 @@ func (x *ListAnalysisTemplateConfigMapsRequest) ProtoReflect() protoreflect.Mess
// Deprecated: Use ListAnalysisTemplateConfigMapsRequest.ProtoReflect.Descriptor instead.
func (*ListAnalysisTemplateConfigMapsRequest) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{118}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{124}
}
func (x *ListAnalysisTemplateConfigMapsRequest) GetProject() string {
@@ -6848,7 +7155,7 @@ type ListAnalysisTemplateConfigMapsResponse struct {
func (x *ListAnalysisTemplateConfigMapsResponse) Reset() {
*x = ListAnalysisTemplateConfigMapsResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[119]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[125]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6861,7 +7168,7 @@ func (x *ListAnalysisTemplateConfigMapsResponse) String() string {
func (*ListAnalysisTemplateConfigMapsResponse) ProtoMessage() {}
func (x *ListAnalysisTemplateConfigMapsResponse) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[119]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[125]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6874,7 +7181,7 @@ func (x *ListAnalysisTemplateConfigMapsResponse) ProtoReflect() protoreflect.Mes
// Deprecated: Use ListAnalysisTemplateConfigMapsResponse.ProtoReflect.Descriptor instead.
func (*ListAnalysisTemplateConfigMapsResponse) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{119}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{125}
}
func (x *ListAnalysisTemplateConfigMapsResponse) GetConfigMaps() []*v1.ConfigMap {
@@ -6897,7 +7204,7 @@ type GetAnalysisTemplateConfigMapRequest struct {
func (x *GetAnalysisTemplateConfigMapRequest) Reset() {
*x = GetAnalysisTemplateConfigMapRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[120]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[126]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6910,7 +7217,7 @@ func (x *GetAnalysisTemplateConfigMapRequest) String() string {
func (*GetAnalysisTemplateConfigMapRequest) ProtoMessage() {}
func (x *GetAnalysisTemplateConfigMapRequest) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[120]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[126]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6923,7 +7230,7 @@ func (x *GetAnalysisTemplateConfigMapRequest) ProtoReflect() protoreflect.Messag
// Deprecated: Use GetAnalysisTemplateConfigMapRequest.ProtoReflect.Descriptor instead.
func (*GetAnalysisTemplateConfigMapRequest) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{120}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{126}
}
func (x *GetAnalysisTemplateConfigMapRequest) GetProject() string {
@@ -6962,7 +7269,7 @@ type GetAnalysisTemplateConfigMapResponse struct {
func (x *GetAnalysisTemplateConfigMapResponse) Reset() {
*x = GetAnalysisTemplateConfigMapResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[121]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[127]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -6975,7 +7282,7 @@ func (x *GetAnalysisTemplateConfigMapResponse) String() string {
func (*GetAnalysisTemplateConfigMapResponse) ProtoMessage() {}
func (x *GetAnalysisTemplateConfigMapResponse) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[121]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[127]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -6988,7 +7295,7 @@ func (x *GetAnalysisTemplateConfigMapResponse) ProtoReflect() protoreflect.Messa
// Deprecated: Use GetAnalysisTemplateConfigMapResponse.ProtoReflect.Descriptor instead.
func (*GetAnalysisTemplateConfigMapResponse) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{121}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{127}
}
func (m *GetAnalysisTemplateConfigMapResponse) GetResult() isGetAnalysisTemplateConfigMapResponse_Result {
@@ -7040,7 +7347,7 @@ type ListAnalysisTemplateSecretsRequest struct {
func (x *ListAnalysisTemplateSecretsRequest) Reset() {
*x = ListAnalysisTemplateSecretsRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[122]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[128]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -7053,7 +7360,7 @@ func (x *ListAnalysisTemplateSecretsRequest) String() string {
func (*ListAnalysisTemplateSecretsRequest) ProtoMessage() {}
func (x *ListAnalysisTemplateSecretsRequest) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[122]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[128]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -7066,7 +7373,7 @@ func (x *ListAnalysisTemplateSecretsRequest) ProtoReflect() protoreflect.Message
// Deprecated: Use ListAnalysisTemplateSecretsRequest.ProtoReflect.Descriptor instead.
func (*ListAnalysisTemplateSecretsRequest) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{122}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{128}
}
func (x *ListAnalysisTemplateSecretsRequest) GetProject() string {
@@ -7087,7 +7394,7 @@ type ListAnalysisTemplateSecretsResponse struct {
func (x *ListAnalysisTemplateSecretsResponse) Reset() {
*x = ListAnalysisTemplateSecretsResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[123]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[129]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -7100,7 +7407,7 @@ func (x *ListAnalysisTemplateSecretsResponse) String() string {
func (*ListAnalysisTemplateSecretsResponse) ProtoMessage() {}
func (x *ListAnalysisTemplateSecretsResponse) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[123]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[129]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -7113,7 +7420,7 @@ func (x *ListAnalysisTemplateSecretsResponse) ProtoReflect() protoreflect.Messag
// Deprecated: Use ListAnalysisTemplateSecretsResponse.ProtoReflect.Descriptor instead.
func (*ListAnalysisTemplateSecretsResponse) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{123}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{129}
}
func (x *ListAnalysisTemplateSecretsResponse) GetSecrets() []*v1.Secret {
@@ -7136,7 +7443,7 @@ type GetAnalysisTemplateSecretRequest struct {
func (x *GetAnalysisTemplateSecretRequest) Reset() {
*x = GetAnalysisTemplateSecretRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[124]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[130]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -7149,7 +7456,7 @@ func (x *GetAnalysisTemplateSecretRequest) String() string {
func (*GetAnalysisTemplateSecretRequest) ProtoMessage() {}
func (x *GetAnalysisTemplateSecretRequest) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[124]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[130]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -7162,7 +7469,7 @@ func (x *GetAnalysisTemplateSecretRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetAnalysisTemplateSecretRequest.ProtoReflect.Descriptor instead.
func (*GetAnalysisTemplateSecretRequest) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{124}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{130}
}
func (x *GetAnalysisTemplateSecretRequest) GetProject() string {
@@ -7201,7 +7508,7 @@ type GetAnalysisTemplateSecretResponse struct {
func (x *GetAnalysisTemplateSecretResponse) Reset() {
*x = GetAnalysisTemplateSecretResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_service_v1alpha1_service_proto_msgTypes[125]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[131]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -7214,7 +7521,7 @@ func (x *GetAnalysisTemplateSecretResponse) String() string {
func (*GetAnalysisTemplateSecretResponse) ProtoMessage() {}
func (x *GetAnalysisTemplateSecretResponse) ProtoReflect() protoreflect.Message {
- mi := &file_service_v1alpha1_service_proto_msgTypes[125]
+ mi := &file_service_v1alpha1_service_proto_msgTypes[131]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -7227,7 +7534,7 @@ func (x *GetAnalysisTemplateSecretResponse) ProtoReflect() protoreflect.Message
// Deprecated: Use GetAnalysisTemplateSecretResponse.ProtoReflect.Descriptor instead.
func (*GetAnalysisTemplateSecretResponse) Descriptor() ([]byte, []int) {
- return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{125}
+ return file_service_v1alpha1_service_proto_rawDescGZIP(), []int{131}
}
func (m *GetAnalysisTemplateSecretResponse) GetResult() isGetAnalysisTemplateSecretResponse_Result {
@@ -7921,718 +8228,794 @@ var file_service_v1alpha1_service_proto_rawDesc = []byte{
0x65, 0x48, 0x00, 0x52, 0x10, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d,
0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x03, 0x72, 0x61, 0x77, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0c, 0x48, 0x00, 0x52, 0x03, 0x72, 0x61, 0x77, 0x42, 0x08, 0x0a, 0x06, 0x72, 0x65, 0x73,
- 0x75, 0x6c, 0x74, 0x22, 0x8e, 0x01, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79,
- 0x73, 0x69, 0x73, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a,
- 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e,
- 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
- 0x43, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32,
- 0x2b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67,
- 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
- 0x61, 0x31, 0x2e, 0x52, 0x61, 0x77, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x06, 0x66, 0x6f,
- 0x72, 0x6d, 0x61, 0x74, 0x22, 0xab, 0x01, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c,
- 0x79, 0x73, 0x69, 0x73, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
- 0x73, 0x0a, 0x0c, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x5f, 0x72, 0x75, 0x6e, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4e, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63,
- 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e,
- 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c,
- 0x6c, 0x65, 0x72, 0x2e, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x2e, 0x61, 0x70, 0x69,
- 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73,
- 0x69, 0x73, 0x52, 0x75, 0x6e, 0x48, 0x00, 0x52, 0x0b, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69,
- 0x73, 0x52, 0x75, 0x6e, 0x12, 0x12, 0x0a, 0x03, 0x72, 0x61, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x0c, 0x48, 0x00, 0x52, 0x03, 0x72, 0x61, 0x77, 0x42, 0x08, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75,
- 0x6c, 0x74, 0x22, 0x4d, 0x0a, 0x1d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6e, 0x61, 0x6c,
+ 0x75, 0x6c, 0x74, 0x22, 0x25, 0x0a, 0x23, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74,
+ 0x65, 0x72, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61,
+ 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xc1, 0x01, 0x0a, 0x24, 0x4c,
+ 0x69, 0x73, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73,
+ 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x98, 0x01, 0x0a, 0x1a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f,
+ 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74,
+ 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75,
+ 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72,
+ 0x67, 0x6f, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x74,
+ 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x2e,
+ 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6c, 0x75,
+ 0x73, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70,
+ 0x6c, 0x61, 0x74, 0x65, 0x52, 0x18, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x61, 0x6e, 0x61,
+ 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x22, 0x7c,
+ 0x0a, 0x21, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x61, 0x6c,
0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a,
- 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
- 0x65, 0x22, 0x20, 0x0a, 0x1e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6e, 0x61, 0x6c, 0x79,
+ 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x43, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61,
+ 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
+ 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x61, 0x77, 0x46, 0x6f,
+ 0x72, 0x6d, 0x61, 0x74, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xdd, 0x01, 0x0a,
+ 0x22, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x61, 0x6c, 0x79,
0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x22, 0x34, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65,
- 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x6e, 0x73, 0x65, 0x12, 0x98, 0x01, 0x0a, 0x19, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f,
+ 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74,
+ 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62,
+ 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67,
+ 0x6f, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72,
+ 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x2e, 0x61,
+ 0x70, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6c, 0x75, 0x73,
+ 0x74, 0x65, 0x72, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c,
+ 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x17, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x41, 0x6e,
+ 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x12,
+ 0x0a, 0x03, 0x72, 0x61, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x03, 0x72,
+ 0x61, 0x77, 0x42, 0x08, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x8e, 0x01, 0x0a,
+ 0x15, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x75, 0x6e, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70,
+ 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73,
+ 0x70, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x43, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d,
+ 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74,
+ 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
+ 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x61, 0x77, 0x46,
+ 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xab, 0x01,
+ 0x0a, 0x16, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x75, 0x6e,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x73, 0x0a, 0x0c, 0x61, 0x6e, 0x61, 0x6c,
+ 0x79, 0x73, 0x69, 0x73, 0x5f, 0x72, 0x75, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4e,
+ 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69,
+ 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
+ 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x72, 0x6f, 0x6c,
+ 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
+ 0x61, 0x31, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x75, 0x6e, 0x48, 0x00,
+ 0x52, 0x0b, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x75, 0x6e, 0x12, 0x12, 0x0a,
+ 0x03, 0x72, 0x61, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x03, 0x72, 0x61,
+ 0x77, 0x42, 0x08, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x4d, 0x0a, 0x1d, 0x44,
+ 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d,
+ 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x0a, 0x1e, 0x44, 0x65,
+ 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70,
+ 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3a, 0x0a, 0x24,
+ 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x61,
+ 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x27, 0x0a, 0x25, 0x44, 0x65, 0x6c, 0x65,
+ 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69,
+ 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x34, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a,
+ 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x4e, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x50,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01,
+ 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f, 0x2e, 0x61, 0x70,
+ 0x69, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52,
+ 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x58, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74,
+ 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x04,
+ 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x69, 0x74,
+ 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b,
+ 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x31,
+ 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c,
+ 0x65, 0x22, 0x59, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e,
+ 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
+ 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x41, 0x0a, 0x11,
+ 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22,
+ 0x14, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa6, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6c,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x73, 0x5f, 0x72, 0x65, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, 0x73,
+ 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x43, 0x0a, 0x06, 0x66, 0x6f, 0x72,
+ 0x6d, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x61, 0x6b, 0x75, 0x69,
+ 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x61, 0x77,
+ 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xd0,
+ 0x01, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x45, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x2f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b,
+ 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72,
+ 0x62, 0x61, 0x63, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c,
+ 0x65, 0x48, 0x00, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x58, 0x0a, 0x09, 0x72, 0x65, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67,
+ 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
+ 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e,
+ 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x48, 0x00, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x03, 0x72, 0x61, 0x77, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c,
+ 0x48, 0x00, 0x52, 0x03, 0x72, 0x61, 0x77, 0x42, 0x08, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c,
+ 0x74, 0x22, 0x52, 0x0a, 0x06, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x12, 0x48, 0x0a, 0x06, 0x63,
+ 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x69,
+ 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
+ 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76,
+ 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x06, 0x63,
+ 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x22, 0xfd, 0x01, 0x0a, 0x0c, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
+ 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x4b, 0x0a, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x61,
+ 0x69, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x61, 0x6b, 0x75, 0x69,
+ 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6c, 0x61,
+ 0x69, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x69, 0x6d,
+ 0x73, 0x12, 0x67, 0x0a, 0x10, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x64, 0x65,
+ 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67, 0x69,
+ 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
+ 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76,
+ 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x48, 0x00, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x75,
+ 0x72, 0x63, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x42, 0x09, 0x0a, 0x07, 0x72, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x54, 0x0a, 0x0d, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f,
+ 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61,
+ 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
+ 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x4f, 0x0a, 0x10, 0x4c,
+ 0x69, 0x73, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x4e, 0x0a, 0x19, 0x4c, 0x69, 0x73,
- 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73,
- 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f, 0x2e,
- 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x76, 0x65, 0x6e,
- 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x58, 0x0a, 0x11, 0x43, 0x72, 0x65,
+ 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x73, 0x5f,
+ 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52,
+ 0x0b, 0x61, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0xb2, 0x01, 0x0a,
+ 0x11, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x45, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61,
+ 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e,
+ 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x6f,
+ 0x6c, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x56, 0x0a, 0x09, 0x72, 0x65, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67,
+ 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
+ 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e,
+ 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x73, 0x22, 0xfe, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a,
+ 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c,
+ 0x65, 0x12, 0x4b, 0x0a, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x73,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
+ 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
+ 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x73,
+ 0x48, 0x00, 0x52, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x12, 0x67,
+ 0x0a, 0x10, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69,
+ 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75,
+ 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72,
+ 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x31, 0x61, 0x6c,
+ 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x44, 0x65, 0x74,
+ 0x61, 0x69, 0x6c, 0x73, 0x48, 0x00, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x42, 0x09, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x22, 0x55, 0x0a, 0x0e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e,
+ 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69,
+ 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52,
+ 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x58, 0x0a, 0x11, 0x55, 0x70, 0x64,
0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43,
0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67,
0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e,
0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72,
- 0x6f, 0x6c, 0x65, 0x22, 0x59, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c,
+ 0x6f, 0x6c, 0x65, 0x22, 0x59, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c,
0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x04, 0x72, 0x6f, 0x6c,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62,
0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67,
0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
0x68, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x41,
- 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x0a, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65,
+ 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x22, 0x68, 0x0a, 0x26, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69,
+ 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d,
+ 0x61, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x0b, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x6d, 0x61, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
+ 0x32, 0x1d, 0x2e, 0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f,
+ 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x52,
+ 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x73, 0x22, 0x98, 0x01, 0x0a, 0x23,
+ 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c,
+ 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
- 0x65, 0x22, 0x14, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa6, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x52,
- 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72,
- 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f,
- 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x73, 0x5f, 0x72,
- 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b,
- 0x61, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x43, 0x0a, 0x06, 0x66,
- 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x61, 0x6b,
- 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52,
- 0x61, 0x77, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
- 0x22, 0xd0, 0x01, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e,
- 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69,
- 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52,
- 0x6f, 0x6c, 0x65, 0x48, 0x00, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x58, 0x0a, 0x09, 0x72,
- 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38,
- 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69,
- 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61,
- 0x63, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52,
- 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x48, 0x00, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f,
- 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x03, 0x72, 0x61, 0x77, 0x18, 0x03, 0x20, 0x01,
- 0x28, 0x0c, 0x48, 0x00, 0x52, 0x03, 0x72, 0x61, 0x77, 0x42, 0x08, 0x0a, 0x06, 0x72, 0x65, 0x73,
- 0x75, 0x6c, 0x74, 0x22, 0x52, 0x0a, 0x06, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x12, 0x48, 0x0a,
- 0x06, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e,
- 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74,
- 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63,
- 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52,
- 0x06, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x22, 0xfd, 0x01, 0x0a, 0x0c, 0x47, 0x72, 0x61, 0x6e,
- 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a,
- 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65,
- 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x4b, 0x0a, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x63,
- 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x61, 0x6b,
- 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43,
- 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x61,
- 0x69, 0x6d, 0x73, 0x12, 0x67, 0x0a, 0x10, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f,
- 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e,
- 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74,
- 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63,
- 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
- 0x63, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x48, 0x00, 0x52, 0x0f, 0x72, 0x65, 0x73,
- 0x6f, 0x75, 0x72, 0x63, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x42, 0x09, 0x0a, 0x07,
- 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x54, 0x0a, 0x0d, 0x47, 0x72, 0x61, 0x6e, 0x74,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e,
- 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f,
- 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
- 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x4f, 0x0a,
- 0x10, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x61,
- 0x73, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x08, 0x52, 0x0b, 0x61, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0xb2,
- 0x01, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20,
- 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
- 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70,
- 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
- 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x56, 0x0a, 0x09, 0x72,
- 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38,
- 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69,
- 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61,
- 0x63, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52,
- 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
- 0x63, 0x65, 0x73, 0x22, 0xfe, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12,
- 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72,
- 0x6f, 0x6c, 0x65, 0x12, 0x4b, 0x0a, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x61, 0x69,
- 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74,
- 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
- 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6c, 0x61, 0x69,
- 0x6d, 0x73, 0x48, 0x00, 0x52, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x73,
- 0x12, 0x67, 0x0a, 0x10, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x64, 0x65, 0x74,
- 0x61, 0x69, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67, 0x69, 0x74,
- 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b,
- 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x31,
- 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x44,
- 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x48, 0x00, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
- 0x63, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x42, 0x09, 0x0a, 0x07, 0x72, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x22, 0x55, 0x0a, 0x0e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f,
- 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61,
- 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
- 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x58, 0x0a, 0x11, 0x55,
- 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x12, 0x43, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f,
- 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69,
- 0x74, 0x79, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61,
- 0x63, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52,
- 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x59, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52,
- 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x04, 0x72,
- 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x69, 0x74, 0x68,
- 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x6b, 0x61,
- 0x72, 0x67, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x72, 0x62, 0x61, 0x63, 0x2e, 0x76, 0x31, 0x61,
- 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65,
- 0x22, 0x41, 0x0a, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73,
- 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61,
- 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f,
- 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a,
- 0x65, 0x63, 0x74, 0x22, 0x68, 0x0a, 0x26, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79,
- 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x4d, 0x61, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a,
- 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x6d, 0x61, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03,
- 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e,
- 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61,
- 0x70, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x73, 0x22, 0x98, 0x01,
- 0x0a, 0x23, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d,
- 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12,
- 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
- 0x61, 0x6d, 0x65, 0x12, 0x43, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x03, 0x20,
- 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e,
- 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31,
- 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x61, 0x77, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74,
- 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0x84, 0x01, 0x0a, 0x24, 0x47, 0x65, 0x74,
- 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65,
- 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x12, 0x3e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x6d, 0x61, 0x70, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f, 0x2e, 0x61,
- 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x4d, 0x61, 0x70, 0x48, 0x00, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61,
- 0x70, 0x12, 0x12, 0x0a, 0x03, 0x72, 0x61, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00,
- 0x52, 0x03, 0x72, 0x61, 0x77, 0x42, 0x08, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22,
- 0x3e, 0x0a, 0x22, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54,
- 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22,
- 0x5b, 0x0a, 0x23, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54,
- 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74,
- 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f,
- 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x63,
- 0x72, 0x65, 0x74, 0x52, 0x07, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x22, 0x95, 0x01, 0x0a,
- 0x20, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70,
- 0x6c, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e,
- 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
- 0x43, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32,
- 0x2b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67,
- 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
- 0x61, 0x31, 0x2e, 0x52, 0x61, 0x77, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x06, 0x66, 0x6f,
- 0x72, 0x6d, 0x61, 0x74, 0x22, 0x77, 0x0a, 0x21, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79,
- 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65,
- 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x06, 0x73, 0x65, 0x63,
- 0x72, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6b, 0x38, 0x73, 0x2e,
- 0x69, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53,
- 0x65, 0x63, 0x72, 0x65, 0x74, 0x48, 0x00, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12,
+ 0x65, 0x12, 0x43, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x0e, 0x32, 0x2b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
+ 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
+ 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x61, 0x77, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x06,
+ 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0x84, 0x01, 0x0a, 0x24, 0x47, 0x65, 0x74, 0x41, 0x6e,
+ 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x3e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f, 0x2e, 0x61, 0x70, 0x69,
+ 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d,
+ 0x61, 0x70, 0x48, 0x00, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x12,
0x12, 0x0a, 0x03, 0x72, 0x61, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x03,
- 0x72, 0x61, 0x77, 0x42, 0x08, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2a, 0x51, 0x0a,
- 0x09, 0x52, 0x61, 0x77, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x16, 0x52, 0x41,
- 0x57, 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
- 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x52, 0x41, 0x57, 0x5f, 0x46, 0x4f,
- 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x4a, 0x53, 0x4f, 0x4e, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x52,
- 0x41, 0x57, 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x59, 0x41, 0x4d, 0x4c, 0x10, 0x02,
- 0x32, 0x83, 0x3c, 0x0a, 0x0c, 0x4b, 0x61, 0x72, 0x67, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
- 0x65, 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
- 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
- 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76,
- 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69,
- 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e,
+ 0x72, 0x61, 0x77, 0x42, 0x08, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x3e, 0x0a,
+ 0x22, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d,
+ 0x70, 0x6c, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x5b, 0x0a,
+ 0x23, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d,
+ 0x70, 0x6c, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x18,
+ 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f, 0x2e, 0x61,
+ 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x63, 0x72, 0x65,
+ 0x74, 0x52, 0x07, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x22, 0x95, 0x01, 0x0a, 0x20, 0x47,
+ 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61,
+ 0x74, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x43, 0x0a,
+ 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e,
0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e,
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
- 0x2e, 0x47, 0x65, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x43, 0x6f,
- 0x6e, 0x66, 0x69, 0x67, 0x12, 0x32, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
- 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76,
- 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74,
- 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
- 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43,
- 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x86, 0x01,
- 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x12, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
- 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
- 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x43, 0x6f,
- 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x61, 0x6b,
+ 0x2e, 0x52, 0x61, 0x77, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d,
+ 0x61, 0x74, 0x22, 0x77, 0x0a, 0x21, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69,
+ 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f,
+ 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x63,
+ 0x72, 0x65, 0x74, 0x48, 0x00, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x12, 0x0a,
+ 0x03, 0x72, 0x61, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x03, 0x72, 0x61,
+ 0x77, 0x42, 0x08, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2a, 0x51, 0x0a, 0x09, 0x52,
+ 0x61, 0x77, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x16, 0x52, 0x41, 0x57, 0x5f,
+ 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
+ 0x45, 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x52, 0x41, 0x57, 0x5f, 0x46, 0x4f, 0x52, 0x4d,
+ 0x41, 0x54, 0x5f, 0x4a, 0x53, 0x4f, 0x4e, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x52, 0x41, 0x57,
+ 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x59, 0x41, 0x4d, 0x4c, 0x10, 0x02, 0x32, 0x90,
+ 0x40, 0x0a, 0x0c, 0x4b, 0x61, 0x72, 0x67, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12,
+ 0x83, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e,
+ 0x66, 0x6f, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
+ 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61,
+ 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
+ 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b,
0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47,
- 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x0a, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4c,
- 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x33, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
- 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76,
- 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x67,
- 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69,
+ 0x65, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x12, 0x32, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
+ 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61,
+ 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
+ 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
+ 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x86, 0x01, 0x0a, 0x0f,
+ 0x47, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
+ 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67,
+ 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
+ 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x61, 0x6b, 0x75, 0x69,
0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
- 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x64, 0x6d,
- 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
- 0x83, 0x01, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
- 0x63, 0x65, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
+ 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74,
+ 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x0a, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x67,
+ 0x69, 0x6e, 0x12, 0x33, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61,
- 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f,
- 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b,
- 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43,
- 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x9b, 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
- 0x4f, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
- 0x12, 0x3f, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72,
+ 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x69, 0x6e,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
+ 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x64, 0x6d, 0x69, 0x6e,
+ 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01,
+ 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72,
0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
- 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x55, 0x70, 0x64, 0x61,
- 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x1a, 0x40, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
- 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
- 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x55, 0x70, 0x64,
+ 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69,
+ 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65,
0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65,
- 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
- 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
- 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x6e, 0x73, 0x65, 0x12, 0x9b, 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72,
+ 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3f,
+ 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f,
+ 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
+ 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
- 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67,
+ 0x40, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67,
0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
- 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
- 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x44, 0x65,
- 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x37, 0x2e, 0x61,
- 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73,
- 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
- 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
- 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
- 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52,
- 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
- 0x77, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x74, 0x61, 0x67, 0x65, 0x73, 0x12, 0x33, 0x2e,
+ 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
+ 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76,
+ 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65,
+ 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e,
0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e,
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
- 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x74, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
- 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61,
- 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x74, 0x61, 0x67, 0x65, 0x73,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74,
- 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x12, 0x33, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
- 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
- 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6d,
- 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x61, 0x6b,
+ 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65,
+ 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75,
+ 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72,
+ 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65,
+ 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e,
+ 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31,
+ 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a,
+ 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x74, 0x61, 0x67, 0x65, 0x73, 0x12, 0x33, 0x2e, 0x61, 0x6b,
0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c,
- 0x69, 0x73, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x12, 0x71, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x31, 0x2e,
- 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e,
- 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
- 0x2e, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x1a, 0x32, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72,
- 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
- 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7c, 0x0a, 0x0b, 0x57, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61,
- 0x67, 0x65, 0x73, 0x12, 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e,
- 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31,
- 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x67,
- 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x61, 0x6b, 0x75, 0x69,
- 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
- 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x61, 0x74,
- 0x63, 0x68, 0x53, 0x74, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x30, 0x01, 0x12, 0x7a, 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, 0x61, 0x67,
- 0x65, 0x12, 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
- 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
- 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, 0x61, 0x67, 0x65,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
- 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
- 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74,
- 0x65, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d,
- 0x0a, 0x0c, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x35,
- 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f,
- 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
- 0x31, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
- 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
- 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68,
- 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01,
- 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x73,
- 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72,
+ 0x69, 0x73, 0x74, 0x53, 0x74, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72,
0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
- 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f,
- 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69,
+ 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x74, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6d,
+ 0x61, 0x67, 0x65, 0x73, 0x12, 0x33, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
+ 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76,
+ 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6d, 0x61, 0x67,
+ 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69,
0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73,
- 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x0f, 0x57, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x6f,
- 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
- 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
- 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68,
- 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x1a, 0x39, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
- 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
- 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74,
- 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x7d,
- 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35,
+ 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x71, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x31, 0x2e, 0x61, 0x6b,
+ 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
+ 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47,
+ 0x65, 0x74, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32,
0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f,
0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
- 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
- 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
- 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6d,
- 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x85, 0x01,
- 0x0a, 0x0e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e,
- 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72,
- 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
- 0x68, 0x61, 0x31, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69,
- 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69,
- 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
- 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x61, 0x74,
- 0x63, 0x68, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x50,
- 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74,
- 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
- 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x62, 0x6f, 0x72,
- 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
+ 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x7c, 0x0a, 0x0b, 0x57, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x67, 0x65,
+ 0x73, 0x12, 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
- 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74,
- 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x80, 0x01, 0x0a, 0x0d,
- 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x36, 0x2e,
- 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e,
- 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
- 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
+ 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x67, 0x65, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
+ 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68,
+ 0x53, 0x74, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01,
+ 0x12, 0x7a, 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12,
+ 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67,
+ 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
+ 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
- 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50,
- 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77,
- 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x33, 0x2e, 0x61,
+ 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53,
+ 0x74, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x0c,
+ 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x35, 0x2e, 0x61,
0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73,
0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
- 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x1a, 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
- 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
- 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x50,
- 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x35, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
- 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
- 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50,
- 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36,
+ 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e,
+ 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31,
+ 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x74,
+ 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x0e,
+ 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x37,
0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f,
0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
- 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x41, 0x70, 0x70, 0x72, 0x6f,
- 0x76, 0x65, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69,
- 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
- 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x70, 0x70,
- 0x72, 0x6f, 0x76, 0x65, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
- 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61,
- 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x46, 0x72, 0x65,
- 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x80, 0x01, 0x0a,
- 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x36,
+ 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
+ 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50,
+ 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x88, 0x01, 0x0a, 0x0f, 0x57, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x6f, 0x6d, 0x6f,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
+ 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
+ 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72,
+ 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x39, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67,
+ 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
+ 0x61, 0x31, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x7d, 0x0a, 0x0c,
+ 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x2e, 0x61,
+ 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73,
+ 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
+ 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e,
+ 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31,
+ 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74,
+ 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x85, 0x01, 0x0a, 0x0e,
+ 0x57, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37,
0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f,
0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
- 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
+ 0x31, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
+ 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68,
+ 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x30, 0x01, 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x50, 0x72, 0x6f,
+ 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
- 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
- 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
- 0x77, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x33, 0x2e,
- 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e,
- 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
- 0x2e, 0x47, 0x65, 0x74, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
- 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61,
- 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x50, 0x72, 0x6f,
- 0x6d, 0x6f, 0x74, 0x65, 0x54, 0x6f, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x37, 0x2e, 0x61, 0x6b,
+ 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x50,
+ 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67,
+ 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
+ 0x61, 0x31, 0x2e, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x69, 0x6f,
+ 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x80, 0x01, 0x0a, 0x0d, 0x44, 0x65,
+ 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x36, 0x2e, 0x61, 0x6b,
0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50,
- 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x54, 0x6f, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
- 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76,
- 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x54,
- 0x6f, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8c,
- 0x01, 0x0a, 0x11, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x44, 0x6f, 0x77, 0x6e, 0x73, 0x74,
- 0x72, 0x65, 0x61, 0x6d, 0x12, 0x3a, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
- 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76,
- 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x44,
- 0x6f, 0x77, 0x6e, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x1a, 0x3b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72,
- 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
- 0x68, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x44, 0x6f, 0x77, 0x6e, 0x73,
- 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a,
- 0x0c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x35, 0x2e,
- 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e,
- 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
- 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
- 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76,
- 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x46, 0x72, 0x65,
- 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8f, 0x01, 0x0a,
- 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x41, 0x6c,
- 0x69, 0x61, 0x73, 0x12, 0x3b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e,
+ 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44,
+ 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e,
0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31,
- 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x72, 0x65,
- 0x69, 0x67, 0x68, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x1a, 0x3c, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72,
- 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
- 0x68, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68,
- 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x71,
- 0x0a, 0x08, 0x52, 0x65, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x31, 0x2e, 0x61, 0x6b, 0x75,
+ 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x0a,
+ 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x33, 0x2e, 0x61, 0x6b, 0x75,
0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72,
- 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65,
- 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e,
- 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e,
- 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
- 0x2e, 0x52, 0x65, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x11, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x56, 0x65, 0x72, 0x69, 0x66,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3a, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
+ 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65,
+ 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67,
+ 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
+ 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x35, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
+ 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
+ 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x61,
+ 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73,
+ 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65,
+ 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
- 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x62, 0x6f, 0x72, 0x74,
- 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e,
- 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31,
- 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x56, 0x65, 0x72, 0x69,
- 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75,
- 0x73, 0x65, 0x73, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e,
- 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31,
- 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x61, 0x72, 0x65, 0x68,
- 0x6f, 0x75, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61,
+ 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x72, 0x6f,
+ 0x76, 0x65, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72,
+ 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
+ 0x68, 0x61, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x46, 0x72, 0x65, 0x69, 0x67,
+ 0x68, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x80, 0x01, 0x0a, 0x0d, 0x44,
+ 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x36, 0x2e, 0x61,
0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73,
0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
- 0x4c, 0x69, 0x73, 0x74, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x73, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x57, 0x61, 0x72,
- 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x12, 0x35, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
- 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
- 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x61, 0x72,
- 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e,
- 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e,
- 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
- 0x2e, 0x47, 0x65, 0x74, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x0f, 0x57, 0x61, 0x74, 0x63, 0x68, 0x57,
- 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x73, 0x12, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69,
- 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
- 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x61, 0x74,
- 0x63, 0x68, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e,
- 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31,
- 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x57, 0x61, 0x72, 0x65,
- 0x68, 0x6f, 0x75, 0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01,
- 0x12, 0x86, 0x01, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x57, 0x61, 0x72, 0x65, 0x68,
- 0x6f, 0x75, 0x73, 0x65, 0x12, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
+ 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76,
- 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x57, 0x61,
- 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39,
+ 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72,
+ 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a,
+ 0x0a, 0x47, 0x65, 0x74, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x33, 0x2e, 0x61, 0x6b,
+ 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
+ 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47,
+ 0x65, 0x74, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72,
+ 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
+ 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x6d, 0x6f,
+ 0x74, 0x65, 0x54, 0x6f, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69,
+ 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f,
+ 0x6d, 0x6f, 0x74, 0x65, 0x54, 0x6f, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
+ 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61,
+ 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x54, 0x6f, 0x53,
+ 0x74, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a,
+ 0x11, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x44, 0x6f, 0x77, 0x6e, 0x73, 0x74, 0x72, 0x65,
+ 0x61, 0x6d, 0x12, 0x3a, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
+ 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61,
+ 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x44, 0x6f, 0x77,
+ 0x6e, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b,
0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f,
0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
- 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73,
- 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x89, 0x01, 0x0a, 0x10, 0x52, 0x65,
- 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x12, 0x39,
+ 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x44, 0x6f, 0x77, 0x6e, 0x73, 0x74, 0x72,
+ 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x0c, 0x51,
+ 0x75, 0x65, 0x72, 0x79, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x35, 0x2e, 0x61, 0x6b,
+ 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
+ 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x51,
+ 0x75, 0x65, 0x72, 0x79, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
+ 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61,
+ 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x46, 0x72, 0x65, 0x69, 0x67,
+ 0x68, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8f, 0x01, 0x0a, 0x12, 0x55,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x41, 0x6c, 0x69, 0x61,
+ 0x73, 0x12, 0x3b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
+ 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
+ 0x70, 0x68, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x72, 0x65, 0x69, 0x67,
+ 0x68, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c,
0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f,
0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
- 0x31, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75,
- 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x61, 0x6b, 0x75, 0x69,
- 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
- 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x66,
- 0x72, 0x65, 0x73, 0x68, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
- 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x3a, 0x2e, 0x61, 0x6b,
+ 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x72, 0x65, 0x69, 0x67, 0x68, 0x74, 0x41,
+ 0x6c, 0x69, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x71, 0x0a, 0x08,
+ 0x52, 0x65, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x31, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74,
+ 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
+ 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x76, 0x65,
+ 0x72, 0x69, 0x66, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x61, 0x6b,
0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43,
- 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
- 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
- 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
- 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43,
- 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x3a, 0x2e, 0x61, 0x6b, 0x75,
+ 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52,
+ 0x65, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x8c, 0x01, 0x0a, 0x11, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3a, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
+ 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
+ 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x56, 0x65,
+ 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x3b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
+ 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
+ 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83,
+ 0x01, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65,
+ 0x73, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
+ 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
+ 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75,
+ 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b, 0x75,
0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72,
- 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65,
- 0x6c, 0x65, 0x74, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
- 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
- 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
- 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65,
- 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
- 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
- 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x72, 0x65,
- 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
- 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67,
- 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
- 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c,
- 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x86, 0x01, 0x0a, 0x0f, 0x4c, 0x69,
- 0x73, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x38, 0x2e,
- 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e,
- 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
- 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
+ 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69,
+ 0x73, 0x74, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x57, 0x61, 0x72, 0x65, 0x68,
+ 0x6f, 0x75, 0x73, 0x65, 0x12, 0x35, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
+ 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76,
+ 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x61, 0x72, 0x65, 0x68,
+ 0x6f, 0x75, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x61, 0x6b,
+ 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
+ 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47,
+ 0x65, 0x74, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x0f, 0x57, 0x61, 0x74, 0x63, 0x68, 0x57, 0x61, 0x72,
+ 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x73, 0x12, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
+ 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68,
+ 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x39, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
+ 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
+ 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f,
+ 0x75, 0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x86,
+ 0x01, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75,
+ 0x73, 0x65, 0x12, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
+ 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61,
+ 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x57, 0x61, 0x72, 0x65,
+ 0x68, 0x6f, 0x75, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x61,
+ 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73,
+ 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
+ 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x89, 0x01, 0x0a, 0x10, 0x52, 0x65, 0x66, 0x72,
+ 0x65, 0x73, 0x68, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x12, 0x39, 0x2e, 0x61,
+ 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73,
+ 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
+ 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
- 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43,
+ 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65,
+ 0x73, 0x68, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x72,
+ 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x3a, 0x2e, 0x61, 0x6b, 0x75, 0x69,
+ 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
+ 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
+ 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43,
0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x72, 0x65,
+ 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x72, 0x65,
0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x3a, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74,
0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
- 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61,
+ 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65,
0x74, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76,
- 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x72,
+ 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x72,
0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x12, 0x98, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73,
- 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x12, 0x3e, 0x2e, 0x61, 0x6b,
- 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c,
- 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c,
- 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x61, 0x6b,
+ 0x65, 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74,
+ 0x69, 0x61, 0x6c, 0x73, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
+ 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76,
+ 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65,
+ 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e,
+ 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e,
+ 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
+ 0x2e, 0x47, 0x65, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x86, 0x01, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74,
+ 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x38, 0x2e, 0x61, 0x6b,
0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c,
- 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c,
- 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x92, 0x01, 0x0a,
- 0x13, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70,
- 0x6c, 0x61, 0x74, 0x65, 0x12, 0x3c, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
- 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76,
- 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79,
- 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x1a, 0x3d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
+ 0x69, 0x73, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
+ 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
+ 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x72, 0x65,
+ 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x12, 0x8c, 0x01, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65,
+ 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x3a, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
+ 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
+ 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
+ 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61,
+ 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x72, 0x65, 0x64,
+ 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x98, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73,
+ 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x12, 0x3e, 0x2e, 0x61, 0x6b, 0x75, 0x69,
+ 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73,
+ 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74,
+ 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x61, 0x6b, 0x75, 0x69,
+ 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73,
+ 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74,
+ 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x92, 0x01, 0x0a, 0x13, 0x47,
+ 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61,
+ 0x74, 0x65, 0x12, 0x3c, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61,
0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69,
- 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x12, 0x9b, 0x01, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6e, 0x61, 0x6c,
- 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x3f, 0x2e, 0x61,
+ 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x3d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72,
+ 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
+ 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54,
+ 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x9b, 0x01, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73,
+ 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x3f, 0x2e, 0x61, 0x6b, 0x75,
+ 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72,
+ 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65,
+ 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70,
+ 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x40, 0x2e, 0x61, 0x6b,
+ 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
+ 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44,
+ 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d,
+ 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xad, 0x01,
+ 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x61,
+ 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x12, 0x45,
+ 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f,
+ 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
+ 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x61,
+ 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x46, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
+ 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
+ 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x75,
+ 0x73, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70,
+ 0x6c, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xa7, 0x01,
+ 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x61, 0x6c,
+ 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x43, 0x2e, 0x61,
0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73,
0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
- 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65,
- 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x40, 0x2e,
+ 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73,
+ 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x44, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
+ 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
+ 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x41,
+ 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xb0, 0x01, 0x0a, 0x1d, 0x44, 0x65, 0x6c, 0x65,
+ 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69,
+ 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x46, 0x2e, 0x61, 0x6b, 0x75, 0x69,
+ 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c,
+ 0x65, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73,
+ 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x47, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
+ 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
+ 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74,
+ 0x65, 0x72, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61,
+ 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x0e, 0x47,
+ 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x75, 0x6e, 0x12, 0x37, 0x2e,
0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e,
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
- 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54,
- 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
- 0x83, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52,
- 0x75, 0x6e, 0x12, 0x37, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
- 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61,
- 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69,
- 0x73, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b,
- 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47,
- 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xb3, 0x01, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e,
- 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6f,
- 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x73, 0x12, 0x47, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74,
- 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
- 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74,
- 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65,
- 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x1a, 0x48, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
- 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
- 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69,
+ 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x75, 0x6e, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
+ 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
+ 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61,
+ 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x12, 0xb3, 0x01, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69,
0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d,
- 0x61, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xad, 0x01, 0x0a, 0x1c,
- 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c,
- 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x12, 0x45, 0x2e, 0x61,
+ 0x61, 0x70, 0x73, 0x12, 0x47, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e,
+ 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31,
+ 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79,
+ 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x4d, 0x61, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x48, 0x2e, 0x61,
0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73,
0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
- 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c,
- 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x1a, 0x46, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e,
- 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31,
- 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73,
- 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x4d, 0x61, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xaa, 0x01, 0x0a, 0x1b,
0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70,
- 0x6c, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x12, 0x44, 0x2e, 0x61, 0x6b,
- 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c,
- 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c,
- 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x1a, 0x45, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
- 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
- 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69,
- 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xa4, 0x01, 0x0a, 0x19, 0x47, 0x65, 0x74,
- 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65,
- 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x42, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
+ 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x73, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xad, 0x01, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x41, 0x6e,
+ 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x12, 0x45, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
+ 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6e,
+ 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x46,
+ 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f,
+ 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
+ 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d,
+ 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xaa, 0x01, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x41,
+ 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x53,
+ 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x12, 0x44, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
- 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61,
- 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63,
- 0x72, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x43, 0x2e, 0x61, 0x6b, 0x75,
- 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72,
- 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65,
- 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74,
- 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
- 0x8c, 0x01, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x45,
- 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x3a, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
- 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
- 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f,
- 0x6a, 0x65, 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x1a, 0x3b, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
- 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
- 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
- 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77,
- 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x33, 0x2e, 0x61,
+ 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e,
+ 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x53, 0x65,
+ 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x45, 0x2e, 0x61,
0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73,
0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
- 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x1a, 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
+ 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70,
+ 0x6c, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0xa4, 0x01, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79,
+ 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65,
+ 0x74, 0x12, 0x42, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61,
0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c,
- 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74,
- 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x33, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
+ 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73,
+ 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x43, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
- 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52,
- 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x61, 0x6b, 0x75,
- 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72,
- 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65,
- 0x6c, 0x65, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x12, 0x6e, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x30, 0x2e, 0x61, 0x6b,
- 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47,
- 0x65, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e,
- 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e,
- 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
- 0x2e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x12, 0x68, 0x0a, 0x05, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x2e, 0x2e, 0x61, 0x6b, 0x75, 0x69,
- 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
- 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x61,
- 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x61, 0x6b, 0x75, 0x69,
- 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76,
- 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x61,
- 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x09, 0x4c, 0x69,
- 0x73, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x32, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
+ 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x61, 0x6c,
+ 0x79, 0x73, 0x69, 0x73, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x53, 0x65, 0x63, 0x72,
+ 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x11, 0x4c,
+ 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73,
+ 0x12, 0x3a, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72,
+ 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
+ 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x45,
+ 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x61,
+ 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73,
+ 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x0a, 0x43, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x33, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
- 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52,
- 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x61, 0x6b,
- 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c,
- 0x69, 0x73, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x12, 0x6b, 0x0a, 0x06, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x2f, 0x2e, 0x61, 0x6b, 0x75,
- 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72,
- 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65,
- 0x76, 0x6f, 0x6b, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x61, 0x6b,
- 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52,
- 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a,
- 0x0a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x33, 0x2e, 0x61, 0x6b,
+ 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
+ 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x61,
+ 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73,
+ 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
+ 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x77, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65,
+ 0x12, 0x33, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72,
+ 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
+ 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
+ 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
+ 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52,
+ 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6e, 0x0a, 0x07, 0x47,
+ 0x65, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x30, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
+ 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
+ 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6c,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74,
+ 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
+ 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52,
+ 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x68, 0x0a, 0x05, 0x47,
+ 0x72, 0x61, 0x6e, 0x74, 0x12, 0x2e, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
+ 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76,
+ 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f,
+ 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76,
+ 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x6c,
+ 0x65, 0x73, 0x12, 0x32, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b,
+ 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61,
+ 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
+ 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
+ 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x6f,
+ 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6b, 0x0a, 0x06, 0x52,
+ 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x2f, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69,
+ 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
+ 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
+ 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
+ 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x0a, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x33, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e,
+ 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
+ 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x61, 0x6b,
0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65,
0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x55,
- 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x1a, 0x34, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72,
- 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
- 0x68, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x97, 0x02, 0x0a, 0x24, 0x63, 0x6f, 0x6d, 0x2e, 0x61,
- 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73,
- 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42,
- 0x0c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a,
- 0x3c, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x6b, 0x75, 0x69,
- 0x74, 0x79, 0x2f, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x61, 0x70, 0x69,
- 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
- 0x31, 0x3b, 0x73, 0x76, 0x63, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xa2, 0x02, 0x04,
- 0x41, 0x49, 0x4b, 0x53, 0xaa, 0x02, 0x20, 0x41, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x49, 0x6f,
- 0x2e, 0x4b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56,
- 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xca, 0x02, 0x20, 0x41, 0x6b, 0x75, 0x69, 0x74, 0x79,
- 0x5c, 0x49, 0x6f, 0x5c, 0x4b, 0x61, 0x72, 0x67, 0x6f, 0x5c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
- 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xe2, 0x02, 0x2c, 0x41, 0x6b, 0x75,
- 0x69, 0x74, 0x79, 0x5c, 0x49, 0x6f, 0x5c, 0x4b, 0x61, 0x72, 0x67, 0x6f, 0x5c, 0x53, 0x65, 0x72,
- 0x76, 0x69, 0x63, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x5c, 0x47, 0x50,
- 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x24, 0x41, 0x6b, 0x75, 0x69,
- 0x74, 0x79, 0x3a, 0x3a, 0x49, 0x6f, 0x3a, 0x3a, 0x4b, 0x61, 0x72, 0x67, 0x6f, 0x3a, 0x3a, 0x53,
- 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
- 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x42, 0x97, 0x02, 0x0a, 0x24, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79,
+ 0x2e, 0x69, 0x6f, 0x2e, 0x6b, 0x61, 0x72, 0x67, 0x6f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42, 0x0c, 0x53, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3c, 0x67, 0x69, 0x74, 0x68,
+ 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2f, 0x6b, 0x61,
+ 0x72, 0x67, 0x6f, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, 0x73, 0x76, 0x63,
+ 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xa2, 0x02, 0x04, 0x41, 0x49, 0x4b, 0x53, 0xaa,
+ 0x02, 0x20, 0x41, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x2e, 0x49, 0x6f, 0x2e, 0x4b, 0x61, 0x72, 0x67,
+ 0x6f, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68,
+ 0x61, 0x31, 0xca, 0x02, 0x20, 0x41, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x5c, 0x49, 0x6f, 0x5c, 0x4b,
+ 0x61, 0x72, 0x67, 0x6f, 0x5c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5c, 0x56, 0x31, 0x61,
+ 0x6c, 0x70, 0x68, 0x61, 0x31, 0xe2, 0x02, 0x2c, 0x41, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x5c, 0x49,
+ 0x6f, 0x5c, 0x4b, 0x61, 0x72, 0x67, 0x6f, 0x5c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5c,
+ 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61,
+ 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x24, 0x41, 0x6b, 0x75, 0x69, 0x74, 0x79, 0x3a, 0x3a, 0x49,
+ 0x6f, 0x3a, 0x3a, 0x4b, 0x61, 0x72, 0x67, 0x6f, 0x3a, 0x3a, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x33,
}
var (
@@ -8648,7 +9031,7 @@ func file_service_v1alpha1_service_proto_rawDescGZIP() []byte {
}
var file_service_v1alpha1_service_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
-var file_service_v1alpha1_service_proto_msgTypes = make([]protoimpl.MessageInfo, 131)
+var file_service_v1alpha1_service_proto_msgTypes = make([]protoimpl.MessageInfo, 137)
var file_service_v1alpha1_service_proto_goTypes = []interface{}{
(RawFormat)(0), // 0: akuity.io.kargo.service.v1alpha1.RawFormat
(*ComponentVersions)(nil), // 1: akuity.io.kargo.service.v1alpha1.ComponentVersions
@@ -8748,250 +9131,266 @@ var file_service_v1alpha1_service_proto_goTypes = []interface{}{
(*ListAnalysisTemplatesResponse)(nil), // 95: akuity.io.kargo.service.v1alpha1.ListAnalysisTemplatesResponse
(*GetAnalysisTemplateRequest)(nil), // 96: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateRequest
(*GetAnalysisTemplateResponse)(nil), // 97: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateResponse
- (*GetAnalysisRunRequest)(nil), // 98: akuity.io.kargo.service.v1alpha1.GetAnalysisRunRequest
- (*GetAnalysisRunResponse)(nil), // 99: akuity.io.kargo.service.v1alpha1.GetAnalysisRunResponse
- (*DeleteAnalysisTemplateRequest)(nil), // 100: akuity.io.kargo.service.v1alpha1.DeleteAnalysisTemplateRequest
- (*DeleteAnalysisTemplateResponse)(nil), // 101: akuity.io.kargo.service.v1alpha1.DeleteAnalysisTemplateResponse
- (*ListProjectEventsRequest)(nil), // 102: akuity.io.kargo.service.v1alpha1.ListProjectEventsRequest
- (*ListProjectEventsResponse)(nil), // 103: akuity.io.kargo.service.v1alpha1.ListProjectEventsResponse
- (*CreateRoleRequest)(nil), // 104: akuity.io.kargo.service.v1alpha1.CreateRoleRequest
- (*CreateRoleResponse)(nil), // 105: akuity.io.kargo.service.v1alpha1.CreateRoleResponse
- (*DeleteRoleRequest)(nil), // 106: akuity.io.kargo.service.v1alpha1.DeleteRoleRequest
- (*DeleteRoleResponse)(nil), // 107: akuity.io.kargo.service.v1alpha1.DeleteRoleResponse
- (*GetRoleRequest)(nil), // 108: akuity.io.kargo.service.v1alpha1.GetRoleRequest
- (*GetRoleResponse)(nil), // 109: akuity.io.kargo.service.v1alpha1.GetRoleResponse
- (*Claims)(nil), // 110: akuity.io.kargo.service.v1alpha1.Claims
- (*GrantRequest)(nil), // 111: akuity.io.kargo.service.v1alpha1.GrantRequest
- (*GrantResponse)(nil), // 112: akuity.io.kargo.service.v1alpha1.GrantResponse
- (*ListRolesRequest)(nil), // 113: akuity.io.kargo.service.v1alpha1.ListRolesRequest
- (*ListRolesResponse)(nil), // 114: akuity.io.kargo.service.v1alpha1.ListRolesResponse
- (*RevokeRequest)(nil), // 115: akuity.io.kargo.service.v1alpha1.RevokeRequest
- (*RevokeResponse)(nil), // 116: akuity.io.kargo.service.v1alpha1.RevokeResponse
- (*UpdateRoleRequest)(nil), // 117: akuity.io.kargo.service.v1alpha1.UpdateRoleRequest
- (*UpdateRoleResponse)(nil), // 118: akuity.io.kargo.service.v1alpha1.UpdateRoleResponse
- (*ListAnalysisTemplateConfigMapsRequest)(nil), // 119: akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateConfigMapsRequest
- (*ListAnalysisTemplateConfigMapsResponse)(nil), // 120: akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateConfigMapsResponse
- (*GetAnalysisTemplateConfigMapRequest)(nil), // 121: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateConfigMapRequest
- (*GetAnalysisTemplateConfigMapResponse)(nil), // 122: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateConfigMapResponse
- (*ListAnalysisTemplateSecretsRequest)(nil), // 123: akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateSecretsRequest
- (*ListAnalysisTemplateSecretsResponse)(nil), // 124: akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateSecretsResponse
- (*GetAnalysisTemplateSecretRequest)(nil), // 125: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateSecretRequest
- (*GetAnalysisTemplateSecretResponse)(nil), // 126: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateSecretResponse
- nil, // 127: akuity.io.kargo.service.v1alpha1.GetConfigResponse.ArgocdShardsEntry
- nil, // 128: akuity.io.kargo.service.v1alpha1.ListImagesResponse.ImagesEntry
- nil, // 129: akuity.io.kargo.service.v1alpha1.TagMap.TagsEntry
- nil, // 130: akuity.io.kargo.service.v1alpha1.ImageStageMap.StagesEntry
- nil, // 131: akuity.io.kargo.service.v1alpha1.QueryFreightResponse.GroupsEntry
- (*timestamppb.Timestamp)(nil), // 132: google.protobuf.Timestamp
- (*v1alpha1.Stage)(nil), // 133: github.com.akuity.kargo.api.v1alpha1.Stage
- (*v1alpha1.Promotion)(nil), // 134: github.com.akuity.kargo.api.v1alpha1.Promotion
- (*v1alpha1.Project)(nil), // 135: github.com.akuity.kargo.api.v1alpha1.Project
- (*v1alpha1.Freight)(nil), // 136: github.com.akuity.kargo.api.v1alpha1.Freight
- (*v1alpha1.Warehouse)(nil), // 137: github.com.akuity.kargo.api.v1alpha1.Warehouse
- (*v1.Secret)(nil), // 138: k8s.io.api.core.v1.Secret
- (*v1alpha11.AnalysisTemplate)(nil), // 139: github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.AnalysisTemplate
- (*v1alpha11.AnalysisRun)(nil), // 140: github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.AnalysisRun
- (*v1.Event)(nil), // 141: k8s.io.api.core.v1.Event
- (*v1alpha12.Role)(nil), // 142: github.com.akuity.kargo.api.rbac.v1alpha1.Role
- (*v1alpha12.RoleResources)(nil), // 143: github.com.akuity.kargo.api.rbac.v1alpha1.RoleResources
- (*v1alpha12.Claim)(nil), // 144: github.com.akuity.kargo.api.rbac.v1alpha1.Claim
- (*v1alpha12.ResourceDetails)(nil), // 145: github.com.akuity.kargo.api.rbac.v1alpha1.ResourceDetails
- (*v1.ConfigMap)(nil), // 146: k8s.io.api.core.v1.ConfigMap
+ (*ListClusterAnalysisTemplatesRequest)(nil), // 98: akuity.io.kargo.service.v1alpha1.ListClusterAnalysisTemplatesRequest
+ (*ListClusterAnalysisTemplatesResponse)(nil), // 99: akuity.io.kargo.service.v1alpha1.ListClusterAnalysisTemplatesResponse
+ (*GetClusterAnalysisTemplateRequest)(nil), // 100: akuity.io.kargo.service.v1alpha1.GetClusterAnalysisTemplateRequest
+ (*GetClusterAnalysisTemplateResponse)(nil), // 101: akuity.io.kargo.service.v1alpha1.GetClusterAnalysisTemplateResponse
+ (*GetAnalysisRunRequest)(nil), // 102: akuity.io.kargo.service.v1alpha1.GetAnalysisRunRequest
+ (*GetAnalysisRunResponse)(nil), // 103: akuity.io.kargo.service.v1alpha1.GetAnalysisRunResponse
+ (*DeleteAnalysisTemplateRequest)(nil), // 104: akuity.io.kargo.service.v1alpha1.DeleteAnalysisTemplateRequest
+ (*DeleteAnalysisTemplateResponse)(nil), // 105: akuity.io.kargo.service.v1alpha1.DeleteAnalysisTemplateResponse
+ (*DeleteClusterAnalysisTemplateRequest)(nil), // 106: akuity.io.kargo.service.v1alpha1.DeleteClusterAnalysisTemplateRequest
+ (*DeleteClusterAnalysisTemplateResponse)(nil), // 107: akuity.io.kargo.service.v1alpha1.DeleteClusterAnalysisTemplateResponse
+ (*ListProjectEventsRequest)(nil), // 108: akuity.io.kargo.service.v1alpha1.ListProjectEventsRequest
+ (*ListProjectEventsResponse)(nil), // 109: akuity.io.kargo.service.v1alpha1.ListProjectEventsResponse
+ (*CreateRoleRequest)(nil), // 110: akuity.io.kargo.service.v1alpha1.CreateRoleRequest
+ (*CreateRoleResponse)(nil), // 111: akuity.io.kargo.service.v1alpha1.CreateRoleResponse
+ (*DeleteRoleRequest)(nil), // 112: akuity.io.kargo.service.v1alpha1.DeleteRoleRequest
+ (*DeleteRoleResponse)(nil), // 113: akuity.io.kargo.service.v1alpha1.DeleteRoleResponse
+ (*GetRoleRequest)(nil), // 114: akuity.io.kargo.service.v1alpha1.GetRoleRequest
+ (*GetRoleResponse)(nil), // 115: akuity.io.kargo.service.v1alpha1.GetRoleResponse
+ (*Claims)(nil), // 116: akuity.io.kargo.service.v1alpha1.Claims
+ (*GrantRequest)(nil), // 117: akuity.io.kargo.service.v1alpha1.GrantRequest
+ (*GrantResponse)(nil), // 118: akuity.io.kargo.service.v1alpha1.GrantResponse
+ (*ListRolesRequest)(nil), // 119: akuity.io.kargo.service.v1alpha1.ListRolesRequest
+ (*ListRolesResponse)(nil), // 120: akuity.io.kargo.service.v1alpha1.ListRolesResponse
+ (*RevokeRequest)(nil), // 121: akuity.io.kargo.service.v1alpha1.RevokeRequest
+ (*RevokeResponse)(nil), // 122: akuity.io.kargo.service.v1alpha1.RevokeResponse
+ (*UpdateRoleRequest)(nil), // 123: akuity.io.kargo.service.v1alpha1.UpdateRoleRequest
+ (*UpdateRoleResponse)(nil), // 124: akuity.io.kargo.service.v1alpha1.UpdateRoleResponse
+ (*ListAnalysisTemplateConfigMapsRequest)(nil), // 125: akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateConfigMapsRequest
+ (*ListAnalysisTemplateConfigMapsResponse)(nil), // 126: akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateConfigMapsResponse
+ (*GetAnalysisTemplateConfigMapRequest)(nil), // 127: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateConfigMapRequest
+ (*GetAnalysisTemplateConfigMapResponse)(nil), // 128: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateConfigMapResponse
+ (*ListAnalysisTemplateSecretsRequest)(nil), // 129: akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateSecretsRequest
+ (*ListAnalysisTemplateSecretsResponse)(nil), // 130: akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateSecretsResponse
+ (*GetAnalysisTemplateSecretRequest)(nil), // 131: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateSecretRequest
+ (*GetAnalysisTemplateSecretResponse)(nil), // 132: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateSecretResponse
+ nil, // 133: akuity.io.kargo.service.v1alpha1.GetConfigResponse.ArgocdShardsEntry
+ nil, // 134: akuity.io.kargo.service.v1alpha1.ListImagesResponse.ImagesEntry
+ nil, // 135: akuity.io.kargo.service.v1alpha1.TagMap.TagsEntry
+ nil, // 136: akuity.io.kargo.service.v1alpha1.ImageStageMap.StagesEntry
+ nil, // 137: akuity.io.kargo.service.v1alpha1.QueryFreightResponse.GroupsEntry
+ (*timestamppb.Timestamp)(nil), // 138: google.protobuf.Timestamp
+ (*v1alpha1.Stage)(nil), // 139: github.com.akuity.kargo.api.v1alpha1.Stage
+ (*v1alpha1.Promotion)(nil), // 140: github.com.akuity.kargo.api.v1alpha1.Promotion
+ (*v1alpha1.Project)(nil), // 141: github.com.akuity.kargo.api.v1alpha1.Project
+ (*v1alpha1.Freight)(nil), // 142: github.com.akuity.kargo.api.v1alpha1.Freight
+ (*v1alpha1.Warehouse)(nil), // 143: github.com.akuity.kargo.api.v1alpha1.Warehouse
+ (*v1.Secret)(nil), // 144: k8s.io.api.core.v1.Secret
+ (*v1alpha11.AnalysisTemplate)(nil), // 145: github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.AnalysisTemplate
+ (*v1alpha11.ClusterAnalysisTemplate)(nil), // 146: github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.ClusterAnalysisTemplate
+ (*v1alpha11.AnalysisRun)(nil), // 147: github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.AnalysisRun
+ (*v1.Event)(nil), // 148: k8s.io.api.core.v1.Event
+ (*v1alpha12.Role)(nil), // 149: github.com.akuity.kargo.api.rbac.v1alpha1.Role
+ (*v1alpha12.RoleResources)(nil), // 150: github.com.akuity.kargo.api.rbac.v1alpha1.RoleResources
+ (*v1alpha12.Claim)(nil), // 151: github.com.akuity.kargo.api.rbac.v1alpha1.Claim
+ (*v1alpha12.ResourceDetails)(nil), // 152: github.com.akuity.kargo.api.rbac.v1alpha1.ResourceDetails
+ (*v1.ConfigMap)(nil), // 153: k8s.io.api.core.v1.ConfigMap
}
var file_service_v1alpha1_service_proto_depIdxs = []int32{
2, // 0: akuity.io.kargo.service.v1alpha1.ComponentVersions.server:type_name -> akuity.io.kargo.service.v1alpha1.VersionInfo
2, // 1: akuity.io.kargo.service.v1alpha1.ComponentVersions.cli:type_name -> akuity.io.kargo.service.v1alpha1.VersionInfo
- 132, // 2: akuity.io.kargo.service.v1alpha1.VersionInfo.build_time:type_name -> google.protobuf.Timestamp
+ 138, // 2: akuity.io.kargo.service.v1alpha1.VersionInfo.build_time:type_name -> google.protobuf.Timestamp
2, // 3: akuity.io.kargo.service.v1alpha1.GetVersionInfoResponse.version_info:type_name -> akuity.io.kargo.service.v1alpha1.VersionInfo
- 127, // 4: akuity.io.kargo.service.v1alpha1.GetConfigResponse.argocd_shards:type_name -> akuity.io.kargo.service.v1alpha1.GetConfigResponse.ArgocdShardsEntry
+ 133, // 4: akuity.io.kargo.service.v1alpha1.GetConfigResponse.argocd_shards:type_name -> akuity.io.kargo.service.v1alpha1.GetConfigResponse.ArgocdShardsEntry
10, // 5: akuity.io.kargo.service.v1alpha1.GetPublicConfigResponse.oidc_config:type_name -> akuity.io.kargo.service.v1alpha1.OIDCConfig
14, // 6: akuity.io.kargo.service.v1alpha1.CreateResourceResponse.results:type_name -> akuity.io.kargo.service.v1alpha1.CreateResourceResult
17, // 7: akuity.io.kargo.service.v1alpha1.CreateOrUpdateResourceResponse.results:type_name -> akuity.io.kargo.service.v1alpha1.CreateOrUpdateResourceResult
20, // 8: akuity.io.kargo.service.v1alpha1.UpdateResourceResponse.results:type_name -> akuity.io.kargo.service.v1alpha1.UpdateResourceResult
23, // 9: akuity.io.kargo.service.v1alpha1.DeleteResourceResponse.results:type_name -> akuity.io.kargo.service.v1alpha1.DeleteResourceResult
- 133, // 10: akuity.io.kargo.service.v1alpha1.ListStagesResponse.stages:type_name -> github.com.akuity.kargo.api.v1alpha1.Stage
- 128, // 11: akuity.io.kargo.service.v1alpha1.ListImagesResponse.images:type_name -> akuity.io.kargo.service.v1alpha1.ListImagesResponse.ImagesEntry
- 129, // 12: akuity.io.kargo.service.v1alpha1.TagMap.tags:type_name -> akuity.io.kargo.service.v1alpha1.TagMap.TagsEntry
- 130, // 13: akuity.io.kargo.service.v1alpha1.ImageStageMap.stages:type_name -> akuity.io.kargo.service.v1alpha1.ImageStageMap.StagesEntry
+ 139, // 10: akuity.io.kargo.service.v1alpha1.ListStagesResponse.stages:type_name -> github.com.akuity.kargo.api.v1alpha1.Stage
+ 134, // 11: akuity.io.kargo.service.v1alpha1.ListImagesResponse.images:type_name -> akuity.io.kargo.service.v1alpha1.ListImagesResponse.ImagesEntry
+ 135, // 12: akuity.io.kargo.service.v1alpha1.TagMap.tags:type_name -> akuity.io.kargo.service.v1alpha1.TagMap.TagsEntry
+ 136, // 13: akuity.io.kargo.service.v1alpha1.ImageStageMap.stages:type_name -> akuity.io.kargo.service.v1alpha1.ImageStageMap.StagesEntry
0, // 14: akuity.io.kargo.service.v1alpha1.GetStageRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
- 133, // 15: akuity.io.kargo.service.v1alpha1.GetStageResponse.stage:type_name -> github.com.akuity.kargo.api.v1alpha1.Stage
- 133, // 16: akuity.io.kargo.service.v1alpha1.WatchStagesResponse.stage:type_name -> github.com.akuity.kargo.api.v1alpha1.Stage
- 133, // 17: akuity.io.kargo.service.v1alpha1.RefreshStageResponse.stage:type_name -> github.com.akuity.kargo.api.v1alpha1.Stage
- 134, // 18: akuity.io.kargo.service.v1alpha1.ListPromotionsResponse.promotions:type_name -> github.com.akuity.kargo.api.v1alpha1.Promotion
- 134, // 19: akuity.io.kargo.service.v1alpha1.WatchPromotionsResponse.promotion:type_name -> github.com.akuity.kargo.api.v1alpha1.Promotion
+ 139, // 15: akuity.io.kargo.service.v1alpha1.GetStageResponse.stage:type_name -> github.com.akuity.kargo.api.v1alpha1.Stage
+ 139, // 16: akuity.io.kargo.service.v1alpha1.WatchStagesResponse.stage:type_name -> github.com.akuity.kargo.api.v1alpha1.Stage
+ 139, // 17: akuity.io.kargo.service.v1alpha1.RefreshStageResponse.stage:type_name -> github.com.akuity.kargo.api.v1alpha1.Stage
+ 140, // 18: akuity.io.kargo.service.v1alpha1.ListPromotionsResponse.promotions:type_name -> github.com.akuity.kargo.api.v1alpha1.Promotion
+ 140, // 19: akuity.io.kargo.service.v1alpha1.WatchPromotionsResponse.promotion:type_name -> github.com.akuity.kargo.api.v1alpha1.Promotion
0, // 20: akuity.io.kargo.service.v1alpha1.GetPromotionRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
- 134, // 21: akuity.io.kargo.service.v1alpha1.GetPromotionResponse.promotion:type_name -> github.com.akuity.kargo.api.v1alpha1.Promotion
- 134, // 22: akuity.io.kargo.service.v1alpha1.WatchPromotionResponse.promotion:type_name -> github.com.akuity.kargo.api.v1alpha1.Promotion
+ 140, // 21: akuity.io.kargo.service.v1alpha1.GetPromotionResponse.promotion:type_name -> github.com.akuity.kargo.api.v1alpha1.Promotion
+ 140, // 22: akuity.io.kargo.service.v1alpha1.WatchPromotionResponse.promotion:type_name -> github.com.akuity.kargo.api.v1alpha1.Promotion
0, // 23: akuity.io.kargo.service.v1alpha1.GetProjectRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
- 135, // 24: akuity.io.kargo.service.v1alpha1.GetProjectResponse.project:type_name -> github.com.akuity.kargo.api.v1alpha1.Project
- 135, // 25: akuity.io.kargo.service.v1alpha1.ListProjectsResponse.projects:type_name -> github.com.akuity.kargo.api.v1alpha1.Project
+ 141, // 24: akuity.io.kargo.service.v1alpha1.GetProjectResponse.project:type_name -> github.com.akuity.kargo.api.v1alpha1.Project
+ 141, // 25: akuity.io.kargo.service.v1alpha1.ListProjectsResponse.projects:type_name -> github.com.akuity.kargo.api.v1alpha1.Project
0, // 26: akuity.io.kargo.service.v1alpha1.GetFreightRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
- 136, // 27: akuity.io.kargo.service.v1alpha1.GetFreightResponse.freight:type_name -> github.com.akuity.kargo.api.v1alpha1.Freight
- 134, // 28: akuity.io.kargo.service.v1alpha1.PromoteToStageResponse.promotion:type_name -> github.com.akuity.kargo.api.v1alpha1.Promotion
- 134, // 29: akuity.io.kargo.service.v1alpha1.PromoteDownstreamResponse.promotions:type_name -> github.com.akuity.kargo.api.v1alpha1.Promotion
- 131, // 30: akuity.io.kargo.service.v1alpha1.QueryFreightResponse.groups:type_name -> akuity.io.kargo.service.v1alpha1.QueryFreightResponse.GroupsEntry
- 136, // 31: akuity.io.kargo.service.v1alpha1.FreightList.freight:type_name -> github.com.akuity.kargo.api.v1alpha1.Freight
- 137, // 32: akuity.io.kargo.service.v1alpha1.ListWarehousesResponse.warehouses:type_name -> github.com.akuity.kargo.api.v1alpha1.Warehouse
+ 142, // 27: akuity.io.kargo.service.v1alpha1.GetFreightResponse.freight:type_name -> github.com.akuity.kargo.api.v1alpha1.Freight
+ 140, // 28: akuity.io.kargo.service.v1alpha1.PromoteToStageResponse.promotion:type_name -> github.com.akuity.kargo.api.v1alpha1.Promotion
+ 140, // 29: akuity.io.kargo.service.v1alpha1.PromoteDownstreamResponse.promotions:type_name -> github.com.akuity.kargo.api.v1alpha1.Promotion
+ 137, // 30: akuity.io.kargo.service.v1alpha1.QueryFreightResponse.groups:type_name -> akuity.io.kargo.service.v1alpha1.QueryFreightResponse.GroupsEntry
+ 142, // 31: akuity.io.kargo.service.v1alpha1.FreightList.freight:type_name -> github.com.akuity.kargo.api.v1alpha1.Freight
+ 143, // 32: akuity.io.kargo.service.v1alpha1.ListWarehousesResponse.warehouses:type_name -> github.com.akuity.kargo.api.v1alpha1.Warehouse
0, // 33: akuity.io.kargo.service.v1alpha1.GetWarehouseRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
- 137, // 34: akuity.io.kargo.service.v1alpha1.GetWarehouseResponse.warehouse:type_name -> github.com.akuity.kargo.api.v1alpha1.Warehouse
- 137, // 35: akuity.io.kargo.service.v1alpha1.WatchWarehousesResponse.warehouse:type_name -> github.com.akuity.kargo.api.v1alpha1.Warehouse
- 137, // 36: akuity.io.kargo.service.v1alpha1.RefreshWarehouseResponse.warehouse:type_name -> github.com.akuity.kargo.api.v1alpha1.Warehouse
- 138, // 37: akuity.io.kargo.service.v1alpha1.CreateCredentialsResponse.credentials:type_name -> k8s.io.api.core.v1.Secret
+ 143, // 34: akuity.io.kargo.service.v1alpha1.GetWarehouseResponse.warehouse:type_name -> github.com.akuity.kargo.api.v1alpha1.Warehouse
+ 143, // 35: akuity.io.kargo.service.v1alpha1.WatchWarehousesResponse.warehouse:type_name -> github.com.akuity.kargo.api.v1alpha1.Warehouse
+ 143, // 36: akuity.io.kargo.service.v1alpha1.RefreshWarehouseResponse.warehouse:type_name -> github.com.akuity.kargo.api.v1alpha1.Warehouse
+ 144, // 37: akuity.io.kargo.service.v1alpha1.CreateCredentialsResponse.credentials:type_name -> k8s.io.api.core.v1.Secret
0, // 38: akuity.io.kargo.service.v1alpha1.GetCredentialsRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
- 138, // 39: akuity.io.kargo.service.v1alpha1.GetCredentialsResponse.credentials:type_name -> k8s.io.api.core.v1.Secret
- 138, // 40: akuity.io.kargo.service.v1alpha1.ListCredentialsResponse.credentials:type_name -> k8s.io.api.core.v1.Secret
- 138, // 41: akuity.io.kargo.service.v1alpha1.UpdateCredentialsResponse.credentials:type_name -> k8s.io.api.core.v1.Secret
- 139, // 42: akuity.io.kargo.service.v1alpha1.ListAnalysisTemplatesResponse.analysis_templates:type_name -> github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.AnalysisTemplate
+ 144, // 39: akuity.io.kargo.service.v1alpha1.GetCredentialsResponse.credentials:type_name -> k8s.io.api.core.v1.Secret
+ 144, // 40: akuity.io.kargo.service.v1alpha1.ListCredentialsResponse.credentials:type_name -> k8s.io.api.core.v1.Secret
+ 144, // 41: akuity.io.kargo.service.v1alpha1.UpdateCredentialsResponse.credentials:type_name -> k8s.io.api.core.v1.Secret
+ 145, // 42: akuity.io.kargo.service.v1alpha1.ListAnalysisTemplatesResponse.analysis_templates:type_name -> github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.AnalysisTemplate
0, // 43: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
- 139, // 44: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateResponse.analysis_template:type_name -> github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.AnalysisTemplate
- 0, // 45: akuity.io.kargo.service.v1alpha1.GetAnalysisRunRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
- 140, // 46: akuity.io.kargo.service.v1alpha1.GetAnalysisRunResponse.analysis_run:type_name -> github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.AnalysisRun
- 141, // 47: akuity.io.kargo.service.v1alpha1.ListProjectEventsResponse.events:type_name -> k8s.io.api.core.v1.Event
- 142, // 48: akuity.io.kargo.service.v1alpha1.CreateRoleRequest.role:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
- 142, // 49: akuity.io.kargo.service.v1alpha1.CreateRoleResponse.role:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
- 0, // 50: akuity.io.kargo.service.v1alpha1.GetRoleRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
- 142, // 51: akuity.io.kargo.service.v1alpha1.GetRoleResponse.role:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
- 143, // 52: akuity.io.kargo.service.v1alpha1.GetRoleResponse.resources:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.RoleResources
- 144, // 53: akuity.io.kargo.service.v1alpha1.Claims.claims:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Claim
- 110, // 54: akuity.io.kargo.service.v1alpha1.GrantRequest.user_claims:type_name -> akuity.io.kargo.service.v1alpha1.Claims
- 145, // 55: akuity.io.kargo.service.v1alpha1.GrantRequest.resource_details:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.ResourceDetails
- 142, // 56: akuity.io.kargo.service.v1alpha1.GrantResponse.role:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
- 142, // 57: akuity.io.kargo.service.v1alpha1.ListRolesResponse.roles:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
- 143, // 58: akuity.io.kargo.service.v1alpha1.ListRolesResponse.resources:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.RoleResources
- 110, // 59: akuity.io.kargo.service.v1alpha1.RevokeRequest.user_claims:type_name -> akuity.io.kargo.service.v1alpha1.Claims
- 145, // 60: akuity.io.kargo.service.v1alpha1.RevokeRequest.resource_details:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.ResourceDetails
- 142, // 61: akuity.io.kargo.service.v1alpha1.RevokeResponse.role:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
- 142, // 62: akuity.io.kargo.service.v1alpha1.UpdateRoleRequest.role:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
- 142, // 63: akuity.io.kargo.service.v1alpha1.UpdateRoleResponse.role:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
- 146, // 64: akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateConfigMapsResponse.config_maps:type_name -> k8s.io.api.core.v1.ConfigMap
- 0, // 65: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateConfigMapRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
- 146, // 66: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateConfigMapResponse.config_map:type_name -> k8s.io.api.core.v1.ConfigMap
- 138, // 67: akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateSecretsResponse.secrets:type_name -> k8s.io.api.core.v1.Secret
- 0, // 68: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateSecretRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
- 138, // 69: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateSecretResponse.secret:type_name -> k8s.io.api.core.v1.Secret
- 6, // 70: akuity.io.kargo.service.v1alpha1.GetConfigResponse.ArgocdShardsEntry.value:type_name -> akuity.io.kargo.service.v1alpha1.ArgoCDShard
- 29, // 71: akuity.io.kargo.service.v1alpha1.ListImagesResponse.ImagesEntry.value:type_name -> akuity.io.kargo.service.v1alpha1.TagMap
- 30, // 72: akuity.io.kargo.service.v1alpha1.TagMap.TagsEntry.value:type_name -> akuity.io.kargo.service.v1alpha1.ImageStageMap
- 67, // 73: akuity.io.kargo.service.v1alpha1.QueryFreightResponse.GroupsEntry.value:type_name -> akuity.io.kargo.service.v1alpha1.FreightList
- 3, // 74: akuity.io.kargo.service.v1alpha1.KargoService.GetVersionInfo:input_type -> akuity.io.kargo.service.v1alpha1.GetVersionInfoRequest
- 5, // 75: akuity.io.kargo.service.v1alpha1.KargoService.GetConfig:input_type -> akuity.io.kargo.service.v1alpha1.GetConfigRequest
- 8, // 76: akuity.io.kargo.service.v1alpha1.KargoService.GetPublicConfig:input_type -> akuity.io.kargo.service.v1alpha1.GetPublicConfigRequest
- 11, // 77: akuity.io.kargo.service.v1alpha1.KargoService.AdminLogin:input_type -> akuity.io.kargo.service.v1alpha1.AdminLoginRequest
- 13, // 78: akuity.io.kargo.service.v1alpha1.KargoService.CreateResource:input_type -> akuity.io.kargo.service.v1alpha1.CreateResourceRequest
- 16, // 79: akuity.io.kargo.service.v1alpha1.KargoService.CreateOrUpdateResource:input_type -> akuity.io.kargo.service.v1alpha1.CreateOrUpdateResourceRequest
- 19, // 80: akuity.io.kargo.service.v1alpha1.KargoService.UpdateResource:input_type -> akuity.io.kargo.service.v1alpha1.UpdateResourceRequest
- 22, // 81: akuity.io.kargo.service.v1alpha1.KargoService.DeleteResource:input_type -> akuity.io.kargo.service.v1alpha1.DeleteResourceRequest
- 25, // 82: akuity.io.kargo.service.v1alpha1.KargoService.ListStages:input_type -> akuity.io.kargo.service.v1alpha1.ListStagesRequest
- 27, // 83: akuity.io.kargo.service.v1alpha1.KargoService.ListImages:input_type -> akuity.io.kargo.service.v1alpha1.ListImagesRequest
- 31, // 84: akuity.io.kargo.service.v1alpha1.KargoService.GetStage:input_type -> akuity.io.kargo.service.v1alpha1.GetStageRequest
- 33, // 85: akuity.io.kargo.service.v1alpha1.KargoService.WatchStages:input_type -> akuity.io.kargo.service.v1alpha1.WatchStagesRequest
- 35, // 86: akuity.io.kargo.service.v1alpha1.KargoService.DeleteStage:input_type -> akuity.io.kargo.service.v1alpha1.DeleteStageRequest
- 37, // 87: akuity.io.kargo.service.v1alpha1.KargoService.RefreshStage:input_type -> akuity.io.kargo.service.v1alpha1.RefreshStageRequest
- 39, // 88: akuity.io.kargo.service.v1alpha1.KargoService.ListPromotions:input_type -> akuity.io.kargo.service.v1alpha1.ListPromotionsRequest
- 41, // 89: akuity.io.kargo.service.v1alpha1.KargoService.WatchPromotions:input_type -> akuity.io.kargo.service.v1alpha1.WatchPromotionsRequest
- 43, // 90: akuity.io.kargo.service.v1alpha1.KargoService.GetPromotion:input_type -> akuity.io.kargo.service.v1alpha1.GetPromotionRequest
- 45, // 91: akuity.io.kargo.service.v1alpha1.KargoService.WatchPromotion:input_type -> akuity.io.kargo.service.v1alpha1.WatchPromotionRequest
- 47, // 92: akuity.io.kargo.service.v1alpha1.KargoService.AbortPromotion:input_type -> akuity.io.kargo.service.v1alpha1.AbortPromotionRequest
- 49, // 93: akuity.io.kargo.service.v1alpha1.KargoService.DeleteProject:input_type -> akuity.io.kargo.service.v1alpha1.DeleteProjectRequest
- 51, // 94: akuity.io.kargo.service.v1alpha1.KargoService.GetProject:input_type -> akuity.io.kargo.service.v1alpha1.GetProjectRequest
- 53, // 95: akuity.io.kargo.service.v1alpha1.KargoService.ListProjects:input_type -> akuity.io.kargo.service.v1alpha1.ListProjectsRequest
- 55, // 96: akuity.io.kargo.service.v1alpha1.KargoService.ApproveFreight:input_type -> akuity.io.kargo.service.v1alpha1.ApproveFreightRequest
- 57, // 97: akuity.io.kargo.service.v1alpha1.KargoService.DeleteFreight:input_type -> akuity.io.kargo.service.v1alpha1.DeleteFreightRequest
- 59, // 98: akuity.io.kargo.service.v1alpha1.KargoService.GetFreight:input_type -> akuity.io.kargo.service.v1alpha1.GetFreightRequest
- 61, // 99: akuity.io.kargo.service.v1alpha1.KargoService.PromoteToStage:input_type -> akuity.io.kargo.service.v1alpha1.PromoteToStageRequest
- 63, // 100: akuity.io.kargo.service.v1alpha1.KargoService.PromoteDownstream:input_type -> akuity.io.kargo.service.v1alpha1.PromoteDownstreamRequest
- 65, // 101: akuity.io.kargo.service.v1alpha1.KargoService.QueryFreight:input_type -> akuity.io.kargo.service.v1alpha1.QueryFreightRequest
- 68, // 102: akuity.io.kargo.service.v1alpha1.KargoService.UpdateFreightAlias:input_type -> akuity.io.kargo.service.v1alpha1.UpdateFreightAliasRequest
- 70, // 103: akuity.io.kargo.service.v1alpha1.KargoService.Reverify:input_type -> akuity.io.kargo.service.v1alpha1.ReverifyRequest
- 72, // 104: akuity.io.kargo.service.v1alpha1.KargoService.AbortVerification:input_type -> akuity.io.kargo.service.v1alpha1.AbortVerificationRequest
- 74, // 105: akuity.io.kargo.service.v1alpha1.KargoService.ListWarehouses:input_type -> akuity.io.kargo.service.v1alpha1.ListWarehousesRequest
- 76, // 106: akuity.io.kargo.service.v1alpha1.KargoService.GetWarehouse:input_type -> akuity.io.kargo.service.v1alpha1.GetWarehouseRequest
- 78, // 107: akuity.io.kargo.service.v1alpha1.KargoService.WatchWarehouses:input_type -> akuity.io.kargo.service.v1alpha1.WatchWarehousesRequest
- 80, // 108: akuity.io.kargo.service.v1alpha1.KargoService.DeleteWarehouse:input_type -> akuity.io.kargo.service.v1alpha1.DeleteWarehouseRequest
- 82, // 109: akuity.io.kargo.service.v1alpha1.KargoService.RefreshWarehouse:input_type -> akuity.io.kargo.service.v1alpha1.RefreshWarehouseRequest
- 84, // 110: akuity.io.kargo.service.v1alpha1.KargoService.CreateCredentials:input_type -> akuity.io.kargo.service.v1alpha1.CreateCredentialsRequest
- 86, // 111: akuity.io.kargo.service.v1alpha1.KargoService.DeleteCredentials:input_type -> akuity.io.kargo.service.v1alpha1.DeleteCredentialsRequest
- 88, // 112: akuity.io.kargo.service.v1alpha1.KargoService.GetCredentials:input_type -> akuity.io.kargo.service.v1alpha1.GetCredentialsRequest
- 90, // 113: akuity.io.kargo.service.v1alpha1.KargoService.ListCredentials:input_type -> akuity.io.kargo.service.v1alpha1.ListCredentialsRequest
- 92, // 114: akuity.io.kargo.service.v1alpha1.KargoService.UpdateCredentials:input_type -> akuity.io.kargo.service.v1alpha1.UpdateCredentialsRequest
- 94, // 115: akuity.io.kargo.service.v1alpha1.KargoService.ListAnalysisTemplates:input_type -> akuity.io.kargo.service.v1alpha1.ListAnalysisTemplatesRequest
- 96, // 116: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisTemplate:input_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateRequest
- 100, // 117: akuity.io.kargo.service.v1alpha1.KargoService.DeleteAnalysisTemplate:input_type -> akuity.io.kargo.service.v1alpha1.DeleteAnalysisTemplateRequest
- 98, // 118: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisRun:input_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisRunRequest
- 119, // 119: akuity.io.kargo.service.v1alpha1.KargoService.ListAnalysisTemplateConfigMaps:input_type -> akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateConfigMapsRequest
- 121, // 120: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisTemplateConfigMap:input_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateConfigMapRequest
- 123, // 121: akuity.io.kargo.service.v1alpha1.KargoService.ListAnalysisTemplateSecrets:input_type -> akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateSecretsRequest
- 125, // 122: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisTemplateSecret:input_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateSecretRequest
- 102, // 123: akuity.io.kargo.service.v1alpha1.KargoService.ListProjectEvents:input_type -> akuity.io.kargo.service.v1alpha1.ListProjectEventsRequest
- 104, // 124: akuity.io.kargo.service.v1alpha1.KargoService.CreateRole:input_type -> akuity.io.kargo.service.v1alpha1.CreateRoleRequest
- 106, // 125: akuity.io.kargo.service.v1alpha1.KargoService.DeleteRole:input_type -> akuity.io.kargo.service.v1alpha1.DeleteRoleRequest
- 108, // 126: akuity.io.kargo.service.v1alpha1.KargoService.GetRole:input_type -> akuity.io.kargo.service.v1alpha1.GetRoleRequest
- 111, // 127: akuity.io.kargo.service.v1alpha1.KargoService.Grant:input_type -> akuity.io.kargo.service.v1alpha1.GrantRequest
- 113, // 128: akuity.io.kargo.service.v1alpha1.KargoService.ListRoles:input_type -> akuity.io.kargo.service.v1alpha1.ListRolesRequest
- 115, // 129: akuity.io.kargo.service.v1alpha1.KargoService.Revoke:input_type -> akuity.io.kargo.service.v1alpha1.RevokeRequest
- 117, // 130: akuity.io.kargo.service.v1alpha1.KargoService.UpdateRole:input_type -> akuity.io.kargo.service.v1alpha1.UpdateRoleRequest
- 4, // 131: akuity.io.kargo.service.v1alpha1.KargoService.GetVersionInfo:output_type -> akuity.io.kargo.service.v1alpha1.GetVersionInfoResponse
- 7, // 132: akuity.io.kargo.service.v1alpha1.KargoService.GetConfig:output_type -> akuity.io.kargo.service.v1alpha1.GetConfigResponse
- 9, // 133: akuity.io.kargo.service.v1alpha1.KargoService.GetPublicConfig:output_type -> akuity.io.kargo.service.v1alpha1.GetPublicConfigResponse
- 12, // 134: akuity.io.kargo.service.v1alpha1.KargoService.AdminLogin:output_type -> akuity.io.kargo.service.v1alpha1.AdminLoginResponse
- 15, // 135: akuity.io.kargo.service.v1alpha1.KargoService.CreateResource:output_type -> akuity.io.kargo.service.v1alpha1.CreateResourceResponse
- 18, // 136: akuity.io.kargo.service.v1alpha1.KargoService.CreateOrUpdateResource:output_type -> akuity.io.kargo.service.v1alpha1.CreateOrUpdateResourceResponse
- 21, // 137: akuity.io.kargo.service.v1alpha1.KargoService.UpdateResource:output_type -> akuity.io.kargo.service.v1alpha1.UpdateResourceResponse
- 24, // 138: akuity.io.kargo.service.v1alpha1.KargoService.DeleteResource:output_type -> akuity.io.kargo.service.v1alpha1.DeleteResourceResponse
- 26, // 139: akuity.io.kargo.service.v1alpha1.KargoService.ListStages:output_type -> akuity.io.kargo.service.v1alpha1.ListStagesResponse
- 28, // 140: akuity.io.kargo.service.v1alpha1.KargoService.ListImages:output_type -> akuity.io.kargo.service.v1alpha1.ListImagesResponse
- 32, // 141: akuity.io.kargo.service.v1alpha1.KargoService.GetStage:output_type -> akuity.io.kargo.service.v1alpha1.GetStageResponse
- 34, // 142: akuity.io.kargo.service.v1alpha1.KargoService.WatchStages:output_type -> akuity.io.kargo.service.v1alpha1.WatchStagesResponse
- 36, // 143: akuity.io.kargo.service.v1alpha1.KargoService.DeleteStage:output_type -> akuity.io.kargo.service.v1alpha1.DeleteStageResponse
- 38, // 144: akuity.io.kargo.service.v1alpha1.KargoService.RefreshStage:output_type -> akuity.io.kargo.service.v1alpha1.RefreshStageResponse
- 40, // 145: akuity.io.kargo.service.v1alpha1.KargoService.ListPromotions:output_type -> akuity.io.kargo.service.v1alpha1.ListPromotionsResponse
- 42, // 146: akuity.io.kargo.service.v1alpha1.KargoService.WatchPromotions:output_type -> akuity.io.kargo.service.v1alpha1.WatchPromotionsResponse
- 44, // 147: akuity.io.kargo.service.v1alpha1.KargoService.GetPromotion:output_type -> akuity.io.kargo.service.v1alpha1.GetPromotionResponse
- 46, // 148: akuity.io.kargo.service.v1alpha1.KargoService.WatchPromotion:output_type -> akuity.io.kargo.service.v1alpha1.WatchPromotionResponse
- 48, // 149: akuity.io.kargo.service.v1alpha1.KargoService.AbortPromotion:output_type -> akuity.io.kargo.service.v1alpha1.AbortPromotionResponse
- 50, // 150: akuity.io.kargo.service.v1alpha1.KargoService.DeleteProject:output_type -> akuity.io.kargo.service.v1alpha1.DeleteProjectResponse
- 52, // 151: akuity.io.kargo.service.v1alpha1.KargoService.GetProject:output_type -> akuity.io.kargo.service.v1alpha1.GetProjectResponse
- 54, // 152: akuity.io.kargo.service.v1alpha1.KargoService.ListProjects:output_type -> akuity.io.kargo.service.v1alpha1.ListProjectsResponse
- 56, // 153: akuity.io.kargo.service.v1alpha1.KargoService.ApproveFreight:output_type -> akuity.io.kargo.service.v1alpha1.ApproveFreightResponse
- 58, // 154: akuity.io.kargo.service.v1alpha1.KargoService.DeleteFreight:output_type -> akuity.io.kargo.service.v1alpha1.DeleteFreightResponse
- 60, // 155: akuity.io.kargo.service.v1alpha1.KargoService.GetFreight:output_type -> akuity.io.kargo.service.v1alpha1.GetFreightResponse
- 62, // 156: akuity.io.kargo.service.v1alpha1.KargoService.PromoteToStage:output_type -> akuity.io.kargo.service.v1alpha1.PromoteToStageResponse
- 64, // 157: akuity.io.kargo.service.v1alpha1.KargoService.PromoteDownstream:output_type -> akuity.io.kargo.service.v1alpha1.PromoteDownstreamResponse
- 66, // 158: akuity.io.kargo.service.v1alpha1.KargoService.QueryFreight:output_type -> akuity.io.kargo.service.v1alpha1.QueryFreightResponse
- 69, // 159: akuity.io.kargo.service.v1alpha1.KargoService.UpdateFreightAlias:output_type -> akuity.io.kargo.service.v1alpha1.UpdateFreightAliasResponse
- 71, // 160: akuity.io.kargo.service.v1alpha1.KargoService.Reverify:output_type -> akuity.io.kargo.service.v1alpha1.ReverifyResponse
- 73, // 161: akuity.io.kargo.service.v1alpha1.KargoService.AbortVerification:output_type -> akuity.io.kargo.service.v1alpha1.AbortVerificationResponse
- 75, // 162: akuity.io.kargo.service.v1alpha1.KargoService.ListWarehouses:output_type -> akuity.io.kargo.service.v1alpha1.ListWarehousesResponse
- 77, // 163: akuity.io.kargo.service.v1alpha1.KargoService.GetWarehouse:output_type -> akuity.io.kargo.service.v1alpha1.GetWarehouseResponse
- 79, // 164: akuity.io.kargo.service.v1alpha1.KargoService.WatchWarehouses:output_type -> akuity.io.kargo.service.v1alpha1.WatchWarehousesResponse
- 81, // 165: akuity.io.kargo.service.v1alpha1.KargoService.DeleteWarehouse:output_type -> akuity.io.kargo.service.v1alpha1.DeleteWarehouseResponse
- 83, // 166: akuity.io.kargo.service.v1alpha1.KargoService.RefreshWarehouse:output_type -> akuity.io.kargo.service.v1alpha1.RefreshWarehouseResponse
- 85, // 167: akuity.io.kargo.service.v1alpha1.KargoService.CreateCredentials:output_type -> akuity.io.kargo.service.v1alpha1.CreateCredentialsResponse
- 87, // 168: akuity.io.kargo.service.v1alpha1.KargoService.DeleteCredentials:output_type -> akuity.io.kargo.service.v1alpha1.DeleteCredentialsResponse
- 89, // 169: akuity.io.kargo.service.v1alpha1.KargoService.GetCredentials:output_type -> akuity.io.kargo.service.v1alpha1.GetCredentialsResponse
- 91, // 170: akuity.io.kargo.service.v1alpha1.KargoService.ListCredentials:output_type -> akuity.io.kargo.service.v1alpha1.ListCredentialsResponse
- 93, // 171: akuity.io.kargo.service.v1alpha1.KargoService.UpdateCredentials:output_type -> akuity.io.kargo.service.v1alpha1.UpdateCredentialsResponse
- 95, // 172: akuity.io.kargo.service.v1alpha1.KargoService.ListAnalysisTemplates:output_type -> akuity.io.kargo.service.v1alpha1.ListAnalysisTemplatesResponse
- 97, // 173: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisTemplate:output_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateResponse
- 101, // 174: akuity.io.kargo.service.v1alpha1.KargoService.DeleteAnalysisTemplate:output_type -> akuity.io.kargo.service.v1alpha1.DeleteAnalysisTemplateResponse
- 99, // 175: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisRun:output_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisRunResponse
- 120, // 176: akuity.io.kargo.service.v1alpha1.KargoService.ListAnalysisTemplateConfigMaps:output_type -> akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateConfigMapsResponse
- 122, // 177: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisTemplateConfigMap:output_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateConfigMapResponse
- 124, // 178: akuity.io.kargo.service.v1alpha1.KargoService.ListAnalysisTemplateSecrets:output_type -> akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateSecretsResponse
- 126, // 179: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisTemplateSecret:output_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateSecretResponse
- 103, // 180: akuity.io.kargo.service.v1alpha1.KargoService.ListProjectEvents:output_type -> akuity.io.kargo.service.v1alpha1.ListProjectEventsResponse
- 105, // 181: akuity.io.kargo.service.v1alpha1.KargoService.CreateRole:output_type -> akuity.io.kargo.service.v1alpha1.CreateRoleResponse
- 107, // 182: akuity.io.kargo.service.v1alpha1.KargoService.DeleteRole:output_type -> akuity.io.kargo.service.v1alpha1.DeleteRoleResponse
- 109, // 183: akuity.io.kargo.service.v1alpha1.KargoService.GetRole:output_type -> akuity.io.kargo.service.v1alpha1.GetRoleResponse
- 112, // 184: akuity.io.kargo.service.v1alpha1.KargoService.Grant:output_type -> akuity.io.kargo.service.v1alpha1.GrantResponse
- 114, // 185: akuity.io.kargo.service.v1alpha1.KargoService.ListRoles:output_type -> akuity.io.kargo.service.v1alpha1.ListRolesResponse
- 116, // 186: akuity.io.kargo.service.v1alpha1.KargoService.Revoke:output_type -> akuity.io.kargo.service.v1alpha1.RevokeResponse
- 118, // 187: akuity.io.kargo.service.v1alpha1.KargoService.UpdateRole:output_type -> akuity.io.kargo.service.v1alpha1.UpdateRoleResponse
- 131, // [131:188] is the sub-list for method output_type
- 74, // [74:131] is the sub-list for method input_type
- 74, // [74:74] is the sub-list for extension type_name
- 74, // [74:74] is the sub-list for extension extendee
- 0, // [0:74] is the sub-list for field type_name
+ 145, // 44: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateResponse.analysis_template:type_name -> github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.AnalysisTemplate
+ 146, // 45: akuity.io.kargo.service.v1alpha1.ListClusterAnalysisTemplatesResponse.cluster_analysis_templates:type_name -> github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.ClusterAnalysisTemplate
+ 0, // 46: akuity.io.kargo.service.v1alpha1.GetClusterAnalysisTemplateRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
+ 146, // 47: akuity.io.kargo.service.v1alpha1.GetClusterAnalysisTemplateResponse.cluster_analysis_template:type_name -> github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.ClusterAnalysisTemplate
+ 0, // 48: akuity.io.kargo.service.v1alpha1.GetAnalysisRunRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
+ 147, // 49: akuity.io.kargo.service.v1alpha1.GetAnalysisRunResponse.analysis_run:type_name -> github.com.akuity.kargo.internal.controller.rollouts.api.v1alpha1.AnalysisRun
+ 148, // 50: akuity.io.kargo.service.v1alpha1.ListProjectEventsResponse.events:type_name -> k8s.io.api.core.v1.Event
+ 149, // 51: akuity.io.kargo.service.v1alpha1.CreateRoleRequest.role:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
+ 149, // 52: akuity.io.kargo.service.v1alpha1.CreateRoleResponse.role:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
+ 0, // 53: akuity.io.kargo.service.v1alpha1.GetRoleRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
+ 149, // 54: akuity.io.kargo.service.v1alpha1.GetRoleResponse.role:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
+ 150, // 55: akuity.io.kargo.service.v1alpha1.GetRoleResponse.resources:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.RoleResources
+ 151, // 56: akuity.io.kargo.service.v1alpha1.Claims.claims:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Claim
+ 116, // 57: akuity.io.kargo.service.v1alpha1.GrantRequest.user_claims:type_name -> akuity.io.kargo.service.v1alpha1.Claims
+ 152, // 58: akuity.io.kargo.service.v1alpha1.GrantRequest.resource_details:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.ResourceDetails
+ 149, // 59: akuity.io.kargo.service.v1alpha1.GrantResponse.role:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
+ 149, // 60: akuity.io.kargo.service.v1alpha1.ListRolesResponse.roles:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
+ 150, // 61: akuity.io.kargo.service.v1alpha1.ListRolesResponse.resources:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.RoleResources
+ 116, // 62: akuity.io.kargo.service.v1alpha1.RevokeRequest.user_claims:type_name -> akuity.io.kargo.service.v1alpha1.Claims
+ 152, // 63: akuity.io.kargo.service.v1alpha1.RevokeRequest.resource_details:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.ResourceDetails
+ 149, // 64: akuity.io.kargo.service.v1alpha1.RevokeResponse.role:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
+ 149, // 65: akuity.io.kargo.service.v1alpha1.UpdateRoleRequest.role:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
+ 149, // 66: akuity.io.kargo.service.v1alpha1.UpdateRoleResponse.role:type_name -> github.com.akuity.kargo.api.rbac.v1alpha1.Role
+ 153, // 67: akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateConfigMapsResponse.config_maps:type_name -> k8s.io.api.core.v1.ConfigMap
+ 0, // 68: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateConfigMapRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
+ 153, // 69: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateConfigMapResponse.config_map:type_name -> k8s.io.api.core.v1.ConfigMap
+ 144, // 70: akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateSecretsResponse.secrets:type_name -> k8s.io.api.core.v1.Secret
+ 0, // 71: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateSecretRequest.format:type_name -> akuity.io.kargo.service.v1alpha1.RawFormat
+ 144, // 72: akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateSecretResponse.secret:type_name -> k8s.io.api.core.v1.Secret
+ 6, // 73: akuity.io.kargo.service.v1alpha1.GetConfigResponse.ArgocdShardsEntry.value:type_name -> akuity.io.kargo.service.v1alpha1.ArgoCDShard
+ 29, // 74: akuity.io.kargo.service.v1alpha1.ListImagesResponse.ImagesEntry.value:type_name -> akuity.io.kargo.service.v1alpha1.TagMap
+ 30, // 75: akuity.io.kargo.service.v1alpha1.TagMap.TagsEntry.value:type_name -> akuity.io.kargo.service.v1alpha1.ImageStageMap
+ 67, // 76: akuity.io.kargo.service.v1alpha1.QueryFreightResponse.GroupsEntry.value:type_name -> akuity.io.kargo.service.v1alpha1.FreightList
+ 3, // 77: akuity.io.kargo.service.v1alpha1.KargoService.GetVersionInfo:input_type -> akuity.io.kargo.service.v1alpha1.GetVersionInfoRequest
+ 5, // 78: akuity.io.kargo.service.v1alpha1.KargoService.GetConfig:input_type -> akuity.io.kargo.service.v1alpha1.GetConfigRequest
+ 8, // 79: akuity.io.kargo.service.v1alpha1.KargoService.GetPublicConfig:input_type -> akuity.io.kargo.service.v1alpha1.GetPublicConfigRequest
+ 11, // 80: akuity.io.kargo.service.v1alpha1.KargoService.AdminLogin:input_type -> akuity.io.kargo.service.v1alpha1.AdminLoginRequest
+ 13, // 81: akuity.io.kargo.service.v1alpha1.KargoService.CreateResource:input_type -> akuity.io.kargo.service.v1alpha1.CreateResourceRequest
+ 16, // 82: akuity.io.kargo.service.v1alpha1.KargoService.CreateOrUpdateResource:input_type -> akuity.io.kargo.service.v1alpha1.CreateOrUpdateResourceRequest
+ 19, // 83: akuity.io.kargo.service.v1alpha1.KargoService.UpdateResource:input_type -> akuity.io.kargo.service.v1alpha1.UpdateResourceRequest
+ 22, // 84: akuity.io.kargo.service.v1alpha1.KargoService.DeleteResource:input_type -> akuity.io.kargo.service.v1alpha1.DeleteResourceRequest
+ 25, // 85: akuity.io.kargo.service.v1alpha1.KargoService.ListStages:input_type -> akuity.io.kargo.service.v1alpha1.ListStagesRequest
+ 27, // 86: akuity.io.kargo.service.v1alpha1.KargoService.ListImages:input_type -> akuity.io.kargo.service.v1alpha1.ListImagesRequest
+ 31, // 87: akuity.io.kargo.service.v1alpha1.KargoService.GetStage:input_type -> akuity.io.kargo.service.v1alpha1.GetStageRequest
+ 33, // 88: akuity.io.kargo.service.v1alpha1.KargoService.WatchStages:input_type -> akuity.io.kargo.service.v1alpha1.WatchStagesRequest
+ 35, // 89: akuity.io.kargo.service.v1alpha1.KargoService.DeleteStage:input_type -> akuity.io.kargo.service.v1alpha1.DeleteStageRequest
+ 37, // 90: akuity.io.kargo.service.v1alpha1.KargoService.RefreshStage:input_type -> akuity.io.kargo.service.v1alpha1.RefreshStageRequest
+ 39, // 91: akuity.io.kargo.service.v1alpha1.KargoService.ListPromotions:input_type -> akuity.io.kargo.service.v1alpha1.ListPromotionsRequest
+ 41, // 92: akuity.io.kargo.service.v1alpha1.KargoService.WatchPromotions:input_type -> akuity.io.kargo.service.v1alpha1.WatchPromotionsRequest
+ 43, // 93: akuity.io.kargo.service.v1alpha1.KargoService.GetPromotion:input_type -> akuity.io.kargo.service.v1alpha1.GetPromotionRequest
+ 45, // 94: akuity.io.kargo.service.v1alpha1.KargoService.WatchPromotion:input_type -> akuity.io.kargo.service.v1alpha1.WatchPromotionRequest
+ 47, // 95: akuity.io.kargo.service.v1alpha1.KargoService.AbortPromotion:input_type -> akuity.io.kargo.service.v1alpha1.AbortPromotionRequest
+ 49, // 96: akuity.io.kargo.service.v1alpha1.KargoService.DeleteProject:input_type -> akuity.io.kargo.service.v1alpha1.DeleteProjectRequest
+ 51, // 97: akuity.io.kargo.service.v1alpha1.KargoService.GetProject:input_type -> akuity.io.kargo.service.v1alpha1.GetProjectRequest
+ 53, // 98: akuity.io.kargo.service.v1alpha1.KargoService.ListProjects:input_type -> akuity.io.kargo.service.v1alpha1.ListProjectsRequest
+ 55, // 99: akuity.io.kargo.service.v1alpha1.KargoService.ApproveFreight:input_type -> akuity.io.kargo.service.v1alpha1.ApproveFreightRequest
+ 57, // 100: akuity.io.kargo.service.v1alpha1.KargoService.DeleteFreight:input_type -> akuity.io.kargo.service.v1alpha1.DeleteFreightRequest
+ 59, // 101: akuity.io.kargo.service.v1alpha1.KargoService.GetFreight:input_type -> akuity.io.kargo.service.v1alpha1.GetFreightRequest
+ 61, // 102: akuity.io.kargo.service.v1alpha1.KargoService.PromoteToStage:input_type -> akuity.io.kargo.service.v1alpha1.PromoteToStageRequest
+ 63, // 103: akuity.io.kargo.service.v1alpha1.KargoService.PromoteDownstream:input_type -> akuity.io.kargo.service.v1alpha1.PromoteDownstreamRequest
+ 65, // 104: akuity.io.kargo.service.v1alpha1.KargoService.QueryFreight:input_type -> akuity.io.kargo.service.v1alpha1.QueryFreightRequest
+ 68, // 105: akuity.io.kargo.service.v1alpha1.KargoService.UpdateFreightAlias:input_type -> akuity.io.kargo.service.v1alpha1.UpdateFreightAliasRequest
+ 70, // 106: akuity.io.kargo.service.v1alpha1.KargoService.Reverify:input_type -> akuity.io.kargo.service.v1alpha1.ReverifyRequest
+ 72, // 107: akuity.io.kargo.service.v1alpha1.KargoService.AbortVerification:input_type -> akuity.io.kargo.service.v1alpha1.AbortVerificationRequest
+ 74, // 108: akuity.io.kargo.service.v1alpha1.KargoService.ListWarehouses:input_type -> akuity.io.kargo.service.v1alpha1.ListWarehousesRequest
+ 76, // 109: akuity.io.kargo.service.v1alpha1.KargoService.GetWarehouse:input_type -> akuity.io.kargo.service.v1alpha1.GetWarehouseRequest
+ 78, // 110: akuity.io.kargo.service.v1alpha1.KargoService.WatchWarehouses:input_type -> akuity.io.kargo.service.v1alpha1.WatchWarehousesRequest
+ 80, // 111: akuity.io.kargo.service.v1alpha1.KargoService.DeleteWarehouse:input_type -> akuity.io.kargo.service.v1alpha1.DeleteWarehouseRequest
+ 82, // 112: akuity.io.kargo.service.v1alpha1.KargoService.RefreshWarehouse:input_type -> akuity.io.kargo.service.v1alpha1.RefreshWarehouseRequest
+ 84, // 113: akuity.io.kargo.service.v1alpha1.KargoService.CreateCredentials:input_type -> akuity.io.kargo.service.v1alpha1.CreateCredentialsRequest
+ 86, // 114: akuity.io.kargo.service.v1alpha1.KargoService.DeleteCredentials:input_type -> akuity.io.kargo.service.v1alpha1.DeleteCredentialsRequest
+ 88, // 115: akuity.io.kargo.service.v1alpha1.KargoService.GetCredentials:input_type -> akuity.io.kargo.service.v1alpha1.GetCredentialsRequest
+ 90, // 116: akuity.io.kargo.service.v1alpha1.KargoService.ListCredentials:input_type -> akuity.io.kargo.service.v1alpha1.ListCredentialsRequest
+ 92, // 117: akuity.io.kargo.service.v1alpha1.KargoService.UpdateCredentials:input_type -> akuity.io.kargo.service.v1alpha1.UpdateCredentialsRequest
+ 94, // 118: akuity.io.kargo.service.v1alpha1.KargoService.ListAnalysisTemplates:input_type -> akuity.io.kargo.service.v1alpha1.ListAnalysisTemplatesRequest
+ 96, // 119: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisTemplate:input_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateRequest
+ 104, // 120: akuity.io.kargo.service.v1alpha1.KargoService.DeleteAnalysisTemplate:input_type -> akuity.io.kargo.service.v1alpha1.DeleteAnalysisTemplateRequest
+ 98, // 121: akuity.io.kargo.service.v1alpha1.KargoService.ListClusterAnalysisTemplates:input_type -> akuity.io.kargo.service.v1alpha1.ListClusterAnalysisTemplatesRequest
+ 100, // 122: akuity.io.kargo.service.v1alpha1.KargoService.GetClusterAnalysisTemplate:input_type -> akuity.io.kargo.service.v1alpha1.GetClusterAnalysisTemplateRequest
+ 106, // 123: akuity.io.kargo.service.v1alpha1.KargoService.DeleteClusterAnalysisTemplate:input_type -> akuity.io.kargo.service.v1alpha1.DeleteClusterAnalysisTemplateRequest
+ 102, // 124: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisRun:input_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisRunRequest
+ 125, // 125: akuity.io.kargo.service.v1alpha1.KargoService.ListAnalysisTemplateConfigMaps:input_type -> akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateConfigMapsRequest
+ 127, // 126: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisTemplateConfigMap:input_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateConfigMapRequest
+ 129, // 127: akuity.io.kargo.service.v1alpha1.KargoService.ListAnalysisTemplateSecrets:input_type -> akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateSecretsRequest
+ 131, // 128: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisTemplateSecret:input_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateSecretRequest
+ 108, // 129: akuity.io.kargo.service.v1alpha1.KargoService.ListProjectEvents:input_type -> akuity.io.kargo.service.v1alpha1.ListProjectEventsRequest
+ 110, // 130: akuity.io.kargo.service.v1alpha1.KargoService.CreateRole:input_type -> akuity.io.kargo.service.v1alpha1.CreateRoleRequest
+ 112, // 131: akuity.io.kargo.service.v1alpha1.KargoService.DeleteRole:input_type -> akuity.io.kargo.service.v1alpha1.DeleteRoleRequest
+ 114, // 132: akuity.io.kargo.service.v1alpha1.KargoService.GetRole:input_type -> akuity.io.kargo.service.v1alpha1.GetRoleRequest
+ 117, // 133: akuity.io.kargo.service.v1alpha1.KargoService.Grant:input_type -> akuity.io.kargo.service.v1alpha1.GrantRequest
+ 119, // 134: akuity.io.kargo.service.v1alpha1.KargoService.ListRoles:input_type -> akuity.io.kargo.service.v1alpha1.ListRolesRequest
+ 121, // 135: akuity.io.kargo.service.v1alpha1.KargoService.Revoke:input_type -> akuity.io.kargo.service.v1alpha1.RevokeRequest
+ 123, // 136: akuity.io.kargo.service.v1alpha1.KargoService.UpdateRole:input_type -> akuity.io.kargo.service.v1alpha1.UpdateRoleRequest
+ 4, // 137: akuity.io.kargo.service.v1alpha1.KargoService.GetVersionInfo:output_type -> akuity.io.kargo.service.v1alpha1.GetVersionInfoResponse
+ 7, // 138: akuity.io.kargo.service.v1alpha1.KargoService.GetConfig:output_type -> akuity.io.kargo.service.v1alpha1.GetConfigResponse
+ 9, // 139: akuity.io.kargo.service.v1alpha1.KargoService.GetPublicConfig:output_type -> akuity.io.kargo.service.v1alpha1.GetPublicConfigResponse
+ 12, // 140: akuity.io.kargo.service.v1alpha1.KargoService.AdminLogin:output_type -> akuity.io.kargo.service.v1alpha1.AdminLoginResponse
+ 15, // 141: akuity.io.kargo.service.v1alpha1.KargoService.CreateResource:output_type -> akuity.io.kargo.service.v1alpha1.CreateResourceResponse
+ 18, // 142: akuity.io.kargo.service.v1alpha1.KargoService.CreateOrUpdateResource:output_type -> akuity.io.kargo.service.v1alpha1.CreateOrUpdateResourceResponse
+ 21, // 143: akuity.io.kargo.service.v1alpha1.KargoService.UpdateResource:output_type -> akuity.io.kargo.service.v1alpha1.UpdateResourceResponse
+ 24, // 144: akuity.io.kargo.service.v1alpha1.KargoService.DeleteResource:output_type -> akuity.io.kargo.service.v1alpha1.DeleteResourceResponse
+ 26, // 145: akuity.io.kargo.service.v1alpha1.KargoService.ListStages:output_type -> akuity.io.kargo.service.v1alpha1.ListStagesResponse
+ 28, // 146: akuity.io.kargo.service.v1alpha1.KargoService.ListImages:output_type -> akuity.io.kargo.service.v1alpha1.ListImagesResponse
+ 32, // 147: akuity.io.kargo.service.v1alpha1.KargoService.GetStage:output_type -> akuity.io.kargo.service.v1alpha1.GetStageResponse
+ 34, // 148: akuity.io.kargo.service.v1alpha1.KargoService.WatchStages:output_type -> akuity.io.kargo.service.v1alpha1.WatchStagesResponse
+ 36, // 149: akuity.io.kargo.service.v1alpha1.KargoService.DeleteStage:output_type -> akuity.io.kargo.service.v1alpha1.DeleteStageResponse
+ 38, // 150: akuity.io.kargo.service.v1alpha1.KargoService.RefreshStage:output_type -> akuity.io.kargo.service.v1alpha1.RefreshStageResponse
+ 40, // 151: akuity.io.kargo.service.v1alpha1.KargoService.ListPromotions:output_type -> akuity.io.kargo.service.v1alpha1.ListPromotionsResponse
+ 42, // 152: akuity.io.kargo.service.v1alpha1.KargoService.WatchPromotions:output_type -> akuity.io.kargo.service.v1alpha1.WatchPromotionsResponse
+ 44, // 153: akuity.io.kargo.service.v1alpha1.KargoService.GetPromotion:output_type -> akuity.io.kargo.service.v1alpha1.GetPromotionResponse
+ 46, // 154: akuity.io.kargo.service.v1alpha1.KargoService.WatchPromotion:output_type -> akuity.io.kargo.service.v1alpha1.WatchPromotionResponse
+ 48, // 155: akuity.io.kargo.service.v1alpha1.KargoService.AbortPromotion:output_type -> akuity.io.kargo.service.v1alpha1.AbortPromotionResponse
+ 50, // 156: akuity.io.kargo.service.v1alpha1.KargoService.DeleteProject:output_type -> akuity.io.kargo.service.v1alpha1.DeleteProjectResponse
+ 52, // 157: akuity.io.kargo.service.v1alpha1.KargoService.GetProject:output_type -> akuity.io.kargo.service.v1alpha1.GetProjectResponse
+ 54, // 158: akuity.io.kargo.service.v1alpha1.KargoService.ListProjects:output_type -> akuity.io.kargo.service.v1alpha1.ListProjectsResponse
+ 56, // 159: akuity.io.kargo.service.v1alpha1.KargoService.ApproveFreight:output_type -> akuity.io.kargo.service.v1alpha1.ApproveFreightResponse
+ 58, // 160: akuity.io.kargo.service.v1alpha1.KargoService.DeleteFreight:output_type -> akuity.io.kargo.service.v1alpha1.DeleteFreightResponse
+ 60, // 161: akuity.io.kargo.service.v1alpha1.KargoService.GetFreight:output_type -> akuity.io.kargo.service.v1alpha1.GetFreightResponse
+ 62, // 162: akuity.io.kargo.service.v1alpha1.KargoService.PromoteToStage:output_type -> akuity.io.kargo.service.v1alpha1.PromoteToStageResponse
+ 64, // 163: akuity.io.kargo.service.v1alpha1.KargoService.PromoteDownstream:output_type -> akuity.io.kargo.service.v1alpha1.PromoteDownstreamResponse
+ 66, // 164: akuity.io.kargo.service.v1alpha1.KargoService.QueryFreight:output_type -> akuity.io.kargo.service.v1alpha1.QueryFreightResponse
+ 69, // 165: akuity.io.kargo.service.v1alpha1.KargoService.UpdateFreightAlias:output_type -> akuity.io.kargo.service.v1alpha1.UpdateFreightAliasResponse
+ 71, // 166: akuity.io.kargo.service.v1alpha1.KargoService.Reverify:output_type -> akuity.io.kargo.service.v1alpha1.ReverifyResponse
+ 73, // 167: akuity.io.kargo.service.v1alpha1.KargoService.AbortVerification:output_type -> akuity.io.kargo.service.v1alpha1.AbortVerificationResponse
+ 75, // 168: akuity.io.kargo.service.v1alpha1.KargoService.ListWarehouses:output_type -> akuity.io.kargo.service.v1alpha1.ListWarehousesResponse
+ 77, // 169: akuity.io.kargo.service.v1alpha1.KargoService.GetWarehouse:output_type -> akuity.io.kargo.service.v1alpha1.GetWarehouseResponse
+ 79, // 170: akuity.io.kargo.service.v1alpha1.KargoService.WatchWarehouses:output_type -> akuity.io.kargo.service.v1alpha1.WatchWarehousesResponse
+ 81, // 171: akuity.io.kargo.service.v1alpha1.KargoService.DeleteWarehouse:output_type -> akuity.io.kargo.service.v1alpha1.DeleteWarehouseResponse
+ 83, // 172: akuity.io.kargo.service.v1alpha1.KargoService.RefreshWarehouse:output_type -> akuity.io.kargo.service.v1alpha1.RefreshWarehouseResponse
+ 85, // 173: akuity.io.kargo.service.v1alpha1.KargoService.CreateCredentials:output_type -> akuity.io.kargo.service.v1alpha1.CreateCredentialsResponse
+ 87, // 174: akuity.io.kargo.service.v1alpha1.KargoService.DeleteCredentials:output_type -> akuity.io.kargo.service.v1alpha1.DeleteCredentialsResponse
+ 89, // 175: akuity.io.kargo.service.v1alpha1.KargoService.GetCredentials:output_type -> akuity.io.kargo.service.v1alpha1.GetCredentialsResponse
+ 91, // 176: akuity.io.kargo.service.v1alpha1.KargoService.ListCredentials:output_type -> akuity.io.kargo.service.v1alpha1.ListCredentialsResponse
+ 93, // 177: akuity.io.kargo.service.v1alpha1.KargoService.UpdateCredentials:output_type -> akuity.io.kargo.service.v1alpha1.UpdateCredentialsResponse
+ 95, // 178: akuity.io.kargo.service.v1alpha1.KargoService.ListAnalysisTemplates:output_type -> akuity.io.kargo.service.v1alpha1.ListAnalysisTemplatesResponse
+ 97, // 179: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisTemplate:output_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateResponse
+ 105, // 180: akuity.io.kargo.service.v1alpha1.KargoService.DeleteAnalysisTemplate:output_type -> akuity.io.kargo.service.v1alpha1.DeleteAnalysisTemplateResponse
+ 99, // 181: akuity.io.kargo.service.v1alpha1.KargoService.ListClusterAnalysisTemplates:output_type -> akuity.io.kargo.service.v1alpha1.ListClusterAnalysisTemplatesResponse
+ 101, // 182: akuity.io.kargo.service.v1alpha1.KargoService.GetClusterAnalysisTemplate:output_type -> akuity.io.kargo.service.v1alpha1.GetClusterAnalysisTemplateResponse
+ 107, // 183: akuity.io.kargo.service.v1alpha1.KargoService.DeleteClusterAnalysisTemplate:output_type -> akuity.io.kargo.service.v1alpha1.DeleteClusterAnalysisTemplateResponse
+ 103, // 184: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisRun:output_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisRunResponse
+ 126, // 185: akuity.io.kargo.service.v1alpha1.KargoService.ListAnalysisTemplateConfigMaps:output_type -> akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateConfigMapsResponse
+ 128, // 186: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisTemplateConfigMap:output_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateConfigMapResponse
+ 130, // 187: akuity.io.kargo.service.v1alpha1.KargoService.ListAnalysisTemplateSecrets:output_type -> akuity.io.kargo.service.v1alpha1.ListAnalysisTemplateSecretsResponse
+ 132, // 188: akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisTemplateSecret:output_type -> akuity.io.kargo.service.v1alpha1.GetAnalysisTemplateSecretResponse
+ 109, // 189: akuity.io.kargo.service.v1alpha1.KargoService.ListProjectEvents:output_type -> akuity.io.kargo.service.v1alpha1.ListProjectEventsResponse
+ 111, // 190: akuity.io.kargo.service.v1alpha1.KargoService.CreateRole:output_type -> akuity.io.kargo.service.v1alpha1.CreateRoleResponse
+ 113, // 191: akuity.io.kargo.service.v1alpha1.KargoService.DeleteRole:output_type -> akuity.io.kargo.service.v1alpha1.DeleteRoleResponse
+ 115, // 192: akuity.io.kargo.service.v1alpha1.KargoService.GetRole:output_type -> akuity.io.kargo.service.v1alpha1.GetRoleResponse
+ 118, // 193: akuity.io.kargo.service.v1alpha1.KargoService.Grant:output_type -> akuity.io.kargo.service.v1alpha1.GrantResponse
+ 120, // 194: akuity.io.kargo.service.v1alpha1.KargoService.ListRoles:output_type -> akuity.io.kargo.service.v1alpha1.ListRolesResponse
+ 122, // 195: akuity.io.kargo.service.v1alpha1.KargoService.Revoke:output_type -> akuity.io.kargo.service.v1alpha1.RevokeResponse
+ 124, // 196: akuity.io.kargo.service.v1alpha1.KargoService.UpdateRole:output_type -> akuity.io.kargo.service.v1alpha1.UpdateRoleResponse
+ 137, // [137:197] is the sub-list for method output_type
+ 77, // [77:137] is the sub-list for method input_type
+ 77, // [77:77] is the sub-list for extension type_name
+ 77, // [77:77] is the sub-list for extension extendee
+ 0, // [0:77] is the sub-list for field type_name
}
func init() { file_service_v1alpha1_service_proto_init() }
@@ -10165,7 +10564,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetAnalysisRunRequest); i {
+ switch v := v.(*ListClusterAnalysisTemplatesRequest); i {
case 0:
return &v.state
case 1:
@@ -10177,7 +10576,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetAnalysisRunResponse); i {
+ switch v := v.(*ListClusterAnalysisTemplatesResponse); i {
case 0:
return &v.state
case 1:
@@ -10189,7 +10588,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DeleteAnalysisTemplateRequest); i {
+ switch v := v.(*GetClusterAnalysisTemplateRequest); i {
case 0:
return &v.state
case 1:
@@ -10201,7 +10600,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DeleteAnalysisTemplateResponse); i {
+ switch v := v.(*GetClusterAnalysisTemplateResponse); i {
case 0:
return &v.state
case 1:
@@ -10213,7 +10612,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListProjectEventsRequest); i {
+ switch v := v.(*GetAnalysisRunRequest); i {
case 0:
return &v.state
case 1:
@@ -10225,7 +10624,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListProjectEventsResponse); i {
+ switch v := v.(*GetAnalysisRunResponse); i {
case 0:
return &v.state
case 1:
@@ -10237,7 +10636,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CreateRoleRequest); i {
+ switch v := v.(*DeleteAnalysisTemplateRequest); i {
case 0:
return &v.state
case 1:
@@ -10249,7 +10648,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CreateRoleResponse); i {
+ switch v := v.(*DeleteAnalysisTemplateResponse); i {
case 0:
return &v.state
case 1:
@@ -10261,7 +10660,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DeleteRoleRequest); i {
+ switch v := v.(*DeleteClusterAnalysisTemplateRequest); i {
case 0:
return &v.state
case 1:
@@ -10273,7 +10672,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DeleteRoleResponse); i {
+ switch v := v.(*DeleteClusterAnalysisTemplateResponse); i {
case 0:
return &v.state
case 1:
@@ -10285,7 +10684,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetRoleRequest); i {
+ switch v := v.(*ListProjectEventsRequest); i {
case 0:
return &v.state
case 1:
@@ -10297,7 +10696,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetRoleResponse); i {
+ switch v := v.(*ListProjectEventsResponse); i {
case 0:
return &v.state
case 1:
@@ -10309,7 +10708,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Claims); i {
+ switch v := v.(*CreateRoleRequest); i {
case 0:
return &v.state
case 1:
@@ -10321,7 +10720,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GrantRequest); i {
+ switch v := v.(*CreateRoleResponse); i {
case 0:
return &v.state
case 1:
@@ -10333,7 +10732,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GrantResponse); i {
+ switch v := v.(*DeleteRoleRequest); i {
case 0:
return &v.state
case 1:
@@ -10345,7 +10744,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListRolesRequest); i {
+ switch v := v.(*DeleteRoleResponse); i {
case 0:
return &v.state
case 1:
@@ -10357,7 +10756,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListRolesResponse); i {
+ switch v := v.(*GetRoleRequest); i {
case 0:
return &v.state
case 1:
@@ -10369,7 +10768,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RevokeRequest); i {
+ switch v := v.(*GetRoleResponse); i {
case 0:
return &v.state
case 1:
@@ -10381,7 +10780,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RevokeResponse); i {
+ switch v := v.(*Claims); i {
case 0:
return &v.state
case 1:
@@ -10393,7 +10792,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UpdateRoleRequest); i {
+ switch v := v.(*GrantRequest); i {
case 0:
return &v.state
case 1:
@@ -10405,7 +10804,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UpdateRoleResponse); i {
+ switch v := v.(*GrantResponse); i {
case 0:
return &v.state
case 1:
@@ -10417,7 +10816,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListAnalysisTemplateConfigMapsRequest); i {
+ switch v := v.(*ListRolesRequest); i {
case 0:
return &v.state
case 1:
@@ -10429,7 +10828,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListAnalysisTemplateConfigMapsResponse); i {
+ switch v := v.(*ListRolesResponse); i {
case 0:
return &v.state
case 1:
@@ -10441,7 +10840,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetAnalysisTemplateConfigMapRequest); i {
+ switch v := v.(*RevokeRequest); i {
case 0:
return &v.state
case 1:
@@ -10453,7 +10852,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetAnalysisTemplateConfigMapResponse); i {
+ switch v := v.(*RevokeResponse); i {
case 0:
return &v.state
case 1:
@@ -10465,7 +10864,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListAnalysisTemplateSecretsRequest); i {
+ switch v := v.(*UpdateRoleRequest); i {
case 0:
return &v.state
case 1:
@@ -10477,7 +10876,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListAnalysisTemplateSecretsResponse); i {
+ switch v := v.(*UpdateRoleResponse); i {
case 0:
return &v.state
case 1:
@@ -10489,7 +10888,7 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetAnalysisTemplateSecretRequest); i {
+ switch v := v.(*ListAnalysisTemplateConfigMapsRequest); i {
case 0:
return &v.state
case 1:
@@ -10501,6 +10900,78 @@ func file_service_v1alpha1_service_proto_init() {
}
}
file_service_v1alpha1_service_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListAnalysisTemplateConfigMapsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_service_v1alpha1_service_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetAnalysisTemplateConfigMapRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_service_v1alpha1_service_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetAnalysisTemplateConfigMapResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_service_v1alpha1_service_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListAnalysisTemplateSecretsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_service_v1alpha1_service_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListAnalysisTemplateSecretsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_service_v1alpha1_service_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetAnalysisTemplateSecretRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_service_v1alpha1_service_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetAnalysisTemplateSecretResponse); i {
case 0:
return &v.state
@@ -10562,28 +11033,32 @@ func file_service_v1alpha1_service_proto_init() {
(*GetAnalysisTemplateResponse_AnalysisTemplate)(nil),
(*GetAnalysisTemplateResponse_Raw)(nil),
}
- file_service_v1alpha1_service_proto_msgTypes[98].OneofWrappers = []interface{}{
+ file_service_v1alpha1_service_proto_msgTypes[100].OneofWrappers = []interface{}{
+ (*GetClusterAnalysisTemplateResponse_ClusterAnalysisTemplate)(nil),
+ (*GetClusterAnalysisTemplateResponse_Raw)(nil),
+ }
+ file_service_v1alpha1_service_proto_msgTypes[102].OneofWrappers = []interface{}{
(*GetAnalysisRunResponse_AnalysisRun)(nil),
(*GetAnalysisRunResponse_Raw)(nil),
}
- file_service_v1alpha1_service_proto_msgTypes[108].OneofWrappers = []interface{}{
+ file_service_v1alpha1_service_proto_msgTypes[114].OneofWrappers = []interface{}{
(*GetRoleResponse_Role)(nil),
(*GetRoleResponse_Resources)(nil),
(*GetRoleResponse_Raw)(nil),
}
- file_service_v1alpha1_service_proto_msgTypes[110].OneofWrappers = []interface{}{
+ file_service_v1alpha1_service_proto_msgTypes[116].OneofWrappers = []interface{}{
(*GrantRequest_UserClaims)(nil),
(*GrantRequest_ResourceDetails)(nil),
}
- file_service_v1alpha1_service_proto_msgTypes[114].OneofWrappers = []interface{}{
+ file_service_v1alpha1_service_proto_msgTypes[120].OneofWrappers = []interface{}{
(*RevokeRequest_UserClaims)(nil),
(*RevokeRequest_ResourceDetails)(nil),
}
- file_service_v1alpha1_service_proto_msgTypes[121].OneofWrappers = []interface{}{
+ file_service_v1alpha1_service_proto_msgTypes[127].OneofWrappers = []interface{}{
(*GetAnalysisTemplateConfigMapResponse_ConfigMap)(nil),
(*GetAnalysisTemplateConfigMapResponse_Raw)(nil),
}
- file_service_v1alpha1_service_proto_msgTypes[125].OneofWrappers = []interface{}{
+ file_service_v1alpha1_service_proto_msgTypes[131].OneofWrappers = []interface{}{
(*GetAnalysisTemplateSecretResponse_Secret)(nil),
(*GetAnalysisTemplateSecretResponse_Raw)(nil),
}
@@ -10593,7 +11068,7 @@ func file_service_v1alpha1_service_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_service_v1alpha1_service_proto_rawDesc,
NumEnums: 1,
- NumMessages: 131,
+ NumMessages: 137,
NumExtensions: 0,
NumServices: 1,
},
diff --git a/pkg/api/service/v1alpha1/svcv1alpha1connect/service.connect.go b/pkg/api/service/v1alpha1/svcv1alpha1connect/service.connect.go
index 018a809a5..2609471b6 100644
--- a/pkg/api/service/v1alpha1/svcv1alpha1connect/service.connect.go
+++ b/pkg/api/service/v1alpha1/svcv1alpha1connect/service.connect.go
@@ -157,6 +157,15 @@ const (
// KargoServiceDeleteAnalysisTemplateProcedure is the fully-qualified name of the KargoService's
// DeleteAnalysisTemplate RPC.
KargoServiceDeleteAnalysisTemplateProcedure = "/akuity.io.kargo.service.v1alpha1.KargoService/DeleteAnalysisTemplate"
+ // KargoServiceListClusterAnalysisTemplatesProcedure is the fully-qualified name of the
+ // KargoService's ListClusterAnalysisTemplates RPC.
+ KargoServiceListClusterAnalysisTemplatesProcedure = "/akuity.io.kargo.service.v1alpha1.KargoService/ListClusterAnalysisTemplates"
+ // KargoServiceGetClusterAnalysisTemplateProcedure is the fully-qualified name of the KargoService's
+ // GetClusterAnalysisTemplate RPC.
+ KargoServiceGetClusterAnalysisTemplateProcedure = "/akuity.io.kargo.service.v1alpha1.KargoService/GetClusterAnalysisTemplate"
+ // KargoServiceDeleteClusterAnalysisTemplateProcedure is the fully-qualified name of the
+ // KargoService's DeleteClusterAnalysisTemplate RPC.
+ KargoServiceDeleteClusterAnalysisTemplateProcedure = "/akuity.io.kargo.service.v1alpha1.KargoService/DeleteClusterAnalysisTemplate"
// KargoServiceGetAnalysisRunProcedure is the fully-qualified name of the KargoService's
// GetAnalysisRun RPC.
KargoServiceGetAnalysisRunProcedure = "/akuity.io.kargo.service.v1alpha1.KargoService/GetAnalysisRun"
@@ -238,6 +247,9 @@ var (
kargoServiceListAnalysisTemplatesMethodDescriptor = kargoServiceServiceDescriptor.Methods().ByName("ListAnalysisTemplates")
kargoServiceGetAnalysisTemplateMethodDescriptor = kargoServiceServiceDescriptor.Methods().ByName("GetAnalysisTemplate")
kargoServiceDeleteAnalysisTemplateMethodDescriptor = kargoServiceServiceDescriptor.Methods().ByName("DeleteAnalysisTemplate")
+ kargoServiceListClusterAnalysisTemplatesMethodDescriptor = kargoServiceServiceDescriptor.Methods().ByName("ListClusterAnalysisTemplates")
+ kargoServiceGetClusterAnalysisTemplateMethodDescriptor = kargoServiceServiceDescriptor.Methods().ByName("GetClusterAnalysisTemplate")
+ kargoServiceDeleteClusterAnalysisTemplateMethodDescriptor = kargoServiceServiceDescriptor.Methods().ByName("DeleteClusterAnalysisTemplate")
kargoServiceGetAnalysisRunMethodDescriptor = kargoServiceServiceDescriptor.Methods().ByName("GetAnalysisRun")
kargoServiceListAnalysisTemplateConfigMapsMethodDescriptor = kargoServiceServiceDescriptor.Methods().ByName("ListAnalysisTemplateConfigMaps")
kargoServiceGetAnalysisTemplateConfigMapMethodDescriptor = kargoServiceServiceDescriptor.Methods().ByName("GetAnalysisTemplateConfigMap")
@@ -301,6 +313,9 @@ type KargoServiceClient interface {
ListAnalysisTemplates(context.Context, *connect.Request[v1alpha1.ListAnalysisTemplatesRequest]) (*connect.Response[v1alpha1.ListAnalysisTemplatesResponse], error)
GetAnalysisTemplate(context.Context, *connect.Request[v1alpha1.GetAnalysisTemplateRequest]) (*connect.Response[v1alpha1.GetAnalysisTemplateResponse], error)
DeleteAnalysisTemplate(context.Context, *connect.Request[v1alpha1.DeleteAnalysisTemplateRequest]) (*connect.Response[v1alpha1.DeleteAnalysisTemplateResponse], error)
+ ListClusterAnalysisTemplates(context.Context, *connect.Request[v1alpha1.ListClusterAnalysisTemplatesRequest]) (*connect.Response[v1alpha1.ListClusterAnalysisTemplatesResponse], error)
+ GetClusterAnalysisTemplate(context.Context, *connect.Request[v1alpha1.GetClusterAnalysisTemplateRequest]) (*connect.Response[v1alpha1.GetClusterAnalysisTemplateResponse], error)
+ DeleteClusterAnalysisTemplate(context.Context, *connect.Request[v1alpha1.DeleteClusterAnalysisTemplateRequest]) (*connect.Response[v1alpha1.DeleteClusterAnalysisTemplateResponse], error)
GetAnalysisRun(context.Context, *connect.Request[v1alpha1.GetAnalysisRunRequest]) (*connect.Response[v1alpha1.GetAnalysisRunResponse], error)
ListAnalysisTemplateConfigMaps(context.Context, *connect.Request[v1alpha1.ListAnalysisTemplateConfigMapsRequest]) (*connect.Response[v1alpha1.ListAnalysisTemplateConfigMapsResponse], error)
GetAnalysisTemplateConfigMap(context.Context, *connect.Request[v1alpha1.GetAnalysisTemplateConfigMapRequest]) (*connect.Response[v1alpha1.GetAnalysisTemplateConfigMapResponse], error)
@@ -590,6 +605,24 @@ func NewKargoServiceClient(httpClient connect.HTTPClient, baseURL string, opts .
connect.WithSchema(kargoServiceDeleteAnalysisTemplateMethodDescriptor),
connect.WithClientOptions(opts...),
),
+ listClusterAnalysisTemplates: connect.NewClient[v1alpha1.ListClusterAnalysisTemplatesRequest, v1alpha1.ListClusterAnalysisTemplatesResponse](
+ httpClient,
+ baseURL+KargoServiceListClusterAnalysisTemplatesProcedure,
+ connect.WithSchema(kargoServiceListClusterAnalysisTemplatesMethodDescriptor),
+ connect.WithClientOptions(opts...),
+ ),
+ getClusterAnalysisTemplate: connect.NewClient[v1alpha1.GetClusterAnalysisTemplateRequest, v1alpha1.GetClusterAnalysisTemplateResponse](
+ httpClient,
+ baseURL+KargoServiceGetClusterAnalysisTemplateProcedure,
+ connect.WithSchema(kargoServiceGetClusterAnalysisTemplateMethodDescriptor),
+ connect.WithClientOptions(opts...),
+ ),
+ deleteClusterAnalysisTemplate: connect.NewClient[v1alpha1.DeleteClusterAnalysisTemplateRequest, v1alpha1.DeleteClusterAnalysisTemplateResponse](
+ httpClient,
+ baseURL+KargoServiceDeleteClusterAnalysisTemplateProcedure,
+ connect.WithSchema(kargoServiceDeleteClusterAnalysisTemplateMethodDescriptor),
+ connect.WithClientOptions(opts...),
+ ),
getAnalysisRun: connect.NewClient[v1alpha1.GetAnalysisRunRequest, v1alpha1.GetAnalysisRunResponse](
httpClient,
baseURL+KargoServiceGetAnalysisRunProcedure,
@@ -717,6 +750,9 @@ type kargoServiceClient struct {
listAnalysisTemplates *connect.Client[v1alpha1.ListAnalysisTemplatesRequest, v1alpha1.ListAnalysisTemplatesResponse]
getAnalysisTemplate *connect.Client[v1alpha1.GetAnalysisTemplateRequest, v1alpha1.GetAnalysisTemplateResponse]
deleteAnalysisTemplate *connect.Client[v1alpha1.DeleteAnalysisTemplateRequest, v1alpha1.DeleteAnalysisTemplateResponse]
+ listClusterAnalysisTemplates *connect.Client[v1alpha1.ListClusterAnalysisTemplatesRequest, v1alpha1.ListClusterAnalysisTemplatesResponse]
+ getClusterAnalysisTemplate *connect.Client[v1alpha1.GetClusterAnalysisTemplateRequest, v1alpha1.GetClusterAnalysisTemplateResponse]
+ deleteClusterAnalysisTemplate *connect.Client[v1alpha1.DeleteClusterAnalysisTemplateRequest, v1alpha1.DeleteClusterAnalysisTemplateResponse]
getAnalysisRun *connect.Client[v1alpha1.GetAnalysisRunRequest, v1alpha1.GetAnalysisRunResponse]
listAnalysisTemplateConfigMaps *connect.Client[v1alpha1.ListAnalysisTemplateConfigMapsRequest, v1alpha1.ListAnalysisTemplateConfigMapsResponse]
getAnalysisTemplateConfigMap *connect.Client[v1alpha1.GetAnalysisTemplateConfigMapRequest, v1alpha1.GetAnalysisTemplateConfigMapResponse]
@@ -954,6 +990,24 @@ func (c *kargoServiceClient) DeleteAnalysisTemplate(ctx context.Context, req *co
return c.deleteAnalysisTemplate.CallUnary(ctx, req)
}
+// ListClusterAnalysisTemplates calls
+// akuity.io.kargo.service.v1alpha1.KargoService.ListClusterAnalysisTemplates.
+func (c *kargoServiceClient) ListClusterAnalysisTemplates(ctx context.Context, req *connect.Request[v1alpha1.ListClusterAnalysisTemplatesRequest]) (*connect.Response[v1alpha1.ListClusterAnalysisTemplatesResponse], error) {
+ return c.listClusterAnalysisTemplates.CallUnary(ctx, req)
+}
+
+// GetClusterAnalysisTemplate calls
+// akuity.io.kargo.service.v1alpha1.KargoService.GetClusterAnalysisTemplate.
+func (c *kargoServiceClient) GetClusterAnalysisTemplate(ctx context.Context, req *connect.Request[v1alpha1.GetClusterAnalysisTemplateRequest]) (*connect.Response[v1alpha1.GetClusterAnalysisTemplateResponse], error) {
+ return c.getClusterAnalysisTemplate.CallUnary(ctx, req)
+}
+
+// DeleteClusterAnalysisTemplate calls
+// akuity.io.kargo.service.v1alpha1.KargoService.DeleteClusterAnalysisTemplate.
+func (c *kargoServiceClient) DeleteClusterAnalysisTemplate(ctx context.Context, req *connect.Request[v1alpha1.DeleteClusterAnalysisTemplateRequest]) (*connect.Response[v1alpha1.DeleteClusterAnalysisTemplateResponse], error) {
+ return c.deleteClusterAnalysisTemplate.CallUnary(ctx, req)
+}
+
// GetAnalysisRun calls akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisRun.
func (c *kargoServiceClient) GetAnalysisRun(ctx context.Context, req *connect.Request[v1alpha1.GetAnalysisRunRequest]) (*connect.Response[v1alpha1.GetAnalysisRunResponse], error) {
return c.getAnalysisRun.CallUnary(ctx, req)
@@ -1072,6 +1126,9 @@ type KargoServiceHandler interface {
ListAnalysisTemplates(context.Context, *connect.Request[v1alpha1.ListAnalysisTemplatesRequest]) (*connect.Response[v1alpha1.ListAnalysisTemplatesResponse], error)
GetAnalysisTemplate(context.Context, *connect.Request[v1alpha1.GetAnalysisTemplateRequest]) (*connect.Response[v1alpha1.GetAnalysisTemplateResponse], error)
DeleteAnalysisTemplate(context.Context, *connect.Request[v1alpha1.DeleteAnalysisTemplateRequest]) (*connect.Response[v1alpha1.DeleteAnalysisTemplateResponse], error)
+ ListClusterAnalysisTemplates(context.Context, *connect.Request[v1alpha1.ListClusterAnalysisTemplatesRequest]) (*connect.Response[v1alpha1.ListClusterAnalysisTemplatesResponse], error)
+ GetClusterAnalysisTemplate(context.Context, *connect.Request[v1alpha1.GetClusterAnalysisTemplateRequest]) (*connect.Response[v1alpha1.GetClusterAnalysisTemplateResponse], error)
+ DeleteClusterAnalysisTemplate(context.Context, *connect.Request[v1alpha1.DeleteClusterAnalysisTemplateRequest]) (*connect.Response[v1alpha1.DeleteClusterAnalysisTemplateResponse], error)
GetAnalysisRun(context.Context, *connect.Request[v1alpha1.GetAnalysisRunRequest]) (*connect.Response[v1alpha1.GetAnalysisRunResponse], error)
ListAnalysisTemplateConfigMaps(context.Context, *connect.Request[v1alpha1.ListAnalysisTemplateConfigMapsRequest]) (*connect.Response[v1alpha1.ListAnalysisTemplateConfigMapsResponse], error)
GetAnalysisTemplateConfigMap(context.Context, *connect.Request[v1alpha1.GetAnalysisTemplateConfigMapRequest]) (*connect.Response[v1alpha1.GetAnalysisTemplateConfigMapResponse], error)
@@ -1357,6 +1414,24 @@ func NewKargoServiceHandler(svc KargoServiceHandler, opts ...connect.HandlerOpti
connect.WithSchema(kargoServiceDeleteAnalysisTemplateMethodDescriptor),
connect.WithHandlerOptions(opts...),
)
+ kargoServiceListClusterAnalysisTemplatesHandler := connect.NewUnaryHandler(
+ KargoServiceListClusterAnalysisTemplatesProcedure,
+ svc.ListClusterAnalysisTemplates,
+ connect.WithSchema(kargoServiceListClusterAnalysisTemplatesMethodDescriptor),
+ connect.WithHandlerOptions(opts...),
+ )
+ kargoServiceGetClusterAnalysisTemplateHandler := connect.NewUnaryHandler(
+ KargoServiceGetClusterAnalysisTemplateProcedure,
+ svc.GetClusterAnalysisTemplate,
+ connect.WithSchema(kargoServiceGetClusterAnalysisTemplateMethodDescriptor),
+ connect.WithHandlerOptions(opts...),
+ )
+ kargoServiceDeleteClusterAnalysisTemplateHandler := connect.NewUnaryHandler(
+ KargoServiceDeleteClusterAnalysisTemplateProcedure,
+ svc.DeleteClusterAnalysisTemplate,
+ connect.WithSchema(kargoServiceDeleteClusterAnalysisTemplateMethodDescriptor),
+ connect.WithHandlerOptions(opts...),
+ )
kargoServiceGetAnalysisRunHandler := connect.NewUnaryHandler(
KargoServiceGetAnalysisRunProcedure,
svc.GetAnalysisRun,
@@ -1525,6 +1600,12 @@ func NewKargoServiceHandler(svc KargoServiceHandler, opts ...connect.HandlerOpti
kargoServiceGetAnalysisTemplateHandler.ServeHTTP(w, r)
case KargoServiceDeleteAnalysisTemplateProcedure:
kargoServiceDeleteAnalysisTemplateHandler.ServeHTTP(w, r)
+ case KargoServiceListClusterAnalysisTemplatesProcedure:
+ kargoServiceListClusterAnalysisTemplatesHandler.ServeHTTP(w, r)
+ case KargoServiceGetClusterAnalysisTemplateProcedure:
+ kargoServiceGetClusterAnalysisTemplateHandler.ServeHTTP(w, r)
+ case KargoServiceDeleteClusterAnalysisTemplateProcedure:
+ kargoServiceDeleteClusterAnalysisTemplateHandler.ServeHTTP(w, r)
case KargoServiceGetAnalysisRunProcedure:
kargoServiceGetAnalysisRunHandler.ServeHTTP(w, r)
case KargoServiceListAnalysisTemplateConfigMapsProcedure:
@@ -1736,6 +1817,18 @@ func (UnimplementedKargoServiceHandler) DeleteAnalysisTemplate(context.Context,
return nil, connect.NewError(connect.CodeUnimplemented, errors.New("akuity.io.kargo.service.v1alpha1.KargoService.DeleteAnalysisTemplate is not implemented"))
}
+func (UnimplementedKargoServiceHandler) ListClusterAnalysisTemplates(context.Context, *connect.Request[v1alpha1.ListClusterAnalysisTemplatesRequest]) (*connect.Response[v1alpha1.ListClusterAnalysisTemplatesResponse], error) {
+ return nil, connect.NewError(connect.CodeUnimplemented, errors.New("akuity.io.kargo.service.v1alpha1.KargoService.ListClusterAnalysisTemplates is not implemented"))
+}
+
+func (UnimplementedKargoServiceHandler) GetClusterAnalysisTemplate(context.Context, *connect.Request[v1alpha1.GetClusterAnalysisTemplateRequest]) (*connect.Response[v1alpha1.GetClusterAnalysisTemplateResponse], error) {
+ return nil, connect.NewError(connect.CodeUnimplemented, errors.New("akuity.io.kargo.service.v1alpha1.KargoService.GetClusterAnalysisTemplate is not implemented"))
+}
+
+func (UnimplementedKargoServiceHandler) DeleteClusterAnalysisTemplate(context.Context, *connect.Request[v1alpha1.DeleteClusterAnalysisTemplateRequest]) (*connect.Response[v1alpha1.DeleteClusterAnalysisTemplateResponse], error) {
+ return nil, connect.NewError(connect.CodeUnimplemented, errors.New("akuity.io.kargo.service.v1alpha1.KargoService.DeleteClusterAnalysisTemplate is not implemented"))
+}
+
func (UnimplementedKargoServiceHandler) GetAnalysisRun(context.Context, *connect.Request[v1alpha1.GetAnalysisRunRequest]) (*connect.Response[v1alpha1.GetAnalysisRunResponse], error) {
return nil, connect.NewError(connect.CodeUnimplemented, errors.New("akuity.io.kargo.service.v1alpha1.KargoService.GetAnalysisRun is not implemented"))
}
diff --git a/ui/src/app.tsx b/ui/src/app.tsx
index dffafaf48..19b0940df 100644
--- a/ui/src/app.tsx
+++ b/ui/src/app.tsx
@@ -17,6 +17,7 @@ import { MainLayout } from './features/common/layout/main-layout';
import { Downloads } from './pages/downloads';
import { Login } from './pages/login/login';
import { Projects } from './pages/projects';
+import { Settings } from './pages/settings';
import { User } from './pages/user';
import './app.less';
@@ -45,6 +46,11 @@ export const App = () => (