diff --git a/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.GeneratedSnippets/ClusterManagerClient.UpdateNodePoolRequestObjectAsyncSnippet.g.cs b/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.GeneratedSnippets/ClusterManagerClient.UpdateNodePoolRequestObjectAsyncSnippet.g.cs index 873a173baf6a..4560c1bed90b 100644 --- a/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.GeneratedSnippets/ClusterManagerClient.UpdateNodePoolRequestObjectAsyncSnippet.g.cs +++ b/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.GeneratedSnippets/ClusterManagerClient.UpdateNodePoolRequestObjectAsyncSnippet.g.cs @@ -72,6 +72,8 @@ public async Task UpdateNodePoolRequestObjectAsync() MaxRunDuration = new Duration(), FlexStart = false, BootDisk = new BootDisk(), + NodeDrainConfig = new NodePool.Types.NodeDrainConfig(), + ConsolidationDelay = new Duration(), }; // Make the request Operation response = await clusterManagerClient.UpdateNodePoolAsync(request); diff --git a/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.GeneratedSnippets/ClusterManagerClient.UpdateNodePoolRequestObjectSnippet.g.cs b/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.GeneratedSnippets/ClusterManagerClient.UpdateNodePoolRequestObjectSnippet.g.cs index 2106c1a99526..34bca7365caf 100644 --- a/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.GeneratedSnippets/ClusterManagerClient.UpdateNodePoolRequestObjectSnippet.g.cs +++ b/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.GeneratedSnippets/ClusterManagerClient.UpdateNodePoolRequestObjectSnippet.g.cs @@ -71,6 +71,8 @@ public void UpdateNodePoolRequestObject() MaxRunDuration = new Duration(), FlexStart = false, BootDisk = new BootDisk(), + NodeDrainConfig = new NodePool.Types.NodeDrainConfig(), + ConsolidationDelay = new Duration(), }; // Make the request Operation response = clusterManagerClient.UpdateNodePool(request); diff --git a/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.GeneratedSnippets/snippet_metadata_google.container.v1.json b/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.GeneratedSnippets/snippet_metadata_google.container.v1.json index 7b05f92fd105..7f24c7b551fa 100644 --- a/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.GeneratedSnippets/snippet_metadata_google.container.v1.json +++ b/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.GeneratedSnippets/snippet_metadata_google.container.v1.json @@ -1276,12 +1276,12 @@ "segments": [ { "start": 20, - "end": 78, + "end": 80, "type": "FULL" }, { "start": 35, - "end": 76, + "end": 78, "type": "SHORT" } ] @@ -1325,12 +1325,12 @@ "segments": [ { "start": 20, - "end": 79, + "end": 81, "type": "FULL" }, { "start": 36, - "end": 77, + "end": 79, "type": "SHORT" } ] diff --git a/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.Snippets/ClusterManagerClientSnippets.g.cs b/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.Snippets/ClusterManagerClientSnippets.g.cs index d9efe5e54f12..fdeaaf10a7fd 100644 --- a/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.Snippets/ClusterManagerClientSnippets.g.cs +++ b/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1.Snippets/ClusterManagerClientSnippets.g.cs @@ -445,6 +445,8 @@ public void UpdateNodePoolRequestObject() MaxRunDuration = new Duration(), FlexStart = false, BootDisk = new BootDisk(), + NodeDrainConfig = new NodePool.Types.NodeDrainConfig(), + ConsolidationDelay = new Duration(), }; // Make the request Operation response = clusterManagerClient.UpdateNodePool(request); @@ -495,6 +497,8 @@ public async Task UpdateNodePoolRequestObjectAsync() MaxRunDuration = new Duration(), FlexStart = false, BootDisk = new BootDisk(), + NodeDrainConfig = new NodePool.Types.NodeDrainConfig(), + ConsolidationDelay = new Duration(), }; // Make the request Operation response = await clusterManagerClient.UpdateNodePoolAsync(request); diff --git a/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1/ClusterService.g.cs b/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1/ClusterService.g.cs index 4ba9891beb05..dd9dc30b8005 100644 --- a/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1/ClusterService.g.cs +++ b/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1/ClusterService.g.cs @@ -31,7 +31,7 @@ static ClusterServiceReflection() { "Hmdvb2dsZS9wcm90b2J1Zi9kdXJhdGlvbi5wcm90bxobZ29vZ2xlL3Byb3Rv", "YnVmL2VtcHR5LnByb3RvGh9nb29nbGUvcHJvdG9idWYvdGltZXN0YW1wLnBy", "b3RvGh5nb29nbGUvcHJvdG9idWYvd3JhcHBlcnMucHJvdG8aFWdvb2dsZS9y", - "cGMvY29kZS5wcm90bxoXZ29vZ2xlL3JwYy9zdGF0dXMucHJvdG8i9QsKD0xp", + "cGMvY29kZS5wcm90bxoXZ29vZ2xlL3JwYy9zdGF0dXMucHJvdG8igRMKD0xp", "bnV4Tm9kZUNvbmZpZxJCCgdzeXNjdGxzGAEgAygLMjEuZ29vZ2xlLmNvbnRh", "aW5lci52MS5MaW51eE5vZGVDb25maWcuU3lzY3Rsc0VudHJ5EkQKC2Nncm91", "cF9tb2RlGAIgASgOMi8uZ29vZ2xlLmNvbnRhaW5lci52MS5MaW51eE5vZGVD", @@ -41,1315 +41,1415 @@ static ClusterServiceReflection() { "KA4yPy5nb29nbGUuY29udGFpbmVyLnYxLkxpbnV4Tm9kZUNvbmZpZy5UcmFu", "c3BhcmVudEh1Z2VwYWdlRW5hYmxlZEID4EEBEmgKG3RyYW5zcGFyZW50X2h1", "Z2VwYWdlX2RlZnJhZxgFIAEoDjI+Lmdvb2dsZS5jb250YWluZXIudjEuTGlu", - "dXhOb2RlQ29uZmlnLlRyYW5zcGFyZW50SHVnZXBhZ2VEZWZyYWdCA+BBARJl", - "Chpub2RlX2tlcm5lbF9tb2R1bGVfbG9hZGluZxgNIAEoCzI8Lmdvb2dsZS5j", - "b250YWluZXIudjEuTGludXhOb2RlQ29uZmlnLk5vZGVLZXJuZWxNb2R1bGVM", - "b2FkaW5nQgPgQQEafwoPSHVnZXBhZ2VzQ29uZmlnEiEKD2h1Z2VwYWdlX3Np", - "emUybRgBIAEoBUID4EEBSACIAQESIQoPaHVnZXBhZ2Vfc2l6ZTFnGAIgASgF", - "QgPgQQFIAYgBAUISChBfaHVnZXBhZ2Vfc2l6ZTJtQhIKEF9odWdlcGFnZV9z", - "aXplMWcazwEKF05vZGVLZXJuZWxNb2R1bGVMb2FkaW5nElMKBnBvbGljeRgB", - "IAEoDjJDLmdvb2dsZS5jb250YWluZXIudjEuTGludXhOb2RlQ29uZmlnLk5v", - "ZGVLZXJuZWxNb2R1bGVMb2FkaW5nLlBvbGljeSJfCgZQb2xpY3kSFgoSUE9M", - "SUNZX1VOU1BFQ0lGSUVEEAASGgoWRU5GT1JDRV9TSUdORURfTU9EVUxFUxAB", - "EiEKHURPX05PVF9FTkZPUkNFX1NJR05FRF9NT0RVTEVTEAIaLgoMU3lzY3Rs", - "c0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiUQoKQ2dy", - "b3VwTW9kZRIbChdDR1JPVVBfTU9ERV9VTlNQRUNJRklFRBAAEhIKDkNHUk9V", - "UF9NT0RFX1YxEAESEgoOQ0dST1VQX01PREVfVjIQAiLFAQoaVHJhbnNwYXJl", - "bnRIdWdlcGFnZUVuYWJsZWQSLAooVFJBTlNQQVJFTlRfSFVHRVBBR0VfRU5B", - "QkxFRF9VTlNQRUNJRklFRBAAEicKI1RSQU5TUEFSRU5UX0hVR0VQQUdFX0VO", - "QUJMRURfQUxXQVlTEAESKAokVFJBTlNQQVJFTlRfSFVHRVBBR0VfRU5BQkxF", - "RF9NQURWSVNFEAISJgoiVFJBTlNQQVJFTlRfSFVHRVBBR0VfRU5BQkxFRF9O", - "RVZFUhADIpsCChlUcmFuc3BhcmVudEh1Z2VwYWdlRGVmcmFnEisKJ1RSQU5T", - "UEFSRU5UX0hVR0VQQUdFX0RFRlJBR19VTlNQRUNJRklFRBAAEiYKIlRSQU5T", - "UEFSRU5UX0hVR0VQQUdFX0RFRlJBR19BTFdBWVMQARIlCiFUUkFOU1BBUkVO", - "VF9IVUdFUEFHRV9ERUZSQUdfREVGRVIQAhIyCi5UUkFOU1BBUkVOVF9IVUdF", - "UEFHRV9ERUZSQUdfREVGRVJfV0lUSF9NQURWSVNFEAMSJwojVFJBTlNQQVJF", - "TlRfSFVHRVBBR0VfREVGUkFHX01BRFZJU0UQBBIlCiFUUkFOU1BBUkVOVF9I", - "VUdFUEFHRV9ERUZSQUdfTkVWRVIQBUIMCgpfaHVnZXBhZ2VzIrQBChFXaW5k", - "b3dzTm9kZUNvbmZpZxJECgpvc192ZXJzaW9uGAEgASgOMjAuZ29vZ2xlLmNv", - "bnRhaW5lci52MS5XaW5kb3dzTm9kZUNvbmZpZy5PU1ZlcnNpb24iWQoJT1NW", - "ZXJzaW9uEhoKFk9TX1ZFUlNJT05fVU5TUEVDSUZJRUQQABIXChNPU19WRVJT", - "SU9OX0xUU0MyMDE5EAESFwoTT1NfVkVSU0lPTl9MVFNDMjAyMhACIpoIChFO", - "b2RlS3ViZWxldENvbmZpZxIaChJjcHVfbWFuYWdlcl9wb2xpY3kYASABKAkS", - "QwoQdG9wb2xvZ3lfbWFuYWdlchgIIAEoCzIkLmdvb2dsZS5jb250YWluZXIu", - "djEuVG9wb2xvZ3lNYW5hZ2VyQgPgQQESPwoObWVtb3J5X21hbmFnZXIYCSAB", - "KAsyIi5nb29nbGUuY29udGFpbmVyLnYxLk1lbW9yeU1hbmFnZXJCA+BBARIx", - "Cg1jcHVfY2ZzX3F1b3RhGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xW", - "YWx1ZRIcChRjcHVfY2ZzX3F1b3RhX3BlcmlvZBgDIAEoCRIWCg5wb2RfcGlk", - "c19saW1pdBgEIAEoAxIzCiZpbnNlY3VyZV9rdWJlbGV0X3JlYWRvbmx5X3Bv", - "cnRfZW5hYmxlZBgHIAEoCEgAiAEBEisKHmltYWdlX2djX2xvd190aHJlc2hv", - "bGRfcGVyY2VudBgKIAEoBUID4EEBEiwKH2ltYWdlX2djX2hpZ2hfdGhyZXNo", - "b2xkX3BlcmNlbnQYCyABKAVCA+BBARIhChRpbWFnZV9taW5pbXVtX2djX2Fn", - "ZRgMIAEoCUID4EEBEiEKFGltYWdlX21heGltdW1fZ2NfYWdlGA0gASgJQgPg", - "QQESIwoWY29udGFpbmVyX2xvZ19tYXhfc2l6ZRgOIAEoCUID4EEBEiQKF2Nv", - "bnRhaW5lcl9sb2dfbWF4X2ZpbGVzGA8gASgFQgPgQQESIwoWYWxsb3dlZF91", - "bnNhZmVfc3lzY3RscxgQIAMoCUID4EEBEkAKDWV2aWN0aW9uX3NvZnQYESAB", - "KAsyJC5nb29nbGUuY29udGFpbmVyLnYxLkV2aWN0aW9uU2lnbmFsc0ID4EEB", - "ElEKGmV2aWN0aW9uX3NvZnRfZ3JhY2VfcGVyaW9kGBIgASgLMiguZ29vZ2xl", - "LmNvbnRhaW5lci52MS5FdmljdGlvbkdyYWNlUGVyaW9kQgPgQQESUgoYZXZp", - "Y3Rpb25fbWluaW11bV9yZWNsYWltGBMgASgLMisuZ29vZ2xlLmNvbnRhaW5l", - "ci52MS5FdmljdGlvbk1pbmltdW1SZWNsYWltQgPgQQESMgolZXZpY3Rpb25f", - "bWF4X3BvZF9ncmFjZV9wZXJpb2Rfc2Vjb25kcxgUIAEoBUID4EEBEiUKGG1h", - "eF9wYXJhbGxlbF9pbWFnZV9wdWxscxgVIAEoBUID4EEBEikKF3NpbmdsZV9w", - "cm9jZXNzX29vbV9raWxsGBYgASgIQgPgQQFIAYgBAUIpCidfaW5zZWN1cmVf", - "a3ViZWxldF9yZWFkb25seV9wb3J0X2VuYWJsZWRCGgoYX3NpbmdsZV9wcm9j", - "ZXNzX29vbV9raWxsIjAKD1RvcG9sb2d5TWFuYWdlchIOCgZwb2xpY3kYASAB", - "KAkSDQoFc2NvcGUYAiABKAkiHwoNTWVtb3J5TWFuYWdlchIOCgZwb2xpY3kY", - "ASABKAkizgEKD0V2aWN0aW9uU2lnbmFscxIdChBtZW1vcnlfYXZhaWxhYmxl", - "GAEgASgJQgPgQQESHQoQbm9kZWZzX2F2YWlsYWJsZRgCIAEoCUID4EEBEh8K", - "Em5vZGVmc19pbm9kZXNfZnJlZRgDIAEoCUID4EEBEh4KEWltYWdlZnNfYXZh", - "aWxhYmxlGAQgASgJQgPgQQESIAoTaW1hZ2Vmc19pbm9kZXNfZnJlZRgFIAEo", - "CUID4EEBEhoKDXBpZF9hdmFpbGFibGUYBiABKAlCA+BBASLSAQoTRXZpY3Rp", - "b25HcmFjZVBlcmlvZBIdChBtZW1vcnlfYXZhaWxhYmxlGAEgASgJQgPgQQES", - "HQoQbm9kZWZzX2F2YWlsYWJsZRgCIAEoCUID4EEBEh8KEm5vZGVmc19pbm9k", - "ZXNfZnJlZRgDIAEoCUID4EEBEh4KEWltYWdlZnNfYXZhaWxhYmxlGAQgASgJ", - "QgPgQQESIAoTaW1hZ2Vmc19pbm9kZXNfZnJlZRgFIAEoCUID4EEBEhoKDXBp", - "ZF9hdmFpbGFibGUYBiABKAlCA+BBASLVAQoWRXZpY3Rpb25NaW5pbXVtUmVj", - "bGFpbRIdChBtZW1vcnlfYXZhaWxhYmxlGAEgASgJQgPgQQESHQoQbm9kZWZz", - "X2F2YWlsYWJsZRgCIAEoCUID4EEBEh8KEm5vZGVmc19pbm9kZXNfZnJlZRgD", - "IAEoCUID4EEBEh4KEWltYWdlZnNfYXZhaWxhYmxlGAQgASgJQgPgQQESIAoT", - "aW1hZ2Vmc19pbm9kZXNfZnJlZRgFIAEoCUID4EEBEhoKDXBpZF9hdmFpbGFi", - "bGUYBiABKAlCA+BBASLZFgoKTm9kZUNvbmZpZxIUCgxtYWNoaW5lX3R5cGUY", - "ASABKAkSFAoMZGlza19zaXplX2diGAIgASgFEhQKDG9hdXRoX3Njb3BlcxgD", - "IAMoCRIXCg9zZXJ2aWNlX2FjY291bnQYCSABKAkSPwoIbWV0YWRhdGEYBCAD", - "KAsyLS5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVDb25maWcuTWV0YWRhdGFF", - "bnRyeRISCgppbWFnZV90eXBlGAUgASgJEjsKBmxhYmVscxgGIAMoCzIrLmdv", - "b2dsZS5jb250YWluZXIudjEuTm9kZUNvbmZpZy5MYWJlbHNFbnRyeRIXCg9s", - "b2NhbF9zc2RfY291bnQYByABKAUSDAoEdGFncxgIIAMoCRITCgtwcmVlbXB0", - "aWJsZRgKIAEoCBI8CgxhY2NlbGVyYXRvcnMYCyADKAsyJi5nb29nbGUuY29u", - "dGFpbmVyLnYxLkFjY2VsZXJhdG9yQ29uZmlnEhEKCWRpc2tfdHlwZRgMIAEo", - "CRIYChBtaW5fY3B1X3BsYXRmb3JtGA0gASgJEk0KGHdvcmtsb2FkX21ldGFk", - "YXRhX2NvbmZpZxgOIAEoCzIrLmdvb2dsZS5jb250YWluZXIudjEuV29ya2xv", - "YWRNZXRhZGF0YUNvbmZpZxIuCgZ0YWludHMYDyADKAsyHi5nb29nbGUuY29u", - "dGFpbmVyLnYxLk5vZGVUYWludBI6Cg5zYW5kYm94X2NvbmZpZxgRIAEoCzIi", - "Lmdvb2dsZS5jb250YWluZXIudjEuU2FuZGJveENvbmZpZxISCgpub2RlX2dy", - "b3VwGBIgASgJEkYKFHJlc2VydmF0aW9uX2FmZmluaXR5GBMgASgLMiguZ29v", - "Z2xlLmNvbnRhaW5lci52MS5SZXNlcnZhdGlvbkFmZmluaXR5Ek0KGHNoaWVs", - "ZGVkX2luc3RhbmNlX2NvbmZpZxgUIAEoCzIrLmdvb2dsZS5jb250YWluZXIu", - "djEuU2hpZWxkZWRJbnN0YW5jZUNvbmZpZxI/ChFsaW51eF9ub2RlX2NvbmZp", - "ZxgVIAEoCzIkLmdvb2dsZS5jb250YWluZXIudjEuTGludXhOb2RlQ29uZmln", - "Ej4KDmt1YmVsZXRfY29uZmlnGBYgASgLMiYuZ29vZ2xlLmNvbnRhaW5lci52", - "MS5Ob2RlS3ViZWxldENvbmZpZxIZChFib290X2Rpc2tfa21zX2tleRgXIAEo", - "CRI0CgtnY2ZzX2NvbmZpZxgZIAEoCzIfLmdvb2dsZS5jb250YWluZXIudjEu", - "R2Nmc0NvbmZpZxJPChlhZHZhbmNlZF9tYWNoaW5lX2ZlYXR1cmVzGBogASgL", - "MiwuZ29vZ2xlLmNvbnRhaW5lci52MS5BZHZhbmNlZE1hY2hpbmVGZWF0dXJl", - "cxIuCgVndm5pYxgdIAEoCzIfLmdvb2dsZS5jb250YWluZXIudjEuVmlydHVh", - "bE5JQxIMCgRzcG90GCAgASgIEkIKEmNvbmZpZGVudGlhbF9ub2RlcxgjIAEo", - "CzImLmdvb2dsZS5jb250YWluZXIudjEuQ29uZmlkZW50aWFsTm9kZXMSOQoL", - "ZmFzdF9zb2NrZXQYJCABKAsyHy5nb29nbGUuY29udGFpbmVyLnYxLkZhc3RT", - "b2NrZXRIAIgBARJMCg9yZXNvdXJjZV9sYWJlbHMYJSADKAsyMy5nb29nbGUu", - "Y29udGFpbmVyLnYxLk5vZGVDb25maWcuUmVzb3VyY2VMYWJlbHNFbnRyeRJC", - "Cg5sb2dnaW5nX2NvbmZpZxgmIAEoCzIqLmdvb2dsZS5jb250YWluZXIudjEu", - "Tm9kZVBvb2xMb2dnaW5nQ29uZmlnEkMKE3dpbmRvd3Nfbm9kZV9jb25maWcY", - "JyABKAsyJi5nb29nbGUuY29udGFpbmVyLnYxLldpbmRvd3NOb2RlQ29uZmln", - "ElEKG2xvY2FsX252bWVfc3NkX2Jsb2NrX2NvbmZpZxgoIAEoCzIsLmdvb2ds", - "ZS5jb250YWluZXIudjEuTG9jYWxOdm1lU3NkQmxvY2tDb25maWcSXwoiZXBo", - "ZW1lcmFsX3N0b3JhZ2VfbG9jYWxfc3NkX2NvbmZpZxgpIAEoCzIzLmdvb2ds", - "ZS5jb250YWluZXIudjEuRXBoZW1lcmFsU3RvcmFnZUxvY2FsU3NkQ29uZmln", - "EkEKEnNvbGVfdGVuYW50X2NvbmZpZxgqIAEoCzIlLmdvb2dsZS5jb250YWlu", - "ZXIudjEuU29sZVRlbmFudENvbmZpZxJAChFjb250YWluZXJkX2NvbmZpZxgr", - "IAEoCzIlLmdvb2dsZS5jb250YWluZXIudjEuQ29udGFpbmVyZENvbmZpZxJH", - "ChVyZXNvdXJjZV9tYW5hZ2VyX3RhZ3MYLSABKAsyKC5nb29nbGUuY29udGFp", - "bmVyLnYxLlJlc291cmNlTWFuYWdlclRhZ3MSKAobZW5hYmxlX2NvbmZpZGVu", - "dGlhbF9zdG9yYWdlGC4gASgIQgPgQQESRAoUc2Vjb25kYXJ5X2Jvb3RfZGlz", - "a3MYMCADKAsyJi5nb29nbGUuY29udGFpbmVyLnYxLlNlY29uZGFyeUJvb3RE", - "aXNrEhUKDXN0b3JhZ2VfcG9vbHMYMSADKAkSZgojc2Vjb25kYXJ5X2Jvb3Rf", - "ZGlza191cGRhdGVfc3RyYXRlZ3kYMiABKAsyNC5nb29nbGUuY29udGFpbmVy", - "LnYxLlNlY29uZGFyeUJvb3REaXNrVXBkYXRlU3RyYXRlZ3lIAYgBARIzChBt", - "YXhfcnVuX2R1cmF0aW9uGDUgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0", - "aW9uEl4KGWxvY2FsX3NzZF9lbmNyeXB0aW9uX21vZGUYNiABKA4yNi5nb29n", - "bGUuY29udGFpbmVyLnYxLk5vZGVDb25maWcuTG9jYWxTc2RFbmNyeXB0aW9u", - "TW9kZUgCiAEBElcKFWVmZmVjdGl2ZV9jZ3JvdXBfbW9kZRg3IAEoDjIzLmdv", - "b2dsZS5jb250YWluZXIudjEuTm9kZUNvbmZpZy5FZmZlY3RpdmVDZ3JvdXBN", - "b2RlQgPgQQMSFwoKZmxleF9zdGFydBg4IAEoCEgDiAEBEjAKCWJvb3RfZGlz", - "axg5IAEoCzIdLmdvb2dsZS5jb250YWluZXIudjEuQm9vdERpc2saLwoNTWV0", - "YWRhdGFFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBGi0K", - "C0xhYmVsc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEa", - "NQoTUmVzb3VyY2VMYWJlbHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUY", - "AiABKAk6AjgBInoKFkxvY2FsU3NkRW5jcnlwdGlvbk1vZGUSKQolTE9DQUxf", - "U1NEX0VOQ1JZUFRJT05fTU9ERV9VTlNQRUNJRklFRBAAEhcKE1NUQU5EQVJE", - "X0VOQ1JZUFRJT04QARIcChhFUEhFTUVSQUxfS0VZX0VOQ1JZUFRJT04QAiJ4", - "ChNFZmZlY3RpdmVDZ3JvdXBNb2RlEiUKIUVGRkVDVElWRV9DR1JPVVBfTU9E", - "RV9VTlNQRUNJRklFRBAAEhwKGEVGRkVDVElWRV9DR1JPVVBfTU9ERV9WMRAB", - "EhwKGEVGRkVDVElWRV9DR1JPVVBfTU9ERV9WMhACQg4KDF9mYXN0X3NvY2tl", - "dEImCiRfc2Vjb25kYXJ5X2Jvb3RfZGlza191cGRhdGVfc3RyYXRlZ3lCHAoa", - "X2xvY2FsX3NzZF9lbmNyeXB0aW9uX21vZGVCDQoLX2ZsZXhfc3RhcnQipAMK", - "F0FkdmFuY2VkTWFjaGluZUZlYXR1cmVzEh0KEHRocmVhZHNfcGVyX2NvcmUY", - "ASABKANIAIgBARIpChxlbmFibGVfbmVzdGVkX3ZpcnR1YWxpemF0aW9uGAIg", - "ASgISAGIAQEScAobcGVyZm9ybWFuY2VfbW9uaXRvcmluZ191bml0GAMgASgO", - "MkYuZ29vZ2xlLmNvbnRhaW5lci52MS5BZHZhbmNlZE1hY2hpbmVGZWF0dXJl", - "cy5QZXJmb3JtYW5jZU1vbml0b3JpbmdVbml0SAKIAQEidwoZUGVyZm9ybWFu", - "Y2VNb25pdG9yaW5nVW5pdBIrCidQRVJGT1JNQU5DRV9NT05JVE9SSU5HX1VO", - "SVRfVU5TUEVDSUZJRUQQABIRCg1BUkNISVRFQ1RVUkFMEAESDAoIU1RBTkRB", - "UkQQAhIMCghFTkhBTkNFRBADQhMKEV90aHJlYWRzX3Blcl9jb3JlQh8KHV9l", - "bmFibGVfbmVzdGVkX3ZpcnR1YWxpemF0aW9uQh4KHF9wZXJmb3JtYW5jZV9t", - "b25pdG9yaW5nX3VuaXQilgcKEU5vZGVOZXR3b3JrQ29uZmlnEh0KEGNyZWF0", - "ZV9wb2RfcmFuZ2UYBCABKAhCA+BBBBIRCglwb2RfcmFuZ2UYBSABKAkSGwoT", - "cG9kX2lwdjRfY2lkcl9ibG9jaxgGIAEoCRIhChRlbmFibGVfcHJpdmF0ZV9u", - "b2RlcxgJIAEoCEgAiAEBEmgKGm5ldHdvcmtfcGVyZm9ybWFuY2VfY29uZmln", - "GAsgASgLMj8uZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlTmV0d29ya0NvbmZp", - "Zy5OZXR3b3JrUGVyZm9ybWFuY2VDb25maWdIAYgBARJWCh1wb2RfY2lkcl9v", - "dmVycHJvdmlzaW9uX2NvbmZpZxgNIAEoCzIvLmdvb2dsZS5jb250YWluZXIu", - "djEuUG9kQ0lEUk92ZXJwcm92aXNpb25Db25maWcSWQofYWRkaXRpb25hbF9u", - "b2RlX25ldHdvcmtfY29uZmlncxgOIAMoCzIwLmdvb2dsZS5jb250YWluZXIu", - "djEuQWRkaXRpb25hbE5vZGVOZXR3b3JrQ29uZmlnElcKHmFkZGl0aW9uYWxf", - "cG9kX25ldHdvcmtfY29uZmlncxgPIAMoCzIvLmdvb2dsZS5jb250YWluZXIu", - "djEuQWRkaXRpb25hbFBvZE5ldHdvcmtDb25maWcSJwoacG9kX2lwdjRfcmFu", - "Z2VfdXRpbGl6YXRpb24YECABKAFCA+BBAxIXCgpzdWJuZXR3b3JrGBMgASgJ", - "QgPgQQMSSAoTbmV0d29ya190aWVyX2NvbmZpZxgUIAEoCzImLmdvb2dsZS5j", - "b250YWluZXIudjEuTmV0d29ya1RpZXJDb25maWdCA+BBAxrUAQoYTmV0d29y", - "a1BlcmZvcm1hbmNlQ29uZmlnEm4KG3RvdGFsX2VncmVzc19iYW5kd2lkdGhf", - "dGllchgBIAEoDjJELmdvb2dsZS5jb250YWluZXIudjEuTm9kZU5ldHdvcmtD", - "b25maWcuTmV0d29ya1BlcmZvcm1hbmNlQ29uZmlnLlRpZXJIAIgBASIoCgRU", - "aWVyEhQKEFRJRVJfVU5TUEVDSUZJRUQQABIKCgZUSUVSXzEQAUIeChxfdG90", - "YWxfZWdyZXNzX2JhbmR3aWR0aF90aWVyQhcKFV9lbmFibGVfcHJpdmF0ZV9u", - "b2Rlc0IdChtfbmV0d29ya19wZXJmb3JtYW5jZV9jb25maWciQgobQWRkaXRp", - "b25hbE5vZGVOZXR3b3JrQ29uZmlnEg8KB25ldHdvcmsYASABKAkSEgoKc3Vi", - "bmV0d29yaxgCIAEoCSKrAQoaQWRkaXRpb25hbFBvZE5ldHdvcmtDb25maWcS", - "EgoKc3VibmV0d29yaxgBIAEoCRIbChNzZWNvbmRhcnlfcG9kX3JhbmdlGAIg", - "ASgJEkYKEW1heF9wb2RzX3Blcl9ub2RlGAMgASgLMiYuZ29vZ2xlLmNvbnRh", - "aW5lci52MS5NYXhQb2RzQ29uc3RyYWludEgAiAEBQhQKEl9tYXhfcG9kc19w", - "ZXJfbm9kZSJZChZTaGllbGRlZEluc3RhbmNlQ29uZmlnEhoKEmVuYWJsZV9z", - "ZWN1cmVfYm9vdBgBIAEoCBIjChtlbmFibGVfaW50ZWdyaXR5X21vbml0b3Jp", - "bmcYAiABKAgiawoNU2FuZGJveENvbmZpZxI1CgR0eXBlGAIgASgOMicuZ29v", - "Z2xlLmNvbnRhaW5lci52MS5TYW5kYm94Q29uZmlnLlR5cGUiIwoEVHlwZRIP", - "CgtVTlNQRUNJRklFRBAAEgoKBkdWSVNPUhABIh0KCkdjZnNDb25maWcSDwoH", - "ZW5hYmxlZBgBIAEoCCLfAQoTUmVzZXJ2YXRpb25BZmZpbml0eRJPChhjb25z", - "dW1lX3Jlc2VydmF0aW9uX3R5cGUYASABKA4yLS5nb29nbGUuY29udGFpbmVy", - "LnYxLlJlc2VydmF0aW9uQWZmaW5pdHkuVHlwZRILCgNrZXkYAiABKAkSDgoG", - "dmFsdWVzGAMgAygJIloKBFR5cGUSDwoLVU5TUEVDSUZJRUQQABISCg5OT19S", - "RVNFUlZBVElPThABEhMKD0FOWV9SRVNFUlZBVElPThACEhgKFFNQRUNJRklD", - "X1JFU0VSVkFUSU9OEAMiyQIKEFNvbGVUZW5hbnRDb25maWcSSwoPbm9kZV9h", - "ZmZpbml0aWVzGAEgAygLMjIuZ29vZ2xlLmNvbnRhaW5lci52MS5Tb2xlVGVu", - "YW50Q29uZmlnLk5vZGVBZmZpbml0eRIfCg1taW5fbm9kZV9jcHVzGAIgASgF", - "QgPgQQFIAIgBARq0AQoMTm9kZUFmZmluaXR5EgsKA2tleRgBIAEoCRJNCghv", - "cGVyYXRvchgCIAEoDjI7Lmdvb2dsZS5jb250YWluZXIudjEuU29sZVRlbmFu", - "dENvbmZpZy5Ob2RlQWZmaW5pdHkuT3BlcmF0b3ISDgoGdmFsdWVzGAMgAygJ", - "IjgKCE9wZXJhdG9yEhgKFE9QRVJBVE9SX1VOU1BFQ0lGSUVEEAASBgoCSU4Q", - "ARIKCgZOT1RfSU4QAkIQCg5fbWluX25vZGVfY3B1cyL7BQoQQ29udGFpbmVy", - "ZENvbmZpZxJpCh5wcml2YXRlX3JlZ2lzdHJ5X2FjY2Vzc19jb25maWcYASAB", - "KAsyQS5nb29nbGUuY29udGFpbmVyLnYxLkNvbnRhaW5lcmRDb25maWcuUHJp", - "dmF0ZVJlZ2lzdHJ5QWNjZXNzQ29uZmlnElQKEHdyaXRhYmxlX2Nncm91cHMY", - "AiABKAsyNS5nb29nbGUuY29udGFpbmVyLnYxLkNvbnRhaW5lcmRDb25maWcu", - "V3JpdGFibGVDZ3JvdXBzQgPgQQEa/AMKG1ByaXZhdGVSZWdpc3RyeUFjY2Vz", - "c0NvbmZpZxIPCgdlbmFibGVkGAEgASgIEo8BCiNjZXJ0aWZpY2F0ZV9hdXRo", - "b3JpdHlfZG9tYWluX2NvbmZpZxgCIAMoCzJiLmdvb2dsZS5jb250YWluZXIu", - "djEuQ29udGFpbmVyZENvbmZpZy5Qcml2YXRlUmVnaXN0cnlBY2Nlc3NDb25m", - "aWcuQ2VydGlmaWNhdGVBdXRob3JpdHlEb21haW5Db25maWcauQIKIENlcnRp", - "ZmljYXRlQXV0aG9yaXR5RG9tYWluQ29uZmlnEg0KBWZxZG5zGAEgAygJErYB", - "CiVnY3Bfc2VjcmV0X21hbmFnZXJfY2VydGlmaWNhdGVfY29uZmlnGAIgASgL", - "MoQBLmdvb2dsZS5jb250YWluZXIudjEuQ29udGFpbmVyZENvbmZpZy5Qcml2", - "YXRlUmVnaXN0cnlBY2Nlc3NDb25maWcuQ2VydGlmaWNhdGVBdXRob3JpdHlE", - "b21haW5Db25maWcuR0NQU2VjcmV0TWFuYWdlckNlcnRpZmljYXRlQ29uZmln", - "SAAaNwohR0NQU2VjcmV0TWFuYWdlckNlcnRpZmljYXRlQ29uZmlnEhIKCnNl", - "Y3JldF91cmkYASABKAlCFAoSY2VydGlmaWNhdGVfY29uZmlnGicKD1dyaXRh", - "YmxlQ2dyb3VwcxIUCgdlbmFibGVkGAEgASgIQgPgQQEiuQEKCU5vZGVUYWlu", - "dBILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAkSNQoGZWZmZWN0GAMgASgO", - "MiUuZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlVGFpbnQuRWZmZWN0IlkKBkVm", - "ZmVjdBIWChJFRkZFQ1RfVU5TUEVDSUZJRUQQABIPCgtOT19TQ0hFRFVMRRAB", - "EhYKElBSRUZFUl9OT19TQ0hFRFVMRRACEg4KCk5PX0VYRUNVVEUQAyI8CgpO", - "b2RlVGFpbnRzEi4KBnRhaW50cxgBIAMoCzIeLmdvb2dsZS5jb250YWluZXIu", - "djEuTm9kZVRhaW50IngKCk5vZGVMYWJlbHMSOwoGbGFiZWxzGAEgAygLMisu", - "Z29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlTGFiZWxzLkxhYmVsc0VudHJ5Gi0K", - "C0xhYmVsc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEi", - "gAEKDlJlc291cmNlTGFiZWxzEj8KBmxhYmVscxgBIAMoCzIvLmdvb2dsZS5j", - "b250YWluZXIudjEuUmVzb3VyY2VMYWJlbHMuTGFiZWxzRW50cnkaLQoLTGFi", - "ZWxzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASIbCgtO", - "ZXR3b3JrVGFncxIMCgR0YWdzGAEgAygJIugBCgpNYXN0ZXJBdXRoEhQKCHVz", - "ZXJuYW1lGAEgASgJQgIYARIUCghwYXNzd29yZBgCIAEoCUICGAESTwoZY2xp", - "ZW50X2NlcnRpZmljYXRlX2NvbmZpZxgDIAEoCzIsLmdvb2dsZS5jb250YWlu", - "ZXIudjEuQ2xpZW50Q2VydGlmaWNhdGVDb25maWcSIwoWY2x1c3Rlcl9jYV9j", - "ZXJ0aWZpY2F0ZRhkIAEoCUID4EEDEh8KEmNsaWVudF9jZXJ0aWZpY2F0ZRhl", - "IAEoCUID4EEDEhcKCmNsaWVudF9rZXkYZiABKAlCA+BBAyI7ChdDbGllbnRD", - "ZXJ0aWZpY2F0ZUNvbmZpZxIgChhpc3N1ZV9jbGllbnRfY2VydGlmaWNhdGUY", - "ASABKAgi/AkKDEFkZG9uc0NvbmZpZxJDChNodHRwX2xvYWRfYmFsYW5jaW5n", - "GAEgASgLMiYuZ29vZ2xlLmNvbnRhaW5lci52MS5IdHRwTG9hZEJhbGFuY2lu", - "ZxJRChpob3Jpem9udGFsX3BvZF9hdXRvc2NhbGluZxgCIAEoCzItLmdvb2ds", - "ZS5jb250YWluZXIudjEuSG9yaXpvbnRhbFBvZEF1dG9zY2FsaW5nEkoKFGt1", - "YmVybmV0ZXNfZGFzaGJvYXJkGAMgASgLMiguZ29vZ2xlLmNvbnRhaW5lci52", - "MS5LdWJlcm5ldGVzRGFzaGJvYXJkQgIYARJHChVuZXR3b3JrX3BvbGljeV9j", - "b25maWcYBCABKAsyKC5nb29nbGUuY29udGFpbmVyLnYxLk5ldHdvcmtQb2xp", - "Y3lDb25maWcSPQoQY2xvdWRfcnVuX2NvbmZpZxgHIAEoCzIjLmdvb2dsZS5j", - "b250YWluZXIudjEuQ2xvdWRSdW5Db25maWcSPQoQZG5zX2NhY2hlX2NvbmZp", - "ZxgIIAEoCzIjLmdvb2dsZS5jb250YWluZXIudjEuRG5zQ2FjaGVDb25maWcS", - "SwoXY29uZmlnX2Nvbm5lY3Rvcl9jb25maWcYCiABKAsyKi5nb29nbGUuY29u", - "dGFpbmVyLnYxLkNvbmZpZ0Nvbm5lY3RvckNvbmZpZxJkCiVnY2VfcGVyc2lz", - "dGVudF9kaXNrX2NzaV9kcml2ZXJfY29uZmlnGAsgASgLMjUuZ29vZ2xlLmNv", - "bnRhaW5lci52MS5HY2VQZXJzaXN0ZW50RGlza0NzaURyaXZlckNvbmZpZxJZ", - "Ch9nY3BfZmlsZXN0b3JlX2NzaV9kcml2ZXJfY29uZmlnGA4gASgLMjAuZ29v", - "Z2xlLmNvbnRhaW5lci52MS5HY3BGaWxlc3RvcmVDc2lEcml2ZXJDb25maWcS", - "SgoXZ2tlX2JhY2t1cF9hZ2VudF9jb25maWcYECABKAsyKS5nb29nbGUuY29u", - "dGFpbmVyLnYxLkdrZUJhY2t1cEFnZW50Q29uZmlnEk8KGmdjc19mdXNlX2Nz", - "aV9kcml2ZXJfY29uZmlnGBEgASgLMisuZ29vZ2xlLmNvbnRhaW5lci52MS5H", - "Y3NGdXNlQ3NpRHJpdmVyQ29uZmlnEkYKEnN0YXRlZnVsX2hhX2NvbmZpZxgS", - "IAEoCzIlLmdvb2dsZS5jb250YWluZXIudjEuU3RhdGVmdWxIQUNvbmZpZ0ID", - "4EEBEloKH3BhcmFsbGVsc3RvcmVfY3NpX2RyaXZlcl9jb25maWcYEyABKAsy", - "MS5nb29nbGUuY29udGFpbmVyLnYxLlBhcmFsbGVsc3RvcmVDc2lEcml2ZXJD", - "b25maWcSSAoTcmF5X29wZXJhdG9yX2NvbmZpZxgVIAEoCzImLmdvb2dsZS5j", - "b250YWluZXIudjEuUmF5T3BlcmF0b3JDb25maWdCA+BBARJaCh9oaWdoX3Nj", - "YWxlX2NoZWNrcG9pbnRpbmdfY29uZmlnGBYgASgLMjEuZ29vZ2xlLmNvbnRh", - "aW5lci52MS5IaWdoU2NhbGVDaGVja3BvaW50aW5nQ29uZmlnEkwKGGx1c3Ry", - "ZV9jc2lfZHJpdmVyX2NvbmZpZxgXIAEoCzIqLmdvb2dsZS5jb250YWluZXIu", - "djEuTHVzdHJlQ3NpRHJpdmVyQ29uZmlnIiUKEUh0dHBMb2FkQmFsYW5jaW5n", - "EhAKCGRpc2FibGVkGAEgASgIIiwKGEhvcml6b250YWxQb2RBdXRvc2NhbGlu", - "ZxIQCghkaXNhYmxlZBgBIAEoCCInChNLdWJlcm5ldGVzRGFzaGJvYXJkEhAK", - "CGRpc2FibGVkGAEgASgIIicKE05ldHdvcmtQb2xpY3lDb25maWcSEAoIZGlz", - "YWJsZWQYASABKAgiIQoORG5zQ2FjaGVDb25maWcSDwoHZW5hYmxlZBgBIAEo", - "CCI5CiZQcml2YXRlQ2x1c3Rlck1hc3Rlckdsb2JhbEFjY2Vzc0NvbmZpZxIP", - "CgdlbmFibGVkGAEgASgIIugCChRQcml2YXRlQ2x1c3RlckNvbmZpZxIgChRl", - "bmFibGVfcHJpdmF0ZV9ub2RlcxgBIAEoCEICGAESIwoXZW5hYmxlX3ByaXZh", - "dGVfZW5kcG9pbnQYAiABKAhCAhgBEh4KFm1hc3Rlcl9pcHY0X2NpZHJfYmxv", - "Y2sYAyABKAkSHwoQcHJpdmF0ZV9lbmRwb2ludBgEIAEoCUIFGAHgQQMSHgoP", - "cHVibGljX2VuZHBvaW50GAUgASgJQgUYAeBBAxIZCgxwZWVyaW5nX25hbWUY", - "ByABKAlCA+BBAxJkChttYXN0ZXJfZ2xvYmFsX2FjY2Vzc19jb25maWcYCCAB", - "KAsyOy5nb29nbGUuY29udGFpbmVyLnYxLlByaXZhdGVDbHVzdGVyTWFzdGVy", - "R2xvYmFsQWNjZXNzQ29uZmlnQgIYARInChtwcml2YXRlX2VuZHBvaW50X3N1", - "Ym5ldHdvcmsYCiABKAlCAhgBIkQKGUF1dGhlbnRpY2F0b3JHcm91cHNDb25m", - "aWcSDwoHZW5hYmxlZBgBIAEoCBIWCg5zZWN1cml0eV9ncm91cBgCIAEoCSLu", - "AQoOQ2xvdWRSdW5Db25maWcSEAoIZGlzYWJsZWQYASABKAgSUAoSbG9hZF9i", - "YWxhbmNlcl90eXBlGAMgASgOMjQuZ29vZ2xlLmNvbnRhaW5lci52MS5DbG91", - "ZFJ1bkNvbmZpZy5Mb2FkQmFsYW5jZXJUeXBlIngKEExvYWRCYWxhbmNlclR5", - "cGUSIgoeTE9BRF9CQUxBTkNFUl9UWVBFX1VOU1BFQ0lGSUVEEAASHwobTE9B", - "RF9CQUxBTkNFUl9UWVBFX0VYVEVSTkFMEAESHwobTE9BRF9CQUxBTkNFUl9U", - "WVBFX0lOVEVSTkFMEAIiKAoVQ29uZmlnQ29ubmVjdG9yQ29uZmlnEg8KB2Vu", - "YWJsZWQYASABKAgiMwogR2NlUGVyc2lzdGVudERpc2tDc2lEcml2ZXJDb25m", - "aWcSDwoHZW5hYmxlZBgBIAEoCCIuChtHY3BGaWxlc3RvcmVDc2lEcml2ZXJD", - "b25maWcSDwoHZW5hYmxlZBgBIAEoCCIpChZHY3NGdXNlQ3NpRHJpdmVyQ29u", - "ZmlnEg8KB2VuYWJsZWQYASABKAgiLwocUGFyYWxsZWxzdG9yZUNzaURyaXZl", - "ckNvbmZpZxIPCgdlbmFibGVkGAEgASgIIi8KHEhpZ2hTY2FsZUNoZWNrcG9p", - "bnRpbmdDb25maWcSDwoHZW5hYmxlZBgBIAEoCCJPChVMdXN0cmVDc2lEcml2", - "ZXJDb25maWcSDwoHZW5hYmxlZBgBIAEoCBIlChllbmFibGVfbGVnYWN5X2x1", - "c3RyZV9wb3J0GAMgASgIQgIYASLYAQoRUmF5T3BlcmF0b3JDb25maWcSDwoH", - "ZW5hYmxlZBgBIAEoCBJVChpyYXlfY2x1c3Rlcl9sb2dnaW5nX2NvbmZpZxgC", - "IAEoCzIsLmdvb2dsZS5jb250YWluZXIudjEuUmF5Q2x1c3RlckxvZ2dpbmdD", - "b25maWdCA+BBARJbCh1yYXlfY2x1c3Rlcl9tb25pdG9yaW5nX2NvbmZpZxgD", - "IAEoCzIvLmdvb2dsZS5jb250YWluZXIudjEuUmF5Q2x1c3Rlck1vbml0b3Jp", - "bmdDb25maWdCA+BBASInChRHa2VCYWNrdXBBZ2VudENvbmZpZxIPCgdlbmFi", - "bGVkGAEgASgIIiMKEFN0YXRlZnVsSEFDb25maWcSDwoHZW5hYmxlZBgBIAEo", - "CCLqAgoeTWFzdGVyQXV0aG9yaXplZE5ldHdvcmtzQ29uZmlnEg8KB2VuYWJs", - "ZWQYASABKAgSUgoLY2lkcl9ibG9ja3MYAiADKAsyPS5nb29nbGUuY29udGFp", - "bmVyLnYxLk1hc3RlckF1dGhvcml6ZWROZXR3b3Jrc0NvbmZpZy5DaWRyQmxv", - "Y2sSLAofZ2NwX3B1YmxpY19jaWRyc19hY2Nlc3NfZW5hYmxlZBgDIAEoCEgA", - "iAEBEjEKJHByaXZhdGVfZW5kcG9pbnRfZW5mb3JjZW1lbnRfZW5hYmxlZBgF", - "IAEoCEgBiAEBGjUKCUNpZHJCbG9jaxIUCgxkaXNwbGF5X25hbWUYASABKAkS", - "EgoKY2lkcl9ibG9jaxgCIAEoCUIiCiBfZ2NwX3B1YmxpY19jaWRyc19hY2Nl", - "c3NfZW5hYmxlZEInCiVfcHJpdmF0ZV9lbmRwb2ludF9lbmZvcmNlbWVudF9l", - "bmFibGVkIh0KCkxlZ2FjeUFiYWMSDwoHZW5hYmxlZBgBIAEoCCKRAQoNTmV0", - "d29ya1BvbGljeRI9Cghwcm92aWRlchgBIAEoDjIrLmdvb2dsZS5jb250YWlu", - "ZXIudjEuTmV0d29ya1BvbGljeS5Qcm92aWRlchIPCgdlbmFibGVkGAIgASgI", - "IjAKCFByb3ZpZGVyEhgKFFBST1ZJREVSX1VOU1BFQ0lGSUVEEAASCgoGQ0FM", - "SUNPEAEi4wEKE0JpbmFyeUF1dGhvcml6YXRpb24SEwoHZW5hYmxlZBgBIAEo", - "CEICGAESUAoPZXZhbHVhdGlvbl9tb2RlGAIgASgOMjcuZ29vZ2xlLmNvbnRh", - "aW5lci52MS5CaW5hcnlBdXRob3JpemF0aW9uLkV2YWx1YXRpb25Nb2RlImUK", - "DkV2YWx1YXRpb25Nb2RlEh8KG0VWQUxVQVRJT05fTU9ERV9VTlNQRUNJRklF", - "RBAAEgwKCERJU0FCTEVEEAESJAogUFJPSkVDVF9TSU5HTEVUT05fUE9MSUNZ", - "X0VORk9SQ0UQAiItChpQb2RDSURST3ZlcnByb3Zpc2lvbkNvbmZpZxIPCgdk", - "aXNhYmxlGAEgASgIIqQIChJJUEFsbG9jYXRpb25Qb2xpY3kSFgoOdXNlX2lw", - "X2FsaWFzZXMYASABKAgSGQoRY3JlYXRlX3N1Ym5ldHdvcmsYAiABKAgSFwoP", - "c3VibmV0d29ya19uYW1lGAMgASgJEh0KEWNsdXN0ZXJfaXB2NF9jaWRyGAQg", - "ASgJQgIYARIaCg5ub2RlX2lwdjRfY2lkchgFIAEoCUICGAESHgoSc2Vydmlj", - "ZXNfaXB2NF9jaWRyGAYgASgJQgIYARIkChxjbHVzdGVyX3NlY29uZGFyeV9y", - "YW5nZV9uYW1lGAcgASgJEiUKHXNlcnZpY2VzX3NlY29uZGFyeV9yYW5nZV9u", - "YW1lGAggASgJEh8KF2NsdXN0ZXJfaXB2NF9jaWRyX2Jsb2NrGAkgASgJEhwK", - "FG5vZGVfaXB2NF9jaWRyX2Jsb2NrGAogASgJEiAKGHNlcnZpY2VzX2lwdjRf", - "Y2lkcl9ibG9jaxgLIAEoCRIfChN0cHVfaXB2NF9jaWRyX2Jsb2NrGA0gASgJ", - "QgIYARISCgp1c2Vfcm91dGVzGA8gASgIEjIKCnN0YWNrX3R5cGUYECABKA4y", - "Hi5nb29nbGUuY29udGFpbmVyLnYxLlN0YWNrVHlwZRI9ChBpcHY2X2FjY2Vz", - "c190eXBlGBEgASgOMiMuZ29vZ2xlLmNvbnRhaW5lci52MS5JUHY2QWNjZXNz", - "VHlwZRJWCh1wb2RfY2lkcl9vdmVycHJvdmlzaW9uX2NvbmZpZxgVIAEoCzIv", - "Lmdvb2dsZS5jb250YWluZXIudjEuUG9kQ0lEUk92ZXJwcm92aXNpb25Db25m", - "aWcSIwoWc3VibmV0X2lwdjZfY2lkcl9ibG9jaxgWIAEoCUID4EEDEiUKGHNl", - "cnZpY2VzX2lwdjZfY2lkcl9ibG9jaxgXIAEoCUID4EEDElkKHGFkZGl0aW9u", - "YWxfcG9kX3Jhbmdlc19jb25maWcYGCABKAsyLi5nb29nbGUuY29udGFpbmVy", - "LnYxLkFkZGl0aW9uYWxQb2RSYW5nZXNDb25maWdCA+BBAxIvCiJkZWZhdWx0", - "X3BvZF9pcHY0X3JhbmdlX3V0aWxpemF0aW9uGBkgASgBQgPgQQMSWAocYWRk", - "aXRpb25hbF9pcF9yYW5nZXNfY29uZmlncxgdIAMoCzItLmdvb2dsZS5jb250", - "YWluZXIudjEuQWRkaXRpb25hbElQUmFuZ2VzQ29uZmlnQgPgQQMSQgoQYXV0", - "b19pcGFtX2NvbmZpZxgeIAEoCzIjLmdvb2dsZS5jb250YWluZXIudjEuQXV0", - "b0lwYW1Db25maWdCA+BBARJDChNuZXR3b3JrX3RpZXJfY29uZmlnGB8gASgL", - "MiYuZ29vZ2xlLmNvbnRhaW5lci52MS5OZXR3b3JrVGllckNvbmZpZyKrIgoH", - "Q2x1c3RlchIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEh4K", - "EmluaXRpYWxfbm9kZV9jb3VudBgDIAEoBUICGAESOAoLbm9kZV9jb25maWcY", - "BCABKAsyHy5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVDb25maWdCAhgBEjQK", - "C21hc3Rlcl9hdXRoGAUgASgLMh8uZ29vZ2xlLmNvbnRhaW5lci52MS5NYXN0", - "ZXJBdXRoEhcKD2xvZ2dpbmdfc2VydmljZRgGIAEoCRIaChJtb25pdG9yaW5n", - "X3NlcnZpY2UYByABKAkSDwoHbmV0d29yaxgIIAEoCRIZChFjbHVzdGVyX2lw", - "djRfY2lkchgJIAEoCRI4Cg1hZGRvbnNfY29uZmlnGAogASgLMiEuZ29vZ2xl", - "LmNvbnRhaW5lci52MS5BZGRvbnNDb25maWcSEgoKc3VibmV0d29yaxgLIAEo", - "CRIxCgpub2RlX3Bvb2xzGAwgAygLMh0uZ29vZ2xlLmNvbnRhaW5lci52MS5O", - "b2RlUG9vbBIRCglsb2NhdGlvbnMYDSADKAkSHwoXZW5hYmxlX2t1YmVybmV0", - "ZXNfYWxwaGEYDiABKAgSJAobYWxwaGFfY2x1c3Rlcl9mZWF0dXJlX2dhdGVz", - "GKABIAMoCRJJCg9yZXNvdXJjZV9sYWJlbHMYDyADKAsyMC5nb29nbGUuY29u", - "dGFpbmVyLnYxLkNsdXN0ZXIuUmVzb3VyY2VMYWJlbHNFbnRyeRIZChFsYWJl", - "bF9maW5nZXJwcmludBgQIAEoCRI0CgtsZWdhY3lfYWJhYxgSIAEoCzIfLmdv", - "b2dsZS5jb250YWluZXIudjEuTGVnYWN5QWJhYxI6Cg5uZXR3b3JrX3BvbGlj", - "eRgTIAEoCzIiLmdvb2dsZS5jb250YWluZXIudjEuTmV0d29ya1BvbGljeRJF", - "ChRpcF9hbGxvY2F0aW9uX3BvbGljeRgUIAEoCzInLmdvb2dsZS5jb250YWlu", - "ZXIudjEuSVBBbGxvY2F0aW9uUG9saWN5EmIKIW1hc3Rlcl9hdXRob3JpemVk", - "X25ldHdvcmtzX2NvbmZpZxgWIAEoCzIzLmdvb2dsZS5jb250YWluZXIudjEu", - "TWFzdGVyQXV0aG9yaXplZE5ldHdvcmtzQ29uZmlnQgIYARJCChJtYWludGVu", - "YW5jZV9wb2xpY3kYFyABKAsyJi5nb29nbGUuY29udGFpbmVyLnYxLk1haW50", - "ZW5hbmNlUG9saWN5EkYKFGJpbmFyeV9hdXRob3JpemF0aW9uGBggASgLMigu", - "Z29vZ2xlLmNvbnRhaW5lci52MS5CaW5hcnlBdXRob3JpemF0aW9uEjwKC2F1", - "dG9zY2FsaW5nGBogASgLMicuZ29vZ2xlLmNvbnRhaW5lci52MS5DbHVzdGVy", - "QXV0b3NjYWxpbmcSOgoObmV0d29ya19jb25maWcYGyABKAsyIi5nb29nbGUu", - "Y29udGFpbmVyLnYxLk5ldHdvcmtDb25maWcSSwobZGVmYXVsdF9tYXhfcG9k", - "c19jb25zdHJhaW50GB4gASgLMiYuZ29vZ2xlLmNvbnRhaW5lci52MS5NYXhQ", - "b2RzQ29uc3RyYWludBJUChxyZXNvdXJjZV91c2FnZV9leHBvcnRfY29uZmln", - "GCEgASgLMi4uZ29vZ2xlLmNvbnRhaW5lci52MS5SZXNvdXJjZVVzYWdlRXhw", - "b3J0Q29uZmlnElMKG2F1dGhlbnRpY2F0b3JfZ3JvdXBzX2NvbmZpZxgiIAEo", - "CzIuLmdvb2dsZS5jb250YWluZXIudjEuQXV0aGVudGljYXRvckdyb3Vwc0Nv", - "bmZpZxJJChZwcml2YXRlX2NsdXN0ZXJfY29uZmlnGCUgASgLMikuZ29vZ2xl", - "LmNvbnRhaW5lci52MS5Qcml2YXRlQ2x1c3RlckNvbmZpZxJEChNkYXRhYmFz", - "ZV9lbmNyeXB0aW9uGCYgASgLMicuZ29vZ2xlLmNvbnRhaW5lci52MS5EYXRh", - "YmFzZUVuY3J5cHRpb24STQoYdmVydGljYWxfcG9kX2F1dG9zY2FsaW5nGCcg", - "ASgLMisuZ29vZ2xlLmNvbnRhaW5lci52MS5WZXJ0aWNhbFBvZEF1dG9zY2Fs", - "aW5nEjoKDnNoaWVsZGVkX25vZGVzGCggASgLMiIuZ29vZ2xlLmNvbnRhaW5l", - "ci52MS5TaGllbGRlZE5vZGVzEjwKD3JlbGVhc2VfY2hhbm5lbBgpIAEoCzIj", - "Lmdvb2dsZS5jb250YWluZXIudjEuUmVsZWFzZUNoYW5uZWwSTQoYd29ya2xv", - "YWRfaWRlbnRpdHlfY29uZmlnGCsgASgLMisuZ29vZ2xlLmNvbnRhaW5lci52", - "MS5Xb3JrbG9hZElkZW50aXR5Q29uZmlnEkAKEW1lc2hfY2VydGlmaWNhdGVz", - "GEMgASgLMiUuZ29vZ2xlLmNvbnRhaW5lci52MS5NZXNoQ2VydGlmaWNhdGVz", - "EkkKFmNvc3RfbWFuYWdlbWVudF9jb25maWcYLSABKAsyKS5nb29nbGUuY29u", - "dGFpbmVyLnYxLkNvc3RNYW5hZ2VtZW50Q29uZmlnEkQKE25vdGlmaWNhdGlv", - "bl9jb25maWcYMSABKAsyJy5nb29nbGUuY29udGFpbmVyLnYxLk5vdGlmaWNh", - "dGlvbkNvbmZpZxJCChJjb25maWRlbnRpYWxfbm9kZXMYMiABKAsyJi5nb29n", - "bGUuY29udGFpbmVyLnYxLkNvbmZpZGVudGlhbE5vZGVzEksKF2lkZW50aXR5", - "X3NlcnZpY2VfY29uZmlnGDYgASgLMiouZ29vZ2xlLmNvbnRhaW5lci52MS5J", - "ZGVudGl0eVNlcnZpY2VDb25maWcSFgoJc2VsZl9saW5rGGQgASgJQgPgQQMS", - "EwoEem9uZRhlIAEoCUIFGAHgQQMSFQoIZW5kcG9pbnQYZiABKAlCA+BBAxIf", - "Chdpbml0aWFsX2NsdXN0ZXJfdmVyc2lvbhhnIAEoCRIjChZjdXJyZW50X21h", - "c3Rlcl92ZXJzaW9uGGggASgJQgPgQQMSIwoUY3VycmVudF9ub2RlX3ZlcnNp", - "b24YaSABKAlCBRgB4EEDEhgKC2NyZWF0ZV90aW1lGGogASgJQgPgQQMSOAoG", - "c3RhdHVzGGsgASgOMiMuZ29vZ2xlLmNvbnRhaW5lci52MS5DbHVzdGVyLlN0", - "YXR1c0ID4EEDEh0KDnN0YXR1c19tZXNzYWdlGGwgASgJQgUYAeBBAxIgChNu", - "b2RlX2lwdjRfY2lkcl9zaXplGG0gASgFQgPgQQMSHwoSc2VydmljZXNfaXB2", - "NF9jaWRyGG4gASgJQgPgQQMSIgoTaW5zdGFuY2VfZ3JvdXBfdXJscxhvIAMo", - "CUIFGAHgQQMSIQoSY3VycmVudF9ub2RlX2NvdW50GHAgASgFQgUYAeBBAxIY", - "CgtleHBpcmVfdGltZRhxIAEoCUID4EEDEhUKCGxvY2F0aW9uGHIgASgJQgPg", - "QQMSFgoKZW5hYmxlX3RwdRhzIAEoCEICGAESIgoTdHB1X2lwdjRfY2lkcl9i", - "bG9jaxh0IAEoCUIFGAHgQQMSOAoKY29uZGl0aW9ucxh2IAMoCzIkLmdvb2ds", - "ZS5jb250YWluZXIudjEuU3RhdHVzQ29uZGl0aW9uEjIKCWF1dG9waWxvdBiA", - "ASABKAsyHi5nb29nbGUuY29udGFpbmVyLnYxLkF1dG9waWxvdBIQCgJpZBiB", - "ASABKAlCA+BBAxJHChJub2RlX3Bvb2xfZGVmYXVsdHMYgwEgASgLMiUuZ29v", - "Z2xlLmNvbnRhaW5lci52MS5Ob2RlUG9vbERlZmF1bHRzSACIAQESOwoObG9n", - "Z2luZ19jb25maWcYhAEgASgLMiIuZ29vZ2xlLmNvbnRhaW5lci52MS5Mb2dn", - "aW5nQ29uZmlnEkEKEW1vbml0b3JpbmdfY29uZmlnGIUBIAEoCzIlLmdvb2ds", - "ZS5jb250YWluZXIudjEuTW9uaXRvcmluZ0NvbmZpZxJHChVub2RlX3Bvb2xf", - "YXV0b19jb25maWcYiAEgASgLMicuZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2Rl", - "UG9vbEF1dG9Db25maWcSPQoPcG9kX2F1dG9zY2FsaW5nGIoBIAEoCzIjLmdv", - "b2dsZS5jb250YWluZXIudjEuUG9kQXV0b3NjYWxpbmcSDQoEZXRhZxiLASAB", - "KAkSKgoFZmxlZXQYjAEgASgLMhouZ29vZ2xlLmNvbnRhaW5lci52MS5GbGVl", - "dBJMChdzZWN1cml0eV9wb3N0dXJlX2NvbmZpZxiRASABKAsyKi5nb29nbGUu", - "Y29udGFpbmVyLnYxLlNlY3VyaXR5UG9zdHVyZUNvbmZpZxJZCh5jb250cm9s", - "X3BsYW5lX2VuZHBvaW50c19jb25maWcYkgEgASgLMjAuZ29vZ2xlLmNvbnRh", - "aW5lci52MS5Db250cm9sUGxhbmVFbmRwb2ludHNDb25maWcSRAoUZW5hYmxl", - "X2s4c19iZXRhX2FwaXMYjwEgASgLMiUuZ29vZ2xlLmNvbnRhaW5lci52MS5L", - "OHNCZXRhQVBJQ29uZmlnEkUKEWVudGVycHJpc2VfY29uZmlnGJUBIAEoCzIl", - "Lmdvb2dsZS5jb250YWluZXIudjEuRW50ZXJwcmlzZUNvbmZpZ0ICGAESSAoV", - "c2VjcmV0X21hbmFnZXJfY29uZmlnGJYBIAEoCzIoLmdvb2dsZS5jb250YWlu", - "ZXIudjEuU2VjcmV0TWFuYWdlckNvbmZpZxJQChljb21wbGlhbmNlX3Bvc3R1", - "cmVfY29uZmlnGJcBIAEoCzIsLmdvb2dsZS5jb250YWluZXIudjEuQ29tcGxp", - "YW5jZVBvc3R1cmVDb25maWcSIAoNc2F0aXNmaWVzX3B6cxiYASABKAhCA+BB", - "A0gBiAEBEiAKDXNhdGlzZmllc19wemkYmQEgASgIQgPgQQNIAogBARJSChh1", - "c2VyX21hbmFnZWRfa2V5c19jb25maWcYmgEgASgLMiouZ29vZ2xlLmNvbnRh", - "aW5lci52MS5Vc2VyTWFuYWdlZEtleXNDb25maWdIA4gBARJJChNyYmFjX2Jp", - "bmRpbmdfY29uZmlnGJwBIAEoCzImLmdvb2dsZS5jb250YWluZXIudjEuUkJB", - "Q0JpbmRpbmdDb25maWdIBIgBARJLChdna2VfYXV0b191cGdyYWRlX2NvbmZp", - "ZxijASABKAsyKS5nb29nbGUuY29udGFpbmVyLnYxLkdrZUF1dG9VcGdyYWRl", - "Q29uZmlnElwKH2Fub255bW91c19hdXRoZW50aWNhdGlvbl9jb25maWcYpAEg", - "ASgLMjIuZ29vZ2xlLmNvbnRhaW5lci52MS5Bbm9ueW1vdXNBdXRoZW50aWNh", - "dGlvbkNvbmZpZxo1ChNSZXNvdXJjZUxhYmVsc0VudHJ5EgsKA2tleRgBIAEo", - "CRINCgV2YWx1ZRgCIAEoCToCOAEidwoGU3RhdHVzEhYKElNUQVRVU19VTlNQ", - "RUNJRklFRBAAEhAKDFBST1ZJU0lPTklORxABEgsKB1JVTk5JTkcQAhIPCgtS", - "RUNPTkNJTElORxADEgwKCFNUT1BQSU5HEAQSCQoFRVJST1IQBRIMCghERUdS", - "QURFRBAGQhUKE19ub2RlX3Bvb2xfZGVmYXVsdHNCEAoOX3NhdGlzZmllc19w", - "enNCEAoOX3NhdGlzZmllc19wemlCGwoZX3VzZXJfbWFuYWdlZF9rZXlzX2Nv", - "bmZpZ0IWChRfcmJhY19iaW5kaW5nX2NvbmZpZyLvAQoRUkJBQ0JpbmRpbmdD", - "b25maWcSOwouZW5hYmxlX2luc2VjdXJlX2JpbmRpbmdfc3lzdGVtX3VuYXV0", - "aGVudGljYXRlZBgBIAEoCEgAiAEBEjkKLGVuYWJsZV9pbnNlY3VyZV9iaW5k", - "aW5nX3N5c3RlbV9hdXRoZW50aWNhdGVkGAIgASgISAGIAQFCMQovX2VuYWJs", - "ZV9pbnNlY3VyZV9iaW5kaW5nX3N5c3RlbV91bmF1dGhlbnRpY2F0ZWRCLwot", - "X2VuYWJsZV9pbnNlY3VyZV9iaW5kaW5nX3N5c3RlbV9hdXRoZW50aWNhdGVk", - "IukEChVVc2VyTWFuYWdlZEtleXNDb25maWcSOAoKY2x1c3Rlcl9jYRgKIAEo", - "CUIk+kEhCh9wcml2YXRlY2EuZ29vZ2xlYXBpcy5jb20vQ2FQb29sEjkKC2V0", - "Y2RfYXBpX2NhGAsgASgJQiT6QSEKH3ByaXZhdGVjYS5nb29nbGVhcGlzLmNv", - "bS9DYVBvb2wSOgoMZXRjZF9wZWVyX2NhGAwgASgJQiT6QSEKH3ByaXZhdGVj", - "YS5nb29nbGVhcGlzLmNvbS9DYVBvb2wSUwocc2VydmljZV9hY2NvdW50X3Np", - "Z25pbmdfa2V5cxgNIAMoCUIt+kEqCihjbG91ZGttcy5nb29nbGVhcGlzLmNv", - "bS9DcnlwdG9LZXlWZXJzaW9uElgKIXNlcnZpY2VfYWNjb3VudF92ZXJpZmlj", - "YXRpb25fa2V5cxgOIAMoCUIt+kEqCihjbG91ZGttcy5nb29nbGVhcGlzLmNv", - "bS9DcnlwdG9LZXlWZXJzaW9uEjwKDmFnZ3JlZ2F0aW9uX2NhGA8gASgJQiT6", - "QSEKH3ByaXZhdGVjYS5nb29nbGVhcGlzLmNvbS9DYVBvb2wSWAohY29udHJv", - "bF9wbGFuZV9kaXNrX2VuY3J5cHRpb25fa2V5GBAgASgJQi36QSoKKGNsb3Vk", - "a21zLmdvb2dsZWFwaXMuY29tL0NyeXB0b0tleVZlcnNpb24SWAohZ2tlb3Bz", - "X2V0Y2RfYmFja3VwX2VuY3J5cHRpb25fa2V5GBEgASgJQi36QSoKKGNsb3Vk", - "a21zLmdvb2dsZWFwaXMuY29tL0NyeXB0b0tleVZlcnNpb24ingEKHUFub255", - "bW91c0F1dGhlbnRpY2F0aW9uQ29uZmlnEkUKBG1vZGUYASABKA4yNy5nb29n", - "bGUuY29udGFpbmVyLnYxLkFub255bW91c0F1dGhlbnRpY2F0aW9uQ29uZmln", - "Lk1vZGUiNgoETW9kZRIUChBNT0RFX1VOU1BFQ0lGSUVEEAASCwoHRU5BQkxF", - "RBABEgsKB0xJTUlURUQQAiK6AgoXQ29tcGxpYW5jZVBvc3R1cmVDb25maWcS", - "RAoEbW9kZRgBIAEoDjIxLmdvb2dsZS5jb250YWluZXIudjEuQ29tcGxpYW5j", - "ZVBvc3R1cmVDb25maWcuTW9kZUgAiAEBEl0KFGNvbXBsaWFuY2Vfc3RhbmRh", - "cmRzGAIgAygLMj8uZ29vZ2xlLmNvbnRhaW5lci52MS5Db21wbGlhbmNlUG9z", - "dHVyZUNvbmZpZy5Db21wbGlhbmNlU3RhbmRhcmQaOAoSQ29tcGxpYW5jZVN0", - "YW5kYXJkEhUKCHN0YW5kYXJkGAEgASgJSACIAQFCCwoJX3N0YW5kYXJkIjcK", - "BE1vZGUSFAoQTU9ERV9VTlNQRUNJRklFRBAAEgwKCERJU0FCTEVEEAESCwoH", - "RU5BQkxFRBACQgcKBV9tb2RlIigKEEs4c0JldGFBUElDb25maWcSFAoMZW5h", - "YmxlZF9hcGlzGAEgAygJIq4DChVTZWN1cml0eVBvc3R1cmVDb25maWcSQgoE", - "bW9kZRgBIAEoDjIvLmdvb2dsZS5jb250YWluZXIudjEuU2VjdXJpdHlQb3N0", - "dXJlQ29uZmlnLk1vZGVIAIgBARJdChJ2dWxuZXJhYmlsaXR5X21vZGUYAiAB", - "KA4yPC5nb29nbGUuY29udGFpbmVyLnYxLlNlY3VyaXR5UG9zdHVyZUNvbmZp", - "Zy5WdWxuZXJhYmlsaXR5TW9kZUgBiAEBIkUKBE1vZGUSFAoQTU9ERV9VTlNQ", - "RUNJRklFRBAAEgwKCERJU0FCTEVEEAESCQoFQkFTSUMQAhIOCgpFTlRFUlBS", - "SVNFEAMiigEKEVZ1bG5lcmFiaWxpdHlNb2RlEiIKHlZVTE5FUkFCSUxJVFlf", - "TU9ERV9VTlNQRUNJRklFRBAAEhoKFlZVTE5FUkFCSUxJVFlfRElTQUJMRUQQ", - "ARIXChNWVUxORVJBQklMSVRZX0JBU0lDEAISHAoYVlVMTkVSQUJJTElUWV9F", - "TlRFUlBSSVNFEANCBwoFX21vZGVCFQoTX3Z1bG5lcmFiaWxpdHlfbW9kZSKg", - "AgoSTm9kZVBvb2xBdXRvQ29uZmlnEjYKDG5ldHdvcmtfdGFncxgBIAEoCzIg", - "Lmdvb2dsZS5jb250YWluZXIudjEuTmV0d29ya1RhZ3MSRwoVcmVzb3VyY2Vf", - "bWFuYWdlcl90YWdzGAIgASgLMiguZ29vZ2xlLmNvbnRhaW5lci52MS5SZXNv", - "dXJjZU1hbmFnZXJUYWdzEkMKE25vZGVfa3ViZWxldF9jb25maWcYAyABKAsy", - "Ji5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVLdWJlbGV0Q29uZmlnEkQKEWxp", - "bnV4X25vZGVfY29uZmlnGAQgASgLMiQuZ29vZ2xlLmNvbnRhaW5lci52MS5M", - "aW51eE5vZGVDb25maWdCA+BBAyJZChBOb2RlUG9vbERlZmF1bHRzEkUKFG5v", - "ZGVfY29uZmlnX2RlZmF1bHRzGAEgASgLMicuZ29vZ2xlLmNvbnRhaW5lci52", - "MS5Ob2RlQ29uZmlnRGVmYXVsdHMilQIKEk5vZGVDb25maWdEZWZhdWx0cxI0", - "CgtnY2ZzX2NvbmZpZxgBIAEoCzIfLmdvb2dsZS5jb250YWluZXIudjEuR2Nm", - "c0NvbmZpZxJCCg5sb2dnaW5nX2NvbmZpZxgDIAEoCzIqLmdvb2dsZS5jb250", - "YWluZXIudjEuTm9kZVBvb2xMb2dnaW5nQ29uZmlnEkAKEWNvbnRhaW5lcmRf", - "Y29uZmlnGAQgASgLMiUuZ29vZ2xlLmNvbnRhaW5lci52MS5Db250YWluZXJk", - "Q29uZmlnEkMKE25vZGVfa3ViZWxldF9jb25maWcYBiABKAsyJi5nb29nbGUu", - "Y29udGFpbmVyLnYxLk5vZGVLdWJlbGV0Q29uZmlnIo0tCg1DbHVzdGVyVXBk", - "YXRlEhwKFGRlc2lyZWRfbm9kZV92ZXJzaW9uGAQgASgJEiIKGmRlc2lyZWRf", - "bW9uaXRvcmluZ19zZXJ2aWNlGAUgASgJEkAKFWRlc2lyZWRfYWRkb25zX2Nv", - "bmZpZxgGIAEoCzIhLmdvb2dsZS5jb250YWluZXIudjEuQWRkb25zQ29uZmln", - "EhwKFGRlc2lyZWRfbm9kZV9wb29sX2lkGAcgASgJEhoKEmRlc2lyZWRfaW1h", - "Z2VfdHlwZRgIIAEoCRJMChtkZXNpcmVkX2RhdGFiYXNlX2VuY3J5cHRpb24Y", - "LiABKAsyJy5nb29nbGUuY29udGFpbmVyLnYxLkRhdGFiYXNlRW5jcnlwdGlv", - "bhJVCiBkZXNpcmVkX3dvcmtsb2FkX2lkZW50aXR5X2NvbmZpZxgvIAEoCzIr", - "Lmdvb2dsZS5jb250YWluZXIudjEuV29ya2xvYWRJZGVudGl0eUNvbmZpZxJI", - "ChlkZXNpcmVkX21lc2hfY2VydGlmaWNhdGVzGEMgASgLMiUuZ29vZ2xlLmNv", - "bnRhaW5lci52MS5NZXNoQ2VydGlmaWNhdGVzEkIKFmRlc2lyZWRfc2hpZWxk", - "ZWRfbm9kZXMYMCABKAsyIi5nb29nbGUuY29udGFpbmVyLnYxLlNoaWVsZGVk", - "Tm9kZXMSUQoeZGVzaXJlZF9jb3N0X21hbmFnZW1lbnRfY29uZmlnGDEgASgL", - "MikuZ29vZ2xlLmNvbnRhaW5lci52MS5Db3N0TWFuYWdlbWVudENvbmZpZxI6", - "ChJkZXNpcmVkX2Ruc19jb25maWcYNSABKAsyHi5nb29nbGUuY29udGFpbmVy", - "LnYxLkROU0NvbmZpZxJPCh1kZXNpcmVkX25vZGVfcG9vbF9hdXRvc2NhbGlu", - "ZxgJIAEoCzIoLmdvb2dsZS5jb250YWluZXIudjEuTm9kZVBvb2xBdXRvc2Nh", - "bGluZxIZChFkZXNpcmVkX2xvY2F0aW9ucxgKIAMoCRJqCilkZXNpcmVkX21h", - "c3Rlcl9hdXRob3JpemVkX25ldHdvcmtzX2NvbmZpZxgMIAEoCzIzLmdvb2ds", - "ZS5jb250YWluZXIudjEuTWFzdGVyQXV0aG9yaXplZE5ldHdvcmtzQ29uZmln", - "QgIYARJMChtkZXNpcmVkX2NsdXN0ZXJfYXV0b3NjYWxpbmcYDyABKAsyJy5n", - "b29nbGUuY29udGFpbmVyLnYxLkNsdXN0ZXJBdXRvc2NhbGluZxJOChxkZXNp", - "cmVkX2JpbmFyeV9hdXRob3JpemF0aW9uGBAgASgLMiguZ29vZ2xlLmNvbnRh", - "aW5lci52MS5CaW5hcnlBdXRob3JpemF0aW9uEh8KF2Rlc2lyZWRfbG9nZ2lu", - "Z19zZXJ2aWNlGBMgASgJElwKJGRlc2lyZWRfcmVzb3VyY2VfdXNhZ2VfZXhw", - "b3J0X2NvbmZpZxgVIAEoCzIuLmdvb2dsZS5jb250YWluZXIudjEuUmVzb3Vy", - "Y2VVc2FnZUV4cG9ydENvbmZpZxJVCiBkZXNpcmVkX3ZlcnRpY2FsX3BvZF9h", - "dXRvc2NhbGluZxgWIAEoCzIrLmdvb2dsZS5jb250YWluZXIudjEuVmVydGlj", - "YWxQb2RBdXRvc2NhbGluZxJVCh5kZXNpcmVkX3ByaXZhdGVfY2x1c3Rlcl9j", - "b25maWcYGSABKAsyKS5nb29nbGUuY29udGFpbmVyLnYxLlByaXZhdGVDbHVz", - "dGVyQ29uZmlnQgIYARJcCiRkZXNpcmVkX2ludHJhX25vZGVfdmlzaWJpbGl0", - "eV9jb25maWcYGiABKAsyLi5nb29nbGUuY29udGFpbmVyLnYxLkludHJhTm9k", - "ZVZpc2liaWxpdHlDb25maWcSSwobZGVzaXJlZF9kZWZhdWx0X3NuYXRfc3Rh", - "dHVzGBwgASgLMiYuZ29vZ2xlLmNvbnRhaW5lci52MS5EZWZhdWx0U25hdFN0", - "YXR1cxJEChdkZXNpcmVkX3JlbGVhc2VfY2hhbm5lbBgfIAEoCzIjLmdvb2ds", - "ZS5jb250YWluZXIudjEuUmVsZWFzZUNoYW5uZWwSUQofZGVzaXJlZF9sNGls", - "Yl9zdWJzZXR0aW5nX2NvbmZpZxgnIAEoCzIoLmdvb2dsZS5jb250YWluZXIu", - "djEuSUxCU3Vic2V0dGluZ0NvbmZpZxJIChlkZXNpcmVkX2RhdGFwYXRoX3By", - "b3ZpZGVyGDIgASgOMiUuZ29vZ2xlLmNvbnRhaW5lci52MS5EYXRhcGF0aFBy", - "b3ZpZGVyElgKImRlc2lyZWRfcHJpdmF0ZV9pcHY2X2dvb2dsZV9hY2Nlc3MY", - "MyABKA4yLC5nb29nbGUuY29udGFpbmVyLnYxLlByaXZhdGVJUHY2R29vZ2xl", - "QWNjZXNzEkwKG2Rlc2lyZWRfbm90aWZpY2F0aW9uX2NvbmZpZxg3IAEoCzIn", - "Lmdvb2dsZS5jb250YWluZXIudjEuTm90aWZpY2F0aW9uQ29uZmlnElsKI2Rl", - "c2lyZWRfYXV0aGVudGljYXRvcl9ncm91cHNfY29uZmlnGD8gASgLMi4uZ29v", - "Z2xlLmNvbnRhaW5lci52MS5BdXRoZW50aWNhdG9yR3JvdXBzQ29uZmlnEkIK", - "FmRlc2lyZWRfbG9nZ2luZ19jb25maWcYQCABKAsyIi5nb29nbGUuY29udGFp", - "bmVyLnYxLkxvZ2dpbmdDb25maWcSSAoZZGVzaXJlZF9tb25pdG9yaW5nX2Nv", - "bmZpZxhBIAEoCzIlLmdvb2dsZS5jb250YWluZXIudjEuTW9uaXRvcmluZ0Nv", - "bmZpZxJTCh9kZXNpcmVkX2lkZW50aXR5X3NlcnZpY2VfY29uZmlnGEIgASgL", - "MiouZ29vZ2xlLmNvbnRhaW5lci52MS5JZGVudGl0eVNlcnZpY2VDb25maWcS", - "WgojZGVzaXJlZF9zZXJ2aWNlX2V4dGVybmFsX2lwc19jb25maWcYPCABKAsy", - "LS5nb29nbGUuY29udGFpbmVyLnYxLlNlcnZpY2VFeHRlcm5hbElQc0NvbmZp", - "ZxIwCh9kZXNpcmVkX2VuYWJsZV9wcml2YXRlX2VuZHBvaW50GEcgASgIQgIY", - "AUgAiAEBEjEKJGRlc2lyZWRfZGVmYXVsdF9lbmFibGVfcHJpdmF0ZV9ub2Rl", - "cxhIIAEoCEgBiAEBEmAKJmRlc2lyZWRfY29udHJvbF9wbGFuZV9lbmRwb2lu", - "dHNfY29uZmlnGEkgASgLMjAuZ29vZ2xlLmNvbnRhaW5lci52MS5Db250cm9s", - "UGxhbmVFbmRwb2ludHNDb25maWcSHgoWZGVzaXJlZF9tYXN0ZXJfdmVyc2lv", - "bhhkIAEoCRI8ChNkZXNpcmVkX2djZnNfY29uZmlnGG0gASgLMh8uZ29vZ2xl", - "LmNvbnRhaW5lci52MS5HY2ZzQ29uZmlnElQKKmRlc2lyZWRfbm9kZV9wb29s", - "X2F1dG9fY29uZmlnX25ldHdvcmtfdGFncxhuIAEoCzIgLmdvb2dsZS5jb250", - "YWluZXIudjEuTmV0d29ya1RhZ3MSRAoXZGVzaXJlZF9wb2RfYXV0b3NjYWxp", - "bmcYcSABKAsyIy5nb29nbGUuY29udGFpbmVyLnYxLlBvZEF1dG9zY2FsaW5n", - "EkkKGmRlc2lyZWRfZ2F0ZXdheV9hcGlfY29uZmlnGHIgASgLMiUuZ29vZ2xl", - "LmNvbnRhaW5lci52MS5HYXRld2F5QVBJQ29uZmlnEgwKBGV0YWcYcyABKAkS", - "VAogZGVzaXJlZF9ub2RlX3Bvb2xfbG9nZ2luZ19jb25maWcYdCABKAsyKi5n", - "b29nbGUuY29udGFpbmVyLnYxLk5vZGVQb29sTG9nZ2luZ0NvbmZpZxIxCg1k", - "ZXNpcmVkX2ZsZWV0GHUgASgLMhouZ29vZ2xlLmNvbnRhaW5lci52MS5GbGVl", - "dBI6ChJkZXNpcmVkX3N0YWNrX3R5cGUYdyABKA4yHi5nb29nbGUuY29udGFp", - "bmVyLnYxLlN0YWNrVHlwZRJUChxhZGRpdGlvbmFsX3BvZF9yYW5nZXNfY29u", - "ZmlnGHggASgLMi4uZ29vZ2xlLmNvbnRhaW5lci52MS5BZGRpdGlvbmFsUG9k", - "UmFuZ2VzQ29uZmlnElwKJHJlbW92ZWRfYWRkaXRpb25hbF9wb2RfcmFuZ2Vz", - "X2NvbmZpZxh5IAEoCzIuLmdvb2dsZS5jb250YWluZXIudjEuQWRkaXRpb25h", - "bFBvZFJhbmdlc0NvbmZpZxJDChRlbmFibGVfazhzX2JldGFfYXBpcxh6IAEo", - "CzIlLmdvb2dsZS5jb250YWluZXIudjEuSzhzQmV0YUFQSUNvbmZpZxJTCh9k", - "ZXNpcmVkX3NlY3VyaXR5X3Bvc3R1cmVfY29uZmlnGHwgASgLMiouZ29vZ2xl", - "LmNvbnRhaW5lci52MS5TZWN1cml0eVBvc3R1cmVDb25maWcSbgoiZGVzaXJl", - "ZF9uZXR3b3JrX3BlcmZvcm1hbmNlX2NvbmZpZxh9IAEoCzJCLmdvb2dsZS5j", - "b250YWluZXIudjEuTmV0d29ya0NvbmZpZy5DbHVzdGVyTmV0d29ya1BlcmZv", - "cm1hbmNlQ29uZmlnEi8KImRlc2lyZWRfZW5hYmxlX2ZxZG5fbmV0d29ya19w", - "b2xpY3kYfiABKAhIAogBARJcCihkZXNpcmVkX2F1dG9waWxvdF93b3JrbG9h", - "ZF9wb2xpY3lfY29uZmlnGIABIAEoCzIpLmdvb2dsZS5jb250YWluZXIudjEu", - "V29ya2xvYWRQb2xpY3lDb25maWcSRQoVZGVzaXJlZF9rOHNfYmV0YV9hcGlz", - "GIMBIAEoCzIlLmdvb2dsZS5jb250YWluZXIudjEuSzhzQmV0YUFQSUNvbmZp", - "ZxJJChlkZXNpcmVkX2NvbnRhaW5lcmRfY29uZmlnGIYBIAEoCzIlLmdvb2ds", - "ZS5jb250YWluZXIudjEuQ29udGFpbmVyZENvbmZpZxItCh9kZXNpcmVkX2Vu", - "YWJsZV9tdWx0aV9uZXR3b3JraW5nGIcBIAEoCEgDiAEBEmYKM2Rlc2lyZWRf", - "bm9kZV9wb29sX2F1dG9fY29uZmlnX3Jlc291cmNlX21hbmFnZXJfdGFncxiI", - "ASABKAsyKC5nb29nbGUuY29udGFpbmVyLnYxLlJlc291cmNlTWFuYWdlclRh", - "Z3MSYgokZGVzaXJlZF9pbl90cmFuc2l0X2VuY3J5cHRpb25fY29uZmlnGIkB", - "IAEoDjIuLmdvb2dsZS5jb250YWluZXIudjEuSW5UcmFuc2l0RW5jcnlwdGlv", - "bkNvbmZpZ0gEiAEBEj4KMGRlc2lyZWRfZW5hYmxlX2NpbGl1bV9jbHVzdGVy", - "d2lkZV9uZXR3b3JrX3BvbGljeRiKASABKAhIBYgBARJVCh1kZXNpcmVkX3Nl", - "Y3JldF9tYW5hZ2VyX2NvbmZpZxiLASABKAsyKC5nb29nbGUuY29udGFpbmVy", - "LnYxLlNlY3JldE1hbmFnZXJDb25maWdIBogBARJdCiFkZXNpcmVkX2NvbXBs", - "aWFuY2VfcG9zdHVyZV9jb25maWcYjAEgASgLMiwuZ29vZ2xlLmNvbnRhaW5l", - "ci52MS5Db21wbGlhbmNlUG9zdHVyZUNvbmZpZ0gHiAEBEkwKG2Rlc2lyZWRf", - "bm9kZV9rdWJlbGV0X2NvbmZpZxiNASABKAsyJi5nb29nbGUuY29udGFpbmVy", - "LnYxLk5vZGVLdWJlbGV0Q29uZmlnEl0KLGRlc2lyZWRfbm9kZV9wb29sX2F1", - "dG9fY29uZmlnX2t1YmVsZXRfY29uZmlnGI4BIAEoCzImLmdvb2dsZS5jb250", - "YWluZXIudjEuTm9kZUt1YmVsZXRDb25maWcSUQoYdXNlcl9tYW5hZ2VkX2tl", - "eXNfY29uZmlnGI8BIAEoCzIqLmdvb2dsZS5jb250YWluZXIudjEuVXNlck1h", - "bmFnZWRLZXlzQ29uZmlnQgIYARJRChtkZXNpcmVkX3JiYWNfYmluZGluZ19j", - "b25maWcYkAEgASgLMiYuZ29vZ2xlLmNvbnRhaW5lci52MS5SQkFDQmluZGlu", - "Z0NvbmZpZ0gIiAEBEmIKI2Rlc2lyZWRfYWRkaXRpb25hbF9pcF9yYW5nZXNf", - "Y29uZmlnGJEBIAEoCzI0Lmdvb2dsZS5jb250YWluZXIudjEuRGVzaXJlZEFk", - "ZGl0aW9uYWxJUFJhbmdlc0NvbmZpZxJUChlkZXNpcmVkX2VudGVycHJpc2Vf", - "Y29uZmlnGJMBIAEoCzIsLmdvb2dsZS5jb250YWluZXIudjEuRGVzaXJlZEVu", - "dGVycHJpc2VDb25maWdCAhgBEkYKGGRlc2lyZWRfYXV0b19pcGFtX2NvbmZp", - "ZxiUASABKAsyIy5nb29nbGUuY29udGFpbmVyLnYxLkF1dG9JcGFtQ29uZmln", - "EjsKLWRlc2lyZWRfZGlzYWJsZV9sNF9sYl9maXJld2FsbF9yZWNvbmNpbGlh", - "dGlvbhiVASABKAhICYgBARJeCi9kZXNpcmVkX25vZGVfcG9vbF9hdXRvX2Nv", - "bmZpZ19saW51eF9ub2RlX2NvbmZpZxiWASABKAsyJC5nb29nbGUuY29udGFp", - "bmVyLnYxLkxpbnV4Tm9kZUNvbmZpZxJVCiBkZXNpcmVkX3VzZXJfbWFuYWdl", - "ZF9rZXlzX2NvbmZpZxiYASABKAsyKi5nb29nbGUuY29udGFpbmVyLnYxLlVz", - "ZXJNYW5hZ2VkS2V5c0NvbmZpZxJkCidkZXNpcmVkX2Fub255bW91c19hdXRo", - "ZW50aWNhdGlvbl9jb25maWcYnAEgASgLMjIuZ29vZ2xlLmNvbnRhaW5lci52", - "MS5Bbm9ueW1vdXNBdXRoZW50aWNhdGlvbkNvbmZpZxJLChdna2VfYXV0b191", - "cGdyYWRlX2NvbmZpZxiaASABKAsyKS5nb29nbGUuY29udGFpbmVyLnYxLkdr", - "ZUF1dG9VcGdyYWRlQ29uZmlnEkwKG2Rlc2lyZWRfbmV0d29ya190aWVyX2Nv", - "bmZpZxibASABKAsyJi5nb29nbGUuY29udGFpbmVyLnYxLk5ldHdvcmtUaWVy", - "Q29uZmlnQiIKIF9kZXNpcmVkX2VuYWJsZV9wcml2YXRlX2VuZHBvaW50QicK", - "JV9kZXNpcmVkX2RlZmF1bHRfZW5hYmxlX3ByaXZhdGVfbm9kZXNCJQojX2Rl", - "c2lyZWRfZW5hYmxlX2ZxZG5fbmV0d29ya19wb2xpY3lCIgogX2Rlc2lyZWRf", - "ZW5hYmxlX211bHRpX25ldHdvcmtpbmdCJwolX2Rlc2lyZWRfaW5fdHJhbnNp", - "dF9lbmNyeXB0aW9uX2NvbmZpZ0IzCjFfZGVzaXJlZF9lbmFibGVfY2lsaXVt", - "X2NsdXN0ZXJ3aWRlX25ldHdvcmtfcG9saWN5QiAKHl9kZXNpcmVkX3NlY3Jl", - "dF9tYW5hZ2VyX2NvbmZpZ0IkCiJfZGVzaXJlZF9jb21wbGlhbmNlX3Bvc3R1", - "cmVfY29uZmlnQh4KHF9kZXNpcmVkX3JiYWNfYmluZGluZ19jb25maWdCMAou", - "X2Rlc2lyZWRfZGlzYWJsZV9sNF9sYl9maXJld2FsbF9yZWNvbmNpbGlhdGlv", - "biJxChlBZGRpdGlvbmFsUG9kUmFuZ2VzQ29uZmlnEhcKD3BvZF9yYW5nZV9u", - "YW1lcxgBIAMoCRI7Cg5wb2RfcmFuZ2VfaW5mbxgCIAMoCzIeLmdvb2dsZS5j", - "b250YWluZXIudjEuUmFuZ2VJbmZvQgPgQQMiTAoYQWRkaXRpb25hbElQUmFu", - "Z2VzQ29uZmlnEhIKCnN1Ym5ldHdvcmsYASABKAkSHAoUcG9kX2lwdjRfcmFu", - "Z2VfbmFtZXMYAiADKAkidgofRGVzaXJlZEFkZGl0aW9uYWxJUFJhbmdlc0Nv", - "bmZpZxJTChxhZGRpdGlvbmFsX2lwX3Jhbmdlc19jb25maWdzGAEgAygLMi0u", - "Z29vZ2xlLmNvbnRhaW5lci52MS5BZGRpdGlvbmFsSVBSYW5nZXNDb25maWci", - "MgoOQXV0b0lwYW1Db25maWcSFAoHZW5hYmxlZBgBIAEoCEgAiAEBQgoKCF9l", - "bmFibGVkIj4KCVJhbmdlSW5mbxIXCgpyYW5nZV9uYW1lGAEgASgJQgPgQQMS", - "GAoLdXRpbGl6YXRpb24YAiABKAFCA+BBAyJmChdEZXNpcmVkRW50ZXJwcmlz", - "ZUNvbmZpZxJHCgxkZXNpcmVkX3RpZXIYASABKA4yMS5nb29nbGUuY29udGFp", - "bmVyLnYxLkVudGVycHJpc2VDb25maWcuQ2x1c3RlclRpZXI6AhgBIuQICglP", - "cGVyYXRpb24SEQoEbmFtZRgBIAEoCUID4EEDEhMKBHpvbmUYAiABKAlCBRgB", - "4EEDEkAKDm9wZXJhdGlvbl90eXBlGAMgASgOMiMuZ29vZ2xlLmNvbnRhaW5l", - "ci52MS5PcGVyYXRpb24uVHlwZUID4EEDEjoKBnN0YXR1cxgEIAEoDjIlLmdv", - "b2dsZS5jb250YWluZXIudjEuT3BlcmF0aW9uLlN0YXR1c0ID4EEDEhMKBmRl", - "dGFpbBgIIAEoCUID4EEDEh0KDnN0YXR1c19tZXNzYWdlGAUgASgJQgUYAeBB", - "AxIWCglzZWxmX2xpbmsYBiABKAlCA+BBAxIYCgt0YXJnZXRfbGluaxgHIAEo", - "CUID4EEDEhUKCGxvY2F0aW9uGAkgASgJQgPgQQMSFwoKc3RhcnRfdGltZRgK", - "IAEoCUID4EEDEhUKCGVuZF90aW1lGAsgASgJQgPgQQMSPQoIcHJvZ3Jlc3MY", - "DCABKAsyJi5nb29nbGUuY29udGFpbmVyLnYxLk9wZXJhdGlvblByb2dyZXNz", - "QgPgQQMSRAoSY2x1c3Rlcl9jb25kaXRpb25zGA0gAygLMiQuZ29vZ2xlLmNv", - "bnRhaW5lci52MS5TdGF0dXNDb25kaXRpb25CAhgBEkUKE25vZGVwb29sX2Nv", - "bmRpdGlvbnMYDiADKAsyJC5nb29nbGUuY29udGFpbmVyLnYxLlN0YXR1c0Nv", - "bmRpdGlvbkICGAESIQoFZXJyb3IYDyABKAsyEi5nb29nbGUucnBjLlN0YXR1", - "cyJSCgZTdGF0dXMSFgoSU1RBVFVTX1VOU1BFQ0lGSUVEEAASCwoHUEVORElO", - "RxABEgsKB1JVTk5JTkcQAhIICgRET05FEAMSDAoIQUJPUlRJTkcQBCLAAwoE", - "VHlwZRIUChBUWVBFX1VOU1BFQ0lGSUVEEAASEgoOQ1JFQVRFX0NMVVNURVIQ", - "ARISCg5ERUxFVEVfQ0xVU1RFUhACEhIKDlVQR1JBREVfTUFTVEVSEAMSEQoN", - "VVBHUkFERV9OT0RFUxAEEhIKDlJFUEFJUl9DTFVTVEVSEAUSEgoOVVBEQVRF", - "X0NMVVNURVIQBhIUChBDUkVBVEVfTk9ERV9QT09MEAcSFAoQREVMRVRFX05P", - "REVfUE9PTBAIEhwKGFNFVF9OT0RFX1BPT0xfTUFOQUdFTUVOVBAJEhUKEUFV", - "VE9fUkVQQUlSX05PREVTEAoSGgoSQVVUT19VUEdSQURFX05PREVTEAsaAggB", - "EhIKClNFVF9MQUJFTFMQDBoCCAESFwoPU0VUX01BU1RFUl9BVVRIEA0aAggB", - "EhYKElNFVF9OT0RFX1BPT0xfU0laRRAOEhoKElNFVF9ORVRXT1JLX1BPTElD", - "WRAPGgIIARIeChZTRVRfTUFJTlRFTkFOQ0VfUE9MSUNZEBAaAggBEhIKDlJF", - "U0laRV9DTFVTVEVSEBISGQoVRkxFRVRfRkVBVFVSRV9VUEdSQURFEBMiuwIK", - "EU9wZXJhdGlvblByb2dyZXNzEgwKBG5hbWUYASABKAkSNQoGc3RhdHVzGAIg", - "ASgOMiUuZ29vZ2xlLmNvbnRhaW5lci52MS5PcGVyYXRpb24uU3RhdHVzEj4K", - "B21ldHJpY3MYAyADKAsyLS5nb29nbGUuY29udGFpbmVyLnYxLk9wZXJhdGlv", - "blByb2dyZXNzLk1ldHJpYxI2CgZzdGFnZXMYBCADKAsyJi5nb29nbGUuY29u", - "dGFpbmVyLnYxLk9wZXJhdGlvblByb2dyZXNzGmkKBk1ldHJpYxIRCgRuYW1l", - "GAEgASgJQgPgQQISEwoJaW50X3ZhbHVlGAIgASgDSAASFgoMZG91YmxlX3Zh", - "bHVlGAMgASgBSAASFgoMc3RyaW5nX3ZhbHVlGAQgASgJSABCBwoFdmFsdWUi", - "hAEKFENyZWF0ZUNsdXN0ZXJSZXF1ZXN0EhYKCnByb2plY3RfaWQYASABKAlC", - "AhgBEhAKBHpvbmUYAiABKAlCAhgBEjIKB2NsdXN0ZXIYAyABKAsyHC5nb29n", - "bGUuY29udGFpbmVyLnYxLkNsdXN0ZXJCA+BBAhIOCgZwYXJlbnQYBSABKAki", - "YwoRR2V0Q2x1c3RlclJlcXVlc3QSFgoKcHJvamVjdF9pZBgBIAEoCUICGAES", - "EAoEem9uZRgCIAEoCUICGAESFgoKY2x1c3Rlcl9pZBgDIAEoCUICGAESDAoE", - "bmFtZRgFIAEoCSKfAQoUVXBkYXRlQ2x1c3RlclJlcXVlc3QSFgoKcHJvamVj", - "dF9pZBgBIAEoCUICGAESEAoEem9uZRgCIAEoCUICGAESFgoKY2x1c3Rlcl9p", - "ZBgDIAEoCUICGAESNwoGdXBkYXRlGAQgASgLMiIuZ29vZ2xlLmNvbnRhaW5l", - "ci52MS5DbHVzdGVyVXBkYXRlQgPgQQISDAoEbmFtZRgFIAEoCSL5DAoVVXBk", - "YXRlTm9kZVBvb2xSZXF1ZXN0EhYKCnByb2plY3RfaWQYASABKAlCAhgBEhAK", - "BHpvbmUYAiABKAlCAhgBEhYKCmNsdXN0ZXJfaWQYAyABKAlCAhgBEhgKDG5v", - "ZGVfcG9vbF9pZBgEIAEoCUICGAESGQoMbm9kZV92ZXJzaW9uGAUgASgJQgPg", - "QQISFwoKaW1hZ2VfdHlwZRgGIAEoCUID4EECEgwKBG5hbWUYCCABKAkSEQoJ", - "bG9jYXRpb25zGA0gAygJEk0KGHdvcmtsb2FkX21ldGFkYXRhX2NvbmZpZxgO", - "IAEoCzIrLmdvb2dsZS5jb250YWluZXIudjEuV29ya2xvYWRNZXRhZGF0YUNv", - "bmZpZxJHChB1cGdyYWRlX3NldHRpbmdzGA8gASgLMi0uZ29vZ2xlLmNvbnRh", - "aW5lci52MS5Ob2RlUG9vbC5VcGdyYWRlU2V0dGluZ3MSLgoEdGFncxgQIAEo", - "CzIgLmdvb2dsZS5jb250YWluZXIudjEuTmV0d29ya1RhZ3MSLwoGdGFpbnRz", - "GBEgASgLMh8uZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlVGFpbnRzEi8KBmxh", - "YmVscxgSIAEoCzIfLmdvb2dsZS5jb250YWluZXIudjEuTm9kZUxhYmVscxI/", - "ChFsaW51eF9ub2RlX2NvbmZpZxgTIAEoCzIkLmdvb2dsZS5jb250YWluZXIu", - "djEuTGludXhOb2RlQ29uZmlnEj4KDmt1YmVsZXRfY29uZmlnGBQgASgLMiYu", - "Z29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlS3ViZWxldENvbmZpZxJDChNub2Rl", - "X25ldHdvcmtfY29uZmlnGBUgASgLMiYuZ29vZ2xlLmNvbnRhaW5lci52MS5O", - "b2RlTmV0d29ya0NvbmZpZxI0CgtnY2ZzX2NvbmZpZxgWIAEoCzIfLmdvb2ds", - "ZS5jb250YWluZXIudjEuR2Nmc0NvbmZpZxJCChJjb25maWRlbnRpYWxfbm9k", - "ZXMYFyABKAsyJi5nb29nbGUuY29udGFpbmVyLnYxLkNvbmZpZGVudGlhbE5v", - "ZGVzEi4KBWd2bmljGB0gASgLMh8uZ29vZ2xlLmNvbnRhaW5lci52MS5WaXJ0", - "dWFsTklDEgwKBGV0YWcYHiABKAkSNAoLZmFzdF9zb2NrZXQYHyABKAsyHy5n", - "b29nbGUuY29udGFpbmVyLnYxLkZhc3RTb2NrZXQSQgoObG9nZ2luZ19jb25m", - "aWcYICABKAsyKi5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVQb29sTG9nZ2lu", - "Z0NvbmZpZxI8Cg9yZXNvdXJjZV9sYWJlbHMYISABKAsyIy5nb29nbGUuY29u", - "dGFpbmVyLnYxLlJlc291cmNlTGFiZWxzEkMKE3dpbmRvd3Nfbm9kZV9jb25m", - "aWcYIiABKAsyJi5nb29nbGUuY29udGFpbmVyLnYxLldpbmRvd3NOb2RlQ29u", - "ZmlnEjwKDGFjY2VsZXJhdG9ycxgjIAMoCzImLmdvb2dsZS5jb250YWluZXIu", - "djEuQWNjZWxlcmF0b3JDb25maWcSGQoMbWFjaGluZV90eXBlGCQgASgJQgPg", - "QQESFgoJZGlza190eXBlGCUgASgJQgPgQQESGQoMZGlza19zaXplX2diGCYg", - "ASgDQgPgQQESRwoVcmVzb3VyY2VfbWFuYWdlcl90YWdzGCcgASgLMiguZ29v", - "Z2xlLmNvbnRhaW5lci52MS5SZXNvdXJjZU1hbmFnZXJUYWdzEkAKEWNvbnRh", - "aW5lcmRfY29uZmlnGCggASgLMiUuZ29vZ2xlLmNvbnRhaW5lci52MS5Db250", - "YWluZXJkQ29uZmlnEk0KE3F1ZXVlZF9wcm92aXNpb25pbmcYKiABKAsyMC5n", - "b29nbGUuY29udGFpbmVyLnYxLk5vZGVQb29sLlF1ZXVlZFByb3Zpc2lvbmlu", - "ZxIVCg1zdG9yYWdlX3Bvb2xzGCsgAygJEjMKEG1heF9ydW5fZHVyYXRpb24Y", - "LSABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24SFwoKZmxleF9zdGFy", - "dBguIAEoCEgAiAEBEjAKCWJvb3RfZGlzaxgvIAEoCzIdLmdvb2dsZS5jb250", - "YWluZXIudjEuQm9vdERpc2tCDQoLX2ZsZXhfc3RhcnQizQEKHVNldE5vZGVQ", - "b29sQXV0b3NjYWxpbmdSZXF1ZXN0EhYKCnByb2plY3RfaWQYASABKAlCAhgB", + "dXhOb2RlQ29uZmlnLlRyYW5zcGFyZW50SHVnZXBhZ2VEZWZyYWdCA+BBARJO", + "Cgtzd2FwX2NvbmZpZxgMIAEoCzIvLmdvb2dsZS5jb250YWluZXIudjEuTGlu", + "dXhOb2RlQ29uZmlnLlN3YXBDb25maWdCA+BBAUgBiAEBEmUKGm5vZGVfa2Vy", + "bmVsX21vZHVsZV9sb2FkaW5nGA0gASgLMjwuZ29vZ2xlLmNvbnRhaW5lci52", + "MS5MaW51eE5vZGVDb25maWcuTm9kZUtlcm5lbE1vZHVsZUxvYWRpbmdCA+BB", + "ARp/Cg9IdWdlcGFnZXNDb25maWcSIQoPaHVnZXBhZ2Vfc2l6ZTJtGAEgASgF", + "QgPgQQFIAIgBARIhCg9odWdlcGFnZV9zaXplMWcYAiABKAVCA+BBAUgBiAEB", + "QhIKEF9odWdlcGFnZV9zaXplMm1CEgoQX2h1Z2VwYWdlX3NpemUxZxqpBgoK", + "U3dhcENvbmZpZxIZCgdlbmFibGVkGAEgASgIQgPgQQFIAYgBARJlChFlbmNy", + "eXB0aW9uX2NvbmZpZxgCIAEoCzJALmdvb2dsZS5jb250YWluZXIudjEuTGlu", + "dXhOb2RlQ29uZmlnLlN3YXBDb25maWcuRW5jcnlwdGlvbkNvbmZpZ0ID4EEB", + "SAKIAQESXAoRYm9vdF9kaXNrX3Byb2ZpbGUYAyABKAsyPy5nb29nbGUuY29u", + "dGFpbmVyLnYxLkxpbnV4Tm9kZUNvbmZpZy5Td2FwQ29uZmlnLkJvb3REaXNr", + "UHJvZmlsZUgAEm8KG2VwaGVtZXJhbF9sb2NhbF9zc2RfcHJvZmlsZRgEIAEo", + "CzJILmdvb2dsZS5jb250YWluZXIudjEuTGludXhOb2RlQ29uZmlnLlN3YXBD", + "b25maWcuRXBoZW1lcmFsTG9jYWxTc2RQcm9maWxlSAASbwobZGVkaWNhdGVk", + "X2xvY2FsX3NzZF9wcm9maWxlGAUgASgLMkguZ29vZ2xlLmNvbnRhaW5lci52", + "MS5MaW51eE5vZGVDb25maWcuU3dhcENvbmZpZy5EZWRpY2F0ZWRMb2NhbFNz", + "ZFByb2ZpbGVIABo7ChBFbmNyeXB0aW9uQ29uZmlnEhoKCGRpc2FibGVkGAEg", + "ASgIQgPgQQFIAIgBAUILCglfZGlzYWJsZWQaVAoPQm9vdERpc2tQcm9maWxl", + "EhcKDXN3YXBfc2l6ZV9naWIYASABKANIABIbChFzd2FwX3NpemVfcGVyY2Vu", + "dBgCIAEoBUgAQgsKCXN3YXBfc2l6ZRpdChhFcGhlbWVyYWxMb2NhbFNzZFBy", + "b2ZpbGUSFwoNc3dhcF9zaXplX2dpYhgBIAEoA0gAEhsKEXN3YXBfc2l6ZV9w", + "ZXJjZW50GAIgASgFSABCCwoJc3dhcF9zaXplGi4KGERlZGljYXRlZExvY2Fs", + "U3NkUHJvZmlsZRISCgpkaXNrX2NvdW50GAEgASgDQhUKE3BlcmZvcm1hbmNl", + "X3Byb2ZpbGVCCgoIX2VuYWJsZWRCFAoSX2VuY3J5cHRpb25fY29uZmlnGs8B", + "ChdOb2RlS2VybmVsTW9kdWxlTG9hZGluZxJTCgZwb2xpY3kYASABKA4yQy5n", + "b29nbGUuY29udGFpbmVyLnYxLkxpbnV4Tm9kZUNvbmZpZy5Ob2RlS2VybmVs", + "TW9kdWxlTG9hZGluZy5Qb2xpY3kiXwoGUG9saWN5EhYKElBPTElDWV9VTlNQ", + "RUNJRklFRBAAEhoKFkVORk9SQ0VfU0lHTkVEX01PRFVMRVMQARIhCh1ET19O", + "T1RfRU5GT1JDRV9TSUdORURfTU9EVUxFUxACGi4KDFN5c2N0bHNFbnRyeRIL", + "CgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIlEKCkNncm91cE1vZGUS", + "GwoXQ0dST1VQX01PREVfVU5TUEVDSUZJRUQQABISCg5DR1JPVVBfTU9ERV9W", + "MRABEhIKDkNHUk9VUF9NT0RFX1YyEAIixQEKGlRyYW5zcGFyZW50SHVnZXBh", + "Z2VFbmFibGVkEiwKKFRSQU5TUEFSRU5UX0hVR0VQQUdFX0VOQUJMRURfVU5T", + "UEVDSUZJRUQQABInCiNUUkFOU1BBUkVOVF9IVUdFUEFHRV9FTkFCTEVEX0FM", + "V0FZUxABEigKJFRSQU5TUEFSRU5UX0hVR0VQQUdFX0VOQUJMRURfTUFEVklT", + "RRACEiYKIlRSQU5TUEFSRU5UX0hVR0VQQUdFX0VOQUJMRURfTkVWRVIQAyKb", + "AgoZVHJhbnNwYXJlbnRIdWdlcGFnZURlZnJhZxIrCidUUkFOU1BBUkVOVF9I", + "VUdFUEFHRV9ERUZSQUdfVU5TUEVDSUZJRUQQABImCiJUUkFOU1BBUkVOVF9I", + "VUdFUEFHRV9ERUZSQUdfQUxXQVlTEAESJQohVFJBTlNQQVJFTlRfSFVHRVBB", + "R0VfREVGUkFHX0RFRkVSEAISMgouVFJBTlNQQVJFTlRfSFVHRVBBR0VfREVG", + "UkFHX0RFRkVSX1dJVEhfTUFEVklTRRADEicKI1RSQU5TUEFSRU5UX0hVR0VQ", + "QUdFX0RFRlJBR19NQURWSVNFEAQSJQohVFJBTlNQQVJFTlRfSFVHRVBBR0Vf", + "REVGUkFHX05FVkVSEAVCDAoKX2h1Z2VwYWdlc0IOCgxfc3dhcF9jb25maWci", + "tAEKEVdpbmRvd3NOb2RlQ29uZmlnEkQKCm9zX3ZlcnNpb24YASABKA4yMC5n", + "b29nbGUuY29udGFpbmVyLnYxLldpbmRvd3NOb2RlQ29uZmlnLk9TVmVyc2lv", + "biJZCglPU1ZlcnNpb24SGgoWT1NfVkVSU0lPTl9VTlNQRUNJRklFRBAAEhcK", + "E09TX1ZFUlNJT05fTFRTQzIwMTkQARIXChNPU19WRVJTSU9OX0xUU0MyMDIy", + "EAIi3AkKEU5vZGVLdWJlbGV0Q29uZmlnEhoKEmNwdV9tYW5hZ2VyX3BvbGlj", + "eRgBIAEoCRJDChB0b3BvbG9neV9tYW5hZ2VyGAggASgLMiQuZ29vZ2xlLmNv", + "bnRhaW5lci52MS5Ub3BvbG9neU1hbmFnZXJCA+BBARI/Cg5tZW1vcnlfbWFu", + "YWdlchgJIAEoCzIiLmdvb2dsZS5jb250YWluZXIudjEuTWVtb3J5TWFuYWdl", + "ckID4EEBEjEKDWNwdV9jZnNfcXVvdGEYAiABKAsyGi5nb29nbGUucHJvdG9i", + "dWYuQm9vbFZhbHVlEhwKFGNwdV9jZnNfcXVvdGFfcGVyaW9kGAMgASgJEhYK", + "DnBvZF9waWRzX2xpbWl0GAQgASgDEjMKJmluc2VjdXJlX2t1YmVsZXRfcmVh", + "ZG9ubHlfcG9ydF9lbmFibGVkGAcgASgISACIAQESKwoeaW1hZ2VfZ2NfbG93", + "X3RocmVzaG9sZF9wZXJjZW50GAogASgFQgPgQQESLAofaW1hZ2VfZ2NfaGln", + "aF90aHJlc2hvbGRfcGVyY2VudBgLIAEoBUID4EEBEiEKFGltYWdlX21pbmlt", + "dW1fZ2NfYWdlGAwgASgJQgPgQQESIQoUaW1hZ2VfbWF4aW11bV9nY19hZ2UY", + "DSABKAlCA+BBARIjChZjb250YWluZXJfbG9nX21heF9zaXplGA4gASgJQgPg", + "QQESJAoXY29udGFpbmVyX2xvZ19tYXhfZmlsZXMYDyABKAVCA+BBARIjChZh", + "bGxvd2VkX3Vuc2FmZV9zeXNjdGxzGBAgAygJQgPgQQESQAoNZXZpY3Rpb25f", + "c29mdBgRIAEoCzIkLmdvb2dsZS5jb250YWluZXIudjEuRXZpY3Rpb25TaWdu", + "YWxzQgPgQQESUQoaZXZpY3Rpb25fc29mdF9ncmFjZV9wZXJpb2QYEiABKAsy", + "KC5nb29nbGUuY29udGFpbmVyLnYxLkV2aWN0aW9uR3JhY2VQZXJpb2RCA+BB", + "ARJSChhldmljdGlvbl9taW5pbXVtX3JlY2xhaW0YEyABKAsyKy5nb29nbGUu", + "Y29udGFpbmVyLnYxLkV2aWN0aW9uTWluaW11bVJlY2xhaW1CA+BBARIyCiVl", + "dmljdGlvbl9tYXhfcG9kX2dyYWNlX3BlcmlvZF9zZWNvbmRzGBQgASgFQgPg", + "QQESJQoYbWF4X3BhcmFsbGVsX2ltYWdlX3B1bGxzGBUgASgFQgPgQQESKQoX", + "c2luZ2xlX3Byb2Nlc3Nfb29tX2tpbGwYFiABKAhCA+BBAUgBiAEBEi8KHXNo", + "dXRkb3duX2dyYWNlX3BlcmlvZF9zZWNvbmRzGBogASgFQgPgQQFIAogBARI9", + "CitzaHV0ZG93bl9ncmFjZV9wZXJpb2RfY3JpdGljYWxfcG9kc19zZWNvbmRz", + "GBsgASgFQgPgQQFIA4gBAUIpCidfaW5zZWN1cmVfa3ViZWxldF9yZWFkb25s", + "eV9wb3J0X2VuYWJsZWRCGgoYX3NpbmdsZV9wcm9jZXNzX29vbV9raWxsQiAK", + "Hl9zaHV0ZG93bl9ncmFjZV9wZXJpb2Rfc2Vjb25kc0IuCixfc2h1dGRvd25f", + "Z3JhY2VfcGVyaW9kX2NyaXRpY2FsX3BvZHNfc2Vjb25kcyIwCg9Ub3BvbG9n", + "eU1hbmFnZXISDgoGcG9saWN5GAEgASgJEg0KBXNjb3BlGAIgASgJIh8KDU1l", + "bW9yeU1hbmFnZXISDgoGcG9saWN5GAEgASgJIs4BCg9FdmljdGlvblNpZ25h", + "bHMSHQoQbWVtb3J5X2F2YWlsYWJsZRgBIAEoCUID4EEBEh0KEG5vZGVmc19h", + "dmFpbGFibGUYAiABKAlCA+BBARIfChJub2RlZnNfaW5vZGVzX2ZyZWUYAyAB", + "KAlCA+BBARIeChFpbWFnZWZzX2F2YWlsYWJsZRgEIAEoCUID4EEBEiAKE2lt", + "YWdlZnNfaW5vZGVzX2ZyZWUYBSABKAlCA+BBARIaCg1waWRfYXZhaWxhYmxl", + "GAYgASgJQgPgQQEi0gEKE0V2aWN0aW9uR3JhY2VQZXJpb2QSHQoQbWVtb3J5", + "X2F2YWlsYWJsZRgBIAEoCUID4EEBEh0KEG5vZGVmc19hdmFpbGFibGUYAiAB", + "KAlCA+BBARIfChJub2RlZnNfaW5vZGVzX2ZyZWUYAyABKAlCA+BBARIeChFp", + "bWFnZWZzX2F2YWlsYWJsZRgEIAEoCUID4EEBEiAKE2ltYWdlZnNfaW5vZGVz", + "X2ZyZWUYBSABKAlCA+BBARIaCg1waWRfYXZhaWxhYmxlGAYgASgJQgPgQQEi", + "1QEKFkV2aWN0aW9uTWluaW11bVJlY2xhaW0SHQoQbWVtb3J5X2F2YWlsYWJs", + "ZRgBIAEoCUID4EEBEh0KEG5vZGVmc19hdmFpbGFibGUYAiABKAlCA+BBARIf", + "ChJub2RlZnNfaW5vZGVzX2ZyZWUYAyABKAlCA+BBARIeChFpbWFnZWZzX2F2", + "YWlsYWJsZRgEIAEoCUID4EEBEiAKE2ltYWdlZnNfaW5vZGVzX2ZyZWUYBSAB", + "KAlCA+BBARIaCg1waWRfYXZhaWxhYmxlGAYgASgJQgPgQQEi7RcKCk5vZGVD", + "b25maWcSFAoMbWFjaGluZV90eXBlGAEgASgJEhQKDGRpc2tfc2l6ZV9nYhgC", + "IAEoBRIUCgxvYXV0aF9zY29wZXMYAyADKAkSFwoPc2VydmljZV9hY2NvdW50", + "GAkgASgJEj8KCG1ldGFkYXRhGAQgAygLMi0uZ29vZ2xlLmNvbnRhaW5lci52", + "MS5Ob2RlQ29uZmlnLk1ldGFkYXRhRW50cnkSEgoKaW1hZ2VfdHlwZRgFIAEo", + "CRI7CgZsYWJlbHMYBiADKAsyKy5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVD", + "b25maWcuTGFiZWxzRW50cnkSFwoPbG9jYWxfc3NkX2NvdW50GAcgASgFEgwK", + "BHRhZ3MYCCADKAkSEwoLcHJlZW1wdGlibGUYCiABKAgSPAoMYWNjZWxlcmF0", + "b3JzGAsgAygLMiYuZ29vZ2xlLmNvbnRhaW5lci52MS5BY2NlbGVyYXRvckNv", + "bmZpZxIRCglkaXNrX3R5cGUYDCABKAkSGAoQbWluX2NwdV9wbGF0Zm9ybRgN", + "IAEoCRJNChh3b3JrbG9hZF9tZXRhZGF0YV9jb25maWcYDiABKAsyKy5nb29n", + "bGUuY29udGFpbmVyLnYxLldvcmtsb2FkTWV0YWRhdGFDb25maWcSLgoGdGFp", + "bnRzGA8gAygLMh4uZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlVGFpbnQSOgoO", + "c2FuZGJveF9jb25maWcYESABKAsyIi5nb29nbGUuY29udGFpbmVyLnYxLlNh", + "bmRib3hDb25maWcSEgoKbm9kZV9ncm91cBgSIAEoCRJGChRyZXNlcnZhdGlv", + "bl9hZmZpbml0eRgTIAEoCzIoLmdvb2dsZS5jb250YWluZXIudjEuUmVzZXJ2", + "YXRpb25BZmZpbml0eRJNChhzaGllbGRlZF9pbnN0YW5jZV9jb25maWcYFCAB", + "KAsyKy5nb29nbGUuY29udGFpbmVyLnYxLlNoaWVsZGVkSW5zdGFuY2VDb25m", + "aWcSPwoRbGludXhfbm9kZV9jb25maWcYFSABKAsyJC5nb29nbGUuY29udGFp", + "bmVyLnYxLkxpbnV4Tm9kZUNvbmZpZxI+Cg5rdWJlbGV0X2NvbmZpZxgWIAEo", + "CzImLmdvb2dsZS5jb250YWluZXIudjEuTm9kZUt1YmVsZXRDb25maWcSGQoR", + "Ym9vdF9kaXNrX2ttc19rZXkYFyABKAkSNAoLZ2Nmc19jb25maWcYGSABKAsy", + "Hy5nb29nbGUuY29udGFpbmVyLnYxLkdjZnNDb25maWcSTwoZYWR2YW5jZWRf", + "bWFjaGluZV9mZWF0dXJlcxgaIAEoCzIsLmdvb2dsZS5jb250YWluZXIudjEu", + "QWR2YW5jZWRNYWNoaW5lRmVhdHVyZXMSLgoFZ3ZuaWMYHSABKAsyHy5nb29n", + "bGUuY29udGFpbmVyLnYxLlZpcnR1YWxOSUMSDAoEc3BvdBggIAEoCBJCChJj", + "b25maWRlbnRpYWxfbm9kZXMYIyABKAsyJi5nb29nbGUuY29udGFpbmVyLnYx", + "LkNvbmZpZGVudGlhbE5vZGVzEjkKC2Zhc3Rfc29ja2V0GCQgASgLMh8uZ29v", + "Z2xlLmNvbnRhaW5lci52MS5GYXN0U29ja2V0SACIAQESTAoPcmVzb3VyY2Vf", + "bGFiZWxzGCUgAygLMjMuZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlQ29uZmln", + "LlJlc291cmNlTGFiZWxzRW50cnkSQgoObG9nZ2luZ19jb25maWcYJiABKAsy", + "Ki5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVQb29sTG9nZ2luZ0NvbmZpZxJD", + "ChN3aW5kb3dzX25vZGVfY29uZmlnGCcgASgLMiYuZ29vZ2xlLmNvbnRhaW5l", + "ci52MS5XaW5kb3dzTm9kZUNvbmZpZxJRChtsb2NhbF9udm1lX3NzZF9ibG9j", + "a19jb25maWcYKCABKAsyLC5nb29nbGUuY29udGFpbmVyLnYxLkxvY2FsTnZt", + "ZVNzZEJsb2NrQ29uZmlnEl8KImVwaGVtZXJhbF9zdG9yYWdlX2xvY2FsX3Nz", + "ZF9jb25maWcYKSABKAsyMy5nb29nbGUuY29udGFpbmVyLnYxLkVwaGVtZXJh", + "bFN0b3JhZ2VMb2NhbFNzZENvbmZpZxJBChJzb2xlX3RlbmFudF9jb25maWcY", + "KiABKAsyJS5nb29nbGUuY29udGFpbmVyLnYxLlNvbGVUZW5hbnRDb25maWcS", + "QAoRY29udGFpbmVyZF9jb25maWcYKyABKAsyJS5nb29nbGUuY29udGFpbmVy", + "LnYxLkNvbnRhaW5lcmRDb25maWcSRwoVcmVzb3VyY2VfbWFuYWdlcl90YWdz", + "GC0gASgLMiguZ29vZ2xlLmNvbnRhaW5lci52MS5SZXNvdXJjZU1hbmFnZXJU", + "YWdzEigKG2VuYWJsZV9jb25maWRlbnRpYWxfc3RvcmFnZRguIAEoCEID4EEB", + "EkQKFHNlY29uZGFyeV9ib290X2Rpc2tzGDAgAygLMiYuZ29vZ2xlLmNvbnRh", + "aW5lci52MS5TZWNvbmRhcnlCb290RGlzaxIVCg1zdG9yYWdlX3Bvb2xzGDEg", + "AygJEmYKI3NlY29uZGFyeV9ib290X2Rpc2tfdXBkYXRlX3N0cmF0ZWd5GDIg", + "ASgLMjQuZ29vZ2xlLmNvbnRhaW5lci52MS5TZWNvbmRhcnlCb290RGlza1Vw", + "ZGF0ZVN0cmF0ZWd5SAGIAQESRAoRZ3B1X2RpcmVjdF9jb25maWcYMyABKAsy", + "JC5nb29nbGUuY29udGFpbmVyLnYxLkdQVURpcmVjdENvbmZpZ0gCiAEBEjMK", + "EG1heF9ydW5fZHVyYXRpb24YNSABKAsyGS5nb29nbGUucHJvdG9idWYuRHVy", + "YXRpb24SXgoZbG9jYWxfc3NkX2VuY3J5cHRpb25fbW9kZRg2IAEoDjI2Lmdv", + "b2dsZS5jb250YWluZXIudjEuTm9kZUNvbmZpZy5Mb2NhbFNzZEVuY3J5cHRp", + "b25Nb2RlSAOIAQESVwoVZWZmZWN0aXZlX2Nncm91cF9tb2RlGDcgASgOMjMu", + "Z29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlQ29uZmlnLkVmZmVjdGl2ZUNncm91", + "cE1vZGVCA+BBAxIXCgpmbGV4X3N0YXJ0GDggASgISASIAQESMAoJYm9vdF9k", + "aXNrGDkgASgLMh0uZ29vZ2xlLmNvbnRhaW5lci52MS5Cb290RGlzaxI2ChNj", + "b25zb2xpZGF0aW9uX2RlbGF5GDwgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1", + "cmF0aW9uGi8KDU1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVl", + "GAIgASgJOgI4ARotCgtMYWJlbHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFs", + "dWUYAiABKAk6AjgBGjUKE1Jlc291cmNlTGFiZWxzRW50cnkSCwoDa2V5GAEg", + "ASgJEg0KBXZhbHVlGAIgASgJOgI4ASJ6ChZMb2NhbFNzZEVuY3J5cHRpb25N", + "b2RlEikKJUxPQ0FMX1NTRF9FTkNSWVBUSU9OX01PREVfVU5TUEVDSUZJRUQQ", + "ABIXChNTVEFOREFSRF9FTkNSWVBUSU9OEAESHAoYRVBIRU1FUkFMX0tFWV9F", + "TkNSWVBUSU9OEAIieAoTRWZmZWN0aXZlQ2dyb3VwTW9kZRIlCiFFRkZFQ1RJ", + "VkVfQ0dST1VQX01PREVfVU5TUEVDSUZJRUQQABIcChhFRkZFQ1RJVkVfQ0dS", + "T1VQX01PREVfVjEQARIcChhFRkZFQ1RJVkVfQ0dST1VQX01PREVfVjIQAkIO", + "CgxfZmFzdF9zb2NrZXRCJgokX3NlY29uZGFyeV9ib290X2Rpc2tfdXBkYXRl", + "X3N0cmF0ZWd5QhQKEl9ncHVfZGlyZWN0X2NvbmZpZ0IcChpfbG9jYWxfc3Nk", + "X2VuY3J5cHRpb25fbW9kZUINCgtfZmxleF9zdGFydCKkAwoXQWR2YW5jZWRN", + "YWNoaW5lRmVhdHVyZXMSHQoQdGhyZWFkc19wZXJfY29yZRgBIAEoA0gAiAEB", + "EikKHGVuYWJsZV9uZXN0ZWRfdmlydHVhbGl6YXRpb24YAiABKAhIAYgBARJw", + "ChtwZXJmb3JtYW5jZV9tb25pdG9yaW5nX3VuaXQYAyABKA4yRi5nb29nbGUu", + "Y29udGFpbmVyLnYxLkFkdmFuY2VkTWFjaGluZUZlYXR1cmVzLlBlcmZvcm1h", + "bmNlTW9uaXRvcmluZ1VuaXRIAogBASJ3ChlQZXJmb3JtYW5jZU1vbml0b3Jp", + "bmdVbml0EisKJ1BFUkZPUk1BTkNFX01PTklUT1JJTkdfVU5JVF9VTlNQRUNJ", + "RklFRBAAEhEKDUFSQ0hJVEVDVFVSQUwQARIMCghTVEFOREFSRBACEgwKCEVO", + "SEFOQ0VEEANCEwoRX3RocmVhZHNfcGVyX2NvcmVCHwodX2VuYWJsZV9uZXN0", + "ZWRfdmlydHVhbGl6YXRpb25CHgocX3BlcmZvcm1hbmNlX21vbml0b3Jpbmdf", + "dW5pdCK8BwoRTm9kZU5ldHdvcmtDb25maWcSHQoQY3JlYXRlX3BvZF9yYW5n", + "ZRgEIAEoCEID4EEEEhEKCXBvZF9yYW5nZRgFIAEoCRIbChNwb2RfaXB2NF9j", + "aWRyX2Jsb2NrGAYgASgJEiEKFGVuYWJsZV9wcml2YXRlX25vZGVzGAkgASgI", + "SACIAQESaAoabmV0d29ya19wZXJmb3JtYW5jZV9jb25maWcYCyABKAsyPy5n", + "b29nbGUuY29udGFpbmVyLnYxLk5vZGVOZXR3b3JrQ29uZmlnLk5ldHdvcmtQ", + "ZXJmb3JtYW5jZUNvbmZpZ0gBiAEBElYKHXBvZF9jaWRyX292ZXJwcm92aXNp", + "b25fY29uZmlnGA0gASgLMi8uZ29vZ2xlLmNvbnRhaW5lci52MS5Qb2RDSURS", + "T3ZlcnByb3Zpc2lvbkNvbmZpZxJZCh9hZGRpdGlvbmFsX25vZGVfbmV0d29y", + "a19jb25maWdzGA4gAygLMjAuZ29vZ2xlLmNvbnRhaW5lci52MS5BZGRpdGlv", + "bmFsTm9kZU5ldHdvcmtDb25maWcSVwoeYWRkaXRpb25hbF9wb2RfbmV0d29y", + "a19jb25maWdzGA8gAygLMi8uZ29vZ2xlLmNvbnRhaW5lci52MS5BZGRpdGlv", + "bmFsUG9kTmV0d29ya0NvbmZpZxInChpwb2RfaXB2NF9yYW5nZV91dGlsaXph", + "dGlvbhgQIAEoAUID4EEDEj0KCnN1Ym5ldHdvcmsYEyABKAlCKeBBAfpBIwoh", + "Y29tcHV0ZS5nb29nbGVhcGlzLmNvbS9TdWJuZXR3b3JrEkgKE25ldHdvcmtf", + "dGllcl9jb25maWcYFCABKAsyJi5nb29nbGUuY29udGFpbmVyLnYxLk5ldHdv", + "cmtUaWVyQ29uZmlnQgPgQQMa1AEKGE5ldHdvcmtQZXJmb3JtYW5jZUNvbmZp", + "ZxJuCht0b3RhbF9lZ3Jlc3NfYmFuZHdpZHRoX3RpZXIYASABKA4yRC5nb29n", + "bGUuY29udGFpbmVyLnYxLk5vZGVOZXR3b3JrQ29uZmlnLk5ldHdvcmtQZXJm", + "b3JtYW5jZUNvbmZpZy5UaWVySACIAQEiKAoEVGllchIUChBUSUVSX1VOU1BF", + "Q0lGSUVEEAASCgoGVElFUl8xEAFCHgocX3RvdGFsX2VncmVzc19iYW5kd2lk", + "dGhfdGllckIXChVfZW5hYmxlX3ByaXZhdGVfbm9kZXNCHQobX25ldHdvcmtf", + "cGVyZm9ybWFuY2VfY29uZmlnIkIKG0FkZGl0aW9uYWxOb2RlTmV0d29ya0Nv", + "bmZpZxIPCgduZXR3b3JrGAEgASgJEhIKCnN1Ym5ldHdvcmsYAiABKAkiqwEK", + "GkFkZGl0aW9uYWxQb2ROZXR3b3JrQ29uZmlnEhIKCnN1Ym5ldHdvcmsYASAB", + "KAkSGwoTc2Vjb25kYXJ5X3BvZF9yYW5nZRgCIAEoCRJGChFtYXhfcG9kc19w", + "ZXJfbm9kZRgDIAEoCzImLmdvb2dsZS5jb250YWluZXIudjEuTWF4UG9kc0Nv", + "bnN0cmFpbnRIAIgBAUIUChJfbWF4X3BvZHNfcGVyX25vZGUiWQoWU2hpZWxk", + "ZWRJbnN0YW5jZUNvbmZpZxIaChJlbmFibGVfc2VjdXJlX2Jvb3QYASABKAgS", + "IwobZW5hYmxlX2ludGVncml0eV9tb25pdG9yaW5nGAIgASgIImsKDVNhbmRi", + "b3hDb25maWcSNQoEdHlwZRgCIAEoDjInLmdvb2dsZS5jb250YWluZXIudjEu", + "U2FuZGJveENvbmZpZy5UeXBlIiMKBFR5cGUSDwoLVU5TUEVDSUZJRUQQABIK", + "CgZHVklTT1IQASIdCgpHY2ZzQ29uZmlnEg8KB2VuYWJsZWQYASABKAgi3wEK", + "E1Jlc2VydmF0aW9uQWZmaW5pdHkSTwoYY29uc3VtZV9yZXNlcnZhdGlvbl90", + "eXBlGAEgASgOMi0uZ29vZ2xlLmNvbnRhaW5lci52MS5SZXNlcnZhdGlvbkFm", + "ZmluaXR5LlR5cGUSCwoDa2V5GAIgASgJEg4KBnZhbHVlcxgDIAMoCSJaCgRU", + "eXBlEg8KC1VOU1BFQ0lGSUVEEAASEgoOTk9fUkVTRVJWQVRJT04QARITCg9B", + "TllfUkVTRVJWQVRJT04QAhIYChRTUEVDSUZJQ19SRVNFUlZBVElPThADIskC", + "ChBTb2xlVGVuYW50Q29uZmlnEksKD25vZGVfYWZmaW5pdGllcxgBIAMoCzIy", + "Lmdvb2dsZS5jb250YWluZXIudjEuU29sZVRlbmFudENvbmZpZy5Ob2RlQWZm", + "aW5pdHkSHwoNbWluX25vZGVfY3B1cxgCIAEoBUID4EEBSACIAQEatAEKDE5v", + "ZGVBZmZpbml0eRILCgNrZXkYASABKAkSTQoIb3BlcmF0b3IYAiABKA4yOy5n", + "b29nbGUuY29udGFpbmVyLnYxLlNvbGVUZW5hbnRDb25maWcuTm9kZUFmZmlu", + "aXR5Lk9wZXJhdG9yEg4KBnZhbHVlcxgDIAMoCSI4CghPcGVyYXRvchIYChRP", + "UEVSQVRPUl9VTlNQRUNJRklFRBAAEgYKAklOEAESCgoGTk9UX0lOEAJCEAoO", + "X21pbl9ub2RlX2NwdXMi6g4KEENvbnRhaW5lcmRDb25maWcSaQoecHJpdmF0", + "ZV9yZWdpc3RyeV9hY2Nlc3NfY29uZmlnGAEgASgLMkEuZ29vZ2xlLmNvbnRh", + "aW5lci52MS5Db250YWluZXJkQ29uZmlnLlByaXZhdGVSZWdpc3RyeUFjY2Vz", + "c0NvbmZpZxJUChB3cml0YWJsZV9jZ3JvdXBzGAIgASgLMjUuZ29vZ2xlLmNv", + "bnRhaW5lci52MS5Db250YWluZXJkQ29uZmlnLldyaXRhYmxlQ2dyb3Vwc0ID", + "4EEBElAKDnJlZ2lzdHJ5X2hvc3RzGAMgAygLMjguZ29vZ2xlLmNvbnRhaW5l", + "ci52MS5Db250YWluZXJkQ29uZmlnLlJlZ2lzdHJ5SG9zdENvbmZpZxr8Awob", + "UHJpdmF0ZVJlZ2lzdHJ5QWNjZXNzQ29uZmlnEg8KB2VuYWJsZWQYASABKAgS", + "jwEKI2NlcnRpZmljYXRlX2F1dGhvcml0eV9kb21haW5fY29uZmlnGAIgAygL", + "MmIuZ29vZ2xlLmNvbnRhaW5lci52MS5Db250YWluZXJkQ29uZmlnLlByaXZh", + "dGVSZWdpc3RyeUFjY2Vzc0NvbmZpZy5DZXJ0aWZpY2F0ZUF1dGhvcml0eURv", + "bWFpbkNvbmZpZxq5AgogQ2VydGlmaWNhdGVBdXRob3JpdHlEb21haW5Db25m", + "aWcSDQoFZnFkbnMYASADKAkStgEKJWdjcF9zZWNyZXRfbWFuYWdlcl9jZXJ0", + "aWZpY2F0ZV9jb25maWcYAiABKAsyhAEuZ29vZ2xlLmNvbnRhaW5lci52MS5D", + "b250YWluZXJkQ29uZmlnLlByaXZhdGVSZWdpc3RyeUFjY2Vzc0NvbmZpZy5D", + "ZXJ0aWZpY2F0ZUF1dGhvcml0eURvbWFpbkNvbmZpZy5HQ1BTZWNyZXRNYW5h", + "Z2VyQ2VydGlmaWNhdGVDb25maWdIABo3CiFHQ1BTZWNyZXRNYW5hZ2VyQ2Vy", + "dGlmaWNhdGVDb25maWcSEgoKc2VjcmV0X3VyaRgBIAEoCUIUChJjZXJ0aWZp", + "Y2F0ZV9jb25maWcaJwoPV3JpdGFibGVDZ3JvdXBzEhQKB2VuYWJsZWQYASAB", + "KAhCA+BBARqaCAoSUmVnaXN0cnlIb3N0Q29uZmlnEg4KBnNlcnZlchgBIAEo", + "CRJSCgVob3N0cxgCIAMoCzJDLmdvb2dsZS5jb250YWluZXIudjEuQ29udGFp", + "bmVyZENvbmZpZy5SZWdpc3RyeUhvc3RDb25maWcuSG9zdENvbmZpZxpLChFD", + "ZXJ0aWZpY2F0ZUNvbmZpZxInCh1nY3Bfc2VjcmV0X21hbmFnZXJfc2VjcmV0", + "X3VyaRgBIAEoCUgAQg0KC2NlcnRpZmljYXRlGsoBChVDZXJ0aWZpY2F0ZUNv", + "bmZpZ1BhaXISWAoEY2VydBgBIAEoCzJKLmdvb2dsZS5jb250YWluZXIudjEu", + "Q29udGFpbmVyZENvbmZpZy5SZWdpc3RyeUhvc3RDb25maWcuQ2VydGlmaWNh", + "dGVDb25maWcSVwoDa2V5GAIgASgLMkouZ29vZ2xlLmNvbnRhaW5lci52MS5D", + "b250YWluZXJkQ29uZmlnLlJlZ2lzdHJ5SG9zdENvbmZpZy5DZXJ0aWZpY2F0", + "ZUNvbmZpZxosCg5SZWdpc3RyeUhlYWRlchILCgNrZXkYASABKAkSDQoFdmFs", + "dWUYAiADKAka0gMKCkhvc3RDb25maWcSDAoEaG9zdBgBIAEoCRJdCgxjYXBh", + "YmlsaXRpZXMYAiADKA4yRy5nb29nbGUuY29udGFpbmVyLnYxLkNvbnRhaW5l", + "cmRDb25maWcuUmVnaXN0cnlIb3N0Q29uZmlnLkhvc3RDYXBhYmlsaXR5EhUK", + "DW92ZXJyaWRlX3BhdGgYAyABKAgSVwoGaGVhZGVyGAQgAygLMkcuZ29vZ2xl", + "LmNvbnRhaW5lci52MS5Db250YWluZXJkQ29uZmlnLlJlZ2lzdHJ5SG9zdENv", + "bmZpZy5SZWdpc3RyeUhlYWRlchJWCgJjYRgFIAMoCzJKLmdvb2dsZS5jb250", + "YWluZXIudjEuQ29udGFpbmVyZENvbmZpZy5SZWdpc3RyeUhvc3RDb25maWcu", + "Q2VydGlmaWNhdGVDb25maWcSXgoGY2xpZW50GAYgAygLMk4uZ29vZ2xlLmNv", + "bnRhaW5lci52MS5Db250YWluZXJkQ29uZmlnLlJlZ2lzdHJ5SG9zdENvbmZp", + "Zy5DZXJ0aWZpY2F0ZUNvbmZpZ1BhaXISLwoMZGlhbF90aW1lb3V0GAcgASgL", + "MhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uIoIBCg5Ib3N0Q2FwYWJpbGl0", + "eRIfChtIT1NUX0NBUEFCSUxJVFlfVU5TUEVDSUZJRUQQABIYChRIT1NUX0NB", + "UEFCSUxJVFlfUFVMTBABEhsKF0hPU1RfQ0FQQUJJTElUWV9SRVNPTFZFEAIS", + "GAoUSE9TVF9DQVBBQklMSVRZX1BVU0gQAyK5AQoJTm9kZVRhaW50EgsKA2tl", + "eRgBIAEoCRINCgV2YWx1ZRgCIAEoCRI1CgZlZmZlY3QYAyABKA4yJS5nb29n", + "bGUuY29udGFpbmVyLnYxLk5vZGVUYWludC5FZmZlY3QiWQoGRWZmZWN0EhYK", + "EkVGRkVDVF9VTlNQRUNJRklFRBAAEg8KC05PX1NDSEVEVUxFEAESFgoSUFJF", + "RkVSX05PX1NDSEVEVUxFEAISDgoKTk9fRVhFQ1VURRADIjwKCk5vZGVUYWlu", + "dHMSLgoGdGFpbnRzGAEgAygLMh4uZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2Rl", + "VGFpbnQieAoKTm9kZUxhYmVscxI7CgZsYWJlbHMYASADKAsyKy5nb29nbGUu", + "Y29udGFpbmVyLnYxLk5vZGVMYWJlbHMuTGFiZWxzRW50cnkaLQoLTGFiZWxz", + "RW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASKAAQoOUmVz", + "b3VyY2VMYWJlbHMSPwoGbGFiZWxzGAEgAygLMi8uZ29vZ2xlLmNvbnRhaW5l", + "ci52MS5SZXNvdXJjZUxhYmVscy5MYWJlbHNFbnRyeRotCgtMYWJlbHNFbnRy", + "eRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIhsKC05ldHdvcmtU", + "YWdzEgwKBHRhZ3MYASADKAki6AEKCk1hc3RlckF1dGgSFAoIdXNlcm5hbWUY", + "ASABKAlCAhgBEhQKCHBhc3N3b3JkGAIgASgJQgIYARJPChljbGllbnRfY2Vy", + "dGlmaWNhdGVfY29uZmlnGAMgASgLMiwuZ29vZ2xlLmNvbnRhaW5lci52MS5D", + "bGllbnRDZXJ0aWZpY2F0ZUNvbmZpZxIjChZjbHVzdGVyX2NhX2NlcnRpZmlj", + "YXRlGGQgASgJQgPgQQMSHwoSY2xpZW50X2NlcnRpZmljYXRlGGUgASgJQgPg", + "QQMSFwoKY2xpZW50X2tleRhmIAEoCUID4EEDIjsKF0NsaWVudENlcnRpZmlj", + "YXRlQ29uZmlnEiAKGGlzc3VlX2NsaWVudF9jZXJ0aWZpY2F0ZRgBIAEoCCLO", + "CgoMQWRkb25zQ29uZmlnEkMKE2h0dHBfbG9hZF9iYWxhbmNpbmcYASABKAsy", + "Ji5nb29nbGUuY29udGFpbmVyLnYxLkh0dHBMb2FkQmFsYW5jaW5nElEKGmhv", + "cml6b250YWxfcG9kX2F1dG9zY2FsaW5nGAIgASgLMi0uZ29vZ2xlLmNvbnRh", + "aW5lci52MS5Ib3Jpem9udGFsUG9kQXV0b3NjYWxpbmcSSgoUa3ViZXJuZXRl", + "c19kYXNoYm9hcmQYAyABKAsyKC5nb29nbGUuY29udGFpbmVyLnYxLkt1YmVy", + "bmV0ZXNEYXNoYm9hcmRCAhgBEkcKFW5ldHdvcmtfcG9saWN5X2NvbmZpZxgE", + "IAEoCzIoLmdvb2dsZS5jb250YWluZXIudjEuTmV0d29ya1BvbGljeUNvbmZp", + "ZxI9ChBjbG91ZF9ydW5fY29uZmlnGAcgASgLMiMuZ29vZ2xlLmNvbnRhaW5l", + "ci52MS5DbG91ZFJ1bkNvbmZpZxI9ChBkbnNfY2FjaGVfY29uZmlnGAggASgL", + "MiMuZ29vZ2xlLmNvbnRhaW5lci52MS5EbnNDYWNoZUNvbmZpZxJLChdjb25m", + "aWdfY29ubmVjdG9yX2NvbmZpZxgKIAEoCzIqLmdvb2dsZS5jb250YWluZXIu", + "djEuQ29uZmlnQ29ubmVjdG9yQ29uZmlnEmQKJWdjZV9wZXJzaXN0ZW50X2Rp", + "c2tfY3NpX2RyaXZlcl9jb25maWcYCyABKAsyNS5nb29nbGUuY29udGFpbmVy", + "LnYxLkdjZVBlcnNpc3RlbnREaXNrQ3NpRHJpdmVyQ29uZmlnElkKH2djcF9m", + "aWxlc3RvcmVfY3NpX2RyaXZlcl9jb25maWcYDiABKAsyMC5nb29nbGUuY29u", + "dGFpbmVyLnYxLkdjcEZpbGVzdG9yZUNzaURyaXZlckNvbmZpZxJKChdna2Vf", + "YmFja3VwX2FnZW50X2NvbmZpZxgQIAEoCzIpLmdvb2dsZS5jb250YWluZXIu", + "djEuR2tlQmFja3VwQWdlbnRDb25maWcSTwoaZ2NzX2Z1c2VfY3NpX2RyaXZl", + "cl9jb25maWcYESABKAsyKy5nb29nbGUuY29udGFpbmVyLnYxLkdjc0Z1c2VD", + "c2lEcml2ZXJDb25maWcSRgoSc3RhdGVmdWxfaGFfY29uZmlnGBIgASgLMiUu", + "Z29vZ2xlLmNvbnRhaW5lci52MS5TdGF0ZWZ1bEhBQ29uZmlnQgPgQQESWgof", + "cGFyYWxsZWxzdG9yZV9jc2lfZHJpdmVyX2NvbmZpZxgTIAEoCzIxLmdvb2ds", + "ZS5jb250YWluZXIudjEuUGFyYWxsZWxzdG9yZUNzaURyaXZlckNvbmZpZxJI", + "ChNyYXlfb3BlcmF0b3JfY29uZmlnGBUgASgLMiYuZ29vZ2xlLmNvbnRhaW5l", + "ci52MS5SYXlPcGVyYXRvckNvbmZpZ0ID4EEBEloKH2hpZ2hfc2NhbGVfY2hl", + "Y2twb2ludGluZ19jb25maWcYFiABKAsyMS5nb29nbGUuY29udGFpbmVyLnYx", + "LkhpZ2hTY2FsZUNoZWNrcG9pbnRpbmdDb25maWcSTAoYbHVzdHJlX2NzaV9k", + "cml2ZXJfY29uZmlnGBcgASgLMiouZ29vZ2xlLmNvbnRhaW5lci52MS5MdXN0", + "cmVDc2lEcml2ZXJDb25maWcSUAoXc2xpY2VfY29udHJvbGxlcl9jb25maWcY", + "GiABKAsyKi5nb29nbGUuY29udGFpbmVyLnYxLlNsaWNlQ29udHJvbGxlckNv", + "bmZpZ0ID4EEBIiUKEUh0dHBMb2FkQmFsYW5jaW5nEhAKCGRpc2FibGVkGAEg", + "ASgIIiwKGEhvcml6b250YWxQb2RBdXRvc2NhbGluZxIQCghkaXNhYmxlZBgB", + "IAEoCCInChNLdWJlcm5ldGVzRGFzaGJvYXJkEhAKCGRpc2FibGVkGAEgASgI", + "IicKE05ldHdvcmtQb2xpY3lDb25maWcSEAoIZGlzYWJsZWQYASABKAgiIQoO", + "RG5zQ2FjaGVDb25maWcSDwoHZW5hYmxlZBgBIAEoCCI5CiZQcml2YXRlQ2x1", + "c3Rlck1hc3Rlckdsb2JhbEFjY2Vzc0NvbmZpZxIPCgdlbmFibGVkGAEgASgI", + "IugCChRQcml2YXRlQ2x1c3RlckNvbmZpZxIgChRlbmFibGVfcHJpdmF0ZV9u", + "b2RlcxgBIAEoCEICGAESIwoXZW5hYmxlX3ByaXZhdGVfZW5kcG9pbnQYAiAB", + "KAhCAhgBEh4KFm1hc3Rlcl9pcHY0X2NpZHJfYmxvY2sYAyABKAkSHwoQcHJp", + "dmF0ZV9lbmRwb2ludBgEIAEoCUIFGAHgQQMSHgoPcHVibGljX2VuZHBvaW50", + "GAUgASgJQgUYAeBBAxIZCgxwZWVyaW5nX25hbWUYByABKAlCA+BBAxJkChtt", + "YXN0ZXJfZ2xvYmFsX2FjY2Vzc19jb25maWcYCCABKAsyOy5nb29nbGUuY29u", + "dGFpbmVyLnYxLlByaXZhdGVDbHVzdGVyTWFzdGVyR2xvYmFsQWNjZXNzQ29u", + "ZmlnQgIYARInChtwcml2YXRlX2VuZHBvaW50X3N1Ym5ldHdvcmsYCiABKAlC", + "AhgBIkQKGUF1dGhlbnRpY2F0b3JHcm91cHNDb25maWcSDwoHZW5hYmxlZBgB", + "IAEoCBIWCg5zZWN1cml0eV9ncm91cBgCIAEoCSLuAQoOQ2xvdWRSdW5Db25m", + "aWcSEAoIZGlzYWJsZWQYASABKAgSUAoSbG9hZF9iYWxhbmNlcl90eXBlGAMg", + "ASgOMjQuZ29vZ2xlLmNvbnRhaW5lci52MS5DbG91ZFJ1bkNvbmZpZy5Mb2Fk", + "QmFsYW5jZXJUeXBlIngKEExvYWRCYWxhbmNlclR5cGUSIgoeTE9BRF9CQUxB", + "TkNFUl9UWVBFX1VOU1BFQ0lGSUVEEAASHwobTE9BRF9CQUxBTkNFUl9UWVBF", + "X0VYVEVSTkFMEAESHwobTE9BRF9CQUxBTkNFUl9UWVBFX0lOVEVSTkFMEAIi", + "KAoVQ29uZmlnQ29ubmVjdG9yQ29uZmlnEg8KB2VuYWJsZWQYASABKAgiMwog", + "R2NlUGVyc2lzdGVudERpc2tDc2lEcml2ZXJDb25maWcSDwoHZW5hYmxlZBgB", + "IAEoCCIuChtHY3BGaWxlc3RvcmVDc2lEcml2ZXJDb25maWcSDwoHZW5hYmxl", + "ZBgBIAEoCCIpChZHY3NGdXNlQ3NpRHJpdmVyQ29uZmlnEg8KB2VuYWJsZWQY", + "ASABKAgiLwocUGFyYWxsZWxzdG9yZUNzaURyaXZlckNvbmZpZxIPCgdlbmFi", + "bGVkGAEgASgIIi8KHEhpZ2hTY2FsZUNoZWNrcG9pbnRpbmdDb25maWcSDwoH", + "ZW5hYmxlZBgBIAEoCCJPChVMdXN0cmVDc2lEcml2ZXJDb25maWcSDwoHZW5h", + "YmxlZBgBIAEoCBIlChllbmFibGVfbGVnYWN5X2x1c3RyZV9wb3J0GAMgASgI", + "QgIYASItChVTbGljZUNvbnRyb2xsZXJDb25maWcSFAoHZW5hYmxlZBgBIAEo", + "CEID4EEBItgBChFSYXlPcGVyYXRvckNvbmZpZxIPCgdlbmFibGVkGAEgASgI", + "ElUKGnJheV9jbHVzdGVyX2xvZ2dpbmdfY29uZmlnGAIgASgLMiwuZ29vZ2xl", + "LmNvbnRhaW5lci52MS5SYXlDbHVzdGVyTG9nZ2luZ0NvbmZpZ0ID4EEBElsK", + "HXJheV9jbHVzdGVyX21vbml0b3JpbmdfY29uZmlnGAMgASgLMi8uZ29vZ2xl", + "LmNvbnRhaW5lci52MS5SYXlDbHVzdGVyTW9uaXRvcmluZ0NvbmZpZ0ID4EEB", + "IicKFEdrZUJhY2t1cEFnZW50Q29uZmlnEg8KB2VuYWJsZWQYASABKAgiIwoQ", + "U3RhdGVmdWxIQUNvbmZpZxIPCgdlbmFibGVkGAEgASgIIuoCCh5NYXN0ZXJB", + "dXRob3JpemVkTmV0d29ya3NDb25maWcSDwoHZW5hYmxlZBgBIAEoCBJSCgtj", + "aWRyX2Jsb2NrcxgCIAMoCzI9Lmdvb2dsZS5jb250YWluZXIudjEuTWFzdGVy", + "QXV0aG9yaXplZE5ldHdvcmtzQ29uZmlnLkNpZHJCbG9jaxIsCh9nY3BfcHVi", + "bGljX2NpZHJzX2FjY2Vzc19lbmFibGVkGAMgASgISACIAQESMQokcHJpdmF0", + "ZV9lbmRwb2ludF9lbmZvcmNlbWVudF9lbmFibGVkGAUgASgISAGIAQEaNQoJ", + "Q2lkckJsb2NrEhQKDGRpc3BsYXlfbmFtZRgBIAEoCRISCgpjaWRyX2Jsb2Nr", + "GAIgASgJQiIKIF9nY3BfcHVibGljX2NpZHJzX2FjY2Vzc19lbmFibGVkQicK", + "JV9wcml2YXRlX2VuZHBvaW50X2VuZm9yY2VtZW50X2VuYWJsZWQiHQoKTGVn", + "YWN5QWJhYxIPCgdlbmFibGVkGAEgASgIIpEBCg1OZXR3b3JrUG9saWN5Ej0K", + "CHByb3ZpZGVyGAEgASgOMisuZ29vZ2xlLmNvbnRhaW5lci52MS5OZXR3b3Jr", + "UG9saWN5LlByb3ZpZGVyEg8KB2VuYWJsZWQYAiABKAgiMAoIUHJvdmlkZXIS", + "GAoUUFJPVklERVJfVU5TUEVDSUZJRUQQABIKCgZDQUxJQ08QASLjAQoTQmlu", + "YXJ5QXV0aG9yaXphdGlvbhITCgdlbmFibGVkGAEgASgIQgIYARJQCg9ldmFs", + "dWF0aW9uX21vZGUYAiABKA4yNy5nb29nbGUuY29udGFpbmVyLnYxLkJpbmFy", + "eUF1dGhvcml6YXRpb24uRXZhbHVhdGlvbk1vZGUiZQoORXZhbHVhdGlvbk1v", + "ZGUSHwobRVZBTFVBVElPTl9NT0RFX1VOU1BFQ0lGSUVEEAASDAoIRElTQUJM", + "RUQQARIkCiBQUk9KRUNUX1NJTkdMRVRPTl9QT0xJQ1lfRU5GT1JDRRACIi0K", + "GlBvZENJRFJPdmVycHJvdmlzaW9uQ29uZmlnEg8KB2Rpc2FibGUYASABKAgi", + "pAgKEklQQWxsb2NhdGlvblBvbGljeRIWCg51c2VfaXBfYWxpYXNlcxgBIAEo", + "CBIZChFjcmVhdGVfc3VibmV0d29yaxgCIAEoCBIXCg9zdWJuZXR3b3JrX25h", + "bWUYAyABKAkSHQoRY2x1c3Rlcl9pcHY0X2NpZHIYBCABKAlCAhgBEhoKDm5v", + "ZGVfaXB2NF9jaWRyGAUgASgJQgIYARIeChJzZXJ2aWNlc19pcHY0X2NpZHIY", + "BiABKAlCAhgBEiQKHGNsdXN0ZXJfc2Vjb25kYXJ5X3JhbmdlX25hbWUYByAB", + "KAkSJQodc2VydmljZXNfc2Vjb25kYXJ5X3JhbmdlX25hbWUYCCABKAkSHwoX", + "Y2x1c3Rlcl9pcHY0X2NpZHJfYmxvY2sYCSABKAkSHAoUbm9kZV9pcHY0X2Np", + "ZHJfYmxvY2sYCiABKAkSIAoYc2VydmljZXNfaXB2NF9jaWRyX2Jsb2NrGAsg", + "ASgJEh8KE3RwdV9pcHY0X2NpZHJfYmxvY2sYDSABKAlCAhgBEhIKCnVzZV9y", + "b3V0ZXMYDyABKAgSMgoKc3RhY2tfdHlwZRgQIAEoDjIeLmdvb2dsZS5jb250", + "YWluZXIudjEuU3RhY2tUeXBlEj0KEGlwdjZfYWNjZXNzX3R5cGUYESABKA4y", + "Iy5nb29nbGUuY29udGFpbmVyLnYxLklQdjZBY2Nlc3NUeXBlElYKHXBvZF9j", + "aWRyX292ZXJwcm92aXNpb25fY29uZmlnGBUgASgLMi8uZ29vZ2xlLmNvbnRh", + "aW5lci52MS5Qb2RDSURST3ZlcnByb3Zpc2lvbkNvbmZpZxIjChZzdWJuZXRf", + "aXB2Nl9jaWRyX2Jsb2NrGBYgASgJQgPgQQMSJQoYc2VydmljZXNfaXB2Nl9j", + "aWRyX2Jsb2NrGBcgASgJQgPgQQMSWQocYWRkaXRpb25hbF9wb2RfcmFuZ2Vz", + "X2NvbmZpZxgYIAEoCzIuLmdvb2dsZS5jb250YWluZXIudjEuQWRkaXRpb25h", + "bFBvZFJhbmdlc0NvbmZpZ0ID4EEDEi8KImRlZmF1bHRfcG9kX2lwdjRfcmFu", + "Z2VfdXRpbGl6YXRpb24YGSABKAFCA+BBAxJYChxhZGRpdGlvbmFsX2lwX3Jh", + "bmdlc19jb25maWdzGB0gAygLMi0uZ29vZ2xlLmNvbnRhaW5lci52MS5BZGRp", + "dGlvbmFsSVBSYW5nZXNDb25maWdCA+BBAxJCChBhdXRvX2lwYW1fY29uZmln", + "GB4gASgLMiMuZ29vZ2xlLmNvbnRhaW5lci52MS5BdXRvSXBhbUNvbmZpZ0ID", + "4EEBEkMKE25ldHdvcmtfdGllcl9jb25maWcYHyABKAsyJi5nb29nbGUuY29u", + "dGFpbmVyLnYxLk5ldHdvcmtUaWVyQ29uZmlnIoMjCgdDbHVzdGVyEgwKBG5h", + "bWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSHgoSaW5pdGlhbF9ub2Rl", + "X2NvdW50GAMgASgFQgIYARI4Cgtub2RlX2NvbmZpZxgEIAEoCzIfLmdvb2ds", + "ZS5jb250YWluZXIudjEuTm9kZUNvbmZpZ0ICGAESNAoLbWFzdGVyX2F1dGgY", + "BSABKAsyHy5nb29nbGUuY29udGFpbmVyLnYxLk1hc3RlckF1dGgSFwoPbG9n", + "Z2luZ19zZXJ2aWNlGAYgASgJEhoKEm1vbml0b3Jpbmdfc2VydmljZRgHIAEo", + "CRIPCgduZXR3b3JrGAggASgJEhkKEWNsdXN0ZXJfaXB2NF9jaWRyGAkgASgJ", + "EjgKDWFkZG9uc19jb25maWcYCiABKAsyIS5nb29nbGUuY29udGFpbmVyLnYx", + "LkFkZG9uc0NvbmZpZxISCgpzdWJuZXR3b3JrGAsgASgJEjEKCm5vZGVfcG9v", + "bHMYDCADKAsyHS5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVQb29sEhEKCWxv", + "Y2F0aW9ucxgNIAMoCRIfChdlbmFibGVfa3ViZXJuZXRlc19hbHBoYRgOIAEo", + "CBIkChthbHBoYV9jbHVzdGVyX2ZlYXR1cmVfZ2F0ZXMYoAEgAygJEkkKD3Jl", + "c291cmNlX2xhYmVscxgPIAMoCzIwLmdvb2dsZS5jb250YWluZXIudjEuQ2x1", + "c3Rlci5SZXNvdXJjZUxhYmVsc0VudHJ5EhkKEWxhYmVsX2ZpbmdlcnByaW50", + "GBAgASgJEjQKC2xlZ2FjeV9hYmFjGBIgASgLMh8uZ29vZ2xlLmNvbnRhaW5l", + "ci52MS5MZWdhY3lBYmFjEjoKDm5ldHdvcmtfcG9saWN5GBMgASgLMiIuZ29v", + "Z2xlLmNvbnRhaW5lci52MS5OZXR3b3JrUG9saWN5EkUKFGlwX2FsbG9jYXRp", + "b25fcG9saWN5GBQgASgLMicuZ29vZ2xlLmNvbnRhaW5lci52MS5JUEFsbG9j", + "YXRpb25Qb2xpY3kSYgohbWFzdGVyX2F1dGhvcml6ZWRfbmV0d29ya3NfY29u", + "ZmlnGBYgASgLMjMuZ29vZ2xlLmNvbnRhaW5lci52MS5NYXN0ZXJBdXRob3Jp", + "emVkTmV0d29ya3NDb25maWdCAhgBEkIKEm1haW50ZW5hbmNlX3BvbGljeRgX", + "IAEoCzImLmdvb2dsZS5jb250YWluZXIudjEuTWFpbnRlbmFuY2VQb2xpY3kS", + "RgoUYmluYXJ5X2F1dGhvcml6YXRpb24YGCABKAsyKC5nb29nbGUuY29udGFp", + "bmVyLnYxLkJpbmFyeUF1dGhvcml6YXRpb24SPAoLYXV0b3NjYWxpbmcYGiAB", + "KAsyJy5nb29nbGUuY29udGFpbmVyLnYxLkNsdXN0ZXJBdXRvc2NhbGluZxI6", + "Cg5uZXR3b3JrX2NvbmZpZxgbIAEoCzIiLmdvb2dsZS5jb250YWluZXIudjEu", + "TmV0d29ya0NvbmZpZxJLChtkZWZhdWx0X21heF9wb2RzX2NvbnN0cmFpbnQY", + "HiABKAsyJi5nb29nbGUuY29udGFpbmVyLnYxLk1heFBvZHNDb25zdHJhaW50", + "ElQKHHJlc291cmNlX3VzYWdlX2V4cG9ydF9jb25maWcYISABKAsyLi5nb29n", + "bGUuY29udGFpbmVyLnYxLlJlc291cmNlVXNhZ2VFeHBvcnRDb25maWcSUwob", + "YXV0aGVudGljYXRvcl9ncm91cHNfY29uZmlnGCIgASgLMi4uZ29vZ2xlLmNv", + "bnRhaW5lci52MS5BdXRoZW50aWNhdG9yR3JvdXBzQ29uZmlnEkkKFnByaXZh", + "dGVfY2x1c3Rlcl9jb25maWcYJSABKAsyKS5nb29nbGUuY29udGFpbmVyLnYx", + "LlByaXZhdGVDbHVzdGVyQ29uZmlnEkQKE2RhdGFiYXNlX2VuY3J5cHRpb24Y", + "JiABKAsyJy5nb29nbGUuY29udGFpbmVyLnYxLkRhdGFiYXNlRW5jcnlwdGlv", + "bhJNChh2ZXJ0aWNhbF9wb2RfYXV0b3NjYWxpbmcYJyABKAsyKy5nb29nbGUu", + "Y29udGFpbmVyLnYxLlZlcnRpY2FsUG9kQXV0b3NjYWxpbmcSOgoOc2hpZWxk", + "ZWRfbm9kZXMYKCABKAsyIi5nb29nbGUuY29udGFpbmVyLnYxLlNoaWVsZGVk", + "Tm9kZXMSPAoPcmVsZWFzZV9jaGFubmVsGCkgASgLMiMuZ29vZ2xlLmNvbnRh", + "aW5lci52MS5SZWxlYXNlQ2hhbm5lbBJNChh3b3JrbG9hZF9pZGVudGl0eV9j", + "b25maWcYKyABKAsyKy5nb29nbGUuY29udGFpbmVyLnYxLldvcmtsb2FkSWRl", + "bnRpdHlDb25maWcSQAoRbWVzaF9jZXJ0aWZpY2F0ZXMYQyABKAsyJS5nb29n", + "bGUuY29udGFpbmVyLnYxLk1lc2hDZXJ0aWZpY2F0ZXMSSQoWY29zdF9tYW5h", + "Z2VtZW50X2NvbmZpZxgtIAEoCzIpLmdvb2dsZS5jb250YWluZXIudjEuQ29z", + "dE1hbmFnZW1lbnRDb25maWcSRAoTbm90aWZpY2F0aW9uX2NvbmZpZxgxIAEo", + "CzInLmdvb2dsZS5jb250YWluZXIudjEuTm90aWZpY2F0aW9uQ29uZmlnEkIK", + "EmNvbmZpZGVudGlhbF9ub2RlcxgyIAEoCzImLmdvb2dsZS5jb250YWluZXIu", + "djEuQ29uZmlkZW50aWFsTm9kZXMSSwoXaWRlbnRpdHlfc2VydmljZV9jb25m", + "aWcYNiABKAsyKi5nb29nbGUuY29udGFpbmVyLnYxLklkZW50aXR5U2Vydmlj", + "ZUNvbmZpZxIWCglzZWxmX2xpbmsYZCABKAlCA+BBAxITCgR6b25lGGUgASgJ", + "QgUYAeBBAxIVCghlbmRwb2ludBhmIAEoCUID4EEDEh8KF2luaXRpYWxfY2x1", + "c3Rlcl92ZXJzaW9uGGcgASgJEiMKFmN1cnJlbnRfbWFzdGVyX3ZlcnNpb24Y", + "aCABKAlCA+BBAxIjChRjdXJyZW50X25vZGVfdmVyc2lvbhhpIAEoCUIFGAHg", + "QQMSGAoLY3JlYXRlX3RpbWUYaiABKAlCA+BBAxI4CgZzdGF0dXMYayABKA4y", + "Iy5nb29nbGUuY29udGFpbmVyLnYxLkNsdXN0ZXIuU3RhdHVzQgPgQQMSHQoO", + "c3RhdHVzX21lc3NhZ2UYbCABKAlCBRgB4EEDEiAKE25vZGVfaXB2NF9jaWRy", + "X3NpemUYbSABKAVCA+BBAxIfChJzZXJ2aWNlc19pcHY0X2NpZHIYbiABKAlC", + "A+BBAxIiChNpbnN0YW5jZV9ncm91cF91cmxzGG8gAygJQgUYAeBBAxIhChJj", + "dXJyZW50X25vZGVfY291bnQYcCABKAVCBRgB4EEDEhgKC2V4cGlyZV90aW1l", + "GHEgASgJQgPgQQMSFQoIbG9jYXRpb24YciABKAlCA+BBAxIWCgplbmFibGVf", + "dHB1GHMgASgIQgIYARIiChN0cHVfaXB2NF9jaWRyX2Jsb2NrGHQgASgJQgUY", + "AeBBAxI4Cgpjb25kaXRpb25zGHYgAygLMiQuZ29vZ2xlLmNvbnRhaW5lci52", + "MS5TdGF0dXNDb25kaXRpb24SMgoJYXV0b3BpbG90GIABIAEoCzIeLmdvb2ds", + "ZS5jb250YWluZXIudjEuQXV0b3BpbG90EhAKAmlkGIEBIAEoCUID4EEDEkcK", + "Em5vZGVfcG9vbF9kZWZhdWx0cxiDASABKAsyJS5nb29nbGUuY29udGFpbmVy", + "LnYxLk5vZGVQb29sRGVmYXVsdHNIAIgBARI7Cg5sb2dnaW5nX2NvbmZpZxiE", + "ASABKAsyIi5nb29nbGUuY29udGFpbmVyLnYxLkxvZ2dpbmdDb25maWcSQQoR", + "bW9uaXRvcmluZ19jb25maWcYhQEgASgLMiUuZ29vZ2xlLmNvbnRhaW5lci52", + "MS5Nb25pdG9yaW5nQ29uZmlnEkcKFW5vZGVfcG9vbF9hdXRvX2NvbmZpZxiI", + "ASABKAsyJy5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVQb29sQXV0b0NvbmZp", + "ZxI9Cg9wb2RfYXV0b3NjYWxpbmcYigEgASgLMiMuZ29vZ2xlLmNvbnRhaW5l", + "ci52MS5Qb2RBdXRvc2NhbGluZxINCgRldGFnGIsBIAEoCRIqCgVmbGVldBiM", + "ASABKAsyGi5nb29nbGUuY29udGFpbmVyLnYxLkZsZWV0EkwKF3NlY3VyaXR5", + "X3Bvc3R1cmVfY29uZmlnGJEBIAEoCzIqLmdvb2dsZS5jb250YWluZXIudjEu", + "U2VjdXJpdHlQb3N0dXJlQ29uZmlnElkKHmNvbnRyb2xfcGxhbmVfZW5kcG9p", + "bnRzX2NvbmZpZxiSASABKAsyMC5nb29nbGUuY29udGFpbmVyLnYxLkNvbnRy", + "b2xQbGFuZUVuZHBvaW50c0NvbmZpZxJEChRlbmFibGVfazhzX2JldGFfYXBp", + "cxiPASABKAsyJS5nb29nbGUuY29udGFpbmVyLnYxLks4c0JldGFBUElDb25m", + "aWcSRQoRZW50ZXJwcmlzZV9jb25maWcYlQEgASgLMiUuZ29vZ2xlLmNvbnRh", + "aW5lci52MS5FbnRlcnByaXNlQ29uZmlnQgIYARJIChVzZWNyZXRfbWFuYWdl", + "cl9jb25maWcYlgEgASgLMiguZ29vZ2xlLmNvbnRhaW5lci52MS5TZWNyZXRN", + "YW5hZ2VyQ29uZmlnElAKGWNvbXBsaWFuY2VfcG9zdHVyZV9jb25maWcYlwEg", + "ASgLMiwuZ29vZ2xlLmNvbnRhaW5lci52MS5Db21wbGlhbmNlUG9zdHVyZUNv", + "bmZpZxIgCg1zYXRpc2ZpZXNfcHpzGJgBIAEoCEID4EEDSAGIAQESIAoNc2F0", + "aXNmaWVzX3B6aRiZASABKAhCA+BBA0gCiAEBElIKGHVzZXJfbWFuYWdlZF9r", + "ZXlzX2NvbmZpZxiaASABKAsyKi5nb29nbGUuY29udGFpbmVyLnYxLlVzZXJN", + "YW5hZ2VkS2V5c0NvbmZpZ0gDiAEBEkkKE3JiYWNfYmluZGluZ19jb25maWcY", + "nAEgASgLMiYuZ29vZ2xlLmNvbnRhaW5lci52MS5SQkFDQmluZGluZ0NvbmZp", + "Z0gEiAEBEksKF2drZV9hdXRvX3VwZ3JhZGVfY29uZmlnGKMBIAEoCzIpLmdv", + "b2dsZS5jb250YWluZXIudjEuR2tlQXV0b1VwZ3JhZGVDb25maWcSXAofYW5v", + "bnltb3VzX2F1dGhlbnRpY2F0aW9uX2NvbmZpZxikASABKAsyMi5nb29nbGUu", + "Y29udGFpbmVyLnYxLkFub255bW91c0F1dGhlbnRpY2F0aW9uQ29uZmlnElYK", + "HG1hbmFnZWRfb3BlbnRlbGVtZXRyeV9jb25maWcYqAEgASgLMi8uZ29vZ2xl", + "LmNvbnRhaW5lci52MS5NYW5hZ2VkT3BlblRlbGVtZXRyeUNvbmZpZxo1ChNS", + "ZXNvdXJjZUxhYmVsc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEo", + "CToCOAEidwoGU3RhdHVzEhYKElNUQVRVU19VTlNQRUNJRklFRBAAEhAKDFBS", + "T1ZJU0lPTklORxABEgsKB1JVTk5JTkcQAhIPCgtSRUNPTkNJTElORxADEgwK", + "CFNUT1BQSU5HEAQSCQoFRVJST1IQBRIMCghERUdSQURFRBAGQhUKE19ub2Rl", + "X3Bvb2xfZGVmYXVsdHNCEAoOX3NhdGlzZmllc19wenNCEAoOX3NhdGlzZmll", + "c19wemlCGwoZX3VzZXJfbWFuYWdlZF9rZXlzX2NvbmZpZ0IWChRfcmJhY19i", + "aW5kaW5nX2NvbmZpZyLvAQoRUkJBQ0JpbmRpbmdDb25maWcSOwouZW5hYmxl", + "X2luc2VjdXJlX2JpbmRpbmdfc3lzdGVtX3VuYXV0aGVudGljYXRlZBgBIAEo", + "CEgAiAEBEjkKLGVuYWJsZV9pbnNlY3VyZV9iaW5kaW5nX3N5c3RlbV9hdXRo", + "ZW50aWNhdGVkGAIgASgISAGIAQFCMQovX2VuYWJsZV9pbnNlY3VyZV9iaW5k", + "aW5nX3N5c3RlbV91bmF1dGhlbnRpY2F0ZWRCLwotX2VuYWJsZV9pbnNlY3Vy", + "ZV9iaW5kaW5nX3N5c3RlbV9hdXRoZW50aWNhdGVkIqIFChVVc2VyTWFuYWdl", + "ZEtleXNDb25maWcSOAoKY2x1c3Rlcl9jYRgKIAEoCUIk+kEhCh9wcml2YXRl", + "Y2EuZ29vZ2xlYXBpcy5jb20vQ2FQb29sEjkKC2V0Y2RfYXBpX2NhGAsgASgJ", + "QiT6QSEKH3ByaXZhdGVjYS5nb29nbGVhcGlzLmNvbS9DYVBvb2wSOgoMZXRj", + "ZF9wZWVyX2NhGAwgASgJQiT6QSEKH3ByaXZhdGVjYS5nb29nbGVhcGlzLmNv", + "bS9DYVBvb2wSUwocc2VydmljZV9hY2NvdW50X3NpZ25pbmdfa2V5cxgNIAMo", + "CUIt+kEqCihjbG91ZGttcy5nb29nbGVhcGlzLmNvbS9DcnlwdG9LZXlWZXJz", + "aW9uElgKIXNlcnZpY2VfYWNjb3VudF92ZXJpZmljYXRpb25fa2V5cxgOIAMo", + "CUIt+kEqCihjbG91ZGttcy5nb29nbGVhcGlzLmNvbS9DcnlwdG9LZXlWZXJz", + "aW9uEjwKDmFnZ3JlZ2F0aW9uX2NhGA8gASgJQiT6QSEKH3ByaXZhdGVjYS5n", + "b29nbGVhcGlzLmNvbS9DYVBvb2wSWAohY29udHJvbF9wbGFuZV9kaXNrX2Vu", + "Y3J5cHRpb25fa2V5GBAgASgJQi36QSoKKGNsb3Vka21zLmdvb2dsZWFwaXMu", + "Y29tL0NyeXB0b0tleVZlcnNpb24SNwoqY29udHJvbF9wbGFuZV9kaXNrX2Vu", + "Y3J5cHRpb25fa2V5X3ZlcnNpb25zGBIgAygJQgPgQQMSWAohZ2tlb3BzX2V0", + "Y2RfYmFja3VwX2VuY3J5cHRpb25fa2V5GBEgASgJQi36QSoKKGNsb3Vka21z", + "Lmdvb2dsZWFwaXMuY29tL0NyeXB0b0tleVZlcnNpb24ingEKHUFub255bW91", + "c0F1dGhlbnRpY2F0aW9uQ29uZmlnEkUKBG1vZGUYASABKA4yNy5nb29nbGUu", + "Y29udGFpbmVyLnYxLkFub255bW91c0F1dGhlbnRpY2F0aW9uQ29uZmlnLk1v", + "ZGUiNgoETW9kZRIUChBNT0RFX1VOU1BFQ0lGSUVEEAASCwoHRU5BQkxFRBAB", + "EgsKB0xJTUlURUQQAiK6AgoXQ29tcGxpYW5jZVBvc3R1cmVDb25maWcSRAoE", + "bW9kZRgBIAEoDjIxLmdvb2dsZS5jb250YWluZXIudjEuQ29tcGxpYW5jZVBv", + "c3R1cmVDb25maWcuTW9kZUgAiAEBEl0KFGNvbXBsaWFuY2Vfc3RhbmRhcmRz", + "GAIgAygLMj8uZ29vZ2xlLmNvbnRhaW5lci52MS5Db21wbGlhbmNlUG9zdHVy", + "ZUNvbmZpZy5Db21wbGlhbmNlU3RhbmRhcmQaOAoSQ29tcGxpYW5jZVN0YW5k", + "YXJkEhUKCHN0YW5kYXJkGAEgASgJSACIAQFCCwoJX3N0YW5kYXJkIjcKBE1v", + "ZGUSFAoQTU9ERV9VTlNQRUNJRklFRBAAEgwKCERJU0FCTEVEEAESCwoHRU5B", + "QkxFRBACQgcKBV9tb2RlIigKEEs4c0JldGFBUElDb25maWcSFAoMZW5hYmxl", + "ZF9hcGlzGAEgAygJIq4DChVTZWN1cml0eVBvc3R1cmVDb25maWcSQgoEbW9k", + "ZRgBIAEoDjIvLmdvb2dsZS5jb250YWluZXIudjEuU2VjdXJpdHlQb3N0dXJl", + "Q29uZmlnLk1vZGVIAIgBARJdChJ2dWxuZXJhYmlsaXR5X21vZGUYAiABKA4y", + "PC5nb29nbGUuY29udGFpbmVyLnYxLlNlY3VyaXR5UG9zdHVyZUNvbmZpZy5W", + "dWxuZXJhYmlsaXR5TW9kZUgBiAEBIkUKBE1vZGUSFAoQTU9ERV9VTlNQRUNJ", + "RklFRBAAEgwKCERJU0FCTEVEEAESCQoFQkFTSUMQAhIOCgpFTlRFUlBSSVNF", + "EAMiigEKEVZ1bG5lcmFiaWxpdHlNb2RlEiIKHlZVTE5FUkFCSUxJVFlfTU9E", + "RV9VTlNQRUNJRklFRBAAEhoKFlZVTE5FUkFCSUxJVFlfRElTQUJMRUQQARIX", + "ChNWVUxORVJBQklMSVRZX0JBU0lDEAISHAoYVlVMTkVSQUJJTElUWV9FTlRF", + "UlBSSVNFEANCBwoFX21vZGVCFQoTX3Z1bG5lcmFiaWxpdHlfbW9kZSKgAgoS", + "Tm9kZVBvb2xBdXRvQ29uZmlnEjYKDG5ldHdvcmtfdGFncxgBIAEoCzIgLmdv", + "b2dsZS5jb250YWluZXIudjEuTmV0d29ya1RhZ3MSRwoVcmVzb3VyY2VfbWFu", + "YWdlcl90YWdzGAIgASgLMiguZ29vZ2xlLmNvbnRhaW5lci52MS5SZXNvdXJj", + "ZU1hbmFnZXJUYWdzEkMKE25vZGVfa3ViZWxldF9jb25maWcYAyABKAsyJi5n", + "b29nbGUuY29udGFpbmVyLnYxLk5vZGVLdWJlbGV0Q29uZmlnEkQKEWxpbnV4", + "X25vZGVfY29uZmlnGAQgASgLMiQuZ29vZ2xlLmNvbnRhaW5lci52MS5MaW51", + "eE5vZGVDb25maWdCA+BBAyJZChBOb2RlUG9vbERlZmF1bHRzEkUKFG5vZGVf", + "Y29uZmlnX2RlZmF1bHRzGAEgASgLMicuZ29vZ2xlLmNvbnRhaW5lci52MS5O", + "b2RlQ29uZmlnRGVmYXVsdHMilQIKEk5vZGVDb25maWdEZWZhdWx0cxI0Cgtn", + "Y2ZzX2NvbmZpZxgBIAEoCzIfLmdvb2dsZS5jb250YWluZXIudjEuR2Nmc0Nv", + "bmZpZxJCCg5sb2dnaW5nX2NvbmZpZxgDIAEoCzIqLmdvb2dsZS5jb250YWlu", + "ZXIudjEuTm9kZVBvb2xMb2dnaW5nQ29uZmlnEkAKEWNvbnRhaW5lcmRfY29u", + "ZmlnGAQgASgLMiUuZ29vZ2xlLmNvbnRhaW5lci52MS5Db250YWluZXJkQ29u", + "ZmlnEkMKE25vZGVfa3ViZWxldF9jb25maWcYBiABKAsyJi5nb29nbGUuY29u", + "dGFpbmVyLnYxLk5vZGVLdWJlbGV0Q29uZmlnIssuCg1DbHVzdGVyVXBkYXRl", + "EhwKFGRlc2lyZWRfbm9kZV92ZXJzaW9uGAQgASgJEiIKGmRlc2lyZWRfbW9u", + "aXRvcmluZ19zZXJ2aWNlGAUgASgJEkAKFWRlc2lyZWRfYWRkb25zX2NvbmZp", + "ZxgGIAEoCzIhLmdvb2dsZS5jb250YWluZXIudjEuQWRkb25zQ29uZmlnEhwK", + "FGRlc2lyZWRfbm9kZV9wb29sX2lkGAcgASgJEhoKEmRlc2lyZWRfaW1hZ2Vf", + "dHlwZRgIIAEoCRJMChtkZXNpcmVkX2RhdGFiYXNlX2VuY3J5cHRpb24YLiAB", + "KAsyJy5nb29nbGUuY29udGFpbmVyLnYxLkRhdGFiYXNlRW5jcnlwdGlvbhJV", + "CiBkZXNpcmVkX3dvcmtsb2FkX2lkZW50aXR5X2NvbmZpZxgvIAEoCzIrLmdv", + "b2dsZS5jb250YWluZXIudjEuV29ya2xvYWRJZGVudGl0eUNvbmZpZxJIChlk", + "ZXNpcmVkX21lc2hfY2VydGlmaWNhdGVzGEMgASgLMiUuZ29vZ2xlLmNvbnRh", + "aW5lci52MS5NZXNoQ2VydGlmaWNhdGVzEkIKFmRlc2lyZWRfc2hpZWxkZWRf", + "bm9kZXMYMCABKAsyIi5nb29nbGUuY29udGFpbmVyLnYxLlNoaWVsZGVkTm9k", + "ZXMSUQoeZGVzaXJlZF9jb3N0X21hbmFnZW1lbnRfY29uZmlnGDEgASgLMiku", + "Z29vZ2xlLmNvbnRhaW5lci52MS5Db3N0TWFuYWdlbWVudENvbmZpZxI6ChJk", + "ZXNpcmVkX2Ruc19jb25maWcYNSABKAsyHi5nb29nbGUuY29udGFpbmVyLnYx", + "LkROU0NvbmZpZxJPCh1kZXNpcmVkX25vZGVfcG9vbF9hdXRvc2NhbGluZxgJ", + "IAEoCzIoLmdvb2dsZS5jb250YWluZXIudjEuTm9kZVBvb2xBdXRvc2NhbGlu", + "ZxIZChFkZXNpcmVkX2xvY2F0aW9ucxgKIAMoCRJqCilkZXNpcmVkX21hc3Rl", + "cl9hdXRob3JpemVkX25ldHdvcmtzX2NvbmZpZxgMIAEoCzIzLmdvb2dsZS5j", + "b250YWluZXIudjEuTWFzdGVyQXV0aG9yaXplZE5ldHdvcmtzQ29uZmlnQgIY", + "ARJMChtkZXNpcmVkX2NsdXN0ZXJfYXV0b3NjYWxpbmcYDyABKAsyJy5nb29n", + "bGUuY29udGFpbmVyLnYxLkNsdXN0ZXJBdXRvc2NhbGluZxJOChxkZXNpcmVk", + "X2JpbmFyeV9hdXRob3JpemF0aW9uGBAgASgLMiguZ29vZ2xlLmNvbnRhaW5l", + "ci52MS5CaW5hcnlBdXRob3JpemF0aW9uEh8KF2Rlc2lyZWRfbG9nZ2luZ19z", + "ZXJ2aWNlGBMgASgJElwKJGRlc2lyZWRfcmVzb3VyY2VfdXNhZ2VfZXhwb3J0", + "X2NvbmZpZxgVIAEoCzIuLmdvb2dsZS5jb250YWluZXIudjEuUmVzb3VyY2VV", + "c2FnZUV4cG9ydENvbmZpZxJVCiBkZXNpcmVkX3ZlcnRpY2FsX3BvZF9hdXRv", + "c2NhbGluZxgWIAEoCzIrLmdvb2dsZS5jb250YWluZXIudjEuVmVydGljYWxQ", + "b2RBdXRvc2NhbGluZxJVCh5kZXNpcmVkX3ByaXZhdGVfY2x1c3Rlcl9jb25m", + "aWcYGSABKAsyKS5nb29nbGUuY29udGFpbmVyLnYxLlByaXZhdGVDbHVzdGVy", + "Q29uZmlnQgIYARJcCiRkZXNpcmVkX2ludHJhX25vZGVfdmlzaWJpbGl0eV9j", + "b25maWcYGiABKAsyLi5nb29nbGUuY29udGFpbmVyLnYxLkludHJhTm9kZVZp", + "c2liaWxpdHlDb25maWcSSwobZGVzaXJlZF9kZWZhdWx0X3NuYXRfc3RhdHVz", + "GBwgASgLMiYuZ29vZ2xlLmNvbnRhaW5lci52MS5EZWZhdWx0U25hdFN0YXR1", + "cxJEChdkZXNpcmVkX3JlbGVhc2VfY2hhbm5lbBgfIAEoCzIjLmdvb2dsZS5j", + "b250YWluZXIudjEuUmVsZWFzZUNoYW5uZWwSUQofZGVzaXJlZF9sNGlsYl9z", + "dWJzZXR0aW5nX2NvbmZpZxgnIAEoCzIoLmdvb2dsZS5jb250YWluZXIudjEu", + "SUxCU3Vic2V0dGluZ0NvbmZpZxJIChlkZXNpcmVkX2RhdGFwYXRoX3Byb3Zp", + "ZGVyGDIgASgOMiUuZ29vZ2xlLmNvbnRhaW5lci52MS5EYXRhcGF0aFByb3Zp", + "ZGVyElgKImRlc2lyZWRfcHJpdmF0ZV9pcHY2X2dvb2dsZV9hY2Nlc3MYMyAB", + "KA4yLC5nb29nbGUuY29udGFpbmVyLnYxLlByaXZhdGVJUHY2R29vZ2xlQWNj", + "ZXNzEkwKG2Rlc2lyZWRfbm90aWZpY2F0aW9uX2NvbmZpZxg3IAEoCzInLmdv", + "b2dsZS5jb250YWluZXIudjEuTm90aWZpY2F0aW9uQ29uZmlnElsKI2Rlc2ly", + "ZWRfYXV0aGVudGljYXRvcl9ncm91cHNfY29uZmlnGD8gASgLMi4uZ29vZ2xl", + "LmNvbnRhaW5lci52MS5BdXRoZW50aWNhdG9yR3JvdXBzQ29uZmlnEkIKFmRl", + "c2lyZWRfbG9nZ2luZ19jb25maWcYQCABKAsyIi5nb29nbGUuY29udGFpbmVy", + "LnYxLkxvZ2dpbmdDb25maWcSSAoZZGVzaXJlZF9tb25pdG9yaW5nX2NvbmZp", + "ZxhBIAEoCzIlLmdvb2dsZS5jb250YWluZXIudjEuTW9uaXRvcmluZ0NvbmZp", + "ZxJTCh9kZXNpcmVkX2lkZW50aXR5X3NlcnZpY2VfY29uZmlnGEIgASgLMiou", + "Z29vZ2xlLmNvbnRhaW5lci52MS5JZGVudGl0eVNlcnZpY2VDb25maWcSWgoj", + "ZGVzaXJlZF9zZXJ2aWNlX2V4dGVybmFsX2lwc19jb25maWcYPCABKAsyLS5n", + "b29nbGUuY29udGFpbmVyLnYxLlNlcnZpY2VFeHRlcm5hbElQc0NvbmZpZxIw", + "Ch9kZXNpcmVkX2VuYWJsZV9wcml2YXRlX2VuZHBvaW50GEcgASgIQgIYAUgA", + "iAEBEjEKJGRlc2lyZWRfZGVmYXVsdF9lbmFibGVfcHJpdmF0ZV9ub2RlcxhI", + "IAEoCEgBiAEBEmAKJmRlc2lyZWRfY29udHJvbF9wbGFuZV9lbmRwb2ludHNf", + "Y29uZmlnGEkgASgLMjAuZ29vZ2xlLmNvbnRhaW5lci52MS5Db250cm9sUGxh", + "bmVFbmRwb2ludHNDb25maWcSHgoWZGVzaXJlZF9tYXN0ZXJfdmVyc2lvbhhk", + "IAEoCRI8ChNkZXNpcmVkX2djZnNfY29uZmlnGG0gASgLMh8uZ29vZ2xlLmNv", + "bnRhaW5lci52MS5HY2ZzQ29uZmlnElQKKmRlc2lyZWRfbm9kZV9wb29sX2F1", + "dG9fY29uZmlnX25ldHdvcmtfdGFncxhuIAEoCzIgLmdvb2dsZS5jb250YWlu", + "ZXIudjEuTmV0d29ya1RhZ3MSRAoXZGVzaXJlZF9wb2RfYXV0b3NjYWxpbmcY", + "cSABKAsyIy5nb29nbGUuY29udGFpbmVyLnYxLlBvZEF1dG9zY2FsaW5nEkkK", + "GmRlc2lyZWRfZ2F0ZXdheV9hcGlfY29uZmlnGHIgASgLMiUuZ29vZ2xlLmNv", + "bnRhaW5lci52MS5HYXRld2F5QVBJQ29uZmlnEgwKBGV0YWcYcyABKAkSVAog", + "ZGVzaXJlZF9ub2RlX3Bvb2xfbG9nZ2luZ19jb25maWcYdCABKAsyKi5nb29n", + "bGUuY29udGFpbmVyLnYxLk5vZGVQb29sTG9nZ2luZ0NvbmZpZxIxCg1kZXNp", + "cmVkX2ZsZWV0GHUgASgLMhouZ29vZ2xlLmNvbnRhaW5lci52MS5GbGVldBI6", + "ChJkZXNpcmVkX3N0YWNrX3R5cGUYdyABKA4yHi5nb29nbGUuY29udGFpbmVy", + "LnYxLlN0YWNrVHlwZRJUChxhZGRpdGlvbmFsX3BvZF9yYW5nZXNfY29uZmln", + "GHggASgLMi4uZ29vZ2xlLmNvbnRhaW5lci52MS5BZGRpdGlvbmFsUG9kUmFu", + "Z2VzQ29uZmlnElwKJHJlbW92ZWRfYWRkaXRpb25hbF9wb2RfcmFuZ2VzX2Nv", + "bmZpZxh5IAEoCzIuLmdvb2dsZS5jb250YWluZXIudjEuQWRkaXRpb25hbFBv", + "ZFJhbmdlc0NvbmZpZxJDChRlbmFibGVfazhzX2JldGFfYXBpcxh6IAEoCzIl", + "Lmdvb2dsZS5jb250YWluZXIudjEuSzhzQmV0YUFQSUNvbmZpZxJTCh9kZXNp", + "cmVkX3NlY3VyaXR5X3Bvc3R1cmVfY29uZmlnGHwgASgLMiouZ29vZ2xlLmNv", + "bnRhaW5lci52MS5TZWN1cml0eVBvc3R1cmVDb25maWcSbgoiZGVzaXJlZF9u", + "ZXR3b3JrX3BlcmZvcm1hbmNlX2NvbmZpZxh9IAEoCzJCLmdvb2dsZS5jb250", + "YWluZXIudjEuTmV0d29ya0NvbmZpZy5DbHVzdGVyTmV0d29ya1BlcmZvcm1h", + "bmNlQ29uZmlnEi8KImRlc2lyZWRfZW5hYmxlX2ZxZG5fbmV0d29ya19wb2xp", + "Y3kYfiABKAhIAogBARJcCihkZXNpcmVkX2F1dG9waWxvdF93b3JrbG9hZF9w", + "b2xpY3lfY29uZmlnGIABIAEoCzIpLmdvb2dsZS5jb250YWluZXIudjEuV29y", + "a2xvYWRQb2xpY3lDb25maWcSRQoVZGVzaXJlZF9rOHNfYmV0YV9hcGlzGIMB", + "IAEoCzIlLmdvb2dsZS5jb250YWluZXIudjEuSzhzQmV0YUFQSUNvbmZpZxJJ", + "ChlkZXNpcmVkX2NvbnRhaW5lcmRfY29uZmlnGIYBIAEoCzIlLmdvb2dsZS5j", + "b250YWluZXIudjEuQ29udGFpbmVyZENvbmZpZxItCh9kZXNpcmVkX2VuYWJs", + "ZV9tdWx0aV9uZXR3b3JraW5nGIcBIAEoCEgDiAEBEmYKM2Rlc2lyZWRfbm9k", + "ZV9wb29sX2F1dG9fY29uZmlnX3Jlc291cmNlX21hbmFnZXJfdGFncxiIASAB", + "KAsyKC5nb29nbGUuY29udGFpbmVyLnYxLlJlc291cmNlTWFuYWdlclRhZ3MS", + "YgokZGVzaXJlZF9pbl90cmFuc2l0X2VuY3J5cHRpb25fY29uZmlnGIkBIAEo", + "DjIuLmdvb2dsZS5jb250YWluZXIudjEuSW5UcmFuc2l0RW5jcnlwdGlvbkNv", + "bmZpZ0gEiAEBEj4KMGRlc2lyZWRfZW5hYmxlX2NpbGl1bV9jbHVzdGVyd2lk", + "ZV9uZXR3b3JrX3BvbGljeRiKASABKAhIBYgBARJVCh1kZXNpcmVkX3NlY3Jl", + "dF9tYW5hZ2VyX2NvbmZpZxiLASABKAsyKC5nb29nbGUuY29udGFpbmVyLnYx", + "LlNlY3JldE1hbmFnZXJDb25maWdIBogBARJdCiFkZXNpcmVkX2NvbXBsaWFu", + "Y2VfcG9zdHVyZV9jb25maWcYjAEgASgLMiwuZ29vZ2xlLmNvbnRhaW5lci52", + "MS5Db21wbGlhbmNlUG9zdHVyZUNvbmZpZ0gHiAEBEkwKG2Rlc2lyZWRfbm9k", + "ZV9rdWJlbGV0X2NvbmZpZxiNASABKAsyJi5nb29nbGUuY29udGFpbmVyLnYx", + "Lk5vZGVLdWJlbGV0Q29uZmlnEl0KLGRlc2lyZWRfbm9kZV9wb29sX2F1dG9f", + "Y29uZmlnX2t1YmVsZXRfY29uZmlnGI4BIAEoCzImLmdvb2dsZS5jb250YWlu", + "ZXIudjEuTm9kZUt1YmVsZXRDb25maWcSUQoYdXNlcl9tYW5hZ2VkX2tleXNf", + "Y29uZmlnGI8BIAEoCzIqLmdvb2dsZS5jb250YWluZXIudjEuVXNlck1hbmFn", + "ZWRLZXlzQ29uZmlnQgIYARJRChtkZXNpcmVkX3JiYWNfYmluZGluZ19jb25m", + "aWcYkAEgASgLMiYuZ29vZ2xlLmNvbnRhaW5lci52MS5SQkFDQmluZGluZ0Nv", + "bmZpZ0gIiAEBEmIKI2Rlc2lyZWRfYWRkaXRpb25hbF9pcF9yYW5nZXNfY29u", + "ZmlnGJEBIAEoCzI0Lmdvb2dsZS5jb250YWluZXIudjEuRGVzaXJlZEFkZGl0", + "aW9uYWxJUFJhbmdlc0NvbmZpZxJUChlkZXNpcmVkX2VudGVycHJpc2VfY29u", + "ZmlnGJMBIAEoCzIsLmdvb2dsZS5jb250YWluZXIudjEuRGVzaXJlZEVudGVy", + "cHJpc2VDb25maWdCAhgBEkYKGGRlc2lyZWRfYXV0b19pcGFtX2NvbmZpZxiU", + "ASABKAsyIy5nb29nbGUuY29udGFpbmVyLnYxLkF1dG9JcGFtQ29uZmlnEjsK", + "LWRlc2lyZWRfZGlzYWJsZV9sNF9sYl9maXJld2FsbF9yZWNvbmNpbGlhdGlv", + "bhiVASABKAhICYgBARJeCi9kZXNpcmVkX25vZGVfcG9vbF9hdXRvX2NvbmZp", + "Z19saW51eF9ub2RlX2NvbmZpZxiWASABKAsyJC5nb29nbGUuY29udGFpbmVy", + "LnYxLkxpbnV4Tm9kZUNvbmZpZxJVCiBkZXNpcmVkX3VzZXJfbWFuYWdlZF9r", + "ZXlzX2NvbmZpZxiYASABKAsyKi5nb29nbGUuY29udGFpbmVyLnYxLlVzZXJN", + "YW5hZ2VkS2V5c0NvbmZpZxJkCidkZXNpcmVkX2Fub255bW91c19hdXRoZW50", + "aWNhdGlvbl9jb25maWcYnAEgASgLMjIuZ29vZ2xlLmNvbnRhaW5lci52MS5B", + "bm9ueW1vdXNBdXRoZW50aWNhdGlvbkNvbmZpZxJLChdna2VfYXV0b191cGdy", + "YWRlX2NvbmZpZxiaASABKAsyKS5nb29nbGUuY29udGFpbmVyLnYxLkdrZUF1", + "dG9VcGdyYWRlQ29uZmlnEkwKG2Rlc2lyZWRfbmV0d29ya190aWVyX2NvbmZp", + "ZxibASABKAsyJi5nb29nbGUuY29udGFpbmVyLnYxLk5ldHdvcmtUaWVyQ29u", + "ZmlnElwKI2Rlc2lyZWRfcHJpdmlsZWdlZF9hZG1pc3Npb25fY29uZmlnGJ8B", + "IAEoCzIuLmdvb2dsZS5jb250YWluZXIudjEuUHJpdmlsZWdlZEFkbWlzc2lv", + "bkNvbmZpZxJeCiRkZXNpcmVkX21hbmFnZWRfb3BlbnRlbGVtZXRyeV9jb25m", + "aWcYowEgASgLMi8uZ29vZ2xlLmNvbnRhaW5lci52MS5NYW5hZ2VkT3BlblRl", + "bGVtZXRyeUNvbmZpZ0IiCiBfZGVzaXJlZF9lbmFibGVfcHJpdmF0ZV9lbmRw", + "b2ludEInCiVfZGVzaXJlZF9kZWZhdWx0X2VuYWJsZV9wcml2YXRlX25vZGVz", + "QiUKI19kZXNpcmVkX2VuYWJsZV9mcWRuX25ldHdvcmtfcG9saWN5QiIKIF9k", + "ZXNpcmVkX2VuYWJsZV9tdWx0aV9uZXR3b3JraW5nQicKJV9kZXNpcmVkX2lu", + "X3RyYW5zaXRfZW5jcnlwdGlvbl9jb25maWdCMwoxX2Rlc2lyZWRfZW5hYmxl", + "X2NpbGl1bV9jbHVzdGVyd2lkZV9uZXR3b3JrX3BvbGljeUIgCh5fZGVzaXJl", + "ZF9zZWNyZXRfbWFuYWdlcl9jb25maWdCJAoiX2Rlc2lyZWRfY29tcGxpYW5j", + "ZV9wb3N0dXJlX2NvbmZpZ0IeChxfZGVzaXJlZF9yYmFjX2JpbmRpbmdfY29u", + "ZmlnQjAKLl9kZXNpcmVkX2Rpc2FibGVfbDRfbGJfZmlyZXdhbGxfcmVjb25j", + "aWxpYXRpb24icQoZQWRkaXRpb25hbFBvZFJhbmdlc0NvbmZpZxIXCg9wb2Rf", + "cmFuZ2VfbmFtZXMYASADKAkSOwoOcG9kX3JhbmdlX2luZm8YAiADKAsyHi5n", + "b29nbGUuY29udGFpbmVyLnYxLlJhbmdlSW5mb0ID4EEDIs4BChhBZGRpdGlv", + "bmFsSVBSYW5nZXNDb25maWcSEgoKc3VibmV0d29yaxgBIAEoCRIcChRwb2Rf", + "aXB2NF9yYW5nZV9uYW1lcxgCIAMoCRJECgZzdGF0dXMYAyABKA4yNC5nb29n", + "bGUuY29udGFpbmVyLnYxLkFkZGl0aW9uYWxJUFJhbmdlc0NvbmZpZy5TdGF0", + "dXMiOgoGU3RhdHVzEhYKElNUQVRVU19VTlNQRUNJRklFRBAAEgoKBkFDVElW", + "RRABEgwKCERSQUlOSU5HEAIidgofRGVzaXJlZEFkZGl0aW9uYWxJUFJhbmdl", + "c0NvbmZpZxJTChxhZGRpdGlvbmFsX2lwX3Jhbmdlc19jb25maWdzGAEgAygL", + "Mi0uZ29vZ2xlLmNvbnRhaW5lci52MS5BZGRpdGlvbmFsSVBSYW5nZXNDb25m", + "aWciMgoOQXV0b0lwYW1Db25maWcSFAoHZW5hYmxlZBgBIAEoCEgAiAEBQgoK", + "CF9lbmFibGVkIj4KCVJhbmdlSW5mbxIXCgpyYW5nZV9uYW1lGAEgASgJQgPg", + "QQMSGAoLdXRpbGl6YXRpb24YAiABKAFCA+BBAyJmChdEZXNpcmVkRW50ZXJw", + "cmlzZUNvbmZpZxJHCgxkZXNpcmVkX3RpZXIYASABKA4yMS5nb29nbGUuY29u", + "dGFpbmVyLnYxLkVudGVycHJpc2VDb25maWcuQ2x1c3RlclRpZXI6AhgBIuQI", + "CglPcGVyYXRpb24SEQoEbmFtZRgBIAEoCUID4EEDEhMKBHpvbmUYAiABKAlC", + "BRgB4EEDEkAKDm9wZXJhdGlvbl90eXBlGAMgASgOMiMuZ29vZ2xlLmNvbnRh", + "aW5lci52MS5PcGVyYXRpb24uVHlwZUID4EEDEjoKBnN0YXR1cxgEIAEoDjIl", + "Lmdvb2dsZS5jb250YWluZXIudjEuT3BlcmF0aW9uLlN0YXR1c0ID4EEDEhMK", + "BmRldGFpbBgIIAEoCUID4EEDEh0KDnN0YXR1c19tZXNzYWdlGAUgASgJQgUY", + "AeBBAxIWCglzZWxmX2xpbmsYBiABKAlCA+BBAxIYCgt0YXJnZXRfbGluaxgH", + "IAEoCUID4EEDEhUKCGxvY2F0aW9uGAkgASgJQgPgQQMSFwoKc3RhcnRfdGlt", + "ZRgKIAEoCUID4EEDEhUKCGVuZF90aW1lGAsgASgJQgPgQQMSPQoIcHJvZ3Jl", + "c3MYDCABKAsyJi5nb29nbGUuY29udGFpbmVyLnYxLk9wZXJhdGlvblByb2dy", + "ZXNzQgPgQQMSRAoSY2x1c3Rlcl9jb25kaXRpb25zGA0gAygLMiQuZ29vZ2xl", + "LmNvbnRhaW5lci52MS5TdGF0dXNDb25kaXRpb25CAhgBEkUKE25vZGVwb29s", + "X2NvbmRpdGlvbnMYDiADKAsyJC5nb29nbGUuY29udGFpbmVyLnYxLlN0YXR1", + "c0NvbmRpdGlvbkICGAESIQoFZXJyb3IYDyABKAsyEi5nb29nbGUucnBjLlN0", + "YXR1cyJSCgZTdGF0dXMSFgoSU1RBVFVTX1VOU1BFQ0lGSUVEEAASCwoHUEVO", + "RElORxABEgsKB1JVTk5JTkcQAhIICgRET05FEAMSDAoIQUJPUlRJTkcQBCLA", + "AwoEVHlwZRIUChBUWVBFX1VOU1BFQ0lGSUVEEAASEgoOQ1JFQVRFX0NMVVNU", + "RVIQARISCg5ERUxFVEVfQ0xVU1RFUhACEhIKDlVQR1JBREVfTUFTVEVSEAMS", + "EQoNVVBHUkFERV9OT0RFUxAEEhIKDlJFUEFJUl9DTFVTVEVSEAUSEgoOVVBE", + "QVRFX0NMVVNURVIQBhIUChBDUkVBVEVfTk9ERV9QT09MEAcSFAoQREVMRVRF", + "X05PREVfUE9PTBAIEhwKGFNFVF9OT0RFX1BPT0xfTUFOQUdFTUVOVBAJEhUK", + "EUFVVE9fUkVQQUlSX05PREVTEAoSGgoSQVVUT19VUEdSQURFX05PREVTEAsa", + "AggBEhIKClNFVF9MQUJFTFMQDBoCCAESFwoPU0VUX01BU1RFUl9BVVRIEA0a", + "AggBEhYKElNFVF9OT0RFX1BPT0xfU0laRRAOEhoKElNFVF9ORVRXT1JLX1BP", + "TElDWRAPGgIIARIeChZTRVRfTUFJTlRFTkFOQ0VfUE9MSUNZEBAaAggBEhIK", + "DlJFU0laRV9DTFVTVEVSEBISGQoVRkxFRVRfRkVBVFVSRV9VUEdSQURFEBMi", + "uwIKEU9wZXJhdGlvblByb2dyZXNzEgwKBG5hbWUYASABKAkSNQoGc3RhdHVz", + "GAIgASgOMiUuZ29vZ2xlLmNvbnRhaW5lci52MS5PcGVyYXRpb24uU3RhdHVz", + "Ej4KB21ldHJpY3MYAyADKAsyLS5nb29nbGUuY29udGFpbmVyLnYxLk9wZXJh", + "dGlvblByb2dyZXNzLk1ldHJpYxI2CgZzdGFnZXMYBCADKAsyJi5nb29nbGUu", + "Y29udGFpbmVyLnYxLk9wZXJhdGlvblByb2dyZXNzGmkKBk1ldHJpYxIRCgRu", + "YW1lGAEgASgJQgPgQQISEwoJaW50X3ZhbHVlGAIgASgDSAASFgoMZG91Ymxl", + "X3ZhbHVlGAMgASgBSAASFgoMc3RyaW5nX3ZhbHVlGAQgASgJSABCBwoFdmFs", + "dWUihAEKFENyZWF0ZUNsdXN0ZXJSZXF1ZXN0EhYKCnByb2plY3RfaWQYASAB", + "KAlCAhgBEhAKBHpvbmUYAiABKAlCAhgBEjIKB2NsdXN0ZXIYAyABKAsyHC5n", + "b29nbGUuY29udGFpbmVyLnYxLkNsdXN0ZXJCA+BBAhIOCgZwYXJlbnQYBSAB", + "KAkiYwoRR2V0Q2x1c3RlclJlcXVlc3QSFgoKcHJvamVjdF9pZBgBIAEoCUIC", + "GAESEAoEem9uZRgCIAEoCUICGAESFgoKY2x1c3Rlcl9pZBgDIAEoCUICGAES", + "DAoEbmFtZRgFIAEoCSKfAQoUVXBkYXRlQ2x1c3RlclJlcXVlc3QSFgoKcHJv", + "amVjdF9pZBgBIAEoCUICGAESEAoEem9uZRgCIAEoCUICGAESFgoKY2x1c3Rl", + "cl9pZBgDIAEoCUICGAESNwoGdXBkYXRlGAQgASgLMiIuZ29vZ2xlLmNvbnRh", + "aW5lci52MS5DbHVzdGVyVXBkYXRlQgPgQQISDAoEbmFtZRgFIAEoCSL7DQoV", + "VXBkYXRlTm9kZVBvb2xSZXF1ZXN0EhYKCnByb2plY3RfaWQYASABKAlCAhgB", "EhAKBHpvbmUYAiABKAlCAhgBEhYKCmNsdXN0ZXJfaWQYAyABKAlCAhgBEhgK", - "DG5vZGVfcG9vbF9pZBgEIAEoCUICGAESQgoLYXV0b3NjYWxpbmcYBSABKAsy", - "KC5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVQb29sQXV0b3NjYWxpbmdCA+BB", - "AhIMCgRuYW1lGAYgASgJIogBChhTZXRMb2dnaW5nU2VydmljZVJlcXVlc3QS", - "FgoKcHJvamVjdF9pZBgBIAEoCUICGAESEAoEem9uZRgCIAEoCUICGAESFgoK", - "Y2x1c3Rlcl9pZBgDIAEoCUICGAESHAoPbG9nZ2luZ19zZXJ2aWNlGAQgASgJ", - "QgPgQQISDAoEbmFtZRgFIAEoCSKOAQobU2V0TW9uaXRvcmluZ1NlcnZpY2VS", - "ZXF1ZXN0EhYKCnByb2plY3RfaWQYASABKAlCAhgBEhAKBHpvbmUYAiABKAlC", - "AhgBEhYKCmNsdXN0ZXJfaWQYAyABKAlCAhgBEh8KEm1vbml0b3Jpbmdfc2Vy", - "dmljZRgEIAEoCUID4EECEgwKBG5hbWUYBiABKAkipwEKFlNldEFkZG9uc0Nv", - "bmZpZ1JlcXVlc3QSFgoKcHJvamVjdF9pZBgBIAEoCUICGAESEAoEem9uZRgC", - "IAEoCUICGAESFgoKY2x1c3Rlcl9pZBgDIAEoCUICGAESPQoNYWRkb25zX2Nv", - "bmZpZxgEIAEoCzIhLmdvb2dsZS5jb250YWluZXIudjEuQWRkb25zQ29uZmln", - "QgPgQQISDAoEbmFtZRgGIAEoCSJ9ChNTZXRMb2NhdGlvbnNSZXF1ZXN0EhYK", + "DG5vZGVfcG9vbF9pZBgEIAEoCUICGAESGQoMbm9kZV92ZXJzaW9uGAUgASgJ", + "QgPgQQISFwoKaW1hZ2VfdHlwZRgGIAEoCUID4EECEgwKBG5hbWUYCCABKAkS", + "EQoJbG9jYXRpb25zGA0gAygJEk0KGHdvcmtsb2FkX21ldGFkYXRhX2NvbmZp", + "ZxgOIAEoCzIrLmdvb2dsZS5jb250YWluZXIudjEuV29ya2xvYWRNZXRhZGF0", + "YUNvbmZpZxJHChB1cGdyYWRlX3NldHRpbmdzGA8gASgLMi0uZ29vZ2xlLmNv", + "bnRhaW5lci52MS5Ob2RlUG9vbC5VcGdyYWRlU2V0dGluZ3MSLgoEdGFncxgQ", + "IAEoCzIgLmdvb2dsZS5jb250YWluZXIudjEuTmV0d29ya1RhZ3MSLwoGdGFp", + "bnRzGBEgASgLMh8uZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlVGFpbnRzEi8K", + "BmxhYmVscxgSIAEoCzIfLmdvb2dsZS5jb250YWluZXIudjEuTm9kZUxhYmVs", + "cxI/ChFsaW51eF9ub2RlX2NvbmZpZxgTIAEoCzIkLmdvb2dsZS5jb250YWlu", + "ZXIudjEuTGludXhOb2RlQ29uZmlnEj4KDmt1YmVsZXRfY29uZmlnGBQgASgL", + "MiYuZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlS3ViZWxldENvbmZpZxJDChNu", + "b2RlX25ldHdvcmtfY29uZmlnGBUgASgLMiYuZ29vZ2xlLmNvbnRhaW5lci52", + "MS5Ob2RlTmV0d29ya0NvbmZpZxI0CgtnY2ZzX2NvbmZpZxgWIAEoCzIfLmdv", + "b2dsZS5jb250YWluZXIudjEuR2Nmc0NvbmZpZxJCChJjb25maWRlbnRpYWxf", + "bm9kZXMYFyABKAsyJi5nb29nbGUuY29udGFpbmVyLnYxLkNvbmZpZGVudGlh", + "bE5vZGVzEi4KBWd2bmljGB0gASgLMh8uZ29vZ2xlLmNvbnRhaW5lci52MS5W", + "aXJ0dWFsTklDEgwKBGV0YWcYHiABKAkSNAoLZmFzdF9zb2NrZXQYHyABKAsy", + "Hy5nb29nbGUuY29udGFpbmVyLnYxLkZhc3RTb2NrZXQSQgoObG9nZ2luZ19j", + "b25maWcYICABKAsyKi5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVQb29sTG9n", + "Z2luZ0NvbmZpZxI8Cg9yZXNvdXJjZV9sYWJlbHMYISABKAsyIy5nb29nbGUu", + "Y29udGFpbmVyLnYxLlJlc291cmNlTGFiZWxzEkMKE3dpbmRvd3Nfbm9kZV9j", + "b25maWcYIiABKAsyJi5nb29nbGUuY29udGFpbmVyLnYxLldpbmRvd3NOb2Rl", + "Q29uZmlnEjwKDGFjY2VsZXJhdG9ycxgjIAMoCzImLmdvb2dsZS5jb250YWlu", + "ZXIudjEuQWNjZWxlcmF0b3JDb25maWcSGQoMbWFjaGluZV90eXBlGCQgASgJ", + "QgPgQQESFgoJZGlza190eXBlGCUgASgJQgPgQQESGQoMZGlza19zaXplX2di", + "GCYgASgDQgPgQQESRwoVcmVzb3VyY2VfbWFuYWdlcl90YWdzGCcgASgLMigu", + "Z29vZ2xlLmNvbnRhaW5lci52MS5SZXNvdXJjZU1hbmFnZXJUYWdzEkAKEWNv", + "bnRhaW5lcmRfY29uZmlnGCggASgLMiUuZ29vZ2xlLmNvbnRhaW5lci52MS5D", + "b250YWluZXJkQ29uZmlnEk0KE3F1ZXVlZF9wcm92aXNpb25pbmcYKiABKAsy", + "MC5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVQb29sLlF1ZXVlZFByb3Zpc2lv", + "bmluZxIVCg1zdG9yYWdlX3Bvb2xzGCsgAygJEjMKEG1heF9ydW5fZHVyYXRp", + "b24YLSABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24SFwoKZmxleF9z", + "dGFydBguIAEoCEgAiAEBEjAKCWJvb3RfZGlzaxgvIAEoCzIdLmdvb2dsZS5j", + "b250YWluZXIudjEuQm9vdERpc2sSSAoRbm9kZV9kcmFpbl9jb25maWcYMCAB", + "KAsyLS5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVQb29sLk5vZGVEcmFpbkNv", + "bmZpZxI2ChNjb25zb2xpZGF0aW9uX2RlbGF5GDEgASgLMhkuZ29vZ2xlLnBy", + "b3RvYnVmLkR1cmF0aW9uQg0KC19mbGV4X3N0YXJ0Is0BCh1TZXROb2RlUG9v", + "bEF1dG9zY2FsaW5nUmVxdWVzdBIWCgpwcm9qZWN0X2lkGAEgASgJQgIYARIQ", + "CgR6b25lGAIgASgJQgIYARIWCgpjbHVzdGVyX2lkGAMgASgJQgIYARIYCgxu", + "b2RlX3Bvb2xfaWQYBCABKAlCAhgBEkIKC2F1dG9zY2FsaW5nGAUgASgLMigu", + "Z29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlUG9vbEF1dG9zY2FsaW5nQgPgQQIS", + "DAoEbmFtZRgGIAEoCSKIAQoYU2V0TG9nZ2luZ1NlcnZpY2VSZXF1ZXN0EhYK", "CnByb2plY3RfaWQYASABKAlCAhgBEhAKBHpvbmUYAiABKAlCAhgBEhYKCmNs", - "dXN0ZXJfaWQYAyABKAlCAhgBEhYKCWxvY2F0aW9ucxgEIAMoCUID4EECEgwK", - "BG5hbWUYBiABKAkiggEKE1VwZGF0ZU1hc3RlclJlcXVlc3QSFgoKcHJvamVj", - "dF9pZBgBIAEoCUICGAESEAoEem9uZRgCIAEoCUICGAESFgoKY2x1c3Rlcl9p", - "ZBgDIAEoCUICGAESGwoObWFzdGVyX3ZlcnNpb24YBCABKAlCA+BBAhIMCgRu", - "YW1lGAcgASgJIrUCChRTZXRNYXN0ZXJBdXRoUmVxdWVzdBIWCgpwcm9qZWN0", - "X2lkGAEgASgJQgIYARIQCgR6b25lGAIgASgJQgIYARIWCgpjbHVzdGVyX2lk", - "GAMgASgJQgIYARJFCgZhY3Rpb24YBCABKA4yMC5nb29nbGUuY29udGFpbmVy", - "LnYxLlNldE1hc3RlckF1dGhSZXF1ZXN0LkFjdGlvbkID4EECEjQKBnVwZGF0", - "ZRgFIAEoCzIfLmdvb2dsZS5jb250YWluZXIudjEuTWFzdGVyQXV0aEID4EEC", - "EgwKBG5hbWUYByABKAkiUAoGQWN0aW9uEgsKB1VOS05PV04QABIQCgxTRVRf", - "UEFTU1dPUkQQARIVChFHRU5FUkFURV9QQVNTV09SRBACEhAKDFNFVF9VU0VS", - "TkFNRRADImYKFERlbGV0ZUNsdXN0ZXJSZXF1ZXN0EhYKCnByb2plY3RfaWQY", - "ASABKAlCAhgBEhAKBHpvbmUYAiABKAlCAhgBEhYKCmNsdXN0ZXJfaWQYAyAB", - "KAlCAhgBEgwKBG5hbWUYBCABKAkiTwoTTGlzdENsdXN0ZXJzUmVxdWVzdBIW", - "Cgpwcm9qZWN0X2lkGAEgASgJQgIYARIQCgR6b25lGAIgASgJQgIYARIOCgZw", - "YXJlbnQYBCABKAkiXQoUTGlzdENsdXN0ZXJzUmVzcG9uc2USLgoIY2x1c3Rl", - "cnMYASADKAsyHC5nb29nbGUuY29udGFpbmVyLnYxLkNsdXN0ZXISFQoNbWlz", - "c2luZ196b25lcxgCIAMoCSJnChNHZXRPcGVyYXRpb25SZXF1ZXN0EhYKCnBy", - "b2plY3RfaWQYASABKAlCAhgBEhAKBHpvbmUYAiABKAlCAhgBEhgKDG9wZXJh", - "dGlvbl9pZBgDIAEoCUICGAESDAoEbmFtZRgFIAEoCSJRChVMaXN0T3BlcmF0", - "aW9uc1JlcXVlc3QSFgoKcHJvamVjdF9pZBgBIAEoCUICGAESEAoEem9uZRgC", - "IAEoCUICGAESDgoGcGFyZW50GAQgASgJImoKFkNhbmNlbE9wZXJhdGlvblJl", - "cXVlc3QSFgoKcHJvamVjdF9pZBgBIAEoCUICGAESEAoEem9uZRgCIAEoCUIC", - "GAESGAoMb3BlcmF0aW9uX2lkGAMgASgJQgIYARIMCgRuYW1lGAQgASgJImMK", - "Fkxpc3RPcGVyYXRpb25zUmVzcG9uc2USMgoKb3BlcmF0aW9ucxgBIAMoCzIe", - "Lmdvb2dsZS5jb250YWluZXIudjEuT3BlcmF0aW9uEhUKDW1pc3Npbmdfem9u", - "ZXMYAiADKAkiUAoWR2V0U2VydmVyQ29uZmlnUmVxdWVzdBIWCgpwcm9qZWN0", - "X2lkGAEgASgJQgIYARIQCgR6b25lGAIgASgJQgIYARIMCgRuYW1lGAQgASgJ", - "IpQDCgxTZXJ2ZXJDb25maWcSHwoXZGVmYXVsdF9jbHVzdGVyX3ZlcnNpb24Y", - "ASABKAkSGwoTdmFsaWRfbm9kZV92ZXJzaW9ucxgDIAMoCRIaChJkZWZhdWx0", - "X2ltYWdlX3R5cGUYBCABKAkSGQoRdmFsaWRfaW1hZ2VfdHlwZXMYBSADKAkS", - "HQoVdmFsaWRfbWFzdGVyX3ZlcnNpb25zGAYgAygJEkgKCGNoYW5uZWxzGAkg", - "AygLMjYuZ29vZ2xlLmNvbnRhaW5lci52MS5TZXJ2ZXJDb25maWcuUmVsZWFz", - "ZUNoYW5uZWxDb25maWcapQEKFFJlbGVhc2VDaGFubmVsQ29uZmlnEjwKB2No", - "YW5uZWwYASABKA4yKy5nb29nbGUuY29udGFpbmVyLnYxLlJlbGVhc2VDaGFu", - "bmVsLkNoYW5uZWwSFwoPZGVmYXVsdF92ZXJzaW9uGAIgASgJEhYKDnZhbGlk", - "X3ZlcnNpb25zGAQgAygJEh4KFnVwZ3JhZGVfdGFyZ2V0X3ZlcnNpb24YBSAB", - "KAkioAEKFUNyZWF0ZU5vZGVQb29sUmVxdWVzdBIWCgpwcm9qZWN0X2lkGAEg", + "dXN0ZXJfaWQYAyABKAlCAhgBEhwKD2xvZ2dpbmdfc2VydmljZRgEIAEoCUID", + "4EECEgwKBG5hbWUYBSABKAkijgEKG1NldE1vbml0b3JpbmdTZXJ2aWNlUmVx", + "dWVzdBIWCgpwcm9qZWN0X2lkGAEgASgJQgIYARIQCgR6b25lGAIgASgJQgIY", + "ARIWCgpjbHVzdGVyX2lkGAMgASgJQgIYARIfChJtb25pdG9yaW5nX3NlcnZp", + "Y2UYBCABKAlCA+BBAhIMCgRuYW1lGAYgASgJIqcBChZTZXRBZGRvbnNDb25m", + "aWdSZXF1ZXN0EhYKCnByb2plY3RfaWQYASABKAlCAhgBEhAKBHpvbmUYAiAB", + "KAlCAhgBEhYKCmNsdXN0ZXJfaWQYAyABKAlCAhgBEj0KDWFkZG9uc19jb25m", + "aWcYBCABKAsyIS5nb29nbGUuY29udGFpbmVyLnYxLkFkZG9uc0NvbmZpZ0ID", + "4EECEgwKBG5hbWUYBiABKAkifQoTU2V0TG9jYXRpb25zUmVxdWVzdBIWCgpw", + "cm9qZWN0X2lkGAEgASgJQgIYARIQCgR6b25lGAIgASgJQgIYARIWCgpjbHVz", + "dGVyX2lkGAMgASgJQgIYARIWCglsb2NhdGlvbnMYBCADKAlCA+BBAhIMCgRu", + "YW1lGAYgASgJIoIBChNVcGRhdGVNYXN0ZXJSZXF1ZXN0EhYKCnByb2plY3Rf", + "aWQYASABKAlCAhgBEhAKBHpvbmUYAiABKAlCAhgBEhYKCmNsdXN0ZXJfaWQY", + "AyABKAlCAhgBEhsKDm1hc3Rlcl92ZXJzaW9uGAQgASgJQgPgQQISDAoEbmFt", + "ZRgHIAEoCSK1AgoUU2V0TWFzdGVyQXV0aFJlcXVlc3QSFgoKcHJvamVjdF9p", + "ZBgBIAEoCUICGAESEAoEem9uZRgCIAEoCUICGAESFgoKY2x1c3Rlcl9pZBgD", + "IAEoCUICGAESRQoGYWN0aW9uGAQgASgOMjAuZ29vZ2xlLmNvbnRhaW5lci52", + "MS5TZXRNYXN0ZXJBdXRoUmVxdWVzdC5BY3Rpb25CA+BBAhI0CgZ1cGRhdGUY", + "BSABKAsyHy5nb29nbGUuY29udGFpbmVyLnYxLk1hc3RlckF1dGhCA+BBAhIM", + "CgRuYW1lGAcgASgJIlAKBkFjdGlvbhILCgdVTktOT1dOEAASEAoMU0VUX1BB", + "U1NXT1JEEAESFQoRR0VORVJBVEVfUEFTU1dPUkQQAhIQCgxTRVRfVVNFUk5B", + "TUUQAyJmChREZWxldGVDbHVzdGVyUmVxdWVzdBIWCgpwcm9qZWN0X2lkGAEg", "ASgJQgIYARIQCgR6b25lGAIgASgJQgIYARIWCgpjbHVzdGVyX2lkGAMgASgJ", - "QgIYARI1Cglub2RlX3Bvb2wYBCABKAsyHS5nb29nbGUuY29udGFpbmVyLnYx", - "Lk5vZGVQb29sQgPgQQISDgoGcGFyZW50GAYgASgJIoEBChVEZWxldGVOb2Rl", - "UG9vbFJlcXVlc3QSFgoKcHJvamVjdF9pZBgBIAEoCUICGAESEAoEem9uZRgC", - "IAEoCUICGAESFgoKY2x1c3Rlcl9pZBgDIAEoCUICGAESGAoMbm9kZV9wb29s", - "X2lkGAQgASgJQgIYARIMCgRuYW1lGAYgASgJImgKFExpc3ROb2RlUG9vbHNS", - "ZXF1ZXN0EhYKCnByb2plY3RfaWQYASABKAlCAhgBEhAKBHpvbmUYAiABKAlC", - "AhgBEhYKCmNsdXN0ZXJfaWQYAyABKAlCAhgBEg4KBnBhcmVudBgFIAEoCSJ+", - "ChJHZXROb2RlUG9vbFJlcXVlc3QSFgoKcHJvamVjdF9pZBgBIAEoCUICGAES", - "EAoEem9uZRgCIAEoCUICGAESFgoKY2x1c3Rlcl9pZBgDIAEoCUICGAESGAoM", - "bm9kZV9wb29sX2lkGAQgASgJQgIYARIMCgRuYW1lGAYgASgJIuAEChFCbHVl", - "R3JlZW5TZXR0aW5ncxJfChdzdGFuZGFyZF9yb2xsb3V0X3BvbGljeRgBIAEo", - "CzI8Lmdvb2dsZS5jb250YWluZXIudjEuQmx1ZUdyZWVuU2V0dGluZ3MuU3Rh", - "bmRhcmRSb2xsb3V0UG9saWN5SAASYwoZYXV0b3NjYWxlZF9yb2xsb3V0X3Bv", - "bGljeRgDIAEoCzI+Lmdvb2dsZS5jb250YWluZXIudjEuQmx1ZUdyZWVuU2V0", - "dGluZ3MuQXV0b3NjYWxlZFJvbGxvdXRQb2xpY3lIABI/Chdub2RlX3Bvb2xf", - "c29ha19kdXJhdGlvbhgCIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlv", - "bkgBiAEBGrkBChVTdGFuZGFyZFJvbGxvdXRQb2xpY3kSGgoQYmF0Y2hfcGVy", - "Y2VudGFnZRgBIAEoAkgAEhoKEGJhdGNoX25vZGVfY291bnQYAiABKAVIABI7", - "ChNiYXRjaF9zb2FrX2R1cmF0aW9uGAMgASgLMhkuZ29vZ2xlLnByb3RvYnVm", - "LkR1cmF0aW9uSAGIAQFCEwoRdXBkYXRlX2JhdGNoX3NpemVCFgoUX2JhdGNo", - "X3NvYWtfZHVyYXRpb24aWgoXQXV0b3NjYWxlZFJvbGxvdXRQb2xpY3kSPwoX", - "d2FpdF9mb3JfZHJhaW5fZHVyYXRpb24YASABKAsyGS5nb29nbGUucHJvdG9i", - "dWYuRHVyYXRpb25CA+BBAUIQCg5yb2xsb3V0X3BvbGljeUIaChhfbm9kZV9w", - "b29sX3NvYWtfZHVyYXRpb24i0RAKCE5vZGVQb29sEgwKBG5hbWUYASABKAkS", - "LwoGY29uZmlnGAIgASgLMh8uZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlQ29u", - "ZmlnEhoKEmluaXRpYWxfbm9kZV9jb3VudBgDIAEoBRIRCglsb2NhdGlvbnMY", - "DSADKAkSPgoObmV0d29ya19jb25maWcYDiABKAsyJi5nb29nbGUuY29udGFp", - "bmVyLnYxLk5vZGVOZXR3b3JrQ29uZmlnEhYKCXNlbGZfbGluaxhkIAEoCUID", - "4EEDEg8KB3ZlcnNpb24YZSABKAkSIAoTaW5zdGFuY2VfZ3JvdXBfdXJscxhm", - "IAMoCUID4EEDEjkKBnN0YXR1cxhnIAEoDjIkLmdvb2dsZS5jb250YWluZXIu", - "djEuTm9kZVBvb2wuU3RhdHVzQgPgQQMSHQoOc3RhdHVzX21lc3NhZ2UYaCAB", - "KAlCBRgB4EEDEj0KC2F1dG9zY2FsaW5nGAQgASgLMiguZ29vZ2xlLmNvbnRh", - "aW5lci52MS5Ob2RlUG9vbEF1dG9zY2FsaW5nEjcKCm1hbmFnZW1lbnQYBSAB", - "KAsyIy5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVNYW5hZ2VtZW50EkMKE21h", - "eF9wb2RzX2NvbnN0cmFpbnQYBiABKAsyJi5nb29nbGUuY29udGFpbmVyLnYx", - "Lk1heFBvZHNDb25zdHJhaW50EjgKCmNvbmRpdGlvbnMYaSADKAsyJC5nb29n", - "bGUuY29udGFpbmVyLnYxLlN0YXR1c0NvbmRpdGlvbhIfChJwb2RfaXB2NF9j", - "aWRyX3NpemUYByABKAVCA+BBAxJHChB1cGdyYWRlX3NldHRpbmdzGGsgASgL", - "Mi0uZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlUG9vbC5VcGdyYWRlU2V0dGlu", - "Z3MSRwoQcGxhY2VtZW50X3BvbGljeRhsIAEoCzItLmdvb2dsZS5jb250YWlu", - "ZXIudjEuTm9kZVBvb2wuUGxhY2VtZW50UG9saWN5EkIKC3VwZGF0ZV9pbmZv", - "GG0gASgLMiguZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlUG9vbC5VcGRhdGVJ", - "bmZvQgPgQQMSDAoEZXRhZxhuIAEoCRJNChNxdWV1ZWRfcHJvdmlzaW9uaW5n", - "GHAgASgLMjAuZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlUG9vbC5RdWV1ZWRQ", - "cm92aXNpb25pbmcSTQoYYmVzdF9lZmZvcnRfcHJvdmlzaW9uaW5nGHEgASgL", - "MisuZ29vZ2xlLmNvbnRhaW5lci52MS5CZXN0RWZmb3J0UHJvdmlzaW9uaW5n", - "GvABCg9VcGdyYWRlU2V0dGluZ3MSEQoJbWF4X3N1cmdlGAEgASgFEhcKD21h", - "eF91bmF2YWlsYWJsZRgCIAEoBRJCCghzdHJhdGVneRgDIAEoDjIrLmdvb2ds", - "ZS5jb250YWluZXIudjEuTm9kZVBvb2xVcGRhdGVTdHJhdGVneUgAiAEBEkgK", - "E2JsdWVfZ3JlZW5fc2V0dGluZ3MYBCABKAsyJi5nb29nbGUuY29udGFpbmVy", - "LnYxLkJsdWVHcmVlblNldHRpbmdzSAGIAQFCCwoJX3N0cmF0ZWd5QhYKFF9i", - "bHVlX2dyZWVuX3NldHRpbmdzGogECgpVcGRhdGVJbmZvEk8KD2JsdWVfZ3Jl", - "ZW5faW5mbxgBIAEoCzI2Lmdvb2dsZS5jb250YWluZXIudjEuTm9kZVBvb2wu", - "VXBkYXRlSW5mby5CbHVlR3JlZW5JbmZvGqgDCg1CbHVlR3JlZW5JbmZvEksK", - "BXBoYXNlGAEgASgOMjwuZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlUG9vbC5V", - "cGRhdGVJbmZvLkJsdWVHcmVlbkluZm8uUGhhc2USIAoYYmx1ZV9pbnN0YW5j", - "ZV9ncm91cF91cmxzGAIgAygJEiEKGWdyZWVuX2luc3RhbmNlX2dyb3VwX3Vy", - "bHMYAyADKAkSJQodYmx1ZV9wb29sX2RlbGV0aW9uX3N0YXJ0X3RpbWUYBCAB", - "KAkSGgoSZ3JlZW5fcG9vbF92ZXJzaW9uGAUgASgJIsEBCgVQaGFzZRIVChFQ", - "SEFTRV9VTlNQRUNJRklFRBAAEhIKDlVQREFURV9TVEFSVEVEEAESFwoTQ1JF", - "QVRJTkdfR1JFRU5fUE9PTBACEhcKE0NPUkRPTklOR19CTFVFX1BPT0wQAxIW", - "ChJEUkFJTklOR19CTFVFX1BPT0wQBBIVChFOT0RFX1BPT0xfU09BS0lORxAF", - "EhYKEkRFTEVUSU5HX0JMVUVfUE9PTBAGEhQKEFJPTExCQUNLX1NUQVJURUQQ", - "BxquAQoPUGxhY2VtZW50UG9saWN5EkAKBHR5cGUYASABKA4yMi5nb29nbGUu", - "Y29udGFpbmVyLnYxLk5vZGVQb29sLlBsYWNlbWVudFBvbGljeS5UeXBlEhkK", - "DHRwdV90b3BvbG9neRgCIAEoCUID4EEBEhMKC3BvbGljeV9uYW1lGAMgASgJ", - "IikKBFR5cGUSFAoQVFlQRV9VTlNQRUNJRklFRBAAEgsKB0NPTVBBQ1QQARol", - "ChJRdWV1ZWRQcm92aXNpb25pbmcSDwoHZW5hYmxlZBgBIAEoCCKBAQoGU3Rh", - "dHVzEhYKElNUQVRVU19VTlNQRUNJRklFRBAAEhAKDFBST1ZJU0lPTklORxAB", - "EgsKB1JVTk5JTkcQAhIWChJSVU5OSU5HX1dJVEhfRVJST1IQAxIPCgtSRUNP", - "TkNJTElORxAEEgwKCFNUT1BQSU5HEAUSCQoFRVJST1IQBiJ9Cg5Ob2RlTWFu", - "YWdlbWVudBIUCgxhdXRvX3VwZ3JhZGUYASABKAgSEwoLYXV0b19yZXBhaXIY", - "AiABKAgSQAoPdXBncmFkZV9vcHRpb25zGAogASgLMicuZ29vZ2xlLmNvbnRh", - "aW5lci52MS5BdXRvVXBncmFkZU9wdGlvbnMiRgoWQmVzdEVmZm9ydFByb3Zp", - "c2lvbmluZxIPCgdlbmFibGVkGAEgASgIEhsKE21pbl9wcm92aXNpb25fbm9k", - "ZXMYAiABKAUiVAoSQXV0b1VwZ3JhZGVPcHRpb25zEiQKF2F1dG9fdXBncmFk", - "ZV9zdGFydF90aW1lGAEgASgJQgPgQQMSGAoLZGVzY3JpcHRpb24YAiABKAlC", - "A+BBAyJlChFNYWludGVuYW5jZVBvbGljeRI2CgZ3aW5kb3cYASABKAsyJi5n", - "b29nbGUuY29udGFpbmVyLnYxLk1haW50ZW5hbmNlV2luZG93EhgKEHJlc291", - "cmNlX3ZlcnNpb24YAyABKAki9gIKEU1haW50ZW5hbmNlV2luZG93Ek8KGGRh", - "aWx5X21haW50ZW5hbmNlX3dpbmRvdxgCIAEoCzIrLmdvb2dsZS5jb250YWlu", - "ZXIudjEuRGFpbHlNYWludGVuYW5jZVdpbmRvd0gAEkQKEHJlY3VycmluZ193", - "aW5kb3cYAyABKAsyKC5nb29nbGUuY29udGFpbmVyLnYxLlJlY3VycmluZ1Rp", - "bWVXaW5kb3dIABJhChZtYWludGVuYW5jZV9leGNsdXNpb25zGAQgAygLMkEu", - "Z29vZ2xlLmNvbnRhaW5lci52MS5NYWludGVuYW5jZVdpbmRvdy5NYWludGVu", - "YW5jZUV4Y2x1c2lvbnNFbnRyeRpdChpNYWludGVuYW5jZUV4Y2x1c2lvbnNF", - "bnRyeRILCgNrZXkYASABKAkSLgoFdmFsdWUYAiABKAsyHy5nb29nbGUuY29u", - "dGFpbmVyLnYxLlRpbWVXaW5kb3c6AjgBQggKBnBvbGljeSLQAQoKVGltZVdp", - "bmRvdxJZCh1tYWludGVuYW5jZV9leGNsdXNpb25fb3B0aW9ucxgDIAEoCzIw", - "Lmdvb2dsZS5jb250YWluZXIudjEuTWFpbnRlbmFuY2VFeGNsdXNpb25PcHRp", - "b25zSAASLgoKc3RhcnRfdGltZRgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5U", - "aW1lc3RhbXASLAoIZW5kX3RpbWUYAiABKAsyGi5nb29nbGUucHJvdG9idWYu", - "VGltZXN0YW1wQgkKB29wdGlvbnMi4QIKG01haW50ZW5hbmNlRXhjbHVzaW9u", - "T3B0aW9ucxJFCgVzY29wZRgBIAEoDjI2Lmdvb2dsZS5jb250YWluZXIudjEu", - "TWFpbnRlbmFuY2VFeGNsdXNpb25PcHRpb25zLlNjb3BlElsKEWVuZF90aW1l", - "X2JlaGF2aW9yGAIgASgOMkAuZ29vZ2xlLmNvbnRhaW5lci52MS5NYWludGVu", - "YW5jZUV4Y2x1c2lvbk9wdGlvbnMuRW5kVGltZUJlaGF2aW9yIk4KBVNjb3Bl", - "Eg8KC05PX1VQR1JBREVTEAASFQoRTk9fTUlOT1JfVVBHUkFERVMQARIdChlO", - "T19NSU5PUl9PUl9OT0RFX1VQR1JBREVTEAIiTgoPRW5kVGltZUJlaGF2aW9y", - "EiEKHUVORF9USU1FX0JFSEFWSU9SX1VOU1BFQ0lGSUVEEAASGAoUVU5USUxf", - "RU5EX09GX1NVUFBPUlQQASJaChNSZWN1cnJpbmdUaW1lV2luZG93Ei8KBndp", - "bmRvdxgBIAEoCzIfLmdvb2dsZS5jb250YWluZXIudjEuVGltZVdpbmRvdxIS", - "CgpyZWN1cnJlbmNlGAIgASgJIkMKFkRhaWx5TWFpbnRlbmFuY2VXaW5kb3cS", - "EgoKc3RhcnRfdGltZRgCIAEoCRIVCghkdXJhdGlvbhgDIAEoCUID4EEDIsYB", - "ChxTZXROb2RlUG9vbE1hbmFnZW1lbnRSZXF1ZXN0EhYKCnByb2plY3RfaWQY", - "ASABKAlCAhgBEhAKBHpvbmUYAiABKAlCAhgBEhYKCmNsdXN0ZXJfaWQYAyAB", - "KAlCAhgBEhgKDG5vZGVfcG9vbF9pZBgEIAEoCUICGAESPAoKbWFuYWdlbWVu", - "dBgFIAEoCzIjLmdvb2dsZS5jb250YWluZXIudjEuTm9kZU1hbmFnZW1lbnRC", - "A+BBAhIMCgRuYW1lGAcgASgJIpsBChZTZXROb2RlUG9vbFNpemVSZXF1ZXN0", - "EhYKCnByb2plY3RfaWQYASABKAlCAhgBEhAKBHpvbmUYAiABKAlCAhgBEhYK", - "CmNsdXN0ZXJfaWQYAyABKAlCAhgBEhgKDG5vZGVfcG9vbF9pZBgEIAEoCUIC", - "GAESFwoKbm9kZV9jb3VudBgFIAEoBUID4EECEgwKBG5hbWUYByABKAkiLgoe", - "Q29tcGxldGVOb2RlUG9vbFVwZ3JhZGVSZXF1ZXN0EgwKBG5hbWUYASABKAki", - "nwEKHlJvbGxiYWNrTm9kZVBvb2xVcGdyYWRlUmVxdWVzdBIWCgpwcm9qZWN0", - "X2lkGAEgASgJQgIYARIQCgR6b25lGAIgASgJQgIYARIWCgpjbHVzdGVyX2lk", - "GAMgASgJQgIYARIYCgxub2RlX3Bvb2xfaWQYBCABKAlCAhgBEgwKBG5hbWUY", - "BiABKAkSEwoLcmVzcGVjdF9wZGIYByABKAgiSgoVTGlzdE5vZGVQb29sc1Jl", - "c3BvbnNlEjEKCm5vZGVfcG9vbHMYASADKAsyHS5nb29nbGUuY29udGFpbmVy", - "LnYxLk5vZGVQb29sIoUEChJDbHVzdGVyQXV0b3NjYWxpbmcSJAocZW5hYmxl", - "X25vZGVfYXV0b3Byb3Zpc2lvbmluZxgBIAEoCBI7Cg9yZXNvdXJjZV9saW1p", - "dHMYAiADKAsyIi5nb29nbGUuY29udGFpbmVyLnYxLlJlc291cmNlTGltaXQS", - "VwoTYXV0b3NjYWxpbmdfcHJvZmlsZRgDIAEoDjI6Lmdvb2dsZS5jb250YWlu", - "ZXIudjEuQ2x1c3RlckF1dG9zY2FsaW5nLkF1dG9zY2FsaW5nUHJvZmlsZRJi", - "CiNhdXRvcHJvdmlzaW9uaW5nX25vZGVfcG9vbF9kZWZhdWx0cxgEIAEoCzI1", - "Lmdvb2dsZS5jb250YWluZXIudjEuQXV0b3Byb3Zpc2lvbmluZ05vZGVQb29s", - "RGVmYXVsdHMSIgoaYXV0b3Byb3Zpc2lvbmluZ19sb2NhdGlvbnMYBSADKAkS", - "VAocZGVmYXVsdF9jb21wdXRlX2NsYXNzX2NvbmZpZxgJIAEoCzIuLmdvb2ds", - "ZS5jb250YWluZXIudjEuRGVmYXVsdENvbXB1dGVDbGFzc0NvbmZpZyJVChJB", - "dXRvc2NhbGluZ1Byb2ZpbGUSFwoTUFJPRklMRV9VTlNQRUNJRklFRBAAEhgK", - "FE9QVElNSVpFX1VUSUxJWkFUSU9OEAESDAoIQkFMQU5DRUQQAiL4AwogQXV0", - "b3Byb3Zpc2lvbmluZ05vZGVQb29sRGVmYXVsdHMSFAoMb2F1dGhfc2NvcGVz", - "GAEgAygJEhcKD3NlcnZpY2VfYWNjb3VudBgCIAEoCRJHChB1cGdyYWRlX3Nl", - "dHRpbmdzGAMgASgLMi0uZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlUG9vbC5V", - "cGdyYWRlU2V0dGluZ3MSNwoKbWFuYWdlbWVudBgEIAEoCzIjLmdvb2dsZS5j", - "b250YWluZXIudjEuTm9kZU1hbmFnZW1lbnQSHAoQbWluX2NwdV9wbGF0Zm9y", - "bRgFIAEoCUICGAESFAoMZGlza19zaXplX2diGAYgASgFEhEKCWRpc2tfdHlw", - "ZRgHIAEoCRJNChhzaGllbGRlZF9pbnN0YW5jZV9jb25maWcYCCABKAsyKy5n", - "b29nbGUuY29udGFpbmVyLnYxLlNoaWVsZGVkSW5zdGFuY2VDb25maWcSGQoR", - "Ym9vdF9kaXNrX2ttc19rZXkYCSABKAkSEgoKaW1hZ2VfdHlwZRgKIAEoCRIz", - "CiZpbnNlY3VyZV9rdWJlbGV0X3JlYWRvbmx5X3BvcnRfZW5hYmxlZBgNIAEo", - "CEgAiAEBQikKJ19pbnNlY3VyZV9rdWJlbGV0X3JlYWRvbmx5X3BvcnRfZW5h", - "YmxlZCJICg1SZXNvdXJjZUxpbWl0EhUKDXJlc291cmNlX3R5cGUYASABKAkS", - "DwoHbWluaW11bRgCIAEoAxIPCgdtYXhpbXVtGAMgASgDIiwKGURlZmF1bHRD", - "b21wdXRlQ2xhc3NDb25maWcSDwoHZW5hYmxlZBgBIAEoCCLHAgoTTm9kZVBv", - "b2xBdXRvc2NhbGluZxIPCgdlbmFibGVkGAEgASgIEhYKDm1pbl9ub2RlX2Nv", - "dW50GAIgASgFEhYKDm1heF9ub2RlX2NvdW50GAMgASgFEhcKD2F1dG9wcm92", - "aXNpb25lZBgEIAEoCBJQCg9sb2NhdGlvbl9wb2xpY3kYBSABKA4yNy5nb29n", - "bGUuY29udGFpbmVyLnYxLk5vZGVQb29sQXV0b3NjYWxpbmcuTG9jYXRpb25Q", - "b2xpY3kSHAoUdG90YWxfbWluX25vZGVfY291bnQYBiABKAUSHAoUdG90YWxf", - "bWF4X25vZGVfY291bnQYByABKAUiSAoOTG9jYXRpb25Qb2xpY3kSHwobTE9D", - "QVRJT05fUE9MSUNZX1VOU1BFQ0lGSUVEEAASDAoIQkFMQU5DRUQQARIHCgNB", - "TlkQAiKSAgoQU2V0TGFiZWxzUmVxdWVzdBIWCgpwcm9qZWN0X2lkGAEgASgJ", - "QgIYARIQCgR6b25lGAIgASgJQgIYARIWCgpjbHVzdGVyX2lkGAMgASgJQgIY", - "ARJXCg9yZXNvdXJjZV9sYWJlbHMYBCADKAsyOS5nb29nbGUuY29udGFpbmVy", - "LnYxLlNldExhYmVsc1JlcXVlc3QuUmVzb3VyY2VMYWJlbHNFbnRyeUID4EEC", - "Eh4KEWxhYmVsX2ZpbmdlcnByaW50GAUgASgJQgPgQQISDAoEbmFtZRgHIAEo", - "CRo1ChNSZXNvdXJjZUxhYmVsc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1", - "ZRgCIAEoCToCOAEifAoUU2V0TGVnYWN5QWJhY1JlcXVlc3QSFgoKcHJvamVj", + "QgIYARIMCgRuYW1lGAQgASgJIk8KE0xpc3RDbHVzdGVyc1JlcXVlc3QSFgoK", + "cHJvamVjdF9pZBgBIAEoCUICGAESEAoEem9uZRgCIAEoCUICGAESDgoGcGFy", + "ZW50GAQgASgJIl0KFExpc3RDbHVzdGVyc1Jlc3BvbnNlEi4KCGNsdXN0ZXJz", + "GAEgAygLMhwuZ29vZ2xlLmNvbnRhaW5lci52MS5DbHVzdGVyEhUKDW1pc3Np", + "bmdfem9uZXMYAiADKAkiZwoTR2V0T3BlcmF0aW9uUmVxdWVzdBIWCgpwcm9q", + "ZWN0X2lkGAEgASgJQgIYARIQCgR6b25lGAIgASgJQgIYARIYCgxvcGVyYXRp", + "b25faWQYAyABKAlCAhgBEgwKBG5hbWUYBSABKAkiUQoVTGlzdE9wZXJhdGlv", + "bnNSZXF1ZXN0EhYKCnByb2plY3RfaWQYASABKAlCAhgBEhAKBHpvbmUYAiAB", + "KAlCAhgBEg4KBnBhcmVudBgEIAEoCSJqChZDYW5jZWxPcGVyYXRpb25SZXF1", + "ZXN0EhYKCnByb2plY3RfaWQYASABKAlCAhgBEhAKBHpvbmUYAiABKAlCAhgB", + "EhgKDG9wZXJhdGlvbl9pZBgDIAEoCUICGAESDAoEbmFtZRgEIAEoCSJjChZM", + "aXN0T3BlcmF0aW9uc1Jlc3BvbnNlEjIKCm9wZXJhdGlvbnMYASADKAsyHi5n", + "b29nbGUuY29udGFpbmVyLnYxLk9wZXJhdGlvbhIVCg1taXNzaW5nX3pvbmVz", + "GAIgAygJIlAKFkdldFNlcnZlckNvbmZpZ1JlcXVlc3QSFgoKcHJvamVjdF9p", + "ZBgBIAEoCUICGAESEAoEem9uZRgCIAEoCUICGAESDAoEbmFtZRgEIAEoCSKU", + "AwoMU2VydmVyQ29uZmlnEh8KF2RlZmF1bHRfY2x1c3Rlcl92ZXJzaW9uGAEg", + "ASgJEhsKE3ZhbGlkX25vZGVfdmVyc2lvbnMYAyADKAkSGgoSZGVmYXVsdF9p", + "bWFnZV90eXBlGAQgASgJEhkKEXZhbGlkX2ltYWdlX3R5cGVzGAUgAygJEh0K", + "FXZhbGlkX21hc3Rlcl92ZXJzaW9ucxgGIAMoCRJICghjaGFubmVscxgJIAMo", + "CzI2Lmdvb2dsZS5jb250YWluZXIudjEuU2VydmVyQ29uZmlnLlJlbGVhc2VD", + "aGFubmVsQ29uZmlnGqUBChRSZWxlYXNlQ2hhbm5lbENvbmZpZxI8CgdjaGFu", + "bmVsGAEgASgOMisuZ29vZ2xlLmNvbnRhaW5lci52MS5SZWxlYXNlQ2hhbm5l", + "bC5DaGFubmVsEhcKD2RlZmF1bHRfdmVyc2lvbhgCIAEoCRIWCg52YWxpZF92", + "ZXJzaW9ucxgEIAMoCRIeChZ1cGdyYWRlX3RhcmdldF92ZXJzaW9uGAUgASgJ", + "IqABChVDcmVhdGVOb2RlUG9vbFJlcXVlc3QSFgoKcHJvamVjdF9pZBgBIAEo", + "CUICGAESEAoEem9uZRgCIAEoCUICGAESFgoKY2x1c3Rlcl9pZBgDIAEoCUIC", + "GAESNQoJbm9kZV9wb29sGAQgASgLMh0uZ29vZ2xlLmNvbnRhaW5lci52MS5O", + "b2RlUG9vbEID4EECEg4KBnBhcmVudBgGIAEoCSKBAQoVRGVsZXRlTm9kZVBv", + "b2xSZXF1ZXN0EhYKCnByb2plY3RfaWQYASABKAlCAhgBEhAKBHpvbmUYAiAB", + "KAlCAhgBEhYKCmNsdXN0ZXJfaWQYAyABKAlCAhgBEhgKDG5vZGVfcG9vbF9p", + "ZBgEIAEoCUICGAESDAoEbmFtZRgGIAEoCSJoChRMaXN0Tm9kZVBvb2xzUmVx", + "dWVzdBIWCgpwcm9qZWN0X2lkGAEgASgJQgIYARIQCgR6b25lGAIgASgJQgIY", + "ARIWCgpjbHVzdGVyX2lkGAMgASgJQgIYARIOCgZwYXJlbnQYBSABKAkifgoS", + "R2V0Tm9kZVBvb2xSZXF1ZXN0EhYKCnByb2plY3RfaWQYASABKAlCAhgBEhAK", + "BHpvbmUYAiABKAlCAhgBEhYKCmNsdXN0ZXJfaWQYAyABKAlCAhgBEhgKDG5v", + "ZGVfcG9vbF9pZBgEIAEoCUICGAESDAoEbmFtZRgGIAEoCSLgBAoRQmx1ZUdy", + "ZWVuU2V0dGluZ3MSXwoXc3RhbmRhcmRfcm9sbG91dF9wb2xpY3kYASABKAsy", + "PC5nb29nbGUuY29udGFpbmVyLnYxLkJsdWVHcmVlblNldHRpbmdzLlN0YW5k", + "YXJkUm9sbG91dFBvbGljeUgAEmMKGWF1dG9zY2FsZWRfcm9sbG91dF9wb2xp", + "Y3kYAyABKAsyPi5nb29nbGUuY29udGFpbmVyLnYxLkJsdWVHcmVlblNldHRp", + "bmdzLkF1dG9zY2FsZWRSb2xsb3V0UG9saWN5SAASPwoXbm9kZV9wb29sX3Nv", + "YWtfZHVyYXRpb24YAiABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25I", + "AYgBARq5AQoVU3RhbmRhcmRSb2xsb3V0UG9saWN5EhoKEGJhdGNoX3BlcmNl", + "bnRhZ2UYASABKAJIABIaChBiYXRjaF9ub2RlX2NvdW50GAIgASgFSAASOwoT", + "YmF0Y2hfc29ha19kdXJhdGlvbhgDIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5E", + "dXJhdGlvbkgBiAEBQhMKEXVwZGF0ZV9iYXRjaF9zaXplQhYKFF9iYXRjaF9z", + "b2FrX2R1cmF0aW9uGloKF0F1dG9zY2FsZWRSb2xsb3V0UG9saWN5Ej8KF3dh", + "aXRfZm9yX2RyYWluX2R1cmF0aW9uGAEgASgLMhkuZ29vZ2xlLnByb3RvYnVm", + "LkR1cmF0aW9uQgPgQQFCEAoOcm9sbG91dF9wb2xpY3lCGgoYX25vZGVfcG9v", + "bF9zb2FrX2R1cmF0aW9uIowSCghOb2RlUG9vbBIMCgRuYW1lGAEgASgJEi8K", + "BmNvbmZpZxgCIAEoCzIfLmdvb2dsZS5jb250YWluZXIudjEuTm9kZUNvbmZp", + "ZxIaChJpbml0aWFsX25vZGVfY291bnQYAyABKAUSEQoJbG9jYXRpb25zGA0g", + "AygJEj4KDm5ldHdvcmtfY29uZmlnGA4gASgLMiYuZ29vZ2xlLmNvbnRhaW5l", + "ci52MS5Ob2RlTmV0d29ya0NvbmZpZxIWCglzZWxmX2xpbmsYZCABKAlCA+BB", + "AxIPCgd2ZXJzaW9uGGUgASgJEiAKE2luc3RhbmNlX2dyb3VwX3VybHMYZiAD", + "KAlCA+BBAxI5CgZzdGF0dXMYZyABKA4yJC5nb29nbGUuY29udGFpbmVyLnYx", + "Lk5vZGVQb29sLlN0YXR1c0ID4EEDEh0KDnN0YXR1c19tZXNzYWdlGGggASgJ", + "QgUYAeBBAxI9CgthdXRvc2NhbGluZxgEIAEoCzIoLmdvb2dsZS5jb250YWlu", + "ZXIudjEuTm9kZVBvb2xBdXRvc2NhbGluZxI3CgptYW5hZ2VtZW50GAUgASgL", + "MiMuZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlTWFuYWdlbWVudBJDChNtYXhf", + "cG9kc19jb25zdHJhaW50GAYgASgLMiYuZ29vZ2xlLmNvbnRhaW5lci52MS5N", + "YXhQb2RzQ29uc3RyYWludBI4Cgpjb25kaXRpb25zGGkgAygLMiQuZ29vZ2xl", + "LmNvbnRhaW5lci52MS5TdGF0dXNDb25kaXRpb24SHwoScG9kX2lwdjRfY2lk", + "cl9zaXplGAcgASgFQgPgQQMSRwoQdXBncmFkZV9zZXR0aW5ncxhrIAEoCzIt", + "Lmdvb2dsZS5jb250YWluZXIudjEuTm9kZVBvb2wuVXBncmFkZVNldHRpbmdz", + "EkcKEHBsYWNlbWVudF9wb2xpY3kYbCABKAsyLS5nb29nbGUuY29udGFpbmVy", + "LnYxLk5vZGVQb29sLlBsYWNlbWVudFBvbGljeRJCCgt1cGRhdGVfaW5mbxht", + "IAEoCzIoLmdvb2dsZS5jb250YWluZXIudjEuTm9kZVBvb2wuVXBkYXRlSW5m", + "b0ID4EEDEgwKBGV0YWcYbiABKAkSTQoTcXVldWVkX3Byb3Zpc2lvbmluZxhw", + "IAEoCzIwLmdvb2dsZS5jb250YWluZXIudjEuTm9kZVBvb2wuUXVldWVkUHJv", + "dmlzaW9uaW5nEk0KGGJlc3RfZWZmb3J0X3Byb3Zpc2lvbmluZxhxIAEoCzIr", + "Lmdvb2dsZS5jb250YWluZXIudjEuQmVzdEVmZm9ydFByb3Zpc2lvbmluZxJI", + "ChFub2RlX2RyYWluX2NvbmZpZxh0IAEoCzItLmdvb2dsZS5jb250YWluZXIu", + "djEuTm9kZVBvb2wuTm9kZURyYWluQ29uZmlnGvABCg9VcGdyYWRlU2V0dGlu", + "Z3MSEQoJbWF4X3N1cmdlGAEgASgFEhcKD21heF91bmF2YWlsYWJsZRgCIAEo", + "BRJCCghzdHJhdGVneRgDIAEoDjIrLmdvb2dsZS5jb250YWluZXIudjEuTm9k", + "ZVBvb2xVcGRhdGVTdHJhdGVneUgAiAEBEkgKE2JsdWVfZ3JlZW5fc2V0dGlu", + "Z3MYBCABKAsyJi5nb29nbGUuY29udGFpbmVyLnYxLkJsdWVHcmVlblNldHRp", + "bmdzSAGIAQFCCwoJX3N0cmF0ZWd5QhYKFF9ibHVlX2dyZWVuX3NldHRpbmdz", + "GogECgpVcGRhdGVJbmZvEk8KD2JsdWVfZ3JlZW5faW5mbxgBIAEoCzI2Lmdv", + "b2dsZS5jb250YWluZXIudjEuTm9kZVBvb2wuVXBkYXRlSW5mby5CbHVlR3Jl", + "ZW5JbmZvGqgDCg1CbHVlR3JlZW5JbmZvEksKBXBoYXNlGAEgASgOMjwuZ29v", + "Z2xlLmNvbnRhaW5lci52MS5Ob2RlUG9vbC5VcGRhdGVJbmZvLkJsdWVHcmVl", + "bkluZm8uUGhhc2USIAoYYmx1ZV9pbnN0YW5jZV9ncm91cF91cmxzGAIgAygJ", + "EiEKGWdyZWVuX2luc3RhbmNlX2dyb3VwX3VybHMYAyADKAkSJQodYmx1ZV9w", + "b29sX2RlbGV0aW9uX3N0YXJ0X3RpbWUYBCABKAkSGgoSZ3JlZW5fcG9vbF92", + "ZXJzaW9uGAUgASgJIsEBCgVQaGFzZRIVChFQSEFTRV9VTlNQRUNJRklFRBAA", + "EhIKDlVQREFURV9TVEFSVEVEEAESFwoTQ1JFQVRJTkdfR1JFRU5fUE9PTBAC", + "EhcKE0NPUkRPTklOR19CTFVFX1BPT0wQAxIWChJEUkFJTklOR19CTFVFX1BP", + "T0wQBBIVChFOT0RFX1BPT0xfU09BS0lORxAFEhYKEkRFTEVUSU5HX0JMVUVf", + "UE9PTBAGEhQKEFJPTExCQUNLX1NUQVJURUQQBxquAQoPUGxhY2VtZW50UG9s", + "aWN5EkAKBHR5cGUYASABKA4yMi5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVQ", + "b29sLlBsYWNlbWVudFBvbGljeS5UeXBlEhkKDHRwdV90b3BvbG9neRgCIAEo", + "CUID4EEBEhMKC3BvbGljeV9uYW1lGAMgASgJIikKBFR5cGUSFAoQVFlQRV9V", + "TlNQRUNJRklFRBAAEgsKB0NPTVBBQ1QQARolChJRdWV1ZWRQcm92aXNpb25p", + "bmcSDwoHZW5hYmxlZBgBIAEoCBpvCg9Ob2RlRHJhaW5Db25maWcSMgolcmVz", + "cGVjdF9wZGJfZHVyaW5nX25vZGVfcG9vbF9kZWxldGlvbhgDIAEoCEgAiAEB", + "QigKJl9yZXNwZWN0X3BkYl9kdXJpbmdfbm9kZV9wb29sX2RlbGV0aW9uIoEB", + "CgZTdGF0dXMSFgoSU1RBVFVTX1VOU1BFQ0lGSUVEEAASEAoMUFJPVklTSU9O", + "SU5HEAESCwoHUlVOTklORxACEhYKElJVTk5JTkdfV0lUSF9FUlJPUhADEg8K", + "C1JFQ09OQ0lMSU5HEAQSDAoIU1RPUFBJTkcQBRIJCgVFUlJPUhAGIn0KDk5v", + "ZGVNYW5hZ2VtZW50EhQKDGF1dG9fdXBncmFkZRgBIAEoCBITCgthdXRvX3Jl", + "cGFpchgCIAEoCBJACg91cGdyYWRlX29wdGlvbnMYCiABKAsyJy5nb29nbGUu", + "Y29udGFpbmVyLnYxLkF1dG9VcGdyYWRlT3B0aW9ucyJGChZCZXN0RWZmb3J0", + "UHJvdmlzaW9uaW5nEg8KB2VuYWJsZWQYASABKAgSGwoTbWluX3Byb3Zpc2lv", + "bl9ub2RlcxgCIAEoBSJUChJBdXRvVXBncmFkZU9wdGlvbnMSJAoXYXV0b191", + "cGdyYWRlX3N0YXJ0X3RpbWUYASABKAlCA+BBAxIYCgtkZXNjcmlwdGlvbhgC", + "IAEoCUID4EEDImUKEU1haW50ZW5hbmNlUG9saWN5EjYKBndpbmRvdxgBIAEo", + "CzImLmdvb2dsZS5jb250YWluZXIudjEuTWFpbnRlbmFuY2VXaW5kb3cSGAoQ", + "cmVzb3VyY2VfdmVyc2lvbhgDIAEoCSL2AgoRTWFpbnRlbmFuY2VXaW5kb3cS", + "TwoYZGFpbHlfbWFpbnRlbmFuY2Vfd2luZG93GAIgASgLMisuZ29vZ2xlLmNv", + "bnRhaW5lci52MS5EYWlseU1haW50ZW5hbmNlV2luZG93SAASRAoQcmVjdXJy", + "aW5nX3dpbmRvdxgDIAEoCzIoLmdvb2dsZS5jb250YWluZXIudjEuUmVjdXJy", + "aW5nVGltZVdpbmRvd0gAEmEKFm1haW50ZW5hbmNlX2V4Y2x1c2lvbnMYBCAD", + "KAsyQS5nb29nbGUuY29udGFpbmVyLnYxLk1haW50ZW5hbmNlV2luZG93Lk1h", + "aW50ZW5hbmNlRXhjbHVzaW9uc0VudHJ5Gl0KGk1haW50ZW5hbmNlRXhjbHVz", + "aW9uc0VudHJ5EgsKA2tleRgBIAEoCRIuCgV2YWx1ZRgCIAEoCzIfLmdvb2ds", + "ZS5jb250YWluZXIudjEuVGltZVdpbmRvdzoCOAFCCAoGcG9saWN5ItABCgpU", + "aW1lV2luZG93ElkKHW1haW50ZW5hbmNlX2V4Y2x1c2lvbl9vcHRpb25zGAMg", + "ASgLMjAuZ29vZ2xlLmNvbnRhaW5lci52MS5NYWludGVuYW5jZUV4Y2x1c2lv", + "bk9wdGlvbnNIABIuCgpzdGFydF90aW1lGAEgASgLMhouZ29vZ2xlLnByb3Rv", + "YnVmLlRpbWVzdGFtcBIsCghlbmRfdGltZRgCIAEoCzIaLmdvb2dsZS5wcm90", + "b2J1Zi5UaW1lc3RhbXBCCQoHb3B0aW9ucyLhAgobTWFpbnRlbmFuY2VFeGNs", + "dXNpb25PcHRpb25zEkUKBXNjb3BlGAEgASgOMjYuZ29vZ2xlLmNvbnRhaW5l", + "ci52MS5NYWludGVuYW5jZUV4Y2x1c2lvbk9wdGlvbnMuU2NvcGUSWwoRZW5k", + "X3RpbWVfYmVoYXZpb3IYAiABKA4yQC5nb29nbGUuY29udGFpbmVyLnYxLk1h", + "aW50ZW5hbmNlRXhjbHVzaW9uT3B0aW9ucy5FbmRUaW1lQmVoYXZpb3IiTgoF", + "U2NvcGUSDwoLTk9fVVBHUkFERVMQABIVChFOT19NSU5PUl9VUEdSQURFUxAB", + "Eh0KGU5PX01JTk9SX09SX05PREVfVVBHUkFERVMQAiJOCg9FbmRUaW1lQmVo", + "YXZpb3ISIQodRU5EX1RJTUVfQkVIQVZJT1JfVU5TUEVDSUZJRUQQABIYChRV", + "TlRJTF9FTkRfT0ZfU1VQUE9SVBABIloKE1JlY3VycmluZ1RpbWVXaW5kb3cS", + "LwoGd2luZG93GAEgASgLMh8uZ29vZ2xlLmNvbnRhaW5lci52MS5UaW1lV2lu", + "ZG93EhIKCnJlY3VycmVuY2UYAiABKAkiQwoWRGFpbHlNYWludGVuYW5jZVdp", + "bmRvdxISCgpzdGFydF90aW1lGAIgASgJEhUKCGR1cmF0aW9uGAMgASgJQgPg", + "QQMixgEKHFNldE5vZGVQb29sTWFuYWdlbWVudFJlcXVlc3QSFgoKcHJvamVj", "dF9pZBgBIAEoCUICGAESEAoEem9uZRgCIAEoCUICGAESFgoKY2x1c3Rlcl9p", - "ZBgDIAEoCUICGAESFAoHZW5hYmxlZBgEIAEoCEID4EECEgwKBG5hbWUYBiAB", - "KAkihAEKFlN0YXJ0SVBSb3RhdGlvblJlcXVlc3QSFgoKcHJvamVjdF9pZBgB", - "IAEoCUICGAESEAoEem9uZRgCIAEoCUICGAESFgoKY2x1c3Rlcl9pZBgDIAEo", - "CUICGAESDAoEbmFtZRgGIAEoCRIaChJyb3RhdGVfY3JlZGVudGlhbHMYByAB", - "KAgiawoZQ29tcGxldGVJUFJvdGF0aW9uUmVxdWVzdBIWCgpwcm9qZWN0X2lk", - "GAEgASgJQgIYARIQCgR6b25lGAIgASgJQgIYARIWCgpjbHVzdGVyX2lkGAMg", - "ASgJQgIYARIMCgRuYW1lGAcgASgJIsUCChFBY2NlbGVyYXRvckNvbmZpZxIZ", - "ChFhY2NlbGVyYXRvcl9jb3VudBgBIAEoAxIYChBhY2NlbGVyYXRvcl90eXBl", - "GAIgASgJEhoKEmdwdV9wYXJ0aXRpb25fc2l6ZRgDIAEoCRJGChJncHVfc2hh", - "cmluZ19jb25maWcYBSABKAsyJS5nb29nbGUuY29udGFpbmVyLnYxLkdQVVNo", - "YXJpbmdDb25maWdIAIgBARJdCh5ncHVfZHJpdmVyX2luc3RhbGxhdGlvbl9j", - "b25maWcYBiABKAsyMC5nb29nbGUuY29udGFpbmVyLnYxLkdQVURyaXZlcklu", - "c3RhbGxhdGlvbkNvbmZpZ0gBiAEBQhUKE19ncHVfc2hhcmluZ19jb25maWdC", - "IQofX2dwdV9kcml2ZXJfaW5zdGFsbGF0aW9uX2NvbmZpZyKDAgoQR1BVU2hh", - "cmluZ0NvbmZpZxIiChptYXhfc2hhcmVkX2NsaWVudHNfcGVyX2dwdRgBIAEo", - "AxJbChRncHVfc2hhcmluZ19zdHJhdGVneRgCIAEoDjI4Lmdvb2dsZS5jb250", - "YWluZXIudjEuR1BVU2hhcmluZ0NvbmZpZy5HUFVTaGFyaW5nU3RyYXRlZ3lI", - "AIgBASJVChJHUFVTaGFyaW5nU3RyYXRlZ3kSJAogR1BVX1NIQVJJTkdfU1RS", - "QVRFR1lfVU5TUEVDSUZJRUQQABIQCgxUSU1FX1NIQVJJTkcQARIHCgNNUFMQ", - "AkIXChVfZ3B1X3NoYXJpbmdfc3RyYXRlZ3kihAIKG0dQVURyaXZlckluc3Rh", - "bGxhdGlvbkNvbmZpZxJiChJncHVfZHJpdmVyX3ZlcnNpb24YASABKA4yQS5n", - "b29nbGUuY29udGFpbmVyLnYxLkdQVURyaXZlckluc3RhbGxhdGlvbkNvbmZp", - "Zy5HUFVEcml2ZXJWZXJzaW9uSACIAQEiagoQR1BVRHJpdmVyVmVyc2lvbhIi", - "Ch5HUFVfRFJJVkVSX1ZFUlNJT05fVU5TUEVDSUZJRUQQABIZChVJTlNUQUxM", - "QVRJT05fRElTQUJMRUQQARILCgdERUZBVUxUEAISCgoGTEFURVNUEANCFQoT", - "X2dwdV9kcml2ZXJfdmVyc2lvbiKaAQoWV29ya2xvYWRNZXRhZGF0YUNvbmZp", - "ZxI+CgRtb2RlGAIgASgOMjAuZ29vZ2xlLmNvbnRhaW5lci52MS5Xb3JrbG9h", - "ZE1ldGFkYXRhQ29uZmlnLk1vZGUiQAoETW9kZRIUChBNT0RFX1VOU1BFQ0lG", - "SUVEEAASEAoMR0NFX01FVEFEQVRBEAESEAoMR0tFX01FVEFEQVRBEAIiqgEK", - "F1NldE5ldHdvcmtQb2xpY3lSZXF1ZXN0EhYKCnByb2plY3RfaWQYASABKAlC", - "AhgBEhAKBHpvbmUYAiABKAlCAhgBEhYKCmNsdXN0ZXJfaWQYAyABKAlCAhgB", - "Ej8KDm5ldHdvcmtfcG9saWN5GAQgASgLMiIuZ29vZ2xlLmNvbnRhaW5lci52", - "MS5OZXR3b3JrUG9saWN5QgPgQQISDAoEbmFtZRgGIAEoCSK5AQobU2V0TWFp", - "bnRlbmFuY2VQb2xpY3lSZXF1ZXN0EhcKCnByb2plY3RfaWQYASABKAlCA+BB", - "AhIRCgR6b25lGAIgASgJQgPgQQISFwoKY2x1c3Rlcl9pZBgDIAEoCUID4EEC", - "EkcKEm1haW50ZW5hbmNlX3BvbGljeRgEIAEoCzImLmdvb2dsZS5jb250YWlu", - "ZXIudjEuTWFpbnRlbmFuY2VQb2xpY3lCA+BBAhIMCgRuYW1lGAUgASgJIvQC", - "Cg9TdGF0dXNDb25kaXRpb24SOwoEY29kZRgBIAEoDjIpLmdvb2dsZS5jb250", - "YWluZXIudjEuU3RhdHVzQ29uZGl0aW9uLkNvZGVCAhgBEg8KB21lc3NhZ2UY", - "AiABKAkSKAoOY2Fub25pY2FsX2NvZGUYAyABKA4yEC5nb29nbGUucnBjLkNv", - "ZGUi6AEKBENvZGUSCwoHVU5LTk9XThAAEhAKDEdDRV9TVE9DS09VVBABEh8K", - "G0dLRV9TRVJWSUNFX0FDQ09VTlRfREVMRVRFRBACEhYKEkdDRV9RVU9UQV9F", - "WENFRURFRBADEhMKD1NFVF9CWV9PUEVSQVRPUhAEEhcKE0NMT1VEX0tNU19L", - "RVlfRVJST1IQBxIPCgtDQV9FWFBJUklORxAJEiwKKE5PREVfU0VSVklDRV9B", - "Q0NPVU5UX01JU1NJTkdfUEVSTUlTU0lPTlMQChIbChdDTE9VRF9LTVNfS0VZ", - "X0RFU1RST1lFRBALIuUKCg1OZXR3b3JrQ29uZmlnEhQKB25ldHdvcmsYASAB", - "KAlCA+BBAxIXCgpzdWJuZXR3b3JrGAIgASgJQgPgQQMSJAocZW5hYmxlX2lu", - "dHJhX25vZGVfdmlzaWJpbGl0eRgFIAEoCBJDChNkZWZhdWx0X3NuYXRfc3Rh", - "dHVzGAcgASgLMiYuZ29vZ2xlLmNvbnRhaW5lci52MS5EZWZhdWx0U25hdFN0", - "YXR1cxIfChdlbmFibGVfbDRpbGJfc3Vic2V0dGluZxgKIAEoCBJAChFkYXRh", - "cGF0aF9wcm92aWRlchgLIAEoDjIlLmdvb2dsZS5jb250YWluZXIudjEuRGF0", - "YXBhdGhQcm92aWRlchJQChpwcml2YXRlX2lwdjZfZ29vZ2xlX2FjY2VzcxgM", - "IAEoDjIsLmdvb2dsZS5jb250YWluZXIudjEuUHJpdmF0ZUlQdjZHb29nbGVB", - "Y2Nlc3MSMgoKZG5zX2NvbmZpZxgNIAEoCzIeLmdvb2dsZS5jb250YWluZXIu", - "djEuRE5TQ29uZmlnElIKG3NlcnZpY2VfZXh0ZXJuYWxfaXBzX2NvbmZpZxgP", - "IAEoCzItLmdvb2dsZS5jb250YWluZXIudjEuU2VydmljZUV4dGVybmFsSVBz", - "Q29uZmlnEkEKEmdhdGV3YXlfYXBpX2NvbmZpZxgQIAEoCzIlLmdvb2dsZS5j", - "b250YWluZXIudjEuR2F0ZXdheUFQSUNvbmZpZxIfChdlbmFibGVfbXVsdGlf", - "bmV0d29ya2luZxgRIAEoCBJmChpuZXR3b3JrX3BlcmZvcm1hbmNlX2NvbmZp", - "ZxgSIAEoCzJCLmdvb2dsZS5jb250YWluZXIudjEuTmV0d29ya0NvbmZpZy5D", - "bHVzdGVyTmV0d29ya1BlcmZvcm1hbmNlQ29uZmlnEicKGmVuYWJsZV9mcWRu", - "X25ldHdvcmtfcG9saWN5GBMgASgISACIAQESWQocaW5fdHJhbnNpdF9lbmNy", - "eXB0aW9uX2NvbmZpZxgUIAEoDjIuLmdvb2dsZS5jb250YWluZXIudjEuSW5U", - "cmFuc2l0RW5jcnlwdGlvbkNvbmZpZ0gBiAEBEjUKKGVuYWJsZV9jaWxpdW1f", - "Y2x1c3RlcndpZGVfbmV0d29ya19wb2xpY3kYFSABKAhIAogBARIpChxkZWZh", - "dWx0X2VuYWJsZV9wcml2YXRlX25vZGVzGBYgASgISAOIAQESMgolZGlzYWJs", - "ZV9sNF9sYl9maXJld2FsbF9yZWNvbmNpbGlhdGlvbhgYIAEoCEgEiAEBGt4B", - "Ch9DbHVzdGVyTmV0d29ya1BlcmZvcm1hbmNlQ29uZmlnEnEKG3RvdGFsX2Vn", - "cmVzc19iYW5kd2lkdGhfdGllchgBIAEoDjJHLmdvb2dsZS5jb250YWluZXIu", - "djEuTmV0d29ya0NvbmZpZy5DbHVzdGVyTmV0d29ya1BlcmZvcm1hbmNlQ29u", - "ZmlnLlRpZXJIAIgBASIoCgRUaWVyEhQKEFRJRVJfVU5TUEVDSUZJRUQQABIK", - "CgZUSUVSXzEQAUIeChxfdG90YWxfZWdyZXNzX2JhbmR3aWR0aF90aWVyQh0K", - "G19lbmFibGVfZnFkbl9uZXR3b3JrX3BvbGljeUIfCh1faW5fdHJhbnNpdF9l", - "bmNyeXB0aW9uX2NvbmZpZ0IrCilfZW5hYmxlX2NpbGl1bV9jbHVzdGVyd2lk", - "ZV9uZXR3b3JrX3BvbGljeUIfCh1fZGVmYXVsdF9lbmFibGVfcHJpdmF0ZV9u", - "b2Rlc0IoCiZfZGlzYWJsZV9sNF9sYl9maXJld2FsbF9yZWNvbmNpbGlhdGlv", - "biLAAQoQR2F0ZXdheUFQSUNvbmZpZxI+CgdjaGFubmVsGAEgASgOMi0uZ29v", - "Z2xlLmNvbnRhaW5lci52MS5HYXRld2F5QVBJQ29uZmlnLkNoYW5uZWwibAoH", - "Q2hhbm5lbBIXChNDSEFOTkVMX1VOU1BFQ0lGSUVEEAASFAoQQ0hBTk5FTF9E", - "SVNBQkxFRBABEhwKFENIQU5ORUxfRVhQRVJJTUVOVEFMEAMaAggBEhQKEENI", - "QU5ORUxfU1RBTkRBUkQQBCIrChhTZXJ2aWNlRXh0ZXJuYWxJUHNDb25maWcS", - "DwoHZW5hYmxlZBgBIAEoCCIoChZHZXRPcGVuSURDb25maWdSZXF1ZXN0Eg4K", - "BnBhcmVudBgBIAEoCSLfAgoXR2V0T3BlbklEQ29uZmlnUmVzcG9uc2USDgoG", - "aXNzdWVyGAEgASgJEhoKCGp3a3NfdXJpGAIgASgJUghqd2tzX3VyaRI6Chhy", - "ZXNwb25zZV90eXBlc19zdXBwb3J0ZWQYAyADKAlSGHJlc3BvbnNlX3R5cGVz", - "X3N1cHBvcnRlZBI4ChdzdWJqZWN0X3R5cGVzX3N1cHBvcnRlZBgEIAMoCVIX", - "c3ViamVjdF90eXBlc19zdXBwb3J0ZWQSVAolaWRfdG9rZW5fc2lnbmluZ19h", - "bGdfdmFsdWVzX3N1cHBvcnRlZBgFIAMoCVIlaWRfdG9rZW5fc2lnbmluZ19h", - "bGdfdmFsdWVzX3N1cHBvcnRlZBIqChBjbGFpbXNfc3VwcG9ydGVkGAYgAygJ", - "UhBjbGFpbXNfc3VwcG9ydGVkEiAKC2dyYW50X3R5cGVzGAcgAygJUgtncmFu", - "dF90eXBlcyInChVHZXRKU09OV2ViS2V5c1JlcXVlc3QSDgoGcGFyZW50GAEg", - "ASgJInIKA0p3axILCgNrdHkYASABKAkSCwoDYWxnGAIgASgJEgsKA3VzZRgD", - "IAEoCRILCgNraWQYBCABKAkSCQoBbhgFIAEoCRIJCgFlGAYgASgJEgkKAXgY", - "ByABKAkSCQoBeRgIIAEoCRILCgNjcnYYCSABKAkiQAoWR2V0SlNPTldlYktl", - "eXNSZXNwb25zZRImCgRrZXlzGAEgAygLMhguZ29vZ2xlLmNvbnRhaW5lci52", - "MS5Kd2siMgoiQ2hlY2tBdXRvcGlsb3RDb21wYXRpYmlsaXR5UmVxdWVzdBIM", - "CgRuYW1lGAEgASgJIvwCChtBdXRvcGlsb3RDb21wYXRpYmlsaXR5SXNzdWUS", - "NAoQbGFzdF9vYnNlcnZhdGlvbhgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5U", - "aW1lc3RhbXASFwoPY29uc3RyYWludF90eXBlGAIgASgJElgKFGluY29tcGF0", - "aWJpbGl0eV90eXBlGAMgASgOMjouZ29vZ2xlLmNvbnRhaW5lci52MS5BdXRv", - "cGlsb3RDb21wYXRpYmlsaXR5SXNzdWUuSXNzdWVUeXBlEhAKCHN1YmplY3Rz", - "GAQgAygJEhkKEWRvY3VtZW50YXRpb25fdXJsGAUgASgJEhMKC2Rlc2NyaXB0", - "aW9uGAYgASgJInIKCUlzc3VlVHlwZRIPCgtVTlNQRUNJRklFRBAAEhMKD0lO", - "Q09NUEFUSUJJTElUWRABEh4KGkFERElUSU9OQUxfQ09ORklHX1JFUVVJUkVE", - "EAISHwobUEFTU0VEX1dJVEhfT1BUSU9OQUxfQ09ORklHEAMieAojQ2hlY2tB", - "dXRvcGlsb3RDb21wYXRpYmlsaXR5UmVzcG9uc2USQAoGaXNzdWVzGAEgAygL", - "MjAuZ29vZ2xlLmNvbnRhaW5lci52MS5BdXRvcGlsb3RDb21wYXRpYmlsaXR5", - "SXNzdWUSDwoHc3VtbWFyeRgCIAEoCSKcAQoOUmVsZWFzZUNoYW5uZWwSPAoH", - "Y2hhbm5lbBgBIAEoDjIrLmdvb2dsZS5jb250YWluZXIudjEuUmVsZWFzZUNo", - "YW5uZWwuQ2hhbm5lbCJMCgdDaGFubmVsEg8KC1VOU1BFQ0lGSUVEEAASCQoF", - "UkFQSUQQARILCgdSRUdVTEFSEAISCgoGU1RBQkxFEAMSDAoIRVhURU5ERUQQ", - "BCInChRDb3N0TWFuYWdlbWVudENvbmZpZxIPCgdlbmFibGVkGAEgASgIIiwK", - "GUludHJhTm9kZVZpc2liaWxpdHlDb25maWcSDwoHZW5hYmxlZBgBIAEoCCIm", - "ChNJTEJTdWJzZXR0aW5nQ29uZmlnEg8KB2VuYWJsZWQYASABKAgi9wIKCURO", - "U0NvbmZpZxI8CgtjbHVzdGVyX2RucxgBIAEoDjInLmdvb2dsZS5jb250YWlu", - "ZXIudjEuRE5TQ29uZmlnLlByb3ZpZGVyEkIKEWNsdXN0ZXJfZG5zX3Njb3Bl", - "GAIgASgOMicuZ29vZ2xlLmNvbnRhaW5lci52MS5ETlNDb25maWcuRE5TU2Nv", - "cGUSGgoSY2x1c3Rlcl9kbnNfZG9tYWluGAMgASgJEioKHWFkZGl0aXZlX3Zw", - "Y19zY29wZV9kbnNfZG9tYWluGAUgASgJQgPgQQEiVwoIUHJvdmlkZXISGAoU", - "UFJPVklERVJfVU5TUEVDSUZJRUQQABIUChBQTEFURk9STV9ERUZBVUxUEAES", - "DQoJQ0xPVURfRE5TEAISDAoIS1VCRV9ETlMQAyJHCghETlNTY29wZRIZChVE", - "TlNfU0NPUEVfVU5TUEVDSUZJRUQQABIRCg1DTFVTVEVSX1NDT1BFEAESDQoJ", - "VlBDX1NDT1BFEAIiLgoRTWF4UG9kc0NvbnN0cmFpbnQSGQoRbWF4X3BvZHNf", - "cGVyX25vZGUYASABKAMiLwoWV29ya2xvYWRJZGVudGl0eUNvbmZpZxIVCg13", - "b3JrbG9hZF9wb29sGAIgASgJIigKFUlkZW50aXR5U2VydmljZUNvbmZpZxIP", - "CgdlbmFibGVkGAEgASgIIksKEE1lc2hDZXJ0aWZpY2F0ZXMSNwoTZW5hYmxl", - "X2NlcnRpZmljYXRlcxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5Cb29sVmFs", - "dWUi4wUKEkRhdGFiYXNlRW5jcnlwdGlvbhIQCghrZXlfbmFtZRgBIAEoCRI8", - "CgVzdGF0ZRgCIAEoDjItLmdvb2dsZS5jb250YWluZXIudjEuRGF0YWJhc2VF", - "bmNyeXB0aW9uLlN0YXRlElUKDWN1cnJlbnRfc3RhdGUYAyABKA4yNC5nb29n", - "bGUuY29udGFpbmVyLnYxLkRhdGFiYXNlRW5jcnlwdGlvbi5DdXJyZW50U3Rh", - "dGVCA+BBA0gAiAEBEhwKD2RlY3J5cHRpb25fa2V5cxgEIAMoCUID4EEDEloK", - "FWxhc3Rfb3BlcmF0aW9uX2Vycm9ycxgFIAMoCzI2Lmdvb2dsZS5jb250YWlu", - "ZXIudjEuRGF0YWJhc2VFbmNyeXB0aW9uLk9wZXJhdGlvbkVycm9yQgPgQQMa", - "aAoOT3BlcmF0aW9uRXJyb3ISEAoIa2V5X25hbWUYASABKAkSFQoNZXJyb3Jf", - "bWVzc2FnZRgCIAEoCRItCgl0aW1lc3RhbXAYAyABKAsyGi5nb29nbGUucHJv", - "dG9idWYuVGltZXN0YW1wIjIKBVN0YXRlEgsKB1VOS05PV04QABINCglFTkNS", - "WVBURUQQARINCglERUNSWVBURUQQAiL7AQoMQ3VycmVudFN0YXRlEh0KGUNV", - "UlJFTlRfU1RBVEVfVU5TUEVDSUZJRUQQABIbChdDVVJSRU5UX1NUQVRFX0VO", - "Q1JZUFRFRBAHEhsKF0NVUlJFTlRfU1RBVEVfREVDUllQVEVEEAISJAogQ1VS", - "UkVOVF9TVEFURV9FTkNSWVBUSU9OX1BFTkRJTkcQAxIiCh5DVVJSRU5UX1NU", - "QVRFX0VOQ1JZUFRJT05fRVJST1IQBBIkCiBDVVJSRU5UX1NUQVRFX0RFQ1JZ", - "UFRJT05fUEVORElORxAFEiIKHkNVUlJFTlRfU1RBVEVfREVDUllQVElPTl9F", - "UlJPUhAGQhAKDl9jdXJyZW50X3N0YXRlImUKHExpc3RVc2FibGVTdWJuZXR3", - "b3Jrc1JlcXVlc3QSDgoGcGFyZW50GAEgASgJEg4KBmZpbHRlchgCIAEoCRIR", - "CglwYWdlX3NpemUYAyABKAUSEgoKcGFnZV90b2tlbhgEIAEoCSJ0Ch1MaXN0", - "VXNhYmxlU3VibmV0d29ya3NSZXNwb25zZRI6CgtzdWJuZXR3b3JrcxgBIAMo", - "CzIlLmdvb2dsZS5jb250YWluZXIudjEuVXNhYmxlU3VibmV0d29yaxIXCg9u", - "ZXh0X3BhZ2VfdG9rZW4YAiABKAkigAIKHlVzYWJsZVN1Ym5ldHdvcmtTZWNv", - "bmRhcnlSYW5nZRISCgpyYW5nZV9uYW1lGAEgASgJEhUKDWlwX2NpZHJfcmFu", - "Z2UYAiABKAkSSgoGc3RhdHVzGAMgASgOMjouZ29vZ2xlLmNvbnRhaW5lci52", - "MS5Vc2FibGVTdWJuZXR3b3JrU2Vjb25kYXJ5UmFuZ2UuU3RhdHVzImcKBlN0", - "YXR1cxILCgdVTktOT1dOEAASCgoGVU5VU0VEEAESEgoOSU5fVVNFX1NFUlZJ", - "Q0UQAhIYChRJTl9VU0VfU0hBUkVBQkxFX1BPRBADEhYKEklOX1VTRV9NQU5B", - "R0VEX1BPRBAEIrgBChBVc2FibGVTdWJuZXR3b3JrEhIKCnN1Ym5ldHdvcmsY", - "ASABKAkSDwoHbmV0d29yaxgCIAEoCRIVCg1pcF9jaWRyX3JhbmdlGAMgASgJ", - "ElAKE3NlY29uZGFyeV9pcF9yYW5nZXMYBCADKAsyMy5nb29nbGUuY29udGFp", - "bmVyLnYxLlVzYWJsZVN1Ym5ldHdvcmtTZWNvbmRhcnlSYW5nZRIWCg5zdGF0", - "dXNfbWVzc2FnZRgFIAEoCSLtAgoZUmVzb3VyY2VVc2FnZUV4cG9ydENvbmZp", - "ZxJgChRiaWdxdWVyeV9kZXN0aW5hdGlvbhgBIAEoCzJCLmdvb2dsZS5jb250", - "YWluZXIudjEuUmVzb3VyY2VVc2FnZUV4cG9ydENvbmZpZy5CaWdRdWVyeURl", - "c3RpbmF0aW9uEiYKHmVuYWJsZV9uZXR3b3JrX2VncmVzc19tZXRlcmluZxgC", - "IAEoCBJtChtjb25zdW1wdGlvbl9tZXRlcmluZ19jb25maWcYAyABKAsySC5n", - "b29nbGUuY29udGFpbmVyLnYxLlJlc291cmNlVXNhZ2VFeHBvcnRDb25maWcu", - "Q29uc3VtcHRpb25NZXRlcmluZ0NvbmZpZxopChNCaWdRdWVyeURlc3RpbmF0", - "aW9uEhIKCmRhdGFzZXRfaWQYASABKAkaLAoZQ29uc3VtcHRpb25NZXRlcmlu", - "Z0NvbmZpZxIPCgdlbmFibGVkGAEgASgIIikKFlZlcnRpY2FsUG9kQXV0b3Nj", - "YWxpbmcSDwoHZW5hYmxlZBgBIAEoCCIlChFEZWZhdWx0U25hdFN0YXR1cxIQ", - "CghkaXNhYmxlZBgBIAEoCCIgCg1TaGllbGRlZE5vZGVzEg8KB2VuYWJsZWQY", - "ASABKAgiHQoKVmlydHVhbE5JQxIPCgdlbmFibGVkGAEgASgIIh0KCkZhc3RT", - "b2NrZXQSDwoHZW5hYmxlZBgBIAEoCCLBAwoSTm90aWZpY2F0aW9uQ29uZmln", - "Ej4KBnB1YnN1YhgBIAEoCzIuLmdvb2dsZS5jb250YWluZXIudjEuTm90aWZp", - "Y2F0aW9uQ29uZmlnLlB1YlN1YhqKAQoGUHViU3ViEg8KB2VuYWJsZWQYASAB", - "KAgSLwoFdG9waWMYAiABKAlCIPpBHQobcHVic3ViLmdvb2dsZWFwaXMuY29t", - "L1RvcGljEj4KBmZpbHRlchgDIAEoCzIuLmdvb2dsZS5jb250YWluZXIudjEu", - "Tm90aWZpY2F0aW9uQ29uZmlnLkZpbHRlchpPCgZGaWx0ZXISRQoKZXZlbnRf", - "dHlwZRgBIAMoDjIxLmdvb2dsZS5jb250YWluZXIudjEuTm90aWZpY2F0aW9u", - "Q29uZmlnLkV2ZW50VHlwZSKMAQoJRXZlbnRUeXBlEhoKFkVWRU5UX1RZUEVf", - "VU5TUEVDSUZJRUQQABIbChdVUEdSQURFX0FWQUlMQUJMRV9FVkVOVBABEhEK", - "DVVQR1JBREVfRVZFTlQQAhIbChdTRUNVUklUWV9CVUxMRVRJTl9FVkVOVBAD", - "EhYKElVQR1JBREVfSU5GT19FVkVOVBAEIvABChFDb25maWRlbnRpYWxOb2Rl", - "cxIPCgdlbmFibGVkGAEgASgIEmMKGmNvbmZpZGVudGlhbF9pbnN0YW5jZV90", - "eXBlGAIgASgOMj8uZ29vZ2xlLmNvbnRhaW5lci52MS5Db25maWRlbnRpYWxO", - "b2Rlcy5Db25maWRlbnRpYWxJbnN0YW5jZVR5cGUiZQoYQ29uZmlkZW50aWFs", - "SW5zdGFuY2VUeXBlEioKJkNPTkZJREVOVElBTF9JTlNUQU5DRV9UWVBFX1VO", - "U1BFQ0lGSUVEEAASBwoDU0VWEAESCwoHU0VWX1NOUBACEgcKA1REWBADIt8B", - "CgxVcGdyYWRlRXZlbnQSPwoNcmVzb3VyY2VfdHlwZRgBIAEoDjIoLmdvb2ds", - "ZS5jb250YWluZXIudjEuVXBncmFkZVJlc291cmNlVHlwZRIRCglvcGVyYXRp", - "b24YAiABKAkSOAoUb3BlcmF0aW9uX3N0YXJ0X3RpbWUYAyABKAsyGi5nb29n", - "bGUucHJvdG9idWYuVGltZXN0YW1wEhcKD2N1cnJlbnRfdmVyc2lvbhgEIAEo", - "CRIWCg50YXJnZXRfdmVyc2lvbhgFIAEoCRIQCghyZXNvdXJjZRgGIAEoCSKy", - "BgoQVXBncmFkZUluZm9FdmVudBI/Cg1yZXNvdXJjZV90eXBlGAEgASgOMigu", - "Z29vZ2xlLmNvbnRhaW5lci52MS5VcGdyYWRlUmVzb3VyY2VUeXBlEhEKCW9w", - "ZXJhdGlvbhgCIAEoCRIuCgpzdGFydF90aW1lGAMgASgLMhouZ29vZ2xlLnBy", - "b3RvYnVmLlRpbWVzdGFtcBIsCghlbmRfdGltZRgEIAEoCzIaLmdvb2dsZS5w", - "cm90b2J1Zi5UaW1lc3RhbXASFwoPY3VycmVudF92ZXJzaW9uGAUgASgJEhYK", - "DnRhcmdldF92ZXJzaW9uGAYgASgJEhAKCHJlc291cmNlGAcgASgJEj8KBXN0", - "YXRlGAggASgOMisuZ29vZ2xlLmNvbnRhaW5lci52MS5VcGdyYWRlSW5mb0V2", - "ZW50LlN0YXRlQgPgQQMSQgoZc3RhbmRhcmRfc3VwcG9ydF9lbmRfdGltZRgJ", - "IAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBARJCChlleHRl", - "bmRlZF9zdXBwb3J0X2VuZF90aW1lGAogASgLMhouZ29vZ2xlLnByb3RvYnVm", - "LlRpbWVzdGFtcEgBiAEBEhMKC2Rlc2NyaXB0aW9uGAsgASgJEkMKCmV2ZW50", - "X3R5cGUYDCABKA4yLy5nb29nbGUuY29udGFpbmVyLnYxLlVwZ3JhZGVJbmZv", - "RXZlbnQuRXZlbnRUeXBlIlQKBVN0YXRlEhUKEVNUQVRFX1VOU1BFQ0lGSUVE", - "EAASCwoHU1RBUlRFRBADEg0KCVNVQ0NFRURFRBAEEgoKBkZBSUxFRBAFEgwK", - "CENBTkNFTEVEEAYidAoJRXZlbnRUeXBlEhoKFkVWRU5UX1RZUEVfVU5TUEVD", - "SUZJRUQQABISCg5FTkRfT0ZfU1VQUE9SVBABEiAKHENPU19NSUxFU1RPTkVf", - "VkVSU0lPTl9VUERBVEUQAhIVChFVUEdSQURFX0xJRkVDWUNMRRADQhwKGl9z", - "dGFuZGFyZF9zdXBwb3J0X2VuZF90aW1lQhwKGl9leHRlbmRlZF9zdXBwb3J0", - "X2VuZF90aW1lIrkBChVVcGdyYWRlQXZhaWxhYmxlRXZlbnQSDwoHdmVyc2lv", - "bhgBIAEoCRI/Cg1yZXNvdXJjZV90eXBlGAIgASgOMiguZ29vZ2xlLmNvbnRh", - "aW5lci52MS5VcGdyYWRlUmVzb3VyY2VUeXBlEjwKD3JlbGVhc2VfY2hhbm5l", - "bBgDIAEoCzIjLmdvb2dsZS5jb250YWluZXIudjEuUmVsZWFzZUNoYW5uZWwS", - "EAoIcmVzb3VyY2UYBCABKAkiugIKFVNlY3VyaXR5QnVsbGV0aW5FdmVudBIe", - "ChZyZXNvdXJjZV90eXBlX2FmZmVjdGVkGAEgASgJEhMKC2J1bGxldGluX2lk", - "GAIgASgJEg8KB2N2ZV9pZHMYAyADKAkSEAoIc2V2ZXJpdHkYBCABKAkSFAoM", - "YnVsbGV0aW5fdXJpGAUgASgJEhkKEWJyaWVmX2Rlc2NyaXB0aW9uGAYgASgJ", - "EiEKGWFmZmVjdGVkX3N1cHBvcnRlZF9taW5vcnMYByADKAkSGAoQcGF0Y2hl", - "ZF92ZXJzaW9ucxgIIAMoCRIgChhzdWdnZXN0ZWRfdXBncmFkZV90YXJnZXQY", - "CSABKAkSHQoVbWFudWFsX3N0ZXBzX3JlcXVpcmVkGAogASgIEhoKEm1pdGln", - "YXRlZF92ZXJzaW9ucxgLIAMoCSK8AQoJQXV0b3BpbG90Eg8KB2VuYWJsZWQY", - "ASABKAgSSQoWd29ya2xvYWRfcG9saWN5X2NvbmZpZxgCIAEoCzIpLmdvb2ds", - "ZS5jb250YWluZXIudjEuV29ya2xvYWRQb2xpY3lDb25maWcSUwobcHJpdmls", - "ZWdlZF9hZG1pc3Npb25fY29uZmlnGAQgASgLMi4uZ29vZ2xlLmNvbnRhaW5l", - "ci52MS5Qcml2aWxlZ2VkQWRtaXNzaW9uQ29uZmlnIjQKGVByaXZpbGVnZWRB", - "ZG1pc3Npb25Db25maWcSFwoPYWxsb3dsaXN0X3BhdGhzGAEgAygJIqwBChRX", - "b3JrbG9hZFBvbGljeUNvbmZpZxIcCg9hbGxvd19uZXRfYWRtaW4YASABKAhI", - "AIgBARI1CihhdXRvcGlsb3RfY29tcGF0aWJpbGl0eV9hdWRpdGluZ19lbmFi", - "bGVkGAIgASgISAGIAQFCEgoQX2FsbG93X25ldF9hZG1pbkIrCilfYXV0b3Bp", - "bG90X2NvbXBhdGliaWxpdHlfYXVkaXRpbmdfZW5hYmxlZCJWCg1Mb2dnaW5n", - "Q29uZmlnEkUKEGNvbXBvbmVudF9jb25maWcYASABKAsyKy5nb29nbGUuY29u", - "dGFpbmVyLnYxLkxvZ2dpbmdDb21wb25lbnRDb25maWcingIKFkxvZ2dpbmdD", - "b21wb25lbnRDb25maWcSUAoRZW5hYmxlX2NvbXBvbmVudHMYASADKA4yNS5n", - "b29nbGUuY29udGFpbmVyLnYxLkxvZ2dpbmdDb21wb25lbnRDb25maWcuQ29t", - "cG9uZW50IrEBCglDb21wb25lbnQSGQoVQ09NUE9ORU5UX1VOU1BFQ0lGSUVE", - "EAASFQoRU1lTVEVNX0NPTVBPTkVOVFMQARINCglXT1JLTE9BRFMQAhINCglB", - "UElTRVJWRVIQAxINCglTQ0hFRFVMRVIQBBIWChJDT05UUk9MTEVSX01BTkFH", - "RVIQBRIMCghLQ1BfU1NIRBAHEhIKDktDUF9DT05ORUNUSU9OEAgSCwoHS0NQ", - "X0hQQRAJIioKF1JheUNsdXN0ZXJMb2dnaW5nQ29uZmlnEg8KB2VuYWJsZWQY", - "ASABKAgilwIKEE1vbml0b3JpbmdDb25maWcSSAoQY29tcG9uZW50X2NvbmZp", - "ZxgBIAEoCzIuLmdvb2dsZS5jb250YWluZXIudjEuTW9uaXRvcmluZ0NvbXBv", - "bmVudENvbmZpZxJPChltYW5hZ2VkX3Byb21ldGhldXNfY29uZmlnGAIgASgL", - "MiwuZ29vZ2xlLmNvbnRhaW5lci52MS5NYW5hZ2VkUHJvbWV0aGV1c0NvbmZp", - "ZxJoCiZhZHZhbmNlZF9kYXRhcGF0aF9vYnNlcnZhYmlsaXR5X2NvbmZpZxgD", - "IAEoCzI4Lmdvb2dsZS5jb250YWluZXIudjEuQWR2YW5jZWREYXRhcGF0aE9i", - "c2VydmFiaWxpdHlDb25maWcingIKI0FkdmFuY2VkRGF0YXBhdGhPYnNlcnZh", - "YmlsaXR5Q29uZmlnEhYKDmVuYWJsZV9tZXRyaWNzGAEgASgIElYKCnJlbGF5", - "X21vZGUYAiABKA4yQi5nb29nbGUuY29udGFpbmVyLnYxLkFkdmFuY2VkRGF0", - "YXBhdGhPYnNlcnZhYmlsaXR5Q29uZmlnLlJlbGF5TW9kZRIZCgxlbmFibGVf", - "cmVsYXkYAyABKAhIAIgBASJbCglSZWxheU1vZGUSGgoWUkVMQVlfTU9ERV9V", - "TlNQRUNJRklFRBAAEgwKCERJU0FCTEVEEAESEwoPSU5URVJOQUxfVlBDX0xC", - "EAMSDwoLRVhURVJOQUxfTEIQBEIPCg1fZW5hYmxlX3JlbGF5Ii0KGlJheUNs", - "dXN0ZXJNb25pdG9yaW5nQ29uZmlnEg8KB2VuYWJsZWQYASABKAgiWgoVTm9k", - "ZVBvb2xMb2dnaW5nQ29uZmlnEkEKDnZhcmlhbnRfY29uZmlnGAEgASgLMiku", - "Z29vZ2xlLmNvbnRhaW5lci52MS5Mb2dnaW5nVmFyaWFudENvbmZpZyKfAQoU", - "TG9nZ2luZ1ZhcmlhbnRDb25maWcSQgoHdmFyaWFudBgBIAEoDjIxLmdvb2ds", - "ZS5jb250YWluZXIudjEuTG9nZ2luZ1ZhcmlhbnRDb25maWcuVmFyaWFudCJD", - "CgdWYXJpYW50EhcKE1ZBUklBTlRfVU5TUEVDSUZJRUQQABILCgdERUZBVUxU", - "EAESEgoOTUFYX1RIUk9VR0hQVVQQAiLmAgoZTW9uaXRvcmluZ0NvbXBvbmVu", - "dENvbmZpZxJTChFlbmFibGVfY29tcG9uZW50cxgBIAMoDjI4Lmdvb2dsZS5j", - "b250YWluZXIudjEuTW9uaXRvcmluZ0NvbXBvbmVudENvbmZpZy5Db21wb25l", - "bnQi8wEKCUNvbXBvbmVudBIZChVDT01QT05FTlRfVU5TUEVDSUZJRUQQABIV", - "ChFTWVNURU1fQ09NUE9ORU5UUxABEg0KCUFQSVNFUlZFUhADEg0KCVNDSEVE", - "VUxFUhAEEhYKEkNPTlRST0xMRVJfTUFOQUdFUhAFEgsKB1NUT1JBR0UQBxIH", - "CgNIUEEQCBIHCgNQT0QQCRINCglEQUVNT05TRVQQChIOCgpERVBMT1lNRU5U", - "EAsSDwoLU1RBVEVGVUxTRVQQDBIMCghDQURWSVNPUhANEgsKB0tVQkVMRVQQ", - "DhIICgREQ0dNEA8SCgoGSk9CU0VUEBAidQoXTWFuYWdlZFByb21ldGhldXND", - "b25maWcSDwoHZW5hYmxlZBgBIAEoCBJJChZhdXRvX21vbml0b3JpbmdfY29u", - "ZmlnGAIgASgLMikuZ29vZ2xlLmNvbnRhaW5lci52MS5BdXRvTW9uaXRvcmlu", - "Z0NvbmZpZyKJAQoUQXV0b01vbml0b3JpbmdDb25maWcSPgoFc2NvcGUYASAB", - "KA4yLy5nb29nbGUuY29udGFpbmVyLnYxLkF1dG9Nb25pdG9yaW5nQ29uZmln", - "LlNjb3BlIjEKBVNjb3BlEhUKEVNDT1BFX1VOU1BFQ0lGSUVEEAASBwoDQUxM", - "EAESCAoETk9ORRACIrABCg5Qb2RBdXRvc2NhbGluZxJICgtocGFfcHJvZmls", - "ZRgCIAEoDjIuLmdvb2dsZS5jb250YWluZXIudjEuUG9kQXV0b3NjYWxpbmcu", - "SFBBUHJvZmlsZUgAiAEBIkQKCkhQQVByb2ZpbGUSGwoXSFBBX1BST0ZJTEVf", - "VU5TUEVDSUZJRUQQABIICgROT05FEAESDwoLUEVSRk9STUFOQ0UQAkIOCgxf", - "aHBhX3Byb2ZpbGUi1gEKBUZsZWV0Eg8KB3Byb2plY3QYASABKAkSFwoKbWVt", - "YmVyc2hpcBgCIAEoCUID4EEDEhsKDnByZV9yZWdpc3RlcmVkGAMgASgIQgPg", - "QQMSQgoPbWVtYmVyc2hpcF90eXBlGAQgASgOMikuZ29vZ2xlLmNvbnRhaW5l", - "ci52MS5GbGVldC5NZW1iZXJzaGlwVHlwZSJCCg5NZW1iZXJzaGlwVHlwZRIf", - "ChtNRU1CRVJTSElQX1RZUEVfVU5TUEVDSUZJRUQQABIPCgtMSUdIVFdFSUdI", - "VBABIrcGChtDb250cm9sUGxhbmVFbmRwb2ludHNDb25maWcSXwoTZG5zX2Vu", - "ZHBvaW50X2NvbmZpZxgBIAEoCzJCLmdvb2dsZS5jb250YWluZXIudjEuQ29u", - "dHJvbFBsYW5lRW5kcG9pbnRzQ29uZmlnLkROU0VuZHBvaW50Q29uZmlnEl8K", - "E2lwX2VuZHBvaW50c19jb25maWcYAyABKAsyQi5nb29nbGUuY29udGFpbmVy", - "LnYxLkNvbnRyb2xQbGFuZUVuZHBvaW50c0NvbmZpZy5JUEVuZHBvaW50c0Nv", - "bmZpZxr0AQoRRE5TRW5kcG9pbnRDb25maWcSFQoIZW5kcG9pbnQYAiABKAlC", - "A+BBAxIjChZhbGxvd19leHRlcm5hbF90cmFmZmljGAMgASgISACIAQESJgoZ", - "ZW5hYmxlX2s4c190b2tlbnNfdmlhX2RucxgFIAEoCEgBiAEBEiUKGGVuYWJs", - "ZV9rOHNfY2VydHNfdmlhX2RucxgGIAEoCEgCiAEBQhkKF19hbGxvd19leHRl", - "cm5hbF90cmFmZmljQhwKGl9lbmFibGVfazhzX3Rva2Vuc192aWFfZG5zQhsK", - "GV9lbmFibGVfazhzX2NlcnRzX3ZpYV9kbnMa3gIKEUlQRW5kcG9pbnRzQ29u", - "ZmlnEhQKB2VuYWJsZWQYASABKAhIAIgBARIjChZlbmFibGVfcHVibGljX2Vu", - "ZHBvaW50GAIgASgISAGIAQESGgoNZ2xvYmFsX2FjY2VzcxgDIAEoCEgCiAEB", - "ElcKGmF1dGhvcml6ZWRfbmV0d29ya3NfY29uZmlnGAQgASgLMjMuZ29vZ2xl", - "LmNvbnRhaW5lci52MS5NYXN0ZXJBdXRob3JpemVkTmV0d29ya3NDb25maWcS", - "HAoPcHVibGljX2VuZHBvaW50GAUgASgJQgPgQQMSHQoQcHJpdmF0ZV9lbmRw", - "b2ludBgGIAEoCUID4EEDEiMKG3ByaXZhdGVfZW5kcG9pbnRfc3VibmV0d29y", - "axgHIAEoCUIKCghfZW5hYmxlZEIZChdfZW5hYmxlX3B1YmxpY19lbmRwb2lu", - "dEIQCg5fZ2xvYmFsX2FjY2VzcyIyChdMb2NhbE52bWVTc2RCbG9ja0NvbmZp", - "ZxIXCg9sb2NhbF9zc2RfY291bnQYASABKAUiUwoeRXBoZW1lcmFsU3RvcmFn", - "ZUxvY2FsU3NkQ29uZmlnEhcKD2xvY2FsX3NzZF9jb3VudBgBIAEoBRIYChBk", - "YXRhX2NhY2hlX2NvdW50GAIgASgFIoQBChNSZXNvdXJjZU1hbmFnZXJUYWdz", - "EkAKBHRhZ3MYASADKAsyMi5nb29nbGUuY29udGFpbmVyLnYxLlJlc291cmNl", - "TWFuYWdlclRhZ3MuVGFnc0VudHJ5GisKCVRhZ3NFbnRyeRILCgNrZXkYASAB", - "KAkSDQoFdmFsdWUYAiABKAk6AjgBIvwBChBFbnRlcnByaXNlQ29uZmlnEkwK", - "DGNsdXN0ZXJfdGllchgBIAEoDjIxLmdvb2dsZS5jb250YWluZXIudjEuRW50", - "ZXJwcmlzZUNvbmZpZy5DbHVzdGVyVGllckID4EEDEkcKDGRlc2lyZWRfdGll", - "chgCIAEoDjIxLmdvb2dsZS5jb250YWluZXIudjEuRW50ZXJwcmlzZUNvbmZp", - "Zy5DbHVzdGVyVGllciJNCgtDbHVzdGVyVGllchIcChhDTFVTVEVSX1RJRVJf", - "VU5TUEVDSUZJRUQQABIMCghTVEFOREFSRBABEg4KCkVOVEVSUFJJU0UQAhoC", - "GAE6AhgBIqgCChNTZWNyZXRNYW5hZ2VyQ29uZmlnEhQKB2VuYWJsZWQYASAB", - "KAhIAIgBARJVCg9yb3RhdGlvbl9jb25maWcYAiABKAsyNy5nb29nbGUuY29u", - "dGFpbmVyLnYxLlNlY3JldE1hbmFnZXJDb25maWcuUm90YXRpb25Db25maWdI", - "AYgBARqDAQoOUm90YXRpb25Db25maWcSFAoHZW5hYmxlZBgBIAEoCEgAiAEB", - "EjkKEXJvdGF0aW9uX2ludGVydmFsGAIgASgLMhkuZ29vZ2xlLnByb3RvYnVm", - "LkR1cmF0aW9uSAGIAQFCCgoIX2VuYWJsZWRCFAoSX3JvdGF0aW9uX2ludGVy", - "dmFsQgoKCF9lbmFibGVkQhIKEF9yb3RhdGlvbl9jb25maWciaAoIQm9vdERp", - "c2sSEQoJZGlza190eXBlGAEgASgJEg8KB3NpemVfZ2IYAiABKAMSGAoQcHJv", - "dmlzaW9uZWRfaW9wcxgDIAEoAxIeChZwcm92aXNpb25lZF90aHJvdWdocHV0", - "GAQgASgDIpsBChFTZWNvbmRhcnlCb290RGlzaxI5CgRtb2RlGAEgASgOMisu", - "Z29vZ2xlLmNvbnRhaW5lci52MS5TZWNvbmRhcnlCb290RGlzay5Nb2RlEhIK", - "CmRpc2tfaW1hZ2UYAiABKAkiNwoETW9kZRIUChBNT0RFX1VOU1BFQ0lGSUVE", - "EAASGQoVQ09OVEFJTkVSX0lNQUdFX0NBQ0hFEAEiIQofU2Vjb25kYXJ5Qm9v", - "dERpc2tVcGRhdGVTdHJhdGVneSJECh5GZXRjaENsdXN0ZXJVcGdyYWRlSW5m", - "b1JlcXVlc3QSEQoEbmFtZRgBIAEoCUID4EECEg8KB3ZlcnNpb24YZCABKAki", - "lQcKEkNsdXN0ZXJVcGdyYWRlSW5mbxIhChRtaW5vcl90YXJnZXRfdmVyc2lv", - "bhgHIAEoCUgAiAEBEiEKFHBhdGNoX3RhcmdldF92ZXJzaW9uGAggASgJSAGI", - "AQESVgoTYXV0b191cGdyYWRlX3N0YXR1cxgCIAMoDjI5Lmdvb2dsZS5jb250", - "YWluZXIudjEuQ2x1c3RlclVwZ3JhZGVJbmZvLkF1dG9VcGdyYWRlU3RhdHVz", - "ElYKDXBhdXNlZF9yZWFzb24YAyADKA4yPy5nb29nbGUuY29udGFpbmVyLnYx", - "LkNsdXN0ZXJVcGdyYWRlSW5mby5BdXRvVXBncmFkZVBhdXNlZFJlYXNvbhI8", - "Cg91cGdyYWRlX2RldGFpbHMYBCADKAsyIy5nb29nbGUuY29udGFpbmVyLnYx", - "LlVwZ3JhZGVEZXRhaWxzEi4KIWVuZF9vZl9zdGFuZGFyZF9zdXBwb3J0X3Rp", - "bWVzdGFtcBgFIAEoCUgCiAEBEi4KIWVuZF9vZl9leHRlbmRlZF9zdXBwb3J0", - "X3RpbWVzdGFtcBgGIAEoCUgDiAEBIloKEUF1dG9VcGdyYWRlU3RhdHVzEgsK", - "B1VOS05PV04QABIKCgZBQ1RJVkUQARIYChRNSU5PUl9VUEdSQURFX1BBVVNF", - "RBAEEhIKDlVQR1JBREVfUEFVU0VEEAUikAIKF0F1dG9VcGdyYWRlUGF1c2Vk", - "UmVhc29uEioKJkFVVE9fVVBHUkFERV9QQVVTRURfUkVBU09OX1VOU1BFQ0lG", - "SUVEEAASFgoSTUFJTlRFTkFOQ0VfV0lORE9XEAESJQohTUFJTlRFTkFOQ0Vf", - "RVhDTFVTSU9OX05PX1VQR1JBREVTEAUSKwonTUFJTlRFTkFOQ0VfRVhDTFVT", - "SU9OX05PX01JTk9SX1VQR1JBREVTEAYSHQoZQ0xVU1RFUl9ESVNSVVBUSU9O", - "X0JVREdFVBAEEisKJ0NMVVNURVJfRElTUlVQVElPTl9CVURHRVRfTUlOT1Jf", - "VVBHUkFERRAHEhEKDVNZU1RFTV9DT05GSUcQCEIXChVfbWlub3JfdGFyZ2V0", + "ZBgDIAEoCUICGAESGAoMbm9kZV9wb29sX2lkGAQgASgJQgIYARI8CgptYW5h", + "Z2VtZW50GAUgASgLMiMuZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlTWFuYWdl", + "bWVudEID4EECEgwKBG5hbWUYByABKAkimwEKFlNldE5vZGVQb29sU2l6ZVJl", + "cXVlc3QSFgoKcHJvamVjdF9pZBgBIAEoCUICGAESEAoEem9uZRgCIAEoCUIC", + "GAESFgoKY2x1c3Rlcl9pZBgDIAEoCUICGAESGAoMbm9kZV9wb29sX2lkGAQg", + "ASgJQgIYARIXCgpub2RlX2NvdW50GAUgASgFQgPgQQISDAoEbmFtZRgHIAEo", + "CSIuCh5Db21wbGV0ZU5vZGVQb29sVXBncmFkZVJlcXVlc3QSDAoEbmFtZRgB", + "IAEoCSKfAQoeUm9sbGJhY2tOb2RlUG9vbFVwZ3JhZGVSZXF1ZXN0EhYKCnBy", + "b2plY3RfaWQYASABKAlCAhgBEhAKBHpvbmUYAiABKAlCAhgBEhYKCmNsdXN0", + "ZXJfaWQYAyABKAlCAhgBEhgKDG5vZGVfcG9vbF9pZBgEIAEoCUICGAESDAoE", + "bmFtZRgGIAEoCRITCgtyZXNwZWN0X3BkYhgHIAEoCCJKChVMaXN0Tm9kZVBv", + "b2xzUmVzcG9uc2USMQoKbm9kZV9wb29scxgBIAMoCzIdLmdvb2dsZS5jb250", + "YWluZXIudjEuTm9kZVBvb2wiwwUKEkNsdXN0ZXJBdXRvc2NhbGluZxIkChxl", + "bmFibGVfbm9kZV9hdXRvcHJvdmlzaW9uaW5nGAEgASgIEjsKD3Jlc291cmNl", + "X2xpbWl0cxgCIAMoCzIiLmdvb2dsZS5jb250YWluZXIudjEuUmVzb3VyY2VM", + "aW1pdBJXChNhdXRvc2NhbGluZ19wcm9maWxlGAMgASgOMjouZ29vZ2xlLmNv", + "bnRhaW5lci52MS5DbHVzdGVyQXV0b3NjYWxpbmcuQXV0b3NjYWxpbmdQcm9m", + "aWxlEmIKI2F1dG9wcm92aXNpb25pbmdfbm9kZV9wb29sX2RlZmF1bHRzGAQg", + "ASgLMjUuZ29vZ2xlLmNvbnRhaW5lci52MS5BdXRvcHJvdmlzaW9uaW5nTm9k", + "ZVBvb2xEZWZhdWx0cxIiChphdXRvcHJvdmlzaW9uaW5nX2xvY2F0aW9ucxgF", + "IAMoCRJUChxkZWZhdWx0X2NvbXB1dGVfY2xhc3NfY29uZmlnGAkgASgLMi4u", + "Z29vZ2xlLmNvbnRhaW5lci52MS5EZWZhdWx0Q29tcHV0ZUNsYXNzQ29uZmln", + "EmIKGWF1dG9waWxvdF9nZW5lcmFsX3Byb2ZpbGUYDiABKA4yPy5nb29nbGUu", + "Y29udGFpbmVyLnYxLkNsdXN0ZXJBdXRvc2NhbGluZy5BdXRvcGlsb3RHZW5l", + "cmFsUHJvZmlsZSJVChJBdXRvc2NhbGluZ1Byb2ZpbGUSFwoTUFJPRklMRV9V", + "TlNQRUNJRklFRBAAEhgKFE9QVElNSVpFX1VUSUxJWkFUSU9OEAESDAoIQkFM", + "QU5DRUQQAiJYChdBdXRvcGlsb3RHZW5lcmFsUHJvZmlsZRIpCiVBVVRPUElM", + "T1RfR0VORVJBTF9QUk9GSUxFX1VOU1BFQ0lGSUVEEAASEgoOTk9fUEVSRk9S", + "TUFOQ0UQASL4AwogQXV0b3Byb3Zpc2lvbmluZ05vZGVQb29sRGVmYXVsdHMS", + "FAoMb2F1dGhfc2NvcGVzGAEgAygJEhcKD3NlcnZpY2VfYWNjb3VudBgCIAEo", + "CRJHChB1cGdyYWRlX3NldHRpbmdzGAMgASgLMi0uZ29vZ2xlLmNvbnRhaW5l", + "ci52MS5Ob2RlUG9vbC5VcGdyYWRlU2V0dGluZ3MSNwoKbWFuYWdlbWVudBgE", + "IAEoCzIjLmdvb2dsZS5jb250YWluZXIudjEuTm9kZU1hbmFnZW1lbnQSHAoQ", + "bWluX2NwdV9wbGF0Zm9ybRgFIAEoCUICGAESFAoMZGlza19zaXplX2diGAYg", + "ASgFEhEKCWRpc2tfdHlwZRgHIAEoCRJNChhzaGllbGRlZF9pbnN0YW5jZV9j", + "b25maWcYCCABKAsyKy5nb29nbGUuY29udGFpbmVyLnYxLlNoaWVsZGVkSW5z", + "dGFuY2VDb25maWcSGQoRYm9vdF9kaXNrX2ttc19rZXkYCSABKAkSEgoKaW1h", + "Z2VfdHlwZRgKIAEoCRIzCiZpbnNlY3VyZV9rdWJlbGV0X3JlYWRvbmx5X3Bv", + "cnRfZW5hYmxlZBgNIAEoCEgAiAEBQikKJ19pbnNlY3VyZV9rdWJlbGV0X3Jl", + "YWRvbmx5X3BvcnRfZW5hYmxlZCJICg1SZXNvdXJjZUxpbWl0EhUKDXJlc291", + "cmNlX3R5cGUYASABKAkSDwoHbWluaW11bRgCIAEoAxIPCgdtYXhpbXVtGAMg", + "ASgDIiwKGURlZmF1bHRDb21wdXRlQ2xhc3NDb25maWcSDwoHZW5hYmxlZBgB", + "IAEoCCLHAgoTTm9kZVBvb2xBdXRvc2NhbGluZxIPCgdlbmFibGVkGAEgASgI", + "EhYKDm1pbl9ub2RlX2NvdW50GAIgASgFEhYKDm1heF9ub2RlX2NvdW50GAMg", + "ASgFEhcKD2F1dG9wcm92aXNpb25lZBgEIAEoCBJQCg9sb2NhdGlvbl9wb2xp", + "Y3kYBSABKA4yNy5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVQb29sQXV0b3Nj", + "YWxpbmcuTG9jYXRpb25Qb2xpY3kSHAoUdG90YWxfbWluX25vZGVfY291bnQY", + "BiABKAUSHAoUdG90YWxfbWF4X25vZGVfY291bnQYByABKAUiSAoOTG9jYXRp", + "b25Qb2xpY3kSHwobTE9DQVRJT05fUE9MSUNZX1VOU1BFQ0lGSUVEEAASDAoI", + "QkFMQU5DRUQQARIHCgNBTlkQAiKSAgoQU2V0TGFiZWxzUmVxdWVzdBIWCgpw", + "cm9qZWN0X2lkGAEgASgJQgIYARIQCgR6b25lGAIgASgJQgIYARIWCgpjbHVz", + "dGVyX2lkGAMgASgJQgIYARJXCg9yZXNvdXJjZV9sYWJlbHMYBCADKAsyOS5n", + "b29nbGUuY29udGFpbmVyLnYxLlNldExhYmVsc1JlcXVlc3QuUmVzb3VyY2VM", + "YWJlbHNFbnRyeUID4EECEh4KEWxhYmVsX2ZpbmdlcnByaW50GAUgASgJQgPg", + "QQISDAoEbmFtZRgHIAEoCRo1ChNSZXNvdXJjZUxhYmVsc0VudHJ5EgsKA2tl", + "eRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEifAoUU2V0TGVnYWN5QWJhY1Jl", + "cXVlc3QSFgoKcHJvamVjdF9pZBgBIAEoCUICGAESEAoEem9uZRgCIAEoCUIC", + "GAESFgoKY2x1c3Rlcl9pZBgDIAEoCUICGAESFAoHZW5hYmxlZBgEIAEoCEID", + "4EECEgwKBG5hbWUYBiABKAkihAEKFlN0YXJ0SVBSb3RhdGlvblJlcXVlc3QS", + "FgoKcHJvamVjdF9pZBgBIAEoCUICGAESEAoEem9uZRgCIAEoCUICGAESFgoK", + "Y2x1c3Rlcl9pZBgDIAEoCUICGAESDAoEbmFtZRgGIAEoCRIaChJyb3RhdGVf", + "Y3JlZGVudGlhbHMYByABKAgiawoZQ29tcGxldGVJUFJvdGF0aW9uUmVxdWVz", + "dBIWCgpwcm9qZWN0X2lkGAEgASgJQgIYARIQCgR6b25lGAIgASgJQgIYARIW", + "CgpjbHVzdGVyX2lkGAMgASgJQgIYARIMCgRuYW1lGAcgASgJIsUCChFBY2Nl", + "bGVyYXRvckNvbmZpZxIZChFhY2NlbGVyYXRvcl9jb3VudBgBIAEoAxIYChBh", + "Y2NlbGVyYXRvcl90eXBlGAIgASgJEhoKEmdwdV9wYXJ0aXRpb25fc2l6ZRgD", + "IAEoCRJGChJncHVfc2hhcmluZ19jb25maWcYBSABKAsyJS5nb29nbGUuY29u", + "dGFpbmVyLnYxLkdQVVNoYXJpbmdDb25maWdIAIgBARJdCh5ncHVfZHJpdmVy", + "X2luc3RhbGxhdGlvbl9jb25maWcYBiABKAsyMC5nb29nbGUuY29udGFpbmVy", + "LnYxLkdQVURyaXZlckluc3RhbGxhdGlvbkNvbmZpZ0gBiAEBQhUKE19ncHVf", + "c2hhcmluZ19jb25maWdCIQofX2dwdV9kcml2ZXJfaW5zdGFsbGF0aW9uX2Nv", + "bmZpZyKDAgoQR1BVU2hhcmluZ0NvbmZpZxIiChptYXhfc2hhcmVkX2NsaWVu", + "dHNfcGVyX2dwdRgBIAEoAxJbChRncHVfc2hhcmluZ19zdHJhdGVneRgCIAEo", + "DjI4Lmdvb2dsZS5jb250YWluZXIudjEuR1BVU2hhcmluZ0NvbmZpZy5HUFVT", + "aGFyaW5nU3RyYXRlZ3lIAIgBASJVChJHUFVTaGFyaW5nU3RyYXRlZ3kSJAog", + "R1BVX1NIQVJJTkdfU1RSQVRFR1lfVU5TUEVDSUZJRUQQABIQCgxUSU1FX1NI", + "QVJJTkcQARIHCgNNUFMQAkIXChVfZ3B1X3NoYXJpbmdfc3RyYXRlZ3kihAIK", + "G0dQVURyaXZlckluc3RhbGxhdGlvbkNvbmZpZxJiChJncHVfZHJpdmVyX3Zl", + "cnNpb24YASABKA4yQS5nb29nbGUuY29udGFpbmVyLnYxLkdQVURyaXZlcklu", + "c3RhbGxhdGlvbkNvbmZpZy5HUFVEcml2ZXJWZXJzaW9uSACIAQEiagoQR1BV", + "RHJpdmVyVmVyc2lvbhIiCh5HUFVfRFJJVkVSX1ZFUlNJT05fVU5TUEVDSUZJ", + "RUQQABIZChVJTlNUQUxMQVRJT05fRElTQUJMRUQQARILCgdERUZBVUxUEAIS", + "CgoGTEFURVNUEANCFQoTX2dwdV9kcml2ZXJfdmVyc2lvbiKaAQoWV29ya2xv", + "YWRNZXRhZGF0YUNvbmZpZxI+CgRtb2RlGAIgASgOMjAuZ29vZ2xlLmNvbnRh", + "aW5lci52MS5Xb3JrbG9hZE1ldGFkYXRhQ29uZmlnLk1vZGUiQAoETW9kZRIU", + "ChBNT0RFX1VOU1BFQ0lGSUVEEAASEAoMR0NFX01FVEFEQVRBEAESEAoMR0tF", + "X01FVEFEQVRBEAIiqgEKF1NldE5ldHdvcmtQb2xpY3lSZXF1ZXN0EhYKCnBy", + "b2plY3RfaWQYASABKAlCAhgBEhAKBHpvbmUYAiABKAlCAhgBEhYKCmNsdXN0", + "ZXJfaWQYAyABKAlCAhgBEj8KDm5ldHdvcmtfcG9saWN5GAQgASgLMiIuZ29v", + "Z2xlLmNvbnRhaW5lci52MS5OZXR3b3JrUG9saWN5QgPgQQISDAoEbmFtZRgG", + "IAEoCSK5AQobU2V0TWFpbnRlbmFuY2VQb2xpY3lSZXF1ZXN0EhcKCnByb2pl", + "Y3RfaWQYASABKAlCA+BBAhIRCgR6b25lGAIgASgJQgPgQQISFwoKY2x1c3Rl", + "cl9pZBgDIAEoCUID4EECEkcKEm1haW50ZW5hbmNlX3BvbGljeRgEIAEoCzIm", + "Lmdvb2dsZS5jb250YWluZXIudjEuTWFpbnRlbmFuY2VQb2xpY3lCA+BBAhIM", + "CgRuYW1lGAUgASgJIvQCCg9TdGF0dXNDb25kaXRpb24SOwoEY29kZRgBIAEo", + "DjIpLmdvb2dsZS5jb250YWluZXIudjEuU3RhdHVzQ29uZGl0aW9uLkNvZGVC", + "AhgBEg8KB21lc3NhZ2UYAiABKAkSKAoOY2Fub25pY2FsX2NvZGUYAyABKA4y", + "EC5nb29nbGUucnBjLkNvZGUi6AEKBENvZGUSCwoHVU5LTk9XThAAEhAKDEdD", + "RV9TVE9DS09VVBABEh8KG0dLRV9TRVJWSUNFX0FDQ09VTlRfREVMRVRFRBAC", + "EhYKEkdDRV9RVU9UQV9FWENFRURFRBADEhMKD1NFVF9CWV9PUEVSQVRPUhAE", + "EhcKE0NMT1VEX0tNU19LRVlfRVJST1IQBxIPCgtDQV9FWFBJUklORxAJEiwK", + "KE5PREVfU0VSVklDRV9BQ0NPVU5UX01JU1NJTkdfUEVSTUlTU0lPTlMQChIb", + "ChdDTE9VRF9LTVNfS0VZX0RFU1RST1lFRBALIuUKCg1OZXR3b3JrQ29uZmln", + "EhQKB25ldHdvcmsYASABKAlCA+BBAxIXCgpzdWJuZXR3b3JrGAIgASgJQgPg", + "QQMSJAocZW5hYmxlX2ludHJhX25vZGVfdmlzaWJpbGl0eRgFIAEoCBJDChNk", + "ZWZhdWx0X3NuYXRfc3RhdHVzGAcgASgLMiYuZ29vZ2xlLmNvbnRhaW5lci52", + "MS5EZWZhdWx0U25hdFN0YXR1cxIfChdlbmFibGVfbDRpbGJfc3Vic2V0dGlu", + "ZxgKIAEoCBJAChFkYXRhcGF0aF9wcm92aWRlchgLIAEoDjIlLmdvb2dsZS5j", + "b250YWluZXIudjEuRGF0YXBhdGhQcm92aWRlchJQChpwcml2YXRlX2lwdjZf", + "Z29vZ2xlX2FjY2VzcxgMIAEoDjIsLmdvb2dsZS5jb250YWluZXIudjEuUHJp", + "dmF0ZUlQdjZHb29nbGVBY2Nlc3MSMgoKZG5zX2NvbmZpZxgNIAEoCzIeLmdv", + "b2dsZS5jb250YWluZXIudjEuRE5TQ29uZmlnElIKG3NlcnZpY2VfZXh0ZXJu", + "YWxfaXBzX2NvbmZpZxgPIAEoCzItLmdvb2dsZS5jb250YWluZXIudjEuU2Vy", + "dmljZUV4dGVybmFsSVBzQ29uZmlnEkEKEmdhdGV3YXlfYXBpX2NvbmZpZxgQ", + "IAEoCzIlLmdvb2dsZS5jb250YWluZXIudjEuR2F0ZXdheUFQSUNvbmZpZxIf", + "ChdlbmFibGVfbXVsdGlfbmV0d29ya2luZxgRIAEoCBJmChpuZXR3b3JrX3Bl", + "cmZvcm1hbmNlX2NvbmZpZxgSIAEoCzJCLmdvb2dsZS5jb250YWluZXIudjEu", + "TmV0d29ya0NvbmZpZy5DbHVzdGVyTmV0d29ya1BlcmZvcm1hbmNlQ29uZmln", + "EicKGmVuYWJsZV9mcWRuX25ldHdvcmtfcG9saWN5GBMgASgISACIAQESWQoc", + "aW5fdHJhbnNpdF9lbmNyeXB0aW9uX2NvbmZpZxgUIAEoDjIuLmdvb2dsZS5j", + "b250YWluZXIudjEuSW5UcmFuc2l0RW5jcnlwdGlvbkNvbmZpZ0gBiAEBEjUK", + "KGVuYWJsZV9jaWxpdW1fY2x1c3RlcndpZGVfbmV0d29ya19wb2xpY3kYFSAB", + "KAhIAogBARIpChxkZWZhdWx0X2VuYWJsZV9wcml2YXRlX25vZGVzGBYgASgI", + "SAOIAQESMgolZGlzYWJsZV9sNF9sYl9maXJld2FsbF9yZWNvbmNpbGlhdGlv", + "bhgYIAEoCEgEiAEBGt4BCh9DbHVzdGVyTmV0d29ya1BlcmZvcm1hbmNlQ29u", + "ZmlnEnEKG3RvdGFsX2VncmVzc19iYW5kd2lkdGhfdGllchgBIAEoDjJHLmdv", + "b2dsZS5jb250YWluZXIudjEuTmV0d29ya0NvbmZpZy5DbHVzdGVyTmV0d29y", + "a1BlcmZvcm1hbmNlQ29uZmlnLlRpZXJIAIgBASIoCgRUaWVyEhQKEFRJRVJf", + "VU5TUEVDSUZJRUQQABIKCgZUSUVSXzEQAUIeChxfdG90YWxfZWdyZXNzX2Jh", + "bmR3aWR0aF90aWVyQh0KG19lbmFibGVfZnFkbl9uZXR3b3JrX3BvbGljeUIf", + "Ch1faW5fdHJhbnNpdF9lbmNyeXB0aW9uX2NvbmZpZ0IrCilfZW5hYmxlX2Np", + "bGl1bV9jbHVzdGVyd2lkZV9uZXR3b3JrX3BvbGljeUIfCh1fZGVmYXVsdF9l", + "bmFibGVfcHJpdmF0ZV9ub2Rlc0IoCiZfZGlzYWJsZV9sNF9sYl9maXJld2Fs", + "bF9yZWNvbmNpbGlhdGlvbiLAAQoQR2F0ZXdheUFQSUNvbmZpZxI+CgdjaGFu", + "bmVsGAEgASgOMi0uZ29vZ2xlLmNvbnRhaW5lci52MS5HYXRld2F5QVBJQ29u", + "ZmlnLkNoYW5uZWwibAoHQ2hhbm5lbBIXChNDSEFOTkVMX1VOU1BFQ0lGSUVE", + "EAASFAoQQ0hBTk5FTF9ESVNBQkxFRBABEhwKFENIQU5ORUxfRVhQRVJJTUVO", + "VEFMEAMaAggBEhQKEENIQU5ORUxfU1RBTkRBUkQQBCIrChhTZXJ2aWNlRXh0", + "ZXJuYWxJUHNDb25maWcSDwoHZW5hYmxlZBgBIAEoCCIoChZHZXRPcGVuSURD", + "b25maWdSZXF1ZXN0Eg4KBnBhcmVudBgBIAEoCSLfAgoXR2V0T3BlbklEQ29u", + "ZmlnUmVzcG9uc2USDgoGaXNzdWVyGAEgASgJEhoKCGp3a3NfdXJpGAIgASgJ", + "Ughqd2tzX3VyaRI6ChhyZXNwb25zZV90eXBlc19zdXBwb3J0ZWQYAyADKAlS", + "GHJlc3BvbnNlX3R5cGVzX3N1cHBvcnRlZBI4ChdzdWJqZWN0X3R5cGVzX3N1", + "cHBvcnRlZBgEIAMoCVIXc3ViamVjdF90eXBlc19zdXBwb3J0ZWQSVAolaWRf", + "dG9rZW5fc2lnbmluZ19hbGdfdmFsdWVzX3N1cHBvcnRlZBgFIAMoCVIlaWRf", + "dG9rZW5fc2lnbmluZ19hbGdfdmFsdWVzX3N1cHBvcnRlZBIqChBjbGFpbXNf", + "c3VwcG9ydGVkGAYgAygJUhBjbGFpbXNfc3VwcG9ydGVkEiAKC2dyYW50X3R5", + "cGVzGAcgAygJUgtncmFudF90eXBlcyInChVHZXRKU09OV2ViS2V5c1JlcXVl", + "c3QSDgoGcGFyZW50GAEgASgJInIKA0p3axILCgNrdHkYASABKAkSCwoDYWxn", + "GAIgASgJEgsKA3VzZRgDIAEoCRILCgNraWQYBCABKAkSCQoBbhgFIAEoCRIJ", + "CgFlGAYgASgJEgkKAXgYByABKAkSCQoBeRgIIAEoCRILCgNjcnYYCSABKAki", + "QAoWR2V0SlNPTldlYktleXNSZXNwb25zZRImCgRrZXlzGAEgAygLMhguZ29v", + "Z2xlLmNvbnRhaW5lci52MS5Kd2siMgoiQ2hlY2tBdXRvcGlsb3RDb21wYXRp", + "YmlsaXR5UmVxdWVzdBIMCgRuYW1lGAEgASgJIvwCChtBdXRvcGlsb3RDb21w", + "YXRpYmlsaXR5SXNzdWUSNAoQbGFzdF9vYnNlcnZhdGlvbhgBIAEoCzIaLmdv", + "b2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASFwoPY29uc3RyYWludF90eXBlGAIg", + "ASgJElgKFGluY29tcGF0aWJpbGl0eV90eXBlGAMgASgOMjouZ29vZ2xlLmNv", + "bnRhaW5lci52MS5BdXRvcGlsb3RDb21wYXRpYmlsaXR5SXNzdWUuSXNzdWVU", + "eXBlEhAKCHN1YmplY3RzGAQgAygJEhkKEWRvY3VtZW50YXRpb25fdXJsGAUg", + "ASgJEhMKC2Rlc2NyaXB0aW9uGAYgASgJInIKCUlzc3VlVHlwZRIPCgtVTlNQ", + "RUNJRklFRBAAEhMKD0lOQ09NUEFUSUJJTElUWRABEh4KGkFERElUSU9OQUxf", + "Q09ORklHX1JFUVVJUkVEEAISHwobUEFTU0VEX1dJVEhfT1BUSU9OQUxfQ09O", + "RklHEAMieAojQ2hlY2tBdXRvcGlsb3RDb21wYXRpYmlsaXR5UmVzcG9uc2US", + "QAoGaXNzdWVzGAEgAygLMjAuZ29vZ2xlLmNvbnRhaW5lci52MS5BdXRvcGls", + "b3RDb21wYXRpYmlsaXR5SXNzdWUSDwoHc3VtbWFyeRgCIAEoCSKcAQoOUmVs", + "ZWFzZUNoYW5uZWwSPAoHY2hhbm5lbBgBIAEoDjIrLmdvb2dsZS5jb250YWlu", + "ZXIudjEuUmVsZWFzZUNoYW5uZWwuQ2hhbm5lbCJMCgdDaGFubmVsEg8KC1VO", + "U1BFQ0lGSUVEEAASCQoFUkFQSUQQARILCgdSRUdVTEFSEAISCgoGU1RBQkxF", + "EAMSDAoIRVhURU5ERUQQBCInChRDb3N0TWFuYWdlbWVudENvbmZpZxIPCgdl", + "bmFibGVkGAEgASgIIiwKGUludHJhTm9kZVZpc2liaWxpdHlDb25maWcSDwoH", + "ZW5hYmxlZBgBIAEoCCImChNJTEJTdWJzZXR0aW5nQ29uZmlnEg8KB2VuYWJs", + "ZWQYASABKAgi9wIKCUROU0NvbmZpZxI8CgtjbHVzdGVyX2RucxgBIAEoDjIn", + "Lmdvb2dsZS5jb250YWluZXIudjEuRE5TQ29uZmlnLlByb3ZpZGVyEkIKEWNs", + "dXN0ZXJfZG5zX3Njb3BlGAIgASgOMicuZ29vZ2xlLmNvbnRhaW5lci52MS5E", + "TlNDb25maWcuRE5TU2NvcGUSGgoSY2x1c3Rlcl9kbnNfZG9tYWluGAMgASgJ", + "EioKHWFkZGl0aXZlX3ZwY19zY29wZV9kbnNfZG9tYWluGAUgASgJQgPgQQEi", + "VwoIUHJvdmlkZXISGAoUUFJPVklERVJfVU5TUEVDSUZJRUQQABIUChBQTEFU", + "Rk9STV9ERUZBVUxUEAESDQoJQ0xPVURfRE5TEAISDAoIS1VCRV9ETlMQAyJH", + "CghETlNTY29wZRIZChVETlNfU0NPUEVfVU5TUEVDSUZJRUQQABIRCg1DTFVT", + "VEVSX1NDT1BFEAESDQoJVlBDX1NDT1BFEAIiLgoRTWF4UG9kc0NvbnN0cmFp", + "bnQSGQoRbWF4X3BvZHNfcGVyX25vZGUYASABKAMiLwoWV29ya2xvYWRJZGVu", + "dGl0eUNvbmZpZxIVCg13b3JrbG9hZF9wb29sGAIgASgJIigKFUlkZW50aXR5", + "U2VydmljZUNvbmZpZxIPCgdlbmFibGVkGAEgASgIIksKEE1lc2hDZXJ0aWZp", + "Y2F0ZXMSNwoTZW5hYmxlX2NlcnRpZmljYXRlcxgBIAEoCzIaLmdvb2dsZS5w", + "cm90b2J1Zi5Cb29sVmFsdWUi4wUKEkRhdGFiYXNlRW5jcnlwdGlvbhIQCghr", + "ZXlfbmFtZRgBIAEoCRI8CgVzdGF0ZRgCIAEoDjItLmdvb2dsZS5jb250YWlu", + "ZXIudjEuRGF0YWJhc2VFbmNyeXB0aW9uLlN0YXRlElUKDWN1cnJlbnRfc3Rh", + "dGUYAyABKA4yNC5nb29nbGUuY29udGFpbmVyLnYxLkRhdGFiYXNlRW5jcnlw", + "dGlvbi5DdXJyZW50U3RhdGVCA+BBA0gAiAEBEhwKD2RlY3J5cHRpb25fa2V5", + "cxgEIAMoCUID4EEDEloKFWxhc3Rfb3BlcmF0aW9uX2Vycm9ycxgFIAMoCzI2", + "Lmdvb2dsZS5jb250YWluZXIudjEuRGF0YWJhc2VFbmNyeXB0aW9uLk9wZXJh", + "dGlvbkVycm9yQgPgQQMaaAoOT3BlcmF0aW9uRXJyb3ISEAoIa2V5X25hbWUY", + "ASABKAkSFQoNZXJyb3JfbWVzc2FnZRgCIAEoCRItCgl0aW1lc3RhbXAYAyAB", + "KAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIjIKBVN0YXRlEgsKB1VO", + "S05PV04QABINCglFTkNSWVBURUQQARINCglERUNSWVBURUQQAiL7AQoMQ3Vy", + "cmVudFN0YXRlEh0KGUNVUlJFTlRfU1RBVEVfVU5TUEVDSUZJRUQQABIbChdD", + "VVJSRU5UX1NUQVRFX0VOQ1JZUFRFRBAHEhsKF0NVUlJFTlRfU1RBVEVfREVD", + "UllQVEVEEAISJAogQ1VSUkVOVF9TVEFURV9FTkNSWVBUSU9OX1BFTkRJTkcQ", + "AxIiCh5DVVJSRU5UX1NUQVRFX0VOQ1JZUFRJT05fRVJST1IQBBIkCiBDVVJS", + "RU5UX1NUQVRFX0RFQ1JZUFRJT05fUEVORElORxAFEiIKHkNVUlJFTlRfU1RB", + "VEVfREVDUllQVElPTl9FUlJPUhAGQhAKDl9jdXJyZW50X3N0YXRlImUKHExp", + "c3RVc2FibGVTdWJuZXR3b3Jrc1JlcXVlc3QSDgoGcGFyZW50GAEgASgJEg4K", + "BmZpbHRlchgCIAEoCRIRCglwYWdlX3NpemUYAyABKAUSEgoKcGFnZV90b2tl", + "bhgEIAEoCSJ0Ch1MaXN0VXNhYmxlU3VibmV0d29ya3NSZXNwb25zZRI6Cgtz", + "dWJuZXR3b3JrcxgBIAMoCzIlLmdvb2dsZS5jb250YWluZXIudjEuVXNhYmxl", + "U3VibmV0d29yaxIXCg9uZXh0X3BhZ2VfdG9rZW4YAiABKAkigAIKHlVzYWJs", + "ZVN1Ym5ldHdvcmtTZWNvbmRhcnlSYW5nZRISCgpyYW5nZV9uYW1lGAEgASgJ", + "EhUKDWlwX2NpZHJfcmFuZ2UYAiABKAkSSgoGc3RhdHVzGAMgASgOMjouZ29v", + "Z2xlLmNvbnRhaW5lci52MS5Vc2FibGVTdWJuZXR3b3JrU2Vjb25kYXJ5UmFu", + "Z2UuU3RhdHVzImcKBlN0YXR1cxILCgdVTktOT1dOEAASCgoGVU5VU0VEEAES", + "EgoOSU5fVVNFX1NFUlZJQ0UQAhIYChRJTl9VU0VfU0hBUkVBQkxFX1BPRBAD", + "EhYKEklOX1VTRV9NQU5BR0VEX1BPRBAEIrgBChBVc2FibGVTdWJuZXR3b3Jr", + "EhIKCnN1Ym5ldHdvcmsYASABKAkSDwoHbmV0d29yaxgCIAEoCRIVCg1pcF9j", + "aWRyX3JhbmdlGAMgASgJElAKE3NlY29uZGFyeV9pcF9yYW5nZXMYBCADKAsy", + "My5nb29nbGUuY29udGFpbmVyLnYxLlVzYWJsZVN1Ym5ldHdvcmtTZWNvbmRh", + "cnlSYW5nZRIWCg5zdGF0dXNfbWVzc2FnZRgFIAEoCSLtAgoZUmVzb3VyY2VV", + "c2FnZUV4cG9ydENvbmZpZxJgChRiaWdxdWVyeV9kZXN0aW5hdGlvbhgBIAEo", + "CzJCLmdvb2dsZS5jb250YWluZXIudjEuUmVzb3VyY2VVc2FnZUV4cG9ydENv", + "bmZpZy5CaWdRdWVyeURlc3RpbmF0aW9uEiYKHmVuYWJsZV9uZXR3b3JrX2Vn", + "cmVzc19tZXRlcmluZxgCIAEoCBJtChtjb25zdW1wdGlvbl9tZXRlcmluZ19j", + "b25maWcYAyABKAsySC5nb29nbGUuY29udGFpbmVyLnYxLlJlc291cmNlVXNh", + "Z2VFeHBvcnRDb25maWcuQ29uc3VtcHRpb25NZXRlcmluZ0NvbmZpZxopChNC", + "aWdRdWVyeURlc3RpbmF0aW9uEhIKCmRhdGFzZXRfaWQYASABKAkaLAoZQ29u", + "c3VtcHRpb25NZXRlcmluZ0NvbmZpZxIPCgdlbmFibGVkGAEgASgIIikKFlZl", + "cnRpY2FsUG9kQXV0b3NjYWxpbmcSDwoHZW5hYmxlZBgBIAEoCCIlChFEZWZh", + "dWx0U25hdFN0YXR1cxIQCghkaXNhYmxlZBgBIAEoCCIgCg1TaGllbGRlZE5v", + "ZGVzEg8KB2VuYWJsZWQYASABKAgiHQoKVmlydHVhbE5JQxIPCgdlbmFibGVk", + "GAEgASgIIh0KCkZhc3RTb2NrZXQSDwoHZW5hYmxlZBgBIAEoCCLHAQoPR1BV", + "RGlyZWN0Q29uZmlnElgKE2dwdV9kaXJlY3Rfc3RyYXRlZ3kYASABKA4yNi5n", + "b29nbGUuY29udGFpbmVyLnYxLkdQVURpcmVjdENvbmZpZy5HUFVEaXJlY3RT", + "dHJhdGVneUgAiAEBIkIKEUdQVURpcmVjdFN0cmF0ZWd5EiMKH0dQVV9ESVJF", + "Q1RfU1RSQVRFR1lfVU5TUEVDSUZJRUQQABIICgRSRE1BEAJCFgoUX2dwdV9k", + "aXJlY3Rfc3RyYXRlZ3kiwQMKEk5vdGlmaWNhdGlvbkNvbmZpZxI+CgZwdWJz", + "dWIYASABKAsyLi5nb29nbGUuY29udGFpbmVyLnYxLk5vdGlmaWNhdGlvbkNv", + "bmZpZy5QdWJTdWIaigEKBlB1YlN1YhIPCgdlbmFibGVkGAEgASgIEi8KBXRv", + "cGljGAIgASgJQiD6QR0KG3B1YnN1Yi5nb29nbGVhcGlzLmNvbS9Ub3BpYxI+", + "CgZmaWx0ZXIYAyABKAsyLi5nb29nbGUuY29udGFpbmVyLnYxLk5vdGlmaWNh", + "dGlvbkNvbmZpZy5GaWx0ZXIaTwoGRmlsdGVyEkUKCmV2ZW50X3R5cGUYASAD", + "KA4yMS5nb29nbGUuY29udGFpbmVyLnYxLk5vdGlmaWNhdGlvbkNvbmZpZy5F", + "dmVudFR5cGUijAEKCUV2ZW50VHlwZRIaChZFVkVOVF9UWVBFX1VOU1BFQ0lG", + "SUVEEAASGwoXVVBHUkFERV9BVkFJTEFCTEVfRVZFTlQQARIRCg1VUEdSQURF", + "X0VWRU5UEAISGwoXU0VDVVJJVFlfQlVMTEVUSU5fRVZFTlQQAxIWChJVUEdS", + "QURFX0lORk9fRVZFTlQQBCLwAQoRQ29uZmlkZW50aWFsTm9kZXMSDwoHZW5h", + "YmxlZBgBIAEoCBJjChpjb25maWRlbnRpYWxfaW5zdGFuY2VfdHlwZRgCIAEo", + "DjI/Lmdvb2dsZS5jb250YWluZXIudjEuQ29uZmlkZW50aWFsTm9kZXMuQ29u", + "ZmlkZW50aWFsSW5zdGFuY2VUeXBlImUKGENvbmZpZGVudGlhbEluc3RhbmNl", + "VHlwZRIqCiZDT05GSURFTlRJQUxfSU5TVEFOQ0VfVFlQRV9VTlNQRUNJRklF", + "RBAAEgcKA1NFVhABEgsKB1NFVl9TTlAQAhIHCgNURFgQAyLfAQoMVXBncmFk", + "ZUV2ZW50Ej8KDXJlc291cmNlX3R5cGUYASABKA4yKC5nb29nbGUuY29udGFp", + "bmVyLnYxLlVwZ3JhZGVSZXNvdXJjZVR5cGUSEQoJb3BlcmF0aW9uGAIgASgJ", + "EjgKFG9wZXJhdGlvbl9zdGFydF90aW1lGAMgASgLMhouZ29vZ2xlLnByb3Rv", + "YnVmLlRpbWVzdGFtcBIXCg9jdXJyZW50X3ZlcnNpb24YBCABKAkSFgoOdGFy", + "Z2V0X3ZlcnNpb24YBSABKAkSEAoIcmVzb3VyY2UYBiABKAkiowcKEFVwZ3Jh", + "ZGVJbmZvRXZlbnQSPwoNcmVzb3VyY2VfdHlwZRgBIAEoDjIoLmdvb2dsZS5j", + "b250YWluZXIudjEuVXBncmFkZVJlc291cmNlVHlwZRIRCglvcGVyYXRpb24Y", + "AiABKAkSLgoKc3RhcnRfdGltZRgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5U", + "aW1lc3RhbXASLAoIZW5kX3RpbWUYBCABKAsyGi5nb29nbGUucHJvdG9idWYu", + "VGltZXN0YW1wEhcKD2N1cnJlbnRfdmVyc2lvbhgFIAEoCRIWCg50YXJnZXRf", + "dmVyc2lvbhgGIAEoCRIQCghyZXNvdXJjZRgHIAEoCRI/CgVzdGF0ZRgIIAEo", + "DjIrLmdvb2dsZS5jb250YWluZXIudjEuVXBncmFkZUluZm9FdmVudC5TdGF0", + "ZUID4EEDEkIKGXN0YW5kYXJkX3N1cHBvcnRfZW5kX3RpbWUYCSABKAsyGi5n", + "b29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQESQgoZZXh0ZW5kZWRfc3Vw", + "cG9ydF9lbmRfdGltZRgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3Rh", + "bXBIAYgBARITCgtkZXNjcmlwdGlvbhgLIAEoCRJDCgpldmVudF90eXBlGAwg", + "ASgOMi8uZ29vZ2xlLmNvbnRhaW5lci52MS5VcGdyYWRlSW5mb0V2ZW50LkV2", + "ZW50VHlwZRJDChBkaXNydXB0aW9uX2V2ZW50GA4gASgLMiQuZ29vZ2xlLmNv", + "bnRhaW5lci52MS5EaXNydXB0aW9uRXZlbnRIAogBASJUCgVTdGF0ZRIVChFT", + "VEFURV9VTlNQRUNJRklFRBAAEgsKB1NUQVJURUQQAxINCglTVUNDRUVERUQQ", + "BBIKCgZGQUlMRUQQBRIMCghDQU5DRUxFRBAGIooBCglFdmVudFR5cGUSGgoW", + "RVZFTlRfVFlQRV9VTlNQRUNJRklFRBAAEhIKDkVORF9PRl9TVVBQT1JUEAES", + "IAocQ09TX01JTEVTVE9ORV9WRVJTSU9OX1VQREFURRACEhUKEVVQR1JBREVf", + "TElGRUNZQ0xFEAMSFAoQRElTUlVQVElPTl9FVkVOVBAEQhwKGl9zdGFuZGFy", + "ZF9zdXBwb3J0X2VuZF90aW1lQhwKGl9leHRlbmRlZF9zdXBwb3J0X2VuZF90", + "aW1lQhMKEV9kaXNydXB0aW9uX2V2ZW50IrMDCg9EaXNydXB0aW9uRXZlbnQS", + "TAoPZGlzcnVwdGlvbl90eXBlGAEgASgOMjMuZ29vZ2xlLmNvbnRhaW5lci52", + "MS5EaXNydXB0aW9uRXZlbnQuRGlzcnVwdGlvblR5cGUSGAoQcGRiX2Jsb2Nr", + "ZWRfbm9kZRgCIAEoCRJLCg9wZGJfYmxvY2tlZF9wb2QYAyADKAsyMi5nb29n", + "bGUuY29udGFpbmVyLnYxLkRpc3J1cHRpb25FdmVudC5QZGJCbG9ja2VkUG9k", + "Ej0KFXBkYl92aW9sYXRpb25fdGltZW91dBgEIAEoCzIZLmdvb2dsZS5wcm90", + "b2J1Zi5EdXJhdGlvbkgAiAEBGjAKDVBkYkJsb2NrZWRQb2QSEQoJbmFtZXNw", + "YWNlGAEgASgJEgwKBG5hbWUYAiABKAkiYAoORGlzcnVwdGlvblR5cGUSHwob", + "RElTUlVQVElPTl9UWVBFX1VOU1BFQ0lGSUVEEAASFgoSUE9EX05PVF9FTk9V", + "R0hfUERCEAESFQoRUE9EX1BEQl9WSU9MQVRJT04QAkIYChZfcGRiX3Zpb2xh", + "dGlvbl90aW1lb3V0IrkBChVVcGdyYWRlQXZhaWxhYmxlRXZlbnQSDwoHdmVy", + "c2lvbhgBIAEoCRI/Cg1yZXNvdXJjZV90eXBlGAIgASgOMiguZ29vZ2xlLmNv", + "bnRhaW5lci52MS5VcGdyYWRlUmVzb3VyY2VUeXBlEjwKD3JlbGVhc2VfY2hh", + "bm5lbBgDIAEoCzIjLmdvb2dsZS5jb250YWluZXIudjEuUmVsZWFzZUNoYW5u", + "ZWwSEAoIcmVzb3VyY2UYBCABKAkiugIKFVNlY3VyaXR5QnVsbGV0aW5FdmVu", + "dBIeChZyZXNvdXJjZV90eXBlX2FmZmVjdGVkGAEgASgJEhMKC2J1bGxldGlu", + "X2lkGAIgASgJEg8KB2N2ZV9pZHMYAyADKAkSEAoIc2V2ZXJpdHkYBCABKAkS", + "FAoMYnVsbGV0aW5fdXJpGAUgASgJEhkKEWJyaWVmX2Rlc2NyaXB0aW9uGAYg", + "ASgJEiEKGWFmZmVjdGVkX3N1cHBvcnRlZF9taW5vcnMYByADKAkSGAoQcGF0", + "Y2hlZF92ZXJzaW9ucxgIIAMoCRIgChhzdWdnZXN0ZWRfdXBncmFkZV90YXJn", + "ZXQYCSABKAkSHQoVbWFudWFsX3N0ZXBzX3JlcXVpcmVkGAogASgIEhoKEm1p", + "dGlnYXRlZF92ZXJzaW9ucxgLIAMoCSK8AQoJQXV0b3BpbG90Eg8KB2VuYWJs", + "ZWQYASABKAgSSQoWd29ya2xvYWRfcG9saWN5X2NvbmZpZxgCIAEoCzIpLmdv", + "b2dsZS5jb250YWluZXIudjEuV29ya2xvYWRQb2xpY3lDb25maWcSUwobcHJp", + "dmlsZWdlZF9hZG1pc3Npb25fY29uZmlnGAQgASgLMi4uZ29vZ2xlLmNvbnRh", + "aW5lci52MS5Qcml2aWxlZ2VkQWRtaXNzaW9uQ29uZmlnIjQKGVByaXZpbGVn", + "ZWRBZG1pc3Npb25Db25maWcSFwoPYWxsb3dsaXN0X3BhdGhzGAEgAygJIqwB", + "ChRXb3JrbG9hZFBvbGljeUNvbmZpZxIcCg9hbGxvd19uZXRfYWRtaW4YASAB", + "KAhIAIgBARI1CihhdXRvcGlsb3RfY29tcGF0aWJpbGl0eV9hdWRpdGluZ19l", + "bmFibGVkGAIgASgISAGIAQFCEgoQX2FsbG93X25ldF9hZG1pbkIrCilfYXV0", + "b3BpbG90X2NvbXBhdGliaWxpdHlfYXVkaXRpbmdfZW5hYmxlZCJWCg1Mb2dn", + "aW5nQ29uZmlnEkUKEGNvbXBvbmVudF9jb25maWcYASABKAsyKy5nb29nbGUu", + "Y29udGFpbmVyLnYxLkxvZ2dpbmdDb21wb25lbnRDb25maWcingIKFkxvZ2dp", + "bmdDb21wb25lbnRDb25maWcSUAoRZW5hYmxlX2NvbXBvbmVudHMYASADKA4y", + "NS5nb29nbGUuY29udGFpbmVyLnYxLkxvZ2dpbmdDb21wb25lbnRDb25maWcu", + "Q29tcG9uZW50IrEBCglDb21wb25lbnQSGQoVQ09NUE9ORU5UX1VOU1BFQ0lG", + "SUVEEAASFQoRU1lTVEVNX0NPTVBPTkVOVFMQARINCglXT1JLTE9BRFMQAhIN", + "CglBUElTRVJWRVIQAxINCglTQ0hFRFVMRVIQBBIWChJDT05UUk9MTEVSX01B", + "TkFHRVIQBRIMCghLQ1BfU1NIRBAHEhIKDktDUF9DT05ORUNUSU9OEAgSCwoH", + "S0NQX0hQQRAJIioKF1JheUNsdXN0ZXJMb2dnaW5nQ29uZmlnEg8KB2VuYWJs", + "ZWQYASABKAgilwIKEE1vbml0b3JpbmdDb25maWcSSAoQY29tcG9uZW50X2Nv", + "bmZpZxgBIAEoCzIuLmdvb2dsZS5jb250YWluZXIudjEuTW9uaXRvcmluZ0Nv", + "bXBvbmVudENvbmZpZxJPChltYW5hZ2VkX3Byb21ldGhldXNfY29uZmlnGAIg", + "ASgLMiwuZ29vZ2xlLmNvbnRhaW5lci52MS5NYW5hZ2VkUHJvbWV0aGV1c0Nv", + "bmZpZxJoCiZhZHZhbmNlZF9kYXRhcGF0aF9vYnNlcnZhYmlsaXR5X2NvbmZp", + "ZxgDIAEoCzI4Lmdvb2dsZS5jb250YWluZXIudjEuQWR2YW5jZWREYXRhcGF0", + "aE9ic2VydmFiaWxpdHlDb25maWcingIKI0FkdmFuY2VkRGF0YXBhdGhPYnNl", + "cnZhYmlsaXR5Q29uZmlnEhYKDmVuYWJsZV9tZXRyaWNzGAEgASgIElYKCnJl", + "bGF5X21vZGUYAiABKA4yQi5nb29nbGUuY29udGFpbmVyLnYxLkFkdmFuY2Vk", + "RGF0YXBhdGhPYnNlcnZhYmlsaXR5Q29uZmlnLlJlbGF5TW9kZRIZCgxlbmFi", + "bGVfcmVsYXkYAyABKAhIAIgBASJbCglSZWxheU1vZGUSGgoWUkVMQVlfTU9E", + "RV9VTlNQRUNJRklFRBAAEgwKCERJU0FCTEVEEAESEwoPSU5URVJOQUxfVlBD", + "X0xCEAMSDwoLRVhURVJOQUxfTEIQBEIPCg1fZW5hYmxlX3JlbGF5Ii0KGlJh", + "eUNsdXN0ZXJNb25pdG9yaW5nQ29uZmlnEg8KB2VuYWJsZWQYASABKAgiWgoV", + "Tm9kZVBvb2xMb2dnaW5nQ29uZmlnEkEKDnZhcmlhbnRfY29uZmlnGAEgASgL", + "MikuZ29vZ2xlLmNvbnRhaW5lci52MS5Mb2dnaW5nVmFyaWFudENvbmZpZyKf", + "AQoUTG9nZ2luZ1ZhcmlhbnRDb25maWcSQgoHdmFyaWFudBgBIAEoDjIxLmdv", + "b2dsZS5jb250YWluZXIudjEuTG9nZ2luZ1ZhcmlhbnRDb25maWcuVmFyaWFu", + "dCJDCgdWYXJpYW50EhcKE1ZBUklBTlRfVU5TUEVDSUZJRUQQABILCgdERUZB", + "VUxUEAESEgoOTUFYX1RIUk9VR0hQVVQQAiLmAgoZTW9uaXRvcmluZ0NvbXBv", + "bmVudENvbmZpZxJTChFlbmFibGVfY29tcG9uZW50cxgBIAMoDjI4Lmdvb2ds", + "ZS5jb250YWluZXIudjEuTW9uaXRvcmluZ0NvbXBvbmVudENvbmZpZy5Db21w", + "b25lbnQi8wEKCUNvbXBvbmVudBIZChVDT01QT05FTlRfVU5TUEVDSUZJRUQQ", + "ABIVChFTWVNURU1fQ09NUE9ORU5UUxABEg0KCUFQSVNFUlZFUhADEg0KCVND", + "SEVEVUxFUhAEEhYKEkNPTlRST0xMRVJfTUFOQUdFUhAFEgsKB1NUT1JBR0UQ", + "BxIHCgNIUEEQCBIHCgNQT0QQCRINCglEQUVNT05TRVQQChIOCgpERVBMT1lN", + "RU5UEAsSDwoLU1RBVEVGVUxTRVQQDBIMCghDQURWSVNPUhANEgsKB0tVQkVM", + "RVQQDhIICgREQ0dNEA8SCgoGSk9CU0VUEBAidQoXTWFuYWdlZFByb21ldGhl", + "dXNDb25maWcSDwoHZW5hYmxlZBgBIAEoCBJJChZhdXRvX21vbml0b3Jpbmdf", + "Y29uZmlnGAIgASgLMikuZ29vZ2xlLmNvbnRhaW5lci52MS5BdXRvTW9uaXRv", + "cmluZ0NvbmZpZyKJAQoUQXV0b01vbml0b3JpbmdDb25maWcSPgoFc2NvcGUY", + "ASABKA4yLy5nb29nbGUuY29udGFpbmVyLnYxLkF1dG9Nb25pdG9yaW5nQ29u", + "ZmlnLlNjb3BlIjEKBVNjb3BlEhUKEVNDT1BFX1VOU1BFQ0lGSUVEEAASBwoD", + "QUxMEAESCAoETk9ORRACIrABCg5Qb2RBdXRvc2NhbGluZxJICgtocGFfcHJv", + "ZmlsZRgCIAEoDjIuLmdvb2dsZS5jb250YWluZXIudjEuUG9kQXV0b3NjYWxp", + "bmcuSFBBUHJvZmlsZUgAiAEBIkQKCkhQQVByb2ZpbGUSGwoXSFBBX1BST0ZJ", + "TEVfVU5TUEVDSUZJRUQQABIICgROT05FEAESDwoLUEVSRk9STUFOQ0UQAkIO", + "CgxfaHBhX3Byb2ZpbGUi1gEKBUZsZWV0Eg8KB3Byb2plY3QYASABKAkSFwoK", + "bWVtYmVyc2hpcBgCIAEoCUID4EEDEhsKDnByZV9yZWdpc3RlcmVkGAMgASgI", + "QgPgQQMSQgoPbWVtYmVyc2hpcF90eXBlGAQgASgOMikuZ29vZ2xlLmNvbnRh", + "aW5lci52MS5GbGVldC5NZW1iZXJzaGlwVHlwZSJCCg5NZW1iZXJzaGlwVHlw", + "ZRIfChtNRU1CRVJTSElQX1RZUEVfVU5TUEVDSUZJRUQQABIPCgtMSUdIVFdF", + "SUdIVBABIrcGChtDb250cm9sUGxhbmVFbmRwb2ludHNDb25maWcSXwoTZG5z", + "X2VuZHBvaW50X2NvbmZpZxgBIAEoCzJCLmdvb2dsZS5jb250YWluZXIudjEu", + "Q29udHJvbFBsYW5lRW5kcG9pbnRzQ29uZmlnLkROU0VuZHBvaW50Q29uZmln", + "El8KE2lwX2VuZHBvaW50c19jb25maWcYAyABKAsyQi5nb29nbGUuY29udGFp", + "bmVyLnYxLkNvbnRyb2xQbGFuZUVuZHBvaW50c0NvbmZpZy5JUEVuZHBvaW50", + "c0NvbmZpZxr0AQoRRE5TRW5kcG9pbnRDb25maWcSFQoIZW5kcG9pbnQYAiAB", + "KAlCA+BBAxIjChZhbGxvd19leHRlcm5hbF90cmFmZmljGAMgASgISACIAQES", + "JgoZZW5hYmxlX2s4c190b2tlbnNfdmlhX2RucxgFIAEoCEgBiAEBEiUKGGVu", + "YWJsZV9rOHNfY2VydHNfdmlhX2RucxgGIAEoCEgCiAEBQhkKF19hbGxvd19l", + "eHRlcm5hbF90cmFmZmljQhwKGl9lbmFibGVfazhzX3Rva2Vuc192aWFfZG5z", + "QhsKGV9lbmFibGVfazhzX2NlcnRzX3ZpYV9kbnMa3gIKEUlQRW5kcG9pbnRz", + "Q29uZmlnEhQKB2VuYWJsZWQYASABKAhIAIgBARIjChZlbmFibGVfcHVibGlj", + "X2VuZHBvaW50GAIgASgISAGIAQESGgoNZ2xvYmFsX2FjY2VzcxgDIAEoCEgC", + "iAEBElcKGmF1dGhvcml6ZWRfbmV0d29ya3NfY29uZmlnGAQgASgLMjMuZ29v", + "Z2xlLmNvbnRhaW5lci52MS5NYXN0ZXJBdXRob3JpemVkTmV0d29ya3NDb25m", + "aWcSHAoPcHVibGljX2VuZHBvaW50GAUgASgJQgPgQQMSHQoQcHJpdmF0ZV9l", + "bmRwb2ludBgGIAEoCUID4EEDEiMKG3ByaXZhdGVfZW5kcG9pbnRfc3VibmV0", + "d29yaxgHIAEoCUIKCghfZW5hYmxlZEIZChdfZW5hYmxlX3B1YmxpY19lbmRw", + "b2ludEIQCg5fZ2xvYmFsX2FjY2VzcyIyChdMb2NhbE52bWVTc2RCbG9ja0Nv", + "bmZpZxIXCg9sb2NhbF9zc2RfY291bnQYASABKAUiUwoeRXBoZW1lcmFsU3Rv", + "cmFnZUxvY2FsU3NkQ29uZmlnEhcKD2xvY2FsX3NzZF9jb3VudBgBIAEoBRIY", + "ChBkYXRhX2NhY2hlX2NvdW50GAIgASgFIoQBChNSZXNvdXJjZU1hbmFnZXJU", + "YWdzEkAKBHRhZ3MYASADKAsyMi5nb29nbGUuY29udGFpbmVyLnYxLlJlc291", + "cmNlTWFuYWdlclRhZ3MuVGFnc0VudHJ5GisKCVRhZ3NFbnRyeRILCgNrZXkY", + "ASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIvwBChBFbnRlcnByaXNlQ29uZmln", + "EkwKDGNsdXN0ZXJfdGllchgBIAEoDjIxLmdvb2dsZS5jb250YWluZXIudjEu", + "RW50ZXJwcmlzZUNvbmZpZy5DbHVzdGVyVGllckID4EEDEkcKDGRlc2lyZWRf", + "dGllchgCIAEoDjIxLmdvb2dsZS5jb250YWluZXIudjEuRW50ZXJwcmlzZUNv", + "bmZpZy5DbHVzdGVyVGllciJNCgtDbHVzdGVyVGllchIcChhDTFVTVEVSX1RJ", + "RVJfVU5TUEVDSUZJRUQQABIMCghTVEFOREFSRBABEg4KCkVOVEVSUFJJU0UQ", + "AhoCGAE6AhgBIqgCChNTZWNyZXRNYW5hZ2VyQ29uZmlnEhQKB2VuYWJsZWQY", + "ASABKAhIAIgBARJVCg9yb3RhdGlvbl9jb25maWcYAiABKAsyNy5nb29nbGUu", + "Y29udGFpbmVyLnYxLlNlY3JldE1hbmFnZXJDb25maWcuUm90YXRpb25Db25m", + "aWdIAYgBARqDAQoOUm90YXRpb25Db25maWcSFAoHZW5hYmxlZBgBIAEoCEgA", + "iAEBEjkKEXJvdGF0aW9uX2ludGVydmFsGAIgASgLMhkuZ29vZ2xlLnByb3Rv", + "YnVmLkR1cmF0aW9uSAGIAQFCCgoIX2VuYWJsZWRCFAoSX3JvdGF0aW9uX2lu", + "dGVydmFsQgoKCF9lbmFibGVkQhIKEF9yb3RhdGlvbl9jb25maWciaAoIQm9v", + "dERpc2sSEQoJZGlza190eXBlGAEgASgJEg8KB3NpemVfZ2IYAiABKAMSGAoQ", + "cHJvdmlzaW9uZWRfaW9wcxgDIAEoAxIeChZwcm92aXNpb25lZF90aHJvdWdo", + "cHV0GAQgASgDIpsBChFTZWNvbmRhcnlCb290RGlzaxI5CgRtb2RlGAEgASgO", + "MisuZ29vZ2xlLmNvbnRhaW5lci52MS5TZWNvbmRhcnlCb290RGlzay5Nb2Rl", + "EhIKCmRpc2tfaW1hZ2UYAiABKAkiNwoETW9kZRIUChBNT0RFX1VOU1BFQ0lG", + "SUVEEAASGQoVQ09OVEFJTkVSX0lNQUdFX0NBQ0hFEAEiIQofU2Vjb25kYXJ5", + "Qm9vdERpc2tVcGRhdGVTdHJhdGVneSJECh5GZXRjaENsdXN0ZXJVcGdyYWRl", + "SW5mb1JlcXVlc3QSEQoEbmFtZRgBIAEoCUID4EECEg8KB3ZlcnNpb24YZCAB", + "KAkilQcKEkNsdXN0ZXJVcGdyYWRlSW5mbxIhChRtaW5vcl90YXJnZXRfdmVy", + "c2lvbhgHIAEoCUgAiAEBEiEKFHBhdGNoX3RhcmdldF92ZXJzaW9uGAggASgJ", + "SAGIAQESVgoTYXV0b191cGdyYWRlX3N0YXR1cxgCIAMoDjI5Lmdvb2dsZS5j", + "b250YWluZXIudjEuQ2x1c3RlclVwZ3JhZGVJbmZvLkF1dG9VcGdyYWRlU3Rh", + "dHVzElYKDXBhdXNlZF9yZWFzb24YAyADKA4yPy5nb29nbGUuY29udGFpbmVy", + "LnYxLkNsdXN0ZXJVcGdyYWRlSW5mby5BdXRvVXBncmFkZVBhdXNlZFJlYXNv", + "bhI8Cg91cGdyYWRlX2RldGFpbHMYBCADKAsyIy5nb29nbGUuY29udGFpbmVy", + "LnYxLlVwZ3JhZGVEZXRhaWxzEi4KIWVuZF9vZl9zdGFuZGFyZF9zdXBwb3J0", + "X3RpbWVzdGFtcBgFIAEoCUgCiAEBEi4KIWVuZF9vZl9leHRlbmRlZF9zdXBw", + "b3J0X3RpbWVzdGFtcBgGIAEoCUgDiAEBIloKEUF1dG9VcGdyYWRlU3RhdHVz", + "EgsKB1VOS05PV04QABIKCgZBQ1RJVkUQARIYChRNSU5PUl9VUEdSQURFX1BB", + "VVNFRBAEEhIKDlVQR1JBREVfUEFVU0VEEAUikAIKF0F1dG9VcGdyYWRlUGF1", + "c2VkUmVhc29uEioKJkFVVE9fVVBHUkFERV9QQVVTRURfUkVBU09OX1VOU1BF", + "Q0lGSUVEEAASFgoSTUFJTlRFTkFOQ0VfV0lORE9XEAESJQohTUFJTlRFTkFO", + "Q0VfRVhDTFVTSU9OX05PX1VQR1JBREVTEAUSKwonTUFJTlRFTkFOQ0VfRVhD", + "TFVTSU9OX05PX01JTk9SX1VQR1JBREVTEAYSHQoZQ0xVU1RFUl9ESVNSVVBU", + "SU9OX0JVREdFVBAEEisKJ0NMVVNURVJfRElTUlVQVElPTl9CVURHRVRfTUlO", + "T1JfVVBHUkFERRAHEhEKDVNZU1RFTV9DT05GSUcQCEIXChVfbWlub3JfdGFy", + "Z2V0X3ZlcnNpb25CFwoVX3BhdGNoX3RhcmdldF92ZXJzaW9uQiQKIl9lbmRf", + "b2Zfc3RhbmRhcmRfc3VwcG9ydF90aW1lc3RhbXBCJAoiX2VuZF9vZl9leHRl", + "bmRlZF9zdXBwb3J0X3RpbWVzdGFtcCLXAwoOVXBncmFkZURldGFpbHMSPQoF", + "c3RhdGUYASABKA4yKS5nb29nbGUuY29udGFpbmVyLnYxLlVwZ3JhZGVEZXRh", + "aWxzLlN0YXRlQgPgQQMSMwoKc3RhcnRfdGltZRgCIAEoCzIaLmdvb2dsZS5w", + "cm90b2J1Zi5UaW1lc3RhbXBIAIgBARIxCghlbmRfdGltZRgDIAEoCzIaLmdv", + "b2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIXCg9pbml0aWFsX3ZlcnNp", + "b24YBCABKAkSFgoOdGFyZ2V0X3ZlcnNpb24YBSABKAkSQQoKc3RhcnRfdHlw", + "ZRgGIAEoDjItLmdvb2dsZS5jb250YWluZXIudjEuVXBncmFkZURldGFpbHMu", + "U3RhcnRUeXBlIkoKBVN0YXRlEgsKB1VOS05PV04QABIKCgZGQUlMRUQQARIN", + "CglTVUNDRUVERUQQAhIMCghDQU5DRUxFRBADEgsKB1JVTk5JTkcQBCJCCglT", + "dGFydFR5cGUSGgoWU1RBUlRfVFlQRV9VTlNQRUNJRklFRBAAEg0KCUFVVE9N", + "QVRJQxABEgoKBk1BTlVBTBACQg0KC19zdGFydF90aW1lQgsKCV9lbmRfdGlt", + "ZSJFCh9GZXRjaE5vZGVQb29sVXBncmFkZUluZm9SZXF1ZXN0EhEKBG5hbWUY", + "ASABKAlCA+BBAhIPCgd2ZXJzaW9uGGQgASgJIswGChNOb2RlUG9vbFVwZ3Jh", + "ZGVJbmZvEiEKFG1pbm9yX3RhcmdldF92ZXJzaW9uGAEgASgJSACIAQESIQoU", + "cGF0Y2hfdGFyZ2V0X3ZlcnNpb24YAiABKAlIAYgBARJXChNhdXRvX3VwZ3Jh", + "ZGVfc3RhdHVzGAMgAygOMjouZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlUG9v", + "bFVwZ3JhZGVJbmZvLkF1dG9VcGdyYWRlU3RhdHVzElcKDXBhdXNlZF9yZWFz", + "b24YBCADKA4yQC5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVQb29sVXBncmFk", + "ZUluZm8uQXV0b1VwZ3JhZGVQYXVzZWRSZWFzb24SPAoPdXBncmFkZV9kZXRh", + "aWxzGAUgAygLMiMuZ29vZ2xlLmNvbnRhaW5lci52MS5VcGdyYWRlRGV0YWls", + "cxIuCiFlbmRfb2Zfc3RhbmRhcmRfc3VwcG9ydF90aW1lc3RhbXAYBiABKAlI", + "AogBARIuCiFlbmRfb2ZfZXh0ZW5kZWRfc3VwcG9ydF90aW1lc3RhbXAYByAB", + "KAlIA4gBASJaChFBdXRvVXBncmFkZVN0YXR1cxILCgdVTktOT1dOEAASCgoG", + "QUNUSVZFEAESGAoUTUlOT1JfVVBHUkFERV9QQVVTRUQQAhISCg5VUEdSQURF", + "X1BBVVNFRBADIsQBChdBdXRvVXBncmFkZVBhdXNlZFJlYXNvbhIqCiZBVVRP", + "X1VQR1JBREVfUEFVU0VEX1JFQVNPTl9VTlNQRUNJRklFRBAAEhYKEk1BSU5U", + "RU5BTkNFX1dJTkRPVxABEiUKIU1BSU5URU5BTkNFX0VYQ0xVU0lPTl9OT19V", + "UEdSQURFUxACEisKJ01BSU5URU5BTkNFX0VYQ0xVU0lPTl9OT19NSU5PUl9V", + "UEdSQURFUxADEhEKDVNZU1RFTV9DT05GSUcQBEIXChVfbWlub3JfdGFyZ2V0", "X3ZlcnNpb25CFwoVX3BhdGNoX3RhcmdldF92ZXJzaW9uQiQKIl9lbmRfb2Zf", "c3RhbmRhcmRfc3VwcG9ydF90aW1lc3RhbXBCJAoiX2VuZF9vZl9leHRlbmRl", - "ZF9zdXBwb3J0X3RpbWVzdGFtcCLXAwoOVXBncmFkZURldGFpbHMSPQoFc3Rh", - "dGUYASABKA4yKS5nb29nbGUuY29udGFpbmVyLnYxLlVwZ3JhZGVEZXRhaWxz", - "LlN0YXRlQgPgQQMSMwoKc3RhcnRfdGltZRgCIAEoCzIaLmdvb2dsZS5wcm90", - "b2J1Zi5UaW1lc3RhbXBIAIgBARIxCghlbmRfdGltZRgDIAEoCzIaLmdvb2ds", - "ZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIXCg9pbml0aWFsX3ZlcnNpb24Y", - "BCABKAkSFgoOdGFyZ2V0X3ZlcnNpb24YBSABKAkSQQoKc3RhcnRfdHlwZRgG", - "IAEoDjItLmdvb2dsZS5jb250YWluZXIudjEuVXBncmFkZURldGFpbHMuU3Rh", - "cnRUeXBlIkoKBVN0YXRlEgsKB1VOS05PV04QABIKCgZGQUlMRUQQARINCglT", - "VUNDRUVERUQQAhIMCghDQU5DRUxFRBADEgsKB1JVTk5JTkcQBCJCCglTdGFy", - "dFR5cGUSGgoWU1RBUlRfVFlQRV9VTlNQRUNJRklFRBAAEg0KCUFVVE9NQVRJ", - "QxABEgoKBk1BTlVBTBACQg0KC19zdGFydF90aW1lQgsKCV9lbmRfdGltZSJF", - "Ch9GZXRjaE5vZGVQb29sVXBncmFkZUluZm9SZXF1ZXN0EhEKBG5hbWUYASAB", - "KAlCA+BBAhIPCgd2ZXJzaW9uGGQgASgJIswGChNOb2RlUG9vbFVwZ3JhZGVJ", - "bmZvEiEKFG1pbm9yX3RhcmdldF92ZXJzaW9uGAEgASgJSACIAQESIQoUcGF0", - "Y2hfdGFyZ2V0X3ZlcnNpb24YAiABKAlIAYgBARJXChNhdXRvX3VwZ3JhZGVf", - "c3RhdHVzGAMgAygOMjouZ29vZ2xlLmNvbnRhaW5lci52MS5Ob2RlUG9vbFVw", - "Z3JhZGVJbmZvLkF1dG9VcGdyYWRlU3RhdHVzElcKDXBhdXNlZF9yZWFzb24Y", - "BCADKA4yQC5nb29nbGUuY29udGFpbmVyLnYxLk5vZGVQb29sVXBncmFkZUlu", - "Zm8uQXV0b1VwZ3JhZGVQYXVzZWRSZWFzb24SPAoPdXBncmFkZV9kZXRhaWxz", - "GAUgAygLMiMuZ29vZ2xlLmNvbnRhaW5lci52MS5VcGdyYWRlRGV0YWlscxIu", - "CiFlbmRfb2Zfc3RhbmRhcmRfc3VwcG9ydF90aW1lc3RhbXAYBiABKAlIAogB", - "ARIuCiFlbmRfb2ZfZXh0ZW5kZWRfc3VwcG9ydF90aW1lc3RhbXAYByABKAlI", - "A4gBASJaChFBdXRvVXBncmFkZVN0YXR1cxILCgdVTktOT1dOEAASCgoGQUNU", - "SVZFEAESGAoUTUlOT1JfVVBHUkFERV9QQVVTRUQQAhISCg5VUEdSQURFX1BB", - "VVNFRBADIsQBChdBdXRvVXBncmFkZVBhdXNlZFJlYXNvbhIqCiZBVVRPX1VQ", - "R1JBREVfUEFVU0VEX1JFQVNPTl9VTlNQRUNJRklFRBAAEhYKEk1BSU5URU5B", - "TkNFX1dJTkRPVxABEiUKIU1BSU5URU5BTkNFX0VYQ0xVU0lPTl9OT19VUEdS", - "QURFUxACEisKJ01BSU5URU5BTkNFX0VYQ0xVU0lPTl9OT19NSU5PUl9VUEdS", - "QURFUxADEhEKDVNZU1RFTV9DT05GSUcQBEIXChVfbWlub3JfdGFyZ2V0X3Zl", - "cnNpb25CFwoVX3BhdGNoX3RhcmdldF92ZXJzaW9uQiQKIl9lbmRfb2Zfc3Rh", - "bmRhcmRfc3VwcG9ydF90aW1lc3RhbXBCJAoiX2VuZF9vZl9leHRlbmRlZF9z", - "dXBwb3J0X3RpbWVzdGFtcCKZAQoUR2tlQXV0b1VwZ3JhZGVDb25maWcSRwoK", - "cGF0Y2hfbW9kZRgBIAEoDjIzLmdvb2dsZS5jb250YWluZXIudjEuR2tlQXV0", - "b1VwZ3JhZGVDb25maWcuUGF0Y2hNb2RlIjgKCVBhdGNoTW9kZRIaChZQQVRD", - "SF9NT0RFX1VOU1BFQ0lGSUVEEAASDwoLQUNDRUxFUkFURUQQASLZAQoRTmV0", - "d29ya1RpZXJDb25maWcSSAoMbmV0d29ya190aWVyGAEgASgOMjIuZ29vZ2xl", - "LmNvbnRhaW5lci52MS5OZXR3b3JrVGllckNvbmZpZy5OZXR3b3JrVGllciJ6", - "CgtOZXR3b3JrVGllchIcChhORVRXT1JLX1RJRVJfVU5TUEVDSUZJRUQQABIY", - "ChRORVRXT1JLX1RJRVJfREVGQVVMVBABEhgKFE5FVFdPUktfVElFUl9QUkVN", - "SVVNEAISGQoVTkVUV09SS19USUVSX1NUQU5EQVJEEAMqxgEKF1ByaXZhdGVJ", - "UHY2R29vZ2xlQWNjZXNzEioKJlBSSVZBVEVfSVBWNl9HT09HTEVfQUNDRVNT", - "X1VOU1BFQ0lGSUVEEAASJwojUFJJVkFURV9JUFY2X0dPT0dMRV9BQ0NFU1Nf", - "RElTQUJMRUQQARIoCiRQUklWQVRFX0lQVjZfR09PR0xFX0FDQ0VTU19UT19H", - "T09HTEUQAhIsCihQUklWQVRFX0lQVjZfR09PR0xFX0FDQ0VTU19CSURJUkVD", - "VElPTkFMEAMqVwoTVXBncmFkZVJlc291cmNlVHlwZRIlCiFVUEdSQURFX1JF", - "U09VUkNFX1RZUEVfVU5TUEVDSUZJRUQQABIKCgZNQVNURVIQARINCglOT0RF", - "X1BPT0wQAiphChBEYXRhcGF0aFByb3ZpZGVyEiEKHURBVEFQQVRIX1BST1ZJ", - "REVSX1VOU1BFQ0lGSUVEEAASEwoPTEVHQUNZX0RBVEFQQVRIEAESFQoRQURW", - "QU5DRURfREFUQVBBVEgQAipeChZOb2RlUG9vbFVwZGF0ZVN0cmF0ZWd5EikK", - "JU5PREVfUE9PTF9VUERBVEVfU1RSQVRFR1lfVU5TUEVDSUZJRUQQABIOCgpC", - "TFVFX0dSRUVOEAISCQoFU1VSR0UQAypACglTdGFja1R5cGUSGgoWU1RBQ0tf", + "ZF9zdXBwb3J0X3RpbWVzdGFtcCKZAQoUR2tlQXV0b1VwZ3JhZGVDb25maWcS", + "RwoKcGF0Y2hfbW9kZRgBIAEoDjIzLmdvb2dsZS5jb250YWluZXIudjEuR2tl", + "QXV0b1VwZ3JhZGVDb25maWcuUGF0Y2hNb2RlIjgKCVBhdGNoTW9kZRIaChZQ", + "QVRDSF9NT0RFX1VOU1BFQ0lGSUVEEAASDwoLQUNDRUxFUkFURUQQASLZAQoR", + "TmV0d29ya1RpZXJDb25maWcSSAoMbmV0d29ya190aWVyGAEgASgOMjIuZ29v", + "Z2xlLmNvbnRhaW5lci52MS5OZXR3b3JrVGllckNvbmZpZy5OZXR3b3JrVGll", + "ciJ6CgtOZXR3b3JrVGllchIcChhORVRXT1JLX1RJRVJfVU5TUEVDSUZJRUQQ", + "ABIYChRORVRXT1JLX1RJRVJfREVGQVVMVBABEhgKFE5FVFdPUktfVElFUl9Q", + "UkVNSVVNEAISGQoVTkVUV09SS19USUVSX1NUQU5EQVJEEAMiygEKGk1hbmFn", + "ZWRPcGVuVGVsZW1ldHJ5Q29uZmlnEkkKBXNjb3BlGAEgASgOMjUuZ29vZ2xl", + "LmNvbnRhaW5lci52MS5NYW5hZ2VkT3BlblRlbGVtZXRyeUNvbmZpZy5TY29w", + "ZUgAiAEBIlcKBVNjb3BlEhUKEVNDT1BFX1VOU1BFQ0lGSUVEEAASCAoETk9O", + "RRABEi0KKUNPTExFQ1RJT05fQU5EX0lOU1RSVU1FTlRBVElPTl9DT01QT05F", + "TlRTEAJCCAoGX3Njb3BlKsYBChdQcml2YXRlSVB2Nkdvb2dsZUFjY2VzcxIq", + "CiZQUklWQVRFX0lQVjZfR09PR0xFX0FDQ0VTU19VTlNQRUNJRklFRBAAEicK", + "I1BSSVZBVEVfSVBWNl9HT09HTEVfQUNDRVNTX0RJU0FCTEVEEAESKAokUFJJ", + "VkFURV9JUFY2X0dPT0dMRV9BQ0NFU1NfVE9fR09PR0xFEAISLAooUFJJVkFU", + "RV9JUFY2X0dPT0dMRV9BQ0NFU1NfQklESVJFQ1RJT05BTBADKlcKE1VwZ3Jh", + "ZGVSZXNvdXJjZVR5cGUSJQohVVBHUkFERV9SRVNPVVJDRV9UWVBFX1VOU1BF", + "Q0lGSUVEEAASCgoGTUFTVEVSEAESDQoJTk9ERV9QT09MEAIqYQoQRGF0YXBh", + "dGhQcm92aWRlchIhCh1EQVRBUEFUSF9QUk9WSURFUl9VTlNQRUNJRklFRBAA", + "EhMKD0xFR0FDWV9EQVRBUEFUSBABEhUKEUFEVkFOQ0VEX0RBVEFQQVRIEAIq", + "bwoWTm9kZVBvb2xVcGRhdGVTdHJhdGVneRIpCiVOT0RFX1BPT0xfVVBEQVRF", + "X1NUUkFURUdZX1VOU1BFQ0lGSUVEEAASDgoKQkxVRV9HUkVFThACEgkKBVNV", + "UkdFEAMSDwoLU0hPUlRfTElWRUQQBSpACglTdGFja1R5cGUSGgoWU1RBQ0tf", "VFlQRV9VTlNQRUNJRklFRBAAEggKBElQVjQQARINCglJUFY0X0lQVjYQAipO", "Cg5JUHY2QWNjZXNzVHlwZRIgChxJUFY2X0FDQ0VTU19UWVBFX1VOU1BFQ0lG", "SUVEEAASDAoISU5URVJOQUwQARIMCghFWFRFUk5BTBACKp8BChlJblRyYW5z", @@ -1578,7 +1678,7 @@ static ClusterServiceReflection() { "Y3RzLyovem9uZXMvKi9jbHVzdGVycy8qL25vZGVQb29scy8qfTpmZXRjaE5v", "ZGVQb29sVXBncmFkZUluZm8aTMpBGGNvbnRhaW5lci5nb29nbGVhcGlzLmNv", "bdJBLmh0dHBzOi8vd3d3Lmdvb2dsZWFwaXMuY29tL2F1dGgvY2xvdWQtcGxh", - "dGZvcm1CkAQKF2NvbS5nb29nbGUuY29udGFpbmVyLnYxQhNDbHVzdGVyU2Vy", + "dGZvcm1C9AQKF2NvbS5nb29nbGUuY29udGFpbmVyLnYxQhNDbHVzdGVyU2Vy", "dmljZVByb3RvUAFaO2Nsb3VkLmdvb2dsZS5jb20vZ28vY29udGFpbmVyL2Fw", "aXYxL2NvbnRhaW5lcnBiO2NvbnRhaW5lcnBiqgIZR29vZ2xlLkNsb3VkLkNv", "bnRhaW5lci5WMcoCGUdvb2dsZVxDbG91ZFxDb250YWluZXJcVjHqAhxHb29n", @@ -1589,22 +1689,28 @@ static ClusterServiceReflection() { "X3Bvb2x96kGmAQooY2xvdWRrbXMuZ29vZ2xlYXBpcy5jb20vQ3J5cHRvS2V5", "VmVyc2lvbhJ6cHJvamVjdHMve3Byb2plY3R9L2xvY2F0aW9ucy97bG9jYXRp", "b259L2tleVJpbmdzL3trZXlfcmluZ30vY3J5cHRvS2V5cy97Y3J5cHRvX2tl", - "eX0vY3J5cHRvS2V5VmVyc2lvbnMve2NyeXB0b19rZXlfdmVyc2lvbn1iBnBy", - "b3RvMw==")); + "eX0vY3J5cHRvS2V5VmVyc2lvbnMve2NyeXB0b19rZXlfdmVyc2lvbn3qQWEK", + "IWNvbXB1dGUuZ29vZ2xlYXBpcy5jb20vU3VibmV0d29yaxI8cHJvamVjdHMv", + "e3Byb2plY3R9L3JlZ2lvbnMve3JlZ2lvbn0vc3VibmV0d29ya3Mve3N1Ym5l", + "dHdvcmt9YgZwcm90bzM=")); descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, new pbr::FileDescriptor[] { global::Google.Api.AnnotationsReflection.Descriptor, global::Google.Api.ClientReflection.Descriptor, global::Google.Api.FieldBehaviorReflection.Descriptor, global::Google.Api.ResourceReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.DurationReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.EmptyReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.TimestampReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.WrappersReflection.Descriptor, global::Google.Rpc.CodeReflection.Descriptor, global::Google.Rpc.StatusReflection.Descriptor, }, new pbr::GeneratedClrTypeInfo(new[] {typeof(global::Google.Cloud.Container.V1.PrivateIPv6GoogleAccess), typeof(global::Google.Cloud.Container.V1.UpgradeResourceType), typeof(global::Google.Cloud.Container.V1.DatapathProvider), typeof(global::Google.Cloud.Container.V1.NodePoolUpdateStrategy), typeof(global::Google.Cloud.Container.V1.StackType), typeof(global::Google.Cloud.Container.V1.IPv6AccessType), typeof(global::Google.Cloud.Container.V1.InTransitEncryptionConfig), }, null, new pbr::GeneratedClrTypeInfo[] { - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig), global::Google.Cloud.Container.V1.LinuxNodeConfig.Parser, new[]{ "Sysctls", "CgroupMode", "Hugepages", "TransparentHugepageEnabled", "TransparentHugepageDefrag", "NodeKernelModuleLoading" }, new[]{ "Hugepages" }, new[]{ typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.CgroupMode), typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.TransparentHugepageEnabled), typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.TransparentHugepageDefrag) }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.HugepagesConfig), global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.HugepagesConfig.Parser, new[]{ "HugepageSize2M", "HugepageSize1G" }, new[]{ "HugepageSize2M", "HugepageSize1G" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig), global::Google.Cloud.Container.V1.LinuxNodeConfig.Parser, new[]{ "Sysctls", "CgroupMode", "Hugepages", "TransparentHugepageEnabled", "TransparentHugepageDefrag", "SwapConfig", "NodeKernelModuleLoading" }, new[]{ "Hugepages", "SwapConfig" }, new[]{ typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.CgroupMode), typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.TransparentHugepageEnabled), typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.TransparentHugepageDefrag) }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.HugepagesConfig), global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.HugepagesConfig.Parser, new[]{ "HugepageSize2M", "HugepageSize1G" }, new[]{ "HugepageSize2M", "HugepageSize1G" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig), global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Parser, new[]{ "Enabled", "EncryptionConfig", "BootDiskProfile", "EphemeralLocalSsdProfile", "DedicatedLocalSsdProfile" }, new[]{ "PerformanceProfile", "Enabled", "EncryptionConfig" }, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EncryptionConfig), global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EncryptionConfig.Parser, new[]{ "Disabled" }, new[]{ "Disabled" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.BootDiskProfile), global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.BootDiskProfile.Parser, new[]{ "SwapSizeGib", "SwapSizePercent" }, new[]{ "SwapSize" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EphemeralLocalSsdProfile), global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EphemeralLocalSsdProfile.Parser, new[]{ "SwapSizeGib", "SwapSizePercent" }, new[]{ "SwapSize" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.DedicatedLocalSsdProfile), global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.DedicatedLocalSsdProfile.Parser, new[]{ "DiskCount" }, null, null, null, null)}), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading), global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Parser, new[]{ "Policy" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy) }, null, null), null, }), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.WindowsNodeConfig), global::Google.Cloud.Container.V1.WindowsNodeConfig.Parser, new[]{ "OsVersion" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion) }, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodeKubeletConfig), global::Google.Cloud.Container.V1.NodeKubeletConfig.Parser, new[]{ "CpuManagerPolicy", "TopologyManager", "MemoryManager", "CpuCfsQuota", "CpuCfsQuotaPeriod", "PodPidsLimit", "InsecureKubeletReadonlyPortEnabled", "ImageGcLowThresholdPercent", "ImageGcHighThresholdPercent", "ImageMinimumGcAge", "ImageMaximumGcAge", "ContainerLogMaxSize", "ContainerLogMaxFiles", "AllowedUnsafeSysctls", "EvictionSoft", "EvictionSoftGracePeriod", "EvictionMinimumReclaim", "EvictionMaxPodGracePeriodSeconds", "MaxParallelImagePulls", "SingleProcessOomKill" }, new[]{ "InsecureKubeletReadonlyPortEnabled", "SingleProcessOomKill" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodeKubeletConfig), global::Google.Cloud.Container.V1.NodeKubeletConfig.Parser, new[]{ "CpuManagerPolicy", "TopologyManager", "MemoryManager", "CpuCfsQuota", "CpuCfsQuotaPeriod", "PodPidsLimit", "InsecureKubeletReadonlyPortEnabled", "ImageGcLowThresholdPercent", "ImageGcHighThresholdPercent", "ImageMinimumGcAge", "ImageMaximumGcAge", "ContainerLogMaxSize", "ContainerLogMaxFiles", "AllowedUnsafeSysctls", "EvictionSoft", "EvictionSoftGracePeriod", "EvictionMinimumReclaim", "EvictionMaxPodGracePeriodSeconds", "MaxParallelImagePulls", "SingleProcessOomKill", "ShutdownGracePeriodSeconds", "ShutdownGracePeriodCriticalPodsSeconds" }, new[]{ "InsecureKubeletReadonlyPortEnabled", "SingleProcessOomKill", "ShutdownGracePeriodSeconds", "ShutdownGracePeriodCriticalPodsSeconds" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.TopologyManager), global::Google.Cloud.Container.V1.TopologyManager.Parser, new[]{ "Policy", "Scope" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.MemoryManager), global::Google.Cloud.Container.V1.MemoryManager.Parser, new[]{ "Policy" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.EvictionSignals), global::Google.Cloud.Container.V1.EvictionSignals.Parser, new[]{ "MemoryAvailable", "NodefsAvailable", "NodefsInodesFree", "ImagefsAvailable", "ImagefsInodesFree", "PidAvailable" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.EvictionGracePeriod), global::Google.Cloud.Container.V1.EvictionGracePeriod.Parser, new[]{ "MemoryAvailable", "NodefsAvailable", "NodefsInodesFree", "ImagefsAvailable", "ImagefsInodesFree", "PidAvailable" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.EvictionMinimumReclaim), global::Google.Cloud.Container.V1.EvictionMinimumReclaim.Parser, new[]{ "MemoryAvailable", "NodefsAvailable", "NodefsInodesFree", "ImagefsAvailable", "ImagefsInodesFree", "PidAvailable" }, null, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodeConfig), global::Google.Cloud.Container.V1.NodeConfig.Parser, new[]{ "MachineType", "DiskSizeGb", "OauthScopes", "ServiceAccount", "Metadata", "ImageType", "Labels", "LocalSsdCount", "Tags", "Preemptible", "Accelerators", "DiskType", "MinCpuPlatform", "WorkloadMetadataConfig", "Taints", "SandboxConfig", "NodeGroup", "ReservationAffinity", "ShieldedInstanceConfig", "LinuxNodeConfig", "KubeletConfig", "BootDiskKmsKey", "GcfsConfig", "AdvancedMachineFeatures", "Gvnic", "Spot", "ConfidentialNodes", "FastSocket", "ResourceLabels", "LoggingConfig", "WindowsNodeConfig", "LocalNvmeSsdBlockConfig", "EphemeralStorageLocalSsdConfig", "SoleTenantConfig", "ContainerdConfig", "ResourceManagerTags", "EnableConfidentialStorage", "SecondaryBootDisks", "StoragePools", "SecondaryBootDiskUpdateStrategy", "MaxRunDuration", "LocalSsdEncryptionMode", "EffectiveCgroupMode", "FlexStart", "BootDisk" }, new[]{ "FastSocket", "SecondaryBootDiskUpdateStrategy", "LocalSsdEncryptionMode", "FlexStart" }, new[]{ typeof(global::Google.Cloud.Container.V1.NodeConfig.Types.LocalSsdEncryptionMode), typeof(global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode) }, null, new pbr::GeneratedClrTypeInfo[] { null, null, null, }), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodeConfig), global::Google.Cloud.Container.V1.NodeConfig.Parser, new[]{ "MachineType", "DiskSizeGb", "OauthScopes", "ServiceAccount", "Metadata", "ImageType", "Labels", "LocalSsdCount", "Tags", "Preemptible", "Accelerators", "DiskType", "MinCpuPlatform", "WorkloadMetadataConfig", "Taints", "SandboxConfig", "NodeGroup", "ReservationAffinity", "ShieldedInstanceConfig", "LinuxNodeConfig", "KubeletConfig", "BootDiskKmsKey", "GcfsConfig", "AdvancedMachineFeatures", "Gvnic", "Spot", "ConfidentialNodes", "FastSocket", "ResourceLabels", "LoggingConfig", "WindowsNodeConfig", "LocalNvmeSsdBlockConfig", "EphemeralStorageLocalSsdConfig", "SoleTenantConfig", "ContainerdConfig", "ResourceManagerTags", "EnableConfidentialStorage", "SecondaryBootDisks", "StoragePools", "SecondaryBootDiskUpdateStrategy", "GpuDirectConfig", "MaxRunDuration", "LocalSsdEncryptionMode", "EffectiveCgroupMode", "FlexStart", "BootDisk", "ConsolidationDelay" }, new[]{ "FastSocket", "SecondaryBootDiskUpdateStrategy", "GpuDirectConfig", "LocalSsdEncryptionMode", "FlexStart" }, new[]{ typeof(global::Google.Cloud.Container.V1.NodeConfig.Types.LocalSsdEncryptionMode), typeof(global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode) }, null, new pbr::GeneratedClrTypeInfo[] { null, null, null, }), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.AdvancedMachineFeatures), global::Google.Cloud.Container.V1.AdvancedMachineFeatures.Parser, new[]{ "ThreadsPerCore", "EnableNestedVirtualization", "PerformanceMonitoringUnit" }, new[]{ "ThreadsPerCore", "EnableNestedVirtualization", "PerformanceMonitoringUnit" }, new[]{ typeof(global::Google.Cloud.Container.V1.AdvancedMachineFeatures.Types.PerformanceMonitoringUnit) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodeNetworkConfig), global::Google.Cloud.Container.V1.NodeNetworkConfig.Parser, new[]{ "CreatePodRange", "PodRange", "PodIpv4CidrBlock", "EnablePrivateNodes", "NetworkPerformanceConfig", "PodCidrOverprovisionConfig", "AdditionalNodeNetworkConfigs", "AdditionalPodNetworkConfigs", "PodIpv4RangeUtilization", "Subnetwork", "NetworkTierConfig" }, new[]{ "EnablePrivateNodes", "NetworkPerformanceConfig" }, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig), global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig.Parser, new[]{ "TotalEgressBandwidthTier" }, new[]{ "TotalEgressBandwidthTier" }, new[]{ typeof(global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig.Types.Tier) }, null, null)}), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.AdditionalNodeNetworkConfig), global::Google.Cloud.Container.V1.AdditionalNodeNetworkConfig.Parser, new[]{ "Network", "Subnetwork" }, null, null, null, null), @@ -1614,8 +1720,12 @@ static ClusterServiceReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.GcfsConfig), global::Google.Cloud.Container.V1.GcfsConfig.Parser, new[]{ "Enabled" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ReservationAffinity), global::Google.Cloud.Container.V1.ReservationAffinity.Parser, new[]{ "ConsumeReservationType", "Key", "Values" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.SoleTenantConfig), global::Google.Cloud.Container.V1.SoleTenantConfig.Parser, new[]{ "NodeAffinities", "MinNodeCpus" }, new[]{ "MinNodeCpus" }, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity), global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Parser, new[]{ "Key", "Operator", "Values" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator) }, null, null)}), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ContainerdConfig), global::Google.Cloud.Container.V1.ContainerdConfig.Parser, new[]{ "PrivateRegistryAccessConfig", "WritableCgroups" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig), global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Parser, new[]{ "Enabled", "CertificateAuthorityDomainConfig" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig), global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Parser, new[]{ "Fqdns", "GcpSecretManagerCertificateConfig" }, new[]{ "CertificateConfig" }, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig), global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig.Parser, new[]{ "SecretUri" }, null, null, null, null)})}), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ContainerdConfig.Types.WritableCgroups), global::Google.Cloud.Container.V1.ContainerdConfig.Types.WritableCgroups.Parser, new[]{ "Enabled" }, null, null, null, null)}), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ContainerdConfig), global::Google.Cloud.Container.V1.ContainerdConfig.Parser, new[]{ "PrivateRegistryAccessConfig", "WritableCgroups", "RegistryHosts" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig), global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Parser, new[]{ "Enabled", "CertificateAuthorityDomainConfig" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig), global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Parser, new[]{ "Fqdns", "GcpSecretManagerCertificateConfig" }, new[]{ "CertificateConfig" }, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig), global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig.Parser, new[]{ "SecretUri" }, null, null, null, null)})}), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ContainerdConfig.Types.WritableCgroups), global::Google.Cloud.Container.V1.ContainerdConfig.Types.WritableCgroups.Parser, new[]{ "Enabled" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig), global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Parser, new[]{ "Server", "Hosts" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.HostCapability) }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfig), global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfig.Parser, new[]{ "GcpSecretManagerSecretUri" }, new[]{ "Certificate" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfigPair), global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfigPair.Parser, new[]{ "Cert", "Key" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.RegistryHeader), global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.RegistryHeader.Parser, new[]{ "Key", "Value" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.HostConfig), global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.HostConfig.Parser, new[]{ "Host", "Capabilities", "OverridePath", "Header", "Ca", "Client", "DialTimeout" }, null, null, null, null)})}), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodeTaint), global::Google.Cloud.Container.V1.NodeTaint.Parser, new[]{ "Key", "Value", "Effect" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.NodeTaint.Types.Effect) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodeTaints), global::Google.Cloud.Container.V1.NodeTaints.Parser, new[]{ "Taints" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodeLabels), global::Google.Cloud.Container.V1.NodeLabels.Parser, new[]{ "Labels" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { null, }), @@ -1623,7 +1733,7 @@ static ClusterServiceReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NetworkTags), global::Google.Cloud.Container.V1.NetworkTags.Parser, new[]{ "Tags" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.MasterAuth), global::Google.Cloud.Container.V1.MasterAuth.Parser, new[]{ "Username", "Password", "ClientCertificateConfig", "ClusterCaCertificate", "ClientCertificate", "ClientKey" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ClientCertificateConfig), global::Google.Cloud.Container.V1.ClientCertificateConfig.Parser, new[]{ "IssueClientCertificate" }, null, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.AddonsConfig), global::Google.Cloud.Container.V1.AddonsConfig.Parser, new[]{ "HttpLoadBalancing", "HorizontalPodAutoscaling", "KubernetesDashboard", "NetworkPolicyConfig", "CloudRunConfig", "DnsCacheConfig", "ConfigConnectorConfig", "GcePersistentDiskCsiDriverConfig", "GcpFilestoreCsiDriverConfig", "GkeBackupAgentConfig", "GcsFuseCsiDriverConfig", "StatefulHaConfig", "ParallelstoreCsiDriverConfig", "RayOperatorConfig", "HighScaleCheckpointingConfig", "LustreCsiDriverConfig" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.AddonsConfig), global::Google.Cloud.Container.V1.AddonsConfig.Parser, new[]{ "HttpLoadBalancing", "HorizontalPodAutoscaling", "KubernetesDashboard", "NetworkPolicyConfig", "CloudRunConfig", "DnsCacheConfig", "ConfigConnectorConfig", "GcePersistentDiskCsiDriverConfig", "GcpFilestoreCsiDriverConfig", "GkeBackupAgentConfig", "GcsFuseCsiDriverConfig", "StatefulHaConfig", "ParallelstoreCsiDriverConfig", "RayOperatorConfig", "HighScaleCheckpointingConfig", "LustreCsiDriverConfig", "SliceControllerConfig" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.HttpLoadBalancing), global::Google.Cloud.Container.V1.HttpLoadBalancing.Parser, new[]{ "Disabled" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.HorizontalPodAutoscaling), global::Google.Cloud.Container.V1.HorizontalPodAutoscaling.Parser, new[]{ "Disabled" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.KubernetesDashboard), global::Google.Cloud.Container.V1.KubernetesDashboard.Parser, new[]{ "Disabled" }, null, null, null, null), @@ -1640,6 +1750,7 @@ static ClusterServiceReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ParallelstoreCsiDriverConfig), global::Google.Cloud.Container.V1.ParallelstoreCsiDriverConfig.Parser, new[]{ "Enabled" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.HighScaleCheckpointingConfig), global::Google.Cloud.Container.V1.HighScaleCheckpointingConfig.Parser, new[]{ "Enabled" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.LustreCsiDriverConfig), global::Google.Cloud.Container.V1.LustreCsiDriverConfig.Parser, new[]{ "Enabled", "EnableLegacyLustrePort" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.SliceControllerConfig), global::Google.Cloud.Container.V1.SliceControllerConfig.Parser, new[]{ "Enabled" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.RayOperatorConfig), global::Google.Cloud.Container.V1.RayOperatorConfig.Parser, new[]{ "Enabled", "RayClusterLoggingConfig", "RayClusterMonitoringConfig" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.GkeBackupAgentConfig), global::Google.Cloud.Container.V1.GkeBackupAgentConfig.Parser, new[]{ "Enabled" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.StatefulHAConfig), global::Google.Cloud.Container.V1.StatefulHAConfig.Parser, new[]{ "Enabled" }, null, null, null, null), @@ -1649,9 +1760,9 @@ static ClusterServiceReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.BinaryAuthorization), global::Google.Cloud.Container.V1.BinaryAuthorization.Parser, new[]{ "Enabled", "EvaluationMode" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.BinaryAuthorization.Types.EvaluationMode) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.PodCIDROverprovisionConfig), global::Google.Cloud.Container.V1.PodCIDROverprovisionConfig.Parser, new[]{ "Disable" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.IPAllocationPolicy), global::Google.Cloud.Container.V1.IPAllocationPolicy.Parser, new[]{ "UseIpAliases", "CreateSubnetwork", "SubnetworkName", "ClusterIpv4Cidr", "NodeIpv4Cidr", "ServicesIpv4Cidr", "ClusterSecondaryRangeName", "ServicesSecondaryRangeName", "ClusterIpv4CidrBlock", "NodeIpv4CidrBlock", "ServicesIpv4CidrBlock", "TpuIpv4CidrBlock", "UseRoutes", "StackType", "Ipv6AccessType", "PodCidrOverprovisionConfig", "SubnetIpv6CidrBlock", "ServicesIpv6CidrBlock", "AdditionalPodRangesConfig", "DefaultPodIpv4RangeUtilization", "AdditionalIpRangesConfigs", "AutoIpamConfig", "NetworkTierConfig" }, null, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.Cluster), global::Google.Cloud.Container.V1.Cluster.Parser, new[]{ "Name", "Description", "InitialNodeCount", "NodeConfig", "MasterAuth", "LoggingService", "MonitoringService", "Network", "ClusterIpv4Cidr", "AddonsConfig", "Subnetwork", "NodePools", "Locations", "EnableKubernetesAlpha", "AlphaClusterFeatureGates", "ResourceLabels", "LabelFingerprint", "LegacyAbac", "NetworkPolicy", "IpAllocationPolicy", "MasterAuthorizedNetworksConfig", "MaintenancePolicy", "BinaryAuthorization", "Autoscaling", "NetworkConfig", "DefaultMaxPodsConstraint", "ResourceUsageExportConfig", "AuthenticatorGroupsConfig", "PrivateClusterConfig", "DatabaseEncryption", "VerticalPodAutoscaling", "ShieldedNodes", "ReleaseChannel", "WorkloadIdentityConfig", "MeshCertificates", "CostManagementConfig", "NotificationConfig", "ConfidentialNodes", "IdentityServiceConfig", "SelfLink", "Zone", "Endpoint", "InitialClusterVersion", "CurrentMasterVersion", "CurrentNodeVersion", "CreateTime", "Status", "StatusMessage", "NodeIpv4CidrSize", "ServicesIpv4Cidr", "InstanceGroupUrls", "CurrentNodeCount", "ExpireTime", "Location", "EnableTpu", "TpuIpv4CidrBlock", "Conditions", "Autopilot", "Id", "NodePoolDefaults", "LoggingConfig", "MonitoringConfig", "NodePoolAutoConfig", "PodAutoscaling", "Etag", "Fleet", "SecurityPostureConfig", "ControlPlaneEndpointsConfig", "EnableK8SBetaApis", "EnterpriseConfig", "SecretManagerConfig", "CompliancePostureConfig", "SatisfiesPzs", "SatisfiesPzi", "UserManagedKeysConfig", "RbacBindingConfig", "GkeAutoUpgradeConfig", "AnonymousAuthenticationConfig" }, new[]{ "NodePoolDefaults", "SatisfiesPzs", "SatisfiesPzi", "UserManagedKeysConfig", "RbacBindingConfig" }, new[]{ typeof(global::Google.Cloud.Container.V1.Cluster.Types.Status) }, null, new pbr::GeneratedClrTypeInfo[] { null, }), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.Cluster), global::Google.Cloud.Container.V1.Cluster.Parser, new[]{ "Name", "Description", "InitialNodeCount", "NodeConfig", "MasterAuth", "LoggingService", "MonitoringService", "Network", "ClusterIpv4Cidr", "AddonsConfig", "Subnetwork", "NodePools", "Locations", "EnableKubernetesAlpha", "AlphaClusterFeatureGates", "ResourceLabels", "LabelFingerprint", "LegacyAbac", "NetworkPolicy", "IpAllocationPolicy", "MasterAuthorizedNetworksConfig", "MaintenancePolicy", "BinaryAuthorization", "Autoscaling", "NetworkConfig", "DefaultMaxPodsConstraint", "ResourceUsageExportConfig", "AuthenticatorGroupsConfig", "PrivateClusterConfig", "DatabaseEncryption", "VerticalPodAutoscaling", "ShieldedNodes", "ReleaseChannel", "WorkloadIdentityConfig", "MeshCertificates", "CostManagementConfig", "NotificationConfig", "ConfidentialNodes", "IdentityServiceConfig", "SelfLink", "Zone", "Endpoint", "InitialClusterVersion", "CurrentMasterVersion", "CurrentNodeVersion", "CreateTime", "Status", "StatusMessage", "NodeIpv4CidrSize", "ServicesIpv4Cidr", "InstanceGroupUrls", "CurrentNodeCount", "ExpireTime", "Location", "EnableTpu", "TpuIpv4CidrBlock", "Conditions", "Autopilot", "Id", "NodePoolDefaults", "LoggingConfig", "MonitoringConfig", "NodePoolAutoConfig", "PodAutoscaling", "Etag", "Fleet", "SecurityPostureConfig", "ControlPlaneEndpointsConfig", "EnableK8SBetaApis", "EnterpriseConfig", "SecretManagerConfig", "CompliancePostureConfig", "SatisfiesPzs", "SatisfiesPzi", "UserManagedKeysConfig", "RbacBindingConfig", "GkeAutoUpgradeConfig", "AnonymousAuthenticationConfig", "ManagedOpentelemetryConfig" }, new[]{ "NodePoolDefaults", "SatisfiesPzs", "SatisfiesPzi", "UserManagedKeysConfig", "RbacBindingConfig" }, new[]{ typeof(global::Google.Cloud.Container.V1.Cluster.Types.Status) }, null, new pbr::GeneratedClrTypeInfo[] { null, }), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.RBACBindingConfig), global::Google.Cloud.Container.V1.RBACBindingConfig.Parser, new[]{ "EnableInsecureBindingSystemUnauthenticated", "EnableInsecureBindingSystemAuthenticated" }, new[]{ "EnableInsecureBindingSystemUnauthenticated", "EnableInsecureBindingSystemAuthenticated" }, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.UserManagedKeysConfig), global::Google.Cloud.Container.V1.UserManagedKeysConfig.Parser, new[]{ "ClusterCa", "EtcdApiCa", "EtcdPeerCa", "ServiceAccountSigningKeys", "ServiceAccountVerificationKeys", "AggregationCa", "ControlPlaneDiskEncryptionKey", "GkeopsEtcdBackupEncryptionKey" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.UserManagedKeysConfig), global::Google.Cloud.Container.V1.UserManagedKeysConfig.Parser, new[]{ "ClusterCa", "EtcdApiCa", "EtcdPeerCa", "ServiceAccountSigningKeys", "ServiceAccountVerificationKeys", "AggregationCa", "ControlPlaneDiskEncryptionKey", "ControlPlaneDiskEncryptionKeyVersions", "GkeopsEtcdBackupEncryptionKey" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.AnonymousAuthenticationConfig), global::Google.Cloud.Container.V1.AnonymousAuthenticationConfig.Parser, new[]{ "Mode" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.AnonymousAuthenticationConfig.Types.Mode) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.CompliancePostureConfig), global::Google.Cloud.Container.V1.CompliancePostureConfig.Parser, new[]{ "Mode", "ComplianceStandards" }, new[]{ "Mode" }, new[]{ typeof(global::Google.Cloud.Container.V1.CompliancePostureConfig.Types.Mode) }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.CompliancePostureConfig.Types.ComplianceStandard), global::Google.Cloud.Container.V1.CompliancePostureConfig.Types.ComplianceStandard.Parser, new[]{ "Standard" }, new[]{ "Standard" }, null, null, null)}), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.K8sBetaAPIConfig), global::Google.Cloud.Container.V1.K8sBetaAPIConfig.Parser, new[]{ "EnabledApis" }, null, null, null, null), @@ -1659,9 +1770,9 @@ static ClusterServiceReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodePoolAutoConfig), global::Google.Cloud.Container.V1.NodePoolAutoConfig.Parser, new[]{ "NetworkTags", "ResourceManagerTags", "NodeKubeletConfig", "LinuxNodeConfig" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodePoolDefaults), global::Google.Cloud.Container.V1.NodePoolDefaults.Parser, new[]{ "NodeConfigDefaults" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodeConfigDefaults), global::Google.Cloud.Container.V1.NodeConfigDefaults.Parser, new[]{ "GcfsConfig", "LoggingConfig", "ContainerdConfig", "NodeKubeletConfig" }, null, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ClusterUpdate), global::Google.Cloud.Container.V1.ClusterUpdate.Parser, new[]{ "DesiredNodeVersion", "DesiredMonitoringService", "DesiredAddonsConfig", "DesiredNodePoolId", "DesiredImageType", "DesiredDatabaseEncryption", "DesiredWorkloadIdentityConfig", "DesiredMeshCertificates", "DesiredShieldedNodes", "DesiredCostManagementConfig", "DesiredDnsConfig", "DesiredNodePoolAutoscaling", "DesiredLocations", "DesiredMasterAuthorizedNetworksConfig", "DesiredClusterAutoscaling", "DesiredBinaryAuthorization", "DesiredLoggingService", "DesiredResourceUsageExportConfig", "DesiredVerticalPodAutoscaling", "DesiredPrivateClusterConfig", "DesiredIntraNodeVisibilityConfig", "DesiredDefaultSnatStatus", "DesiredReleaseChannel", "DesiredL4IlbSubsettingConfig", "DesiredDatapathProvider", "DesiredPrivateIpv6GoogleAccess", "DesiredNotificationConfig", "DesiredAuthenticatorGroupsConfig", "DesiredLoggingConfig", "DesiredMonitoringConfig", "DesiredIdentityServiceConfig", "DesiredServiceExternalIpsConfig", "DesiredEnablePrivateEndpoint", "DesiredDefaultEnablePrivateNodes", "DesiredControlPlaneEndpointsConfig", "DesiredMasterVersion", "DesiredGcfsConfig", "DesiredNodePoolAutoConfigNetworkTags", "DesiredPodAutoscaling", "DesiredGatewayApiConfig", "Etag", "DesiredNodePoolLoggingConfig", "DesiredFleet", "DesiredStackType", "AdditionalPodRangesConfig", "RemovedAdditionalPodRangesConfig", "EnableK8SBetaApis", "DesiredSecurityPostureConfig", "DesiredNetworkPerformanceConfig", "DesiredEnableFqdnNetworkPolicy", "DesiredAutopilotWorkloadPolicyConfig", "DesiredK8SBetaApis", "DesiredContainerdConfig", "DesiredEnableMultiNetworking", "DesiredNodePoolAutoConfigResourceManagerTags", "DesiredInTransitEncryptionConfig", "DesiredEnableCiliumClusterwideNetworkPolicy", "DesiredSecretManagerConfig", "DesiredCompliancePostureConfig", "DesiredNodeKubeletConfig", "DesiredNodePoolAutoConfigKubeletConfig", "UserManagedKeysConfig", "DesiredRbacBindingConfig", "DesiredAdditionalIpRangesConfig", "DesiredEnterpriseConfig", "DesiredAutoIpamConfig", "DesiredDisableL4LbFirewallReconciliation", "DesiredNodePoolAutoConfigLinuxNodeConfig", "DesiredUserManagedKeysConfig", "DesiredAnonymousAuthenticationConfig", "GkeAutoUpgradeConfig", "DesiredNetworkTierConfig" }, new[]{ "DesiredEnablePrivateEndpoint", "DesiredDefaultEnablePrivateNodes", "DesiredEnableFqdnNetworkPolicy", "DesiredEnableMultiNetworking", "DesiredInTransitEncryptionConfig", "DesiredEnableCiliumClusterwideNetworkPolicy", "DesiredSecretManagerConfig", "DesiredCompliancePostureConfig", "DesiredRbacBindingConfig", "DesiredDisableL4LbFirewallReconciliation" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ClusterUpdate), global::Google.Cloud.Container.V1.ClusterUpdate.Parser, new[]{ "DesiredNodeVersion", "DesiredMonitoringService", "DesiredAddonsConfig", "DesiredNodePoolId", "DesiredImageType", "DesiredDatabaseEncryption", "DesiredWorkloadIdentityConfig", "DesiredMeshCertificates", "DesiredShieldedNodes", "DesiredCostManagementConfig", "DesiredDnsConfig", "DesiredNodePoolAutoscaling", "DesiredLocations", "DesiredMasterAuthorizedNetworksConfig", "DesiredClusterAutoscaling", "DesiredBinaryAuthorization", "DesiredLoggingService", "DesiredResourceUsageExportConfig", "DesiredVerticalPodAutoscaling", "DesiredPrivateClusterConfig", "DesiredIntraNodeVisibilityConfig", "DesiredDefaultSnatStatus", "DesiredReleaseChannel", "DesiredL4IlbSubsettingConfig", "DesiredDatapathProvider", "DesiredPrivateIpv6GoogleAccess", "DesiredNotificationConfig", "DesiredAuthenticatorGroupsConfig", "DesiredLoggingConfig", "DesiredMonitoringConfig", "DesiredIdentityServiceConfig", "DesiredServiceExternalIpsConfig", "DesiredEnablePrivateEndpoint", "DesiredDefaultEnablePrivateNodes", "DesiredControlPlaneEndpointsConfig", "DesiredMasterVersion", "DesiredGcfsConfig", "DesiredNodePoolAutoConfigNetworkTags", "DesiredPodAutoscaling", "DesiredGatewayApiConfig", "Etag", "DesiredNodePoolLoggingConfig", "DesiredFleet", "DesiredStackType", "AdditionalPodRangesConfig", "RemovedAdditionalPodRangesConfig", "EnableK8SBetaApis", "DesiredSecurityPostureConfig", "DesiredNetworkPerformanceConfig", "DesiredEnableFqdnNetworkPolicy", "DesiredAutopilotWorkloadPolicyConfig", "DesiredK8SBetaApis", "DesiredContainerdConfig", "DesiredEnableMultiNetworking", "DesiredNodePoolAutoConfigResourceManagerTags", "DesiredInTransitEncryptionConfig", "DesiredEnableCiliumClusterwideNetworkPolicy", "DesiredSecretManagerConfig", "DesiredCompliancePostureConfig", "DesiredNodeKubeletConfig", "DesiredNodePoolAutoConfigKubeletConfig", "UserManagedKeysConfig", "DesiredRbacBindingConfig", "DesiredAdditionalIpRangesConfig", "DesiredEnterpriseConfig", "DesiredAutoIpamConfig", "DesiredDisableL4LbFirewallReconciliation", "DesiredNodePoolAutoConfigLinuxNodeConfig", "DesiredUserManagedKeysConfig", "DesiredAnonymousAuthenticationConfig", "GkeAutoUpgradeConfig", "DesiredNetworkTierConfig", "DesiredPrivilegedAdmissionConfig", "DesiredManagedOpentelemetryConfig" }, new[]{ "DesiredEnablePrivateEndpoint", "DesiredDefaultEnablePrivateNodes", "DesiredEnableFqdnNetworkPolicy", "DesiredEnableMultiNetworking", "DesiredInTransitEncryptionConfig", "DesiredEnableCiliumClusterwideNetworkPolicy", "DesiredSecretManagerConfig", "DesiredCompliancePostureConfig", "DesiredRbacBindingConfig", "DesiredDisableL4LbFirewallReconciliation" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.AdditionalPodRangesConfig), global::Google.Cloud.Container.V1.AdditionalPodRangesConfig.Parser, new[]{ "PodRangeNames", "PodRangeInfo" }, null, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.AdditionalIPRangesConfig), global::Google.Cloud.Container.V1.AdditionalIPRangesConfig.Parser, new[]{ "Subnetwork", "PodIpv4RangeNames" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.AdditionalIPRangesConfig), global::Google.Cloud.Container.V1.AdditionalIPRangesConfig.Parser, new[]{ "Subnetwork", "PodIpv4RangeNames", "Status" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.AdditionalIPRangesConfig.Types.Status) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.DesiredAdditionalIPRangesConfig), global::Google.Cloud.Container.V1.DesiredAdditionalIPRangesConfig.Parser, new[]{ "AdditionalIpRangesConfigs" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.AutoIpamConfig), global::Google.Cloud.Container.V1.AutoIpamConfig.Parser, new[]{ "Enabled" }, new[]{ "Enabled" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.RangeInfo), global::Google.Cloud.Container.V1.RangeInfo.Parser, new[]{ "RangeName", "Utilization" }, null, null, null, null), @@ -1671,7 +1782,7 @@ static ClusterServiceReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.CreateClusterRequest), global::Google.Cloud.Container.V1.CreateClusterRequest.Parser, new[]{ "ProjectId", "Zone", "Cluster", "Parent" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.GetClusterRequest), global::Google.Cloud.Container.V1.GetClusterRequest.Parser, new[]{ "ProjectId", "Zone", "ClusterId", "Name" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.UpdateClusterRequest), global::Google.Cloud.Container.V1.UpdateClusterRequest.Parser, new[]{ "ProjectId", "Zone", "ClusterId", "Update", "Name" }, null, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.UpdateNodePoolRequest), global::Google.Cloud.Container.V1.UpdateNodePoolRequest.Parser, new[]{ "ProjectId", "Zone", "ClusterId", "NodePoolId", "NodeVersion", "ImageType", "Name", "Locations", "WorkloadMetadataConfig", "UpgradeSettings", "Tags", "Taints", "Labels", "LinuxNodeConfig", "KubeletConfig", "NodeNetworkConfig", "GcfsConfig", "ConfidentialNodes", "Gvnic", "Etag", "FastSocket", "LoggingConfig", "ResourceLabels", "WindowsNodeConfig", "Accelerators", "MachineType", "DiskType", "DiskSizeGb", "ResourceManagerTags", "ContainerdConfig", "QueuedProvisioning", "StoragePools", "MaxRunDuration", "FlexStart", "BootDisk" }, new[]{ "FlexStart" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.UpdateNodePoolRequest), global::Google.Cloud.Container.V1.UpdateNodePoolRequest.Parser, new[]{ "ProjectId", "Zone", "ClusterId", "NodePoolId", "NodeVersion", "ImageType", "Name", "Locations", "WorkloadMetadataConfig", "UpgradeSettings", "Tags", "Taints", "Labels", "LinuxNodeConfig", "KubeletConfig", "NodeNetworkConfig", "GcfsConfig", "ConfidentialNodes", "Gvnic", "Etag", "FastSocket", "LoggingConfig", "ResourceLabels", "WindowsNodeConfig", "Accelerators", "MachineType", "DiskType", "DiskSizeGb", "ResourceManagerTags", "ContainerdConfig", "QueuedProvisioning", "StoragePools", "MaxRunDuration", "FlexStart", "BootDisk", "NodeDrainConfig", "ConsolidationDelay" }, new[]{ "FlexStart" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.SetNodePoolAutoscalingRequest), global::Google.Cloud.Container.V1.SetNodePoolAutoscalingRequest.Parser, new[]{ "ProjectId", "Zone", "ClusterId", "NodePoolId", "Autoscaling", "Name" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.SetLoggingServiceRequest), global::Google.Cloud.Container.V1.SetLoggingServiceRequest.Parser, new[]{ "ProjectId", "Zone", "ClusterId", "LoggingService", "Name" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.SetMonitoringServiceRequest), global::Google.Cloud.Container.V1.SetMonitoringServiceRequest.Parser, new[]{ "ProjectId", "Zone", "ClusterId", "MonitoringService", "Name" }, null, null, null, null), @@ -1694,10 +1805,11 @@ static ClusterServiceReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.GetNodePoolRequest), global::Google.Cloud.Container.V1.GetNodePoolRequest.Parser, new[]{ "ProjectId", "Zone", "ClusterId", "NodePoolId", "Name" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.BlueGreenSettings), global::Google.Cloud.Container.V1.BlueGreenSettings.Parser, new[]{ "StandardRolloutPolicy", "AutoscaledRolloutPolicy", "NodePoolSoakDuration" }, new[]{ "RolloutPolicy", "NodePoolSoakDuration" }, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.BlueGreenSettings.Types.StandardRolloutPolicy), global::Google.Cloud.Container.V1.BlueGreenSettings.Types.StandardRolloutPolicy.Parser, new[]{ "BatchPercentage", "BatchNodeCount", "BatchSoakDuration" }, new[]{ "UpdateBatchSize", "BatchSoakDuration" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.BlueGreenSettings.Types.AutoscaledRolloutPolicy), global::Google.Cloud.Container.V1.BlueGreenSettings.Types.AutoscaledRolloutPolicy.Parser, new[]{ "WaitForDrainDuration" }, null, null, null, null)}), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodePool), global::Google.Cloud.Container.V1.NodePool.Parser, new[]{ "Name", "Config", "InitialNodeCount", "Locations", "NetworkConfig", "SelfLink", "Version", "InstanceGroupUrls", "Status", "StatusMessage", "Autoscaling", "Management", "MaxPodsConstraint", "Conditions", "PodIpv4CidrSize", "UpgradeSettings", "PlacementPolicy", "UpdateInfo", "Etag", "QueuedProvisioning", "BestEffortProvisioning" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.NodePool.Types.Status) }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodePool.Types.UpgradeSettings), global::Google.Cloud.Container.V1.NodePool.Types.UpgradeSettings.Parser, new[]{ "MaxSurge", "MaxUnavailable", "Strategy", "BlueGreenSettings" }, new[]{ "Strategy", "BlueGreenSettings" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodePool), global::Google.Cloud.Container.V1.NodePool.Parser, new[]{ "Name", "Config", "InitialNodeCount", "Locations", "NetworkConfig", "SelfLink", "Version", "InstanceGroupUrls", "Status", "StatusMessage", "Autoscaling", "Management", "MaxPodsConstraint", "Conditions", "PodIpv4CidrSize", "UpgradeSettings", "PlacementPolicy", "UpdateInfo", "Etag", "QueuedProvisioning", "BestEffortProvisioning", "NodeDrainConfig" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.NodePool.Types.Status) }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodePool.Types.UpgradeSettings), global::Google.Cloud.Container.V1.NodePool.Types.UpgradeSettings.Parser, new[]{ "MaxSurge", "MaxUnavailable", "Strategy", "BlueGreenSettings" }, new[]{ "Strategy", "BlueGreenSettings" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodePool.Types.UpdateInfo), global::Google.Cloud.Container.V1.NodePool.Types.UpdateInfo.Parser, new[]{ "BlueGreenInfo" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodePool.Types.UpdateInfo.Types.BlueGreenInfo), global::Google.Cloud.Container.V1.NodePool.Types.UpdateInfo.Types.BlueGreenInfo.Parser, new[]{ "Phase", "BlueInstanceGroupUrls", "GreenInstanceGroupUrls", "BluePoolDeletionStartTime", "GreenPoolVersion" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.NodePool.Types.UpdateInfo.Types.BlueGreenInfo.Types.Phase) }, null, null)}), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodePool.Types.PlacementPolicy), global::Google.Cloud.Container.V1.NodePool.Types.PlacementPolicy.Parser, new[]{ "Type", "TpuTopology", "PolicyName" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.NodePool.Types.PlacementPolicy.Types.Type) }, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodePool.Types.QueuedProvisioning), global::Google.Cloud.Container.V1.NodePool.Types.QueuedProvisioning.Parser, new[]{ "Enabled" }, null, null, null, null)}), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodePool.Types.QueuedProvisioning), global::Google.Cloud.Container.V1.NodePool.Types.QueuedProvisioning.Parser, new[]{ "Enabled" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodePool.Types.NodeDrainConfig), global::Google.Cloud.Container.V1.NodePool.Types.NodeDrainConfig.Parser, new[]{ "RespectPdbDuringNodePoolDeletion" }, new[]{ "RespectPdbDuringNodePoolDeletion" }, null, null, null)}), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodeManagement), global::Google.Cloud.Container.V1.NodeManagement.Parser, new[]{ "AutoUpgrade", "AutoRepair", "UpgradeOptions" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.BestEffortProvisioning), global::Google.Cloud.Container.V1.BestEffortProvisioning.Parser, new[]{ "Enabled", "MinProvisionNodes" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.AutoUpgradeOptions), global::Google.Cloud.Container.V1.AutoUpgradeOptions.Parser, new[]{ "AutoUpgradeStartTime", "Description" }, null, null, null, null), @@ -1712,7 +1824,7 @@ static ClusterServiceReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.CompleteNodePoolUpgradeRequest), global::Google.Cloud.Container.V1.CompleteNodePoolUpgradeRequest.Parser, new[]{ "Name" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.RollbackNodePoolUpgradeRequest), global::Google.Cloud.Container.V1.RollbackNodePoolUpgradeRequest.Parser, new[]{ "ProjectId", "Zone", "ClusterId", "NodePoolId", "Name", "RespectPdb" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ListNodePoolsResponse), global::Google.Cloud.Container.V1.ListNodePoolsResponse.Parser, new[]{ "NodePools" }, null, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ClusterAutoscaling), global::Google.Cloud.Container.V1.ClusterAutoscaling.Parser, new[]{ "EnableNodeAutoprovisioning", "ResourceLimits", "AutoscalingProfile", "AutoprovisioningNodePoolDefaults", "AutoprovisioningLocations", "DefaultComputeClassConfig" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.ClusterAutoscaling.Types.AutoscalingProfile) }, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ClusterAutoscaling), global::Google.Cloud.Container.V1.ClusterAutoscaling.Parser, new[]{ "EnableNodeAutoprovisioning", "ResourceLimits", "AutoscalingProfile", "AutoprovisioningNodePoolDefaults", "AutoprovisioningLocations", "DefaultComputeClassConfig", "AutopilotGeneralProfile" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.ClusterAutoscaling.Types.AutoscalingProfile), typeof(global::Google.Cloud.Container.V1.ClusterAutoscaling.Types.AutopilotGeneralProfile) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.AutoprovisioningNodePoolDefaults), global::Google.Cloud.Container.V1.AutoprovisioningNodePoolDefaults.Parser, new[]{ "OauthScopes", "ServiceAccount", "UpgradeSettings", "Management", "MinCpuPlatform", "DiskSizeGb", "DiskType", "ShieldedInstanceConfig", "BootDiskKmsKey", "ImageType", "InsecureKubeletReadonlyPortEnabled" }, new[]{ "InsecureKubeletReadonlyPortEnabled" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ResourceLimit), global::Google.Cloud.Container.V1.ResourceLimit.Parser, new[]{ "ResourceType", "Minimum", "Maximum" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.DefaultComputeClassConfig), global::Google.Cloud.Container.V1.DefaultComputeClassConfig.Parser, new[]{ "Enabled" }, null, null, null, null), @@ -1760,11 +1872,13 @@ static ClusterServiceReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ShieldedNodes), global::Google.Cloud.Container.V1.ShieldedNodes.Parser, new[]{ "Enabled" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.VirtualNIC), global::Google.Cloud.Container.V1.VirtualNIC.Parser, new[]{ "Enabled" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.FastSocket), global::Google.Cloud.Container.V1.FastSocket.Parser, new[]{ "Enabled" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.GPUDirectConfig), global::Google.Cloud.Container.V1.GPUDirectConfig.Parser, new[]{ "GpuDirectStrategy" }, new[]{ "GpuDirectStrategy" }, new[]{ typeof(global::Google.Cloud.Container.V1.GPUDirectConfig.Types.GPUDirectStrategy) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NotificationConfig), global::Google.Cloud.Container.V1.NotificationConfig.Parser, new[]{ "Pubsub" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.NotificationConfig.Types.EventType) }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NotificationConfig.Types.PubSub), global::Google.Cloud.Container.V1.NotificationConfig.Types.PubSub.Parser, new[]{ "Enabled", "Topic", "Filter" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NotificationConfig.Types.Filter), global::Google.Cloud.Container.V1.NotificationConfig.Types.Filter.Parser, new[]{ "EventType" }, null, null, null, null)}), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ConfidentialNodes), global::Google.Cloud.Container.V1.ConfidentialNodes.Parser, new[]{ "Enabled", "ConfidentialInstanceType" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.ConfidentialNodes.Types.ConfidentialInstanceType) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.UpgradeEvent), global::Google.Cloud.Container.V1.UpgradeEvent.Parser, new[]{ "ResourceType", "Operation", "OperationStartTime", "CurrentVersion", "TargetVersion", "Resource" }, null, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.UpgradeInfoEvent), global::Google.Cloud.Container.V1.UpgradeInfoEvent.Parser, new[]{ "ResourceType", "Operation", "StartTime", "EndTime", "CurrentVersion", "TargetVersion", "Resource", "State", "StandardSupportEndTime", "ExtendedSupportEndTime", "Description", "EventType" }, new[]{ "StandardSupportEndTime", "ExtendedSupportEndTime" }, new[]{ typeof(global::Google.Cloud.Container.V1.UpgradeInfoEvent.Types.State), typeof(global::Google.Cloud.Container.V1.UpgradeInfoEvent.Types.EventType) }, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.UpgradeInfoEvent), global::Google.Cloud.Container.V1.UpgradeInfoEvent.Parser, new[]{ "ResourceType", "Operation", "StartTime", "EndTime", "CurrentVersion", "TargetVersion", "Resource", "State", "StandardSupportEndTime", "ExtendedSupportEndTime", "Description", "EventType", "DisruptionEvent" }, new[]{ "StandardSupportEndTime", "ExtendedSupportEndTime", "DisruptionEvent" }, new[]{ typeof(global::Google.Cloud.Container.V1.UpgradeInfoEvent.Types.State), typeof(global::Google.Cloud.Container.V1.UpgradeInfoEvent.Types.EventType) }, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.DisruptionEvent), global::Google.Cloud.Container.V1.DisruptionEvent.Parser, new[]{ "DisruptionType", "PdbBlockedNode", "PdbBlockedPod", "PdbViolationTimeout" }, new[]{ "PdbViolationTimeout" }, new[]{ typeof(global::Google.Cloud.Container.V1.DisruptionEvent.Types.DisruptionType) }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.DisruptionEvent.Types.PdbBlockedPod), global::Google.Cloud.Container.V1.DisruptionEvent.Types.PdbBlockedPod.Parser, new[]{ "Namespace", "Name" }, null, null, null, null)}), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.UpgradeAvailableEvent), global::Google.Cloud.Container.V1.UpgradeAvailableEvent.Parser, new[]{ "Version", "ResourceType", "ReleaseChannel", "Resource" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.SecurityBulletinEvent), global::Google.Cloud.Container.V1.SecurityBulletinEvent.Parser, new[]{ "ResourceTypeAffected", "BulletinId", "CveIds", "Severity", "BulletinUri", "BriefDescription", "AffectedSupportedMinors", "PatchedVersions", "SuggestedUpgradeTarget", "ManualStepsRequired", "MitigatedVersions" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.Autopilot), global::Google.Cloud.Container.V1.Autopilot.Parser, new[]{ "Enabled", "WorkloadPolicyConfig", "PrivilegedAdmissionConfig" }, null, null, null, null), @@ -1799,7 +1913,8 @@ static ClusterServiceReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.FetchNodePoolUpgradeInfoRequest), global::Google.Cloud.Container.V1.FetchNodePoolUpgradeInfoRequest.Parser, new[]{ "Name", "Version" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NodePoolUpgradeInfo), global::Google.Cloud.Container.V1.NodePoolUpgradeInfo.Parser, new[]{ "MinorTargetVersion", "PatchTargetVersion", "AutoUpgradeStatus", "PausedReason", "UpgradeDetails", "EndOfStandardSupportTimestamp", "EndOfExtendedSupportTimestamp" }, new[]{ "MinorTargetVersion", "PatchTargetVersion", "EndOfStandardSupportTimestamp", "EndOfExtendedSupportTimestamp" }, new[]{ typeof(global::Google.Cloud.Container.V1.NodePoolUpgradeInfo.Types.AutoUpgradeStatus), typeof(global::Google.Cloud.Container.V1.NodePoolUpgradeInfo.Types.AutoUpgradePausedReason) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.GkeAutoUpgradeConfig), global::Google.Cloud.Container.V1.GkeAutoUpgradeConfig.Parser, new[]{ "PatchMode" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.GkeAutoUpgradeConfig.Types.PatchMode) }, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NetworkTierConfig), global::Google.Cloud.Container.V1.NetworkTierConfig.Parser, new[]{ "NetworkTier" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.NetworkTierConfig.Types.NetworkTier) }, null, null) + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.NetworkTierConfig), global::Google.Cloud.Container.V1.NetworkTierConfig.Parser, new[]{ "NetworkTier" }, null, new[]{ typeof(global::Google.Cloud.Container.V1.NetworkTierConfig.Types.NetworkTier) }, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig), global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig.Parser, new[]{ "Scope" }, new[]{ "Scope" }, new[]{ typeof(global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig.Types.Scope) }, null, null) })); } #endregion @@ -1888,6 +2003,12 @@ public enum NodePoolUpdateStrategy { /// max_surge and max_unavailable determines the level of upgrade parallelism. /// [pbr::OriginalName("SURGE")] Surge = 3, + /// + /// SHORT_LIVED is the dedicated upgrade strategy for + /// QueuedProvisioning and flex start nodepools scaled up only by enqueueing to + /// the Dynamic Workload Scheduler (DWS). + /// + [pbr::OriginalName("SHORT_LIVED")] ShortLived = 5, } /// @@ -1991,6 +2112,7 @@ public LinuxNodeConfig(LinuxNodeConfig other) : this() { hugepages_ = other.hugepages_ != null ? other.hugepages_.Clone() : null; transparentHugepageEnabled_ = other.transparentHugepageEnabled_; transparentHugepageDefrag_ = other.transparentHugepageDefrag_; + swapConfig_ = other.swapConfig_ != null ? other.swapConfig_.Clone() : null; nodeKernelModuleLoading_ = other.nodeKernelModuleLoading_ != null ? other.nodeKernelModuleLoading_.Clone() : null; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } @@ -2024,7 +2146,12 @@ public LinuxNodeConfig Clone() { /// net.ipv4.tcp_rmem /// net.ipv4.tcp_wmem /// net.ipv4.tcp_tw_reuse + /// net.ipv4.tcp_mtu_probing /// net.ipv4.tcp_max_orphans + /// net.ipv4.tcp_max_tw_buckets + /// net.ipv4.tcp_syn_retries + /// net.ipv4.tcp_ecn + /// net.ipv4.tcp_congestion_control /// net.netfilter.nf_conntrack_max /// net.netfilter.nf_conntrack_buckets /// net.netfilter.nf_conntrack_tcp_timeout_close_wait @@ -2034,14 +2161,23 @@ public LinuxNodeConfig Clone() { /// kernel.shmmni /// kernel.shmmax /// kernel.shmall + /// kernel.perf_event_paranoid + /// kernel.sched_rt_runtime_us + /// kernel.softlockup_panic + /// kernel.yama.ptrace_scope + /// kernel.kptr_restrict + /// kernel.dmesg_restrict + /// kernel.sysrq /// fs.aio-max-nr /// fs.file-max /// fs.inotify.max_user_instances /// fs.inotify.max_user_watches /// fs.nr_open /// vm.dirty_background_ratio + /// vm.dirty_background_bytes /// vm.dirty_expire_centisecs /// vm.dirty_ratio + /// vm.dirty_bytes /// vm.dirty_writeback_centisecs /// vm.max_map_count /// vm.overcommit_memory @@ -2129,6 +2265,22 @@ public LinuxNodeConfig Clone() { } } + /// Field number for the "swap_config" field. + public const int SwapConfigFieldNumber = 12; + private global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig swapConfig_; + /// + /// Optional. Enables and configures swap space on nodes. + /// If omitted, swap is disabled. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig SwapConfig { + get { return swapConfig_; } + set { + swapConfig_ = value; + } + } + /// Field number for the "node_kernel_module_loading" field. public const int NodeKernelModuleLoadingFieldNumber = 13; private global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading nodeKernelModuleLoading_; @@ -2166,6 +2318,7 @@ public bool Equals(LinuxNodeConfig other) { if (!object.Equals(Hugepages, other.Hugepages)) return false; if (TransparentHugepageEnabled != other.TransparentHugepageEnabled) return false; if (TransparentHugepageDefrag != other.TransparentHugepageDefrag) return false; + if (!object.Equals(SwapConfig, other.SwapConfig)) return false; if (!object.Equals(NodeKernelModuleLoading, other.NodeKernelModuleLoading)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -2179,6 +2332,7 @@ public override int GetHashCode() { if (hugepages_ != null) hash ^= Hugepages.GetHashCode(); if (TransparentHugepageEnabled != global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.TransparentHugepageEnabled.Unspecified) hash ^= TransparentHugepageEnabled.GetHashCode(); if (TransparentHugepageDefrag != global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.TransparentHugepageDefrag.Unspecified) hash ^= TransparentHugepageDefrag.GetHashCode(); + if (swapConfig_ != null) hash ^= SwapConfig.GetHashCode(); if (nodeKernelModuleLoading_ != null) hash ^= NodeKernelModuleLoading.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); @@ -2215,6 +2369,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(40); output.WriteEnum((int) TransparentHugepageDefrag); } + if (swapConfig_ != null) { + output.WriteRawTag(98); + output.WriteMessage(SwapConfig); + } if (nodeKernelModuleLoading_ != null) { output.WriteRawTag(106); output.WriteMessage(NodeKernelModuleLoading); @@ -2246,6 +2404,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(40); output.WriteEnum((int) TransparentHugepageDefrag); } + if (swapConfig_ != null) { + output.WriteRawTag(98); + output.WriteMessage(SwapConfig); + } if (nodeKernelModuleLoading_ != null) { output.WriteRawTag(106); output.WriteMessage(NodeKernelModuleLoading); @@ -2273,6 +2435,9 @@ public int CalculateSize() { if (TransparentHugepageDefrag != global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.TransparentHugepageDefrag.Unspecified) { size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) TransparentHugepageDefrag); } + if (swapConfig_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(SwapConfig); + } if (nodeKernelModuleLoading_ != null) { size += 1 + pb::CodedOutputStream.ComputeMessageSize(NodeKernelModuleLoading); } @@ -2304,6 +2469,12 @@ public void MergeFrom(LinuxNodeConfig other) { if (other.TransparentHugepageDefrag != global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.TransparentHugepageDefrag.Unspecified) { TransparentHugepageDefrag = other.TransparentHugepageDefrag; } + if (other.swapConfig_ != null) { + if (swapConfig_ == null) { + SwapConfig = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig(); + } + SwapConfig.MergeFrom(other.SwapConfig); + } if (other.nodeKernelModuleLoading_ != null) { if (nodeKernelModuleLoading_ == null) { NodeKernelModuleLoading = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading(); @@ -2348,6 +2519,13 @@ public void MergeFrom(pb::CodedInputStream input) { TransparentHugepageDefrag = (global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.TransparentHugepageDefrag) input.ReadEnum(); break; } + case 98: { + if (swapConfig_ == null) { + SwapConfig = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig(); + } + input.ReadMessage(SwapConfig); + break; + } case 106: { if (nodeKernelModuleLoading_ == null) { NodeKernelModuleLoading = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading(); @@ -2393,6 +2571,13 @@ public void MergeFrom(pb::CodedInputStream input) { TransparentHugepageDefrag = (global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.TransparentHugepageDefrag) input.ReadEnum(); break; } + case 98: { + if (swapConfig_ == null) { + SwapConfig = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig(); + } + input.ReadMessage(SwapConfig); + break; + } case 106: { if (nodeKernelModuleLoading_ == null) { NodeKernelModuleLoading = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading(); @@ -2765,19 +2950,20 @@ public void MergeFrom(pb::CodedInputStream input) { } /// - /// Configuration for kernel module loading on nodes. + /// Configuration for swap memory on a node pool. /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class NodeKernelModuleLoading : pb::IMessage + public sealed partial class SwapConfig : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new NodeKernelModuleLoading()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SwapConfig()); private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -2793,7 +2979,7 @@ public sealed partial class NodeKernelModuleLoading : pb::IMessageField number for the "policy" field. - public const int PolicyFieldNumber = 1; - private global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy policy_ = global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy.Unspecified; + /// Field number for the "enabled" field. + public const int EnabledFieldNumber = 1; + private readonly static bool EnabledDefaultValue = false; + + private bool enabled_; /// - /// Set the node module loading policy for nodes in the node pool. + /// Optional. Enables or disables swap for the node pool. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy Policy { - get { return policy_; } + public bool Enabled { + get { if ((_hasBits0 & 1) != 0) { return enabled_; } else { return EnabledDefaultValue; } } set { - policy_ = value; + _hasBits0 |= 1; + enabled_ = value; + } + } + /// Gets whether the "enabled" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasEnabled { + get { return (_hasBits0 & 1) != 0; } + } + /// Clears the value of the "enabled" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearEnabled() { + _hasBits0 &= ~1; + } + + /// Field number for the "encryption_config" field. + public const int EncryptionConfigFieldNumber = 2; + private global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EncryptionConfig encryptionConfig_; + /// + /// Optional. If omitted, swap space is encrypted by default. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EncryptionConfig EncryptionConfig { + get { return encryptionConfig_; } + set { + encryptionConfig_ = value; + } + } + + /// Field number for the "boot_disk_profile" field. + public const int BootDiskProfileFieldNumber = 3; + /// + /// Swap on the node's boot disk. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.BootDiskProfile BootDiskProfile { + get { return performanceProfileCase_ == PerformanceProfileOneofCase.BootDiskProfile ? (global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.BootDiskProfile) performanceProfile_ : null; } + set { + performanceProfile_ = value; + performanceProfileCase_ = value == null ? PerformanceProfileOneofCase.None : PerformanceProfileOneofCase.BootDiskProfile; + } + } + + /// Field number for the "ephemeral_local_ssd_profile" field. + public const int EphemeralLocalSsdProfileFieldNumber = 4; + /// + /// Swap on the local SSD shared with pod ephemeral storage. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EphemeralLocalSsdProfile EphemeralLocalSsdProfile { + get { return performanceProfileCase_ == PerformanceProfileOneofCase.EphemeralLocalSsdProfile ? (global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EphemeralLocalSsdProfile) performanceProfile_ : null; } + set { + performanceProfile_ = value; + performanceProfileCase_ = value == null ? PerformanceProfileOneofCase.None : PerformanceProfileOneofCase.EphemeralLocalSsdProfile; + } + } + + /// Field number for the "dedicated_local_ssd_profile" field. + public const int DedicatedLocalSsdProfileFieldNumber = 5; + /// + /// Provisions a new, separate local NVMe SSD exclusively for swap. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.DedicatedLocalSsdProfile DedicatedLocalSsdProfile { + get { return performanceProfileCase_ == PerformanceProfileOneofCase.DedicatedLocalSsdProfile ? (global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.DedicatedLocalSsdProfile) performanceProfile_ : null; } + set { + performanceProfile_ = value; + performanceProfileCase_ = value == null ? PerformanceProfileOneofCase.None : PerformanceProfileOneofCase.DedicatedLocalSsdProfile; } } + private object performanceProfile_; + /// Enum of possible cases for the "performance_profile" oneof. + public enum PerformanceProfileOneofCase { + None = 0, + BootDiskProfile = 3, + EphemeralLocalSsdProfile = 4, + DedicatedLocalSsdProfile = 5, + } + private PerformanceProfileOneofCase performanceProfileCase_ = PerformanceProfileOneofCase.None; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public PerformanceProfileOneofCase PerformanceProfileCase { + get { return performanceProfileCase_; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearPerformanceProfile() { + performanceProfileCase_ = PerformanceProfileOneofCase.None; + performanceProfile_ = null; + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as NodeKernelModuleLoading); + return Equals(other as SwapConfig); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(NodeKernelModuleLoading other) { + public bool Equals(SwapConfig other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (Policy != other.Policy) return false; + if (Enabled != other.Enabled) return false; + if (!object.Equals(EncryptionConfig, other.EncryptionConfig)) return false; + if (!object.Equals(BootDiskProfile, other.BootDiskProfile)) return false; + if (!object.Equals(EphemeralLocalSsdProfile, other.EphemeralLocalSsdProfile)) return false; + if (!object.Equals(DedicatedLocalSsdProfile, other.DedicatedLocalSsdProfile)) return false; + if (PerformanceProfileCase != other.PerformanceProfileCase) return false; return Equals(_unknownFields, other._unknownFields); } @@ -2850,7 +3152,12 @@ public bool Equals(NodeKernelModuleLoading other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (Policy != global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy.Unspecified) hash ^= Policy.GetHashCode(); + if (HasEnabled) hash ^= Enabled.GetHashCode(); + if (encryptionConfig_ != null) hash ^= EncryptionConfig.GetHashCode(); + if (performanceProfileCase_ == PerformanceProfileOneofCase.BootDiskProfile) hash ^= BootDiskProfile.GetHashCode(); + if (performanceProfileCase_ == PerformanceProfileOneofCase.EphemeralLocalSsdProfile) hash ^= EphemeralLocalSsdProfile.GetHashCode(); + if (performanceProfileCase_ == PerformanceProfileOneofCase.DedicatedLocalSsdProfile) hash ^= DedicatedLocalSsdProfile.GetHashCode(); + hash ^= (int) performanceProfileCase_; if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -2869,9 +3176,25 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (Policy != global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy.Unspecified) { + if (HasEnabled) { output.WriteRawTag(8); - output.WriteEnum((int) Policy); + output.WriteBool(Enabled); + } + if (encryptionConfig_ != null) { + output.WriteRawTag(18); + output.WriteMessage(EncryptionConfig); + } + if (performanceProfileCase_ == PerformanceProfileOneofCase.BootDiskProfile) { + output.WriteRawTag(26); + output.WriteMessage(BootDiskProfile); + } + if (performanceProfileCase_ == PerformanceProfileOneofCase.EphemeralLocalSsdProfile) { + output.WriteRawTag(34); + output.WriteMessage(EphemeralLocalSsdProfile); + } + if (performanceProfileCase_ == PerformanceProfileOneofCase.DedicatedLocalSsdProfile) { + output.WriteRawTag(42); + output.WriteMessage(DedicatedLocalSsdProfile); } if (_unknownFields != null) { _unknownFields.WriteTo(output); @@ -2883,9 +3206,25 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (Policy != global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy.Unspecified) { + if (HasEnabled) { output.WriteRawTag(8); - output.WriteEnum((int) Policy); + output.WriteBool(Enabled); + } + if (encryptionConfig_ != null) { + output.WriteRawTag(18); + output.WriteMessage(EncryptionConfig); + } + if (performanceProfileCase_ == PerformanceProfileOneofCase.BootDiskProfile) { + output.WriteRawTag(26); + output.WriteMessage(BootDiskProfile); + } + if (performanceProfileCase_ == PerformanceProfileOneofCase.EphemeralLocalSsdProfile) { + output.WriteRawTag(34); + output.WriteMessage(EphemeralLocalSsdProfile); + } + if (performanceProfileCase_ == PerformanceProfileOneofCase.DedicatedLocalSsdProfile) { + output.WriteRawTag(42); + output.WriteMessage(DedicatedLocalSsdProfile); } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); @@ -2897,8 +3236,20 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (Policy != global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy.Unspecified) { - size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Policy); + if (HasEnabled) { + size += 1 + 1; + } + if (encryptionConfig_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(EncryptionConfig); + } + if (performanceProfileCase_ == PerformanceProfileOneofCase.BootDiskProfile) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(BootDiskProfile); + } + if (performanceProfileCase_ == PerformanceProfileOneofCase.EphemeralLocalSsdProfile) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(EphemeralLocalSsdProfile); + } + if (performanceProfileCase_ == PerformanceProfileOneofCase.DedicatedLocalSsdProfile) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(DedicatedLocalSsdProfile); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -2908,13 +3259,40 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(NodeKernelModuleLoading other) { + public void MergeFrom(SwapConfig other) { if (other == null) { return; } - if (other.Policy != global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy.Unspecified) { - Policy = other.Policy; + if (other.HasEnabled) { + Enabled = other.Enabled; + } + if (other.encryptionConfig_ != null) { + if (encryptionConfig_ == null) { + EncryptionConfig = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EncryptionConfig(); + } + EncryptionConfig.MergeFrom(other.EncryptionConfig); + } + switch (other.PerformanceProfileCase) { + case PerformanceProfileOneofCase.BootDiskProfile: + if (BootDiskProfile == null) { + BootDiskProfile = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.BootDiskProfile(); + } + BootDiskProfile.MergeFrom(other.BootDiskProfile); + break; + case PerformanceProfileOneofCase.EphemeralLocalSsdProfile: + if (EphemeralLocalSsdProfile == null) { + EphemeralLocalSsdProfile = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EphemeralLocalSsdProfile(); + } + EphemeralLocalSsdProfile.MergeFrom(other.EphemeralLocalSsdProfile); + break; + case PerformanceProfileOneofCase.DedicatedLocalSsdProfile: + if (DedicatedLocalSsdProfile == null) { + DedicatedLocalSsdProfile = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.DedicatedLocalSsdProfile(); + } + DedicatedLocalSsdProfile.MergeFrom(other.DedicatedLocalSsdProfile); + break; } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -2931,7 +3309,41 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 8: { - Policy = (global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy) input.ReadEnum(); + Enabled = input.ReadBool(); + break; + } + case 18: { + if (encryptionConfig_ == null) { + EncryptionConfig = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EncryptionConfig(); + } + input.ReadMessage(EncryptionConfig); + break; + } + case 26: { + global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.BootDiskProfile subBuilder = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.BootDiskProfile(); + if (performanceProfileCase_ == PerformanceProfileOneofCase.BootDiskProfile) { + subBuilder.MergeFrom(BootDiskProfile); + } + input.ReadMessage(subBuilder); + BootDiskProfile = subBuilder; + break; + } + case 34: { + global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EphemeralLocalSsdProfile subBuilder = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EphemeralLocalSsdProfile(); + if (performanceProfileCase_ == PerformanceProfileOneofCase.EphemeralLocalSsdProfile) { + subBuilder.MergeFrom(EphemeralLocalSsdProfile); + } + input.ReadMessage(subBuilder); + EphemeralLocalSsdProfile = subBuilder; + break; + } + case 42: { + global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.DedicatedLocalSsdProfile subBuilder = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.DedicatedLocalSsdProfile(); + if (performanceProfileCase_ == PerformanceProfileOneofCase.DedicatedLocalSsdProfile) { + subBuilder.MergeFrom(DedicatedLocalSsdProfile); + } + input.ReadMessage(subBuilder); + DedicatedLocalSsdProfile = subBuilder; break; } } @@ -2950,7 +3362,41 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; case 8: { - Policy = (global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy) input.ReadEnum(); + Enabled = input.ReadBool(); + break; + } + case 18: { + if (encryptionConfig_ == null) { + EncryptionConfig = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EncryptionConfig(); + } + input.ReadMessage(EncryptionConfig); + break; + } + case 26: { + global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.BootDiskProfile subBuilder = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.BootDiskProfile(); + if (performanceProfileCase_ == PerformanceProfileOneofCase.BootDiskProfile) { + subBuilder.MergeFrom(BootDiskProfile); + } + input.ReadMessage(subBuilder); + BootDiskProfile = subBuilder; + break; + } + case 34: { + global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EphemeralLocalSsdProfile subBuilder = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.EphemeralLocalSsdProfile(); + if (performanceProfileCase_ == PerformanceProfileOneofCase.EphemeralLocalSsdProfile) { + subBuilder.MergeFrom(EphemeralLocalSsdProfile); + } + input.ReadMessage(subBuilder); + EphemeralLocalSsdProfile = subBuilder; + break; + } + case 42: { + global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.DedicatedLocalSsdProfile subBuilder = new global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Types.DedicatedLocalSsdProfile(); + if (performanceProfileCase_ == PerformanceProfileOneofCase.DedicatedLocalSsdProfile) { + subBuilder.MergeFrom(DedicatedLocalSsdProfile); + } + input.ReadMessage(subBuilder); + DedicatedLocalSsdProfile = subBuilder; break; } } @@ -2959,823 +3405,4237 @@ public void MergeFrom(pb::CodedInputStream input) { #endif #region Nested types - /// Container for nested types declared in the NodeKernelModuleLoading message type. + /// Container for nested types declared in the SwapConfig message type. [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static partial class Types { /// - /// Defines the kernel module loading policy for nodes in the nodepool. + /// Defines encryption settings for the swap space. /// - public enum Policy { - /// - /// Default behavior. GKE selects the image based on node type. - /// For CPU and TPU nodes, the image will not allow loading external - /// kernel modules. - /// For GPU nodes, the image will allow loading any module, whether it - /// is signed or not. - /// - [pbr::OriginalName("POLICY_UNSPECIFIED")] Unspecified = 0, - /// - /// Enforced signature verification: Node pools will use a - /// Container-Optimized OS image configured to allow loading of - /// *Google-signed* external kernel modules. - /// Loadpin is enabled but configured to exclude modules, and kernel - /// module signature checking is enforced. - /// - [pbr::OriginalName("ENFORCE_SIGNED_MODULES")] EnforceSignedModules = 1, - /// - /// Mirrors existing DEFAULT behavior: - /// For CPU and TPU nodes, the image will not allow loading external - /// kernel modules. - /// For GPU nodes, the image will allow loading any module, whether it - /// is signed or not. - /// - [pbr::OriginalName("DO_NOT_ENFORCE_SIGNED_MODULES")] DoNotEnforceSignedModules = 2, - } + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class EncryptionConfig : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new EncryptionConfig()); + private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } - } - #endregion + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Descriptor.NestedTypes[0]; } + } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } - } - #endregion + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public EncryptionConfig() { + OnConstruction(); + } - } + partial void OnConstruction(); - /// - /// Parameters that can be configured on Windows nodes. - /// Windows Node Config that define the parameters that will be used to - /// configure the Windows node pool settings. - /// - [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class WindowsNodeConfig : pb::IMessage - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - , pb::IBufferMessage - #endif - { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new WindowsNodeConfig()); - private pb::UnknownFieldSet _unknownFields; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public EncryptionConfig(EncryptionConfig other) : this() { + _hasBits0 = other._hasBits0; + disabled_ = other.disabled_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[1]; } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public EncryptionConfig Clone() { + return new EncryptionConfig(this); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - pbr::MessageDescriptor pb::IMessage.Descriptor { - get { return Descriptor; } - } + /// Field number for the "disabled" field. + public const int DisabledFieldNumber = 1; + private readonly static bool DisabledDefaultValue = false; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public WindowsNodeConfig() { - OnConstruction(); - } + private bool disabled_; + /// + /// Optional. If true, swap space will not be encrypted. + /// Defaults to false (encrypted). + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Disabled { + get { if ((_hasBits0 & 1) != 0) { return disabled_; } else { return DisabledDefaultValue; } } + set { + _hasBits0 |= 1; + disabled_ = value; + } + } + /// Gets whether the "disabled" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasDisabled { + get { return (_hasBits0 & 1) != 0; } + } + /// Clears the value of the "disabled" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearDisabled() { + _hasBits0 &= ~1; + } - partial void OnConstruction(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as EncryptionConfig); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public WindowsNodeConfig(WindowsNodeConfig other) : this() { - osVersion_ = other.osVersion_; - _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(EncryptionConfig other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (Disabled != other.Disabled) return false; + return Equals(_unknownFields, other._unknownFields); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public WindowsNodeConfig Clone() { - return new WindowsNodeConfig(this); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (HasDisabled) hash ^= Disabled.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } - /// Field number for the "os_version" field. - public const int OsVersionFieldNumber = 1; - private global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion osVersion_ = global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion.Unspecified; - /// - /// OSVersion specifies the Windows node config to be used on the node. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion OsVersion { - get { return osVersion_; } - set { - osVersion_ = value; - } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override bool Equals(object other) { - return Equals(other as WindowsNodeConfig); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (HasDisabled) { + output.WriteRawTag(8); + output.WriteBool(Disabled); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(WindowsNodeConfig other) { - if (ReferenceEquals(other, null)) { - return false; - } - if (ReferenceEquals(other, this)) { - return true; - } - if (OsVersion != other.OsVersion) return false; - return Equals(_unknownFields, other._unknownFields); - } + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (HasDisabled) { + output.WriteRawTag(8); + output.WriteBool(Disabled); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override int GetHashCode() { - int hash = 1; - if (OsVersion != global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion.Unspecified) hash ^= OsVersion.GetHashCode(); - if (_unknownFields != null) { - hash ^= _unknownFields.GetHashCode(); - } - return hash; - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (HasDisabled) { + size += 1 + 1; + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override string ToString() { - return pb::JsonFormatter.ToDiagnosticString(this); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(EncryptionConfig other) { + if (other == null) { + return; + } + if (other.HasDisabled) { + Disabled = other.Disabled; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void WriteTo(pb::CodedOutputStream output) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - output.WriteRawMessage(this); - #else - if (OsVersion != global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion.Unspecified) { - output.WriteRawTag(8); - output.WriteEnum((int) OsVersion); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(output); - } - #endif - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + Disabled = input.ReadBool(); + break; + } + } + } + #endif + } - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (OsVersion != global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion.Unspecified) { - output.WriteRawTag(8); - output.WriteEnum((int) OsVersion); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(ref output); - } - } - #endif + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + Disabled = input.ReadBool(); + break; + } + } + } + } + #endif - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int CalculateSize() { - int size = 0; - if (OsVersion != global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion.Unspecified) { - size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) OsVersion); - } - if (_unknownFields != null) { - size += _unknownFields.CalculateSize(); - } - return size; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(WindowsNodeConfig other) { - if (other == null) { - return; - } - if (other.OsVersion != global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion.Unspecified) { - OsVersion = other.OsVersion; - } - _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(pb::CodedInputStream input) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - input.ReadRawMessage(this); - #else - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); - break; - case 8: { - OsVersion = (global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion) input.ReadEnum(); - break; } - } - } - #endif - } - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); - break; - case 8: { - OsVersion = (global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion) input.ReadEnum(); - break; - } - } - } - } - #endif + /// + /// Swap on the node's boot disk. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class BootDiskProfile : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new BootDiskProfile()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } - #region Nested types - /// Container for nested types declared in the WindowsNodeConfig message type. - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static partial class Types { - /// - /// Possible OS version that can be used. - /// - public enum OSVersion { - /// - /// When OSVersion is not specified. - /// - [pbr::OriginalName("OS_VERSION_UNSPECIFIED")] Unspecified = 0, - /// - /// LTSC2019 specifies to use LTSC2019 as the Windows Servercore Base Image. - /// - [pbr::OriginalName("OS_VERSION_LTSC2019")] Ltsc2019 = 1, - /// - /// LTSC2022 specifies to use LTSC2022 as the Windows Servercore Base Image. - /// - [pbr::OriginalName("OS_VERSION_LTSC2022")] Ltsc2022 = 2, - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Descriptor.NestedTypes[1]; } + } - } - #endregion + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public BootDiskProfile() { + OnConstruction(); + } - /// - /// Node kubelet configs. - /// - [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class NodeKubeletConfig : pb::IMessage - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - , pb::IBufferMessage - #endif - { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new NodeKubeletConfig()); - private pb::UnknownFieldSet _unknownFields; - private int _hasBits0; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + partial void OnConstruction(); - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[2]; } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public BootDiskProfile(BootDiskProfile other) : this() { + switch (other.SwapSizeCase) { + case SwapSizeOneofCase.SwapSizeGib: + SwapSizeGib = other.SwapSizeGib; + break; + case SwapSizeOneofCase.SwapSizePercent: + SwapSizePercent = other.SwapSizePercent; + break; + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - pbr::MessageDescriptor pb::IMessage.Descriptor { - get { return Descriptor; } - } + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public NodeKubeletConfig() { - OnConstruction(); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public BootDiskProfile Clone() { + return new BootDiskProfile(this); + } - partial void OnConstruction(); + /// Field number for the "swap_size_gib" field. + public const int SwapSizeGibFieldNumber = 1; + /// + /// Specifies the size of the swap space in gibibytes (GiB). + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public long SwapSizeGib { + get { return HasSwapSizeGib ? (long) swapSize_ : 0L; } + set { + swapSize_ = value; + swapSizeCase_ = SwapSizeOneofCase.SwapSizeGib; + } + } + /// Gets whether the "swap_size_gib" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasSwapSizeGib { + get { return swapSizeCase_ == SwapSizeOneofCase.SwapSizeGib; } + } + /// Clears the value of the oneof if it's currently set to "swap_size_gib" + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearSwapSizeGib() { + if (HasSwapSizeGib) { + ClearSwapSize(); + } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public NodeKubeletConfig(NodeKubeletConfig other) : this() { - _hasBits0 = other._hasBits0; - cpuManagerPolicy_ = other.cpuManagerPolicy_; - topologyManager_ = other.topologyManager_ != null ? other.topologyManager_.Clone() : null; - memoryManager_ = other.memoryManager_ != null ? other.memoryManager_.Clone() : null; - CpuCfsQuota = other.CpuCfsQuota; - cpuCfsQuotaPeriod_ = other.cpuCfsQuotaPeriod_; - podPidsLimit_ = other.podPidsLimit_; - insecureKubeletReadonlyPortEnabled_ = other.insecureKubeletReadonlyPortEnabled_; - imageGcLowThresholdPercent_ = other.imageGcLowThresholdPercent_; - imageGcHighThresholdPercent_ = other.imageGcHighThresholdPercent_; - imageMinimumGcAge_ = other.imageMinimumGcAge_; - imageMaximumGcAge_ = other.imageMaximumGcAge_; - containerLogMaxSize_ = other.containerLogMaxSize_; - containerLogMaxFiles_ = other.containerLogMaxFiles_; - allowedUnsafeSysctls_ = other.allowedUnsafeSysctls_.Clone(); - evictionSoft_ = other.evictionSoft_ != null ? other.evictionSoft_.Clone() : null; - evictionSoftGracePeriod_ = other.evictionSoftGracePeriod_ != null ? other.evictionSoftGracePeriod_.Clone() : null; - evictionMinimumReclaim_ = other.evictionMinimumReclaim_ != null ? other.evictionMinimumReclaim_.Clone() : null; - evictionMaxPodGracePeriodSeconds_ = other.evictionMaxPodGracePeriodSeconds_; - maxParallelImagePulls_ = other.maxParallelImagePulls_; - singleProcessOomKill_ = other.singleProcessOomKill_; - _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); - } + /// Field number for the "swap_size_percent" field. + public const int SwapSizePercentFieldNumber = 2; + /// + /// Specifies the size of the swap space as a percentage of the boot disk + /// size. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int SwapSizePercent { + get { return HasSwapSizePercent ? (int) swapSize_ : 0; } + set { + swapSize_ = value; + swapSizeCase_ = SwapSizeOneofCase.SwapSizePercent; + } + } + /// Gets whether the "swap_size_percent" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasSwapSizePercent { + get { return swapSizeCase_ == SwapSizeOneofCase.SwapSizePercent; } + } + /// Clears the value of the oneof if it's currently set to "swap_size_percent" + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearSwapSizePercent() { + if (HasSwapSizePercent) { + ClearSwapSize(); + } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public NodeKubeletConfig Clone() { - return new NodeKubeletConfig(this); - } + private object swapSize_; + /// Enum of possible cases for the "swap_size" oneof. + public enum SwapSizeOneofCase { + None = 0, + SwapSizeGib = 1, + SwapSizePercent = 2, + } + private SwapSizeOneofCase swapSizeCase_ = SwapSizeOneofCase.None; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SwapSizeOneofCase SwapSizeCase { + get { return swapSizeCase_; } + } - /// Field number for the "cpu_manager_policy" field. - public const int CpuManagerPolicyFieldNumber = 1; - private string cpuManagerPolicy_ = ""; - /// - /// Control the CPU management policy on the node. - /// See - /// https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/ - /// - /// The following values are allowed. - /// * "none": the default, which represents the existing scheduling behavior. - /// * "static": allows pods with certain resource characteristics to be granted - /// increased CPU affinity and exclusivity on the node. - /// The default value is 'none' if unspecified. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string CpuManagerPolicy { - get { return cpuManagerPolicy_; } - set { - cpuManagerPolicy_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearSwapSize() { + swapSizeCase_ = SwapSizeOneofCase.None; + swapSize_ = null; + } - /// Field number for the "topology_manager" field. - public const int TopologyManagerFieldNumber = 8; - private global::Google.Cloud.Container.V1.TopologyManager topologyManager_; - /// - /// Optional. Controls Topology Manager configuration on the node. - /// For more information, see: - /// https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/ - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.TopologyManager TopologyManager { - get { return topologyManager_; } - set { - topologyManager_ = value; - } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as BootDiskProfile); + } - /// Field number for the "memory_manager" field. - public const int MemoryManagerFieldNumber = 9; - private global::Google.Cloud.Container.V1.MemoryManager memoryManager_; - /// - /// Optional. Controls NUMA-aware Memory Manager configuration on the - /// node. For more information, see: - /// https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/ - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.MemoryManager MemoryManager { - get { return memoryManager_; } - set { - memoryManager_ = value; - } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(BootDiskProfile other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (SwapSizeGib != other.SwapSizeGib) return false; + if (SwapSizePercent != other.SwapSizePercent) return false; + if (SwapSizeCase != other.SwapSizeCase) return false; + return Equals(_unknownFields, other._unknownFields); + } - /// Field number for the "cpu_cfs_quota" field. - public const int CpuCfsQuotaFieldNumber = 2; - private static readonly pb::FieldCodec _single_cpuCfsQuota_codec = pb::FieldCodec.ForStructWrapper(18); - private bool? cpuCfsQuota_; - /// - /// Enable CPU CFS quota enforcement for containers that specify CPU limits. - /// - /// This option is enabled by default which makes kubelet use CFS quota - /// (https://www.kernel.org/doc/Documentation/scheduler/sched-bwc.txt) to - /// enforce container CPU limits. Otherwise, CPU limits will not be enforced at - /// all. - /// - /// Disable this option to mitigate CPU throttling problems while still having - /// your pods to be in Guaranteed QoS class by specifying the CPU limits. - /// - /// The default value is 'true' if unspecified. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool? CpuCfsQuota { - get { return cpuCfsQuota_; } - set { - cpuCfsQuota_ = value; - } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (HasSwapSizeGib) hash ^= SwapSizeGib.GetHashCode(); + if (HasSwapSizePercent) hash ^= SwapSizePercent.GetHashCode(); + hash ^= (int) swapSizeCase_; + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } - /// Field number for the "cpu_cfs_quota_period" field. - public const int CpuCfsQuotaPeriodFieldNumber = 3; - private string cpuCfsQuotaPeriod_ = ""; - /// - /// Set the CPU CFS quota period value 'cpu.cfs_period_us'. - /// - /// The string must be a sequence of decimal numbers, each with optional - /// fraction and a unit suffix, such as "300ms". - /// Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". - /// The value must be a positive duration between 1ms and 1 second, inclusive. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string CpuCfsQuotaPeriod { - get { return cpuCfsQuotaPeriod_; } - set { - cpuCfsQuotaPeriod_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (HasSwapSizeGib) { + output.WriteRawTag(8); + output.WriteInt64(SwapSizeGib); + } + if (HasSwapSizePercent) { + output.WriteRawTag(16); + output.WriteInt32(SwapSizePercent); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } - /// Field number for the "pod_pids_limit" field. - public const int PodPidsLimitFieldNumber = 4; - private long podPidsLimit_; - /// - /// Set the Pod PID limits. See - /// https://kubernetes.io/docs/concepts/policy/pid-limiting/#pod-pid-limits - /// - /// Controls the maximum number of processes allowed to run in a pod. The value - /// must be greater than or equal to 1024 and less than 4194304. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public long PodPidsLimit { - get { return podPidsLimit_; } - set { - podPidsLimit_ = value; - } - } + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (HasSwapSizeGib) { + output.WriteRawTag(8); + output.WriteInt64(SwapSizeGib); + } + if (HasSwapSizePercent) { + output.WriteRawTag(16); + output.WriteInt32(SwapSizePercent); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif - /// Field number for the "insecure_kubelet_readonly_port_enabled" field. - public const int InsecureKubeletReadonlyPortEnabledFieldNumber = 7; - private readonly static bool InsecureKubeletReadonlyPortEnabledDefaultValue = false; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (HasSwapSizeGib) { + size += 1 + pb::CodedOutputStream.ComputeInt64Size(SwapSizeGib); + } + if (HasSwapSizePercent) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(SwapSizePercent); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } - private bool insecureKubeletReadonlyPortEnabled_; - /// - /// Enable or disable Kubelet read only port. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool InsecureKubeletReadonlyPortEnabled { - get { if ((_hasBits0 & 1) != 0) { return insecureKubeletReadonlyPortEnabled_; } else { return InsecureKubeletReadonlyPortEnabledDefaultValue; } } - set { - _hasBits0 |= 1; - insecureKubeletReadonlyPortEnabled_ = value; - } - } - /// Gets whether the "insecure_kubelet_readonly_port_enabled" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasInsecureKubeletReadonlyPortEnabled { - get { return (_hasBits0 & 1) != 0; } - } - /// Clears the value of the "insecure_kubelet_readonly_port_enabled" field - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearInsecureKubeletReadonlyPortEnabled() { - _hasBits0 &= ~1; - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(BootDiskProfile other) { + if (other == null) { + return; + } + switch (other.SwapSizeCase) { + case SwapSizeOneofCase.SwapSizeGib: + SwapSizeGib = other.SwapSizeGib; + break; + case SwapSizeOneofCase.SwapSizePercent: + SwapSizePercent = other.SwapSizePercent; + break; + } - /// Field number for the "image_gc_low_threshold_percent" field. - public const int ImageGcLowThresholdPercentFieldNumber = 10; - private int imageGcLowThresholdPercent_; - /// - /// Optional. Defines the percent of disk usage before which image garbage - /// collection is never run. Lowest disk usage to garbage collect to. The - /// percent is calculated as this field value out of 100. - /// - /// The value must be between 10 and 85, inclusive and smaller than - /// image_gc_high_threshold_percent. - /// - /// The default value is 80 if unspecified. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int ImageGcLowThresholdPercent { - get { return imageGcLowThresholdPercent_; } - set { - imageGcLowThresholdPercent_ = value; - } - } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } - /// Field number for the "image_gc_high_threshold_percent" field. - public const int ImageGcHighThresholdPercentFieldNumber = 11; - private int imageGcHighThresholdPercent_; - /// - /// Optional. Defines the percent of disk usage after which image garbage - /// collection is always run. The percent is calculated as this field value out - /// of 100. - /// - /// The value must be between 10 and 85, inclusive and greater than - /// image_gc_low_threshold_percent. - /// - /// The default value is 85 if unspecified. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int ImageGcHighThresholdPercent { - get { return imageGcHighThresholdPercent_; } - set { - imageGcHighThresholdPercent_ = value; - } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + SwapSizeGib = input.ReadInt64(); + break; + } + case 16: { + SwapSizePercent = input.ReadInt32(); + break; + } + } + } + #endif + } - /// Field number for the "image_minimum_gc_age" field. - public const int ImageMinimumGcAgeFieldNumber = 12; - private string imageMinimumGcAge_ = ""; - /// - /// Optional. Defines the minimum age for an unused image before it is garbage - /// collected. - /// - /// The string must be a sequence of decimal numbers, each with optional - /// fraction and a unit suffix, such as "300s", "1.5h", and "2h45m". Valid time - /// units are "ns", "us" (or "µs"), "ms", "s", "m", "h". - /// - /// The value must be a positive duration less than or equal to 2 minutes. - /// - /// The default value is "2m0s" if unspecified. + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + SwapSizeGib = input.ReadInt64(); + break; + } + case 16: { + SwapSizePercent = input.ReadInt32(); + break; + } + } + } + } + #endif + + } + + /// + /// Swap on the local SSD shared with pod ephemeral storage. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class EphemeralLocalSsdProfile : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new EphemeralLocalSsdProfile()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Descriptor.NestedTypes[2]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public EphemeralLocalSsdProfile() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public EphemeralLocalSsdProfile(EphemeralLocalSsdProfile other) : this() { + switch (other.SwapSizeCase) { + case SwapSizeOneofCase.SwapSizeGib: + SwapSizeGib = other.SwapSizeGib; + break; + case SwapSizeOneofCase.SwapSizePercent: + SwapSizePercent = other.SwapSizePercent; + break; + } + + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public EphemeralLocalSsdProfile Clone() { + return new EphemeralLocalSsdProfile(this); + } + + /// Field number for the "swap_size_gib" field. + public const int SwapSizeGibFieldNumber = 1; + /// + /// Specifies the size of the swap space in gibibytes (GiB). + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public long SwapSizeGib { + get { return HasSwapSizeGib ? (long) swapSize_ : 0L; } + set { + swapSize_ = value; + swapSizeCase_ = SwapSizeOneofCase.SwapSizeGib; + } + } + /// Gets whether the "swap_size_gib" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasSwapSizeGib { + get { return swapSizeCase_ == SwapSizeOneofCase.SwapSizeGib; } + } + /// Clears the value of the oneof if it's currently set to "swap_size_gib" + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearSwapSizeGib() { + if (HasSwapSizeGib) { + ClearSwapSize(); + } + } + + /// Field number for the "swap_size_percent" field. + public const int SwapSizePercentFieldNumber = 2; + /// + /// Specifies the size of the swap space as a percentage of the ephemeral + /// local SSD capacity. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int SwapSizePercent { + get { return HasSwapSizePercent ? (int) swapSize_ : 0; } + set { + swapSize_ = value; + swapSizeCase_ = SwapSizeOneofCase.SwapSizePercent; + } + } + /// Gets whether the "swap_size_percent" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasSwapSizePercent { + get { return swapSizeCase_ == SwapSizeOneofCase.SwapSizePercent; } + } + /// Clears the value of the oneof if it's currently set to "swap_size_percent" + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearSwapSizePercent() { + if (HasSwapSizePercent) { + ClearSwapSize(); + } + } + + private object swapSize_; + /// Enum of possible cases for the "swap_size" oneof. + public enum SwapSizeOneofCase { + None = 0, + SwapSizeGib = 1, + SwapSizePercent = 2, + } + private SwapSizeOneofCase swapSizeCase_ = SwapSizeOneofCase.None; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SwapSizeOneofCase SwapSizeCase { + get { return swapSizeCase_; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearSwapSize() { + swapSizeCase_ = SwapSizeOneofCase.None; + swapSize_ = null; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as EphemeralLocalSsdProfile); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(EphemeralLocalSsdProfile other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (SwapSizeGib != other.SwapSizeGib) return false; + if (SwapSizePercent != other.SwapSizePercent) return false; + if (SwapSizeCase != other.SwapSizeCase) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (HasSwapSizeGib) hash ^= SwapSizeGib.GetHashCode(); + if (HasSwapSizePercent) hash ^= SwapSizePercent.GetHashCode(); + hash ^= (int) swapSizeCase_; + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (HasSwapSizeGib) { + output.WriteRawTag(8); + output.WriteInt64(SwapSizeGib); + } + if (HasSwapSizePercent) { + output.WriteRawTag(16); + output.WriteInt32(SwapSizePercent); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (HasSwapSizeGib) { + output.WriteRawTag(8); + output.WriteInt64(SwapSizeGib); + } + if (HasSwapSizePercent) { + output.WriteRawTag(16); + output.WriteInt32(SwapSizePercent); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (HasSwapSizeGib) { + size += 1 + pb::CodedOutputStream.ComputeInt64Size(SwapSizeGib); + } + if (HasSwapSizePercent) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(SwapSizePercent); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(EphemeralLocalSsdProfile other) { + if (other == null) { + return; + } + switch (other.SwapSizeCase) { + case SwapSizeOneofCase.SwapSizeGib: + SwapSizeGib = other.SwapSizeGib; + break; + case SwapSizeOneofCase.SwapSizePercent: + SwapSizePercent = other.SwapSizePercent; + break; + } + + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + SwapSizeGib = input.ReadInt64(); + break; + } + case 16: { + SwapSizePercent = input.ReadInt32(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + SwapSizeGib = input.ReadInt64(); + break; + } + case 16: { + SwapSizePercent = input.ReadInt32(); + break; + } + } + } + } + #endif + + } + + /// + /// Provisions a new, separate local NVMe SSD exclusively for swap. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class DedicatedLocalSsdProfile : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new DedicatedLocalSsdProfile()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.SwapConfig.Descriptor.NestedTypes[3]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public DedicatedLocalSsdProfile() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public DedicatedLocalSsdProfile(DedicatedLocalSsdProfile other) : this() { + diskCount_ = other.diskCount_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public DedicatedLocalSsdProfile Clone() { + return new DedicatedLocalSsdProfile(this); + } + + /// Field number for the "disk_count" field. + public const int DiskCountFieldNumber = 1; + private long diskCount_; + /// + /// The number of physical local NVMe SSD disks to attach. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public long DiskCount { + get { return diskCount_; } + set { + diskCount_ = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as DedicatedLocalSsdProfile); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(DedicatedLocalSsdProfile other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (DiskCount != other.DiskCount) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (DiskCount != 0L) hash ^= DiskCount.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (DiskCount != 0L) { + output.WriteRawTag(8); + output.WriteInt64(DiskCount); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (DiskCount != 0L) { + output.WriteRawTag(8); + output.WriteInt64(DiskCount); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (DiskCount != 0L) { + size += 1 + pb::CodedOutputStream.ComputeInt64Size(DiskCount); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(DedicatedLocalSsdProfile other) { + if (other == null) { + return; + } + if (other.DiskCount != 0L) { + DiskCount = other.DiskCount; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + DiskCount = input.ReadInt64(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + DiskCount = input.ReadInt64(); + break; + } + } + } + } + #endif + + } + + } + #endregion + + } + + /// + /// Configuration for kernel module loading on nodes. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class NodeKernelModuleLoading : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new NodeKernelModuleLoading()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.LinuxNodeConfig.Descriptor.NestedTypes[2]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NodeKernelModuleLoading() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NodeKernelModuleLoading(NodeKernelModuleLoading other) : this() { + policy_ = other.policy_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NodeKernelModuleLoading Clone() { + return new NodeKernelModuleLoading(this); + } + + /// Field number for the "policy" field. + public const int PolicyFieldNumber = 1; + private global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy policy_ = global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy.Unspecified; + /// + /// Set the node module loading policy for nodes in the node pool. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy Policy { + get { return policy_; } + set { + policy_ = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as NodeKernelModuleLoading); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(NodeKernelModuleLoading other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (Policy != other.Policy) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (Policy != global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy.Unspecified) hash ^= Policy.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (Policy != global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy.Unspecified) { + output.WriteRawTag(8); + output.WriteEnum((int) Policy); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (Policy != global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy.Unspecified) { + output.WriteRawTag(8); + output.WriteEnum((int) Policy); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (Policy != global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy.Unspecified) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Policy); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(NodeKernelModuleLoading other) { + if (other == null) { + return; + } + if (other.Policy != global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy.Unspecified) { + Policy = other.Policy; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + Policy = (global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy) input.ReadEnum(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + Policy = (global::Google.Cloud.Container.V1.LinuxNodeConfig.Types.NodeKernelModuleLoading.Types.Policy) input.ReadEnum(); + break; + } + } + } + } + #endif + + #region Nested types + /// Container for nested types declared in the NodeKernelModuleLoading message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// Defines the kernel module loading policy for nodes in the nodepool. + /// + public enum Policy { + /// + /// Default behavior. GKE selects the image based on node type. + /// For CPU and TPU nodes, the image will not allow loading external + /// kernel modules. + /// For GPU nodes, the image will allow loading any module, whether it + /// is signed or not. + /// + [pbr::OriginalName("POLICY_UNSPECIFIED")] Unspecified = 0, + /// + /// Enforced signature verification: Node pools will use a + /// Container-Optimized OS image configured to allow loading of + /// *Google-signed* external kernel modules. + /// Loadpin is enabled but configured to exclude modules, and kernel + /// module signature checking is enforced. + /// + [pbr::OriginalName("ENFORCE_SIGNED_MODULES")] EnforceSignedModules = 1, + /// + /// Mirrors existing DEFAULT behavior: + /// For CPU and TPU nodes, the image will not allow loading external + /// kernel modules. + /// For GPU nodes, the image will allow loading any module, whether it + /// is signed or not. + /// + [pbr::OriginalName("DO_NOT_ENFORCE_SIGNED_MODULES")] DoNotEnforceSignedModules = 2, + } + + } + #endregion + + } + + } + #endregion + + } + + /// + /// Parameters that can be configured on Windows nodes. + /// Windows Node Config that define the parameters that will be used to + /// configure the Windows node pool settings. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class WindowsNodeConfig : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new WindowsNodeConfig()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[1]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public WindowsNodeConfig() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public WindowsNodeConfig(WindowsNodeConfig other) : this() { + osVersion_ = other.osVersion_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public WindowsNodeConfig Clone() { + return new WindowsNodeConfig(this); + } + + /// Field number for the "os_version" field. + public const int OsVersionFieldNumber = 1; + private global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion osVersion_ = global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion.Unspecified; + /// + /// OSVersion specifies the Windows node config to be used on the node. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion OsVersion { + get { return osVersion_; } + set { + osVersion_ = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as WindowsNodeConfig); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(WindowsNodeConfig other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (OsVersion != other.OsVersion) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (OsVersion != global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion.Unspecified) hash ^= OsVersion.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (OsVersion != global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion.Unspecified) { + output.WriteRawTag(8); + output.WriteEnum((int) OsVersion); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (OsVersion != global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion.Unspecified) { + output.WriteRawTag(8); + output.WriteEnum((int) OsVersion); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (OsVersion != global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion.Unspecified) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) OsVersion); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(WindowsNodeConfig other) { + if (other == null) { + return; + } + if (other.OsVersion != global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion.Unspecified) { + OsVersion = other.OsVersion; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + OsVersion = (global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion) input.ReadEnum(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + OsVersion = (global::Google.Cloud.Container.V1.WindowsNodeConfig.Types.OSVersion) input.ReadEnum(); + break; + } + } + } + } + #endif + + #region Nested types + /// Container for nested types declared in the WindowsNodeConfig message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// Possible OS version that can be used. + /// + public enum OSVersion { + /// + /// When OSVersion is not specified. + /// + [pbr::OriginalName("OS_VERSION_UNSPECIFIED")] Unspecified = 0, + /// + /// LTSC2019 specifies to use LTSC2019 as the Windows Servercore Base Image. + /// + [pbr::OriginalName("OS_VERSION_LTSC2019")] Ltsc2019 = 1, + /// + /// LTSC2022 specifies to use LTSC2022 as the Windows Servercore Base Image. + /// + [pbr::OriginalName("OS_VERSION_LTSC2022")] Ltsc2022 = 2, + } + + } + #endregion + + } + + /// + /// Node kubelet configs. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class NodeKubeletConfig : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new NodeKubeletConfig()); + private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[2]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NodeKubeletConfig() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NodeKubeletConfig(NodeKubeletConfig other) : this() { + _hasBits0 = other._hasBits0; + cpuManagerPolicy_ = other.cpuManagerPolicy_; + topologyManager_ = other.topologyManager_ != null ? other.topologyManager_.Clone() : null; + memoryManager_ = other.memoryManager_ != null ? other.memoryManager_.Clone() : null; + CpuCfsQuota = other.CpuCfsQuota; + cpuCfsQuotaPeriod_ = other.cpuCfsQuotaPeriod_; + podPidsLimit_ = other.podPidsLimit_; + insecureKubeletReadonlyPortEnabled_ = other.insecureKubeletReadonlyPortEnabled_; + imageGcLowThresholdPercent_ = other.imageGcLowThresholdPercent_; + imageGcHighThresholdPercent_ = other.imageGcHighThresholdPercent_; + imageMinimumGcAge_ = other.imageMinimumGcAge_; + imageMaximumGcAge_ = other.imageMaximumGcAge_; + containerLogMaxSize_ = other.containerLogMaxSize_; + containerLogMaxFiles_ = other.containerLogMaxFiles_; + allowedUnsafeSysctls_ = other.allowedUnsafeSysctls_.Clone(); + evictionSoft_ = other.evictionSoft_ != null ? other.evictionSoft_.Clone() : null; + evictionSoftGracePeriod_ = other.evictionSoftGracePeriod_ != null ? other.evictionSoftGracePeriod_.Clone() : null; + evictionMinimumReclaim_ = other.evictionMinimumReclaim_ != null ? other.evictionMinimumReclaim_.Clone() : null; + evictionMaxPodGracePeriodSeconds_ = other.evictionMaxPodGracePeriodSeconds_; + maxParallelImagePulls_ = other.maxParallelImagePulls_; + singleProcessOomKill_ = other.singleProcessOomKill_; + shutdownGracePeriodSeconds_ = other.shutdownGracePeriodSeconds_; + shutdownGracePeriodCriticalPodsSeconds_ = other.shutdownGracePeriodCriticalPodsSeconds_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NodeKubeletConfig Clone() { + return new NodeKubeletConfig(this); + } + + /// Field number for the "cpu_manager_policy" field. + public const int CpuManagerPolicyFieldNumber = 1; + private string cpuManagerPolicy_ = ""; + /// + /// Control the CPU management policy on the node. + /// See + /// https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/ + /// + /// The following values are allowed. + /// * "none": the default, which represents the existing scheduling behavior. + /// * "static": allows pods with certain resource characteristics to be granted + /// increased CPU affinity and exclusivity on the node. + /// The default value is 'none' if unspecified. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string CpuManagerPolicy { + get { return cpuManagerPolicy_; } + set { + cpuManagerPolicy_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "topology_manager" field. + public const int TopologyManagerFieldNumber = 8; + private global::Google.Cloud.Container.V1.TopologyManager topologyManager_; + /// + /// Optional. Controls Topology Manager configuration on the node. + /// For more information, see: + /// https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/ + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.TopologyManager TopologyManager { + get { return topologyManager_; } + set { + topologyManager_ = value; + } + } + + /// Field number for the "memory_manager" field. + public const int MemoryManagerFieldNumber = 9; + private global::Google.Cloud.Container.V1.MemoryManager memoryManager_; + /// + /// Optional. Controls NUMA-aware Memory Manager configuration on the + /// node. For more information, see: + /// https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/ + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.MemoryManager MemoryManager { + get { return memoryManager_; } + set { + memoryManager_ = value; + } + } + + /// Field number for the "cpu_cfs_quota" field. + public const int CpuCfsQuotaFieldNumber = 2; + private static readonly pb::FieldCodec _single_cpuCfsQuota_codec = pb::FieldCodec.ForStructWrapper(18); + private bool? cpuCfsQuota_; + /// + /// Enable CPU CFS quota enforcement for containers that specify CPU limits. + /// + /// This option is enabled by default which makes kubelet use CFS quota + /// (https://www.kernel.org/doc/Documentation/scheduler/sched-bwc.txt) to + /// enforce container CPU limits. Otherwise, CPU limits will not be enforced at + /// all. + /// + /// Disable this option to mitigate CPU throttling problems while still having + /// your pods to be in Guaranteed QoS class by specifying the CPU limits. + /// + /// The default value is 'true' if unspecified. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool? CpuCfsQuota { + get { return cpuCfsQuota_; } + set { + cpuCfsQuota_ = value; + } + } + + + /// Field number for the "cpu_cfs_quota_period" field. + public const int CpuCfsQuotaPeriodFieldNumber = 3; + private string cpuCfsQuotaPeriod_ = ""; + /// + /// Set the CPU CFS quota period value 'cpu.cfs_period_us'. + /// + /// The string must be a sequence of decimal numbers, each with optional + /// fraction and a unit suffix, such as "300ms". + /// Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". + /// The value must be a positive duration between 1ms and 1 second, inclusive. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string CpuCfsQuotaPeriod { + get { return cpuCfsQuotaPeriod_; } + set { + cpuCfsQuotaPeriod_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "pod_pids_limit" field. + public const int PodPidsLimitFieldNumber = 4; + private long podPidsLimit_; + /// + /// Set the Pod PID limits. See + /// https://kubernetes.io/docs/concepts/policy/pid-limiting/#pod-pid-limits + /// + /// Controls the maximum number of processes allowed to run in a pod. The value + /// must be greater than or equal to 1024 and less than 4194304. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public long PodPidsLimit { + get { return podPidsLimit_; } + set { + podPidsLimit_ = value; + } + } + + /// Field number for the "insecure_kubelet_readonly_port_enabled" field. + public const int InsecureKubeletReadonlyPortEnabledFieldNumber = 7; + private readonly static bool InsecureKubeletReadonlyPortEnabledDefaultValue = false; + + private bool insecureKubeletReadonlyPortEnabled_; + /// + /// Enable or disable Kubelet read only port. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool InsecureKubeletReadonlyPortEnabled { + get { if ((_hasBits0 & 1) != 0) { return insecureKubeletReadonlyPortEnabled_; } else { return InsecureKubeletReadonlyPortEnabledDefaultValue; } } + set { + _hasBits0 |= 1; + insecureKubeletReadonlyPortEnabled_ = value; + } + } + /// Gets whether the "insecure_kubelet_readonly_port_enabled" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasInsecureKubeletReadonlyPortEnabled { + get { return (_hasBits0 & 1) != 0; } + } + /// Clears the value of the "insecure_kubelet_readonly_port_enabled" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearInsecureKubeletReadonlyPortEnabled() { + _hasBits0 &= ~1; + } + + /// Field number for the "image_gc_low_threshold_percent" field. + public const int ImageGcLowThresholdPercentFieldNumber = 10; + private int imageGcLowThresholdPercent_; + /// + /// Optional. Defines the percent of disk usage before which image garbage + /// collection is never run. Lowest disk usage to garbage collect to. The + /// percent is calculated as this field value out of 100. + /// + /// The value must be between 10 and 85, inclusive and smaller than + /// image_gc_high_threshold_percent. + /// + /// The default value is 80 if unspecified. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int ImageGcLowThresholdPercent { + get { return imageGcLowThresholdPercent_; } + set { + imageGcLowThresholdPercent_ = value; + } + } + + /// Field number for the "image_gc_high_threshold_percent" field. + public const int ImageGcHighThresholdPercentFieldNumber = 11; + private int imageGcHighThresholdPercent_; + /// + /// Optional. Defines the percent of disk usage after which image garbage + /// collection is always run. The percent is calculated as this field value out + /// of 100. + /// + /// The value must be between 10 and 85, inclusive and greater than + /// image_gc_low_threshold_percent. + /// + /// The default value is 85 if unspecified. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int ImageGcHighThresholdPercent { + get { return imageGcHighThresholdPercent_; } + set { + imageGcHighThresholdPercent_ = value; + } + } + + /// Field number for the "image_minimum_gc_age" field. + public const int ImageMinimumGcAgeFieldNumber = 12; + private string imageMinimumGcAge_ = ""; + /// + /// Optional. Defines the minimum age for an unused image before it is garbage + /// collected. + /// + /// The string must be a sequence of decimal numbers, each with optional + /// fraction and a unit suffix, such as "300s", "1.5h", and "2h45m". Valid time + /// units are "ns", "us" (or "µs"), "ms", "s", "m", "h". + /// + /// The value must be a positive duration less than or equal to 2 minutes. + /// + /// The default value is "2m0s" if unspecified. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string ImageMinimumGcAge { + get { return imageMinimumGcAge_; } + set { + imageMinimumGcAge_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "image_maximum_gc_age" field. + public const int ImageMaximumGcAgeFieldNumber = 13; + private string imageMaximumGcAge_ = ""; + /// + /// Optional. Defines the maximum age an image can be unused before it is + /// garbage collected. The string must be a sequence of decimal numbers, each + /// with optional fraction and a unit suffix, such as "300s", "1.5h", and + /// "2h45m". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". + /// + /// The value must be a positive duration greater than image_minimum_gc_age + /// or "0s". + /// + /// The default value is "0s" if unspecified, which disables this field, + /// meaning images won't be garbage collected based on being unused for too + /// long. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string ImageMaximumGcAge { + get { return imageMaximumGcAge_; } + set { + imageMaximumGcAge_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "container_log_max_size" field. + public const int ContainerLogMaxSizeFieldNumber = 14; + private string containerLogMaxSize_ = ""; + /// + /// Optional. Defines the maximum size of the container log file before it is + /// rotated. See + /// https://kubernetes.io/docs/concepts/cluster-administration/logging/#log-rotation + /// + /// Valid format is positive number + unit, e.g. 100Ki, 10Mi. Valid units are + /// Ki, Mi, Gi. + /// The value must be between 10Mi and 500Mi, inclusive. + /// + /// Note that the total container log size (container_log_max_size * + /// container_log_max_files) cannot exceed 1% of the total + /// storage of the node, to avoid disk pressure caused by log files. + /// + /// The default value is 10Mi if unspecified. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string ContainerLogMaxSize { + get { return containerLogMaxSize_; } + set { + containerLogMaxSize_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "container_log_max_files" field. + public const int ContainerLogMaxFilesFieldNumber = 15; + private int containerLogMaxFiles_; + /// + /// Optional. Defines the maximum number of container log files that can be + /// present for a container. See + /// https://kubernetes.io/docs/concepts/cluster-administration/logging/#log-rotation + /// + /// The value must be an integer between 2 and 10, inclusive. + /// The default value is 5 if unspecified. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int ContainerLogMaxFiles { + get { return containerLogMaxFiles_; } + set { + containerLogMaxFiles_ = value; + } + } + + /// Field number for the "allowed_unsafe_sysctls" field. + public const int AllowedUnsafeSysctlsFieldNumber = 16; + private static readonly pb::FieldCodec _repeated_allowedUnsafeSysctls_codec + = pb::FieldCodec.ForString(130); + private readonly pbc::RepeatedField allowedUnsafeSysctls_ = new pbc::RepeatedField(); + /// + /// Optional. Defines a comma-separated allowlist of unsafe sysctls or sysctl + /// patterns (ending in `*`). + /// + /// The unsafe namespaced sysctl groups are `kernel.shm*`, `kernel.msg*`, + /// `kernel.sem`, `fs.mqueue.*`, and `net.*`. Leaving this allowlist empty + /// means they cannot be set on Pods. + /// + /// To allow certain sysctls or sysctl patterns to be set on Pods, list them + /// separated by commas. + /// For example: `kernel.msg*,net.ipv4.route.min_pmtu`. + /// + /// See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ + /// for more details. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField AllowedUnsafeSysctls { + get { return allowedUnsafeSysctls_; } + } + + /// Field number for the "eviction_soft" field. + public const int EvictionSoftFieldNumber = 17; + private global::Google.Cloud.Container.V1.EvictionSignals evictionSoft_; + /// + /// Optional. eviction_soft is a map of signal names to quantities that defines + /// soft eviction thresholds. Each signal is compared to its corresponding + /// threshold to determine if a pod eviction should occur. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.EvictionSignals EvictionSoft { + get { return evictionSoft_; } + set { + evictionSoft_ = value; + } + } + + /// Field number for the "eviction_soft_grace_period" field. + public const int EvictionSoftGracePeriodFieldNumber = 18; + private global::Google.Cloud.Container.V1.EvictionGracePeriod evictionSoftGracePeriod_; + /// + /// Optional. eviction_soft_grace_period is a map of signal names to quantities + /// that defines grace periods for each soft eviction signal. The grace period + /// is the amount of time that a pod must be under pressure before an eviction + /// occurs. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.EvictionGracePeriod EvictionSoftGracePeriod { + get { return evictionSoftGracePeriod_; } + set { + evictionSoftGracePeriod_ = value; + } + } + + /// Field number for the "eviction_minimum_reclaim" field. + public const int EvictionMinimumReclaimFieldNumber = 19; + private global::Google.Cloud.Container.V1.EvictionMinimumReclaim evictionMinimumReclaim_; + /// + /// Optional. eviction_minimum_reclaim is a map of signal names to quantities + /// that defines minimum reclaims, which describe the minimum amount of a given + /// resource the kubelet will reclaim when performing a pod eviction while that + /// resource is under pressure. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.EvictionMinimumReclaim EvictionMinimumReclaim { + get { return evictionMinimumReclaim_; } + set { + evictionMinimumReclaim_ = value; + } + } + + /// Field number for the "eviction_max_pod_grace_period_seconds" field. + public const int EvictionMaxPodGracePeriodSecondsFieldNumber = 20; + private int evictionMaxPodGracePeriodSeconds_; + /// + /// Optional. eviction_max_pod_grace_period_seconds is the maximum allowed + /// grace period (in seconds) to use when terminating pods in response to a + /// soft eviction threshold being met. This value effectively caps the Pod's + /// terminationGracePeriodSeconds value during soft evictions. Default: 0. + /// Range: [0, 300]. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int EvictionMaxPodGracePeriodSeconds { + get { return evictionMaxPodGracePeriodSeconds_; } + set { + evictionMaxPodGracePeriodSeconds_ = value; + } + } + + /// Field number for the "max_parallel_image_pulls" field. + public const int MaxParallelImagePullsFieldNumber = 21; + private int maxParallelImagePulls_; + /// + /// Optional. Defines the maximum number of image pulls in parallel. + /// The range is 2 to 5, inclusive. + /// The default value is 2 or 3 depending on the disk type. + /// + /// See + /// https://kubernetes.io/docs/concepts/containers/images/#maximum-parallel-image-pulls + /// for more details. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int MaxParallelImagePulls { + get { return maxParallelImagePulls_; } + set { + maxParallelImagePulls_ = value; + } + } + + /// Field number for the "single_process_oom_kill" field. + public const int SingleProcessOomKillFieldNumber = 22; + private readonly static bool SingleProcessOomKillDefaultValue = false; + + private bool singleProcessOomKill_; + /// + /// Optional. Defines whether to enable single process OOM killer. + /// If true, will prevent the memory.oom.group flag from being set for + /// container cgroups in cgroups v2. This causes processes in the container to + /// be OOM killed individually instead of as a group. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool SingleProcessOomKill { + get { if ((_hasBits0 & 2) != 0) { return singleProcessOomKill_; } else { return SingleProcessOomKillDefaultValue; } } + set { + _hasBits0 |= 2; + singleProcessOomKill_ = value; + } + } + /// Gets whether the "single_process_oom_kill" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasSingleProcessOomKill { + get { return (_hasBits0 & 2) != 0; } + } + /// Clears the value of the "single_process_oom_kill" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearSingleProcessOomKill() { + _hasBits0 &= ~2; + } + + /// Field number for the "shutdown_grace_period_seconds" field. + public const int ShutdownGracePeriodSecondsFieldNumber = 26; + private readonly static int ShutdownGracePeriodSecondsDefaultValue = 0; + + private int shutdownGracePeriodSeconds_; + /// + /// Optional. shutdown_grace_period_seconds is the maximum allowed grace period + /// (in seconds) the total duration that the node should delay the shutdown + /// during a graceful shutdown. This is the total grace period for pod + /// termination for both regular and critical pods. + /// https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/ + /// If set to 0, node will not enable the graceful node shutdown functionality. + /// This field is only valid for Spot VMs. + /// Allowed values: 0, 30, 120. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int ShutdownGracePeriodSeconds { + get { if ((_hasBits0 & 4) != 0) { return shutdownGracePeriodSeconds_; } else { return ShutdownGracePeriodSecondsDefaultValue; } } + set { + _hasBits0 |= 4; + shutdownGracePeriodSeconds_ = value; + } + } + /// Gets whether the "shutdown_grace_period_seconds" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasShutdownGracePeriodSeconds { + get { return (_hasBits0 & 4) != 0; } + } + /// Clears the value of the "shutdown_grace_period_seconds" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearShutdownGracePeriodSeconds() { + _hasBits0 &= ~4; + } + + /// Field number for the "shutdown_grace_period_critical_pods_seconds" field. + public const int ShutdownGracePeriodCriticalPodsSecondsFieldNumber = 27; + private readonly static int ShutdownGracePeriodCriticalPodsSecondsDefaultValue = 0; + + private int shutdownGracePeriodCriticalPodsSeconds_; + /// + /// Optional. shutdown_grace_period_critical_pods_seconds is the maximum + /// allowed grace period (in seconds) used to terminate critical pods during a + /// node shutdown. This value should be <= shutdown_grace_period_seconds, and + /// is only valid if shutdown_grace_period_seconds is set. + /// https://kubernetes.io/docs/concepts/cluster-administration/node-shutdown/ + /// Range: [0, 120]. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int ShutdownGracePeriodCriticalPodsSeconds { + get { if ((_hasBits0 & 8) != 0) { return shutdownGracePeriodCriticalPodsSeconds_; } else { return ShutdownGracePeriodCriticalPodsSecondsDefaultValue; } } + set { + _hasBits0 |= 8; + shutdownGracePeriodCriticalPodsSeconds_ = value; + } + } + /// Gets whether the "shutdown_grace_period_critical_pods_seconds" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasShutdownGracePeriodCriticalPodsSeconds { + get { return (_hasBits0 & 8) != 0; } + } + /// Clears the value of the "shutdown_grace_period_critical_pods_seconds" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearShutdownGracePeriodCriticalPodsSeconds() { + _hasBits0 &= ~8; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as NodeKubeletConfig); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(NodeKubeletConfig other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (CpuManagerPolicy != other.CpuManagerPolicy) return false; + if (!object.Equals(TopologyManager, other.TopologyManager)) return false; + if (!object.Equals(MemoryManager, other.MemoryManager)) return false; + if (CpuCfsQuota != other.CpuCfsQuota) return false; + if (CpuCfsQuotaPeriod != other.CpuCfsQuotaPeriod) return false; + if (PodPidsLimit != other.PodPidsLimit) return false; + if (InsecureKubeletReadonlyPortEnabled != other.InsecureKubeletReadonlyPortEnabled) return false; + if (ImageGcLowThresholdPercent != other.ImageGcLowThresholdPercent) return false; + if (ImageGcHighThresholdPercent != other.ImageGcHighThresholdPercent) return false; + if (ImageMinimumGcAge != other.ImageMinimumGcAge) return false; + if (ImageMaximumGcAge != other.ImageMaximumGcAge) return false; + if (ContainerLogMaxSize != other.ContainerLogMaxSize) return false; + if (ContainerLogMaxFiles != other.ContainerLogMaxFiles) return false; + if(!allowedUnsafeSysctls_.Equals(other.allowedUnsafeSysctls_)) return false; + if (!object.Equals(EvictionSoft, other.EvictionSoft)) return false; + if (!object.Equals(EvictionSoftGracePeriod, other.EvictionSoftGracePeriod)) return false; + if (!object.Equals(EvictionMinimumReclaim, other.EvictionMinimumReclaim)) return false; + if (EvictionMaxPodGracePeriodSeconds != other.EvictionMaxPodGracePeriodSeconds) return false; + if (MaxParallelImagePulls != other.MaxParallelImagePulls) return false; + if (SingleProcessOomKill != other.SingleProcessOomKill) return false; + if (ShutdownGracePeriodSeconds != other.ShutdownGracePeriodSeconds) return false; + if (ShutdownGracePeriodCriticalPodsSeconds != other.ShutdownGracePeriodCriticalPodsSeconds) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (CpuManagerPolicy.Length != 0) hash ^= CpuManagerPolicy.GetHashCode(); + if (topologyManager_ != null) hash ^= TopologyManager.GetHashCode(); + if (memoryManager_ != null) hash ^= MemoryManager.GetHashCode(); + if (cpuCfsQuota_ != null) hash ^= CpuCfsQuota.GetHashCode(); + if (CpuCfsQuotaPeriod.Length != 0) hash ^= CpuCfsQuotaPeriod.GetHashCode(); + if (PodPidsLimit != 0L) hash ^= PodPidsLimit.GetHashCode(); + if (HasInsecureKubeletReadonlyPortEnabled) hash ^= InsecureKubeletReadonlyPortEnabled.GetHashCode(); + if (ImageGcLowThresholdPercent != 0) hash ^= ImageGcLowThresholdPercent.GetHashCode(); + if (ImageGcHighThresholdPercent != 0) hash ^= ImageGcHighThresholdPercent.GetHashCode(); + if (ImageMinimumGcAge.Length != 0) hash ^= ImageMinimumGcAge.GetHashCode(); + if (ImageMaximumGcAge.Length != 0) hash ^= ImageMaximumGcAge.GetHashCode(); + if (ContainerLogMaxSize.Length != 0) hash ^= ContainerLogMaxSize.GetHashCode(); + if (ContainerLogMaxFiles != 0) hash ^= ContainerLogMaxFiles.GetHashCode(); + hash ^= allowedUnsafeSysctls_.GetHashCode(); + if (evictionSoft_ != null) hash ^= EvictionSoft.GetHashCode(); + if (evictionSoftGracePeriod_ != null) hash ^= EvictionSoftGracePeriod.GetHashCode(); + if (evictionMinimumReclaim_ != null) hash ^= EvictionMinimumReclaim.GetHashCode(); + if (EvictionMaxPodGracePeriodSeconds != 0) hash ^= EvictionMaxPodGracePeriodSeconds.GetHashCode(); + if (MaxParallelImagePulls != 0) hash ^= MaxParallelImagePulls.GetHashCode(); + if (HasSingleProcessOomKill) hash ^= SingleProcessOomKill.GetHashCode(); + if (HasShutdownGracePeriodSeconds) hash ^= ShutdownGracePeriodSeconds.GetHashCode(); + if (HasShutdownGracePeriodCriticalPodsSeconds) hash ^= ShutdownGracePeriodCriticalPodsSeconds.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (CpuManagerPolicy.Length != 0) { + output.WriteRawTag(10); + output.WriteString(CpuManagerPolicy); + } + if (cpuCfsQuota_ != null) { + _single_cpuCfsQuota_codec.WriteTagAndValue(output, CpuCfsQuota); + } + if (CpuCfsQuotaPeriod.Length != 0) { + output.WriteRawTag(26); + output.WriteString(CpuCfsQuotaPeriod); + } + if (PodPidsLimit != 0L) { + output.WriteRawTag(32); + output.WriteInt64(PodPidsLimit); + } + if (HasInsecureKubeletReadonlyPortEnabled) { + output.WriteRawTag(56); + output.WriteBool(InsecureKubeletReadonlyPortEnabled); + } + if (topologyManager_ != null) { + output.WriteRawTag(66); + output.WriteMessage(TopologyManager); + } + if (memoryManager_ != null) { + output.WriteRawTag(74); + output.WriteMessage(MemoryManager); + } + if (ImageGcLowThresholdPercent != 0) { + output.WriteRawTag(80); + output.WriteInt32(ImageGcLowThresholdPercent); + } + if (ImageGcHighThresholdPercent != 0) { + output.WriteRawTag(88); + output.WriteInt32(ImageGcHighThresholdPercent); + } + if (ImageMinimumGcAge.Length != 0) { + output.WriteRawTag(98); + output.WriteString(ImageMinimumGcAge); + } + if (ImageMaximumGcAge.Length != 0) { + output.WriteRawTag(106); + output.WriteString(ImageMaximumGcAge); + } + if (ContainerLogMaxSize.Length != 0) { + output.WriteRawTag(114); + output.WriteString(ContainerLogMaxSize); + } + if (ContainerLogMaxFiles != 0) { + output.WriteRawTag(120); + output.WriteInt32(ContainerLogMaxFiles); + } + allowedUnsafeSysctls_.WriteTo(output, _repeated_allowedUnsafeSysctls_codec); + if (evictionSoft_ != null) { + output.WriteRawTag(138, 1); + output.WriteMessage(EvictionSoft); + } + if (evictionSoftGracePeriod_ != null) { + output.WriteRawTag(146, 1); + output.WriteMessage(EvictionSoftGracePeriod); + } + if (evictionMinimumReclaim_ != null) { + output.WriteRawTag(154, 1); + output.WriteMessage(EvictionMinimumReclaim); + } + if (EvictionMaxPodGracePeriodSeconds != 0) { + output.WriteRawTag(160, 1); + output.WriteInt32(EvictionMaxPodGracePeriodSeconds); + } + if (MaxParallelImagePulls != 0) { + output.WriteRawTag(168, 1); + output.WriteInt32(MaxParallelImagePulls); + } + if (HasSingleProcessOomKill) { + output.WriteRawTag(176, 1); + output.WriteBool(SingleProcessOomKill); + } + if (HasShutdownGracePeriodSeconds) { + output.WriteRawTag(208, 1); + output.WriteInt32(ShutdownGracePeriodSeconds); + } + if (HasShutdownGracePeriodCriticalPodsSeconds) { + output.WriteRawTag(216, 1); + output.WriteInt32(ShutdownGracePeriodCriticalPodsSeconds); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (CpuManagerPolicy.Length != 0) { + output.WriteRawTag(10); + output.WriteString(CpuManagerPolicy); + } + if (cpuCfsQuota_ != null) { + _single_cpuCfsQuota_codec.WriteTagAndValue(ref output, CpuCfsQuota); + } + if (CpuCfsQuotaPeriod.Length != 0) { + output.WriteRawTag(26); + output.WriteString(CpuCfsQuotaPeriod); + } + if (PodPidsLimit != 0L) { + output.WriteRawTag(32); + output.WriteInt64(PodPidsLimit); + } + if (HasInsecureKubeletReadonlyPortEnabled) { + output.WriteRawTag(56); + output.WriteBool(InsecureKubeletReadonlyPortEnabled); + } + if (topologyManager_ != null) { + output.WriteRawTag(66); + output.WriteMessage(TopologyManager); + } + if (memoryManager_ != null) { + output.WriteRawTag(74); + output.WriteMessage(MemoryManager); + } + if (ImageGcLowThresholdPercent != 0) { + output.WriteRawTag(80); + output.WriteInt32(ImageGcLowThresholdPercent); + } + if (ImageGcHighThresholdPercent != 0) { + output.WriteRawTag(88); + output.WriteInt32(ImageGcHighThresholdPercent); + } + if (ImageMinimumGcAge.Length != 0) { + output.WriteRawTag(98); + output.WriteString(ImageMinimumGcAge); + } + if (ImageMaximumGcAge.Length != 0) { + output.WriteRawTag(106); + output.WriteString(ImageMaximumGcAge); + } + if (ContainerLogMaxSize.Length != 0) { + output.WriteRawTag(114); + output.WriteString(ContainerLogMaxSize); + } + if (ContainerLogMaxFiles != 0) { + output.WriteRawTag(120); + output.WriteInt32(ContainerLogMaxFiles); + } + allowedUnsafeSysctls_.WriteTo(ref output, _repeated_allowedUnsafeSysctls_codec); + if (evictionSoft_ != null) { + output.WriteRawTag(138, 1); + output.WriteMessage(EvictionSoft); + } + if (evictionSoftGracePeriod_ != null) { + output.WriteRawTag(146, 1); + output.WriteMessage(EvictionSoftGracePeriod); + } + if (evictionMinimumReclaim_ != null) { + output.WriteRawTag(154, 1); + output.WriteMessage(EvictionMinimumReclaim); + } + if (EvictionMaxPodGracePeriodSeconds != 0) { + output.WriteRawTag(160, 1); + output.WriteInt32(EvictionMaxPodGracePeriodSeconds); + } + if (MaxParallelImagePulls != 0) { + output.WriteRawTag(168, 1); + output.WriteInt32(MaxParallelImagePulls); + } + if (HasSingleProcessOomKill) { + output.WriteRawTag(176, 1); + output.WriteBool(SingleProcessOomKill); + } + if (HasShutdownGracePeriodSeconds) { + output.WriteRawTag(208, 1); + output.WriteInt32(ShutdownGracePeriodSeconds); + } + if (HasShutdownGracePeriodCriticalPodsSeconds) { + output.WriteRawTag(216, 1); + output.WriteInt32(ShutdownGracePeriodCriticalPodsSeconds); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (CpuManagerPolicy.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(CpuManagerPolicy); + } + if (topologyManager_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(TopologyManager); + } + if (memoryManager_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(MemoryManager); + } + if (cpuCfsQuota_ != null) { + size += _single_cpuCfsQuota_codec.CalculateSizeWithTag(CpuCfsQuota); + } + if (CpuCfsQuotaPeriod.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(CpuCfsQuotaPeriod); + } + if (PodPidsLimit != 0L) { + size += 1 + pb::CodedOutputStream.ComputeInt64Size(PodPidsLimit); + } + if (HasInsecureKubeletReadonlyPortEnabled) { + size += 1 + 1; + } + if (ImageGcLowThresholdPercent != 0) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(ImageGcLowThresholdPercent); + } + if (ImageGcHighThresholdPercent != 0) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(ImageGcHighThresholdPercent); + } + if (ImageMinimumGcAge.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ImageMinimumGcAge); + } + if (ImageMaximumGcAge.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ImageMaximumGcAge); + } + if (ContainerLogMaxSize.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ContainerLogMaxSize); + } + if (ContainerLogMaxFiles != 0) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(ContainerLogMaxFiles); + } + size += allowedUnsafeSysctls_.CalculateSize(_repeated_allowedUnsafeSysctls_codec); + if (evictionSoft_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(EvictionSoft); + } + if (evictionSoftGracePeriod_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(EvictionSoftGracePeriod); + } + if (evictionMinimumReclaim_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(EvictionMinimumReclaim); + } + if (EvictionMaxPodGracePeriodSeconds != 0) { + size += 2 + pb::CodedOutputStream.ComputeInt32Size(EvictionMaxPodGracePeriodSeconds); + } + if (MaxParallelImagePulls != 0) { + size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxParallelImagePulls); + } + if (HasSingleProcessOomKill) { + size += 2 + 1; + } + if (HasShutdownGracePeriodSeconds) { + size += 2 + pb::CodedOutputStream.ComputeInt32Size(ShutdownGracePeriodSeconds); + } + if (HasShutdownGracePeriodCriticalPodsSeconds) { + size += 2 + pb::CodedOutputStream.ComputeInt32Size(ShutdownGracePeriodCriticalPodsSeconds); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(NodeKubeletConfig other) { + if (other == null) { + return; + } + if (other.CpuManagerPolicy.Length != 0) { + CpuManagerPolicy = other.CpuManagerPolicy; + } + if (other.topologyManager_ != null) { + if (topologyManager_ == null) { + TopologyManager = new global::Google.Cloud.Container.V1.TopologyManager(); + } + TopologyManager.MergeFrom(other.TopologyManager); + } + if (other.memoryManager_ != null) { + if (memoryManager_ == null) { + MemoryManager = new global::Google.Cloud.Container.V1.MemoryManager(); + } + MemoryManager.MergeFrom(other.MemoryManager); + } + if (other.cpuCfsQuota_ != null) { + if (cpuCfsQuota_ == null || other.CpuCfsQuota != false) { + CpuCfsQuota = other.CpuCfsQuota; + } + } + if (other.CpuCfsQuotaPeriod.Length != 0) { + CpuCfsQuotaPeriod = other.CpuCfsQuotaPeriod; + } + if (other.PodPidsLimit != 0L) { + PodPidsLimit = other.PodPidsLimit; + } + if (other.HasInsecureKubeletReadonlyPortEnabled) { + InsecureKubeletReadonlyPortEnabled = other.InsecureKubeletReadonlyPortEnabled; + } + if (other.ImageGcLowThresholdPercent != 0) { + ImageGcLowThresholdPercent = other.ImageGcLowThresholdPercent; + } + if (other.ImageGcHighThresholdPercent != 0) { + ImageGcHighThresholdPercent = other.ImageGcHighThresholdPercent; + } + if (other.ImageMinimumGcAge.Length != 0) { + ImageMinimumGcAge = other.ImageMinimumGcAge; + } + if (other.ImageMaximumGcAge.Length != 0) { + ImageMaximumGcAge = other.ImageMaximumGcAge; + } + if (other.ContainerLogMaxSize.Length != 0) { + ContainerLogMaxSize = other.ContainerLogMaxSize; + } + if (other.ContainerLogMaxFiles != 0) { + ContainerLogMaxFiles = other.ContainerLogMaxFiles; + } + allowedUnsafeSysctls_.Add(other.allowedUnsafeSysctls_); + if (other.evictionSoft_ != null) { + if (evictionSoft_ == null) { + EvictionSoft = new global::Google.Cloud.Container.V1.EvictionSignals(); + } + EvictionSoft.MergeFrom(other.EvictionSoft); + } + if (other.evictionSoftGracePeriod_ != null) { + if (evictionSoftGracePeriod_ == null) { + EvictionSoftGracePeriod = new global::Google.Cloud.Container.V1.EvictionGracePeriod(); + } + EvictionSoftGracePeriod.MergeFrom(other.EvictionSoftGracePeriod); + } + if (other.evictionMinimumReclaim_ != null) { + if (evictionMinimumReclaim_ == null) { + EvictionMinimumReclaim = new global::Google.Cloud.Container.V1.EvictionMinimumReclaim(); + } + EvictionMinimumReclaim.MergeFrom(other.EvictionMinimumReclaim); + } + if (other.EvictionMaxPodGracePeriodSeconds != 0) { + EvictionMaxPodGracePeriodSeconds = other.EvictionMaxPodGracePeriodSeconds; + } + if (other.MaxParallelImagePulls != 0) { + MaxParallelImagePulls = other.MaxParallelImagePulls; + } + if (other.HasSingleProcessOomKill) { + SingleProcessOomKill = other.SingleProcessOomKill; + } + if (other.HasShutdownGracePeriodSeconds) { + ShutdownGracePeriodSeconds = other.ShutdownGracePeriodSeconds; + } + if (other.HasShutdownGracePeriodCriticalPodsSeconds) { + ShutdownGracePeriodCriticalPodsSeconds = other.ShutdownGracePeriodCriticalPodsSeconds; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + CpuManagerPolicy = input.ReadString(); + break; + } + case 18: { + bool? value = _single_cpuCfsQuota_codec.Read(input); + if (cpuCfsQuota_ == null || value != false) { + CpuCfsQuota = value; + } + break; + } + case 26: { + CpuCfsQuotaPeriod = input.ReadString(); + break; + } + case 32: { + PodPidsLimit = input.ReadInt64(); + break; + } + case 56: { + InsecureKubeletReadonlyPortEnabled = input.ReadBool(); + break; + } + case 66: { + if (topologyManager_ == null) { + TopologyManager = new global::Google.Cloud.Container.V1.TopologyManager(); + } + input.ReadMessage(TopologyManager); + break; + } + case 74: { + if (memoryManager_ == null) { + MemoryManager = new global::Google.Cloud.Container.V1.MemoryManager(); + } + input.ReadMessage(MemoryManager); + break; + } + case 80: { + ImageGcLowThresholdPercent = input.ReadInt32(); + break; + } + case 88: { + ImageGcHighThresholdPercent = input.ReadInt32(); + break; + } + case 98: { + ImageMinimumGcAge = input.ReadString(); + break; + } + case 106: { + ImageMaximumGcAge = input.ReadString(); + break; + } + case 114: { + ContainerLogMaxSize = input.ReadString(); + break; + } + case 120: { + ContainerLogMaxFiles = input.ReadInt32(); + break; + } + case 130: { + allowedUnsafeSysctls_.AddEntriesFrom(input, _repeated_allowedUnsafeSysctls_codec); + break; + } + case 138: { + if (evictionSoft_ == null) { + EvictionSoft = new global::Google.Cloud.Container.V1.EvictionSignals(); + } + input.ReadMessage(EvictionSoft); + break; + } + case 146: { + if (evictionSoftGracePeriod_ == null) { + EvictionSoftGracePeriod = new global::Google.Cloud.Container.V1.EvictionGracePeriod(); + } + input.ReadMessage(EvictionSoftGracePeriod); + break; + } + case 154: { + if (evictionMinimumReclaim_ == null) { + EvictionMinimumReclaim = new global::Google.Cloud.Container.V1.EvictionMinimumReclaim(); + } + input.ReadMessage(EvictionMinimumReclaim); + break; + } + case 160: { + EvictionMaxPodGracePeriodSeconds = input.ReadInt32(); + break; + } + case 168: { + MaxParallelImagePulls = input.ReadInt32(); + break; + } + case 176: { + SingleProcessOomKill = input.ReadBool(); + break; + } + case 208: { + ShutdownGracePeriodSeconds = input.ReadInt32(); + break; + } + case 216: { + ShutdownGracePeriodCriticalPodsSeconds = input.ReadInt32(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + CpuManagerPolicy = input.ReadString(); + break; + } + case 18: { + bool? value = _single_cpuCfsQuota_codec.Read(ref input); + if (cpuCfsQuota_ == null || value != false) { + CpuCfsQuota = value; + } + break; + } + case 26: { + CpuCfsQuotaPeriod = input.ReadString(); + break; + } + case 32: { + PodPidsLimit = input.ReadInt64(); + break; + } + case 56: { + InsecureKubeletReadonlyPortEnabled = input.ReadBool(); + break; + } + case 66: { + if (topologyManager_ == null) { + TopologyManager = new global::Google.Cloud.Container.V1.TopologyManager(); + } + input.ReadMessage(TopologyManager); + break; + } + case 74: { + if (memoryManager_ == null) { + MemoryManager = new global::Google.Cloud.Container.V1.MemoryManager(); + } + input.ReadMessage(MemoryManager); + break; + } + case 80: { + ImageGcLowThresholdPercent = input.ReadInt32(); + break; + } + case 88: { + ImageGcHighThresholdPercent = input.ReadInt32(); + break; + } + case 98: { + ImageMinimumGcAge = input.ReadString(); + break; + } + case 106: { + ImageMaximumGcAge = input.ReadString(); + break; + } + case 114: { + ContainerLogMaxSize = input.ReadString(); + break; + } + case 120: { + ContainerLogMaxFiles = input.ReadInt32(); + break; + } + case 130: { + allowedUnsafeSysctls_.AddEntriesFrom(ref input, _repeated_allowedUnsafeSysctls_codec); + break; + } + case 138: { + if (evictionSoft_ == null) { + EvictionSoft = new global::Google.Cloud.Container.V1.EvictionSignals(); + } + input.ReadMessage(EvictionSoft); + break; + } + case 146: { + if (evictionSoftGracePeriod_ == null) { + EvictionSoftGracePeriod = new global::Google.Cloud.Container.V1.EvictionGracePeriod(); + } + input.ReadMessage(EvictionSoftGracePeriod); + break; + } + case 154: { + if (evictionMinimumReclaim_ == null) { + EvictionMinimumReclaim = new global::Google.Cloud.Container.V1.EvictionMinimumReclaim(); + } + input.ReadMessage(EvictionMinimumReclaim); + break; + } + case 160: { + EvictionMaxPodGracePeriodSeconds = input.ReadInt32(); + break; + } + case 168: { + MaxParallelImagePulls = input.ReadInt32(); + break; + } + case 176: { + SingleProcessOomKill = input.ReadBool(); + break; + } + case 208: { + ShutdownGracePeriodSeconds = input.ReadInt32(); + break; + } + case 216: { + ShutdownGracePeriodCriticalPodsSeconds = input.ReadInt32(); + break; + } + } + } + } + #endif + + } + + /// + /// TopologyManager defines the configuration options for Topology Manager + /// feature. See + /// https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/ + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class TopologyManager : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new TopologyManager()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[3]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public TopologyManager() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public TopologyManager(TopologyManager other) : this() { + policy_ = other.policy_; + scope_ = other.scope_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public TopologyManager Clone() { + return new TopologyManager(this); + } + + /// Field number for the "policy" field. + public const int PolicyFieldNumber = 1; + private string policy_ = ""; + /// + /// Configures the strategy for resource alignment. + /// Allowed values are: + /// + /// * none: the default policy, and does not perform any topology alignment. + /// * restricted: the topology manager stores the preferred NUMA node affinity + /// for the container, and will reject the pod if the affinity if not + /// preferred. + /// * best-effort: the topology manager stores the preferred NUMA node affinity + /// for the container. If the affinity is not preferred, the topology manager + /// will admit the pod to the node anyway. + /// * single-numa-node: the topology manager determines if the single NUMA node + /// affinity is possible. If it is, Topology Manager will store this and the + /// Hint Providers can then use this information when making the resource + /// allocation decision. If, however, this is not possible then the + /// Topology Manager will reject the pod from the node. This will result in a + /// pod in a Terminated state with a pod admission failure. + /// + /// The default policy value is 'none' if unspecified. + /// Details about each strategy can be found + /// [here](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/#topology-manager-policies). + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string Policy { + get { return policy_; } + set { + policy_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "scope" field. + public const int ScopeFieldNumber = 2; + private string scope_ = ""; + /// + /// The Topology Manager aligns resources in following scopes: + /// + /// * container + /// * pod + /// + /// The default scope is 'container' if unspecified. + /// See + /// https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/#topology-manager-scopes + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string Scope { + get { return scope_; } + set { + scope_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as TopologyManager); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(TopologyManager other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (Policy != other.Policy) return false; + if (Scope != other.Scope) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (Policy.Length != 0) hash ^= Policy.GetHashCode(); + if (Scope.Length != 0) hash ^= Scope.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (Policy.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Policy); + } + if (Scope.Length != 0) { + output.WriteRawTag(18); + output.WriteString(Scope); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (Policy.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Policy); + } + if (Scope.Length != 0) { + output.WriteRawTag(18); + output.WriteString(Scope); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (Policy.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Policy); + } + if (Scope.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Scope); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(TopologyManager other) { + if (other == null) { + return; + } + if (other.Policy.Length != 0) { + Policy = other.Policy; + } + if (other.Scope.Length != 0) { + Scope = other.Scope; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + Policy = input.ReadString(); + break; + } + case 18: { + Scope = input.ReadString(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + Policy = input.ReadString(); + break; + } + case 18: { + Scope = input.ReadString(); + break; + } + } + } + } + #endif + + } + + /// + /// The option enables the Kubernetes NUMA-aware Memory Manager feature. + /// Detailed description about the feature can be found + /// [here](https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/). + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class MemoryManager : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new MemoryManager()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[4]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public MemoryManager() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public MemoryManager(MemoryManager other) : this() { + policy_ = other.policy_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public MemoryManager Clone() { + return new MemoryManager(this); + } + + /// Field number for the "policy" field. + public const int PolicyFieldNumber = 1; + private string policy_ = ""; + /// + /// Controls the memory management policy on the Node. + /// See + /// https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/#policies + /// + /// The following values are allowed. + /// * "none" + /// * "static" + /// The default value is 'none' if unspecified. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string Policy { + get { return policy_; } + set { + policy_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as MemoryManager); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(MemoryManager other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (Policy != other.Policy) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (Policy.Length != 0) hash ^= Policy.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (Policy.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Policy); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (Policy.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Policy); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (Policy.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Policy); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(MemoryManager other) { + if (other == null) { + return; + } + if (other.Policy.Length != 0) { + Policy = other.Policy; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + Policy = input.ReadString(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + Policy = input.ReadString(); + break; + } + } + } + } + #endif + + } + + /// + /// Eviction signals are the current state of a particular resource at a specific + /// point in time. The kubelet uses eviction signals to make eviction decisions + /// by comparing the signals to eviction thresholds, which are the minimum amount + /// of the resource that should be available on the node. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class EvictionSignals : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new EvictionSignals()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[5]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public EvictionSignals() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public EvictionSignals(EvictionSignals other) : this() { + memoryAvailable_ = other.memoryAvailable_; + nodefsAvailable_ = other.nodefsAvailable_; + nodefsInodesFree_ = other.nodefsInodesFree_; + imagefsAvailable_ = other.imagefsAvailable_; + imagefsInodesFree_ = other.imagefsInodesFree_; + pidAvailable_ = other.pidAvailable_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public EvictionSignals Clone() { + return new EvictionSignals(this); + } + + /// Field number for the "memory_available" field. + public const int MemoryAvailableFieldNumber = 1; + private string memoryAvailable_ = ""; + /// + /// Optional. Memory available (i.e. capacity - workingSet), in bytes. Defines + /// the amount of "memory.available" signal in kubelet. Default is unset, if + /// not specified in the kubelet config. Format: positive number + unit, e.g. + /// 100Ki, 10Mi, 5Gi. Valid units are Ki, Mi, Gi. Must be >= 100Mi and <= 50% + /// of the node's memory. See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string MemoryAvailable { + get { return memoryAvailable_; } + set { + memoryAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "nodefs_available" field. + public const int NodefsAvailableFieldNumber = 2; + private string nodefsAvailable_ = ""; + /// + /// Optional. Amount of storage available on filesystem that kubelet uses for + /// volumes, daemon logs, etc. Defines the amount of "nodefs.available" signal + /// in kubelet. Default is unset, if not specified in the kubelet config. It + /// takses percentage value for now. Sample format: "30%". Must be >= 10% and + /// <= 50%. See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string NodefsAvailable { + get { return nodefsAvailable_; } + set { + nodefsAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "nodefs_inodes_free" field. + public const int NodefsInodesFreeFieldNumber = 3; + private string nodefsInodesFree_ = ""; + /// + /// Optional. Amount of inodes available on filesystem that kubelet uses for + /// volumes, daemon logs, etc. Defines the amount of "nodefs.inodesFree" signal + /// in kubelet. Default is unset, if not specified in the kubelet config. Linux + /// only. It takses percentage value for now. Sample format: "30%". Must be >= + /// 5% and <= 50%. See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string NodefsInodesFree { + get { return nodefsInodesFree_; } + set { + nodefsInodesFree_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "imagefs_available" field. + public const int ImagefsAvailableFieldNumber = 4; + private string imagefsAvailable_ = ""; + /// + /// Optional. Amount of storage available on filesystem that container runtime + /// uses for storing images layers. If the container filesystem and image + /// filesystem are not separate, then imagefs can store both image layers and + /// writeable layers. Defines the amount of "imagefs.available" signal in + /// kubelet. Default is unset, if not specified in the kubelet config. It + /// takses percentage value for now. Sample format: "30%". Must be >= 15% and + /// <= 50%. See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string ImagefsAvailable { + get { return imagefsAvailable_; } + set { + imagefsAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "imagefs_inodes_free" field. + public const int ImagefsInodesFreeFieldNumber = 5; + private string imagefsInodesFree_ = ""; + /// + /// Optional. Amount of inodes available on filesystem that container runtime + /// uses for storing images layers. Defines the amount of "imagefs.inodesFree" + /// signal in kubelet. Default is unset, if not specified in the kubelet + /// config. Linux only. It takses percentage value for now. Sample format: + /// "30%". Must be >= 5% and <= 50%. See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string ImagefsInodesFree { + get { return imagefsInodesFree_; } + set { + imagefsInodesFree_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "pid_available" field. + public const int PidAvailableFieldNumber = 6; + private string pidAvailable_ = ""; + /// + /// Optional. Amount of PID available for pod allocation. Defines the amount of + /// "pid.available" signal in kubelet. Default is unset, if not specified in + /// the kubelet config. It takses percentage value for now. Sample format: + /// "30%". Must be >= 10% and <= 50%. See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string PidAvailable { + get { return pidAvailable_; } + set { + pidAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as EvictionSignals); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(EvictionSignals other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (MemoryAvailable != other.MemoryAvailable) return false; + if (NodefsAvailable != other.NodefsAvailable) return false; + if (NodefsInodesFree != other.NodefsInodesFree) return false; + if (ImagefsAvailable != other.ImagefsAvailable) return false; + if (ImagefsInodesFree != other.ImagefsInodesFree) return false; + if (PidAvailable != other.PidAvailable) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (MemoryAvailable.Length != 0) hash ^= MemoryAvailable.GetHashCode(); + if (NodefsAvailable.Length != 0) hash ^= NodefsAvailable.GetHashCode(); + if (NodefsInodesFree.Length != 0) hash ^= NodefsInodesFree.GetHashCode(); + if (ImagefsAvailable.Length != 0) hash ^= ImagefsAvailable.GetHashCode(); + if (ImagefsInodesFree.Length != 0) hash ^= ImagefsInodesFree.GetHashCode(); + if (PidAvailable.Length != 0) hash ^= PidAvailable.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (MemoryAvailable.Length != 0) { + output.WriteRawTag(10); + output.WriteString(MemoryAvailable); + } + if (NodefsAvailable.Length != 0) { + output.WriteRawTag(18); + output.WriteString(NodefsAvailable); + } + if (NodefsInodesFree.Length != 0) { + output.WriteRawTag(26); + output.WriteString(NodefsInodesFree); + } + if (ImagefsAvailable.Length != 0) { + output.WriteRawTag(34); + output.WriteString(ImagefsAvailable); + } + if (ImagefsInodesFree.Length != 0) { + output.WriteRawTag(42); + output.WriteString(ImagefsInodesFree); + } + if (PidAvailable.Length != 0) { + output.WriteRawTag(50); + output.WriteString(PidAvailable); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (MemoryAvailable.Length != 0) { + output.WriteRawTag(10); + output.WriteString(MemoryAvailable); + } + if (NodefsAvailable.Length != 0) { + output.WriteRawTag(18); + output.WriteString(NodefsAvailable); + } + if (NodefsInodesFree.Length != 0) { + output.WriteRawTag(26); + output.WriteString(NodefsInodesFree); + } + if (ImagefsAvailable.Length != 0) { + output.WriteRawTag(34); + output.WriteString(ImagefsAvailable); + } + if (ImagefsInodesFree.Length != 0) { + output.WriteRawTag(42); + output.WriteString(ImagefsInodesFree); + } + if (PidAvailable.Length != 0) { + output.WriteRawTag(50); + output.WriteString(PidAvailable); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (MemoryAvailable.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(MemoryAvailable); + } + if (NodefsAvailable.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(NodefsAvailable); + } + if (NodefsInodesFree.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(NodefsInodesFree); + } + if (ImagefsAvailable.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ImagefsAvailable); + } + if (ImagefsInodesFree.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ImagefsInodesFree); + } + if (PidAvailable.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(PidAvailable); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(EvictionSignals other) { + if (other == null) { + return; + } + if (other.MemoryAvailable.Length != 0) { + MemoryAvailable = other.MemoryAvailable; + } + if (other.NodefsAvailable.Length != 0) { + NodefsAvailable = other.NodefsAvailable; + } + if (other.NodefsInodesFree.Length != 0) { + NodefsInodesFree = other.NodefsInodesFree; + } + if (other.ImagefsAvailable.Length != 0) { + ImagefsAvailable = other.ImagefsAvailable; + } + if (other.ImagefsInodesFree.Length != 0) { + ImagefsInodesFree = other.ImagefsInodesFree; + } + if (other.PidAvailable.Length != 0) { + PidAvailable = other.PidAvailable; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + MemoryAvailable = input.ReadString(); + break; + } + case 18: { + NodefsAvailable = input.ReadString(); + break; + } + case 26: { + NodefsInodesFree = input.ReadString(); + break; + } + case 34: { + ImagefsAvailable = input.ReadString(); + break; + } + case 42: { + ImagefsInodesFree = input.ReadString(); + break; + } + case 50: { + PidAvailable = input.ReadString(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + MemoryAvailable = input.ReadString(); + break; + } + case 18: { + NodefsAvailable = input.ReadString(); + break; + } + case 26: { + NodefsInodesFree = input.ReadString(); + break; + } + case 34: { + ImagefsAvailable = input.ReadString(); + break; + } + case 42: { + ImagefsInodesFree = input.ReadString(); + break; + } + case 50: { + PidAvailable = input.ReadString(); + break; + } + } + } + } + #endif + + } + + /// + /// Eviction grace periods are grace periods for each eviction signal. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class EvictionGracePeriod : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new EvictionGracePeriod()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[6]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public EvictionGracePeriod() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public EvictionGracePeriod(EvictionGracePeriod other) : this() { + memoryAvailable_ = other.memoryAvailable_; + nodefsAvailable_ = other.nodefsAvailable_; + nodefsInodesFree_ = other.nodefsInodesFree_; + imagefsAvailable_ = other.imagefsAvailable_; + imagefsInodesFree_ = other.imagefsInodesFree_; + pidAvailable_ = other.pidAvailable_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public EvictionGracePeriod Clone() { + return new EvictionGracePeriod(this); + } + + /// Field number for the "memory_available" field. + public const int MemoryAvailableFieldNumber = 1; + private string memoryAvailable_ = ""; + /// + /// Optional. Grace period for eviction due to memory available signal. Sample + /// format: "10s". Must be >= 0. See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string ImageMinimumGcAge { - get { return imageMinimumGcAge_; } + public string MemoryAvailable { + get { return memoryAvailable_; } set { - imageMinimumGcAge_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + memoryAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Field number for the "image_maximum_gc_age" field. - public const int ImageMaximumGcAgeFieldNumber = 13; - private string imageMaximumGcAge_ = ""; + /// Field number for the "nodefs_available" field. + public const int NodefsAvailableFieldNumber = 2; + private string nodefsAvailable_ = ""; /// - /// Optional. Defines the maximum age an image can be unused before it is - /// garbage collected. The string must be a sequence of decimal numbers, each - /// with optional fraction and a unit suffix, such as "300s", "1.5h", and - /// "2h45m". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". - /// - /// The value must be a positive duration greater than image_minimum_gc_age - /// or "0s". - /// - /// The default value is "0s" if unspecified, which disables this field, - /// meaning images won't be garbage collected based on being unused for too - /// long. + /// Optional. Grace period for eviction due to nodefs available signal. Sample + /// format: "10s". Must be >= 0. See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string ImageMaximumGcAge { - get { return imageMaximumGcAge_; } + public string NodefsAvailable { + get { return nodefsAvailable_; } set { - imageMaximumGcAge_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + nodefsAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Field number for the "container_log_max_size" field. - public const int ContainerLogMaxSizeFieldNumber = 14; - private string containerLogMaxSize_ = ""; + /// Field number for the "nodefs_inodes_free" field. + public const int NodefsInodesFreeFieldNumber = 3; + private string nodefsInodesFree_ = ""; /// - /// Optional. Defines the maximum size of the container log file before it is - /// rotated. See - /// https://kubernetes.io/docs/concepts/cluster-administration/logging/#log-rotation - /// - /// Valid format is positive number + unit, e.g. 100Ki, 10Mi. Valid units are - /// Ki, Mi, Gi. - /// The value must be between 10Mi and 500Mi, inclusive. - /// - /// Note that the total container log size (container_log_max_size * - /// container_log_max_files) cannot exceed 1% of the total - /// storage of the node, to avoid disk pressure caused by log files. - /// - /// The default value is 10Mi if unspecified. + /// Optional. Grace period for eviction due to nodefs inodes free signal. + /// Sample format: "10s". Must be >= 0. See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string ContainerLogMaxSize { - get { return containerLogMaxSize_; } + public string NodefsInodesFree { + get { return nodefsInodesFree_; } set { - containerLogMaxSize_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + nodefsInodesFree_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Field number for the "container_log_max_files" field. - public const int ContainerLogMaxFilesFieldNumber = 15; - private int containerLogMaxFiles_; + /// Field number for the "imagefs_available" field. + public const int ImagefsAvailableFieldNumber = 4; + private string imagefsAvailable_ = ""; /// - /// Optional. Defines the maximum number of container log files that can be - /// present for a container. See - /// https://kubernetes.io/docs/concepts/cluster-administration/logging/#log-rotation - /// - /// The value must be an integer between 2 and 10, inclusive. - /// The default value is 5 if unspecified. + /// Optional. Grace period for eviction due to imagefs available signal. Sample + /// format: "10s". Must be >= 0. See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int ContainerLogMaxFiles { - get { return containerLogMaxFiles_; } + public string ImagefsAvailable { + get { return imagefsAvailable_; } set { - containerLogMaxFiles_ = value; + imagefsAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "imagefs_inodes_free" field. + public const int ImagefsInodesFreeFieldNumber = 5; + private string imagefsInodesFree_ = ""; + /// + /// Optional. Grace period for eviction due to imagefs inodes free signal. + /// Sample format: "10s". Must be >= 0. See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string ImagefsInodesFree { + get { return imagefsInodesFree_; } + set { + imagefsInodesFree_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "pid_available" field. + public const int PidAvailableFieldNumber = 6; + private string pidAvailable_ = ""; + /// + /// Optional. Grace period for eviction due to pid available signal. Sample + /// format: "10s". Must be >= 0. See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string PidAvailable { + get { return pidAvailable_; } + set { + pidAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as EvictionGracePeriod); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(EvictionGracePeriod other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (MemoryAvailable != other.MemoryAvailable) return false; + if (NodefsAvailable != other.NodefsAvailable) return false; + if (NodefsInodesFree != other.NodefsInodesFree) return false; + if (ImagefsAvailable != other.ImagefsAvailable) return false; + if (ImagefsInodesFree != other.ImagefsInodesFree) return false; + if (PidAvailable != other.PidAvailable) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (MemoryAvailable.Length != 0) hash ^= MemoryAvailable.GetHashCode(); + if (NodefsAvailable.Length != 0) hash ^= NodefsAvailable.GetHashCode(); + if (NodefsInodesFree.Length != 0) hash ^= NodefsInodesFree.GetHashCode(); + if (ImagefsAvailable.Length != 0) hash ^= ImagefsAvailable.GetHashCode(); + if (ImagefsInodesFree.Length != 0) hash ^= ImagefsInodesFree.GetHashCode(); + if (PidAvailable.Length != 0) hash ^= PidAvailable.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (MemoryAvailable.Length != 0) { + output.WriteRawTag(10); + output.WriteString(MemoryAvailable); + } + if (NodefsAvailable.Length != 0) { + output.WriteRawTag(18); + output.WriteString(NodefsAvailable); + } + if (NodefsInodesFree.Length != 0) { + output.WriteRawTag(26); + output.WriteString(NodefsInodesFree); + } + if (ImagefsAvailable.Length != 0) { + output.WriteRawTag(34); + output.WriteString(ImagefsAvailable); + } + if (ImagefsInodesFree.Length != 0) { + output.WriteRawTag(42); + output.WriteString(ImagefsInodesFree); + } + if (PidAvailable.Length != 0) { + output.WriteRawTag(50); + output.WriteString(PidAvailable); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (MemoryAvailable.Length != 0) { + output.WriteRawTag(10); + output.WriteString(MemoryAvailable); + } + if (NodefsAvailable.Length != 0) { + output.WriteRawTag(18); + output.WriteString(NodefsAvailable); + } + if (NodefsInodesFree.Length != 0) { + output.WriteRawTag(26); + output.WriteString(NodefsInodesFree); + } + if (ImagefsAvailable.Length != 0) { + output.WriteRawTag(34); + output.WriteString(ImagefsAvailable); + } + if (ImagefsInodesFree.Length != 0) { + output.WriteRawTag(42); + output.WriteString(ImagefsInodesFree); + } + if (PidAvailable.Length != 0) { + output.WriteRawTag(50); + output.WriteString(PidAvailable); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (MemoryAvailable.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(MemoryAvailable); + } + if (NodefsAvailable.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(NodefsAvailable); + } + if (NodefsInodesFree.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(NodefsInodesFree); + } + if (ImagefsAvailable.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ImagefsAvailable); + } + if (ImagefsInodesFree.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ImagefsInodesFree); + } + if (PidAvailable.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(PidAvailable); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(EvictionGracePeriod other) { + if (other == null) { + return; + } + if (other.MemoryAvailable.Length != 0) { + MemoryAvailable = other.MemoryAvailable; + } + if (other.NodefsAvailable.Length != 0) { + NodefsAvailable = other.NodefsAvailable; + } + if (other.NodefsInodesFree.Length != 0) { + NodefsInodesFree = other.NodefsInodesFree; + } + if (other.ImagefsAvailable.Length != 0) { + ImagefsAvailable = other.ImagefsAvailable; + } + if (other.ImagefsInodesFree.Length != 0) { + ImagefsInodesFree = other.ImagefsInodesFree; + } + if (other.PidAvailable.Length != 0) { + PidAvailable = other.PidAvailable; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + MemoryAvailable = input.ReadString(); + break; + } + case 18: { + NodefsAvailable = input.ReadString(); + break; + } + case 26: { + NodefsInodesFree = input.ReadString(); + break; + } + case 34: { + ImagefsAvailable = input.ReadString(); + break; + } + case 42: { + ImagefsInodesFree = input.ReadString(); + break; + } + case 50: { + PidAvailable = input.ReadString(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + MemoryAvailable = input.ReadString(); + break; + } + case 18: { + NodefsAvailable = input.ReadString(); + break; + } + case 26: { + NodefsInodesFree = input.ReadString(); + break; + } + case 34: { + ImagefsAvailable = input.ReadString(); + break; + } + case 42: { + ImagefsInodesFree = input.ReadString(); + break; + } + case 50: { + PidAvailable = input.ReadString(); + break; + } + } } } + #endif + + } + + /// + /// Eviction minimum reclaims are the resource amounts of minimum reclaims for + /// each eviction signal. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class EvictionMinimumReclaim : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new EvictionMinimumReclaim()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[7]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public EvictionMinimumReclaim() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public EvictionMinimumReclaim(EvictionMinimumReclaim other) : this() { + memoryAvailable_ = other.memoryAvailable_; + nodefsAvailable_ = other.nodefsAvailable_; + nodefsInodesFree_ = other.nodefsInodesFree_; + imagefsAvailable_ = other.imagefsAvailable_; + imagefsInodesFree_ = other.imagefsInodesFree_; + pidAvailable_ = other.pidAvailable_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } - /// Field number for the "allowed_unsafe_sysctls" field. - public const int AllowedUnsafeSysctlsFieldNumber = 16; - private static readonly pb::FieldCodec _repeated_allowedUnsafeSysctls_codec - = pb::FieldCodec.ForString(130); - private readonly pbc::RepeatedField allowedUnsafeSysctls_ = new pbc::RepeatedField(); - /// - /// Optional. Defines a comma-separated allowlist of unsafe sysctls or sysctl - /// patterns (ending in `*`). - /// - /// The unsafe namespaced sysctl groups are `kernel.shm*`, `kernel.msg*`, - /// `kernel.sem`, `fs.mqueue.*`, and `net.*`. Leaving this allowlist empty - /// means they cannot be set on Pods. - /// - /// To allow certain sysctls or sysctl patterns to be set on Pods, list them - /// separated by commas. - /// For example: `kernel.msg*,net.ipv4.route.min_pmtu`. - /// - /// See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ - /// for more details. - /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField AllowedUnsafeSysctls { - get { return allowedUnsafeSysctls_; } + public EvictionMinimumReclaim Clone() { + return new EvictionMinimumReclaim(this); } - /// Field number for the "eviction_soft" field. - public const int EvictionSoftFieldNumber = 17; - private global::Google.Cloud.Container.V1.EvictionSignals evictionSoft_; + /// Field number for the "memory_available" field. + public const int MemoryAvailableFieldNumber = 1; + private string memoryAvailable_ = ""; /// - /// Optional. eviction_soft is a map of signal names to quantities that defines - /// soft eviction thresholds. Each signal is compared to its corresponding - /// threshold to determine if a pod eviction should occur. + /// Optional. Minimum reclaim for eviction due to memory available signal. Only + /// take percentage value for now. Sample format: "10%". Must be <=10%. See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.EvictionSignals EvictionSoft { - get { return evictionSoft_; } + public string MemoryAvailable { + get { return memoryAvailable_; } set { - evictionSoft_ = value; + memoryAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Field number for the "eviction_soft_grace_period" field. - public const int EvictionSoftGracePeriodFieldNumber = 18; - private global::Google.Cloud.Container.V1.EvictionGracePeriod evictionSoftGracePeriod_; + /// Field number for the "nodefs_available" field. + public const int NodefsAvailableFieldNumber = 2; + private string nodefsAvailable_ = ""; /// - /// Optional. eviction_soft_grace_period is a map of signal names to quantities - /// that defines grace periods for each soft eviction signal. The grace period - /// is the amount of time that a pod must be under pressure before an eviction - /// occurs. + /// Optional. Minimum reclaim for eviction due to nodefs available signal. Only + /// take percentage value for now. Sample format: "10%". Must be <=10%. See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.EvictionGracePeriod EvictionSoftGracePeriod { - get { return evictionSoftGracePeriod_; } + public string NodefsAvailable { + get { return nodefsAvailable_; } set { - evictionSoftGracePeriod_ = value; + nodefsAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Field number for the "eviction_minimum_reclaim" field. - public const int EvictionMinimumReclaimFieldNumber = 19; - private global::Google.Cloud.Container.V1.EvictionMinimumReclaim evictionMinimumReclaim_; + /// Field number for the "nodefs_inodes_free" field. + public const int NodefsInodesFreeFieldNumber = 3; + private string nodefsInodesFree_ = ""; /// - /// Optional. eviction_minimum_reclaim is a map of signal names to quantities - /// that defines minimum reclaims, which describe the minimum amount of a given - /// resource the kubelet will reclaim when performing a pod eviction while that - /// resource is under pressure. + /// Optional. Minimum reclaim for eviction due to nodefs inodes free signal. + /// Only take percentage value for now. Sample format: "10%". Must be <=10%. + /// See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.EvictionMinimumReclaim EvictionMinimumReclaim { - get { return evictionMinimumReclaim_; } + public string NodefsInodesFree { + get { return nodefsInodesFree_; } set { - evictionMinimumReclaim_ = value; + nodefsInodesFree_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Field number for the "eviction_max_pod_grace_period_seconds" field. - public const int EvictionMaxPodGracePeriodSecondsFieldNumber = 20; - private int evictionMaxPodGracePeriodSeconds_; + /// Field number for the "imagefs_available" field. + public const int ImagefsAvailableFieldNumber = 4; + private string imagefsAvailable_ = ""; /// - /// Optional. eviction_max_pod_grace_period_seconds is the maximum allowed - /// grace period (in seconds) to use when terminating pods in response to a - /// soft eviction threshold being met. This value effectively caps the Pod's - /// terminationGracePeriodSeconds value during soft evictions. Default: 0. - /// Range: [0, 300]. + /// Optional. Minimum reclaim for eviction due to imagefs available signal. + /// Only take percentage value for now. Sample format: "10%". Must be <=10%. + /// See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int EvictionMaxPodGracePeriodSeconds { - get { return evictionMaxPodGracePeriodSeconds_; } + public string ImagefsAvailable { + get { return imagefsAvailable_; } set { - evictionMaxPodGracePeriodSeconds_ = value; + imagefsAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Field number for the "max_parallel_image_pulls" field. - public const int MaxParallelImagePullsFieldNumber = 21; - private int maxParallelImagePulls_; + /// Field number for the "imagefs_inodes_free" field. + public const int ImagefsInodesFreeFieldNumber = 5; + private string imagefsInodesFree_ = ""; /// - /// Optional. Defines the maximum number of image pulls in parallel. - /// The range is 2 to 5, inclusive. - /// The default value is 2 or 3 depending on the disk type. - /// + /// Optional. Minimum reclaim for eviction due to imagefs inodes free signal. + /// Only take percentage value for now. Sample format: "10%". Must be <=10%. /// See - /// https://kubernetes.io/docs/concepts/containers/images/#maximum-parallel-image-pulls - /// for more details. + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int MaxParallelImagePulls { - get { return maxParallelImagePulls_; } + public string ImagefsInodesFree { + get { return imagefsInodesFree_; } set { - maxParallelImagePulls_ = value; + imagefsInodesFree_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Field number for the "single_process_oom_kill" field. - public const int SingleProcessOomKillFieldNumber = 22; - private readonly static bool SingleProcessOomKillDefaultValue = false; - - private bool singleProcessOomKill_; + /// Field number for the "pid_available" field. + public const int PidAvailableFieldNumber = 6; + private string pidAvailable_ = ""; /// - /// Optional. Defines whether to enable single process OOM killer. - /// If true, will prevent the memory.oom.group flag from being set for - /// container cgroups in cgroups v2. This causes processes in the container to - /// be OOM killed individually instead of as a group. + /// Optional. Minimum reclaim for eviction due to pid available signal. Only + /// take percentage value for now. Sample format: "10%". Must be <=10%. See + /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool SingleProcessOomKill { - get { if ((_hasBits0 & 2) != 0) { return singleProcessOomKill_; } else { return SingleProcessOomKillDefaultValue; } } + public string PidAvailable { + get { return pidAvailable_; } set { - _hasBits0 |= 2; - singleProcessOomKill_ = value; + pidAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Gets whether the "single_process_oom_kill" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasSingleProcessOomKill { - get { return (_hasBits0 & 2) != 0; } - } - /// Clears the value of the "single_process_oom_kill" field - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearSingleProcessOomKill() { - _hasBits0 &= ~2; - } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as NodeKubeletConfig); + return Equals(other as EvictionMinimumReclaim); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(NodeKubeletConfig other) { + public bool Equals(EvictionMinimumReclaim other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (CpuManagerPolicy != other.CpuManagerPolicy) return false; - if (!object.Equals(TopologyManager, other.TopologyManager)) return false; - if (!object.Equals(MemoryManager, other.MemoryManager)) return false; - if (CpuCfsQuota != other.CpuCfsQuota) return false; - if (CpuCfsQuotaPeriod != other.CpuCfsQuotaPeriod) return false; - if (PodPidsLimit != other.PodPidsLimit) return false; - if (InsecureKubeletReadonlyPortEnabled != other.InsecureKubeletReadonlyPortEnabled) return false; - if (ImageGcLowThresholdPercent != other.ImageGcLowThresholdPercent) return false; - if (ImageGcHighThresholdPercent != other.ImageGcHighThresholdPercent) return false; - if (ImageMinimumGcAge != other.ImageMinimumGcAge) return false; - if (ImageMaximumGcAge != other.ImageMaximumGcAge) return false; - if (ContainerLogMaxSize != other.ContainerLogMaxSize) return false; - if (ContainerLogMaxFiles != other.ContainerLogMaxFiles) return false; - if(!allowedUnsafeSysctls_.Equals(other.allowedUnsafeSysctls_)) return false; - if (!object.Equals(EvictionSoft, other.EvictionSoft)) return false; - if (!object.Equals(EvictionSoftGracePeriod, other.EvictionSoftGracePeriod)) return false; - if (!object.Equals(EvictionMinimumReclaim, other.EvictionMinimumReclaim)) return false; - if (EvictionMaxPodGracePeriodSeconds != other.EvictionMaxPodGracePeriodSeconds) return false; - if (MaxParallelImagePulls != other.MaxParallelImagePulls) return false; - if (SingleProcessOomKill != other.SingleProcessOomKill) return false; + if (MemoryAvailable != other.MemoryAvailable) return false; + if (NodefsAvailable != other.NodefsAvailable) return false; + if (NodefsInodesFree != other.NodefsInodesFree) return false; + if (ImagefsAvailable != other.ImagefsAvailable) return false; + if (ImagefsInodesFree != other.ImagefsInodesFree) return false; + if (PidAvailable != other.PidAvailable) return false; return Equals(_unknownFields, other._unknownFields); } @@ -3783,26 +7643,12 @@ public bool Equals(NodeKubeletConfig other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (CpuManagerPolicy.Length != 0) hash ^= CpuManagerPolicy.GetHashCode(); - if (topologyManager_ != null) hash ^= TopologyManager.GetHashCode(); - if (memoryManager_ != null) hash ^= MemoryManager.GetHashCode(); - if (cpuCfsQuota_ != null) hash ^= CpuCfsQuota.GetHashCode(); - if (CpuCfsQuotaPeriod.Length != 0) hash ^= CpuCfsQuotaPeriod.GetHashCode(); - if (PodPidsLimit != 0L) hash ^= PodPidsLimit.GetHashCode(); - if (HasInsecureKubeletReadonlyPortEnabled) hash ^= InsecureKubeletReadonlyPortEnabled.GetHashCode(); - if (ImageGcLowThresholdPercent != 0) hash ^= ImageGcLowThresholdPercent.GetHashCode(); - if (ImageGcHighThresholdPercent != 0) hash ^= ImageGcHighThresholdPercent.GetHashCode(); - if (ImageMinimumGcAge.Length != 0) hash ^= ImageMinimumGcAge.GetHashCode(); - if (ImageMaximumGcAge.Length != 0) hash ^= ImageMaximumGcAge.GetHashCode(); - if (ContainerLogMaxSize.Length != 0) hash ^= ContainerLogMaxSize.GetHashCode(); - if (ContainerLogMaxFiles != 0) hash ^= ContainerLogMaxFiles.GetHashCode(); - hash ^= allowedUnsafeSysctls_.GetHashCode(); - if (evictionSoft_ != null) hash ^= EvictionSoft.GetHashCode(); - if (evictionSoftGracePeriod_ != null) hash ^= EvictionSoftGracePeriod.GetHashCode(); - if (evictionMinimumReclaim_ != null) hash ^= EvictionMinimumReclaim.GetHashCode(); - if (EvictionMaxPodGracePeriodSeconds != 0) hash ^= EvictionMaxPodGracePeriodSeconds.GetHashCode(); - if (MaxParallelImagePulls != 0) hash ^= MaxParallelImagePulls.GetHashCode(); - if (HasSingleProcessOomKill) hash ^= SingleProcessOomKill.GetHashCode(); + if (MemoryAvailable.Length != 0) hash ^= MemoryAvailable.GetHashCode(); + if (NodefsAvailable.Length != 0) hash ^= NodefsAvailable.GetHashCode(); + if (NodefsInodesFree.Length != 0) hash ^= NodefsInodesFree.GetHashCode(); + if (ImagefsAvailable.Length != 0) hash ^= ImagefsAvailable.GetHashCode(); + if (ImagefsInodesFree.Length != 0) hash ^= ImagefsInodesFree.GetHashCode(); + if (PidAvailable.Length != 0) hash ^= PidAvailable.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -3821,81 +7667,29 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (CpuManagerPolicy.Length != 0) { + if (MemoryAvailable.Length != 0) { output.WriteRawTag(10); - output.WriteString(CpuManagerPolicy); + output.WriteString(MemoryAvailable); } - if (cpuCfsQuota_ != null) { - _single_cpuCfsQuota_codec.WriteTagAndValue(output, CpuCfsQuota); + if (NodefsAvailable.Length != 0) { + output.WriteRawTag(18); + output.WriteString(NodefsAvailable); } - if (CpuCfsQuotaPeriod.Length != 0) { + if (NodefsInodesFree.Length != 0) { output.WriteRawTag(26); - output.WriteString(CpuCfsQuotaPeriod); - } - if (PodPidsLimit != 0L) { - output.WriteRawTag(32); - output.WriteInt64(PodPidsLimit); - } - if (HasInsecureKubeletReadonlyPortEnabled) { - output.WriteRawTag(56); - output.WriteBool(InsecureKubeletReadonlyPortEnabled); - } - if (topologyManager_ != null) { - output.WriteRawTag(66); - output.WriteMessage(TopologyManager); - } - if (memoryManager_ != null) { - output.WriteRawTag(74); - output.WriteMessage(MemoryManager); - } - if (ImageGcLowThresholdPercent != 0) { - output.WriteRawTag(80); - output.WriteInt32(ImageGcLowThresholdPercent); - } - if (ImageGcHighThresholdPercent != 0) { - output.WriteRawTag(88); - output.WriteInt32(ImageGcHighThresholdPercent); - } - if (ImageMinimumGcAge.Length != 0) { - output.WriteRawTag(98); - output.WriteString(ImageMinimumGcAge); - } - if (ImageMaximumGcAge.Length != 0) { - output.WriteRawTag(106); - output.WriteString(ImageMaximumGcAge); - } - if (ContainerLogMaxSize.Length != 0) { - output.WriteRawTag(114); - output.WriteString(ContainerLogMaxSize); - } - if (ContainerLogMaxFiles != 0) { - output.WriteRawTag(120); - output.WriteInt32(ContainerLogMaxFiles); - } - allowedUnsafeSysctls_.WriteTo(output, _repeated_allowedUnsafeSysctls_codec); - if (evictionSoft_ != null) { - output.WriteRawTag(138, 1); - output.WriteMessage(EvictionSoft); - } - if (evictionSoftGracePeriod_ != null) { - output.WriteRawTag(146, 1); - output.WriteMessage(EvictionSoftGracePeriod); - } - if (evictionMinimumReclaim_ != null) { - output.WriteRawTag(154, 1); - output.WriteMessage(EvictionMinimumReclaim); + output.WriteString(NodefsInodesFree); } - if (EvictionMaxPodGracePeriodSeconds != 0) { - output.WriteRawTag(160, 1); - output.WriteInt32(EvictionMaxPodGracePeriodSeconds); + if (ImagefsAvailable.Length != 0) { + output.WriteRawTag(34); + output.WriteString(ImagefsAvailable); } - if (MaxParallelImagePulls != 0) { - output.WriteRawTag(168, 1); - output.WriteInt32(MaxParallelImagePulls); + if (ImagefsInodesFree.Length != 0) { + output.WriteRawTag(42); + output.WriteString(ImagefsInodesFree); } - if (HasSingleProcessOomKill) { - output.WriteRawTag(176, 1); - output.WriteBool(SingleProcessOomKill); + if (PidAvailable.Length != 0) { + output.WriteRawTag(50); + output.WriteString(PidAvailable); } if (_unknownFields != null) { _unknownFields.WriteTo(output); @@ -3907,81 +7701,29 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (CpuManagerPolicy.Length != 0) { + if (MemoryAvailable.Length != 0) { output.WriteRawTag(10); - output.WriteString(CpuManagerPolicy); + output.WriteString(MemoryAvailable); } - if (cpuCfsQuota_ != null) { - _single_cpuCfsQuota_codec.WriteTagAndValue(ref output, CpuCfsQuota); + if (NodefsAvailable.Length != 0) { + output.WriteRawTag(18); + output.WriteString(NodefsAvailable); } - if (CpuCfsQuotaPeriod.Length != 0) { + if (NodefsInodesFree.Length != 0) { output.WriteRawTag(26); - output.WriteString(CpuCfsQuotaPeriod); - } - if (PodPidsLimit != 0L) { - output.WriteRawTag(32); - output.WriteInt64(PodPidsLimit); - } - if (HasInsecureKubeletReadonlyPortEnabled) { - output.WriteRawTag(56); - output.WriteBool(InsecureKubeletReadonlyPortEnabled); - } - if (topologyManager_ != null) { - output.WriteRawTag(66); - output.WriteMessage(TopologyManager); - } - if (memoryManager_ != null) { - output.WriteRawTag(74); - output.WriteMessage(MemoryManager); - } - if (ImageGcLowThresholdPercent != 0) { - output.WriteRawTag(80); - output.WriteInt32(ImageGcLowThresholdPercent); - } - if (ImageGcHighThresholdPercent != 0) { - output.WriteRawTag(88); - output.WriteInt32(ImageGcHighThresholdPercent); - } - if (ImageMinimumGcAge.Length != 0) { - output.WriteRawTag(98); - output.WriteString(ImageMinimumGcAge); - } - if (ImageMaximumGcAge.Length != 0) { - output.WriteRawTag(106); - output.WriteString(ImageMaximumGcAge); - } - if (ContainerLogMaxSize.Length != 0) { - output.WriteRawTag(114); - output.WriteString(ContainerLogMaxSize); - } - if (ContainerLogMaxFiles != 0) { - output.WriteRawTag(120); - output.WriteInt32(ContainerLogMaxFiles); - } - allowedUnsafeSysctls_.WriteTo(ref output, _repeated_allowedUnsafeSysctls_codec); - if (evictionSoft_ != null) { - output.WriteRawTag(138, 1); - output.WriteMessage(EvictionSoft); - } - if (evictionSoftGracePeriod_ != null) { - output.WriteRawTag(146, 1); - output.WriteMessage(EvictionSoftGracePeriod); - } - if (evictionMinimumReclaim_ != null) { - output.WriteRawTag(154, 1); - output.WriteMessage(EvictionMinimumReclaim); + output.WriteString(NodefsInodesFree); } - if (EvictionMaxPodGracePeriodSeconds != 0) { - output.WriteRawTag(160, 1); - output.WriteInt32(EvictionMaxPodGracePeriodSeconds); + if (ImagefsAvailable.Length != 0) { + output.WriteRawTag(34); + output.WriteString(ImagefsAvailable); } - if (MaxParallelImagePulls != 0) { - output.WriteRawTag(168, 1); - output.WriteInt32(MaxParallelImagePulls); + if (ImagefsInodesFree.Length != 0) { + output.WriteRawTag(42); + output.WriteString(ImagefsInodesFree); } - if (HasSingleProcessOomKill) { - output.WriteRawTag(176, 1); - output.WriteBool(SingleProcessOomKill); + if (PidAvailable.Length != 0) { + output.WriteRawTag(50); + output.WriteString(PidAvailable); } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); @@ -3993,63 +7735,23 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (CpuManagerPolicy.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(CpuManagerPolicy); - } - if (topologyManager_ != null) { - size += 1 + pb::CodedOutputStream.ComputeMessageSize(TopologyManager); - } - if (memoryManager_ != null) { - size += 1 + pb::CodedOutputStream.ComputeMessageSize(MemoryManager); - } - if (cpuCfsQuota_ != null) { - size += _single_cpuCfsQuota_codec.CalculateSizeWithTag(CpuCfsQuota); - } - if (CpuCfsQuotaPeriod.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(CpuCfsQuotaPeriod); - } - if (PodPidsLimit != 0L) { - size += 1 + pb::CodedOutputStream.ComputeInt64Size(PodPidsLimit); - } - if (HasInsecureKubeletReadonlyPortEnabled) { - size += 1 + 1; - } - if (ImageGcLowThresholdPercent != 0) { - size += 1 + pb::CodedOutputStream.ComputeInt32Size(ImageGcLowThresholdPercent); - } - if (ImageGcHighThresholdPercent != 0) { - size += 1 + pb::CodedOutputStream.ComputeInt32Size(ImageGcHighThresholdPercent); - } - if (ImageMinimumGcAge.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(ImageMinimumGcAge); - } - if (ImageMaximumGcAge.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(ImageMaximumGcAge); - } - if (ContainerLogMaxSize.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(ContainerLogMaxSize); - } - if (ContainerLogMaxFiles != 0) { - size += 1 + pb::CodedOutputStream.ComputeInt32Size(ContainerLogMaxFiles); - } - size += allowedUnsafeSysctls_.CalculateSize(_repeated_allowedUnsafeSysctls_codec); - if (evictionSoft_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(EvictionSoft); + if (MemoryAvailable.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(MemoryAvailable); } - if (evictionSoftGracePeriod_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(EvictionSoftGracePeriod); + if (NodefsAvailable.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(NodefsAvailable); } - if (evictionMinimumReclaim_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(EvictionMinimumReclaim); + if (NodefsInodesFree.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(NodefsInodesFree); } - if (EvictionMaxPodGracePeriodSeconds != 0) { - size += 2 + pb::CodedOutputStream.ComputeInt32Size(EvictionMaxPodGracePeriodSeconds); + if (ImagefsAvailable.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ImagefsAvailable); } - if (MaxParallelImagePulls != 0) { - size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxParallelImagePulls); + if (ImagefsInodesFree.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ImagefsInodesFree); } - if (HasSingleProcessOomKill) { - size += 2 + 1; + if (PidAvailable.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(PidAvailable); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -4059,84 +7761,27 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(NodeKubeletConfig other) { + public void MergeFrom(EvictionMinimumReclaim other) { if (other == null) { return; } - if (other.CpuManagerPolicy.Length != 0) { - CpuManagerPolicy = other.CpuManagerPolicy; - } - if (other.topologyManager_ != null) { - if (topologyManager_ == null) { - TopologyManager = new global::Google.Cloud.Container.V1.TopologyManager(); - } - TopologyManager.MergeFrom(other.TopologyManager); - } - if (other.memoryManager_ != null) { - if (memoryManager_ == null) { - MemoryManager = new global::Google.Cloud.Container.V1.MemoryManager(); - } - MemoryManager.MergeFrom(other.MemoryManager); - } - if (other.cpuCfsQuota_ != null) { - if (cpuCfsQuota_ == null || other.CpuCfsQuota != false) { - CpuCfsQuota = other.CpuCfsQuota; - } - } - if (other.CpuCfsQuotaPeriod.Length != 0) { - CpuCfsQuotaPeriod = other.CpuCfsQuotaPeriod; - } - if (other.PodPidsLimit != 0L) { - PodPidsLimit = other.PodPidsLimit; - } - if (other.HasInsecureKubeletReadonlyPortEnabled) { - InsecureKubeletReadonlyPortEnabled = other.InsecureKubeletReadonlyPortEnabled; - } - if (other.ImageGcLowThresholdPercent != 0) { - ImageGcLowThresholdPercent = other.ImageGcLowThresholdPercent; - } - if (other.ImageGcHighThresholdPercent != 0) { - ImageGcHighThresholdPercent = other.ImageGcHighThresholdPercent; - } - if (other.ImageMinimumGcAge.Length != 0) { - ImageMinimumGcAge = other.ImageMinimumGcAge; - } - if (other.ImageMaximumGcAge.Length != 0) { - ImageMaximumGcAge = other.ImageMaximumGcAge; - } - if (other.ContainerLogMaxSize.Length != 0) { - ContainerLogMaxSize = other.ContainerLogMaxSize; - } - if (other.ContainerLogMaxFiles != 0) { - ContainerLogMaxFiles = other.ContainerLogMaxFiles; - } - allowedUnsafeSysctls_.Add(other.allowedUnsafeSysctls_); - if (other.evictionSoft_ != null) { - if (evictionSoft_ == null) { - EvictionSoft = new global::Google.Cloud.Container.V1.EvictionSignals(); - } - EvictionSoft.MergeFrom(other.EvictionSoft); - } - if (other.evictionSoftGracePeriod_ != null) { - if (evictionSoftGracePeriod_ == null) { - EvictionSoftGracePeriod = new global::Google.Cloud.Container.V1.EvictionGracePeriod(); - } - EvictionSoftGracePeriod.MergeFrom(other.EvictionSoftGracePeriod); + if (other.MemoryAvailable.Length != 0) { + MemoryAvailable = other.MemoryAvailable; } - if (other.evictionMinimumReclaim_ != null) { - if (evictionMinimumReclaim_ == null) { - EvictionMinimumReclaim = new global::Google.Cloud.Container.V1.EvictionMinimumReclaim(); - } - EvictionMinimumReclaim.MergeFrom(other.EvictionMinimumReclaim); + if (other.NodefsAvailable.Length != 0) { + NodefsAvailable = other.NodefsAvailable; } - if (other.EvictionMaxPodGracePeriodSeconds != 0) { - EvictionMaxPodGracePeriodSeconds = other.EvictionMaxPodGracePeriodSeconds; + if (other.NodefsInodesFree.Length != 0) { + NodefsInodesFree = other.NodefsInodesFree; } - if (other.MaxParallelImagePulls != 0) { - MaxParallelImagePulls = other.MaxParallelImagePulls; + if (other.ImagefsAvailable.Length != 0) { + ImagefsAvailable = other.ImagefsAvailable; } - if (other.HasSingleProcessOomKill) { - SingleProcessOomKill = other.SingleProcessOomKill; + if (other.ImagefsInodesFree.Length != 0) { + ImagefsInodesFree = other.ImagefsInodesFree; + } + if (other.PidAvailable.Length != 0) { + PidAvailable = other.PidAvailable; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -4154,101 +7799,27 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { - CpuManagerPolicy = input.ReadString(); + MemoryAvailable = input.ReadString(); break; } case 18: { - bool? value = _single_cpuCfsQuota_codec.Read(input); - if (cpuCfsQuota_ == null || value != false) { - CpuCfsQuota = value; - } + NodefsAvailable = input.ReadString(); break; } case 26: { - CpuCfsQuotaPeriod = input.ReadString(); - break; - } - case 32: { - PodPidsLimit = input.ReadInt64(); - break; - } - case 56: { - InsecureKubeletReadonlyPortEnabled = input.ReadBool(); - break; - } - case 66: { - if (topologyManager_ == null) { - TopologyManager = new global::Google.Cloud.Container.V1.TopologyManager(); - } - input.ReadMessage(TopologyManager); - break; - } - case 74: { - if (memoryManager_ == null) { - MemoryManager = new global::Google.Cloud.Container.V1.MemoryManager(); - } - input.ReadMessage(MemoryManager); - break; - } - case 80: { - ImageGcLowThresholdPercent = input.ReadInt32(); - break; - } - case 88: { - ImageGcHighThresholdPercent = input.ReadInt32(); - break; - } - case 98: { - ImageMinimumGcAge = input.ReadString(); - break; - } - case 106: { - ImageMaximumGcAge = input.ReadString(); - break; - } - case 114: { - ContainerLogMaxSize = input.ReadString(); - break; - } - case 120: { - ContainerLogMaxFiles = input.ReadInt32(); - break; - } - case 130: { - allowedUnsafeSysctls_.AddEntriesFrom(input, _repeated_allowedUnsafeSysctls_codec); - break; - } - case 138: { - if (evictionSoft_ == null) { - EvictionSoft = new global::Google.Cloud.Container.V1.EvictionSignals(); - } - input.ReadMessage(EvictionSoft); - break; - } - case 146: { - if (evictionSoftGracePeriod_ == null) { - EvictionSoftGracePeriod = new global::Google.Cloud.Container.V1.EvictionGracePeriod(); - } - input.ReadMessage(EvictionSoftGracePeriod); - break; - } - case 154: { - if (evictionMinimumReclaim_ == null) { - EvictionMinimumReclaim = new global::Google.Cloud.Container.V1.EvictionMinimumReclaim(); - } - input.ReadMessage(EvictionMinimumReclaim); + NodefsInodesFree = input.ReadString(); break; } - case 160: { - EvictionMaxPodGracePeriodSeconds = input.ReadInt32(); + case 34: { + ImagefsAvailable = input.ReadString(); break; } - case 168: { - MaxParallelImagePulls = input.ReadInt32(); + case 42: { + ImagefsInodesFree = input.ReadString(); break; } - case 176: { - SingleProcessOomKill = input.ReadBool(); + case 50: { + PidAvailable = input.ReadString(); break; } } @@ -4267,101 +7838,27 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; case 10: { - CpuManagerPolicy = input.ReadString(); + MemoryAvailable = input.ReadString(); break; } case 18: { - bool? value = _single_cpuCfsQuota_codec.Read(ref input); - if (cpuCfsQuota_ == null || value != false) { - CpuCfsQuota = value; - } + NodefsAvailable = input.ReadString(); break; } case 26: { - CpuCfsQuotaPeriod = input.ReadString(); - break; - } - case 32: { - PodPidsLimit = input.ReadInt64(); - break; - } - case 56: { - InsecureKubeletReadonlyPortEnabled = input.ReadBool(); - break; - } - case 66: { - if (topologyManager_ == null) { - TopologyManager = new global::Google.Cloud.Container.V1.TopologyManager(); - } - input.ReadMessage(TopologyManager); - break; - } - case 74: { - if (memoryManager_ == null) { - MemoryManager = new global::Google.Cloud.Container.V1.MemoryManager(); - } - input.ReadMessage(MemoryManager); - break; - } - case 80: { - ImageGcLowThresholdPercent = input.ReadInt32(); - break; - } - case 88: { - ImageGcHighThresholdPercent = input.ReadInt32(); - break; - } - case 98: { - ImageMinimumGcAge = input.ReadString(); - break; - } - case 106: { - ImageMaximumGcAge = input.ReadString(); - break; - } - case 114: { - ContainerLogMaxSize = input.ReadString(); - break; - } - case 120: { - ContainerLogMaxFiles = input.ReadInt32(); - break; - } - case 130: { - allowedUnsafeSysctls_.AddEntriesFrom(ref input, _repeated_allowedUnsafeSysctls_codec); - break; - } - case 138: { - if (evictionSoft_ == null) { - EvictionSoft = new global::Google.Cloud.Container.V1.EvictionSignals(); - } - input.ReadMessage(EvictionSoft); - break; - } - case 146: { - if (evictionSoftGracePeriod_ == null) { - EvictionSoftGracePeriod = new global::Google.Cloud.Container.V1.EvictionGracePeriod(); - } - input.ReadMessage(EvictionSoftGracePeriod); - break; - } - case 154: { - if (evictionMinimumReclaim_ == null) { - EvictionMinimumReclaim = new global::Google.Cloud.Container.V1.EvictionMinimumReclaim(); - } - input.ReadMessage(EvictionMinimumReclaim); + NodefsInodesFree = input.ReadString(); break; } - case 160: { - EvictionMaxPodGracePeriodSeconds = input.ReadInt32(); + case 34: { + ImagefsAvailable = input.ReadString(); break; } - case 168: { - MaxParallelImagePulls = input.ReadInt32(); + case 42: { + ImagefsInodesFree = input.ReadString(); break; } - case 176: { - SingleProcessOomKill = input.ReadBool(); + case 50: { + PidAvailable = input.ReadString(); break; } } @@ -4372,26 +7869,30 @@ public void MergeFrom(pb::CodedInputStream input) { } /// - /// TopologyManager defines the configuration options for Topology Manager - /// feature. See - /// https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/ + /// Parameters that describe the nodes in a cluster. + /// + /// GKE Autopilot clusters do not + /// recognize parameters in `NodeConfig`. Use + /// [AutoprovisioningNodePoolDefaults][google.container.v1.AutoprovisioningNodePoolDefaults] + /// instead. /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class TopologyManager : pb::IMessage + public sealed partial class NodeConfig : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new TopologyManager()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new NodeConfig()); private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[3]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[8]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -4402,7 +7903,7 @@ public sealed partial class TopologyManager : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public TopologyManager() { + public NodeConfig() { OnConstruction(); } @@ -4410,634 +7911,962 @@ public TopologyManager() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public TopologyManager(TopologyManager other) : this() { - policy_ = other.policy_; - scope_ = other.scope_; + public NodeConfig(NodeConfig other) : this() { + _hasBits0 = other._hasBits0; + machineType_ = other.machineType_; + diskSizeGb_ = other.diskSizeGb_; + oauthScopes_ = other.oauthScopes_.Clone(); + serviceAccount_ = other.serviceAccount_; + metadata_ = other.metadata_.Clone(); + imageType_ = other.imageType_; + labels_ = other.labels_.Clone(); + localSsdCount_ = other.localSsdCount_; + tags_ = other.tags_.Clone(); + preemptible_ = other.preemptible_; + accelerators_ = other.accelerators_.Clone(); + diskType_ = other.diskType_; + minCpuPlatform_ = other.minCpuPlatform_; + workloadMetadataConfig_ = other.workloadMetadataConfig_ != null ? other.workloadMetadataConfig_.Clone() : null; + taints_ = other.taints_.Clone(); + sandboxConfig_ = other.sandboxConfig_ != null ? other.sandboxConfig_.Clone() : null; + nodeGroup_ = other.nodeGroup_; + reservationAffinity_ = other.reservationAffinity_ != null ? other.reservationAffinity_.Clone() : null; + shieldedInstanceConfig_ = other.shieldedInstanceConfig_ != null ? other.shieldedInstanceConfig_.Clone() : null; + linuxNodeConfig_ = other.linuxNodeConfig_ != null ? other.linuxNodeConfig_.Clone() : null; + kubeletConfig_ = other.kubeletConfig_ != null ? other.kubeletConfig_.Clone() : null; + bootDiskKmsKey_ = other.bootDiskKmsKey_; + gcfsConfig_ = other.gcfsConfig_ != null ? other.gcfsConfig_.Clone() : null; + advancedMachineFeatures_ = other.advancedMachineFeatures_ != null ? other.advancedMachineFeatures_.Clone() : null; + gvnic_ = other.gvnic_ != null ? other.gvnic_.Clone() : null; + spot_ = other.spot_; + confidentialNodes_ = other.confidentialNodes_ != null ? other.confidentialNodes_.Clone() : null; + fastSocket_ = other.fastSocket_ != null ? other.fastSocket_.Clone() : null; + resourceLabels_ = other.resourceLabels_.Clone(); + loggingConfig_ = other.loggingConfig_ != null ? other.loggingConfig_.Clone() : null; + windowsNodeConfig_ = other.windowsNodeConfig_ != null ? other.windowsNodeConfig_.Clone() : null; + localNvmeSsdBlockConfig_ = other.localNvmeSsdBlockConfig_ != null ? other.localNvmeSsdBlockConfig_.Clone() : null; + ephemeralStorageLocalSsdConfig_ = other.ephemeralStorageLocalSsdConfig_ != null ? other.ephemeralStorageLocalSsdConfig_.Clone() : null; + soleTenantConfig_ = other.soleTenantConfig_ != null ? other.soleTenantConfig_.Clone() : null; + containerdConfig_ = other.containerdConfig_ != null ? other.containerdConfig_.Clone() : null; + resourceManagerTags_ = other.resourceManagerTags_ != null ? other.resourceManagerTags_.Clone() : null; + enableConfidentialStorage_ = other.enableConfidentialStorage_; + secondaryBootDisks_ = other.secondaryBootDisks_.Clone(); + storagePools_ = other.storagePools_.Clone(); + secondaryBootDiskUpdateStrategy_ = other.secondaryBootDiskUpdateStrategy_ != null ? other.secondaryBootDiskUpdateStrategy_.Clone() : null; + gpuDirectConfig_ = other.gpuDirectConfig_ != null ? other.gpuDirectConfig_.Clone() : null; + maxRunDuration_ = other.maxRunDuration_ != null ? other.maxRunDuration_.Clone() : null; + localSsdEncryptionMode_ = other.localSsdEncryptionMode_; + effectiveCgroupMode_ = other.effectiveCgroupMode_; + flexStart_ = other.flexStart_; + bootDisk_ = other.bootDisk_ != null ? other.bootDisk_.Clone() : null; + consolidationDelay_ = other.consolidationDelay_ != null ? other.consolidationDelay_.Clone() : null; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public TopologyManager Clone() { - return new TopologyManager(this); + public NodeConfig Clone() { + return new NodeConfig(this); } - /// Field number for the "policy" field. - public const int PolicyFieldNumber = 1; - private string policy_ = ""; + /// Field number for the "machine_type" field. + public const int MachineTypeFieldNumber = 1; + private string machineType_ = ""; /// - /// Configures the strategy for resource alignment. - /// Allowed values are: + /// The name of a Google Compute Engine [machine + /// type](https://cloud.google.com/compute/docs/machine-types) /// - /// * none: the default policy, and does not perform any topology alignment. - /// * restricted: the topology manager stores the preferred NUMA node affinity - /// for the container, and will reject the pod if the affinity if not - /// preferred. - /// * best-effort: the topology manager stores the preferred NUMA node affinity - /// for the container. If the affinity is not preferred, the topology manager - /// will admit the pod to the node anyway. - /// * single-numa-node: the topology manager determines if the single NUMA node - /// affinity is possible. If it is, Topology Manager will store this and the - /// Hint Providers can then use this information when making the resource - /// allocation decision. If, however, this is not possible then the - /// Topology Manager will reject the pod from the node. This will result in a - /// pod in a Terminated state with a pod admission failure. + /// If unspecified, the default machine type is `e2-medium`. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string MachineType { + get { return machineType_; } + set { + machineType_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "disk_size_gb" field. + public const int DiskSizeGbFieldNumber = 2; + private int diskSizeGb_; + /// + /// Size of the disk attached to each node, specified in GB. + /// The smallest allowed disk size is 10GB. /// - /// The default policy value is 'none' if unspecified. - /// Details about each strategy can be found - /// [here](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/#topology-manager-policies). + /// If unspecified, the default disk size is 100GB. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string Policy { - get { return policy_; } + public int DiskSizeGb { + get { return diskSizeGb_; } set { - policy_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + diskSizeGb_ = value; } } - /// Field number for the "scope" field. - public const int ScopeFieldNumber = 2; - private string scope_ = ""; + /// Field number for the "oauth_scopes" field. + public const int OauthScopesFieldNumber = 3; + private static readonly pb::FieldCodec _repeated_oauthScopes_codec + = pb::FieldCodec.ForString(26); + private readonly pbc::RepeatedField oauthScopes_ = new pbc::RepeatedField(); /// - /// The Topology Manager aligns resources in following scopes: + /// The set of Google API scopes to be made available on all of the + /// node VMs under the "default" service account. /// - /// * container - /// * pod + /// The following scopes are recommended, but not required, and by default are + /// not included: /// - /// The default scope is 'container' if unspecified. - /// See - /// https://kubernetes.io/docs/tasks/administer-cluster/topology-manager/#topology-manager-scopes + /// * `https://www.googleapis.com/auth/compute` is required for mounting + /// persistent storage on your nodes. + /// * `https://www.googleapis.com/auth/devstorage.read_only` is required for + /// communicating with **gcr.io** + /// (the [Artifact Registry](https://cloud.google.com/artifact-registry/)). + /// + /// If unspecified, no scopes are added, unless Cloud Logging or Cloud + /// Monitoring are enabled, in which case their required scopes will be added. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField OauthScopes { + get { return oauthScopes_; } + } + + /// Field number for the "service_account" field. + public const int ServiceAccountFieldNumber = 9; + private string serviceAccount_ = ""; + /// + /// The Google Cloud Platform Service Account to be used by the node VMs. + /// Specify the email address of the Service Account; otherwise, if no Service + /// Account is specified, the "default" service account is used. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string ServiceAccount { + get { return serviceAccount_; } + set { + serviceAccount_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "metadata" field. + public const int MetadataFieldNumber = 4; + private static readonly pbc::MapField.Codec _map_metadata_codec + = new pbc::MapField.Codec(pb::FieldCodec.ForString(10, ""), pb::FieldCodec.ForString(18, ""), 34); + private readonly pbc::MapField metadata_ = new pbc::MapField(); + /// + /// The metadata key/value pairs assigned to instances in the cluster. + /// + /// Keys must conform to the regexp `[a-zA-Z0-9-_]+` and be less than 128 bytes + /// in length. These are reflected as part of a URL in the metadata server. + /// Additionally, to avoid ambiguity, keys must not conflict with any other + /// metadata keys for the project or be one of the reserved keys: + /// + /// - "cluster-location" + /// - "cluster-name" + /// - "cluster-uid" + /// - "configure-sh" + /// - "containerd-configure-sh" + /// - "enable-os-login" + /// - "gci-ensure-gke-docker" + /// - "gci-metrics-enabled" + /// - "gci-update-strategy" + /// - "instance-template" + /// - "kube-env" + /// - "startup-script" + /// - "user-data" + /// - "disable-address-manager" + /// - "windows-startup-script-ps1" + /// - "common-psm1" + /// - "k8s-node-setup-psm1" + /// - "install-ssh-psm1" + /// - "user-profile-psm1" + /// + /// Values are free-form strings, and only have meaning as interpreted by + /// the image running in the instance. The only restriction placed on them is + /// that each value's size must be less than or equal to 32 KB. + /// + /// The total size of all keys and values must be less than 512 KB. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::MapField Metadata { + get { return metadata_; } + } + + /// Field number for the "image_type" field. + public const int ImageTypeFieldNumber = 5; + private string imageType_ = ""; + /// + /// The image type to use for this node. Note that for a given image type, + /// the latest version of it will be used. Please see + /// https://cloud.google.com/kubernetes-engine/docs/concepts/node-images + /// for available image types. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string ImageType { + get { return imageType_; } + set { + imageType_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "labels" field. + public const int LabelsFieldNumber = 6; + private static readonly pbc::MapField.Codec _map_labels_codec + = new pbc::MapField.Codec(pb::FieldCodec.ForString(10, ""), pb::FieldCodec.ForString(18, ""), 50); + private readonly pbc::MapField labels_ = new pbc::MapField(); + /// + /// The map of Kubernetes labels (key/value pairs) to be applied to each node. + /// These will added in addition to any default label(s) that + /// Kubernetes may apply to the node. + /// In case of conflict in label keys, the applied set may differ depending on + /// the Kubernetes version -- it's best to assume the behavior is undefined + /// and conflicts should be avoided. + /// For more information, including usage and the valid values, see: + /// https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::MapField Labels { + get { return labels_; } + } + + /// Field number for the "local_ssd_count" field. + public const int LocalSsdCountFieldNumber = 7; + private int localSsdCount_; + /// + /// The number of local SSD disks to be attached to the node. + /// + /// The limit for this value is dependent upon the maximum number of + /// disks available on a machine per zone. See: + /// https://cloud.google.com/compute/docs/disks/local-ssd + /// for more information. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int LocalSsdCount { + get { return localSsdCount_; } + set { + localSsdCount_ = value; + } + } + + /// Field number for the "tags" field. + public const int TagsFieldNumber = 8; + private static readonly pb::FieldCodec _repeated_tags_codec + = pb::FieldCodec.ForString(66); + private readonly pbc::RepeatedField tags_ = new pbc::RepeatedField(); + /// + /// The list of instance tags applied to all nodes. Tags are used to identify + /// valid sources or targets for network firewalls and are specified by + /// the client during cluster or node pool creation. Each tag within the list + /// must comply with RFC1035. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField Tags { + get { return tags_; } + } + + /// Field number for the "preemptible" field. + public const int PreemptibleFieldNumber = 10; + private bool preemptible_; + /// + /// Whether the nodes are created as preemptible VM instances. See: + /// https://cloud.google.com/compute/docs/instances/preemptible + /// for more information about preemptible VM instances. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string Scope { - get { return scope_; } + public bool Preemptible { + get { return preemptible_; } set { - scope_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + preemptible_ = value; } } + /// Field number for the "accelerators" field. + public const int AcceleratorsFieldNumber = 11; + private static readonly pb::FieldCodec _repeated_accelerators_codec + = pb::FieldCodec.ForMessage(90, global::Google.Cloud.Container.V1.AcceleratorConfig.Parser); + private readonly pbc::RepeatedField accelerators_ = new pbc::RepeatedField(); + /// + /// A list of hardware accelerators to be attached to each node. + /// See + /// https://cloud.google.com/compute/docs/gpus + /// for more information about support for GPUs. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override bool Equals(object other) { - return Equals(other as TopologyManager); + public pbc::RepeatedField Accelerators { + get { return accelerators_; } } + /// Field number for the "disk_type" field. + public const int DiskTypeFieldNumber = 12; + private string diskType_ = ""; + /// + /// Type of the disk attached to each node (e.g. 'pd-standard', 'pd-ssd' or + /// 'pd-balanced') + /// + /// If unspecified, the default disk type is 'pd-standard' + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(TopologyManager other) { - if (ReferenceEquals(other, null)) { - return false; - } - if (ReferenceEquals(other, this)) { - return true; + public string DiskType { + get { return diskType_; } + set { + diskType_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } - if (Policy != other.Policy) return false; - if (Scope != other.Scope) return false; - return Equals(_unknownFields, other._unknownFields); } + /// Field number for the "min_cpu_platform" field. + public const int MinCpuPlatformFieldNumber = 13; + private string minCpuPlatform_ = ""; + /// + /// Minimum CPU platform to be used by this instance. The instance may be + /// scheduled on the specified or newer CPU platform. Applicable values are the + /// friendly names of CPU platforms, such as + /// `minCpuPlatform: "Intel Haswell"` or + /// `minCpuPlatform: "Intel Sandy Bridge"`. For more + /// information, read [how to specify min CPU + /// platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform) + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override int GetHashCode() { - int hash = 1; - if (Policy.Length != 0) hash ^= Policy.GetHashCode(); - if (Scope.Length != 0) hash ^= Scope.GetHashCode(); - if (_unknownFields != null) { - hash ^= _unknownFields.GetHashCode(); + public string MinCpuPlatform { + get { return minCpuPlatform_; } + set { + minCpuPlatform_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } - return hash; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override string ToString() { - return pb::JsonFormatter.ToDiagnosticString(this); } + /// Field number for the "workload_metadata_config" field. + public const int WorkloadMetadataConfigFieldNumber = 14; + private global::Google.Cloud.Container.V1.WorkloadMetadataConfig workloadMetadataConfig_; + /// + /// The workload metadata configuration for this node. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void WriteTo(pb::CodedOutputStream output) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - output.WriteRawMessage(this); - #else - if (Policy.Length != 0) { - output.WriteRawTag(10); - output.WriteString(Policy); - } - if (Scope.Length != 0) { - output.WriteRawTag(18); - output.WriteString(Scope); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(output); + public global::Google.Cloud.Container.V1.WorkloadMetadataConfig WorkloadMetadataConfig { + get { return workloadMetadataConfig_; } + set { + workloadMetadataConfig_ = value; } - #endif } - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + /// Field number for the "taints" field. + public const int TaintsFieldNumber = 15; + private static readonly pb::FieldCodec _repeated_taints_codec + = pb::FieldCodec.ForMessage(122, global::Google.Cloud.Container.V1.NodeTaint.Parser); + private readonly pbc::RepeatedField taints_ = new pbc::RepeatedField(); + /// + /// List of kubernetes taints to be applied to each node. + /// + /// For more information, including usage and the valid values, see: + /// https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (Policy.Length != 0) { - output.WriteRawTag(10); - output.WriteString(Policy); - } - if (Scope.Length != 0) { - output.WriteRawTag(18); - output.WriteString(Scope); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(ref output); - } + public pbc::RepeatedField Taints { + get { return taints_; } } - #endif + /// Field number for the "sandbox_config" field. + public const int SandboxConfigFieldNumber = 17; + private global::Google.Cloud.Container.V1.SandboxConfig sandboxConfig_; + /// + /// Sandbox configuration for this node. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int CalculateSize() { - int size = 0; - if (Policy.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(Policy); - } - if (Scope.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(Scope); - } - if (_unknownFields != null) { - size += _unknownFields.CalculateSize(); + public global::Google.Cloud.Container.V1.SandboxConfig SandboxConfig { + get { return sandboxConfig_; } + set { + sandboxConfig_ = value; } - return size; } + /// Field number for the "node_group" field. + public const int NodeGroupFieldNumber = 18; + private string nodeGroup_ = ""; + /// + /// Setting this field will assign instances of this + /// pool to run on the specified node group. This is useful for running + /// workloads on [sole tenant + /// nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes). + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(TopologyManager other) { - if (other == null) { - return; - } - if (other.Policy.Length != 0) { - Policy = other.Policy; - } - if (other.Scope.Length != 0) { - Scope = other.Scope; + public string NodeGroup { + get { return nodeGroup_; } + set { + nodeGroup_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } - _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } + /// Field number for the "reservation_affinity" field. + public const int ReservationAffinityFieldNumber = 19; + private global::Google.Cloud.Container.V1.ReservationAffinity reservationAffinity_; + /// + /// The optional reservation affinity. Setting this field will apply + /// the specified [Zonal Compute + /// Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) + /// to this node pool. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(pb::CodedInputStream input) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - input.ReadRawMessage(this); - #else - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); - break; - case 10: { - Policy = input.ReadString(); - break; - } - case 18: { - Scope = input.ReadString(); - break; - } - } + public global::Google.Cloud.Container.V1.ReservationAffinity ReservationAffinity { + get { return reservationAffinity_; } + set { + reservationAffinity_ = value; } - #endif } - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + /// Field number for the "shielded_instance_config" field. + public const int ShieldedInstanceConfigFieldNumber = 20; + private global::Google.Cloud.Container.V1.ShieldedInstanceConfig shieldedInstanceConfig_; + /// + /// Shielded Instance options. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); - break; - case 10: { - Policy = input.ReadString(); - break; - } - case 18: { - Scope = input.ReadString(); - break; - } - } + public global::Google.Cloud.Container.V1.ShieldedInstanceConfig ShieldedInstanceConfig { + get { return shieldedInstanceConfig_; } + set { + shieldedInstanceConfig_ = value; } } - #endif - - } - - /// - /// The option enables the Kubernetes NUMA-aware Memory Manager feature. - /// Detailed description about the feature can be found - /// [here](https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/). - /// - [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class MemoryManager : pb::IMessage - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - , pb::IBufferMessage - #endif - { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new MemoryManager()); - private pb::UnknownFieldSet _unknownFields; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + /// Field number for the "linux_node_config" field. + public const int LinuxNodeConfigFieldNumber = 21; + private global::Google.Cloud.Container.V1.LinuxNodeConfig linuxNodeConfig_; + /// + /// Parameters that can be configured on Linux nodes. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[4]; } + public global::Google.Cloud.Container.V1.LinuxNodeConfig LinuxNodeConfig { + get { return linuxNodeConfig_; } + set { + linuxNodeConfig_ = value; + } } + /// Field number for the "kubelet_config" field. + public const int KubeletConfigFieldNumber = 22; + private global::Google.Cloud.Container.V1.NodeKubeletConfig kubeletConfig_; + /// + /// Node kubelet configs. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - pbr::MessageDescriptor pb::IMessage.Descriptor { - get { return Descriptor; } + public global::Google.Cloud.Container.V1.NodeKubeletConfig KubeletConfig { + get { return kubeletConfig_; } + set { + kubeletConfig_ = value; + } } + /// Field number for the "boot_disk_kms_key" field. + public const int BootDiskKmsKeyFieldNumber = 23; + private string bootDiskKmsKey_ = ""; + /// + /// + /// The Customer Managed Encryption Key used to encrypt the boot disk attached + /// to each node in the node pool. This should be of the form + /// projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME]. + /// For more information about protecting resources with Cloud KMS Keys please + /// see: + /// https://cloud.google.com/compute/docs/disks/customer-managed-encryption + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public MemoryManager() { - OnConstruction(); + public string BootDiskKmsKey { + get { return bootDiskKmsKey_; } + set { + bootDiskKmsKey_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } } - partial void OnConstruction(); - + /// Field number for the "gcfs_config" field. + public const int GcfsConfigFieldNumber = 25; + private global::Google.Cloud.Container.V1.GcfsConfig gcfsConfig_; + /// + /// Google Container File System (image streaming) configs. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public MemoryManager(MemoryManager other) : this() { - policy_ = other.policy_; - _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + public global::Google.Cloud.Container.V1.GcfsConfig GcfsConfig { + get { return gcfsConfig_; } + set { + gcfsConfig_ = value; + } } + /// Field number for the "advanced_machine_features" field. + public const int AdvancedMachineFeaturesFieldNumber = 26; + private global::Google.Cloud.Container.V1.AdvancedMachineFeatures advancedMachineFeatures_; + /// + /// Advanced features for the Compute Engine VM. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public MemoryManager Clone() { - return new MemoryManager(this); + public global::Google.Cloud.Container.V1.AdvancedMachineFeatures AdvancedMachineFeatures { + get { return advancedMachineFeatures_; } + set { + advancedMachineFeatures_ = value; + } } - /// Field number for the "policy" field. - public const int PolicyFieldNumber = 1; - private string policy_ = ""; + /// Field number for the "gvnic" field. + public const int GvnicFieldNumber = 29; + private global::Google.Cloud.Container.V1.VirtualNIC gvnic_; /// - /// Controls the memory management policy on the Node. - /// See - /// https://kubernetes.io/docs/tasks/administer-cluster/memory-manager/#policies - /// - /// The following values are allowed. - /// * "none" - /// * "static" - /// The default value is 'none' if unspecified. + /// Enable or disable gvnic in the node pool. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string Policy { - get { return policy_; } + public global::Google.Cloud.Container.V1.VirtualNIC Gvnic { + get { return gvnic_; } set { - policy_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + gvnic_ = value; } } + /// Field number for the "spot" field. + public const int SpotFieldNumber = 32; + private bool spot_; + /// + /// Spot flag for enabling Spot VM, which is a rebrand of + /// the existing preemptible flag. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override bool Equals(object other) { - return Equals(other as MemoryManager); + public bool Spot { + get { return spot_; } + set { + spot_ = value; + } } + /// Field number for the "confidential_nodes" field. + public const int ConfidentialNodesFieldNumber = 35; + private global::Google.Cloud.Container.V1.ConfidentialNodes confidentialNodes_; + /// + /// Confidential nodes config. + /// All the nodes in the node pool will be Confidential VM once enabled. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(MemoryManager other) { - if (ReferenceEquals(other, null)) { - return false; - } - if (ReferenceEquals(other, this)) { - return true; + public global::Google.Cloud.Container.V1.ConfidentialNodes ConfidentialNodes { + get { return confidentialNodes_; } + set { + confidentialNodes_ = value; } - if (Policy != other.Policy) return false; - return Equals(_unknownFields, other._unknownFields); } + /// Field number for the "fast_socket" field. + public const int FastSocketFieldNumber = 36; + private global::Google.Cloud.Container.V1.FastSocket fastSocket_; + /// + /// Enable or disable NCCL fast socket for the node pool. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override int GetHashCode() { - int hash = 1; - if (Policy.Length != 0) hash ^= Policy.GetHashCode(); - if (_unknownFields != null) { - hash ^= _unknownFields.GetHashCode(); + public global::Google.Cloud.Container.V1.FastSocket FastSocket { + get { return fastSocket_; } + set { + fastSocket_ = value; } - return hash; } + /// Field number for the "resource_labels" field. + public const int ResourceLabelsFieldNumber = 37; + private static readonly pbc::MapField.Codec _map_resourceLabels_codec + = new pbc::MapField.Codec(pb::FieldCodec.ForString(10, ""), pb::FieldCodec.ForString(18, ""), 298); + private readonly pbc::MapField resourceLabels_ = new pbc::MapField(); + /// + /// The resource labels for the node pool to use to annotate any related + /// Google Compute Engine resources. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override string ToString() { - return pb::JsonFormatter.ToDiagnosticString(this); + public pbc::MapField ResourceLabels { + get { return resourceLabels_; } } + /// Field number for the "logging_config" field. + public const int LoggingConfigFieldNumber = 38; + private global::Google.Cloud.Container.V1.NodePoolLoggingConfig loggingConfig_; + /// + /// Logging configuration. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void WriteTo(pb::CodedOutputStream output) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - output.WriteRawMessage(this); - #else - if (Policy.Length != 0) { - output.WriteRawTag(10); - output.WriteString(Policy); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(output); + public global::Google.Cloud.Container.V1.NodePoolLoggingConfig LoggingConfig { + get { return loggingConfig_; } + set { + loggingConfig_ = value; } - #endif } - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + /// Field number for the "windows_node_config" field. + public const int WindowsNodeConfigFieldNumber = 39; + private global::Google.Cloud.Container.V1.WindowsNodeConfig windowsNodeConfig_; + /// + /// Parameters that can be configured on Windows nodes. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (Policy.Length != 0) { - output.WriteRawTag(10); - output.WriteString(Policy); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(ref output); + public global::Google.Cloud.Container.V1.WindowsNodeConfig WindowsNodeConfig { + get { return windowsNodeConfig_; } + set { + windowsNodeConfig_ = value; } } - #endif + /// Field number for the "local_nvme_ssd_block_config" field. + public const int LocalNvmeSsdBlockConfigFieldNumber = 40; + private global::Google.Cloud.Container.V1.LocalNvmeSsdBlockConfig localNvmeSsdBlockConfig_; + /// + /// Parameters for using raw-block Local NVMe SSDs. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int CalculateSize() { - int size = 0; - if (Policy.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(Policy); - } - if (_unknownFields != null) { - size += _unknownFields.CalculateSize(); + public global::Google.Cloud.Container.V1.LocalNvmeSsdBlockConfig LocalNvmeSsdBlockConfig { + get { return localNvmeSsdBlockConfig_; } + set { + localNvmeSsdBlockConfig_ = value; } - return size; } + /// Field number for the "ephemeral_storage_local_ssd_config" field. + public const int EphemeralStorageLocalSsdConfigFieldNumber = 41; + private global::Google.Cloud.Container.V1.EphemeralStorageLocalSsdConfig ephemeralStorageLocalSsdConfig_; + /// + /// Parameters for the node ephemeral storage using Local SSDs. + /// If unspecified, ephemeral storage is backed by the boot disk. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(MemoryManager other) { - if (other == null) { - return; - } - if (other.Policy.Length != 0) { - Policy = other.Policy; + public global::Google.Cloud.Container.V1.EphemeralStorageLocalSsdConfig EphemeralStorageLocalSsdConfig { + get { return ephemeralStorageLocalSsdConfig_; } + set { + ephemeralStorageLocalSsdConfig_ = value; } - _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } + /// Field number for the "sole_tenant_config" field. + public const int SoleTenantConfigFieldNumber = 42; + private global::Google.Cloud.Container.V1.SoleTenantConfig soleTenantConfig_; + /// + /// Parameters for node pools to be backed by shared sole tenant node groups. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(pb::CodedInputStream input) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - input.ReadRawMessage(this); - #else - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); - break; - case 10: { - Policy = input.ReadString(); - break; - } - } + public global::Google.Cloud.Container.V1.SoleTenantConfig SoleTenantConfig { + get { return soleTenantConfig_; } + set { + soleTenantConfig_ = value; } - #endif } - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + /// Field number for the "containerd_config" field. + public const int ContainerdConfigFieldNumber = 43; + private global::Google.Cloud.Container.V1.ContainerdConfig containerdConfig_; + /// + /// Parameters for containerd customization. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); - break; - case 10: { - Policy = input.ReadString(); - break; - } - } + public global::Google.Cloud.Container.V1.ContainerdConfig ContainerdConfig { + get { return containerdConfig_; } + set { + containerdConfig_ = value; } } - #endif - - } - /// - /// Eviction signals are the current state of a particular resource at a specific - /// point in time. The kubelet uses eviction signals to make eviction decisions - /// by comparing the signals to eviction thresholds, which are the minimum amount - /// of the resource that should be available on the node. - /// - [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class EvictionSignals : pb::IMessage - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - , pb::IBufferMessage - #endif - { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new EvictionSignals()); - private pb::UnknownFieldSet _unknownFields; + /// Field number for the "resource_manager_tags" field. + public const int ResourceManagerTagsFieldNumber = 45; + private global::Google.Cloud.Container.V1.ResourceManagerTags resourceManagerTags_; + /// + /// A map of resource manager tag keys and values to be attached to the nodes. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public global::Google.Cloud.Container.V1.ResourceManagerTags ResourceManagerTags { + get { return resourceManagerTags_; } + set { + resourceManagerTags_ = value; + } + } + /// Field number for the "enable_confidential_storage" field. + public const int EnableConfidentialStorageFieldNumber = 46; + private bool enableConfidentialStorage_; + /// + /// Optional. Reserved for future use. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[5]; } + public bool EnableConfidentialStorage { + get { return enableConfidentialStorage_; } + set { + enableConfidentialStorage_ = value; + } } + /// Field number for the "secondary_boot_disks" field. + public const int SecondaryBootDisksFieldNumber = 48; + private static readonly pb::FieldCodec _repeated_secondaryBootDisks_codec + = pb::FieldCodec.ForMessage(386, global::Google.Cloud.Container.V1.SecondaryBootDisk.Parser); + private readonly pbc::RepeatedField secondaryBootDisks_ = new pbc::RepeatedField(); + /// + /// List of secondary boot disks attached to the nodes. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - pbr::MessageDescriptor pb::IMessage.Descriptor { - get { return Descriptor; } + public pbc::RepeatedField SecondaryBootDisks { + get { return secondaryBootDisks_; } } + /// Field number for the "storage_pools" field. + public const int StoragePoolsFieldNumber = 49; + private static readonly pb::FieldCodec _repeated_storagePools_codec + = pb::FieldCodec.ForString(394); + private readonly pbc::RepeatedField storagePools_ = new pbc::RepeatedField(); + /// + /// List of Storage Pools where boot disks are provisioned. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public EvictionSignals() { - OnConstruction(); + public pbc::RepeatedField StoragePools { + get { return storagePools_; } } - partial void OnConstruction(); - + /// Field number for the "secondary_boot_disk_update_strategy" field. + public const int SecondaryBootDiskUpdateStrategyFieldNumber = 50; + private global::Google.Cloud.Container.V1.SecondaryBootDiskUpdateStrategy secondaryBootDiskUpdateStrategy_; + /// + /// Secondary boot disk update strategy. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public EvictionSignals(EvictionSignals other) : this() { - memoryAvailable_ = other.memoryAvailable_; - nodefsAvailable_ = other.nodefsAvailable_; - nodefsInodesFree_ = other.nodefsInodesFree_; - imagefsAvailable_ = other.imagefsAvailable_; - imagefsInodesFree_ = other.imagefsInodesFree_; - pidAvailable_ = other.pidAvailable_; - _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + public global::Google.Cloud.Container.V1.SecondaryBootDiskUpdateStrategy SecondaryBootDiskUpdateStrategy { + get { return secondaryBootDiskUpdateStrategy_; } + set { + secondaryBootDiskUpdateStrategy_ = value; + } } + /// Field number for the "gpu_direct_config" field. + public const int GpuDirectConfigFieldNumber = 51; + private global::Google.Cloud.Container.V1.GPUDirectConfig gpuDirectConfig_; + /// + /// The configuration for GPU Direct + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public EvictionSignals Clone() { - return new EvictionSignals(this); + public global::Google.Cloud.Container.V1.GPUDirectConfig GpuDirectConfig { + get { return gpuDirectConfig_; } + set { + gpuDirectConfig_ = value; + } } - /// Field number for the "memory_available" field. - public const int MemoryAvailableFieldNumber = 1; - private string memoryAvailable_ = ""; + /// Field number for the "max_run_duration" field. + public const int MaxRunDurationFieldNumber = 53; + private global::Google.Protobuf.WellKnownTypes.Duration maxRunDuration_; /// - /// Optional. Memory available (i.e. capacity - workingSet), in bytes. Defines - /// the amount of "memory.available" signal in kubelet. Default is unset, if - /// not specified in the kubelet config. Format: positive number + unit, e.g. - /// 100Ki, 10Mi, 5Gi. Valid units are Ki, Mi, Gi. Must be >= 100Mi and <= 50% - /// of the node's memory. See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals + /// The maximum duration for the nodes to exist. + /// If unspecified, the nodes can exist indefinitely. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string MemoryAvailable { - get { return memoryAvailable_; } + public global::Google.Protobuf.WellKnownTypes.Duration MaxRunDuration { + get { return maxRunDuration_; } set { - memoryAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + maxRunDuration_ = value; } } - /// Field number for the "nodefs_available" field. - public const int NodefsAvailableFieldNumber = 2; - private string nodefsAvailable_ = ""; + /// Field number for the "local_ssd_encryption_mode" field. + public const int LocalSsdEncryptionModeFieldNumber = 54; + private readonly static global::Google.Cloud.Container.V1.NodeConfig.Types.LocalSsdEncryptionMode LocalSsdEncryptionModeDefaultValue = global::Google.Cloud.Container.V1.NodeConfig.Types.LocalSsdEncryptionMode.Unspecified; + + private global::Google.Cloud.Container.V1.NodeConfig.Types.LocalSsdEncryptionMode localSsdEncryptionMode_; /// - /// Optional. Amount of storage available on filesystem that kubelet uses for - /// volumes, daemon logs, etc. Defines the amount of "nodefs.available" signal - /// in kubelet. Default is unset, if not specified in the kubelet config. It - /// takses percentage value for now. Sample format: "30%". Must be >= 10% and - /// <= 50%. See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals + /// Specifies which method should be used for encrypting the + /// Local SSDs attached to the node. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string NodefsAvailable { - get { return nodefsAvailable_; } + public global::Google.Cloud.Container.V1.NodeConfig.Types.LocalSsdEncryptionMode LocalSsdEncryptionMode { + get { if ((_hasBits0 & 1) != 0) { return localSsdEncryptionMode_; } else { return LocalSsdEncryptionModeDefaultValue; } } set { - nodefsAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + _hasBits0 |= 1; + localSsdEncryptionMode_ = value; } } + /// Gets whether the "local_ssd_encryption_mode" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasLocalSsdEncryptionMode { + get { return (_hasBits0 & 1) != 0; } + } + /// Clears the value of the "local_ssd_encryption_mode" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearLocalSsdEncryptionMode() { + _hasBits0 &= ~1; + } - /// Field number for the "nodefs_inodes_free" field. - public const int NodefsInodesFreeFieldNumber = 3; - private string nodefsInodesFree_ = ""; + /// Field number for the "effective_cgroup_mode" field. + public const int EffectiveCgroupModeFieldNumber = 55; + private global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode effectiveCgroupMode_ = global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode.Unspecified; /// - /// Optional. Amount of inodes available on filesystem that kubelet uses for - /// volumes, daemon logs, etc. Defines the amount of "nodefs.inodesFree" signal - /// in kubelet. Default is unset, if not specified in the kubelet config. Linux - /// only. It takses percentage value for now. Sample format: "30%". Must be >= - /// 5% and <= 50%. See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals + /// Output only. effective_cgroup_mode is the cgroup mode actually used by the + /// node pool. It is determined by the cgroup mode specified in the + /// LinuxNodeConfig or the default cgroup mode based on the cluster creation + /// version. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string NodefsInodesFree { - get { return nodefsInodesFree_; } + public global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode EffectiveCgroupMode { + get { return effectiveCgroupMode_; } set { - nodefsInodesFree_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + effectiveCgroupMode_ = value; } } - /// Field number for the "imagefs_available" field. - public const int ImagefsAvailableFieldNumber = 4; - private string imagefsAvailable_ = ""; + /// Field number for the "flex_start" field. + public const int FlexStartFieldNumber = 56; + private readonly static bool FlexStartDefaultValue = false; + + private bool flexStart_; /// - /// Optional. Amount of storage available on filesystem that container runtime - /// uses for storing images layers. If the container filesystem and image - /// filesystem are not separate, then imagefs can store both image layers and - /// writeable layers. Defines the amount of "imagefs.available" signal in - /// kubelet. Default is unset, if not specified in the kubelet config. It - /// takses percentage value for now. Sample format: "30%". Must be >= 15% and - /// <= 50%. See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals + /// Flex Start flag for enabling Flex Start VM. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string ImagefsAvailable { - get { return imagefsAvailable_; } + public bool FlexStart { + get { if ((_hasBits0 & 2) != 0) { return flexStart_; } else { return FlexStartDefaultValue; } } set { - imagefsAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + _hasBits0 |= 2; + flexStart_ = value; } } + /// Gets whether the "flex_start" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasFlexStart { + get { return (_hasBits0 & 2) != 0; } + } + /// Clears the value of the "flex_start" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearFlexStart() { + _hasBits0 &= ~2; + } - /// Field number for the "imagefs_inodes_free" field. - public const int ImagefsInodesFreeFieldNumber = 5; - private string imagefsInodesFree_ = ""; + /// Field number for the "boot_disk" field. + public const int BootDiskFieldNumber = 57; + private global::Google.Cloud.Container.V1.BootDisk bootDisk_; /// - /// Optional. Amount of inodes available on filesystem that container runtime - /// uses for storing images layers. Defines the amount of "imagefs.inodesFree" - /// signal in kubelet. Default is unset, if not specified in the kubelet - /// config. Linux only. It takses percentage value for now. Sample format: - /// "30%". Must be >= 5% and <= 50%. See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals + /// The boot disk configuration for the node pool. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string ImagefsInodesFree { - get { return imagefsInodesFree_; } + public global::Google.Cloud.Container.V1.BootDisk BootDisk { + get { return bootDisk_; } set { - imagefsInodesFree_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + bootDisk_ = value; } } - /// Field number for the "pid_available" field. - public const int PidAvailableFieldNumber = 6; - private string pidAvailable_ = ""; + /// Field number for the "consolidation_delay" field. + public const int ConsolidationDelayFieldNumber = 60; + private global::Google.Protobuf.WellKnownTypes.Duration consolidationDelay_; /// - /// Optional. Amount of PID available for pod allocation. Defines the amount of - /// "pid.available" signal in kubelet. Default is unset, if not specified in - /// the kubelet config. It takses percentage value for now. Sample format: - /// "30%". Must be >= 10% and <= 50%. See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals + /// Consolidation delay defines duration after which the Cluster Autoscaler can + /// scale down underutilized nodes. If not set, nodes are scaled down by + /// default behavior, i.e. according to the chosen autoscaling profile. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string PidAvailable { - get { return pidAvailable_; } + public global::Google.Protobuf.WellKnownTypes.Duration ConsolidationDelay { + get { return consolidationDelay_; } set { - pidAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + consolidationDelay_ = value; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as EvictionSignals); + return Equals(other as NodeConfig); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(EvictionSignals other) { + public bool Equals(NodeConfig other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (MemoryAvailable != other.MemoryAvailable) return false; - if (NodefsAvailable != other.NodefsAvailable) return false; - if (NodefsInodesFree != other.NodefsInodesFree) return false; - if (ImagefsAvailable != other.ImagefsAvailable) return false; - if (ImagefsInodesFree != other.ImagefsInodesFree) return false; - if (PidAvailable != other.PidAvailable) return false; + if (MachineType != other.MachineType) return false; + if (DiskSizeGb != other.DiskSizeGb) return false; + if(!oauthScopes_.Equals(other.oauthScopes_)) return false; + if (ServiceAccount != other.ServiceAccount) return false; + if (!Metadata.Equals(other.Metadata)) return false; + if (ImageType != other.ImageType) return false; + if (!Labels.Equals(other.Labels)) return false; + if (LocalSsdCount != other.LocalSsdCount) return false; + if(!tags_.Equals(other.tags_)) return false; + if (Preemptible != other.Preemptible) return false; + if(!accelerators_.Equals(other.accelerators_)) return false; + if (DiskType != other.DiskType) return false; + if (MinCpuPlatform != other.MinCpuPlatform) return false; + if (!object.Equals(WorkloadMetadataConfig, other.WorkloadMetadataConfig)) return false; + if(!taints_.Equals(other.taints_)) return false; + if (!object.Equals(SandboxConfig, other.SandboxConfig)) return false; + if (NodeGroup != other.NodeGroup) return false; + if (!object.Equals(ReservationAffinity, other.ReservationAffinity)) return false; + if (!object.Equals(ShieldedInstanceConfig, other.ShieldedInstanceConfig)) return false; + if (!object.Equals(LinuxNodeConfig, other.LinuxNodeConfig)) return false; + if (!object.Equals(KubeletConfig, other.KubeletConfig)) return false; + if (BootDiskKmsKey != other.BootDiskKmsKey) return false; + if (!object.Equals(GcfsConfig, other.GcfsConfig)) return false; + if (!object.Equals(AdvancedMachineFeatures, other.AdvancedMachineFeatures)) return false; + if (!object.Equals(Gvnic, other.Gvnic)) return false; + if (Spot != other.Spot) return false; + if (!object.Equals(ConfidentialNodes, other.ConfidentialNodes)) return false; + if (!object.Equals(FastSocket, other.FastSocket)) return false; + if (!ResourceLabels.Equals(other.ResourceLabels)) return false; + if (!object.Equals(LoggingConfig, other.LoggingConfig)) return false; + if (!object.Equals(WindowsNodeConfig, other.WindowsNodeConfig)) return false; + if (!object.Equals(LocalNvmeSsdBlockConfig, other.LocalNvmeSsdBlockConfig)) return false; + if (!object.Equals(EphemeralStorageLocalSsdConfig, other.EphemeralStorageLocalSsdConfig)) return false; + if (!object.Equals(SoleTenantConfig, other.SoleTenantConfig)) return false; + if (!object.Equals(ContainerdConfig, other.ContainerdConfig)) return false; + if (!object.Equals(ResourceManagerTags, other.ResourceManagerTags)) return false; + if (EnableConfidentialStorage != other.EnableConfidentialStorage) return false; + if(!secondaryBootDisks_.Equals(other.secondaryBootDisks_)) return false; + if(!storagePools_.Equals(other.storagePools_)) return false; + if (!object.Equals(SecondaryBootDiskUpdateStrategy, other.SecondaryBootDiskUpdateStrategy)) return false; + if (!object.Equals(GpuDirectConfig, other.GpuDirectConfig)) return false; + if (!object.Equals(MaxRunDuration, other.MaxRunDuration)) return false; + if (LocalSsdEncryptionMode != other.LocalSsdEncryptionMode) return false; + if (EffectiveCgroupMode != other.EffectiveCgroupMode) return false; + if (FlexStart != other.FlexStart) return false; + if (!object.Equals(BootDisk, other.BootDisk)) return false; + if (!object.Equals(ConsolidationDelay, other.ConsolidationDelay)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -5045,12 +8874,53 @@ public bool Equals(EvictionSignals other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (MemoryAvailable.Length != 0) hash ^= MemoryAvailable.GetHashCode(); - if (NodefsAvailable.Length != 0) hash ^= NodefsAvailable.GetHashCode(); - if (NodefsInodesFree.Length != 0) hash ^= NodefsInodesFree.GetHashCode(); - if (ImagefsAvailable.Length != 0) hash ^= ImagefsAvailable.GetHashCode(); - if (ImagefsInodesFree.Length != 0) hash ^= ImagefsInodesFree.GetHashCode(); - if (PidAvailable.Length != 0) hash ^= PidAvailable.GetHashCode(); + if (MachineType.Length != 0) hash ^= MachineType.GetHashCode(); + if (DiskSizeGb != 0) hash ^= DiskSizeGb.GetHashCode(); + hash ^= oauthScopes_.GetHashCode(); + if (ServiceAccount.Length != 0) hash ^= ServiceAccount.GetHashCode(); + hash ^= Metadata.GetHashCode(); + if (ImageType.Length != 0) hash ^= ImageType.GetHashCode(); + hash ^= Labels.GetHashCode(); + if (LocalSsdCount != 0) hash ^= LocalSsdCount.GetHashCode(); + hash ^= tags_.GetHashCode(); + if (Preemptible != false) hash ^= Preemptible.GetHashCode(); + hash ^= accelerators_.GetHashCode(); + if (DiskType.Length != 0) hash ^= DiskType.GetHashCode(); + if (MinCpuPlatform.Length != 0) hash ^= MinCpuPlatform.GetHashCode(); + if (workloadMetadataConfig_ != null) hash ^= WorkloadMetadataConfig.GetHashCode(); + hash ^= taints_.GetHashCode(); + if (sandboxConfig_ != null) hash ^= SandboxConfig.GetHashCode(); + if (NodeGroup.Length != 0) hash ^= NodeGroup.GetHashCode(); + if (reservationAffinity_ != null) hash ^= ReservationAffinity.GetHashCode(); + if (shieldedInstanceConfig_ != null) hash ^= ShieldedInstanceConfig.GetHashCode(); + if (linuxNodeConfig_ != null) hash ^= LinuxNodeConfig.GetHashCode(); + if (kubeletConfig_ != null) hash ^= KubeletConfig.GetHashCode(); + if (BootDiskKmsKey.Length != 0) hash ^= BootDiskKmsKey.GetHashCode(); + if (gcfsConfig_ != null) hash ^= GcfsConfig.GetHashCode(); + if (advancedMachineFeatures_ != null) hash ^= AdvancedMachineFeatures.GetHashCode(); + if (gvnic_ != null) hash ^= Gvnic.GetHashCode(); + if (Spot != false) hash ^= Spot.GetHashCode(); + if (confidentialNodes_ != null) hash ^= ConfidentialNodes.GetHashCode(); + if (fastSocket_ != null) hash ^= FastSocket.GetHashCode(); + hash ^= ResourceLabels.GetHashCode(); + if (loggingConfig_ != null) hash ^= LoggingConfig.GetHashCode(); + if (windowsNodeConfig_ != null) hash ^= WindowsNodeConfig.GetHashCode(); + if (localNvmeSsdBlockConfig_ != null) hash ^= LocalNvmeSsdBlockConfig.GetHashCode(); + if (ephemeralStorageLocalSsdConfig_ != null) hash ^= EphemeralStorageLocalSsdConfig.GetHashCode(); + if (soleTenantConfig_ != null) hash ^= SoleTenantConfig.GetHashCode(); + if (containerdConfig_ != null) hash ^= ContainerdConfig.GetHashCode(); + if (resourceManagerTags_ != null) hash ^= ResourceManagerTags.GetHashCode(); + if (EnableConfidentialStorage != false) hash ^= EnableConfidentialStorage.GetHashCode(); + hash ^= secondaryBootDisks_.GetHashCode(); + hash ^= storagePools_.GetHashCode(); + if (secondaryBootDiskUpdateStrategy_ != null) hash ^= SecondaryBootDiskUpdateStrategy.GetHashCode(); + if (gpuDirectConfig_ != null) hash ^= GpuDirectConfig.GetHashCode(); + if (maxRunDuration_ != null) hash ^= MaxRunDuration.GetHashCode(); + if (HasLocalSsdEncryptionMode) hash ^= LocalSsdEncryptionMode.GetHashCode(); + if (EffectiveCgroupMode != global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode.Unspecified) hash ^= EffectiveCgroupMode.GetHashCode(); + if (HasFlexStart) hash ^= FlexStart.GetHashCode(); + if (bootDisk_ != null) hash ^= BootDisk.GetHashCode(); + if (consolidationDelay_ != null) hash ^= ConsolidationDelay.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -5069,29 +8939,166 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (MemoryAvailable.Length != 0) { + if (MachineType.Length != 0) { output.WriteRawTag(10); - output.WriteString(MemoryAvailable); + output.WriteString(MachineType); } - if (NodefsAvailable.Length != 0) { - output.WriteRawTag(18); - output.WriteString(NodefsAvailable); + if (DiskSizeGb != 0) { + output.WriteRawTag(16); + output.WriteInt32(DiskSizeGb); } - if (NodefsInodesFree.Length != 0) { - output.WriteRawTag(26); - output.WriteString(NodefsInodesFree); + oauthScopes_.WriteTo(output, _repeated_oauthScopes_codec); + metadata_.WriteTo(output, _map_metadata_codec); + if (ImageType.Length != 0) { + output.WriteRawTag(42); + output.WriteString(ImageType); + } + labels_.WriteTo(output, _map_labels_codec); + if (LocalSsdCount != 0) { + output.WriteRawTag(56); + output.WriteInt32(LocalSsdCount); + } + tags_.WriteTo(output, _repeated_tags_codec); + if (ServiceAccount.Length != 0) { + output.WriteRawTag(74); + output.WriteString(ServiceAccount); + } + if (Preemptible != false) { + output.WriteRawTag(80); + output.WriteBool(Preemptible); + } + accelerators_.WriteTo(output, _repeated_accelerators_codec); + if (DiskType.Length != 0) { + output.WriteRawTag(98); + output.WriteString(DiskType); + } + if (MinCpuPlatform.Length != 0) { + output.WriteRawTag(106); + output.WriteString(MinCpuPlatform); + } + if (workloadMetadataConfig_ != null) { + output.WriteRawTag(114); + output.WriteMessage(WorkloadMetadataConfig); + } + taints_.WriteTo(output, _repeated_taints_codec); + if (sandboxConfig_ != null) { + output.WriteRawTag(138, 1); + output.WriteMessage(SandboxConfig); + } + if (NodeGroup.Length != 0) { + output.WriteRawTag(146, 1); + output.WriteString(NodeGroup); + } + if (reservationAffinity_ != null) { + output.WriteRawTag(154, 1); + output.WriteMessage(ReservationAffinity); + } + if (shieldedInstanceConfig_ != null) { + output.WriteRawTag(162, 1); + output.WriteMessage(ShieldedInstanceConfig); + } + if (linuxNodeConfig_ != null) { + output.WriteRawTag(170, 1); + output.WriteMessage(LinuxNodeConfig); + } + if (kubeletConfig_ != null) { + output.WriteRawTag(178, 1); + output.WriteMessage(KubeletConfig); + } + if (BootDiskKmsKey.Length != 0) { + output.WriteRawTag(186, 1); + output.WriteString(BootDiskKmsKey); + } + if (gcfsConfig_ != null) { + output.WriteRawTag(202, 1); + output.WriteMessage(GcfsConfig); + } + if (advancedMachineFeatures_ != null) { + output.WriteRawTag(210, 1); + output.WriteMessage(AdvancedMachineFeatures); + } + if (gvnic_ != null) { + output.WriteRawTag(234, 1); + output.WriteMessage(Gvnic); + } + if (Spot != false) { + output.WriteRawTag(128, 2); + output.WriteBool(Spot); + } + if (confidentialNodes_ != null) { + output.WriteRawTag(154, 2); + output.WriteMessage(ConfidentialNodes); + } + if (fastSocket_ != null) { + output.WriteRawTag(162, 2); + output.WriteMessage(FastSocket); + } + resourceLabels_.WriteTo(output, _map_resourceLabels_codec); + if (loggingConfig_ != null) { + output.WriteRawTag(178, 2); + output.WriteMessage(LoggingConfig); + } + if (windowsNodeConfig_ != null) { + output.WriteRawTag(186, 2); + output.WriteMessage(WindowsNodeConfig); + } + if (localNvmeSsdBlockConfig_ != null) { + output.WriteRawTag(194, 2); + output.WriteMessage(LocalNvmeSsdBlockConfig); + } + if (ephemeralStorageLocalSsdConfig_ != null) { + output.WriteRawTag(202, 2); + output.WriteMessage(EphemeralStorageLocalSsdConfig); + } + if (soleTenantConfig_ != null) { + output.WriteRawTag(210, 2); + output.WriteMessage(SoleTenantConfig); + } + if (containerdConfig_ != null) { + output.WriteRawTag(218, 2); + output.WriteMessage(ContainerdConfig); + } + if (resourceManagerTags_ != null) { + output.WriteRawTag(234, 2); + output.WriteMessage(ResourceManagerTags); + } + if (EnableConfidentialStorage != false) { + output.WriteRawTag(240, 2); + output.WriteBool(EnableConfidentialStorage); + } + secondaryBootDisks_.WriteTo(output, _repeated_secondaryBootDisks_codec); + storagePools_.WriteTo(output, _repeated_storagePools_codec); + if (secondaryBootDiskUpdateStrategy_ != null) { + output.WriteRawTag(146, 3); + output.WriteMessage(SecondaryBootDiskUpdateStrategy); + } + if (gpuDirectConfig_ != null) { + output.WriteRawTag(154, 3); + output.WriteMessage(GpuDirectConfig); + } + if (maxRunDuration_ != null) { + output.WriteRawTag(170, 3); + output.WriteMessage(MaxRunDuration); + } + if (HasLocalSsdEncryptionMode) { + output.WriteRawTag(176, 3); + output.WriteEnum((int) LocalSsdEncryptionMode); + } + if (EffectiveCgroupMode != global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode.Unspecified) { + output.WriteRawTag(184, 3); + output.WriteEnum((int) EffectiveCgroupMode); } - if (ImagefsAvailable.Length != 0) { - output.WriteRawTag(34); - output.WriteString(ImagefsAvailable); + if (HasFlexStart) { + output.WriteRawTag(192, 3); + output.WriteBool(FlexStart); } - if (ImagefsInodesFree.Length != 0) { - output.WriteRawTag(42); - output.WriteString(ImagefsInodesFree); + if (bootDisk_ != null) { + output.WriteRawTag(202, 3); + output.WriteMessage(BootDisk); } - if (PidAvailable.Length != 0) { - output.WriteRawTag(50); - output.WriteString(PidAvailable); + if (consolidationDelay_ != null) { + output.WriteRawTag(226, 3); + output.WriteMessage(ConsolidationDelay); } if (_unknownFields != null) { _unknownFields.WriteTo(output); @@ -5103,465 +9110,299 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (MemoryAvailable.Length != 0) { + if (MachineType.Length != 0) { output.WriteRawTag(10); - output.WriteString(MemoryAvailable); + output.WriteString(MachineType); } - if (NodefsAvailable.Length != 0) { - output.WriteRawTag(18); - output.WriteString(NodefsAvailable); + if (DiskSizeGb != 0) { + output.WriteRawTag(16); + output.WriteInt32(DiskSizeGb); } - if (NodefsInodesFree.Length != 0) { - output.WriteRawTag(26); - output.WriteString(NodefsInodesFree); + oauthScopes_.WriteTo(ref output, _repeated_oauthScopes_codec); + metadata_.WriteTo(ref output, _map_metadata_codec); + if (ImageType.Length != 0) { + output.WriteRawTag(42); + output.WriteString(ImageType); } - if (ImagefsAvailable.Length != 0) { - output.WriteRawTag(34); - output.WriteString(ImagefsAvailable); + labels_.WriteTo(ref output, _map_labels_codec); + if (LocalSsdCount != 0) { + output.WriteRawTag(56); + output.WriteInt32(LocalSsdCount); } - if (ImagefsInodesFree.Length != 0) { - output.WriteRawTag(42); - output.WriteString(ImagefsInodesFree); + tags_.WriteTo(ref output, _repeated_tags_codec); + if (ServiceAccount.Length != 0) { + output.WriteRawTag(74); + output.WriteString(ServiceAccount); } - if (PidAvailable.Length != 0) { - output.WriteRawTag(50); - output.WriteString(PidAvailable); + if (Preemptible != false) { + output.WriteRawTag(80); + output.WriteBool(Preemptible); } - if (_unknownFields != null) { - _unknownFields.WriteTo(ref output); + accelerators_.WriteTo(ref output, _repeated_accelerators_codec); + if (DiskType.Length != 0) { + output.WriteRawTag(98); + output.WriteString(DiskType); } - } - #endif - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int CalculateSize() { - int size = 0; - if (MemoryAvailable.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(MemoryAvailable); + if (MinCpuPlatform.Length != 0) { + output.WriteRawTag(106); + output.WriteString(MinCpuPlatform); } - if (NodefsAvailable.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(NodefsAvailable); + if (workloadMetadataConfig_ != null) { + output.WriteRawTag(114); + output.WriteMessage(WorkloadMetadataConfig); } - if (NodefsInodesFree.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(NodefsInodesFree); + taints_.WriteTo(ref output, _repeated_taints_codec); + if (sandboxConfig_ != null) { + output.WriteRawTag(138, 1); + output.WriteMessage(SandboxConfig); } - if (ImagefsAvailable.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(ImagefsAvailable); + if (NodeGroup.Length != 0) { + output.WriteRawTag(146, 1); + output.WriteString(NodeGroup); } - if (ImagefsInodesFree.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(ImagefsInodesFree); + if (reservationAffinity_ != null) { + output.WriteRawTag(154, 1); + output.WriteMessage(ReservationAffinity); } - if (PidAvailable.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(PidAvailable); + if (shieldedInstanceConfig_ != null) { + output.WriteRawTag(162, 1); + output.WriteMessage(ShieldedInstanceConfig); } - if (_unknownFields != null) { - size += _unknownFields.CalculateSize(); + if (linuxNodeConfig_ != null) { + output.WriteRawTag(170, 1); + output.WriteMessage(LinuxNodeConfig); } - return size; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(EvictionSignals other) { - if (other == null) { - return; + if (kubeletConfig_ != null) { + output.WriteRawTag(178, 1); + output.WriteMessage(KubeletConfig); } - if (other.MemoryAvailable.Length != 0) { - MemoryAvailable = other.MemoryAvailable; + if (BootDiskKmsKey.Length != 0) { + output.WriteRawTag(186, 1); + output.WriteString(BootDiskKmsKey); } - if (other.NodefsAvailable.Length != 0) { - NodefsAvailable = other.NodefsAvailable; + if (gcfsConfig_ != null) { + output.WriteRawTag(202, 1); + output.WriteMessage(GcfsConfig); } - if (other.NodefsInodesFree.Length != 0) { - NodefsInodesFree = other.NodefsInodesFree; + if (advancedMachineFeatures_ != null) { + output.WriteRawTag(210, 1); + output.WriteMessage(AdvancedMachineFeatures); } - if (other.ImagefsAvailable.Length != 0) { - ImagefsAvailable = other.ImagefsAvailable; + if (gvnic_ != null) { + output.WriteRawTag(234, 1); + output.WriteMessage(Gvnic); } - if (other.ImagefsInodesFree.Length != 0) { - ImagefsInodesFree = other.ImagefsInodesFree; + if (Spot != false) { + output.WriteRawTag(128, 2); + output.WriteBool(Spot); } - if (other.PidAvailable.Length != 0) { - PidAvailable = other.PidAvailable; + if (confidentialNodes_ != null) { + output.WriteRawTag(154, 2); + output.WriteMessage(ConfidentialNodes); } - _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(pb::CodedInputStream input) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - input.ReadRawMessage(this); - #else - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); - break; - case 10: { - MemoryAvailable = input.ReadString(); - break; - } - case 18: { - NodefsAvailable = input.ReadString(); - break; - } - case 26: { - NodefsInodesFree = input.ReadString(); - break; - } - case 34: { - ImagefsAvailable = input.ReadString(); - break; - } - case 42: { - ImagefsInodesFree = input.ReadString(); - break; - } - case 50: { - PidAvailable = input.ReadString(); - break; - } - } + if (fastSocket_ != null) { + output.WriteRawTag(162, 2); + output.WriteMessage(FastSocket); } - #endif - } - - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); - break; - case 10: { - MemoryAvailable = input.ReadString(); - break; - } - case 18: { - NodefsAvailable = input.ReadString(); - break; - } - case 26: { - NodefsInodesFree = input.ReadString(); - break; - } - case 34: { - ImagefsAvailable = input.ReadString(); - break; - } - case 42: { - ImagefsInodesFree = input.ReadString(); - break; - } - case 50: { - PidAvailable = input.ReadString(); - break; - } - } + resourceLabels_.WriteTo(ref output, _map_resourceLabels_codec); + if (loggingConfig_ != null) { + output.WriteRawTag(178, 2); + output.WriteMessage(LoggingConfig); + } + if (windowsNodeConfig_ != null) { + output.WriteRawTag(186, 2); + output.WriteMessage(WindowsNodeConfig); + } + if (localNvmeSsdBlockConfig_ != null) { + output.WriteRawTag(194, 2); + output.WriteMessage(LocalNvmeSsdBlockConfig); + } + if (ephemeralStorageLocalSsdConfig_ != null) { + output.WriteRawTag(202, 2); + output.WriteMessage(EphemeralStorageLocalSsdConfig); + } + if (soleTenantConfig_ != null) { + output.WriteRawTag(210, 2); + output.WriteMessage(SoleTenantConfig); + } + if (containerdConfig_ != null) { + output.WriteRawTag(218, 2); + output.WriteMessage(ContainerdConfig); + } + if (resourceManagerTags_ != null) { + output.WriteRawTag(234, 2); + output.WriteMessage(ResourceManagerTags); + } + if (EnableConfidentialStorage != false) { + output.WriteRawTag(240, 2); + output.WriteBool(EnableConfidentialStorage); + } + secondaryBootDisks_.WriteTo(ref output, _repeated_secondaryBootDisks_codec); + storagePools_.WriteTo(ref output, _repeated_storagePools_codec); + if (secondaryBootDiskUpdateStrategy_ != null) { + output.WriteRawTag(146, 3); + output.WriteMessage(SecondaryBootDiskUpdateStrategy); + } + if (gpuDirectConfig_ != null) { + output.WriteRawTag(154, 3); + output.WriteMessage(GpuDirectConfig); + } + if (maxRunDuration_ != null) { + output.WriteRawTag(170, 3); + output.WriteMessage(MaxRunDuration); + } + if (HasLocalSsdEncryptionMode) { + output.WriteRawTag(176, 3); + output.WriteEnum((int) LocalSsdEncryptionMode); + } + if (EffectiveCgroupMode != global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode.Unspecified) { + output.WriteRawTag(184, 3); + output.WriteEnum((int) EffectiveCgroupMode); + } + if (HasFlexStart) { + output.WriteRawTag(192, 3); + output.WriteBool(FlexStart); + } + if (bootDisk_ != null) { + output.WriteRawTag(202, 3); + output.WriteMessage(BootDisk); + } + if (consolidationDelay_ != null) { + output.WriteRawTag(226, 3); + output.WriteMessage(ConsolidationDelay); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); } } #endif - } - - /// - /// Eviction grace periods are grace periods for each eviction signal. - /// - [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class EvictionGracePeriod : pb::IMessage - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - , pb::IBufferMessage - #endif - { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new EvictionGracePeriod()); - private pb::UnknownFieldSet _unknownFields; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[6]; } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - pbr::MessageDescriptor pb::IMessage.Descriptor { - get { return Descriptor; } - } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public EvictionGracePeriod() { - OnConstruction(); - } - - partial void OnConstruction(); - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public EvictionGracePeriod(EvictionGracePeriod other) : this() { - memoryAvailable_ = other.memoryAvailable_; - nodefsAvailable_ = other.nodefsAvailable_; - nodefsInodesFree_ = other.nodefsInodesFree_; - imagefsAvailable_ = other.imagefsAvailable_; - imagefsInodesFree_ = other.imagefsInodesFree_; - pidAvailable_ = other.pidAvailable_; - _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public EvictionGracePeriod Clone() { - return new EvictionGracePeriod(this); - } - - /// Field number for the "memory_available" field. - public const int MemoryAvailableFieldNumber = 1; - private string memoryAvailable_ = ""; - /// - /// Optional. Grace period for eviction due to memory available signal. Sample - /// format: "10s". Must be >= 0. See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string MemoryAvailable { - get { return memoryAvailable_; } - set { - memoryAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + public int CalculateSize() { + int size = 0; + if (MachineType.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(MachineType); } - } - - /// Field number for the "nodefs_available" field. - public const int NodefsAvailableFieldNumber = 2; - private string nodefsAvailable_ = ""; - /// - /// Optional. Grace period for eviction due to nodefs available signal. Sample - /// format: "10s". Must be >= 0. See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string NodefsAvailable { - get { return nodefsAvailable_; } - set { - nodefsAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + if (DiskSizeGb != 0) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(DiskSizeGb); } - } - - /// Field number for the "nodefs_inodes_free" field. - public const int NodefsInodesFreeFieldNumber = 3; - private string nodefsInodesFree_ = ""; - /// - /// Optional. Grace period for eviction due to nodefs inodes free signal. - /// Sample format: "10s". Must be >= 0. See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string NodefsInodesFree { - get { return nodefsInodesFree_; } - set { - nodefsInodesFree_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + size += oauthScopes_.CalculateSize(_repeated_oauthScopes_codec); + if (ServiceAccount.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ServiceAccount); } - } - - /// Field number for the "imagefs_available" field. - public const int ImagefsAvailableFieldNumber = 4; - private string imagefsAvailable_ = ""; - /// - /// Optional. Grace period for eviction due to imagefs available signal. Sample - /// format: "10s". Must be >= 0. See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string ImagefsAvailable { - get { return imagefsAvailable_; } - set { - imagefsAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + size += metadata_.CalculateSize(_map_metadata_codec); + if (ImageType.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ImageType); } - } - - /// Field number for the "imagefs_inodes_free" field. - public const int ImagefsInodesFreeFieldNumber = 5; - private string imagefsInodesFree_ = ""; - /// - /// Optional. Grace period for eviction due to imagefs inodes free signal. - /// Sample format: "10s". Must be >= 0. See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string ImagefsInodesFree { - get { return imagefsInodesFree_; } - set { - imagefsInodesFree_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + size += labels_.CalculateSize(_map_labels_codec); + if (LocalSsdCount != 0) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(LocalSsdCount); } - } - - /// Field number for the "pid_available" field. - public const int PidAvailableFieldNumber = 6; - private string pidAvailable_ = ""; - /// - /// Optional. Grace period for eviction due to pid available signal. Sample - /// format: "10s". Must be >= 0. See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string PidAvailable { - get { return pidAvailable_; } - set { - pidAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + size += tags_.CalculateSize(_repeated_tags_codec); + if (Preemptible != false) { + size += 1 + 1; } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override bool Equals(object other) { - return Equals(other as EvictionGracePeriod); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(EvictionGracePeriod other) { - if (ReferenceEquals(other, null)) { - return false; + size += accelerators_.CalculateSize(_repeated_accelerators_codec); + if (DiskType.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(DiskType); } - if (ReferenceEquals(other, this)) { - return true; + if (MinCpuPlatform.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(MinCpuPlatform); } - if (MemoryAvailable != other.MemoryAvailable) return false; - if (NodefsAvailable != other.NodefsAvailable) return false; - if (NodefsInodesFree != other.NodefsInodesFree) return false; - if (ImagefsAvailable != other.ImagefsAvailable) return false; - if (ImagefsInodesFree != other.ImagefsInodesFree) return false; - if (PidAvailable != other.PidAvailable) return false; - return Equals(_unknownFields, other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override int GetHashCode() { - int hash = 1; - if (MemoryAvailable.Length != 0) hash ^= MemoryAvailable.GetHashCode(); - if (NodefsAvailable.Length != 0) hash ^= NodefsAvailable.GetHashCode(); - if (NodefsInodesFree.Length != 0) hash ^= NodefsInodesFree.GetHashCode(); - if (ImagefsAvailable.Length != 0) hash ^= ImagefsAvailable.GetHashCode(); - if (ImagefsInodesFree.Length != 0) hash ^= ImagefsInodesFree.GetHashCode(); - if (PidAvailable.Length != 0) hash ^= PidAvailable.GetHashCode(); - if (_unknownFields != null) { - hash ^= _unknownFields.GetHashCode(); + if (workloadMetadataConfig_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(WorkloadMetadataConfig); + } + size += taints_.CalculateSize(_repeated_taints_codec); + if (sandboxConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(SandboxConfig); + } + if (NodeGroup.Length != 0) { + size += 2 + pb::CodedOutputStream.ComputeStringSize(NodeGroup); + } + if (reservationAffinity_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(ReservationAffinity); + } + if (shieldedInstanceConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(ShieldedInstanceConfig); } - return hash; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override string ToString() { - return pb::JsonFormatter.ToDiagnosticString(this); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void WriteTo(pb::CodedOutputStream output) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - output.WriteRawMessage(this); - #else - if (MemoryAvailable.Length != 0) { - output.WriteRawTag(10); - output.WriteString(MemoryAvailable); + if (linuxNodeConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(LinuxNodeConfig); } - if (NodefsAvailable.Length != 0) { - output.WriteRawTag(18); - output.WriteString(NodefsAvailable); + if (kubeletConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(KubeletConfig); } - if (NodefsInodesFree.Length != 0) { - output.WriteRawTag(26); - output.WriteString(NodefsInodesFree); + if (BootDiskKmsKey.Length != 0) { + size += 2 + pb::CodedOutputStream.ComputeStringSize(BootDiskKmsKey); } - if (ImagefsAvailable.Length != 0) { - output.WriteRawTag(34); - output.WriteString(ImagefsAvailable); + if (gcfsConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(GcfsConfig); } - if (ImagefsInodesFree.Length != 0) { - output.WriteRawTag(42); - output.WriteString(ImagefsInodesFree); + if (advancedMachineFeatures_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(AdvancedMachineFeatures); } - if (PidAvailable.Length != 0) { - output.WriteRawTag(50); - output.WriteString(PidAvailable); + if (gvnic_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(Gvnic); } - if (_unknownFields != null) { - _unknownFields.WriteTo(output); + if (Spot != false) { + size += 2 + 1; } - #endif - } - - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (MemoryAvailable.Length != 0) { - output.WriteRawTag(10); - output.WriteString(MemoryAvailable); + if (confidentialNodes_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(ConfidentialNodes); } - if (NodefsAvailable.Length != 0) { - output.WriteRawTag(18); - output.WriteString(NodefsAvailable); + if (fastSocket_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(FastSocket); } - if (NodefsInodesFree.Length != 0) { - output.WriteRawTag(26); - output.WriteString(NodefsInodesFree); + size += resourceLabels_.CalculateSize(_map_resourceLabels_codec); + if (loggingConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(LoggingConfig); } - if (ImagefsAvailable.Length != 0) { - output.WriteRawTag(34); - output.WriteString(ImagefsAvailable); + if (windowsNodeConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(WindowsNodeConfig); } - if (ImagefsInodesFree.Length != 0) { - output.WriteRawTag(42); - output.WriteString(ImagefsInodesFree); + if (localNvmeSsdBlockConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(LocalNvmeSsdBlockConfig); } - if (PidAvailable.Length != 0) { - output.WriteRawTag(50); - output.WriteString(PidAvailable); + if (ephemeralStorageLocalSsdConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(EphemeralStorageLocalSsdConfig); } - if (_unknownFields != null) { - _unknownFields.WriteTo(ref output); + if (soleTenantConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(SoleTenantConfig); } - } - #endif - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int CalculateSize() { - int size = 0; - if (MemoryAvailable.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(MemoryAvailable); + if (containerdConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(ContainerdConfig); } - if (NodefsAvailable.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(NodefsAvailable); + if (resourceManagerTags_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(ResourceManagerTags); } - if (NodefsInodesFree.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(NodefsInodesFree); + if (EnableConfidentialStorage != false) { + size += 2 + 1; } - if (ImagefsAvailable.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(ImagefsAvailable); + size += secondaryBootDisks_.CalculateSize(_repeated_secondaryBootDisks_codec); + size += storagePools_.CalculateSize(_repeated_storagePools_codec); + if (secondaryBootDiskUpdateStrategy_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(SecondaryBootDiskUpdateStrategy); } - if (ImagefsInodesFree.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(ImagefsInodesFree); + if (gpuDirectConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(GpuDirectConfig); } - if (PidAvailable.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(PidAvailable); + if (maxRunDuration_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(MaxRunDuration); + } + if (HasLocalSsdEncryptionMode) { + size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) LocalSsdEncryptionMode); + } + if (EffectiveCgroupMode != global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode.Unspecified) { + size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) EffectiveCgroupMode); + } + if (HasFlexStart) { + size += 2 + 1; + } + if (bootDisk_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(BootDisk); + } + if (consolidationDelay_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(ConsolidationDelay); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -5571,27 +9412,201 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(EvictionGracePeriod other) { + public void MergeFrom(NodeConfig other) { if (other == null) { return; } - if (other.MemoryAvailable.Length != 0) { - MemoryAvailable = other.MemoryAvailable; + if (other.MachineType.Length != 0) { + MachineType = other.MachineType; } - if (other.NodefsAvailable.Length != 0) { - NodefsAvailable = other.NodefsAvailable; + if (other.DiskSizeGb != 0) { + DiskSizeGb = other.DiskSizeGb; } - if (other.NodefsInodesFree.Length != 0) { - NodefsInodesFree = other.NodefsInodesFree; + oauthScopes_.Add(other.oauthScopes_); + if (other.ServiceAccount.Length != 0) { + ServiceAccount = other.ServiceAccount; } - if (other.ImagefsAvailable.Length != 0) { - ImagefsAvailable = other.ImagefsAvailable; + metadata_.MergeFrom(other.metadata_); + if (other.ImageType.Length != 0) { + ImageType = other.ImageType; } - if (other.ImagefsInodesFree.Length != 0) { - ImagefsInodesFree = other.ImagefsInodesFree; + labels_.MergeFrom(other.labels_); + if (other.LocalSsdCount != 0) { + LocalSsdCount = other.LocalSsdCount; } - if (other.PidAvailable.Length != 0) { - PidAvailable = other.PidAvailable; + tags_.Add(other.tags_); + if (other.Preemptible != false) { + Preemptible = other.Preemptible; + } + accelerators_.Add(other.accelerators_); + if (other.DiskType.Length != 0) { + DiskType = other.DiskType; + } + if (other.MinCpuPlatform.Length != 0) { + MinCpuPlatform = other.MinCpuPlatform; + } + if (other.workloadMetadataConfig_ != null) { + if (workloadMetadataConfig_ == null) { + WorkloadMetadataConfig = new global::Google.Cloud.Container.V1.WorkloadMetadataConfig(); + } + WorkloadMetadataConfig.MergeFrom(other.WorkloadMetadataConfig); + } + taints_.Add(other.taints_); + if (other.sandboxConfig_ != null) { + if (sandboxConfig_ == null) { + SandboxConfig = new global::Google.Cloud.Container.V1.SandboxConfig(); + } + SandboxConfig.MergeFrom(other.SandboxConfig); + } + if (other.NodeGroup.Length != 0) { + NodeGroup = other.NodeGroup; + } + if (other.reservationAffinity_ != null) { + if (reservationAffinity_ == null) { + ReservationAffinity = new global::Google.Cloud.Container.V1.ReservationAffinity(); + } + ReservationAffinity.MergeFrom(other.ReservationAffinity); + } + if (other.shieldedInstanceConfig_ != null) { + if (shieldedInstanceConfig_ == null) { + ShieldedInstanceConfig = new global::Google.Cloud.Container.V1.ShieldedInstanceConfig(); + } + ShieldedInstanceConfig.MergeFrom(other.ShieldedInstanceConfig); + } + if (other.linuxNodeConfig_ != null) { + if (linuxNodeConfig_ == null) { + LinuxNodeConfig = new global::Google.Cloud.Container.V1.LinuxNodeConfig(); + } + LinuxNodeConfig.MergeFrom(other.LinuxNodeConfig); + } + if (other.kubeletConfig_ != null) { + if (kubeletConfig_ == null) { + KubeletConfig = new global::Google.Cloud.Container.V1.NodeKubeletConfig(); + } + KubeletConfig.MergeFrom(other.KubeletConfig); + } + if (other.BootDiskKmsKey.Length != 0) { + BootDiskKmsKey = other.BootDiskKmsKey; + } + if (other.gcfsConfig_ != null) { + if (gcfsConfig_ == null) { + GcfsConfig = new global::Google.Cloud.Container.V1.GcfsConfig(); + } + GcfsConfig.MergeFrom(other.GcfsConfig); + } + if (other.advancedMachineFeatures_ != null) { + if (advancedMachineFeatures_ == null) { + AdvancedMachineFeatures = new global::Google.Cloud.Container.V1.AdvancedMachineFeatures(); + } + AdvancedMachineFeatures.MergeFrom(other.AdvancedMachineFeatures); + } + if (other.gvnic_ != null) { + if (gvnic_ == null) { + Gvnic = new global::Google.Cloud.Container.V1.VirtualNIC(); + } + Gvnic.MergeFrom(other.Gvnic); + } + if (other.Spot != false) { + Spot = other.Spot; + } + if (other.confidentialNodes_ != null) { + if (confidentialNodes_ == null) { + ConfidentialNodes = new global::Google.Cloud.Container.V1.ConfidentialNodes(); + } + ConfidentialNodes.MergeFrom(other.ConfidentialNodes); + } + if (other.fastSocket_ != null) { + if (fastSocket_ == null) { + FastSocket = new global::Google.Cloud.Container.V1.FastSocket(); + } + FastSocket.MergeFrom(other.FastSocket); + } + resourceLabels_.MergeFrom(other.resourceLabels_); + if (other.loggingConfig_ != null) { + if (loggingConfig_ == null) { + LoggingConfig = new global::Google.Cloud.Container.V1.NodePoolLoggingConfig(); + } + LoggingConfig.MergeFrom(other.LoggingConfig); + } + if (other.windowsNodeConfig_ != null) { + if (windowsNodeConfig_ == null) { + WindowsNodeConfig = new global::Google.Cloud.Container.V1.WindowsNodeConfig(); + } + WindowsNodeConfig.MergeFrom(other.WindowsNodeConfig); + } + if (other.localNvmeSsdBlockConfig_ != null) { + if (localNvmeSsdBlockConfig_ == null) { + LocalNvmeSsdBlockConfig = new global::Google.Cloud.Container.V1.LocalNvmeSsdBlockConfig(); + } + LocalNvmeSsdBlockConfig.MergeFrom(other.LocalNvmeSsdBlockConfig); + } + if (other.ephemeralStorageLocalSsdConfig_ != null) { + if (ephemeralStorageLocalSsdConfig_ == null) { + EphemeralStorageLocalSsdConfig = new global::Google.Cloud.Container.V1.EphemeralStorageLocalSsdConfig(); + } + EphemeralStorageLocalSsdConfig.MergeFrom(other.EphemeralStorageLocalSsdConfig); + } + if (other.soleTenantConfig_ != null) { + if (soleTenantConfig_ == null) { + SoleTenantConfig = new global::Google.Cloud.Container.V1.SoleTenantConfig(); + } + SoleTenantConfig.MergeFrom(other.SoleTenantConfig); + } + if (other.containerdConfig_ != null) { + if (containerdConfig_ == null) { + ContainerdConfig = new global::Google.Cloud.Container.V1.ContainerdConfig(); + } + ContainerdConfig.MergeFrom(other.ContainerdConfig); + } + if (other.resourceManagerTags_ != null) { + if (resourceManagerTags_ == null) { + ResourceManagerTags = new global::Google.Cloud.Container.V1.ResourceManagerTags(); + } + ResourceManagerTags.MergeFrom(other.ResourceManagerTags); + } + if (other.EnableConfidentialStorage != false) { + EnableConfidentialStorage = other.EnableConfidentialStorage; + } + secondaryBootDisks_.Add(other.secondaryBootDisks_); + storagePools_.Add(other.storagePools_); + if (other.secondaryBootDiskUpdateStrategy_ != null) { + if (secondaryBootDiskUpdateStrategy_ == null) { + SecondaryBootDiskUpdateStrategy = new global::Google.Cloud.Container.V1.SecondaryBootDiskUpdateStrategy(); + } + SecondaryBootDiskUpdateStrategy.MergeFrom(other.SecondaryBootDiskUpdateStrategy); + } + if (other.gpuDirectConfig_ != null) { + if (gpuDirectConfig_ == null) { + GpuDirectConfig = new global::Google.Cloud.Container.V1.GPUDirectConfig(); + } + GpuDirectConfig.MergeFrom(other.GpuDirectConfig); + } + if (other.maxRunDuration_ != null) { + if (maxRunDuration_ == null) { + MaxRunDuration = new global::Google.Protobuf.WellKnownTypes.Duration(); + } + MaxRunDuration.MergeFrom(other.MaxRunDuration); + } + if (other.HasLocalSsdEncryptionMode) { + LocalSsdEncryptionMode = other.LocalSsdEncryptionMode; + } + if (other.EffectiveCgroupMode != global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode.Unspecified) { + EffectiveCgroupMode = other.EffectiveCgroupMode; + } + if (other.HasFlexStart) { + FlexStart = other.FlexStart; + } + if (other.bootDisk_ != null) { + if (bootDisk_ == null) { + BootDisk = new global::Google.Cloud.Container.V1.BootDisk(); + } + BootDisk.MergeFrom(other.BootDisk); + } + if (other.consolidationDelay_ != null) { + if (consolidationDelay_ == null) { + ConsolidationDelay = new global::Google.Protobuf.WellKnownTypes.Duration(); + } + ConsolidationDelay.MergeFrom(other.ConsolidationDelay); } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -5608,28 +9623,261 @@ public void MergeFrom(pb::CodedInputStream input) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; - case 10: { - MemoryAvailable = input.ReadString(); + case 10: { + MachineType = input.ReadString(); + break; + } + case 16: { + DiskSizeGb = input.ReadInt32(); + break; + } + case 26: { + oauthScopes_.AddEntriesFrom(input, _repeated_oauthScopes_codec); + break; + } + case 34: { + metadata_.AddEntriesFrom(input, _map_metadata_codec); + break; + } + case 42: { + ImageType = input.ReadString(); + break; + } + case 50: { + labels_.AddEntriesFrom(input, _map_labels_codec); + break; + } + case 56: { + LocalSsdCount = input.ReadInt32(); + break; + } + case 66: { + tags_.AddEntriesFrom(input, _repeated_tags_codec); + break; + } + case 74: { + ServiceAccount = input.ReadString(); + break; + } + case 80: { + Preemptible = input.ReadBool(); + break; + } + case 90: { + accelerators_.AddEntriesFrom(input, _repeated_accelerators_codec); + break; + } + case 98: { + DiskType = input.ReadString(); + break; + } + case 106: { + MinCpuPlatform = input.ReadString(); + break; + } + case 114: { + if (workloadMetadataConfig_ == null) { + WorkloadMetadataConfig = new global::Google.Cloud.Container.V1.WorkloadMetadataConfig(); + } + input.ReadMessage(WorkloadMetadataConfig); + break; + } + case 122: { + taints_.AddEntriesFrom(input, _repeated_taints_codec); + break; + } + case 138: { + if (sandboxConfig_ == null) { + SandboxConfig = new global::Google.Cloud.Container.V1.SandboxConfig(); + } + input.ReadMessage(SandboxConfig); + break; + } + case 146: { + NodeGroup = input.ReadString(); + break; + } + case 154: { + if (reservationAffinity_ == null) { + ReservationAffinity = new global::Google.Cloud.Container.V1.ReservationAffinity(); + } + input.ReadMessage(ReservationAffinity); + break; + } + case 162: { + if (shieldedInstanceConfig_ == null) { + ShieldedInstanceConfig = new global::Google.Cloud.Container.V1.ShieldedInstanceConfig(); + } + input.ReadMessage(ShieldedInstanceConfig); + break; + } + case 170: { + if (linuxNodeConfig_ == null) { + LinuxNodeConfig = new global::Google.Cloud.Container.V1.LinuxNodeConfig(); + } + input.ReadMessage(LinuxNodeConfig); + break; + } + case 178: { + if (kubeletConfig_ == null) { + KubeletConfig = new global::Google.Cloud.Container.V1.NodeKubeletConfig(); + } + input.ReadMessage(KubeletConfig); + break; + } + case 186: { + BootDiskKmsKey = input.ReadString(); + break; + } + case 202: { + if (gcfsConfig_ == null) { + GcfsConfig = new global::Google.Cloud.Container.V1.GcfsConfig(); + } + input.ReadMessage(GcfsConfig); + break; + } + case 210: { + if (advancedMachineFeatures_ == null) { + AdvancedMachineFeatures = new global::Google.Cloud.Container.V1.AdvancedMachineFeatures(); + } + input.ReadMessage(AdvancedMachineFeatures); + break; + } + case 234: { + if (gvnic_ == null) { + Gvnic = new global::Google.Cloud.Container.V1.VirtualNIC(); + } + input.ReadMessage(Gvnic); + break; + } + case 256: { + Spot = input.ReadBool(); + break; + } + case 282: { + if (confidentialNodes_ == null) { + ConfidentialNodes = new global::Google.Cloud.Container.V1.ConfidentialNodes(); + } + input.ReadMessage(ConfidentialNodes); + break; + } + case 290: { + if (fastSocket_ == null) { + FastSocket = new global::Google.Cloud.Container.V1.FastSocket(); + } + input.ReadMessage(FastSocket); + break; + } + case 298: { + resourceLabels_.AddEntriesFrom(input, _map_resourceLabels_codec); + break; + } + case 306: { + if (loggingConfig_ == null) { + LoggingConfig = new global::Google.Cloud.Container.V1.NodePoolLoggingConfig(); + } + input.ReadMessage(LoggingConfig); + break; + } + case 314: { + if (windowsNodeConfig_ == null) { + WindowsNodeConfig = new global::Google.Cloud.Container.V1.WindowsNodeConfig(); + } + input.ReadMessage(WindowsNodeConfig); + break; + } + case 322: { + if (localNvmeSsdBlockConfig_ == null) { + LocalNvmeSsdBlockConfig = new global::Google.Cloud.Container.V1.LocalNvmeSsdBlockConfig(); + } + input.ReadMessage(LocalNvmeSsdBlockConfig); + break; + } + case 330: { + if (ephemeralStorageLocalSsdConfig_ == null) { + EphemeralStorageLocalSsdConfig = new global::Google.Cloud.Container.V1.EphemeralStorageLocalSsdConfig(); + } + input.ReadMessage(EphemeralStorageLocalSsdConfig); + break; + } + case 338: { + if (soleTenantConfig_ == null) { + SoleTenantConfig = new global::Google.Cloud.Container.V1.SoleTenantConfig(); + } + input.ReadMessage(SoleTenantConfig); + break; + } + case 346: { + if (containerdConfig_ == null) { + ContainerdConfig = new global::Google.Cloud.Container.V1.ContainerdConfig(); + } + input.ReadMessage(ContainerdConfig); + break; + } + case 362: { + if (resourceManagerTags_ == null) { + ResourceManagerTags = new global::Google.Cloud.Container.V1.ResourceManagerTags(); + } + input.ReadMessage(ResourceManagerTags); break; } - case 18: { - NodefsAvailable = input.ReadString(); + case 368: { + EnableConfidentialStorage = input.ReadBool(); break; } - case 26: { - NodefsInodesFree = input.ReadString(); + case 386: { + secondaryBootDisks_.AddEntriesFrom(input, _repeated_secondaryBootDisks_codec); break; } - case 34: { - ImagefsAvailable = input.ReadString(); + case 394: { + storagePools_.AddEntriesFrom(input, _repeated_storagePools_codec); break; } - case 42: { - ImagefsInodesFree = input.ReadString(); + case 402: { + if (secondaryBootDiskUpdateStrategy_ == null) { + SecondaryBootDiskUpdateStrategy = new global::Google.Cloud.Container.V1.SecondaryBootDiskUpdateStrategy(); + } + input.ReadMessage(SecondaryBootDiskUpdateStrategy); break; } - case 50: { - PidAvailable = input.ReadString(); + case 410: { + if (gpuDirectConfig_ == null) { + GpuDirectConfig = new global::Google.Cloud.Container.V1.GPUDirectConfig(); + } + input.ReadMessage(GpuDirectConfig); + break; + } + case 426: { + if (maxRunDuration_ == null) { + MaxRunDuration = new global::Google.Protobuf.WellKnownTypes.Duration(); + } + input.ReadMessage(MaxRunDuration); + break; + } + case 432: { + LocalSsdEncryptionMode = (global::Google.Cloud.Container.V1.NodeConfig.Types.LocalSsdEncryptionMode) input.ReadEnum(); + break; + } + case 440: { + EffectiveCgroupMode = (global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode) input.ReadEnum(); + break; + } + case 448: { + FlexStart = input.ReadBool(); + break; + } + case 458: { + if (bootDisk_ == null) { + BootDisk = new global::Google.Cloud.Container.V1.BootDisk(); + } + input.ReadMessage(BootDisk); + break; + } + case 482: { + if (consolidationDelay_ == null) { + ConsolidationDelay = new global::Google.Protobuf.WellKnownTypes.Duration(); + } + input.ReadMessage(ConsolidationDelay); break; } } @@ -5648,439 +9896,260 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; case 10: { - MemoryAvailable = input.ReadString(); + MachineType = input.ReadString(); break; } - case 18: { - NodefsAvailable = input.ReadString(); + case 16: { + DiskSizeGb = input.ReadInt32(); break; } case 26: { - NodefsInodesFree = input.ReadString(); + oauthScopes_.AddEntriesFrom(ref input, _repeated_oauthScopes_codec); break; } case 34: { - ImagefsAvailable = input.ReadString(); + metadata_.AddEntriesFrom(ref input, _map_metadata_codec); break; } case 42: { - ImagefsInodesFree = input.ReadString(); + ImageType = input.ReadString(); break; } case 50: { - PidAvailable = input.ReadString(); + labels_.AddEntriesFrom(ref input, _map_labels_codec); break; } - } - } - } - #endif - - } - - /// - /// Eviction minimum reclaims are the resource amounts of minimum reclaims for - /// each eviction signal. - /// - [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class EvictionMinimumReclaim : pb::IMessage - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - , pb::IBufferMessage - #endif - { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new EvictionMinimumReclaim()); - private pb::UnknownFieldSet _unknownFields; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[7]; } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - pbr::MessageDescriptor pb::IMessage.Descriptor { - get { return Descriptor; } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public EvictionMinimumReclaim() { - OnConstruction(); - } - - partial void OnConstruction(); - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public EvictionMinimumReclaim(EvictionMinimumReclaim other) : this() { - memoryAvailable_ = other.memoryAvailable_; - nodefsAvailable_ = other.nodefsAvailable_; - nodefsInodesFree_ = other.nodefsInodesFree_; - imagefsAvailable_ = other.imagefsAvailable_; - imagefsInodesFree_ = other.imagefsInodesFree_; - pidAvailable_ = other.pidAvailable_; - _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public EvictionMinimumReclaim Clone() { - return new EvictionMinimumReclaim(this); - } - - /// Field number for the "memory_available" field. - public const int MemoryAvailableFieldNumber = 1; - private string memoryAvailable_ = ""; - /// - /// Optional. Minimum reclaim for eviction due to memory available signal. Only - /// take percentage value for now. Sample format: "10%". Must be <=10%. See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string MemoryAvailable { - get { return memoryAvailable_; } - set { - memoryAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - - /// Field number for the "nodefs_available" field. - public const int NodefsAvailableFieldNumber = 2; - private string nodefsAvailable_ = ""; - /// - /// Optional. Minimum reclaim for eviction due to nodefs available signal. Only - /// take percentage value for now. Sample format: "10%". Must be <=10%. See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string NodefsAvailable { - get { return nodefsAvailable_; } - set { - nodefsAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - - /// Field number for the "nodefs_inodes_free" field. - public const int NodefsInodesFreeFieldNumber = 3; - private string nodefsInodesFree_ = ""; - /// - /// Optional. Minimum reclaim for eviction due to nodefs inodes free signal. - /// Only take percentage value for now. Sample format: "10%". Must be <=10%. - /// See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string NodefsInodesFree { - get { return nodefsInodesFree_; } - set { - nodefsInodesFree_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - - /// Field number for the "imagefs_available" field. - public const int ImagefsAvailableFieldNumber = 4; - private string imagefsAvailable_ = ""; - /// - /// Optional. Minimum reclaim for eviction due to imagefs available signal. - /// Only take percentage value for now. Sample format: "10%". Must be <=10%. - /// See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string ImagefsAvailable { - get { return imagefsAvailable_; } - set { - imagefsAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - - /// Field number for the "imagefs_inodes_free" field. - public const int ImagefsInodesFreeFieldNumber = 5; - private string imagefsInodesFree_ = ""; - /// - /// Optional. Minimum reclaim for eviction due to imagefs inodes free signal. - /// Only take percentage value for now. Sample format: "10%". Must be <=10%. - /// See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string ImagefsInodesFree { - get { return imagefsInodesFree_; } - set { - imagefsInodesFree_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - - /// Field number for the "pid_available" field. - public const int PidAvailableFieldNumber = 6; - private string pidAvailable_ = ""; - /// - /// Optional. Minimum reclaim for eviction due to pid available signal. Only - /// take percentage value for now. Sample format: "10%". Must be <=10%. See - /// https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string PidAvailable { - get { return pidAvailable_; } - set { - pidAvailable_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override bool Equals(object other) { - return Equals(other as EvictionMinimumReclaim); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(EvictionMinimumReclaim other) { - if (ReferenceEquals(other, null)) { - return false; - } - if (ReferenceEquals(other, this)) { - return true; - } - if (MemoryAvailable != other.MemoryAvailable) return false; - if (NodefsAvailable != other.NodefsAvailable) return false; - if (NodefsInodesFree != other.NodefsInodesFree) return false; - if (ImagefsAvailable != other.ImagefsAvailable) return false; - if (ImagefsInodesFree != other.ImagefsInodesFree) return false; - if (PidAvailable != other.PidAvailable) return false; - return Equals(_unknownFields, other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override int GetHashCode() { - int hash = 1; - if (MemoryAvailable.Length != 0) hash ^= MemoryAvailable.GetHashCode(); - if (NodefsAvailable.Length != 0) hash ^= NodefsAvailable.GetHashCode(); - if (NodefsInodesFree.Length != 0) hash ^= NodefsInodesFree.GetHashCode(); - if (ImagefsAvailable.Length != 0) hash ^= ImagefsAvailable.GetHashCode(); - if (ImagefsInodesFree.Length != 0) hash ^= ImagefsInodesFree.GetHashCode(); - if (PidAvailable.Length != 0) hash ^= PidAvailable.GetHashCode(); - if (_unknownFields != null) { - hash ^= _unknownFields.GetHashCode(); - } - return hash; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override string ToString() { - return pb::JsonFormatter.ToDiagnosticString(this); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void WriteTo(pb::CodedOutputStream output) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - output.WriteRawMessage(this); - #else - if (MemoryAvailable.Length != 0) { - output.WriteRawTag(10); - output.WriteString(MemoryAvailable); - } - if (NodefsAvailable.Length != 0) { - output.WriteRawTag(18); - output.WriteString(NodefsAvailable); - } - if (NodefsInodesFree.Length != 0) { - output.WriteRawTag(26); - output.WriteString(NodefsInodesFree); - } - if (ImagefsAvailable.Length != 0) { - output.WriteRawTag(34); - output.WriteString(ImagefsAvailable); - } - if (ImagefsInodesFree.Length != 0) { - output.WriteRawTag(42); - output.WriteString(ImagefsInodesFree); - } - if (PidAvailable.Length != 0) { - output.WriteRawTag(50); - output.WriteString(PidAvailable); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(output); - } - #endif - } - - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (MemoryAvailable.Length != 0) { - output.WriteRawTag(10); - output.WriteString(MemoryAvailable); - } - if (NodefsAvailable.Length != 0) { - output.WriteRawTag(18); - output.WriteString(NodefsAvailable); - } - if (NodefsInodesFree.Length != 0) { - output.WriteRawTag(26); - output.WriteString(NodefsInodesFree); - } - if (ImagefsAvailable.Length != 0) { - output.WriteRawTag(34); - output.WriteString(ImagefsAvailable); - } - if (ImagefsInodesFree.Length != 0) { - output.WriteRawTag(42); - output.WriteString(ImagefsInodesFree); - } - if (PidAvailable.Length != 0) { - output.WriteRawTag(50); - output.WriteString(PidAvailable); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(ref output); - } - } - #endif - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int CalculateSize() { - int size = 0; - if (MemoryAvailable.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(MemoryAvailable); - } - if (NodefsAvailable.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(NodefsAvailable); - } - if (NodefsInodesFree.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(NodefsInodesFree); - } - if (ImagefsAvailable.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(ImagefsAvailable); - } - if (ImagefsInodesFree.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(ImagefsInodesFree); - } - if (PidAvailable.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(PidAvailable); - } - if (_unknownFields != null) { - size += _unknownFields.CalculateSize(); - } - return size; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(EvictionMinimumReclaim other) { - if (other == null) { - return; - } - if (other.MemoryAvailable.Length != 0) { - MemoryAvailable = other.MemoryAvailable; - } - if (other.NodefsAvailable.Length != 0) { - NodefsAvailable = other.NodefsAvailable; - } - if (other.NodefsInodesFree.Length != 0) { - NodefsInodesFree = other.NodefsInodesFree; - } - if (other.ImagefsAvailable.Length != 0) { - ImagefsAvailable = other.ImagefsAvailable; - } - if (other.ImagefsInodesFree.Length != 0) { - ImagefsInodesFree = other.ImagefsInodesFree; - } - if (other.PidAvailable.Length != 0) { - PidAvailable = other.PidAvailable; - } - _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(pb::CodedInputStream input) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - input.ReadRawMessage(this); - #else - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + case 56: { + LocalSsdCount = input.ReadInt32(); + break; + } + case 66: { + tags_.AddEntriesFrom(ref input, _repeated_tags_codec); + break; + } + case 74: { + ServiceAccount = input.ReadString(); + break; + } + case 80: { + Preemptible = input.ReadBool(); + break; + } + case 90: { + accelerators_.AddEntriesFrom(ref input, _repeated_accelerators_codec); + break; + } + case 98: { + DiskType = input.ReadString(); + break; + } + case 106: { + MinCpuPlatform = input.ReadString(); + break; + } + case 114: { + if (workloadMetadataConfig_ == null) { + WorkloadMetadataConfig = new global::Google.Cloud.Container.V1.WorkloadMetadataConfig(); + } + input.ReadMessage(WorkloadMetadataConfig); + break; + } + case 122: { + taints_.AddEntriesFrom(ref input, _repeated_taints_codec); + break; + } + case 138: { + if (sandboxConfig_ == null) { + SandboxConfig = new global::Google.Cloud.Container.V1.SandboxConfig(); + } + input.ReadMessage(SandboxConfig); + break; + } + case 146: { + NodeGroup = input.ReadString(); + break; + } + case 154: { + if (reservationAffinity_ == null) { + ReservationAffinity = new global::Google.Cloud.Container.V1.ReservationAffinity(); + } + input.ReadMessage(ReservationAffinity); + break; + } + case 162: { + if (shieldedInstanceConfig_ == null) { + ShieldedInstanceConfig = new global::Google.Cloud.Container.V1.ShieldedInstanceConfig(); + } + input.ReadMessage(ShieldedInstanceConfig); + break; + } + case 170: { + if (linuxNodeConfig_ == null) { + LinuxNodeConfig = new global::Google.Cloud.Container.V1.LinuxNodeConfig(); + } + input.ReadMessage(LinuxNodeConfig); + break; + } + case 178: { + if (kubeletConfig_ == null) { + KubeletConfig = new global::Google.Cloud.Container.V1.NodeKubeletConfig(); + } + input.ReadMessage(KubeletConfig); + break; + } + case 186: { + BootDiskKmsKey = input.ReadString(); + break; + } + case 202: { + if (gcfsConfig_ == null) { + GcfsConfig = new global::Google.Cloud.Container.V1.GcfsConfig(); + } + input.ReadMessage(GcfsConfig); break; - case 10: { - MemoryAvailable = input.ReadString(); + } + case 210: { + if (advancedMachineFeatures_ == null) { + AdvancedMachineFeatures = new global::Google.Cloud.Container.V1.AdvancedMachineFeatures(); + } + input.ReadMessage(AdvancedMachineFeatures); break; } - case 18: { - NodefsAvailable = input.ReadString(); + case 234: { + if (gvnic_ == null) { + Gvnic = new global::Google.Cloud.Container.V1.VirtualNIC(); + } + input.ReadMessage(Gvnic); break; } - case 26: { - NodefsInodesFree = input.ReadString(); + case 256: { + Spot = input.ReadBool(); break; } - case 34: { - ImagefsAvailable = input.ReadString(); + case 282: { + if (confidentialNodes_ == null) { + ConfidentialNodes = new global::Google.Cloud.Container.V1.ConfidentialNodes(); + } + input.ReadMessage(ConfidentialNodes); break; } - case 42: { - ImagefsInodesFree = input.ReadString(); + case 290: { + if (fastSocket_ == null) { + FastSocket = new global::Google.Cloud.Container.V1.FastSocket(); + } + input.ReadMessage(FastSocket); break; } - case 50: { - PidAvailable = input.ReadString(); + case 298: { + resourceLabels_.AddEntriesFrom(ref input, _map_resourceLabels_codec); break; } - } - } - #endif - } - - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + case 306: { + if (loggingConfig_ == null) { + LoggingConfig = new global::Google.Cloud.Container.V1.NodePoolLoggingConfig(); + } + input.ReadMessage(LoggingConfig); break; - case 10: { - MemoryAvailable = input.ReadString(); + } + case 314: { + if (windowsNodeConfig_ == null) { + WindowsNodeConfig = new global::Google.Cloud.Container.V1.WindowsNodeConfig(); + } + input.ReadMessage(WindowsNodeConfig); break; } - case 18: { - NodefsAvailable = input.ReadString(); + case 322: { + if (localNvmeSsdBlockConfig_ == null) { + LocalNvmeSsdBlockConfig = new global::Google.Cloud.Container.V1.LocalNvmeSsdBlockConfig(); + } + input.ReadMessage(LocalNvmeSsdBlockConfig); break; } - case 26: { - NodefsInodesFree = input.ReadString(); + case 330: { + if (ephemeralStorageLocalSsdConfig_ == null) { + EphemeralStorageLocalSsdConfig = new global::Google.Cloud.Container.V1.EphemeralStorageLocalSsdConfig(); + } + input.ReadMessage(EphemeralStorageLocalSsdConfig); break; } - case 34: { - ImagefsAvailable = input.ReadString(); + case 338: { + if (soleTenantConfig_ == null) { + SoleTenantConfig = new global::Google.Cloud.Container.V1.SoleTenantConfig(); + } + input.ReadMessage(SoleTenantConfig); break; } - case 42: { - ImagefsInodesFree = input.ReadString(); + case 346: { + if (containerdConfig_ == null) { + ContainerdConfig = new global::Google.Cloud.Container.V1.ContainerdConfig(); + } + input.ReadMessage(ContainerdConfig); break; } - case 50: { - PidAvailable = input.ReadString(); + case 362: { + if (resourceManagerTags_ == null) { + ResourceManagerTags = new global::Google.Cloud.Container.V1.ResourceManagerTags(); + } + input.ReadMessage(ResourceManagerTags); + break; + } + case 368: { + EnableConfidentialStorage = input.ReadBool(); + break; + } + case 386: { + secondaryBootDisks_.AddEntriesFrom(ref input, _repeated_secondaryBootDisks_codec); + break; + } + case 394: { + storagePools_.AddEntriesFrom(ref input, _repeated_storagePools_codec); + break; + } + case 402: { + if (secondaryBootDiskUpdateStrategy_ == null) { + SecondaryBootDiskUpdateStrategy = new global::Google.Cloud.Container.V1.SecondaryBootDiskUpdateStrategy(); + } + input.ReadMessage(SecondaryBootDiskUpdateStrategy); + break; + } + case 410: { + if (gpuDirectConfig_ == null) { + GpuDirectConfig = new global::Google.Cloud.Container.V1.GPUDirectConfig(); + } + input.ReadMessage(GpuDirectConfig); + break; + } + case 426: { + if (maxRunDuration_ == null) { + MaxRunDuration = new global::Google.Protobuf.WellKnownTypes.Duration(); + } + input.ReadMessage(MaxRunDuration); + break; + } + case 432: { + LocalSsdEncryptionMode = (global::Google.Cloud.Container.V1.NodeConfig.Types.LocalSsdEncryptionMode) input.ReadEnum(); + break; + } + case 440: { + EffectiveCgroupMode = (global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode) input.ReadEnum(); + break; + } + case 448: { + FlexStart = input.ReadBool(); + break; + } + case 458: { + if (bootDisk_ == null) { + BootDisk = new global::Google.Cloud.Container.V1.BootDisk(); + } + input.ReadMessage(BootDisk); + break; + } + case 482: { + if (consolidationDelay_ == null) { + ConsolidationDelay = new global::Google.Protobuf.WellKnownTypes.Duration(); + } + input.ReadMessage(ConsolidationDelay); break; } } @@ -6088,33 +10157,83 @@ public void MergeFrom(pb::CodedInputStream input) { } #endif + #region Nested types + /// Container for nested types declared in the NodeConfig message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// LocalSsdEncryptionMode specifies the method used for encrypting the Local + /// SSDs attached to the node. + /// + public enum LocalSsdEncryptionMode { + /// + /// The given node will be encrypted using keys managed by Google + /// infrastructure and the keys will be deleted when the node is + /// deleted. + /// + [pbr::OriginalName("LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED")] Unspecified = 0, + /// + /// The given node will be encrypted using keys managed by Google + /// infrastructure and the keys will be deleted when the node is + /// deleted. + /// + [pbr::OriginalName("STANDARD_ENCRYPTION")] StandardEncryption = 1, + /// + /// The given node will opt-in for using ephemeral key for + /// encryption of Local SSDs. + /// The Local SSDs will not be able to recover data in case of node + /// crash. + /// + [pbr::OriginalName("EPHEMERAL_KEY_ENCRYPTION")] EphemeralKeyEncryption = 2, + } + + /// + /// Possible effective cgroup modes for the node. + /// + public enum EffectiveCgroupMode { + /// + /// EFFECTIVE_CGROUP_MODE_UNSPECIFIED means the cgroup configuration for the + /// node pool is unspecified, i.e. the node pool is a Windows node pool. + /// + [pbr::OriginalName("EFFECTIVE_CGROUP_MODE_UNSPECIFIED")] Unspecified = 0, + /// + /// CGROUP_MODE_V1 means the node pool is configured to use cgroupv1 for the + /// cgroup configuration. + /// + [pbr::OriginalName("EFFECTIVE_CGROUP_MODE_V1")] V1 = 1, + /// + /// CGROUP_MODE_V2 means the node pool is configured to use cgroupv2 for the + /// cgroup configuration. + /// + [pbr::OriginalName("EFFECTIVE_CGROUP_MODE_V2")] V2 = 2, + } + + } + #endregion + } /// - /// Parameters that describe the nodes in a cluster. - /// - /// GKE Autopilot clusters do not - /// recognize parameters in `NodeConfig`. Use - /// [AutoprovisioningNodePoolDefaults][google.container.v1.AutoprovisioningNodePoolDefaults] - /// instead. + /// Specifies options for controlling advanced machine features. /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class NodeConfig : pb::IMessage + public sealed partial class AdvancedMachineFeatures : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new NodeConfig()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new AdvancedMachineFeatures()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[8]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[9]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -6125,7 +10244,7 @@ public sealed partial class NodeConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public NodeConfig() { + public AdvancedMachineFeatures() { OnConstruction(); } @@ -6133,1148 +10252,720 @@ public NodeConfig() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public NodeConfig(NodeConfig other) : this() { + public AdvancedMachineFeatures(AdvancedMachineFeatures other) : this() { _hasBits0 = other._hasBits0; - machineType_ = other.machineType_; - diskSizeGb_ = other.diskSizeGb_; - oauthScopes_ = other.oauthScopes_.Clone(); - serviceAccount_ = other.serviceAccount_; - metadata_ = other.metadata_.Clone(); - imageType_ = other.imageType_; - labels_ = other.labels_.Clone(); - localSsdCount_ = other.localSsdCount_; - tags_ = other.tags_.Clone(); - preemptible_ = other.preemptible_; - accelerators_ = other.accelerators_.Clone(); - diskType_ = other.diskType_; - minCpuPlatform_ = other.minCpuPlatform_; - workloadMetadataConfig_ = other.workloadMetadataConfig_ != null ? other.workloadMetadataConfig_.Clone() : null; - taints_ = other.taints_.Clone(); - sandboxConfig_ = other.sandboxConfig_ != null ? other.sandboxConfig_.Clone() : null; - nodeGroup_ = other.nodeGroup_; - reservationAffinity_ = other.reservationAffinity_ != null ? other.reservationAffinity_.Clone() : null; - shieldedInstanceConfig_ = other.shieldedInstanceConfig_ != null ? other.shieldedInstanceConfig_.Clone() : null; - linuxNodeConfig_ = other.linuxNodeConfig_ != null ? other.linuxNodeConfig_.Clone() : null; - kubeletConfig_ = other.kubeletConfig_ != null ? other.kubeletConfig_.Clone() : null; - bootDiskKmsKey_ = other.bootDiskKmsKey_; - gcfsConfig_ = other.gcfsConfig_ != null ? other.gcfsConfig_.Clone() : null; - advancedMachineFeatures_ = other.advancedMachineFeatures_ != null ? other.advancedMachineFeatures_.Clone() : null; - gvnic_ = other.gvnic_ != null ? other.gvnic_.Clone() : null; - spot_ = other.spot_; - confidentialNodes_ = other.confidentialNodes_ != null ? other.confidentialNodes_.Clone() : null; - fastSocket_ = other.fastSocket_ != null ? other.fastSocket_.Clone() : null; - resourceLabels_ = other.resourceLabels_.Clone(); - loggingConfig_ = other.loggingConfig_ != null ? other.loggingConfig_.Clone() : null; - windowsNodeConfig_ = other.windowsNodeConfig_ != null ? other.windowsNodeConfig_.Clone() : null; - localNvmeSsdBlockConfig_ = other.localNvmeSsdBlockConfig_ != null ? other.localNvmeSsdBlockConfig_.Clone() : null; - ephemeralStorageLocalSsdConfig_ = other.ephemeralStorageLocalSsdConfig_ != null ? other.ephemeralStorageLocalSsdConfig_.Clone() : null; - soleTenantConfig_ = other.soleTenantConfig_ != null ? other.soleTenantConfig_.Clone() : null; - containerdConfig_ = other.containerdConfig_ != null ? other.containerdConfig_.Clone() : null; - resourceManagerTags_ = other.resourceManagerTags_ != null ? other.resourceManagerTags_.Clone() : null; - enableConfidentialStorage_ = other.enableConfidentialStorage_; - secondaryBootDisks_ = other.secondaryBootDisks_.Clone(); - storagePools_ = other.storagePools_.Clone(); - secondaryBootDiskUpdateStrategy_ = other.secondaryBootDiskUpdateStrategy_ != null ? other.secondaryBootDiskUpdateStrategy_.Clone() : null; - maxRunDuration_ = other.maxRunDuration_ != null ? other.maxRunDuration_.Clone() : null; - localSsdEncryptionMode_ = other.localSsdEncryptionMode_; - effectiveCgroupMode_ = other.effectiveCgroupMode_; - flexStart_ = other.flexStart_; - bootDisk_ = other.bootDisk_ != null ? other.bootDisk_.Clone() : null; + threadsPerCore_ = other.threadsPerCore_; + enableNestedVirtualization_ = other.enableNestedVirtualization_; + performanceMonitoringUnit_ = other.performanceMonitoringUnit_; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public NodeConfig Clone() { - return new NodeConfig(this); - } - - /// Field number for the "machine_type" field. - public const int MachineTypeFieldNumber = 1; - private string machineType_ = ""; - /// - /// The name of a Google Compute Engine [machine - /// type](https://cloud.google.com/compute/docs/machine-types) - /// - /// If unspecified, the default machine type is `e2-medium`. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string MachineType { - get { return machineType_; } - set { - machineType_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - - /// Field number for the "disk_size_gb" field. - public const int DiskSizeGbFieldNumber = 2; - private int diskSizeGb_; - /// - /// Size of the disk attached to each node, specified in GB. - /// The smallest allowed disk size is 10GB. - /// - /// If unspecified, the default disk size is 100GB. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int DiskSizeGb { - get { return diskSizeGb_; } - set { - diskSizeGb_ = value; - } - } - - /// Field number for the "oauth_scopes" field. - public const int OauthScopesFieldNumber = 3; - private static readonly pb::FieldCodec _repeated_oauthScopes_codec - = pb::FieldCodec.ForString(26); - private readonly pbc::RepeatedField oauthScopes_ = new pbc::RepeatedField(); - /// - /// The set of Google API scopes to be made available on all of the - /// node VMs under the "default" service account. - /// - /// The following scopes are recommended, but not required, and by default are - /// not included: - /// - /// * `https://www.googleapis.com/auth/compute` is required for mounting - /// persistent storage on your nodes. - /// * `https://www.googleapis.com/auth/devstorage.read_only` is required for - /// communicating with **gcr.io** - /// (the [Artifact Registry](https://cloud.google.com/artifact-registry/)). - /// - /// If unspecified, no scopes are added, unless Cloud Logging or Cloud - /// Monitoring are enabled, in which case their required scopes will be added. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField OauthScopes { - get { return oauthScopes_; } - } - - /// Field number for the "service_account" field. - public const int ServiceAccountFieldNumber = 9; - private string serviceAccount_ = ""; - /// - /// The Google Cloud Platform Service Account to be used by the node VMs. - /// Specify the email address of the Service Account; otherwise, if no Service - /// Account is specified, the "default" service account is used. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string ServiceAccount { - get { return serviceAccount_; } - set { - serviceAccount_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - - /// Field number for the "metadata" field. - public const int MetadataFieldNumber = 4; - private static readonly pbc::MapField.Codec _map_metadata_codec - = new pbc::MapField.Codec(pb::FieldCodec.ForString(10, ""), pb::FieldCodec.ForString(18, ""), 34); - private readonly pbc::MapField metadata_ = new pbc::MapField(); - /// - /// The metadata key/value pairs assigned to instances in the cluster. - /// - /// Keys must conform to the regexp `[a-zA-Z0-9-_]+` and be less than 128 bytes - /// in length. These are reflected as part of a URL in the metadata server. - /// Additionally, to avoid ambiguity, keys must not conflict with any other - /// metadata keys for the project or be one of the reserved keys: - /// - /// - "cluster-location" - /// - "cluster-name" - /// - "cluster-uid" - /// - "configure-sh" - /// - "containerd-configure-sh" - /// - "enable-os-login" - /// - "gci-ensure-gke-docker" - /// - "gci-metrics-enabled" - /// - "gci-update-strategy" - /// - "instance-template" - /// - "kube-env" - /// - "startup-script" - /// - "user-data" - /// - "disable-address-manager" - /// - "windows-startup-script-ps1" - /// - "common-psm1" - /// - "k8s-node-setup-psm1" - /// - "install-ssh-psm1" - /// - "user-profile-psm1" - /// - /// Values are free-form strings, and only have meaning as interpreted by - /// the image running in the instance. The only restriction placed on them is - /// that each value's size must be less than or equal to 32 KB. - /// - /// The total size of all keys and values must be less than 512 KB. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::MapField Metadata { - get { return metadata_; } - } - - /// Field number for the "image_type" field. - public const int ImageTypeFieldNumber = 5; - private string imageType_ = ""; - /// - /// The image type to use for this node. Note that for a given image type, - /// the latest version of it will be used. Please see - /// https://cloud.google.com/kubernetes-engine/docs/concepts/node-images - /// for available image types. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string ImageType { - get { return imageType_; } - set { - imageType_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - - /// Field number for the "labels" field. - public const int LabelsFieldNumber = 6; - private static readonly pbc::MapField.Codec _map_labels_codec - = new pbc::MapField.Codec(pb::FieldCodec.ForString(10, ""), pb::FieldCodec.ForString(18, ""), 50); - private readonly pbc::MapField labels_ = new pbc::MapField(); - /// - /// The map of Kubernetes labels (key/value pairs) to be applied to each node. - /// These will added in addition to any default label(s) that - /// Kubernetes may apply to the node. - /// In case of conflict in label keys, the applied set may differ depending on - /// the Kubernetes version -- it's best to assume the behavior is undefined - /// and conflicts should be avoided. - /// For more information, including usage and the valid values, see: - /// https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::MapField Labels { - get { return labels_; } - } - - /// Field number for the "local_ssd_count" field. - public const int LocalSsdCountFieldNumber = 7; - private int localSsdCount_; - /// - /// The number of local SSD disks to be attached to the node. - /// - /// The limit for this value is dependent upon the maximum number of - /// disks available on a machine per zone. See: - /// https://cloud.google.com/compute/docs/disks/local-ssd - /// for more information. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int LocalSsdCount { - get { return localSsdCount_; } - set { - localSsdCount_ = value; - } - } - - /// Field number for the "tags" field. - public const int TagsFieldNumber = 8; - private static readonly pb::FieldCodec _repeated_tags_codec - = pb::FieldCodec.ForString(66); - private readonly pbc::RepeatedField tags_ = new pbc::RepeatedField(); - /// - /// The list of instance tags applied to all nodes. Tags are used to identify - /// valid sources or targets for network firewalls and are specified by - /// the client during cluster or node pool creation. Each tag within the list - /// must comply with RFC1035. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField Tags { - get { return tags_; } - } - - /// Field number for the "preemptible" field. - public const int PreemptibleFieldNumber = 10; - private bool preemptible_; - /// - /// Whether the nodes are created as preemptible VM instances. See: - /// https://cloud.google.com/compute/docs/instances/preemptible - /// for more information about preemptible VM instances. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Preemptible { - get { return preemptible_; } - set { - preemptible_ = value; - } - } - - /// Field number for the "accelerators" field. - public const int AcceleratorsFieldNumber = 11; - private static readonly pb::FieldCodec _repeated_accelerators_codec - = pb::FieldCodec.ForMessage(90, global::Google.Cloud.Container.V1.AcceleratorConfig.Parser); - private readonly pbc::RepeatedField accelerators_ = new pbc::RepeatedField(); - /// - /// A list of hardware accelerators to be attached to each node. - /// See - /// https://cloud.google.com/compute/docs/gpus - /// for more information about support for GPUs. - /// + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField Accelerators { - get { return accelerators_; } + public AdvancedMachineFeatures Clone() { + return new AdvancedMachineFeatures(this); } - /// Field number for the "disk_type" field. - public const int DiskTypeFieldNumber = 12; - private string diskType_ = ""; + /// Field number for the "threads_per_core" field. + public const int ThreadsPerCoreFieldNumber = 1; + private readonly static long ThreadsPerCoreDefaultValue = 0L; + + private long threadsPerCore_; /// - /// Type of the disk attached to each node (e.g. 'pd-standard', 'pd-ssd' or - /// 'pd-balanced') - /// - /// If unspecified, the default disk type is 'pd-standard' + /// The number of threads per physical core. To disable simultaneous + /// multithreading (SMT) set this to 1. If unset, the maximum number of threads + /// supported per core by the underlying processor is assumed. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string DiskType { - get { return diskType_; } + public long ThreadsPerCore { + get { if ((_hasBits0 & 1) != 0) { return threadsPerCore_; } else { return ThreadsPerCoreDefaultValue; } } set { - diskType_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + _hasBits0 |= 1; + threadsPerCore_ = value; } } - - /// Field number for the "min_cpu_platform" field. - public const int MinCpuPlatformFieldNumber = 13; - private string minCpuPlatform_ = ""; - /// - /// Minimum CPU platform to be used by this instance. The instance may be - /// scheduled on the specified or newer CPU platform. Applicable values are the - /// friendly names of CPU platforms, such as - /// `minCpuPlatform: "Intel Haswell"` or - /// `minCpuPlatform: "Intel Sandy Bridge"`. For more - /// information, read [how to specify min CPU - /// platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform) - /// + /// Gets whether the "threads_per_core" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string MinCpuPlatform { - get { return minCpuPlatform_; } - set { - minCpuPlatform_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } + public bool HasThreadsPerCore { + get { return (_hasBits0 & 1) != 0; } + } + /// Clears the value of the "threads_per_core" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearThreadsPerCore() { + _hasBits0 &= ~1; } - /// Field number for the "workload_metadata_config" field. - public const int WorkloadMetadataConfigFieldNumber = 14; - private global::Google.Cloud.Container.V1.WorkloadMetadataConfig workloadMetadataConfig_; + /// Field number for the "enable_nested_virtualization" field. + public const int EnableNestedVirtualizationFieldNumber = 2; + private readonly static bool EnableNestedVirtualizationDefaultValue = false; + + private bool enableNestedVirtualization_; /// - /// The workload metadata configuration for this node. + /// Whether or not to enable nested virtualization (defaults to false). /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.WorkloadMetadataConfig WorkloadMetadataConfig { - get { return workloadMetadataConfig_; } + public bool EnableNestedVirtualization { + get { if ((_hasBits0 & 2) != 0) { return enableNestedVirtualization_; } else { return EnableNestedVirtualizationDefaultValue; } } set { - workloadMetadataConfig_ = value; + _hasBits0 |= 2; + enableNestedVirtualization_ = value; } } - - /// Field number for the "taints" field. - public const int TaintsFieldNumber = 15; - private static readonly pb::FieldCodec _repeated_taints_codec - = pb::FieldCodec.ForMessage(122, global::Google.Cloud.Container.V1.NodeTaint.Parser); - private readonly pbc::RepeatedField taints_ = new pbc::RepeatedField(); - /// - /// List of kubernetes taints to be applied to each node. - /// - /// For more information, including usage and the valid values, see: - /// https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ - /// + /// Gets whether the "enable_nested_virtualization" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField Taints { - get { return taints_; } + public bool HasEnableNestedVirtualization { + get { return (_hasBits0 & 2) != 0; } } - - /// Field number for the "sandbox_config" field. - public const int SandboxConfigFieldNumber = 17; - private global::Google.Cloud.Container.V1.SandboxConfig sandboxConfig_; - /// - /// Sandbox configuration for this node. - /// + /// Clears the value of the "enable_nested_virtualization" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.SandboxConfig SandboxConfig { - get { return sandboxConfig_; } - set { - sandboxConfig_ = value; - } + public void ClearEnableNestedVirtualization() { + _hasBits0 &= ~2; } - /// Field number for the "node_group" field. - public const int NodeGroupFieldNumber = 18; - private string nodeGroup_ = ""; + /// Field number for the "performance_monitoring_unit" field. + public const int PerformanceMonitoringUnitFieldNumber = 3; + private readonly static global::Google.Cloud.Container.V1.AdvancedMachineFeatures.Types.PerformanceMonitoringUnit PerformanceMonitoringUnitDefaultValue = global::Google.Cloud.Container.V1.AdvancedMachineFeatures.Types.PerformanceMonitoringUnit.Unspecified; + + private global::Google.Cloud.Container.V1.AdvancedMachineFeatures.Types.PerformanceMonitoringUnit performanceMonitoringUnit_; /// - /// Setting this field will assign instances of this - /// pool to run on the specified node group. This is useful for running - /// workloads on [sole tenant - /// nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes). + /// Type of Performance Monitoring Unit (PMU) requested on node pool instances. + /// If unset, PMU will not be available to the node. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string NodeGroup { - get { return nodeGroup_; } + public global::Google.Cloud.Container.V1.AdvancedMachineFeatures.Types.PerformanceMonitoringUnit PerformanceMonitoringUnit { + get { if ((_hasBits0 & 4) != 0) { return performanceMonitoringUnit_; } else { return PerformanceMonitoringUnitDefaultValue; } } set { - nodeGroup_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + _hasBits0 |= 4; + performanceMonitoringUnit_ = value; } } + /// Gets whether the "performance_monitoring_unit" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasPerformanceMonitoringUnit { + get { return (_hasBits0 & 4) != 0; } + } + /// Clears the value of the "performance_monitoring_unit" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearPerformanceMonitoringUnit() { + _hasBits0 &= ~4; + } - /// Field number for the "reservation_affinity" field. - public const int ReservationAffinityFieldNumber = 19; - private global::Google.Cloud.Container.V1.ReservationAffinity reservationAffinity_; - /// - /// The optional reservation affinity. Setting this field will apply - /// the specified [Zonal Compute - /// Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) - /// to this node pool. - /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.ReservationAffinity ReservationAffinity { - get { return reservationAffinity_; } - set { - reservationAffinity_ = value; - } + public override bool Equals(object other) { + return Equals(other as AdvancedMachineFeatures); } - /// Field number for the "shielded_instance_config" field. - public const int ShieldedInstanceConfigFieldNumber = 20; - private global::Google.Cloud.Container.V1.ShieldedInstanceConfig shieldedInstanceConfig_; - /// - /// Shielded Instance options. - /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.ShieldedInstanceConfig ShieldedInstanceConfig { - get { return shieldedInstanceConfig_; } - set { - shieldedInstanceConfig_ = value; + public bool Equals(AdvancedMachineFeatures other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; } + if (ThreadsPerCore != other.ThreadsPerCore) return false; + if (EnableNestedVirtualization != other.EnableNestedVirtualization) return false; + if (PerformanceMonitoringUnit != other.PerformanceMonitoringUnit) return false; + return Equals(_unknownFields, other._unknownFields); } - /// Field number for the "linux_node_config" field. - public const int LinuxNodeConfigFieldNumber = 21; - private global::Google.Cloud.Container.V1.LinuxNodeConfig linuxNodeConfig_; - /// - /// Parameters that can be configured on Linux nodes. - /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.LinuxNodeConfig LinuxNodeConfig { - get { return linuxNodeConfig_; } - set { - linuxNodeConfig_ = value; + public override int GetHashCode() { + int hash = 1; + if (HasThreadsPerCore) hash ^= ThreadsPerCore.GetHashCode(); + if (HasEnableNestedVirtualization) hash ^= EnableNestedVirtualization.GetHashCode(); + if (HasPerformanceMonitoringUnit) hash ^= PerformanceMonitoringUnit.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); } + return hash; } - /// Field number for the "kubelet_config" field. - public const int KubeletConfigFieldNumber = 22; - private global::Google.Cloud.Container.V1.NodeKubeletConfig kubeletConfig_; - /// - /// Node kubelet configs. - /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.NodeKubeletConfig KubeletConfig { - get { return kubeletConfig_; } - set { - kubeletConfig_ = value; - } + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); } - /// Field number for the "boot_disk_kms_key" field. - public const int BootDiskKmsKeyFieldNumber = 23; - private string bootDiskKmsKey_ = ""; - /// - /// - /// The Customer Managed Encryption Key used to encrypt the boot disk attached - /// to each node in the node pool. This should be of the form - /// projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME]. - /// For more information about protecting resources with Cloud KMS Keys please - /// see: - /// https://cloud.google.com/compute/docs/disks/customer-managed-encryption - /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string BootDiskKmsKey { - get { return bootDiskKmsKey_; } - set { - bootDiskKmsKey_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (HasThreadsPerCore) { + output.WriteRawTag(8); + output.WriteInt64(ThreadsPerCore); + } + if (HasEnableNestedVirtualization) { + output.WriteRawTag(16); + output.WriteBool(EnableNestedVirtualization); + } + if (HasPerformanceMonitoringUnit) { + output.WriteRawTag(24); + output.WriteEnum((int) PerformanceMonitoringUnit); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); } + #endif } - /// Field number for the "gcfs_config" field. - public const int GcfsConfigFieldNumber = 25; - private global::Google.Cloud.Container.V1.GcfsConfig gcfsConfig_; - /// - /// Google Container File System (image streaming) configs. - /// + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.GcfsConfig GcfsConfig { - get { return gcfsConfig_; } - set { - gcfsConfig_ = value; + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (HasThreadsPerCore) { + output.WriteRawTag(8); + output.WriteInt64(ThreadsPerCore); + } + if (HasEnableNestedVirtualization) { + output.WriteRawTag(16); + output.WriteBool(EnableNestedVirtualization); + } + if (HasPerformanceMonitoringUnit) { + output.WriteRawTag(24); + output.WriteEnum((int) PerformanceMonitoringUnit); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); } } + #endif - /// Field number for the "advanced_machine_features" field. - public const int AdvancedMachineFeaturesFieldNumber = 26; - private global::Google.Cloud.Container.V1.AdvancedMachineFeatures advancedMachineFeatures_; - /// - /// Advanced features for the Compute Engine VM. - /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.AdvancedMachineFeatures AdvancedMachineFeatures { - get { return advancedMachineFeatures_; } - set { - advancedMachineFeatures_ = value; + public int CalculateSize() { + int size = 0; + if (HasThreadsPerCore) { + size += 1 + pb::CodedOutputStream.ComputeInt64Size(ThreadsPerCore); + } + if (HasEnableNestedVirtualization) { + size += 1 + 1; + } + if (HasPerformanceMonitoringUnit) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) PerformanceMonitoringUnit); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); } + return size; } - /// Field number for the "gvnic" field. - public const int GvnicFieldNumber = 29; - private global::Google.Cloud.Container.V1.VirtualNIC gvnic_; - /// - /// Enable or disable gvnic in the node pool. - /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.VirtualNIC Gvnic { - get { return gvnic_; } - set { - gvnic_ = value; + public void MergeFrom(AdvancedMachineFeatures other) { + if (other == null) { + return; + } + if (other.HasThreadsPerCore) { + ThreadsPerCore = other.ThreadsPerCore; + } + if (other.HasEnableNestedVirtualization) { + EnableNestedVirtualization = other.EnableNestedVirtualization; + } + if (other.HasPerformanceMonitoringUnit) { + PerformanceMonitoringUnit = other.PerformanceMonitoringUnit; } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } - /// Field number for the "spot" field. - public const int SpotFieldNumber = 32; - private bool spot_; - /// - /// Spot flag for enabling Spot VM, which is a rebrand of - /// the existing preemptible flag. - /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Spot { - get { return spot_; } - set { - spot_ = value; + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + ThreadsPerCore = input.ReadInt64(); + break; + } + case 16: { + EnableNestedVirtualization = input.ReadBool(); + break; + } + case 24: { + PerformanceMonitoringUnit = (global::Google.Cloud.Container.V1.AdvancedMachineFeatures.Types.PerformanceMonitoringUnit) input.ReadEnum(); + break; + } + } } + #endif } - /// Field number for the "confidential_nodes" field. - public const int ConfidentialNodesFieldNumber = 35; - private global::Google.Cloud.Container.V1.ConfidentialNodes confidentialNodes_; - /// - /// Confidential nodes config. - /// All the nodes in the node pool will be Confidential VM once enabled. - /// + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.ConfidentialNodes ConfidentialNodes { - get { return confidentialNodes_; } - set { - confidentialNodes_ = value; + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + ThreadsPerCore = input.ReadInt64(); + break; + } + case 16: { + EnableNestedVirtualization = input.ReadBool(); + break; + } + case 24: { + PerformanceMonitoringUnit = (global::Google.Cloud.Container.V1.AdvancedMachineFeatures.Types.PerformanceMonitoringUnit) input.ReadEnum(); + break; + } + } } } + #endif - /// Field number for the "fast_socket" field. - public const int FastSocketFieldNumber = 36; - private global::Google.Cloud.Container.V1.FastSocket fastSocket_; - /// - /// Enable or disable NCCL fast socket for the node pool. - /// + #region Nested types + /// Container for nested types declared in the AdvancedMachineFeatures message type. [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.FastSocket FastSocket { - get { return fastSocket_; } - set { - fastSocket_ = value; + public static partial class Types { + /// + /// Level of PMU access. + /// + public enum PerformanceMonitoringUnit { + /// + /// PMU not enabled. + /// + [pbr::OriginalName("PERFORMANCE_MONITORING_UNIT_UNSPECIFIED")] Unspecified = 0, + /// + /// Architecturally defined non-LLC events. + /// + [pbr::OriginalName("ARCHITECTURAL")] Architectural = 1, + /// + /// Most documented core/L2 events. + /// + [pbr::OriginalName("STANDARD")] Standard = 2, + /// + /// Most documented core/L2 and LLC events. + /// + [pbr::OriginalName("ENHANCED")] Enhanced = 3, } + } + #endregion - /// Field number for the "resource_labels" field. - public const int ResourceLabelsFieldNumber = 37; - private static readonly pbc::MapField.Codec _map_resourceLabels_codec - = new pbc::MapField.Codec(pb::FieldCodec.ForString(10, ""), pb::FieldCodec.ForString(18, ""), 298); - private readonly pbc::MapField resourceLabels_ = new pbc::MapField(); - /// - /// The resource labels for the node pool to use to annotate any related - /// Google Compute Engine resources. - /// + } + + /// + /// Parameters for node pool-level network config. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class NodeNetworkConfig : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new NodeNetworkConfig()); + private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::MapField ResourceLabels { - get { return resourceLabels_; } - } + public static pb::MessageParser Parser { get { return _parser; } } - /// Field number for the "logging_config" field. - public const int LoggingConfigFieldNumber = 38; - private global::Google.Cloud.Container.V1.NodePoolLoggingConfig loggingConfig_; - /// - /// Logging configuration. - /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.NodePoolLoggingConfig LoggingConfig { - get { return loggingConfig_; } - set { - loggingConfig_ = value; - } + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[10]; } } - /// Field number for the "windows_node_config" field. - public const int WindowsNodeConfigFieldNumber = 39; - private global::Google.Cloud.Container.V1.WindowsNodeConfig windowsNodeConfig_; - /// - /// Parameters that can be configured on Windows nodes. - /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.WindowsNodeConfig WindowsNodeConfig { - get { return windowsNodeConfig_; } - set { - windowsNodeConfig_ = value; - } + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } } - /// Field number for the "local_nvme_ssd_block_config" field. - public const int LocalNvmeSsdBlockConfigFieldNumber = 40; - private global::Google.Cloud.Container.V1.LocalNvmeSsdBlockConfig localNvmeSsdBlockConfig_; - /// - /// Parameters for using raw-block Local NVMe SSDs. - /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.LocalNvmeSsdBlockConfig LocalNvmeSsdBlockConfig { - get { return localNvmeSsdBlockConfig_; } - set { - localNvmeSsdBlockConfig_ = value; - } + public NodeNetworkConfig() { + OnConstruction(); } - /// Field number for the "ephemeral_storage_local_ssd_config" field. - public const int EphemeralStorageLocalSsdConfigFieldNumber = 41; - private global::Google.Cloud.Container.V1.EphemeralStorageLocalSsdConfig ephemeralStorageLocalSsdConfig_; - /// - /// Parameters for the node ephemeral storage using Local SSDs. - /// If unspecified, ephemeral storage is backed by the boot disk. - /// + partial void OnConstruction(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.EphemeralStorageLocalSsdConfig EphemeralStorageLocalSsdConfig { - get { return ephemeralStorageLocalSsdConfig_; } - set { - ephemeralStorageLocalSsdConfig_ = value; - } + public NodeNetworkConfig(NodeNetworkConfig other) : this() { + _hasBits0 = other._hasBits0; + createPodRange_ = other.createPodRange_; + podRange_ = other.podRange_; + podIpv4CidrBlock_ = other.podIpv4CidrBlock_; + enablePrivateNodes_ = other.enablePrivateNodes_; + networkPerformanceConfig_ = other.networkPerformanceConfig_ != null ? other.networkPerformanceConfig_.Clone() : null; + podCidrOverprovisionConfig_ = other.podCidrOverprovisionConfig_ != null ? other.podCidrOverprovisionConfig_.Clone() : null; + additionalNodeNetworkConfigs_ = other.additionalNodeNetworkConfigs_.Clone(); + additionalPodNetworkConfigs_ = other.additionalPodNetworkConfigs_.Clone(); + podIpv4RangeUtilization_ = other.podIpv4RangeUtilization_; + subnetwork_ = other.subnetwork_; + networkTierConfig_ = other.networkTierConfig_ != null ? other.networkTierConfig_.Clone() : null; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NodeNetworkConfig Clone() { + return new NodeNetworkConfig(this); } - /// Field number for the "sole_tenant_config" field. - public const int SoleTenantConfigFieldNumber = 42; - private global::Google.Cloud.Container.V1.SoleTenantConfig soleTenantConfig_; + /// Field number for the "create_pod_range" field. + public const int CreatePodRangeFieldNumber = 4; + private bool createPodRange_; /// - /// Parameters for node pools to be backed by shared sole tenant node groups. + /// Input only. Whether to create a new range for pod IPs in this node pool. + /// Defaults are provided for `pod_range` and `pod_ipv4_cidr_block` if they + /// are not specified. + /// + /// If neither `create_pod_range` or `pod_range` are specified, the + /// cluster-level default (`ip_allocation_policy.cluster_ipv4_cidr_block`) is + /// used. + /// + /// Only applicable if `ip_allocation_policy.use_ip_aliases` is true. + /// + /// This field cannot be changed after the node pool has been created. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.SoleTenantConfig SoleTenantConfig { - get { return soleTenantConfig_; } + public bool CreatePodRange { + get { return createPodRange_; } set { - soleTenantConfig_ = value; + createPodRange_ = value; } } - /// Field number for the "containerd_config" field. - public const int ContainerdConfigFieldNumber = 43; - private global::Google.Cloud.Container.V1.ContainerdConfig containerdConfig_; + /// Field number for the "pod_range" field. + public const int PodRangeFieldNumber = 5; + private string podRange_ = ""; /// - /// Parameters for containerd customization. + /// The ID of the secondary range for pod IPs. + /// If `create_pod_range` is true, this ID is used for the new range. + /// If `create_pod_range` is false, uses an existing secondary range with this + /// ID. + /// + /// Only applicable if `ip_allocation_policy.use_ip_aliases` is true. + /// + /// This field cannot be changed after the node pool has been created. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.ContainerdConfig ContainerdConfig { - get { return containerdConfig_; } + public string PodRange { + get { return podRange_; } set { - containerdConfig_ = value; + podRange_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Field number for the "resource_manager_tags" field. - public const int ResourceManagerTagsFieldNumber = 45; - private global::Google.Cloud.Container.V1.ResourceManagerTags resourceManagerTags_; + /// Field number for the "pod_ipv4_cidr_block" field. + public const int PodIpv4CidrBlockFieldNumber = 6; + private string podIpv4CidrBlock_ = ""; /// - /// A map of resource manager tag keys and values to be attached to the nodes. + /// The IP address range for pod IPs in this node pool. + /// + /// Only applicable if `create_pod_range` is true. + /// + /// Set to blank to have a range chosen with the default size. + /// + /// Set to /netmask (e.g. `/14`) to have a range chosen with a specific + /// netmask. + /// + /// Set to a + /// [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) + /// notation (e.g. `10.96.0.0/14`) to pick a specific range to use. + /// + /// Only applicable if `ip_allocation_policy.use_ip_aliases` is true. + /// + /// This field cannot be changed after the node pool has been created. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.ResourceManagerTags ResourceManagerTags { - get { return resourceManagerTags_; } + public string PodIpv4CidrBlock { + get { return podIpv4CidrBlock_; } set { - resourceManagerTags_ = value; + podIpv4CidrBlock_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Field number for the "enable_confidential_storage" field. - public const int EnableConfidentialStorageFieldNumber = 46; - private bool enableConfidentialStorage_; + /// Field number for the "enable_private_nodes" field. + public const int EnablePrivateNodesFieldNumber = 9; + private readonly static bool EnablePrivateNodesDefaultValue = false; + + private bool enablePrivateNodes_; /// - /// Optional. Reserved for future use. + /// Whether nodes have internal IP addresses only. + /// If enable_private_nodes is not specified, then the value is derived from + /// [Cluster.NetworkConfig.default_enable_private_nodes][] /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool EnableConfidentialStorage { - get { return enableConfidentialStorage_; } + public bool EnablePrivateNodes { + get { if ((_hasBits0 & 1) != 0) { return enablePrivateNodes_; } else { return EnablePrivateNodesDefaultValue; } } set { - enableConfidentialStorage_ = value; + _hasBits0 |= 1; + enablePrivateNodes_ = value; } } - - /// Field number for the "secondary_boot_disks" field. - public const int SecondaryBootDisksFieldNumber = 48; - private static readonly pb::FieldCodec _repeated_secondaryBootDisks_codec - = pb::FieldCodec.ForMessage(386, global::Google.Cloud.Container.V1.SecondaryBootDisk.Parser); - private readonly pbc::RepeatedField secondaryBootDisks_ = new pbc::RepeatedField(); - /// - /// List of secondary boot disks attached to the nodes. - /// + /// Gets whether the "enable_private_nodes" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField SecondaryBootDisks { - get { return secondaryBootDisks_; } + public bool HasEnablePrivateNodes { + get { return (_hasBits0 & 1) != 0; } } - - /// Field number for the "storage_pools" field. - public const int StoragePoolsFieldNumber = 49; - private static readonly pb::FieldCodec _repeated_storagePools_codec - = pb::FieldCodec.ForString(394); - private readonly pbc::RepeatedField storagePools_ = new pbc::RepeatedField(); - /// - /// List of Storage Pools where boot disks are provisioned. - /// + /// Clears the value of the "enable_private_nodes" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField StoragePools { - get { return storagePools_; } + public void ClearEnablePrivateNodes() { + _hasBits0 &= ~1; } - /// Field number for the "secondary_boot_disk_update_strategy" field. - public const int SecondaryBootDiskUpdateStrategyFieldNumber = 50; - private global::Google.Cloud.Container.V1.SecondaryBootDiskUpdateStrategy secondaryBootDiskUpdateStrategy_; + /// Field number for the "network_performance_config" field. + public const int NetworkPerformanceConfigFieldNumber = 11; + private global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig networkPerformanceConfig_; /// - /// Secondary boot disk update strategy. + /// Network bandwidth tier configuration. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.SecondaryBootDiskUpdateStrategy SecondaryBootDiskUpdateStrategy { - get { return secondaryBootDiskUpdateStrategy_; } + public global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig NetworkPerformanceConfig { + get { return networkPerformanceConfig_; } set { - secondaryBootDiskUpdateStrategy_ = value; + networkPerformanceConfig_ = value; } } - /// Field number for the "max_run_duration" field. - public const int MaxRunDurationFieldNumber = 53; - private global::Google.Protobuf.WellKnownTypes.Duration maxRunDuration_; + /// Field number for the "pod_cidr_overprovision_config" field. + public const int PodCidrOverprovisionConfigFieldNumber = 13; + private global::Google.Cloud.Container.V1.PodCIDROverprovisionConfig podCidrOverprovisionConfig_; /// - /// The maximum duration for the nodes to exist. - /// If unspecified, the nodes can exist indefinitely. + /// [PRIVATE FIELD] + /// Pod CIDR size overprovisioning config for the nodepool. + /// + /// Pod CIDR size per node depends on max_pods_per_node. By default, the value + /// of max_pods_per_node is rounded off to next power of 2 and we then double + /// that to get the size of pod CIDR block per node. + /// Example: max_pods_per_node of 30 would result in 64 IPs (/26). + /// + /// This config can disable the doubling of IPs (we still round off to next + /// power of 2) + /// Example: max_pods_per_node of 30 will result in 32 IPs (/27) when + /// overprovisioning is disabled. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Protobuf.WellKnownTypes.Duration MaxRunDuration { - get { return maxRunDuration_; } + public global::Google.Cloud.Container.V1.PodCIDROverprovisionConfig PodCidrOverprovisionConfig { + get { return podCidrOverprovisionConfig_; } set { - maxRunDuration_ = value; + podCidrOverprovisionConfig_ = value; } } - /// Field number for the "local_ssd_encryption_mode" field. - public const int LocalSsdEncryptionModeFieldNumber = 54; - private readonly static global::Google.Cloud.Container.V1.NodeConfig.Types.LocalSsdEncryptionMode LocalSsdEncryptionModeDefaultValue = global::Google.Cloud.Container.V1.NodeConfig.Types.LocalSsdEncryptionMode.Unspecified; - - private global::Google.Cloud.Container.V1.NodeConfig.Types.LocalSsdEncryptionMode localSsdEncryptionMode_; + /// Field number for the "additional_node_network_configs" field. + public const int AdditionalNodeNetworkConfigsFieldNumber = 14; + private static readonly pb::FieldCodec _repeated_additionalNodeNetworkConfigs_codec + = pb::FieldCodec.ForMessage(114, global::Google.Cloud.Container.V1.AdditionalNodeNetworkConfig.Parser); + private readonly pbc::RepeatedField additionalNodeNetworkConfigs_ = new pbc::RepeatedField(); /// - /// Specifies which method should be used for encrypting the - /// Local SSDs attached to the node. + /// We specify the additional node networks for this node pool using this list. + /// Each node network corresponds to an additional interface /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.NodeConfig.Types.LocalSsdEncryptionMode LocalSsdEncryptionMode { - get { if ((_hasBits0 & 1) != 0) { return localSsdEncryptionMode_; } else { return LocalSsdEncryptionModeDefaultValue; } } - set { - _hasBits0 |= 1; - localSsdEncryptionMode_ = value; - } - } - /// Gets whether the "local_ssd_encryption_mode" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasLocalSsdEncryptionMode { - get { return (_hasBits0 & 1) != 0; } + public pbc::RepeatedField AdditionalNodeNetworkConfigs { + get { return additionalNodeNetworkConfigs_; } } - /// Clears the value of the "local_ssd_encryption_mode" field + + /// Field number for the "additional_pod_network_configs" field. + public const int AdditionalPodNetworkConfigsFieldNumber = 15; + private static readonly pb::FieldCodec _repeated_additionalPodNetworkConfigs_codec + = pb::FieldCodec.ForMessage(122, global::Google.Cloud.Container.V1.AdditionalPodNetworkConfig.Parser); + private readonly pbc::RepeatedField additionalPodNetworkConfigs_ = new pbc::RepeatedField(); + /// + /// We specify the additional pod networks for this node pool using this list. + /// Each pod network corresponds to an additional alias IP range for the node + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearLocalSsdEncryptionMode() { - _hasBits0 &= ~1; + public pbc::RepeatedField AdditionalPodNetworkConfigs { + get { return additionalPodNetworkConfigs_; } } - /// Field number for the "effective_cgroup_mode" field. - public const int EffectiveCgroupModeFieldNumber = 55; - private global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode effectiveCgroupMode_ = global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode.Unspecified; + /// Field number for the "pod_ipv4_range_utilization" field. + public const int PodIpv4RangeUtilizationFieldNumber = 16; + private double podIpv4RangeUtilization_; /// - /// Output only. effective_cgroup_mode is the cgroup mode actually used by the - /// node pool. It is determined by the cgroup mode specified in the - /// LinuxNodeConfig or the default cgroup mode based on the cluster creation - /// version. + /// Output only. The utilization of the IPv4 range for the pod. + /// The ratio is Usage/[Total number of IPs in the secondary range], + /// Usage=numNodes*numZones*podIPsPerNode. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode EffectiveCgroupMode { - get { return effectiveCgroupMode_; } + public double PodIpv4RangeUtilization { + get { return podIpv4RangeUtilization_; } set { - effectiveCgroupMode_ = value; + podIpv4RangeUtilization_ = value; } } - /// Field number for the "flex_start" field. - public const int FlexStartFieldNumber = 56; - private readonly static bool FlexStartDefaultValue = false; - - private bool flexStart_; + /// Field number for the "subnetwork" field. + public const int SubnetworkFieldNumber = 19; + private string subnetwork_ = ""; /// - /// Flex Start flag for enabling Flex Start VM. + /// Optional. The subnetwork name/path for the node pool. + /// Format: projects/{project}/regions/{region}/subnetworks/{subnetwork} + /// If the cluster is associated with multiple subnetworks, the subnetwork can + /// be either: + /// 1. A user supplied subnetwork name/full path during node pool creation. + /// Example1: my-subnet + /// Example2: projects/gke-project/regions/us-central1/subnetworks/my-subnet + /// 2. A subnetwork path picked based on the IP utilization during node pool + /// creation and is immutable. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool FlexStart { - get { if ((_hasBits0 & 2) != 0) { return flexStart_; } else { return FlexStartDefaultValue; } } + public string Subnetwork { + get { return subnetwork_; } set { - _hasBits0 |= 2; - flexStart_ = value; + subnetwork_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Gets whether the "flex_start" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasFlexStart { - get { return (_hasBits0 & 2) != 0; } - } - /// Clears the value of the "flex_start" field - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearFlexStart() { - _hasBits0 &= ~2; - } - /// Field number for the "boot_disk" field. - public const int BootDiskFieldNumber = 57; - private global::Google.Cloud.Container.V1.BootDisk bootDisk_; + /// Field number for the "network_tier_config" field. + public const int NetworkTierConfigFieldNumber = 20; + private global::Google.Cloud.Container.V1.NetworkTierConfig networkTierConfig_; /// - /// The boot disk configuration for the node pool. + /// Output only. The network tier configuration for the node pool inherits from + /// the cluster-level configuration and remains immutable throughout the node + /// pool's lifecycle, including during upgrades. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.BootDisk BootDisk { - get { return bootDisk_; } + public global::Google.Cloud.Container.V1.NetworkTierConfig NetworkTierConfig { + get { return networkTierConfig_; } set { - bootDisk_ = value; + networkTierConfig_ = value; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as NodeConfig); + return Equals(other as NodeNetworkConfig); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(NodeConfig other) { + public bool Equals(NodeNetworkConfig other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (MachineType != other.MachineType) return false; - if (DiskSizeGb != other.DiskSizeGb) return false; - if(!oauthScopes_.Equals(other.oauthScopes_)) return false; - if (ServiceAccount != other.ServiceAccount) return false; - if (!Metadata.Equals(other.Metadata)) return false; - if (ImageType != other.ImageType) return false; - if (!Labels.Equals(other.Labels)) return false; - if (LocalSsdCount != other.LocalSsdCount) return false; - if(!tags_.Equals(other.tags_)) return false; - if (Preemptible != other.Preemptible) return false; - if(!accelerators_.Equals(other.accelerators_)) return false; - if (DiskType != other.DiskType) return false; - if (MinCpuPlatform != other.MinCpuPlatform) return false; - if (!object.Equals(WorkloadMetadataConfig, other.WorkloadMetadataConfig)) return false; - if(!taints_.Equals(other.taints_)) return false; - if (!object.Equals(SandboxConfig, other.SandboxConfig)) return false; - if (NodeGroup != other.NodeGroup) return false; - if (!object.Equals(ReservationAffinity, other.ReservationAffinity)) return false; - if (!object.Equals(ShieldedInstanceConfig, other.ShieldedInstanceConfig)) return false; - if (!object.Equals(LinuxNodeConfig, other.LinuxNodeConfig)) return false; - if (!object.Equals(KubeletConfig, other.KubeletConfig)) return false; - if (BootDiskKmsKey != other.BootDiskKmsKey) return false; - if (!object.Equals(GcfsConfig, other.GcfsConfig)) return false; - if (!object.Equals(AdvancedMachineFeatures, other.AdvancedMachineFeatures)) return false; - if (!object.Equals(Gvnic, other.Gvnic)) return false; - if (Spot != other.Spot) return false; - if (!object.Equals(ConfidentialNodes, other.ConfidentialNodes)) return false; - if (!object.Equals(FastSocket, other.FastSocket)) return false; - if (!ResourceLabels.Equals(other.ResourceLabels)) return false; - if (!object.Equals(LoggingConfig, other.LoggingConfig)) return false; - if (!object.Equals(WindowsNodeConfig, other.WindowsNodeConfig)) return false; - if (!object.Equals(LocalNvmeSsdBlockConfig, other.LocalNvmeSsdBlockConfig)) return false; - if (!object.Equals(EphemeralStorageLocalSsdConfig, other.EphemeralStorageLocalSsdConfig)) return false; - if (!object.Equals(SoleTenantConfig, other.SoleTenantConfig)) return false; - if (!object.Equals(ContainerdConfig, other.ContainerdConfig)) return false; - if (!object.Equals(ResourceManagerTags, other.ResourceManagerTags)) return false; - if (EnableConfidentialStorage != other.EnableConfidentialStorage) return false; - if(!secondaryBootDisks_.Equals(other.secondaryBootDisks_)) return false; - if(!storagePools_.Equals(other.storagePools_)) return false; - if (!object.Equals(SecondaryBootDiskUpdateStrategy, other.SecondaryBootDiskUpdateStrategy)) return false; - if (!object.Equals(MaxRunDuration, other.MaxRunDuration)) return false; - if (LocalSsdEncryptionMode != other.LocalSsdEncryptionMode) return false; - if (EffectiveCgroupMode != other.EffectiveCgroupMode) return false; - if (FlexStart != other.FlexStart) return false; - if (!object.Equals(BootDisk, other.BootDisk)) return false; + if (CreatePodRange != other.CreatePodRange) return false; + if (PodRange != other.PodRange) return false; + if (PodIpv4CidrBlock != other.PodIpv4CidrBlock) return false; + if (EnablePrivateNodes != other.EnablePrivateNodes) return false; + if (!object.Equals(NetworkPerformanceConfig, other.NetworkPerformanceConfig)) return false; + if (!object.Equals(PodCidrOverprovisionConfig, other.PodCidrOverprovisionConfig)) return false; + if(!additionalNodeNetworkConfigs_.Equals(other.additionalNodeNetworkConfigs_)) return false; + if(!additionalPodNetworkConfigs_.Equals(other.additionalPodNetworkConfigs_)) return false; + if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(PodIpv4RangeUtilization, other.PodIpv4RangeUtilization)) return false; + if (Subnetwork != other.Subnetwork) return false; + if (!object.Equals(NetworkTierConfig, other.NetworkTierConfig)) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override int GetHashCode() { - int hash = 1; - if (MachineType.Length != 0) hash ^= MachineType.GetHashCode(); - if (DiskSizeGb != 0) hash ^= DiskSizeGb.GetHashCode(); - hash ^= oauthScopes_.GetHashCode(); - if (ServiceAccount.Length != 0) hash ^= ServiceAccount.GetHashCode(); - hash ^= Metadata.GetHashCode(); - if (ImageType.Length != 0) hash ^= ImageType.GetHashCode(); - hash ^= Labels.GetHashCode(); - if (LocalSsdCount != 0) hash ^= LocalSsdCount.GetHashCode(); - hash ^= tags_.GetHashCode(); - if (Preemptible != false) hash ^= Preemptible.GetHashCode(); - hash ^= accelerators_.GetHashCode(); - if (DiskType.Length != 0) hash ^= DiskType.GetHashCode(); - if (MinCpuPlatform.Length != 0) hash ^= MinCpuPlatform.GetHashCode(); - if (workloadMetadataConfig_ != null) hash ^= WorkloadMetadataConfig.GetHashCode(); - hash ^= taints_.GetHashCode(); - if (sandboxConfig_ != null) hash ^= SandboxConfig.GetHashCode(); - if (NodeGroup.Length != 0) hash ^= NodeGroup.GetHashCode(); - if (reservationAffinity_ != null) hash ^= ReservationAffinity.GetHashCode(); - if (shieldedInstanceConfig_ != null) hash ^= ShieldedInstanceConfig.GetHashCode(); - if (linuxNodeConfig_ != null) hash ^= LinuxNodeConfig.GetHashCode(); - if (kubeletConfig_ != null) hash ^= KubeletConfig.GetHashCode(); - if (BootDiskKmsKey.Length != 0) hash ^= BootDiskKmsKey.GetHashCode(); - if (gcfsConfig_ != null) hash ^= GcfsConfig.GetHashCode(); - if (advancedMachineFeatures_ != null) hash ^= AdvancedMachineFeatures.GetHashCode(); - if (gvnic_ != null) hash ^= Gvnic.GetHashCode(); - if (Spot != false) hash ^= Spot.GetHashCode(); - if (confidentialNodes_ != null) hash ^= ConfidentialNodes.GetHashCode(); - if (fastSocket_ != null) hash ^= FastSocket.GetHashCode(); - hash ^= ResourceLabels.GetHashCode(); - if (loggingConfig_ != null) hash ^= LoggingConfig.GetHashCode(); - if (windowsNodeConfig_ != null) hash ^= WindowsNodeConfig.GetHashCode(); - if (localNvmeSsdBlockConfig_ != null) hash ^= LocalNvmeSsdBlockConfig.GetHashCode(); - if (ephemeralStorageLocalSsdConfig_ != null) hash ^= EphemeralStorageLocalSsdConfig.GetHashCode(); - if (soleTenantConfig_ != null) hash ^= SoleTenantConfig.GetHashCode(); - if (containerdConfig_ != null) hash ^= ContainerdConfig.GetHashCode(); - if (resourceManagerTags_ != null) hash ^= ResourceManagerTags.GetHashCode(); - if (EnableConfidentialStorage != false) hash ^= EnableConfidentialStorage.GetHashCode(); - hash ^= secondaryBootDisks_.GetHashCode(); - hash ^= storagePools_.GetHashCode(); - if (secondaryBootDiskUpdateStrategy_ != null) hash ^= SecondaryBootDiskUpdateStrategy.GetHashCode(); - if (maxRunDuration_ != null) hash ^= MaxRunDuration.GetHashCode(); - if (HasLocalSsdEncryptionMode) hash ^= LocalSsdEncryptionMode.GetHashCode(); - if (EffectiveCgroupMode != global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode.Unspecified) hash ^= EffectiveCgroupMode.GetHashCode(); - if (HasFlexStart) hash ^= FlexStart.GetHashCode(); - if (bootDisk_ != null) hash ^= BootDisk.GetHashCode(); - if (_unknownFields != null) { - hash ^= _unknownFields.GetHashCode(); - } - return hash; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override string ToString() { - return pb::JsonFormatter.ToDiagnosticString(this); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void WriteTo(pb::CodedOutputStream output) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - output.WriteRawMessage(this); - #else - if (MachineType.Length != 0) { - output.WriteRawTag(10); - output.WriteString(MachineType); - } - if (DiskSizeGb != 0) { - output.WriteRawTag(16); - output.WriteInt32(DiskSizeGb); - } - oauthScopes_.WriteTo(output, _repeated_oauthScopes_codec); - metadata_.WriteTo(output, _map_metadata_codec); - if (ImageType.Length != 0) { - output.WriteRawTag(42); - output.WriteString(ImageType); - } - labels_.WriteTo(output, _map_labels_codec); - if (LocalSsdCount != 0) { - output.WriteRawTag(56); - output.WriteInt32(LocalSsdCount); - } - tags_.WriteTo(output, _repeated_tags_codec); - if (ServiceAccount.Length != 0) { - output.WriteRawTag(74); - output.WriteString(ServiceAccount); - } - if (Preemptible != false) { - output.WriteRawTag(80); - output.WriteBool(Preemptible); - } - accelerators_.WriteTo(output, _repeated_accelerators_codec); - if (DiskType.Length != 0) { - output.WriteRawTag(98); - output.WriteString(DiskType); - } - if (MinCpuPlatform.Length != 0) { - output.WriteRawTag(106); - output.WriteString(MinCpuPlatform); - } - if (workloadMetadataConfig_ != null) { - output.WriteRawTag(114); - output.WriteMessage(WorkloadMetadataConfig); - } - taints_.WriteTo(output, _repeated_taints_codec); - if (sandboxConfig_ != null) { - output.WriteRawTag(138, 1); - output.WriteMessage(SandboxConfig); - } - if (NodeGroup.Length != 0) { - output.WriteRawTag(146, 1); - output.WriteString(NodeGroup); - } - if (reservationAffinity_ != null) { - output.WriteRawTag(154, 1); - output.WriteMessage(ReservationAffinity); - } - if (shieldedInstanceConfig_ != null) { - output.WriteRawTag(162, 1); - output.WriteMessage(ShieldedInstanceConfig); - } - if (linuxNodeConfig_ != null) { - output.WriteRawTag(170, 1); - output.WriteMessage(LinuxNodeConfig); - } - if (kubeletConfig_ != null) { - output.WriteRawTag(178, 1); - output.WriteMessage(KubeletConfig); - } - if (BootDiskKmsKey.Length != 0) { - output.WriteRawTag(186, 1); - output.WriteString(BootDiskKmsKey); - } - if (gcfsConfig_ != null) { - output.WriteRawTag(202, 1); - output.WriteMessage(GcfsConfig); - } - if (advancedMachineFeatures_ != null) { - output.WriteRawTag(210, 1); - output.WriteMessage(AdvancedMachineFeatures); - } - if (gvnic_ != null) { - output.WriteRawTag(234, 1); - output.WriteMessage(Gvnic); - } - if (Spot != false) { - output.WriteRawTag(128, 2); - output.WriteBool(Spot); - } - if (confidentialNodes_ != null) { - output.WriteRawTag(154, 2); - output.WriteMessage(ConfidentialNodes); - } - if (fastSocket_ != null) { - output.WriteRawTag(162, 2); - output.WriteMessage(FastSocket); - } - resourceLabels_.WriteTo(output, _map_resourceLabels_codec); - if (loggingConfig_ != null) { - output.WriteRawTag(178, 2); - output.WriteMessage(LoggingConfig); - } - if (windowsNodeConfig_ != null) { - output.WriteRawTag(186, 2); - output.WriteMessage(WindowsNodeConfig); - } - if (localNvmeSsdBlockConfig_ != null) { - output.WriteRawTag(194, 2); - output.WriteMessage(LocalNvmeSsdBlockConfig); - } - if (ephemeralStorageLocalSsdConfig_ != null) { - output.WriteRawTag(202, 2); - output.WriteMessage(EphemeralStorageLocalSsdConfig); - } - if (soleTenantConfig_ != null) { - output.WriteRawTag(210, 2); - output.WriteMessage(SoleTenantConfig); + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (CreatePodRange != false) hash ^= CreatePodRange.GetHashCode(); + if (PodRange.Length != 0) hash ^= PodRange.GetHashCode(); + if (PodIpv4CidrBlock.Length != 0) hash ^= PodIpv4CidrBlock.GetHashCode(); + if (HasEnablePrivateNodes) hash ^= EnablePrivateNodes.GetHashCode(); + if (networkPerformanceConfig_ != null) hash ^= NetworkPerformanceConfig.GetHashCode(); + if (podCidrOverprovisionConfig_ != null) hash ^= PodCidrOverprovisionConfig.GetHashCode(); + hash ^= additionalNodeNetworkConfigs_.GetHashCode(); + hash ^= additionalPodNetworkConfigs_.GetHashCode(); + if (PodIpv4RangeUtilization != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(PodIpv4RangeUtilization); + if (Subnetwork.Length != 0) hash ^= Subnetwork.GetHashCode(); + if (networkTierConfig_ != null) hash ^= NetworkTierConfig.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); } - if (containerdConfig_ != null) { - output.WriteRawTag(218, 2); - output.WriteMessage(ContainerdConfig); + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (CreatePodRange != false) { + output.WriteRawTag(32); + output.WriteBool(CreatePodRange); } - if (resourceManagerTags_ != null) { - output.WriteRawTag(234, 2); - output.WriteMessage(ResourceManagerTags); + if (PodRange.Length != 0) { + output.WriteRawTag(42); + output.WriteString(PodRange); } - if (EnableConfidentialStorage != false) { - output.WriteRawTag(240, 2); - output.WriteBool(EnableConfidentialStorage); + if (PodIpv4CidrBlock.Length != 0) { + output.WriteRawTag(50); + output.WriteString(PodIpv4CidrBlock); } - secondaryBootDisks_.WriteTo(output, _repeated_secondaryBootDisks_codec); - storagePools_.WriteTo(output, _repeated_storagePools_codec); - if (secondaryBootDiskUpdateStrategy_ != null) { - output.WriteRawTag(146, 3); - output.WriteMessage(SecondaryBootDiskUpdateStrategy); + if (HasEnablePrivateNodes) { + output.WriteRawTag(72); + output.WriteBool(EnablePrivateNodes); } - if (maxRunDuration_ != null) { - output.WriteRawTag(170, 3); - output.WriteMessage(MaxRunDuration); + if (networkPerformanceConfig_ != null) { + output.WriteRawTag(90); + output.WriteMessage(NetworkPerformanceConfig); } - if (HasLocalSsdEncryptionMode) { - output.WriteRawTag(176, 3); - output.WriteEnum((int) LocalSsdEncryptionMode); + if (podCidrOverprovisionConfig_ != null) { + output.WriteRawTag(106); + output.WriteMessage(PodCidrOverprovisionConfig); } - if (EffectiveCgroupMode != global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode.Unspecified) { - output.WriteRawTag(184, 3); - output.WriteEnum((int) EffectiveCgroupMode); + additionalNodeNetworkConfigs_.WriteTo(output, _repeated_additionalNodeNetworkConfigs_codec); + additionalPodNetworkConfigs_.WriteTo(output, _repeated_additionalPodNetworkConfigs_codec); + if (PodIpv4RangeUtilization != 0D) { + output.WriteRawTag(129, 1); + output.WriteDouble(PodIpv4RangeUtilization); } - if (HasFlexStart) { - output.WriteRawTag(192, 3); - output.WriteBool(FlexStart); + if (Subnetwork.Length != 0) { + output.WriteRawTag(154, 1); + output.WriteString(Subnetwork); } - if (bootDisk_ != null) { - output.WriteRawTag(202, 3); - output.WriteMessage(BootDisk); + if (networkTierConfig_ != null) { + output.WriteRawTag(162, 1); + output.WriteMessage(NetworkTierConfig); } if (_unknownFields != null) { _unknownFields.WriteTo(output); @@ -7286,158 +10977,43 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (MachineType.Length != 0) { - output.WriteRawTag(10); - output.WriteString(MachineType); - } - if (DiskSizeGb != 0) { - output.WriteRawTag(16); - output.WriteInt32(DiskSizeGb); + if (CreatePodRange != false) { + output.WriteRawTag(32); + output.WriteBool(CreatePodRange); } - oauthScopes_.WriteTo(ref output, _repeated_oauthScopes_codec); - metadata_.WriteTo(ref output, _map_metadata_codec); - if (ImageType.Length != 0) { + if (PodRange.Length != 0) { output.WriteRawTag(42); - output.WriteString(ImageType); - } - labels_.WriteTo(ref output, _map_labels_codec); - if (LocalSsdCount != 0) { - output.WriteRawTag(56); - output.WriteInt32(LocalSsdCount); + output.WriteString(PodRange); } - tags_.WriteTo(ref output, _repeated_tags_codec); - if (ServiceAccount.Length != 0) { - output.WriteRawTag(74); - output.WriteString(ServiceAccount); + if (PodIpv4CidrBlock.Length != 0) { + output.WriteRawTag(50); + output.WriteString(PodIpv4CidrBlock); } - if (Preemptible != false) { - output.WriteRawTag(80); - output.WriteBool(Preemptible); + if (HasEnablePrivateNodes) { + output.WriteRawTag(72); + output.WriteBool(EnablePrivateNodes); } - accelerators_.WriteTo(ref output, _repeated_accelerators_codec); - if (DiskType.Length != 0) { - output.WriteRawTag(98); - output.WriteString(DiskType); + if (networkPerformanceConfig_ != null) { + output.WriteRawTag(90); + output.WriteMessage(NetworkPerformanceConfig); } - if (MinCpuPlatform.Length != 0) { + if (podCidrOverprovisionConfig_ != null) { output.WriteRawTag(106); - output.WriteString(MinCpuPlatform); - } - if (workloadMetadataConfig_ != null) { - output.WriteRawTag(114); - output.WriteMessage(WorkloadMetadataConfig); - } - taints_.WriteTo(ref output, _repeated_taints_codec); - if (sandboxConfig_ != null) { - output.WriteRawTag(138, 1); - output.WriteMessage(SandboxConfig); + output.WriteMessage(PodCidrOverprovisionConfig); } - if (NodeGroup.Length != 0) { - output.WriteRawTag(146, 1); - output.WriteString(NodeGroup); + additionalNodeNetworkConfigs_.WriteTo(ref output, _repeated_additionalNodeNetworkConfigs_codec); + additionalPodNetworkConfigs_.WriteTo(ref output, _repeated_additionalPodNetworkConfigs_codec); + if (PodIpv4RangeUtilization != 0D) { + output.WriteRawTag(129, 1); + output.WriteDouble(PodIpv4RangeUtilization); } - if (reservationAffinity_ != null) { + if (Subnetwork.Length != 0) { output.WriteRawTag(154, 1); - output.WriteMessage(ReservationAffinity); + output.WriteString(Subnetwork); } - if (shieldedInstanceConfig_ != null) { + if (networkTierConfig_ != null) { output.WriteRawTag(162, 1); - output.WriteMessage(ShieldedInstanceConfig); - } - if (linuxNodeConfig_ != null) { - output.WriteRawTag(170, 1); - output.WriteMessage(LinuxNodeConfig); - } - if (kubeletConfig_ != null) { - output.WriteRawTag(178, 1); - output.WriteMessage(KubeletConfig); - } - if (BootDiskKmsKey.Length != 0) { - output.WriteRawTag(186, 1); - output.WriteString(BootDiskKmsKey); - } - if (gcfsConfig_ != null) { - output.WriteRawTag(202, 1); - output.WriteMessage(GcfsConfig); - } - if (advancedMachineFeatures_ != null) { - output.WriteRawTag(210, 1); - output.WriteMessage(AdvancedMachineFeatures); - } - if (gvnic_ != null) { - output.WriteRawTag(234, 1); - output.WriteMessage(Gvnic); - } - if (Spot != false) { - output.WriteRawTag(128, 2); - output.WriteBool(Spot); - } - if (confidentialNodes_ != null) { - output.WriteRawTag(154, 2); - output.WriteMessage(ConfidentialNodes); - } - if (fastSocket_ != null) { - output.WriteRawTag(162, 2); - output.WriteMessage(FastSocket); - } - resourceLabels_.WriteTo(ref output, _map_resourceLabels_codec); - if (loggingConfig_ != null) { - output.WriteRawTag(178, 2); - output.WriteMessage(LoggingConfig); - } - if (windowsNodeConfig_ != null) { - output.WriteRawTag(186, 2); - output.WriteMessage(WindowsNodeConfig); - } - if (localNvmeSsdBlockConfig_ != null) { - output.WriteRawTag(194, 2); - output.WriteMessage(LocalNvmeSsdBlockConfig); - } - if (ephemeralStorageLocalSsdConfig_ != null) { - output.WriteRawTag(202, 2); - output.WriteMessage(EphemeralStorageLocalSsdConfig); - } - if (soleTenantConfig_ != null) { - output.WriteRawTag(210, 2); - output.WriteMessage(SoleTenantConfig); - } - if (containerdConfig_ != null) { - output.WriteRawTag(218, 2); - output.WriteMessage(ContainerdConfig); - } - if (resourceManagerTags_ != null) { - output.WriteRawTag(234, 2); - output.WriteMessage(ResourceManagerTags); - } - if (EnableConfidentialStorage != false) { - output.WriteRawTag(240, 2); - output.WriteBool(EnableConfidentialStorage); - } - secondaryBootDisks_.WriteTo(ref output, _repeated_secondaryBootDisks_codec); - storagePools_.WriteTo(ref output, _repeated_storagePools_codec); - if (secondaryBootDiskUpdateStrategy_ != null) { - output.WriteRawTag(146, 3); - output.WriteMessage(SecondaryBootDiskUpdateStrategy); - } - if (maxRunDuration_ != null) { - output.WriteRawTag(170, 3); - output.WriteMessage(MaxRunDuration); - } - if (HasLocalSsdEncryptionMode) { - output.WriteRawTag(176, 3); - output.WriteEnum((int) LocalSsdEncryptionMode); - } - if (EffectiveCgroupMode != global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode.Unspecified) { - output.WriteRawTag(184, 3); - output.WriteEnum((int) EffectiveCgroupMode); - } - if (HasFlexStart) { - output.WriteRawTag(192, 3); - output.WriteBool(FlexStart); - } - if (bootDisk_ != null) { - output.WriteRawTag(202, 3); - output.WriteMessage(BootDisk); + output.WriteMessage(NetworkTierConfig); } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); @@ -7449,122 +11025,34 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (MachineType.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(MachineType); - } - if (DiskSizeGb != 0) { - size += 1 + pb::CodedOutputStream.ComputeInt32Size(DiskSizeGb); - } - size += oauthScopes_.CalculateSize(_repeated_oauthScopes_codec); - if (ServiceAccount.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(ServiceAccount); - } - size += metadata_.CalculateSize(_map_metadata_codec); - if (ImageType.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(ImageType); - } - size += labels_.CalculateSize(_map_labels_codec); - if (LocalSsdCount != 0) { - size += 1 + pb::CodedOutputStream.ComputeInt32Size(LocalSsdCount); - } - size += tags_.CalculateSize(_repeated_tags_codec); - if (Preemptible != false) { + if (CreatePodRange != false) { size += 1 + 1; } - size += accelerators_.CalculateSize(_repeated_accelerators_codec); - if (DiskType.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(DiskType); - } - if (MinCpuPlatform.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(MinCpuPlatform); - } - if (workloadMetadataConfig_ != null) { - size += 1 + pb::CodedOutputStream.ComputeMessageSize(WorkloadMetadataConfig); - } - size += taints_.CalculateSize(_repeated_taints_codec); - if (sandboxConfig_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(SandboxConfig); - } - if (NodeGroup.Length != 0) { - size += 2 + pb::CodedOutputStream.ComputeStringSize(NodeGroup); - } - if (reservationAffinity_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(ReservationAffinity); - } - if (shieldedInstanceConfig_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(ShieldedInstanceConfig); - } - if (linuxNodeConfig_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(LinuxNodeConfig); - } - if (kubeletConfig_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(KubeletConfig); - } - if (BootDiskKmsKey.Length != 0) { - size += 2 + pb::CodedOutputStream.ComputeStringSize(BootDiskKmsKey); - } - if (gcfsConfig_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(GcfsConfig); - } - if (advancedMachineFeatures_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(AdvancedMachineFeatures); - } - if (gvnic_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(Gvnic); - } - if (Spot != false) { - size += 2 + 1; - } - if (confidentialNodes_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(ConfidentialNodes); - } - if (fastSocket_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(FastSocket); - } - size += resourceLabels_.CalculateSize(_map_resourceLabels_codec); - if (loggingConfig_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(LoggingConfig); - } - if (windowsNodeConfig_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(WindowsNodeConfig); - } - if (localNvmeSsdBlockConfig_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(LocalNvmeSsdBlockConfig); - } - if (ephemeralStorageLocalSsdConfig_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(EphemeralStorageLocalSsdConfig); - } - if (soleTenantConfig_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(SoleTenantConfig); - } - if (containerdConfig_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(ContainerdConfig); - } - if (resourceManagerTags_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(ResourceManagerTags); + if (PodRange.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(PodRange); } - if (EnableConfidentialStorage != false) { - size += 2 + 1; + if (PodIpv4CidrBlock.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(PodIpv4CidrBlock); } - size += secondaryBootDisks_.CalculateSize(_repeated_secondaryBootDisks_codec); - size += storagePools_.CalculateSize(_repeated_storagePools_codec); - if (secondaryBootDiskUpdateStrategy_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(SecondaryBootDiskUpdateStrategy); + if (HasEnablePrivateNodes) { + size += 1 + 1; } - if (maxRunDuration_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(MaxRunDuration); + if (networkPerformanceConfig_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(NetworkPerformanceConfig); } - if (HasLocalSsdEncryptionMode) { - size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) LocalSsdEncryptionMode); + if (podCidrOverprovisionConfig_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(PodCidrOverprovisionConfig); } - if (EffectiveCgroupMode != global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode.Unspecified) { - size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) EffectiveCgroupMode); + size += additionalNodeNetworkConfigs_.CalculateSize(_repeated_additionalNodeNetworkConfigs_codec); + size += additionalPodNetworkConfigs_.CalculateSize(_repeated_additionalPodNetworkConfigs_codec); + if (PodIpv4RangeUtilization != 0D) { + size += 2 + 8; } - if (HasFlexStart) { - size += 2 + 1; + if (Subnetwork.Length != 0) { + size += 2 + pb::CodedOutputStream.ComputeStringSize(Subnetwork); } - if (bootDisk_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(BootDisk); + if (networkTierConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(NetworkTierConfig); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -7574,189 +11062,47 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(NodeConfig other) { + public void MergeFrom(NodeNetworkConfig other) { if (other == null) { return; } - if (other.MachineType.Length != 0) { - MachineType = other.MachineType; - } - if (other.DiskSizeGb != 0) { - DiskSizeGb = other.DiskSizeGb; - } - oauthScopes_.Add(other.oauthScopes_); - if (other.ServiceAccount.Length != 0) { - ServiceAccount = other.ServiceAccount; - } - metadata_.MergeFrom(other.metadata_); - if (other.ImageType.Length != 0) { - ImageType = other.ImageType; - } - labels_.MergeFrom(other.labels_); - if (other.LocalSsdCount != 0) { - LocalSsdCount = other.LocalSsdCount; - } - tags_.Add(other.tags_); - if (other.Preemptible != false) { - Preemptible = other.Preemptible; - } - accelerators_.Add(other.accelerators_); - if (other.DiskType.Length != 0) { - DiskType = other.DiskType; - } - if (other.MinCpuPlatform.Length != 0) { - MinCpuPlatform = other.MinCpuPlatform; - } - if (other.workloadMetadataConfig_ != null) { - if (workloadMetadataConfig_ == null) { - WorkloadMetadataConfig = new global::Google.Cloud.Container.V1.WorkloadMetadataConfig(); - } - WorkloadMetadataConfig.MergeFrom(other.WorkloadMetadataConfig); - } - taints_.Add(other.taints_); - if (other.sandboxConfig_ != null) { - if (sandboxConfig_ == null) { - SandboxConfig = new global::Google.Cloud.Container.V1.SandboxConfig(); - } - SandboxConfig.MergeFrom(other.SandboxConfig); - } - if (other.NodeGroup.Length != 0) { - NodeGroup = other.NodeGroup; - } - if (other.reservationAffinity_ != null) { - if (reservationAffinity_ == null) { - ReservationAffinity = new global::Google.Cloud.Container.V1.ReservationAffinity(); - } - ReservationAffinity.MergeFrom(other.ReservationAffinity); - } - if (other.shieldedInstanceConfig_ != null) { - if (shieldedInstanceConfig_ == null) { - ShieldedInstanceConfig = new global::Google.Cloud.Container.V1.ShieldedInstanceConfig(); - } - ShieldedInstanceConfig.MergeFrom(other.ShieldedInstanceConfig); - } - if (other.linuxNodeConfig_ != null) { - if (linuxNodeConfig_ == null) { - LinuxNodeConfig = new global::Google.Cloud.Container.V1.LinuxNodeConfig(); - } - LinuxNodeConfig.MergeFrom(other.LinuxNodeConfig); - } - if (other.kubeletConfig_ != null) { - if (kubeletConfig_ == null) { - KubeletConfig = new global::Google.Cloud.Container.V1.NodeKubeletConfig(); - } - KubeletConfig.MergeFrom(other.KubeletConfig); - } - if (other.BootDiskKmsKey.Length != 0) { - BootDiskKmsKey = other.BootDiskKmsKey; - } - if (other.gcfsConfig_ != null) { - if (gcfsConfig_ == null) { - GcfsConfig = new global::Google.Cloud.Container.V1.GcfsConfig(); - } - GcfsConfig.MergeFrom(other.GcfsConfig); - } - if (other.advancedMachineFeatures_ != null) { - if (advancedMachineFeatures_ == null) { - AdvancedMachineFeatures = new global::Google.Cloud.Container.V1.AdvancedMachineFeatures(); - } - AdvancedMachineFeatures.MergeFrom(other.AdvancedMachineFeatures); - } - if (other.gvnic_ != null) { - if (gvnic_ == null) { - Gvnic = new global::Google.Cloud.Container.V1.VirtualNIC(); - } - Gvnic.MergeFrom(other.Gvnic); - } - if (other.Spot != false) { - Spot = other.Spot; - } - if (other.confidentialNodes_ != null) { - if (confidentialNodes_ == null) { - ConfidentialNodes = new global::Google.Cloud.Container.V1.ConfidentialNodes(); - } - ConfidentialNodes.MergeFrom(other.ConfidentialNodes); - } - if (other.fastSocket_ != null) { - if (fastSocket_ == null) { - FastSocket = new global::Google.Cloud.Container.V1.FastSocket(); - } - FastSocket.MergeFrom(other.FastSocket); - } - resourceLabels_.MergeFrom(other.resourceLabels_); - if (other.loggingConfig_ != null) { - if (loggingConfig_ == null) { - LoggingConfig = new global::Google.Cloud.Container.V1.NodePoolLoggingConfig(); - } - LoggingConfig.MergeFrom(other.LoggingConfig); - } - if (other.windowsNodeConfig_ != null) { - if (windowsNodeConfig_ == null) { - WindowsNodeConfig = new global::Google.Cloud.Container.V1.WindowsNodeConfig(); - } - WindowsNodeConfig.MergeFrom(other.WindowsNodeConfig); - } - if (other.localNvmeSsdBlockConfig_ != null) { - if (localNvmeSsdBlockConfig_ == null) { - LocalNvmeSsdBlockConfig = new global::Google.Cloud.Container.V1.LocalNvmeSsdBlockConfig(); - } - LocalNvmeSsdBlockConfig.MergeFrom(other.LocalNvmeSsdBlockConfig); - } - if (other.ephemeralStorageLocalSsdConfig_ != null) { - if (ephemeralStorageLocalSsdConfig_ == null) { - EphemeralStorageLocalSsdConfig = new global::Google.Cloud.Container.V1.EphemeralStorageLocalSsdConfig(); - } - EphemeralStorageLocalSsdConfig.MergeFrom(other.EphemeralStorageLocalSsdConfig); - } - if (other.soleTenantConfig_ != null) { - if (soleTenantConfig_ == null) { - SoleTenantConfig = new global::Google.Cloud.Container.V1.SoleTenantConfig(); - } - SoleTenantConfig.MergeFrom(other.SoleTenantConfig); + if (other.CreatePodRange != false) { + CreatePodRange = other.CreatePodRange; } - if (other.containerdConfig_ != null) { - if (containerdConfig_ == null) { - ContainerdConfig = new global::Google.Cloud.Container.V1.ContainerdConfig(); - } - ContainerdConfig.MergeFrom(other.ContainerdConfig); + if (other.PodRange.Length != 0) { + PodRange = other.PodRange; } - if (other.resourceManagerTags_ != null) { - if (resourceManagerTags_ == null) { - ResourceManagerTags = new global::Google.Cloud.Container.V1.ResourceManagerTags(); - } - ResourceManagerTags.MergeFrom(other.ResourceManagerTags); + if (other.PodIpv4CidrBlock.Length != 0) { + PodIpv4CidrBlock = other.PodIpv4CidrBlock; } - if (other.EnableConfidentialStorage != false) { - EnableConfidentialStorage = other.EnableConfidentialStorage; + if (other.HasEnablePrivateNodes) { + EnablePrivateNodes = other.EnablePrivateNodes; } - secondaryBootDisks_.Add(other.secondaryBootDisks_); - storagePools_.Add(other.storagePools_); - if (other.secondaryBootDiskUpdateStrategy_ != null) { - if (secondaryBootDiskUpdateStrategy_ == null) { - SecondaryBootDiskUpdateStrategy = new global::Google.Cloud.Container.V1.SecondaryBootDiskUpdateStrategy(); + if (other.networkPerformanceConfig_ != null) { + if (networkPerformanceConfig_ == null) { + NetworkPerformanceConfig = new global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig(); } - SecondaryBootDiskUpdateStrategy.MergeFrom(other.SecondaryBootDiskUpdateStrategy); + NetworkPerformanceConfig.MergeFrom(other.NetworkPerformanceConfig); } - if (other.maxRunDuration_ != null) { - if (maxRunDuration_ == null) { - MaxRunDuration = new global::Google.Protobuf.WellKnownTypes.Duration(); + if (other.podCidrOverprovisionConfig_ != null) { + if (podCidrOverprovisionConfig_ == null) { + PodCidrOverprovisionConfig = new global::Google.Cloud.Container.V1.PodCIDROverprovisionConfig(); } - MaxRunDuration.MergeFrom(other.MaxRunDuration); - } - if (other.HasLocalSsdEncryptionMode) { - LocalSsdEncryptionMode = other.LocalSsdEncryptionMode; + PodCidrOverprovisionConfig.MergeFrom(other.PodCidrOverprovisionConfig); } - if (other.EffectiveCgroupMode != global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode.Unspecified) { - EffectiveCgroupMode = other.EffectiveCgroupMode; + additionalNodeNetworkConfigs_.Add(other.additionalNodeNetworkConfigs_); + additionalPodNetworkConfigs_.Add(other.additionalPodNetworkConfigs_); + if (other.PodIpv4RangeUtilization != 0D) { + PodIpv4RangeUtilization = other.PodIpv4RangeUtilization; } - if (other.HasFlexStart) { - FlexStart = other.FlexStart; + if (other.Subnetwork.Length != 0) { + Subnetwork = other.Subnetwork; } - if (other.bootDisk_ != null) { - if (bootDisk_ == null) { - BootDisk = new global::Google.Cloud.Container.V1.BootDisk(); + if (other.networkTierConfig_ != null) { + if (networkTierConfig_ == null) { + NetworkTierConfig = new global::Google.Cloud.Container.V1.NetworkTierConfig(); } - BootDisk.MergeFrom(other.BootDisk); + NetworkTierConfig.MergeFrom(other.NetworkTierConfig); } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -7773,247 +11119,57 @@ public void MergeFrom(pb::CodedInputStream input) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; - case 10: { - MachineType = input.ReadString(); - break; - } - case 16: { - DiskSizeGb = input.ReadInt32(); - break; - } - case 26: { - oauthScopes_.AddEntriesFrom(input, _repeated_oauthScopes_codec); - break; - } - case 34: { - metadata_.AddEntriesFrom(input, _map_metadata_codec); + case 32: { + CreatePodRange = input.ReadBool(); break; } case 42: { - ImageType = input.ReadString(); + PodRange = input.ReadString(); break; } case 50: { - labels_.AddEntriesFrom(input, _map_labels_codec); - break; - } - case 56: { - LocalSsdCount = input.ReadInt32(); - break; - } - case 66: { - tags_.AddEntriesFrom(input, _repeated_tags_codec); - break; - } - case 74: { - ServiceAccount = input.ReadString(); + PodIpv4CidrBlock = input.ReadString(); break; } - case 80: { - Preemptible = input.ReadBool(); + case 72: { + EnablePrivateNodes = input.ReadBool(); break; } case 90: { - accelerators_.AddEntriesFrom(input, _repeated_accelerators_codec); - break; - } - case 98: { - DiskType = input.ReadString(); + if (networkPerformanceConfig_ == null) { + NetworkPerformanceConfig = new global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig(); + } + input.ReadMessage(NetworkPerformanceConfig); break; } case 106: { - MinCpuPlatform = input.ReadString(); + if (podCidrOverprovisionConfig_ == null) { + PodCidrOverprovisionConfig = new global::Google.Cloud.Container.V1.PodCIDROverprovisionConfig(); + } + input.ReadMessage(PodCidrOverprovisionConfig); break; } case 114: { - if (workloadMetadataConfig_ == null) { - WorkloadMetadataConfig = new global::Google.Cloud.Container.V1.WorkloadMetadataConfig(); - } - input.ReadMessage(WorkloadMetadataConfig); + additionalNodeNetworkConfigs_.AddEntriesFrom(input, _repeated_additionalNodeNetworkConfigs_codec); break; } case 122: { - taints_.AddEntriesFrom(input, _repeated_taints_codec); - break; - } - case 138: { - if (sandboxConfig_ == null) { - SandboxConfig = new global::Google.Cloud.Container.V1.SandboxConfig(); - } - input.ReadMessage(SandboxConfig); + additionalPodNetworkConfigs_.AddEntriesFrom(input, _repeated_additionalPodNetworkConfigs_codec); break; } - case 146: { - NodeGroup = input.ReadString(); + case 129: { + PodIpv4RangeUtilization = input.ReadDouble(); break; } case 154: { - if (reservationAffinity_ == null) { - ReservationAffinity = new global::Google.Cloud.Container.V1.ReservationAffinity(); - } - input.ReadMessage(ReservationAffinity); + Subnetwork = input.ReadString(); break; } case 162: { - if (shieldedInstanceConfig_ == null) { - ShieldedInstanceConfig = new global::Google.Cloud.Container.V1.ShieldedInstanceConfig(); - } - input.ReadMessage(ShieldedInstanceConfig); - break; - } - case 170: { - if (linuxNodeConfig_ == null) { - LinuxNodeConfig = new global::Google.Cloud.Container.V1.LinuxNodeConfig(); - } - input.ReadMessage(LinuxNodeConfig); - break; - } - case 178: { - if (kubeletConfig_ == null) { - KubeletConfig = new global::Google.Cloud.Container.V1.NodeKubeletConfig(); - } - input.ReadMessage(KubeletConfig); - break; - } - case 186: { - BootDiskKmsKey = input.ReadString(); - break; - } - case 202: { - if (gcfsConfig_ == null) { - GcfsConfig = new global::Google.Cloud.Container.V1.GcfsConfig(); - } - input.ReadMessage(GcfsConfig); - break; - } - case 210: { - if (advancedMachineFeatures_ == null) { - AdvancedMachineFeatures = new global::Google.Cloud.Container.V1.AdvancedMachineFeatures(); - } - input.ReadMessage(AdvancedMachineFeatures); - break; - } - case 234: { - if (gvnic_ == null) { - Gvnic = new global::Google.Cloud.Container.V1.VirtualNIC(); - } - input.ReadMessage(Gvnic); - break; - } - case 256: { - Spot = input.ReadBool(); - break; - } - case 282: { - if (confidentialNodes_ == null) { - ConfidentialNodes = new global::Google.Cloud.Container.V1.ConfidentialNodes(); - } - input.ReadMessage(ConfidentialNodes); - break; - } - case 290: { - if (fastSocket_ == null) { - FastSocket = new global::Google.Cloud.Container.V1.FastSocket(); - } - input.ReadMessage(FastSocket); - break; - } - case 298: { - resourceLabels_.AddEntriesFrom(input, _map_resourceLabels_codec); - break; - } - case 306: { - if (loggingConfig_ == null) { - LoggingConfig = new global::Google.Cloud.Container.V1.NodePoolLoggingConfig(); - } - input.ReadMessage(LoggingConfig); - break; - } - case 314: { - if (windowsNodeConfig_ == null) { - WindowsNodeConfig = new global::Google.Cloud.Container.V1.WindowsNodeConfig(); - } - input.ReadMessage(WindowsNodeConfig); - break; - } - case 322: { - if (localNvmeSsdBlockConfig_ == null) { - LocalNvmeSsdBlockConfig = new global::Google.Cloud.Container.V1.LocalNvmeSsdBlockConfig(); - } - input.ReadMessage(LocalNvmeSsdBlockConfig); - break; - } - case 330: { - if (ephemeralStorageLocalSsdConfig_ == null) { - EphemeralStorageLocalSsdConfig = new global::Google.Cloud.Container.V1.EphemeralStorageLocalSsdConfig(); - } - input.ReadMessage(EphemeralStorageLocalSsdConfig); - break; - } - case 338: { - if (soleTenantConfig_ == null) { - SoleTenantConfig = new global::Google.Cloud.Container.V1.SoleTenantConfig(); - } - input.ReadMessage(SoleTenantConfig); - break; - } - case 346: { - if (containerdConfig_ == null) { - ContainerdConfig = new global::Google.Cloud.Container.V1.ContainerdConfig(); - } - input.ReadMessage(ContainerdConfig); - break; - } - case 362: { - if (resourceManagerTags_ == null) { - ResourceManagerTags = new global::Google.Cloud.Container.V1.ResourceManagerTags(); - } - input.ReadMessage(ResourceManagerTags); - break; - } - case 368: { - EnableConfidentialStorage = input.ReadBool(); - break; - } - case 386: { - secondaryBootDisks_.AddEntriesFrom(input, _repeated_secondaryBootDisks_codec); - break; - } - case 394: { - storagePools_.AddEntriesFrom(input, _repeated_storagePools_codec); - break; - } - case 402: { - if (secondaryBootDiskUpdateStrategy_ == null) { - SecondaryBootDiskUpdateStrategy = new global::Google.Cloud.Container.V1.SecondaryBootDiskUpdateStrategy(); - } - input.ReadMessage(SecondaryBootDiskUpdateStrategy); - break; - } - case 426: { - if (maxRunDuration_ == null) { - MaxRunDuration = new global::Google.Protobuf.WellKnownTypes.Duration(); - } - input.ReadMessage(MaxRunDuration); - break; - } - case 432: { - LocalSsdEncryptionMode = (global::Google.Cloud.Container.V1.NodeConfig.Types.LocalSsdEncryptionMode) input.ReadEnum(); - break; - } - case 440: { - EffectiveCgroupMode = (global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode) input.ReadEnum(); - break; - } - case 448: { - FlexStart = input.ReadBool(); - break; - } - case 458: { - if (bootDisk_ == null) { - BootDisk = new global::Google.Cloud.Container.V1.BootDisk(); + if (networkTierConfig_ == null) { + NetworkTierConfig = new global::Google.Cloud.Container.V1.NetworkTierConfig(); } - input.ReadMessage(BootDisk); + input.ReadMessage(NetworkTierConfig); break; } } @@ -8031,331 +11187,566 @@ public void MergeFrom(pb::CodedInputStream input) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; - case 10: { - MachineType = input.ReadString(); - break; - } - case 16: { - DiskSizeGb = input.ReadInt32(); - break; - } - case 26: { - oauthScopes_.AddEntriesFrom(ref input, _repeated_oauthScopes_codec); - break; - } - case 34: { - metadata_.AddEntriesFrom(ref input, _map_metadata_codec); + case 32: { + CreatePodRange = input.ReadBool(); break; } case 42: { - ImageType = input.ReadString(); + PodRange = input.ReadString(); break; } case 50: { - labels_.AddEntriesFrom(ref input, _map_labels_codec); - break; - } - case 56: { - LocalSsdCount = input.ReadInt32(); - break; - } - case 66: { - tags_.AddEntriesFrom(ref input, _repeated_tags_codec); - break; - } - case 74: { - ServiceAccount = input.ReadString(); + PodIpv4CidrBlock = input.ReadString(); break; } - case 80: { - Preemptible = input.ReadBool(); + case 72: { + EnablePrivateNodes = input.ReadBool(); break; } case 90: { - accelerators_.AddEntriesFrom(ref input, _repeated_accelerators_codec); - break; - } - case 98: { - DiskType = input.ReadString(); + if (networkPerformanceConfig_ == null) { + NetworkPerformanceConfig = new global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig(); + } + input.ReadMessage(NetworkPerformanceConfig); break; } case 106: { - MinCpuPlatform = input.ReadString(); + if (podCidrOverprovisionConfig_ == null) { + PodCidrOverprovisionConfig = new global::Google.Cloud.Container.V1.PodCIDROverprovisionConfig(); + } + input.ReadMessage(PodCidrOverprovisionConfig); break; } case 114: { - if (workloadMetadataConfig_ == null) { - WorkloadMetadataConfig = new global::Google.Cloud.Container.V1.WorkloadMetadataConfig(); - } - input.ReadMessage(WorkloadMetadataConfig); + additionalNodeNetworkConfigs_.AddEntriesFrom(ref input, _repeated_additionalNodeNetworkConfigs_codec); break; } case 122: { - taints_.AddEntriesFrom(ref input, _repeated_taints_codec); - break; - } - case 138: { - if (sandboxConfig_ == null) { - SandboxConfig = new global::Google.Cloud.Container.V1.SandboxConfig(); - } - input.ReadMessage(SandboxConfig); + additionalPodNetworkConfigs_.AddEntriesFrom(ref input, _repeated_additionalPodNetworkConfigs_codec); break; } - case 146: { - NodeGroup = input.ReadString(); + case 129: { + PodIpv4RangeUtilization = input.ReadDouble(); break; } case 154: { - if (reservationAffinity_ == null) { - ReservationAffinity = new global::Google.Cloud.Container.V1.ReservationAffinity(); - } - input.ReadMessage(ReservationAffinity); + Subnetwork = input.ReadString(); break; } case 162: { - if (shieldedInstanceConfig_ == null) { - ShieldedInstanceConfig = new global::Google.Cloud.Container.V1.ShieldedInstanceConfig(); - } - input.ReadMessage(ShieldedInstanceConfig); - break; - } - case 170: { - if (linuxNodeConfig_ == null) { - LinuxNodeConfig = new global::Google.Cloud.Container.V1.LinuxNodeConfig(); - } - input.ReadMessage(LinuxNodeConfig); - break; - } - case 178: { - if (kubeletConfig_ == null) { - KubeletConfig = new global::Google.Cloud.Container.V1.NodeKubeletConfig(); - } - input.ReadMessage(KubeletConfig); - break; - } - case 186: { - BootDiskKmsKey = input.ReadString(); - break; - } - case 202: { - if (gcfsConfig_ == null) { - GcfsConfig = new global::Google.Cloud.Container.V1.GcfsConfig(); - } - input.ReadMessage(GcfsConfig); - break; - } - case 210: { - if (advancedMachineFeatures_ == null) { - AdvancedMachineFeatures = new global::Google.Cloud.Container.V1.AdvancedMachineFeatures(); - } - input.ReadMessage(AdvancedMachineFeatures); - break; - } - case 234: { - if (gvnic_ == null) { - Gvnic = new global::Google.Cloud.Container.V1.VirtualNIC(); - } - input.ReadMessage(Gvnic); - break; - } - case 256: { - Spot = input.ReadBool(); - break; - } - case 282: { - if (confidentialNodes_ == null) { - ConfidentialNodes = new global::Google.Cloud.Container.V1.ConfidentialNodes(); + if (networkTierConfig_ == null) { + NetworkTierConfig = new global::Google.Cloud.Container.V1.NetworkTierConfig(); } - input.ReadMessage(ConfidentialNodes); + input.ReadMessage(NetworkTierConfig); break; } - case 290: { - if (fastSocket_ == null) { - FastSocket = new global::Google.Cloud.Container.V1.FastSocket(); - } - input.ReadMessage(FastSocket); - break; + } + } + } + #endif + + #region Nested types + /// Container for nested types declared in the NodeNetworkConfig message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// Configuration of all network bandwidth tiers + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class NetworkPerformanceConfig : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new NetworkPerformanceConfig()); + private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.NodeNetworkConfig.Descriptor.NestedTypes[0]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NetworkPerformanceConfig() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NetworkPerformanceConfig(NetworkPerformanceConfig other) : this() { + _hasBits0 = other._hasBits0; + totalEgressBandwidthTier_ = other.totalEgressBandwidthTier_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NetworkPerformanceConfig Clone() { + return new NetworkPerformanceConfig(this); + } + + /// Field number for the "total_egress_bandwidth_tier" field. + public const int TotalEgressBandwidthTierFieldNumber = 1; + private readonly static global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig.Types.Tier TotalEgressBandwidthTierDefaultValue = global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig.Types.Tier.Unspecified; + + private global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig.Types.Tier totalEgressBandwidthTier_; + /// + /// Specifies the total network bandwidth tier for the NodePool. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig.Types.Tier TotalEgressBandwidthTier { + get { if ((_hasBits0 & 1) != 0) { return totalEgressBandwidthTier_; } else { return TotalEgressBandwidthTierDefaultValue; } } + set { + _hasBits0 |= 1; + totalEgressBandwidthTier_ = value; } - case 298: { - resourceLabels_.AddEntriesFrom(ref input, _map_resourceLabels_codec); - break; + } + /// Gets whether the "total_egress_bandwidth_tier" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasTotalEgressBandwidthTier { + get { return (_hasBits0 & 1) != 0; } + } + /// Clears the value of the "total_egress_bandwidth_tier" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearTotalEgressBandwidthTier() { + _hasBits0 &= ~1; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as NetworkPerformanceConfig); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(NetworkPerformanceConfig other) { + if (ReferenceEquals(other, null)) { + return false; } - case 306: { - if (loggingConfig_ == null) { - LoggingConfig = new global::Google.Cloud.Container.V1.NodePoolLoggingConfig(); - } - input.ReadMessage(LoggingConfig); - break; + if (ReferenceEquals(other, this)) { + return true; } - case 314: { - if (windowsNodeConfig_ == null) { - WindowsNodeConfig = new global::Google.Cloud.Container.V1.WindowsNodeConfig(); - } - input.ReadMessage(WindowsNodeConfig); - break; + if (TotalEgressBandwidthTier != other.TotalEgressBandwidthTier) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (HasTotalEgressBandwidthTier) hash ^= TotalEgressBandwidthTier.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); } - case 322: { - if (localNvmeSsdBlockConfig_ == null) { - LocalNvmeSsdBlockConfig = new global::Google.Cloud.Container.V1.LocalNvmeSsdBlockConfig(); - } - input.ReadMessage(LocalNvmeSsdBlockConfig); - break; + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (HasTotalEgressBandwidthTier) { + output.WriteRawTag(8); + output.WriteEnum((int) TotalEgressBandwidthTier); } - case 330: { - if (ephemeralStorageLocalSsdConfig_ == null) { - EphemeralStorageLocalSsdConfig = new global::Google.Cloud.Container.V1.EphemeralStorageLocalSsdConfig(); - } - input.ReadMessage(EphemeralStorageLocalSsdConfig); - break; + if (_unknownFields != null) { + _unknownFields.WriteTo(output); } - case 338: { - if (soleTenantConfig_ == null) { - SoleTenantConfig = new global::Google.Cloud.Container.V1.SoleTenantConfig(); - } - input.ReadMessage(SoleTenantConfig); - break; + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (HasTotalEgressBandwidthTier) { + output.WriteRawTag(8); + output.WriteEnum((int) TotalEgressBandwidthTier); } - case 346: { - if (containerdConfig_ == null) { - ContainerdConfig = new global::Google.Cloud.Container.V1.ContainerdConfig(); - } - input.ReadMessage(ContainerdConfig); - break; + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); } - case 362: { - if (resourceManagerTags_ == null) { - ResourceManagerTags = new global::Google.Cloud.Container.V1.ResourceManagerTags(); - } - input.ReadMessage(ResourceManagerTags); - break; + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (HasTotalEgressBandwidthTier) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) TotalEgressBandwidthTier); } - case 368: { - EnableConfidentialStorage = input.ReadBool(); - break; + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); } - case 386: { - secondaryBootDisks_.AddEntriesFrom(ref input, _repeated_secondaryBootDisks_codec); - break; + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(NetworkPerformanceConfig other) { + if (other == null) { + return; } - case 394: { - storagePools_.AddEntriesFrom(ref input, _repeated_storagePools_codec); - break; + if (other.HasTotalEgressBandwidthTier) { + TotalEgressBandwidthTier = other.TotalEgressBandwidthTier; } - case 402: { - if (secondaryBootDiskUpdateStrategy_ == null) { - SecondaryBootDiskUpdateStrategy = new global::Google.Cloud.Container.V1.SecondaryBootDiskUpdateStrategy(); + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + TotalEgressBandwidthTier = (global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig.Types.Tier) input.ReadEnum(); + break; + } } - input.ReadMessage(SecondaryBootDiskUpdateStrategy); - break; } - case 426: { - if (maxRunDuration_ == null) { - MaxRunDuration = new global::Google.Protobuf.WellKnownTypes.Duration(); + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + TotalEgressBandwidthTier = (global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig.Types.Tier) input.ReadEnum(); + break; + } } - input.ReadMessage(MaxRunDuration); - break; } - case 432: { - LocalSsdEncryptionMode = (global::Google.Cloud.Container.V1.NodeConfig.Types.LocalSsdEncryptionMode) input.ReadEnum(); - break; + } + #endif + + #region Nested types + /// Container for nested types declared in the NetworkPerformanceConfig message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// Node network tier + /// + public enum Tier { + /// + /// Default value + /// + [pbr::OriginalName("TIER_UNSPECIFIED")] Unspecified = 0, + /// + /// Higher bandwidth, actual values based on VM size. + /// + [pbr::OriginalName("TIER_1")] _1 = 1, } - case 440: { - EffectiveCgroupMode = (global::Google.Cloud.Container.V1.NodeConfig.Types.EffectiveCgroupMode) input.ReadEnum(); + + } + #endregion + + } + + } + #endregion + + } + + /// + /// AdditionalNodeNetworkConfig is the configuration for additional node networks + /// within the NodeNetworkConfig message + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class AdditionalNodeNetworkConfig : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new AdditionalNodeNetworkConfig()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[11]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public AdditionalNodeNetworkConfig() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public AdditionalNodeNetworkConfig(AdditionalNodeNetworkConfig other) : this() { + network_ = other.network_; + subnetwork_ = other.subnetwork_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public AdditionalNodeNetworkConfig Clone() { + return new AdditionalNodeNetworkConfig(this); + } + + /// Field number for the "network" field. + public const int NetworkFieldNumber = 1; + private string network_ = ""; + /// + /// Name of the VPC where the additional interface belongs + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string Network { + get { return network_; } + set { + network_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "subnetwork" field. + public const int SubnetworkFieldNumber = 2; + private string subnetwork_ = ""; + /// + /// Name of the subnetwork where the additional interface belongs + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string Subnetwork { + get { return subnetwork_; } + set { + subnetwork_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as AdditionalNodeNetworkConfig); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(AdditionalNodeNetworkConfig other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (Network != other.Network) return false; + if (Subnetwork != other.Subnetwork) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (Network.Length != 0) hash ^= Network.GetHashCode(); + if (Subnetwork.Length != 0) hash ^= Subnetwork.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (Network.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Network); + } + if (Subnetwork.Length != 0) { + output.WriteRawTag(18); + output.WriteString(Subnetwork); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (Network.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Network); + } + if (Subnetwork.Length != 0) { + output.WriteRawTag(18); + output.WriteString(Subnetwork); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (Network.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Network); + } + if (Subnetwork.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Subnetwork); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(AdditionalNodeNetworkConfig other) { + if (other == null) { + return; + } + if (other.Network.Length != 0) { + Network = other.Network; + } + if (other.Subnetwork.Length != 0) { + Subnetwork = other.Subnetwork; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; - } - case 448: { - FlexStart = input.ReadBool(); + case 10: { + Network = input.ReadString(); break; } - case 458: { - if (bootDisk_ == null) { - BootDisk = new global::Google.Cloud.Container.V1.BootDisk(); - } - input.ReadMessage(BootDisk); + case 18: { + Subnetwork = input.ReadString(); break; } } } - } #endif + } - #region Nested types - /// Container for nested types declared in the NodeConfig message type. + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static partial class Types { - /// - /// LocalSsdEncryptionMode specifies the method used for encrypting the Local - /// SSDs attached to the node. - /// - public enum LocalSsdEncryptionMode { - /// - /// The given node will be encrypted using keys managed by Google - /// infrastructure and the keys will be deleted when the node is - /// deleted. - /// - [pbr::OriginalName("LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED")] Unspecified = 0, - /// - /// The given node will be encrypted using keys managed by Google - /// infrastructure and the keys will be deleted when the node is - /// deleted. - /// - [pbr::OriginalName("STANDARD_ENCRYPTION")] StandardEncryption = 1, - /// - /// The given node will opt-in for using ephemeral key for - /// encryption of Local SSDs. - /// The Local SSDs will not be able to recover data in case of node - /// crash. - /// - [pbr::OriginalName("EPHEMERAL_KEY_ENCRYPTION")] EphemeralKeyEncryption = 2, - } - - /// - /// Possible effective cgroup modes for the node. - /// - public enum EffectiveCgroupMode { - /// - /// EFFECTIVE_CGROUP_MODE_UNSPECIFIED means the cgroup configuration for the - /// node pool is unspecified, i.e. the node pool is a Windows node pool. - /// - [pbr::OriginalName("EFFECTIVE_CGROUP_MODE_UNSPECIFIED")] Unspecified = 0, - /// - /// CGROUP_MODE_V1 means the node pool is configured to use cgroupv1 for the - /// cgroup configuration. - /// - [pbr::OriginalName("EFFECTIVE_CGROUP_MODE_V1")] V1 = 1, - /// - /// CGROUP_MODE_V2 means the node pool is configured to use cgroupv2 for the - /// cgroup configuration. - /// - [pbr::OriginalName("EFFECTIVE_CGROUP_MODE_V2")] V2 = 2, + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + Network = input.ReadString(); + break; + } + case 18: { + Subnetwork = input.ReadString(); + break; + } + } } - } - #endregion + #endif } /// - /// Specifies options for controlling advanced machine features. + /// AdditionalPodNetworkConfig is the configuration for additional pod networks + /// within the NodeNetworkConfig message /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class AdvancedMachineFeatures : pb::IMessage + public sealed partial class AdditionalPodNetworkConfig : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new AdvancedMachineFeatures()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new AdditionalPodNetworkConfig()); private pb::UnknownFieldSet _unknownFields; - private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[9]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[12]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -8366,7 +11757,7 @@ public sealed partial class AdvancedMachineFeatures : pb::IMessageField number for the "threads_per_core" field. - public const int ThreadsPerCoreFieldNumber = 1; - private readonly static long ThreadsPerCoreDefaultValue = 0L; - - private long threadsPerCore_; + /// Field number for the "subnetwork" field. + public const int SubnetworkFieldNumber = 1; + private string subnetwork_ = ""; /// - /// The number of threads per physical core. To disable simultaneous - /// multithreading (SMT) set this to 1. If unset, the maximum number of threads - /// supported per core by the underlying processor is assumed. + /// Name of the subnetwork where the additional pod network belongs. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public long ThreadsPerCore { - get { if ((_hasBits0 & 1) != 0) { return threadsPerCore_; } else { return ThreadsPerCoreDefaultValue; } } + public string Subnetwork { + get { return subnetwork_; } set { - _hasBits0 |= 1; - threadsPerCore_ = value; + subnetwork_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Gets whether the "threads_per_core" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasThreadsPerCore { - get { return (_hasBits0 & 1) != 0; } - } - /// Clears the value of the "threads_per_core" field - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearThreadsPerCore() { - _hasBits0 &= ~1; - } - - /// Field number for the "enable_nested_virtualization" field. - public const int EnableNestedVirtualizationFieldNumber = 2; - private readonly static bool EnableNestedVirtualizationDefaultValue = false; - private bool enableNestedVirtualization_; + /// Field number for the "secondary_pod_range" field. + public const int SecondaryPodRangeFieldNumber = 2; + private string secondaryPodRange_ = ""; /// - /// Whether or not to enable nested virtualization (defaults to false). + /// The name of the secondary range on the subnet which provides IP address for + /// this pod range. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool EnableNestedVirtualization { - get { if ((_hasBits0 & 2) != 0) { return enableNestedVirtualization_; } else { return EnableNestedVirtualizationDefaultValue; } } + public string SecondaryPodRange { + get { return secondaryPodRange_; } set { - _hasBits0 |= 2; - enableNestedVirtualization_ = value; + secondaryPodRange_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Gets whether the "enable_nested_virtualization" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasEnableNestedVirtualization { - get { return (_hasBits0 & 2) != 0; } - } - /// Clears the value of the "enable_nested_virtualization" field - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearEnableNestedVirtualization() { - _hasBits0 &= ~2; - } - - /// Field number for the "performance_monitoring_unit" field. - public const int PerformanceMonitoringUnitFieldNumber = 3; - private readonly static global::Google.Cloud.Container.V1.AdvancedMachineFeatures.Types.PerformanceMonitoringUnit PerformanceMonitoringUnitDefaultValue = global::Google.Cloud.Container.V1.AdvancedMachineFeatures.Types.PerformanceMonitoringUnit.Unspecified; - private global::Google.Cloud.Container.V1.AdvancedMachineFeatures.Types.PerformanceMonitoringUnit performanceMonitoringUnit_; + /// Field number for the "max_pods_per_node" field. + public const int MaxPodsPerNodeFieldNumber = 3; + private global::Google.Cloud.Container.V1.MaxPodsConstraint maxPodsPerNode_; /// - /// Type of Performance Monitoring Unit (PMU) requested on node pool instances. - /// If unset, PMU will not be available to the node. + /// The maximum number of pods per node which use this pod network. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.AdvancedMachineFeatures.Types.PerformanceMonitoringUnit PerformanceMonitoringUnit { - get { if ((_hasBits0 & 4) != 0) { return performanceMonitoringUnit_; } else { return PerformanceMonitoringUnitDefaultValue; } } + public global::Google.Cloud.Container.V1.MaxPodsConstraint MaxPodsPerNode { + get { return maxPodsPerNode_; } set { - _hasBits0 |= 4; - performanceMonitoringUnit_ = value; + maxPodsPerNode_ = value; } } - /// Gets whether the "performance_monitoring_unit" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasPerformanceMonitoringUnit { - get { return (_hasBits0 & 4) != 0; } - } - /// Clears the value of the "performance_monitoring_unit" field - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearPerformanceMonitoringUnit() { - _hasBits0 &= ~4; - } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as AdvancedMachineFeatures); + return Equals(other as AdditionalPodNetworkConfig); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(AdvancedMachineFeatures other) { + public bool Equals(AdditionalPodNetworkConfig other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (ThreadsPerCore != other.ThreadsPerCore) return false; - if (EnableNestedVirtualization != other.EnableNestedVirtualization) return false; - if (PerformanceMonitoringUnit != other.PerformanceMonitoringUnit) return false; + if (Subnetwork != other.Subnetwork) return false; + if (SecondaryPodRange != other.SecondaryPodRange) return false; + if (!object.Equals(MaxPodsPerNode, other.MaxPodsPerNode)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -8506,9 +11849,9 @@ public bool Equals(AdvancedMachineFeatures other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (HasThreadsPerCore) hash ^= ThreadsPerCore.GetHashCode(); - if (HasEnableNestedVirtualization) hash ^= EnableNestedVirtualization.GetHashCode(); - if (HasPerformanceMonitoringUnit) hash ^= PerformanceMonitoringUnit.GetHashCode(); + if (Subnetwork.Length != 0) hash ^= Subnetwork.GetHashCode(); + if (SecondaryPodRange.Length != 0) hash ^= SecondaryPodRange.GetHashCode(); + if (maxPodsPerNode_ != null) hash ^= MaxPodsPerNode.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -8527,17 +11870,17 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (HasThreadsPerCore) { - output.WriteRawTag(8); - output.WriteInt64(ThreadsPerCore); + if (Subnetwork.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Subnetwork); } - if (HasEnableNestedVirtualization) { - output.WriteRawTag(16); - output.WriteBool(EnableNestedVirtualization); + if (SecondaryPodRange.Length != 0) { + output.WriteRawTag(18); + output.WriteString(SecondaryPodRange); } - if (HasPerformanceMonitoringUnit) { - output.WriteRawTag(24); - output.WriteEnum((int) PerformanceMonitoringUnit); + if (maxPodsPerNode_ != null) { + output.WriteRawTag(26); + output.WriteMessage(MaxPodsPerNode); } if (_unknownFields != null) { _unknownFields.WriteTo(output); @@ -8549,17 +11892,17 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (HasThreadsPerCore) { - output.WriteRawTag(8); - output.WriteInt64(ThreadsPerCore); + if (Subnetwork.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Subnetwork); } - if (HasEnableNestedVirtualization) { - output.WriteRawTag(16); - output.WriteBool(EnableNestedVirtualization); + if (SecondaryPodRange.Length != 0) { + output.WriteRawTag(18); + output.WriteString(SecondaryPodRange); } - if (HasPerformanceMonitoringUnit) { - output.WriteRawTag(24); - output.WriteEnum((int) PerformanceMonitoringUnit); + if (maxPodsPerNode_ != null) { + output.WriteRawTag(26); + output.WriteMessage(MaxPodsPerNode); } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); @@ -8571,14 +11914,14 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (HasThreadsPerCore) { - size += 1 + pb::CodedOutputStream.ComputeInt64Size(ThreadsPerCore); + if (Subnetwork.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Subnetwork); } - if (HasEnableNestedVirtualization) { - size += 1 + 1; + if (SecondaryPodRange.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(SecondaryPodRange); } - if (HasPerformanceMonitoringUnit) { - size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) PerformanceMonitoringUnit); + if (maxPodsPerNode_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(MaxPodsPerNode); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -8588,18 +11931,21 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(AdvancedMachineFeatures other) { + public void MergeFrom(AdditionalPodNetworkConfig other) { if (other == null) { return; } - if (other.HasThreadsPerCore) { - ThreadsPerCore = other.ThreadsPerCore; + if (other.Subnetwork.Length != 0) { + Subnetwork = other.Subnetwork; } - if (other.HasEnableNestedVirtualization) { - EnableNestedVirtualization = other.EnableNestedVirtualization; + if (other.SecondaryPodRange.Length != 0) { + SecondaryPodRange = other.SecondaryPodRange; } - if (other.HasPerformanceMonitoringUnit) { - PerformanceMonitoringUnit = other.PerformanceMonitoringUnit; + if (other.maxPodsPerNode_ != null) { + if (maxPodsPerNode_ == null) { + MaxPodsPerNode = new global::Google.Cloud.Container.V1.MaxPodsConstraint(); + } + MaxPodsPerNode.MergeFrom(other.MaxPodsPerNode); } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -8616,16 +11962,19 @@ public void MergeFrom(pb::CodedInputStream input) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; - case 8: { - ThreadsPerCore = input.ReadInt64(); + case 10: { + Subnetwork = input.ReadString(); break; } - case 16: { - EnableNestedVirtualization = input.ReadBool(); + case 18: { + SecondaryPodRange = input.ReadString(); break; } - case 24: { - PerformanceMonitoringUnit = (global::Google.Cloud.Container.V1.AdvancedMachineFeatures.Types.PerformanceMonitoringUnit) input.ReadEnum(); + case 26: { + if (maxPodsPerNode_ == null) { + MaxPodsPerNode = new global::Google.Cloud.Container.V1.MaxPodsConstraint(); + } + input.ReadMessage(MaxPodsPerNode); break; } } @@ -8643,16 +11992,19 @@ public void MergeFrom(pb::CodedInputStream input) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; - case 8: { - ThreadsPerCore = input.ReadInt64(); + case 10: { + Subnetwork = input.ReadString(); break; } - case 16: { - EnableNestedVirtualization = input.ReadBool(); + case 18: { + SecondaryPodRange = input.ReadString(); break; } - case 24: { - PerformanceMonitoringUnit = (global::Google.Cloud.Container.V1.AdvancedMachineFeatures.Types.PerformanceMonitoringUnit) input.ReadEnum(); + case 26: { + if (maxPodsPerNode_ == null) { + MaxPodsPerNode = new global::Google.Cloud.Container.V1.MaxPodsConstraint(); + } + input.ReadMessage(MaxPodsPerNode); break; } } @@ -8660,58 +12012,27 @@ public void MergeFrom(pb::CodedInputStream input) { } #endif - #region Nested types - /// Container for nested types declared in the AdvancedMachineFeatures message type. - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static partial class Types { - /// - /// Level of PMU access. - /// - public enum PerformanceMonitoringUnit { - /// - /// PMU not enabled. - /// - [pbr::OriginalName("PERFORMANCE_MONITORING_UNIT_UNSPECIFIED")] Unspecified = 0, - /// - /// Architecturally defined non-LLC events. - /// - [pbr::OriginalName("ARCHITECTURAL")] Architectural = 1, - /// - /// Most documented core/L2 events. - /// - [pbr::OriginalName("STANDARD")] Standard = 2, - /// - /// Most documented core/L2 and LLC events. - /// - [pbr::OriginalName("ENHANCED")] Enhanced = 3, - } - - } - #endregion - } /// - /// Parameters for node pool-level network config. + /// A set of Shielded Instance options. /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class NodeNetworkConfig : pb::IMessage + public sealed partial class ShieldedInstanceConfig : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new NodeNetworkConfig()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ShieldedInstanceConfig()); private pb::UnknownFieldSet _unknownFields; - private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[10]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[13]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -8722,7 +12043,7 @@ public sealed partial class NodeNetworkConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public NodeNetworkConfig() { + public ShieldedInstanceConfig() { OnConstruction(); } @@ -8730,287 +12051,74 @@ public NodeNetworkConfig() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public NodeNetworkConfig(NodeNetworkConfig other) : this() { - _hasBits0 = other._hasBits0; - createPodRange_ = other.createPodRange_; - podRange_ = other.podRange_; - podIpv4CidrBlock_ = other.podIpv4CidrBlock_; - enablePrivateNodes_ = other.enablePrivateNodes_; - networkPerformanceConfig_ = other.networkPerformanceConfig_ != null ? other.networkPerformanceConfig_.Clone() : null; - podCidrOverprovisionConfig_ = other.podCidrOverprovisionConfig_ != null ? other.podCidrOverprovisionConfig_.Clone() : null; - additionalNodeNetworkConfigs_ = other.additionalNodeNetworkConfigs_.Clone(); - additionalPodNetworkConfigs_ = other.additionalPodNetworkConfigs_.Clone(); - podIpv4RangeUtilization_ = other.podIpv4RangeUtilization_; - subnetwork_ = other.subnetwork_; - networkTierConfig_ = other.networkTierConfig_ != null ? other.networkTierConfig_.Clone() : null; + public ShieldedInstanceConfig(ShieldedInstanceConfig other) : this() { + enableSecureBoot_ = other.enableSecureBoot_; + enableIntegrityMonitoring_ = other.enableIntegrityMonitoring_; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public NodeNetworkConfig Clone() { - return new NodeNetworkConfig(this); - } - - /// Field number for the "create_pod_range" field. - public const int CreatePodRangeFieldNumber = 4; - private bool createPodRange_; - /// - /// Input only. Whether to create a new range for pod IPs in this node pool. - /// Defaults are provided for `pod_range` and `pod_ipv4_cidr_block` if they - /// are not specified. - /// - /// If neither `create_pod_range` or `pod_range` are specified, the - /// cluster-level default (`ip_allocation_policy.cluster_ipv4_cidr_block`) is - /// used. - /// - /// Only applicable if `ip_allocation_policy.use_ip_aliases` is true. - /// - /// This field cannot be changed after the node pool has been created. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool CreatePodRange { - get { return createPodRange_; } - set { - createPodRange_ = value; - } - } - - /// Field number for the "pod_range" field. - public const int PodRangeFieldNumber = 5; - private string podRange_ = ""; - /// - /// The ID of the secondary range for pod IPs. - /// If `create_pod_range` is true, this ID is used for the new range. - /// If `create_pod_range` is false, uses an existing secondary range with this - /// ID. - /// - /// Only applicable if `ip_allocation_policy.use_ip_aliases` is true. - /// - /// This field cannot be changed after the node pool has been created. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string PodRange { - get { return podRange_; } - set { - podRange_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } + public ShieldedInstanceConfig Clone() { + return new ShieldedInstanceConfig(this); } - /// Field number for the "pod_ipv4_cidr_block" field. - public const int PodIpv4CidrBlockFieldNumber = 6; - private string podIpv4CidrBlock_ = ""; + /// Field number for the "enable_secure_boot" field. + public const int EnableSecureBootFieldNumber = 1; + private bool enableSecureBoot_; /// - /// The IP address range for pod IPs in this node pool. - /// - /// Only applicable if `create_pod_range` is true. - /// - /// Set to blank to have a range chosen with the default size. - /// - /// Set to /netmask (e.g. `/14`) to have a range chosen with a specific - /// netmask. - /// - /// Set to a - /// [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) - /// notation (e.g. `10.96.0.0/14`) to pick a specific range to use. - /// - /// Only applicable if `ip_allocation_policy.use_ip_aliases` is true. + /// Defines whether the instance has Secure Boot enabled. /// - /// This field cannot be changed after the node pool has been created. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string PodIpv4CidrBlock { - get { return podIpv4CidrBlock_; } - set { - podIpv4CidrBlock_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - - /// Field number for the "enable_private_nodes" field. - public const int EnablePrivateNodesFieldNumber = 9; - private readonly static bool EnablePrivateNodesDefaultValue = false; - - private bool enablePrivateNodes_; - /// - /// Whether nodes have internal IP addresses only. - /// If enable_private_nodes is not specified, then the value is derived from - /// [Cluster.NetworkConfig.default_enable_private_nodes][] - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool EnablePrivateNodes { - get { if ((_hasBits0 & 1) != 0) { return enablePrivateNodes_; } else { return EnablePrivateNodesDefaultValue; } } - set { - _hasBits0 |= 1; - enablePrivateNodes_ = value; - } - } - /// Gets whether the "enable_private_nodes" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasEnablePrivateNodes { - get { return (_hasBits0 & 1) != 0; } - } - /// Clears the value of the "enable_private_nodes" field - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearEnablePrivateNodes() { - _hasBits0 &= ~1; - } - - /// Field number for the "network_performance_config" field. - public const int NetworkPerformanceConfigFieldNumber = 11; - private global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig networkPerformanceConfig_; - /// - /// Network bandwidth tier configuration. + /// Secure Boot helps ensure that the system only runs authentic software by + /// verifying the digital signature of all boot components, and halting the + /// boot process if signature verification fails. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig NetworkPerformanceConfig { - get { return networkPerformanceConfig_; } + public bool EnableSecureBoot { + get { return enableSecureBoot_; } set { - networkPerformanceConfig_ = value; + enableSecureBoot_ = value; } } - /// Field number for the "pod_cidr_overprovision_config" field. - public const int PodCidrOverprovisionConfigFieldNumber = 13; - private global::Google.Cloud.Container.V1.PodCIDROverprovisionConfig podCidrOverprovisionConfig_; + /// Field number for the "enable_integrity_monitoring" field. + public const int EnableIntegrityMonitoringFieldNumber = 2; + private bool enableIntegrityMonitoring_; /// - /// [PRIVATE FIELD] - /// Pod CIDR size overprovisioning config for the nodepool. - /// - /// Pod CIDR size per node depends on max_pods_per_node. By default, the value - /// of max_pods_per_node is rounded off to next power of 2 and we then double - /// that to get the size of pod CIDR block per node. - /// Example: max_pods_per_node of 30 would result in 64 IPs (/26). + /// Defines whether the instance has integrity monitoring enabled. /// - /// This config can disable the doubling of IPs (we still round off to next - /// power of 2) - /// Example: max_pods_per_node of 30 will result in 32 IPs (/27) when - /// overprovisioning is disabled. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.PodCIDROverprovisionConfig PodCidrOverprovisionConfig { - get { return podCidrOverprovisionConfig_; } - set { - podCidrOverprovisionConfig_ = value; - } - } - - /// Field number for the "additional_node_network_configs" field. - public const int AdditionalNodeNetworkConfigsFieldNumber = 14; - private static readonly pb::FieldCodec _repeated_additionalNodeNetworkConfigs_codec - = pb::FieldCodec.ForMessage(114, global::Google.Cloud.Container.V1.AdditionalNodeNetworkConfig.Parser); - private readonly pbc::RepeatedField additionalNodeNetworkConfigs_ = new pbc::RepeatedField(); - /// - /// We specify the additional node networks for this node pool using this list. - /// Each node network corresponds to an additional interface - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField AdditionalNodeNetworkConfigs { - get { return additionalNodeNetworkConfigs_; } - } - - /// Field number for the "additional_pod_network_configs" field. - public const int AdditionalPodNetworkConfigsFieldNumber = 15; - private static readonly pb::FieldCodec _repeated_additionalPodNetworkConfigs_codec - = pb::FieldCodec.ForMessage(122, global::Google.Cloud.Container.V1.AdditionalPodNetworkConfig.Parser); - private readonly pbc::RepeatedField additionalPodNetworkConfigs_ = new pbc::RepeatedField(); - /// - /// We specify the additional pod networks for this node pool using this list. - /// Each pod network corresponds to an additional alias IP range for the node - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField AdditionalPodNetworkConfigs { - get { return additionalPodNetworkConfigs_; } - } - - /// Field number for the "pod_ipv4_range_utilization" field. - public const int PodIpv4RangeUtilizationFieldNumber = 16; - private double podIpv4RangeUtilization_; - /// - /// Output only. The utilization of the IPv4 range for the pod. - /// The ratio is Usage/[Total number of IPs in the secondary range], - /// Usage=numNodes*numZones*podIPsPerNode. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public double PodIpv4RangeUtilization { - get { return podIpv4RangeUtilization_; } - set { - podIpv4RangeUtilization_ = value; - } - } - - /// Field number for the "subnetwork" field. - public const int SubnetworkFieldNumber = 19; - private string subnetwork_ = ""; - /// - /// Output only. The subnetwork path for the node pool. - /// Format: projects/{project}/regions/{region}/subnetworks/{subnetwork} - /// If the cluster is associated with multiple subnetworks, the subnetwork for - /// the node pool is picked based on the IP utilization during node pool - /// creation and is immutable. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string Subnetwork { - get { return subnetwork_; } - set { - subnetwork_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - - /// Field number for the "network_tier_config" field. - public const int NetworkTierConfigFieldNumber = 20; - private global::Google.Cloud.Container.V1.NetworkTierConfig networkTierConfig_; - /// - /// Output only. The network tier configuration for the node pool inherits from - /// the cluster-level configuration and remains immutable throughout the node - /// pool's lifecycle, including during upgrades. + /// Enables monitoring and attestation of the boot integrity of the instance. + /// The attestation is performed against the integrity policy baseline. This + /// baseline is initially derived from the implicitly trusted boot image when + /// the instance is created. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.NetworkTierConfig NetworkTierConfig { - get { return networkTierConfig_; } + public bool EnableIntegrityMonitoring { + get { return enableIntegrityMonitoring_; } set { - networkTierConfig_ = value; + enableIntegrityMonitoring_ = value; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as NodeNetworkConfig); + return Equals(other as ShieldedInstanceConfig); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(NodeNetworkConfig other) { + public bool Equals(ShieldedInstanceConfig other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (CreatePodRange != other.CreatePodRange) return false; - if (PodRange != other.PodRange) return false; - if (PodIpv4CidrBlock != other.PodIpv4CidrBlock) return false; - if (EnablePrivateNodes != other.EnablePrivateNodes) return false; - if (!object.Equals(NetworkPerformanceConfig, other.NetworkPerformanceConfig)) return false; - if (!object.Equals(PodCidrOverprovisionConfig, other.PodCidrOverprovisionConfig)) return false; - if(!additionalNodeNetworkConfigs_.Equals(other.additionalNodeNetworkConfigs_)) return false; - if(!additionalPodNetworkConfigs_.Equals(other.additionalPodNetworkConfigs_)) return false; - if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(PodIpv4RangeUtilization, other.PodIpv4RangeUtilization)) return false; - if (Subnetwork != other.Subnetwork) return false; - if (!object.Equals(NetworkTierConfig, other.NetworkTierConfig)) return false; + if (EnableSecureBoot != other.EnableSecureBoot) return false; + if (EnableIntegrityMonitoring != other.EnableIntegrityMonitoring) return false; return Equals(_unknownFields, other._unknownFields); } @@ -9018,17 +12126,8 @@ public bool Equals(NodeNetworkConfig other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (CreatePodRange != false) hash ^= CreatePodRange.GetHashCode(); - if (PodRange.Length != 0) hash ^= PodRange.GetHashCode(); - if (PodIpv4CidrBlock.Length != 0) hash ^= PodIpv4CidrBlock.GetHashCode(); - if (HasEnablePrivateNodes) hash ^= EnablePrivateNodes.GetHashCode(); - if (networkPerformanceConfig_ != null) hash ^= NetworkPerformanceConfig.GetHashCode(); - if (podCidrOverprovisionConfig_ != null) hash ^= PodCidrOverprovisionConfig.GetHashCode(); - hash ^= additionalNodeNetworkConfigs_.GetHashCode(); - hash ^= additionalPodNetworkConfigs_.GetHashCode(); - if (PodIpv4RangeUtilization != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(PodIpv4RangeUtilization); - if (Subnetwork.Length != 0) hash ^= Subnetwork.GetHashCode(); - if (networkTierConfig_ != null) hash ^= NetworkTierConfig.GetHashCode(); + if (EnableSecureBoot != false) hash ^= EnableSecureBoot.GetHashCode(); + if (EnableIntegrityMonitoring != false) hash ^= EnableIntegrityMonitoring.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -9047,43 +12146,13 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (CreatePodRange != false) { - output.WriteRawTag(32); - output.WriteBool(CreatePodRange); - } - if (PodRange.Length != 0) { - output.WriteRawTag(42); - output.WriteString(PodRange); - } - if (PodIpv4CidrBlock.Length != 0) { - output.WriteRawTag(50); - output.WriteString(PodIpv4CidrBlock); - } - if (HasEnablePrivateNodes) { - output.WriteRawTag(72); - output.WriteBool(EnablePrivateNodes); - } - if (networkPerformanceConfig_ != null) { - output.WriteRawTag(90); - output.WriteMessage(NetworkPerformanceConfig); - } - if (podCidrOverprovisionConfig_ != null) { - output.WriteRawTag(106); - output.WriteMessage(PodCidrOverprovisionConfig); - } - additionalNodeNetworkConfigs_.WriteTo(output, _repeated_additionalNodeNetworkConfigs_codec); - additionalPodNetworkConfigs_.WriteTo(output, _repeated_additionalPodNetworkConfigs_codec); - if (PodIpv4RangeUtilization != 0D) { - output.WriteRawTag(129, 1); - output.WriteDouble(PodIpv4RangeUtilization); - } - if (Subnetwork.Length != 0) { - output.WriteRawTag(154, 1); - output.WriteString(Subnetwork); + if (EnableSecureBoot != false) { + output.WriteRawTag(8); + output.WriteBool(EnableSecureBoot); } - if (networkTierConfig_ != null) { - output.WriteRawTag(162, 1); - output.WriteMessage(NetworkTierConfig); + if (EnableIntegrityMonitoring != false) { + output.WriteRawTag(16); + output.WriteBool(EnableIntegrityMonitoring); } if (_unknownFields != null) { _unknownFields.WriteTo(output); @@ -9095,43 +12164,13 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (CreatePodRange != false) { - output.WriteRawTag(32); - output.WriteBool(CreatePodRange); - } - if (PodRange.Length != 0) { - output.WriteRawTag(42); - output.WriteString(PodRange); - } - if (PodIpv4CidrBlock.Length != 0) { - output.WriteRawTag(50); - output.WriteString(PodIpv4CidrBlock); - } - if (HasEnablePrivateNodes) { - output.WriteRawTag(72); - output.WriteBool(EnablePrivateNodes); - } - if (networkPerformanceConfig_ != null) { - output.WriteRawTag(90); - output.WriteMessage(NetworkPerformanceConfig); - } - if (podCidrOverprovisionConfig_ != null) { - output.WriteRawTag(106); - output.WriteMessage(PodCidrOverprovisionConfig); - } - additionalNodeNetworkConfigs_.WriteTo(ref output, _repeated_additionalNodeNetworkConfigs_codec); - additionalPodNetworkConfigs_.WriteTo(ref output, _repeated_additionalPodNetworkConfigs_codec); - if (PodIpv4RangeUtilization != 0D) { - output.WriteRawTag(129, 1); - output.WriteDouble(PodIpv4RangeUtilization); - } - if (Subnetwork.Length != 0) { - output.WriteRawTag(154, 1); - output.WriteString(Subnetwork); + if (EnableSecureBoot != false) { + output.WriteRawTag(8); + output.WriteBool(EnableSecureBoot); } - if (networkTierConfig_ != null) { - output.WriteRawTag(162, 1); - output.WriteMessage(NetworkTierConfig); + if (EnableIntegrityMonitoring != false) { + output.WriteRawTag(16); + output.WriteBool(EnableIntegrityMonitoring); } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); @@ -9143,35 +12182,12 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (CreatePodRange != false) { + if (EnableSecureBoot != false) { size += 1 + 1; } - if (PodRange.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(PodRange); - } - if (PodIpv4CidrBlock.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(PodIpv4CidrBlock); - } - if (HasEnablePrivateNodes) { + if (EnableIntegrityMonitoring != false) { size += 1 + 1; } - if (networkPerformanceConfig_ != null) { - size += 1 + pb::CodedOutputStream.ComputeMessageSize(NetworkPerformanceConfig); - } - if (podCidrOverprovisionConfig_ != null) { - size += 1 + pb::CodedOutputStream.ComputeMessageSize(PodCidrOverprovisionConfig); - } - size += additionalNodeNetworkConfigs_.CalculateSize(_repeated_additionalNodeNetworkConfigs_codec); - size += additionalPodNetworkConfigs_.CalculateSize(_repeated_additionalPodNetworkConfigs_codec); - if (PodIpv4RangeUtilization != 0D) { - size += 2 + 8; - } - if (Subnetwork.Length != 0) { - size += 2 + pb::CodedOutputStream.ComputeStringSize(Subnetwork); - } - if (networkTierConfig_ != null) { - size += 2 + pb::CodedOutputStream.ComputeMessageSize(NetworkTierConfig); - } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -9180,47 +12196,15 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(NodeNetworkConfig other) { + public void MergeFrom(ShieldedInstanceConfig other) { if (other == null) { return; } - if (other.CreatePodRange != false) { - CreatePodRange = other.CreatePodRange; - } - if (other.PodRange.Length != 0) { - PodRange = other.PodRange; - } - if (other.PodIpv4CidrBlock.Length != 0) { - PodIpv4CidrBlock = other.PodIpv4CidrBlock; - } - if (other.HasEnablePrivateNodes) { - EnablePrivateNodes = other.EnablePrivateNodes; - } - if (other.networkPerformanceConfig_ != null) { - if (networkPerformanceConfig_ == null) { - NetworkPerformanceConfig = new global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig(); - } - NetworkPerformanceConfig.MergeFrom(other.NetworkPerformanceConfig); - } - if (other.podCidrOverprovisionConfig_ != null) { - if (podCidrOverprovisionConfig_ == null) { - PodCidrOverprovisionConfig = new global::Google.Cloud.Container.V1.PodCIDROverprovisionConfig(); - } - PodCidrOverprovisionConfig.MergeFrom(other.PodCidrOverprovisionConfig); - } - additionalNodeNetworkConfigs_.Add(other.additionalNodeNetworkConfigs_); - additionalPodNetworkConfigs_.Add(other.additionalPodNetworkConfigs_); - if (other.PodIpv4RangeUtilization != 0D) { - PodIpv4RangeUtilization = other.PodIpv4RangeUtilization; - } - if (other.Subnetwork.Length != 0) { - Subnetwork = other.Subnetwork; + if (other.EnableSecureBoot != false) { + EnableSecureBoot = other.EnableSecureBoot; } - if (other.networkTierConfig_ != null) { - if (networkTierConfig_ == null) { - NetworkTierConfig = new global::Google.Cloud.Container.V1.NetworkTierConfig(); - } - NetworkTierConfig.MergeFrom(other.NetworkTierConfig); + if (other.EnableIntegrityMonitoring != false) { + EnableIntegrityMonitoring = other.EnableIntegrityMonitoring; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -9230,404 +12214,70 @@ public void MergeFrom(NodeNetworkConfig other) { public void MergeFrom(pb::CodedInputStream input) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE input.ReadRawMessage(this); - #else - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); - break; - case 32: { - CreatePodRange = input.ReadBool(); - break; - } - case 42: { - PodRange = input.ReadString(); - break; - } - case 50: { - PodIpv4CidrBlock = input.ReadString(); - break; - } - case 72: { - EnablePrivateNodes = input.ReadBool(); - break; - } - case 90: { - if (networkPerformanceConfig_ == null) { - NetworkPerformanceConfig = new global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig(); - } - input.ReadMessage(NetworkPerformanceConfig); - break; - } - case 106: { - if (podCidrOverprovisionConfig_ == null) { - PodCidrOverprovisionConfig = new global::Google.Cloud.Container.V1.PodCIDROverprovisionConfig(); - } - input.ReadMessage(PodCidrOverprovisionConfig); - break; - } - case 114: { - additionalNodeNetworkConfigs_.AddEntriesFrom(input, _repeated_additionalNodeNetworkConfigs_codec); - break; - } - case 122: { - additionalPodNetworkConfigs_.AddEntriesFrom(input, _repeated_additionalPodNetworkConfigs_codec); - break; - } - case 129: { - PodIpv4RangeUtilization = input.ReadDouble(); - break; - } - case 154: { - Subnetwork = input.ReadString(); - break; - } - case 162: { - if (networkTierConfig_ == null) { - NetworkTierConfig = new global::Google.Cloud.Container.V1.NetworkTierConfig(); - } - input.ReadMessage(NetworkTierConfig); - break; - } - } - } - #endif - } - - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); - break; - case 32: { - CreatePodRange = input.ReadBool(); - break; - } - case 42: { - PodRange = input.ReadString(); - break; - } - case 50: { - PodIpv4CidrBlock = input.ReadString(); - break; - } - case 72: { - EnablePrivateNodes = input.ReadBool(); - break; - } - case 90: { - if (networkPerformanceConfig_ == null) { - NetworkPerformanceConfig = new global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig(); - } - input.ReadMessage(NetworkPerformanceConfig); - break; - } - case 106: { - if (podCidrOverprovisionConfig_ == null) { - PodCidrOverprovisionConfig = new global::Google.Cloud.Container.V1.PodCIDROverprovisionConfig(); - } - input.ReadMessage(PodCidrOverprovisionConfig); - break; - } - case 114: { - additionalNodeNetworkConfigs_.AddEntriesFrom(ref input, _repeated_additionalNodeNetworkConfigs_codec); - break; - } - case 122: { - additionalPodNetworkConfigs_.AddEntriesFrom(ref input, _repeated_additionalPodNetworkConfigs_codec); - break; - } - case 129: { - PodIpv4RangeUtilization = input.ReadDouble(); - break; - } - case 154: { - Subnetwork = input.ReadString(); - break; - } - case 162: { - if (networkTierConfig_ == null) { - NetworkTierConfig = new global::Google.Cloud.Container.V1.NetworkTierConfig(); - } - input.ReadMessage(NetworkTierConfig); - break; - } - } - } - } - #endif - - #region Nested types - /// Container for nested types declared in the NodeNetworkConfig message type. - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static partial class Types { - /// - /// Configuration of all network bandwidth tiers - /// - [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class NetworkPerformanceConfig : pb::IMessage - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - , pb::IBufferMessage - #endif - { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new NetworkPerformanceConfig()); - private pb::UnknownFieldSet _unknownFields; - private int _hasBits0; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.NodeNetworkConfig.Descriptor.NestedTypes[0]; } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - pbr::MessageDescriptor pb::IMessage.Descriptor { - get { return Descriptor; } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public NetworkPerformanceConfig() { - OnConstruction(); - } - - partial void OnConstruction(); - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public NetworkPerformanceConfig(NetworkPerformanceConfig other) : this() { - _hasBits0 = other._hasBits0; - totalEgressBandwidthTier_ = other.totalEgressBandwidthTier_; - _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public NetworkPerformanceConfig Clone() { - return new NetworkPerformanceConfig(this); - } - - /// Field number for the "total_egress_bandwidth_tier" field. - public const int TotalEgressBandwidthTierFieldNumber = 1; - private readonly static global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig.Types.Tier TotalEgressBandwidthTierDefaultValue = global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig.Types.Tier.Unspecified; - - private global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig.Types.Tier totalEgressBandwidthTier_; - /// - /// Specifies the total network bandwidth tier for the NodePool. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig.Types.Tier TotalEgressBandwidthTier { - get { if ((_hasBits0 & 1) != 0) { return totalEgressBandwidthTier_; } else { return TotalEgressBandwidthTierDefaultValue; } } - set { - _hasBits0 |= 1; - totalEgressBandwidthTier_ = value; - } - } - /// Gets whether the "total_egress_bandwidth_tier" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasTotalEgressBandwidthTier { - get { return (_hasBits0 & 1) != 0; } - } - /// Clears the value of the "total_egress_bandwidth_tier" field - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearTotalEgressBandwidthTier() { - _hasBits0 &= ~1; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override bool Equals(object other) { - return Equals(other as NetworkPerformanceConfig); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(NetworkPerformanceConfig other) { - if (ReferenceEquals(other, null)) { - return false; - } - if (ReferenceEquals(other, this)) { - return true; - } - if (TotalEgressBandwidthTier != other.TotalEgressBandwidthTier) return false; - return Equals(_unknownFields, other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override int GetHashCode() { - int hash = 1; - if (HasTotalEgressBandwidthTier) hash ^= TotalEgressBandwidthTier.GetHashCode(); - if (_unknownFields != null) { - hash ^= _unknownFields.GetHashCode(); - } - return hash; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override string ToString() { - return pb::JsonFormatter.ToDiagnosticString(this); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void WriteTo(pb::CodedOutputStream output) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - output.WriteRawMessage(this); - #else - if (HasTotalEgressBandwidthTier) { - output.WriteRawTag(8); - output.WriteEnum((int) TotalEgressBandwidthTier); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(output); - } - #endif - } - - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (HasTotalEgressBandwidthTier) { - output.WriteRawTag(8); - output.WriteEnum((int) TotalEgressBandwidthTier); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(ref output); - } - } - #endif - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int CalculateSize() { - int size = 0; - if (HasTotalEgressBandwidthTier) { - size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) TotalEgressBandwidthTier); - } - if (_unknownFields != null) { - size += _unknownFields.CalculateSize(); - } - return size; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(NetworkPerformanceConfig other) { - if (other == null) { - return; - } - if (other.HasTotalEgressBandwidthTier) { - TotalEgressBandwidthTier = other.TotalEgressBandwidthTier; - } - _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(pb::CodedInputStream input) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - input.ReadRawMessage(this); - #else - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); - break; - case 8: { - TotalEgressBandwidthTier = (global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig.Types.Tier) input.ReadEnum(); - break; - } - } + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + EnableSecureBoot = input.ReadBool(); + break; } - #endif - } - - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); - break; - case 8: { - TotalEgressBandwidthTier = (global::Google.Cloud.Container.V1.NodeNetworkConfig.Types.NetworkPerformanceConfig.Types.Tier) input.ReadEnum(); - break; - } - } + case 16: { + EnableIntegrityMonitoring = input.ReadBool(); + break; } } - #endif + } + #endif + } - #region Nested types - /// Container for nested types declared in the NetworkPerformanceConfig message type. - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static partial class Types { - /// - /// Node network tier - /// - public enum Tier { - /// - /// Default value - /// - [pbr::OriginalName("TIER_UNSPECIFIED")] Unspecified = 0, - /// - /// Higher bandwidth, actual values based on VM size. - /// - [pbr::OriginalName("TIER_1")] _1 = 1, + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + EnableSecureBoot = input.ReadBool(); + break; + } + case 16: { + EnableIntegrityMonitoring = input.ReadBool(); + break; } - } - #endregion - } - } - #endregion + #endif } /// - /// AdditionalNodeNetworkConfig is the configuration for additional node networks - /// within the NodeNetworkConfig message + /// SandboxConfig contains configurations of the sandbox to use for the node. /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class AdditionalNodeNetworkConfig : pb::IMessage + public sealed partial class SandboxConfig : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new AdditionalNodeNetworkConfig()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SandboxConfig()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[11]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[14]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -9638,7 +12288,7 @@ public sealed partial class AdditionalNodeNetworkConfig : pb::IMessageField number for the "network" field. - public const int NetworkFieldNumber = 1; - private string network_ = ""; - /// - /// Name of the VPC where the additional interface belongs - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string Network { - get { return network_; } - set { - network_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } + public SandboxConfig Clone() { + return new SandboxConfig(this); } - /// Field number for the "subnetwork" field. - public const int SubnetworkFieldNumber = 2; - private string subnetwork_ = ""; + /// Field number for the "type" field. + public const int TypeFieldNumber = 2; + private global::Google.Cloud.Container.V1.SandboxConfig.Types.Type type_ = global::Google.Cloud.Container.V1.SandboxConfig.Types.Type.Unspecified; /// - /// Name of the subnetwork where the additional interface belongs + /// Type of the sandbox to use for the node. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string Subnetwork { - get { return subnetwork_; } + public global::Google.Cloud.Container.V1.SandboxConfig.Types.Type Type { + get { return type_; } set { - subnetwork_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + type_ = value; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as AdditionalNodeNetworkConfig); + return Equals(other as SandboxConfig); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(AdditionalNodeNetworkConfig other) { + public bool Equals(SandboxConfig other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (Network != other.Network) return false; - if (Subnetwork != other.Subnetwork) return false; + if (Type != other.Type) return false; return Equals(_unknownFields, other._unknownFields); } @@ -9712,8 +12345,7 @@ public bool Equals(AdditionalNodeNetworkConfig other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (Network.Length != 0) hash ^= Network.GetHashCode(); - if (Subnetwork.Length != 0) hash ^= Subnetwork.GetHashCode(); + if (Type != global::Google.Cloud.Container.V1.SandboxConfig.Types.Type.Unspecified) hash ^= Type.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -9732,13 +12364,9 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (Network.Length != 0) { - output.WriteRawTag(10); - output.WriteString(Network); - } - if (Subnetwork.Length != 0) { - output.WriteRawTag(18); - output.WriteString(Subnetwork); + if (Type != global::Google.Cloud.Container.V1.SandboxConfig.Types.Type.Unspecified) { + output.WriteRawTag(16); + output.WriteEnum((int) Type); } if (_unknownFields != null) { _unknownFields.WriteTo(output); @@ -9750,13 +12378,9 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (Network.Length != 0) { - output.WriteRawTag(10); - output.WriteString(Network); - } - if (Subnetwork.Length != 0) { - output.WriteRawTag(18); - output.WriteString(Subnetwork); + if (Type != global::Google.Cloud.Container.V1.SandboxConfig.Types.Type.Unspecified) { + output.WriteRawTag(16); + output.WriteEnum((int) Type); } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); @@ -9768,11 +12392,8 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (Network.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(Network); - } - if (Subnetwork.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(Subnetwork); + if (Type != global::Google.Cloud.Container.V1.SandboxConfig.Types.Type.Unspecified) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Type); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -9782,15 +12403,12 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(AdditionalNodeNetworkConfig other) { + public void MergeFrom(SandboxConfig other) { if (other == null) { return; } - if (other.Network.Length != 0) { - Network = other.Network; - } - if (other.Subnetwork.Length != 0) { - Subnetwork = other.Subnetwork; + if (other.Type != global::Google.Cloud.Container.V1.SandboxConfig.Types.Type.Unspecified) { + Type = other.Type; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -9807,12 +12425,8 @@ public void MergeFrom(pb::CodedInputStream input) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; - case 10: { - Network = input.ReadString(); - break; - } - case 18: { - Subnetwork = input.ReadString(); + case 16: { + Type = (global::Google.Cloud.Container.V1.SandboxConfig.Types.Type) input.ReadEnum(); break; } } @@ -9830,12 +12444,8 @@ public void MergeFrom(pb::CodedInputStream input) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; - case 10: { - Network = input.ReadString(); - break; - } - case 18: { - Subnetwork = input.ReadString(); + case 16: { + Type = (global::Google.Cloud.Container.V1.SandboxConfig.Types.Type) input.ReadEnum(); break; } } @@ -9843,28 +12453,50 @@ public void MergeFrom(pb::CodedInputStream input) { } #endif + #region Nested types + /// Container for nested types declared in the SandboxConfig message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// Possible types of sandboxes. + /// + public enum Type { + /// + /// Default value. This should not be used. + /// + [pbr::OriginalName("UNSPECIFIED")] Unspecified = 0, + /// + /// Run sandbox using gvisor. + /// + [pbr::OriginalName("GVISOR")] Gvisor = 1, + } + + } + #endregion + } /// - /// AdditionalPodNetworkConfig is the configuration for additional pod networks - /// within the NodeNetworkConfig message + /// GcfsConfig contains configurations of Google Container File System + /// (image streaming). /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class AdditionalPodNetworkConfig : pb::IMessage + public sealed partial class GcfsConfig : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new AdditionalPodNetworkConfig()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new GcfsConfig()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[12]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[15]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -9875,7 +12507,7 @@ public sealed partial class AdditionalPodNetworkConfig : pb::IMessageField number for the "subnetwork" field. - public const int SubnetworkFieldNumber = 1; - private string subnetwork_ = ""; - /// - /// Name of the subnetwork where the additional pod network belongs. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string Subnetwork { - get { return subnetwork_; } - set { - subnetwork_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - - /// Field number for the "secondary_pod_range" field. - public const int SecondaryPodRangeFieldNumber = 2; - private string secondaryPodRange_ = ""; - /// - /// The name of the secondary range on the subnet which provides IP address for - /// this pod range. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string SecondaryPodRange { - get { return secondaryPodRange_; } - set { - secondaryPodRange_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } + public GcfsConfig Clone() { + return new GcfsConfig(this); } - /// Field number for the "max_pods_per_node" field. - public const int MaxPodsPerNodeFieldNumber = 3; - private global::Google.Cloud.Container.V1.MaxPodsConstraint maxPodsPerNode_; + /// Field number for the "enabled" field. + public const int EnabledFieldNumber = 1; + private bool enabled_; /// - /// The maximum number of pods per node which use this pod network. + /// Whether to use GCFS. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.MaxPodsConstraint MaxPodsPerNode { - get { return maxPodsPerNode_; } + public bool Enabled { + get { return enabled_; } set { - maxPodsPerNode_ = value; + enabled_ = value; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as AdditionalPodNetworkConfig); + return Equals(other as GcfsConfig); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(AdditionalPodNetworkConfig other) { + public bool Equals(GcfsConfig other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (Subnetwork != other.Subnetwork) return false; - if (SecondaryPodRange != other.SecondaryPodRange) return false; - if (!object.Equals(MaxPodsPerNode, other.MaxPodsPerNode)) return false; + if (Enabled != other.Enabled) return false; return Equals(_unknownFields, other._unknownFields); } @@ -9967,9 +12564,7 @@ public bool Equals(AdditionalPodNetworkConfig other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (Subnetwork.Length != 0) hash ^= Subnetwork.GetHashCode(); - if (SecondaryPodRange.Length != 0) hash ^= SecondaryPodRange.GetHashCode(); - if (maxPodsPerNode_ != null) hash ^= MaxPodsPerNode.GetHashCode(); + if (Enabled != false) hash ^= Enabled.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -9988,17 +12583,9 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (Subnetwork.Length != 0) { - output.WriteRawTag(10); - output.WriteString(Subnetwork); - } - if (SecondaryPodRange.Length != 0) { - output.WriteRawTag(18); - output.WriteString(SecondaryPodRange); - } - if (maxPodsPerNode_ != null) { - output.WriteRawTag(26); - output.WriteMessage(MaxPodsPerNode); + if (Enabled != false) { + output.WriteRawTag(8); + output.WriteBool(Enabled); } if (_unknownFields != null) { _unknownFields.WriteTo(output); @@ -10010,17 +12597,9 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (Subnetwork.Length != 0) { - output.WriteRawTag(10); - output.WriteString(Subnetwork); - } - if (SecondaryPodRange.Length != 0) { - output.WriteRawTag(18); - output.WriteString(SecondaryPodRange); - } - if (maxPodsPerNode_ != null) { - output.WriteRawTag(26); - output.WriteMessage(MaxPodsPerNode); + if (Enabled != false) { + output.WriteRawTag(8); + output.WriteBool(Enabled); } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); @@ -10032,14 +12611,8 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (Subnetwork.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(Subnetwork); - } - if (SecondaryPodRange.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(SecondaryPodRange); - } - if (maxPodsPerNode_ != null) { - size += 1 + pb::CodedOutputStream.ComputeMessageSize(MaxPodsPerNode); + if (Enabled != false) { + size += 1 + 1; } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -10049,21 +12622,12 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(AdditionalPodNetworkConfig other) { + public void MergeFrom(GcfsConfig other) { if (other == null) { return; } - if (other.Subnetwork.Length != 0) { - Subnetwork = other.Subnetwork; - } - if (other.SecondaryPodRange.Length != 0) { - SecondaryPodRange = other.SecondaryPodRange; - } - if (other.maxPodsPerNode_ != null) { - if (maxPodsPerNode_ == null) { - MaxPodsPerNode = new global::Google.Cloud.Container.V1.MaxPodsConstraint(); - } - MaxPodsPerNode.MergeFrom(other.MaxPodsPerNode); + if (other.Enabled != false) { + Enabled = other.Enabled; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -10080,19 +12644,8 @@ public void MergeFrom(pb::CodedInputStream input) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; - case 10: { - Subnetwork = input.ReadString(); - break; - } - case 18: { - SecondaryPodRange = input.ReadString(); - break; - } - case 26: { - if (maxPodsPerNode_ == null) { - MaxPodsPerNode = new global::Google.Cloud.Container.V1.MaxPodsConstraint(); - } - input.ReadMessage(MaxPodsPerNode); + case 8: { + Enabled = input.ReadBool(); break; } } @@ -10110,19 +12663,8 @@ public void MergeFrom(pb::CodedInputStream input) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; - case 10: { - Subnetwork = input.ReadString(); - break; - } - case 18: { - SecondaryPodRange = input.ReadString(); - break; - } - case 26: { - if (maxPodsPerNode_ == null) { - MaxPodsPerNode = new global::Google.Cloud.Container.V1.MaxPodsConstraint(); - } - input.ReadMessage(MaxPodsPerNode); + case 8: { + Enabled = input.ReadBool(); break; } } @@ -10133,24 +12675,26 @@ public void MergeFrom(pb::CodedInputStream input) { } /// - /// A set of Shielded Instance options. + /// [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) + /// is the configuration of desired reservation which instances could take + /// capacity from. /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class ShieldedInstanceConfig : pb::IMessage + public sealed partial class ReservationAffinity : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ShieldedInstanceConfig()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ReservationAffinity()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[13]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[16]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -10161,7 +12705,7 @@ public sealed partial class ShieldedInstanceConfig : pb::IMessageField number for the "enable_secure_boot" field. - public const int EnableSecureBootFieldNumber = 1; - private bool enableSecureBoot_; + /// Field number for the "consume_reservation_type" field. + public const int ConsumeReservationTypeFieldNumber = 1; + private global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type consumeReservationType_ = global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type.Unspecified; /// - /// Defines whether the instance has Secure Boot enabled. - /// - /// Secure Boot helps ensure that the system only runs authentic software by - /// verifying the digital signature of all boot components, and halting the - /// boot process if signature verification fails. + /// Corresponds to the type of reservation consumption. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool EnableSecureBoot { - get { return enableSecureBoot_; } + public global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type ConsumeReservationType { + get { return consumeReservationType_; } set { - enableSecureBoot_ = value; + consumeReservationType_ = value; } } - /// Field number for the "enable_integrity_monitoring" field. - public const int EnableIntegrityMonitoringFieldNumber = 2; - private bool enableIntegrityMonitoring_; + /// Field number for the "key" field. + public const int KeyFieldNumber = 2; + private string key_ = ""; /// - /// Defines whether the instance has integrity monitoring enabled. - /// - /// Enables monitoring and attestation of the boot integrity of the instance. - /// The attestation is performed against the integrity policy baseline. This - /// baseline is initially derived from the implicitly trusted boot image when - /// the instance is created. + /// Corresponds to the label key of a reservation resource. To target a + /// SPECIFIC_RESERVATION by name, specify + /// "compute.googleapis.com/reservation-name" as the key and specify the name + /// of your reservation as its value. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool EnableIntegrityMonitoring { - get { return enableIntegrityMonitoring_; } + public string Key { + get { return key_; } set { - enableIntegrityMonitoring_ = value; + key_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } + /// Field number for the "values" field. + public const int ValuesFieldNumber = 3; + private static readonly pb::FieldCodec _repeated_values_codec + = pb::FieldCodec.ForString(26); + private readonly pbc::RepeatedField values_ = new pbc::RepeatedField(); + /// + /// Corresponds to the label value(s) of reservation resource(s). + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField Values { + get { return values_; } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as ShieldedInstanceConfig); + return Equals(other as ReservationAffinity); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(ShieldedInstanceConfig other) { + public bool Equals(ReservationAffinity other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (EnableSecureBoot != other.EnableSecureBoot) return false; - if (EnableIntegrityMonitoring != other.EnableIntegrityMonitoring) return false; + if (ConsumeReservationType != other.ConsumeReservationType) return false; + if (Key != other.Key) return false; + if(!values_.Equals(other.values_)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -10244,8 +12798,9 @@ public bool Equals(ShieldedInstanceConfig other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (EnableSecureBoot != false) hash ^= EnableSecureBoot.GetHashCode(); - if (EnableIntegrityMonitoring != false) hash ^= EnableIntegrityMonitoring.GetHashCode(); + if (ConsumeReservationType != global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type.Unspecified) hash ^= ConsumeReservationType.GetHashCode(); + if (Key.Length != 0) hash ^= Key.GetHashCode(); + hash ^= values_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -10264,14 +12819,15 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (EnableSecureBoot != false) { + if (ConsumeReservationType != global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type.Unspecified) { output.WriteRawTag(8); - output.WriteBool(EnableSecureBoot); + output.WriteEnum((int) ConsumeReservationType); } - if (EnableIntegrityMonitoring != false) { - output.WriteRawTag(16); - output.WriteBool(EnableIntegrityMonitoring); + if (Key.Length != 0) { + output.WriteRawTag(18); + output.WriteString(Key); } + values_.WriteTo(output, _repeated_values_codec); if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -10282,14 +12838,15 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (EnableSecureBoot != false) { + if (ConsumeReservationType != global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type.Unspecified) { output.WriteRawTag(8); - output.WriteBool(EnableSecureBoot); + output.WriteEnum((int) ConsumeReservationType); } - if (EnableIntegrityMonitoring != false) { - output.WriteRawTag(16); - output.WriteBool(EnableIntegrityMonitoring); + if (Key.Length != 0) { + output.WriteRawTag(18); + output.WriteString(Key); } + values_.WriteTo(ref output, _repeated_values_codec); if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -10300,12 +12857,13 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (EnableSecureBoot != false) { - size += 1 + 1; + if (ConsumeReservationType != global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type.Unspecified) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) ConsumeReservationType); } - if (EnableIntegrityMonitoring != false) { - size += 1 + 1; + if (Key.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Key); } + size += values_.CalculateSize(_repeated_values_codec); if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -10314,16 +12872,17 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(ShieldedInstanceConfig other) { + public void MergeFrom(ReservationAffinity other) { if (other == null) { return; } - if (other.EnableSecureBoot != false) { - EnableSecureBoot = other.EnableSecureBoot; + if (other.ConsumeReservationType != global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type.Unspecified) { + ConsumeReservationType = other.ConsumeReservationType; } - if (other.EnableIntegrityMonitoring != false) { - EnableIntegrityMonitoring = other.EnableIntegrityMonitoring; + if (other.Key.Length != 0) { + Key = other.Key; } + values_.Add(other.values_); _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -10339,12 +12898,16 @@ public void MergeFrom(pb::CodedInputStream input) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; - case 8: { - EnableSecureBoot = input.ReadBool(); + case 8: { + ConsumeReservationType = (global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type) input.ReadEnum(); + break; + } + case 18: { + Key = input.ReadString(); break; } - case 16: { - EnableIntegrityMonitoring = input.ReadBool(); + case 26: { + values_.AddEntriesFrom(input, _repeated_values_codec); break; } } @@ -10363,11 +12926,15 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; case 8: { - EnableSecureBoot = input.ReadBool(); + ConsumeReservationType = (global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type) input.ReadEnum(); break; } - case 16: { - EnableIntegrityMonitoring = input.ReadBool(); + case 18: { + Key = input.ReadString(); + break; + } + case 26: { + values_.AddEntriesFrom(ref input, _repeated_values_codec); break; } } @@ -10375,27 +12942,60 @@ public void MergeFrom(pb::CodedInputStream input) { } #endif + #region Nested types + /// Container for nested types declared in the ReservationAffinity message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// Indicates whether to consume capacity from a reservation or not. + /// + public enum Type { + /// + /// Default value. This should not be used. + /// + [pbr::OriginalName("UNSPECIFIED")] Unspecified = 0, + /// + /// Do not consume from any reserved capacity. + /// + [pbr::OriginalName("NO_RESERVATION")] NoReservation = 1, + /// + /// Consume any reservation available. + /// + [pbr::OriginalName("ANY_RESERVATION")] AnyReservation = 2, + /// + /// Must consume from a specific reservation. Must specify key value fields + /// for specifying the reservations. + /// + [pbr::OriginalName("SPECIFIC_RESERVATION")] SpecificReservation = 3, + } + + } + #endregion + } /// - /// SandboxConfig contains configurations of the sandbox to use for the node. + /// SoleTenantConfig contains the NodeAffinities to specify what shared sole + /// tenant node groups should back the node pool. /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class SandboxConfig : pb::IMessage + public sealed partial class SoleTenantConfig : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SandboxConfig()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SoleTenantConfig()); private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[14]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[17]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -10406,7 +13006,7 @@ public sealed partial class SandboxConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public SandboxConfig() { + public SoleTenantConfig() { OnConstruction(); } @@ -10414,48 +13014,82 @@ public SandboxConfig() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public SandboxConfig(SandboxConfig other) : this() { - type_ = other.type_; + public SoleTenantConfig(SoleTenantConfig other) : this() { + _hasBits0 = other._hasBits0; + nodeAffinities_ = other.nodeAffinities_.Clone(); + minNodeCpus_ = other.minNodeCpus_; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public SandboxConfig Clone() { - return new SandboxConfig(this); + public SoleTenantConfig Clone() { + return new SoleTenantConfig(this); } - /// Field number for the "type" field. - public const int TypeFieldNumber = 2; - private global::Google.Cloud.Container.V1.SandboxConfig.Types.Type type_ = global::Google.Cloud.Container.V1.SandboxConfig.Types.Type.Unspecified; + /// Field number for the "node_affinities" field. + public const int NodeAffinitiesFieldNumber = 1; + private static readonly pb::FieldCodec _repeated_nodeAffinities_codec + = pb::FieldCodec.ForMessage(10, global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Parser); + private readonly pbc::RepeatedField nodeAffinities_ = new pbc::RepeatedField(); /// - /// Type of the sandbox to use for the node. + /// NodeAffinities used to match to a shared sole tenant node group. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.SandboxConfig.Types.Type Type { - get { return type_; } + public pbc::RepeatedField NodeAffinities { + get { return nodeAffinities_; } + } + + /// Field number for the "min_node_cpus" field. + public const int MinNodeCpusFieldNumber = 2; + private readonly static int MinNodeCpusDefaultValue = 0; + + private int minNodeCpus_; + /// + /// Optional. The minimum number of virtual CPUs this instance will consume + /// when running on a sole-tenant node. This field can only be set if the node + /// pool is created in a shared sole-tenant node group. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int MinNodeCpus { + get { if ((_hasBits0 & 1) != 0) { return minNodeCpus_; } else { return MinNodeCpusDefaultValue; } } set { - type_ = value; + _hasBits0 |= 1; + minNodeCpus_ = value; } } + /// Gets whether the "min_node_cpus" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasMinNodeCpus { + get { return (_hasBits0 & 1) != 0; } + } + /// Clears the value of the "min_node_cpus" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearMinNodeCpus() { + _hasBits0 &= ~1; + } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as SandboxConfig); + return Equals(other as SoleTenantConfig); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(SandboxConfig other) { + public bool Equals(SoleTenantConfig other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (Type != other.Type) return false; + if(!nodeAffinities_.Equals(other.nodeAffinities_)) return false; + if (MinNodeCpus != other.MinNodeCpus) return false; return Equals(_unknownFields, other._unknownFields); } @@ -10463,7 +13097,8 @@ public bool Equals(SandboxConfig other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (Type != global::Google.Cloud.Container.V1.SandboxConfig.Types.Type.Unspecified) hash ^= Type.GetHashCode(); + hash ^= nodeAffinities_.GetHashCode(); + if (HasMinNodeCpus) hash ^= MinNodeCpus.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -10482,9 +13117,10 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (Type != global::Google.Cloud.Container.V1.SandboxConfig.Types.Type.Unspecified) { + nodeAffinities_.WriteTo(output, _repeated_nodeAffinities_codec); + if (HasMinNodeCpus) { output.WriteRawTag(16); - output.WriteEnum((int) Type); + output.WriteInt32(MinNodeCpus); } if (_unknownFields != null) { _unknownFields.WriteTo(output); @@ -10496,9 +13132,10 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (Type != global::Google.Cloud.Container.V1.SandboxConfig.Types.Type.Unspecified) { + nodeAffinities_.WriteTo(ref output, _repeated_nodeAffinities_codec); + if (HasMinNodeCpus) { output.WriteRawTag(16); - output.WriteEnum((int) Type); + output.WriteInt32(MinNodeCpus); } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); @@ -10510,8 +13147,9 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (Type != global::Google.Cloud.Container.V1.SandboxConfig.Types.Type.Unspecified) { - size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Type); + size += nodeAffinities_.CalculateSize(_repeated_nodeAffinities_codec); + if (HasMinNodeCpus) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(MinNodeCpus); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -10521,12 +13159,13 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(SandboxConfig other) { + public void MergeFrom(SoleTenantConfig other) { if (other == null) { return; } - if (other.Type != global::Google.Cloud.Container.V1.SandboxConfig.Types.Type.Unspecified) { - Type = other.Type; + nodeAffinities_.Add(other.nodeAffinities_); + if (other.HasMinNodeCpus) { + MinNodeCpus = other.MinNodeCpus; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -10543,8 +13182,12 @@ public void MergeFrom(pb::CodedInputStream input) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; + case 10: { + nodeAffinities_.AddEntriesFrom(input, _repeated_nodeAffinities_codec); + break; + } case 16: { - Type = (global::Google.Cloud.Container.V1.SandboxConfig.Types.Type) input.ReadEnum(); + MinNodeCpus = input.ReadInt32(); break; } } @@ -10562,8 +13205,12 @@ public void MergeFrom(pb::CodedInputStream input) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; + case 10: { + nodeAffinities_.AddEntriesFrom(ref input, _repeated_nodeAffinities_codec); + break; + } case 16: { - Type = (global::Google.Cloud.Container.V1.SandboxConfig.Types.Type) input.ReadEnum(); + MinNodeCpus = input.ReadInt32(); break; } } @@ -10572,22 +13219,302 @@ public void MergeFrom(pb::CodedInputStream input) { #endif #region Nested types - /// Container for nested types declared in the SandboxConfig message type. + /// Container for nested types declared in the SoleTenantConfig message type. [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static partial class Types { /// - /// Possible types of sandboxes. + /// Specifies the NodeAffinity key, values, and affinity operator according to + /// [shared sole tenant node group + /// affinities](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity). /// - public enum Type { + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class NodeAffinity : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new NodeAffinity()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.SoleTenantConfig.Descriptor.NestedTypes[0]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NodeAffinity() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NodeAffinity(NodeAffinity other) : this() { + key_ = other.key_; + operator_ = other.operator_; + values_ = other.values_.Clone(); + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NodeAffinity Clone() { + return new NodeAffinity(this); + } + + /// Field number for the "key" field. + public const int KeyFieldNumber = 1; + private string key_ = ""; /// - /// Default value. This should not be used. + /// Key for NodeAffinity. /// - [pbr::OriginalName("UNSPECIFIED")] Unspecified = 0, + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string Key { + get { return key_; } + set { + key_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "operator" field. + public const int OperatorFieldNumber = 2; + private global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator operator_ = global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator.Unspecified; /// - /// Run sandbox using gvisor. + /// Operator for NodeAffinity. /// - [pbr::OriginalName("GVISOR")] Gvisor = 1, + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator Operator { + get { return operator_; } + set { + operator_ = value; + } + } + + /// Field number for the "values" field. + public const int ValuesFieldNumber = 3; + private static readonly pb::FieldCodec _repeated_values_codec + = pb::FieldCodec.ForString(26); + private readonly pbc::RepeatedField values_ = new pbc::RepeatedField(); + /// + /// Values for NodeAffinity. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField Values { + get { return values_; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as NodeAffinity); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(NodeAffinity other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (Key != other.Key) return false; + if (Operator != other.Operator) return false; + if(!values_.Equals(other.values_)) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (Key.Length != 0) hash ^= Key.GetHashCode(); + if (Operator != global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator.Unspecified) hash ^= Operator.GetHashCode(); + hash ^= values_.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (Key.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Key); + } + if (Operator != global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator.Unspecified) { + output.WriteRawTag(16); + output.WriteEnum((int) Operator); + } + values_.WriteTo(output, _repeated_values_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (Key.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Key); + } + if (Operator != global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator.Unspecified) { + output.WriteRawTag(16); + output.WriteEnum((int) Operator); + } + values_.WriteTo(ref output, _repeated_values_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (Key.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Key); + } + if (Operator != global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator.Unspecified) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Operator); + } + size += values_.CalculateSize(_repeated_values_codec); + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(NodeAffinity other) { + if (other == null) { + return; + } + if (other.Key.Length != 0) { + Key = other.Key; + } + if (other.Operator != global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator.Unspecified) { + Operator = other.Operator; + } + values_.Add(other.values_); + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + Key = input.ReadString(); + break; + } + case 16: { + Operator = (global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator) input.ReadEnum(); + break; + } + case 26: { + values_.AddEntriesFrom(input, _repeated_values_codec); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + Key = input.ReadString(); + break; + } + case 16: { + Operator = (global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator) input.ReadEnum(); + break; + } + case 26: { + values_.AddEntriesFrom(ref input, _repeated_values_codec); + break; + } + } + } + } + #endif + + #region Nested types + /// Container for nested types declared in the NodeAffinity message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// Operator allows user to specify affinity or anti-affinity for the + /// given key values. + /// + public enum Operator { + /// + /// Invalid or unspecified affinity operator. + /// + [pbr::OriginalName("OPERATOR_UNSPECIFIED")] Unspecified = 0, + /// + /// Affinity operator. + /// + [pbr::OriginalName("IN")] In = 1, + /// + /// Anti-affinity operator. + /// + [pbr::OriginalName("NOT_IN")] NotIn = 2, + } + + } + #endregion + } } @@ -10596,25 +13523,24 @@ public enum Type { } /// - /// GcfsConfig contains configurations of Google Container File System - /// (image streaming). + /// ContainerdConfig contains configuration to customize containerd. /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class GcfsConfig : pb::IMessage + public sealed partial class ContainerdConfig : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new GcfsConfig()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ContainerdConfig()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[15]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[18]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -10625,7 +13551,7 @@ public sealed partial class GcfsConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public GcfsConfig() { + public ContainerdConfig() { OnConstruction(); } @@ -10633,48 +13559,85 @@ public GcfsConfig() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public GcfsConfig(GcfsConfig other) : this() { - enabled_ = other.enabled_; + public ContainerdConfig(ContainerdConfig other) : this() { + privateRegistryAccessConfig_ = other.privateRegistryAccessConfig_ != null ? other.privateRegistryAccessConfig_.Clone() : null; + writableCgroups_ = other.writableCgroups_ != null ? other.writableCgroups_.Clone() : null; + registryHosts_ = other.registryHosts_.Clone(); _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public GcfsConfig Clone() { - return new GcfsConfig(this); + public ContainerdConfig Clone() { + return new ContainerdConfig(this); } - /// Field number for the "enabled" field. - public const int EnabledFieldNumber = 1; - private bool enabled_; + /// Field number for the "private_registry_access_config" field. + public const int PrivateRegistryAccessConfigFieldNumber = 1; + private global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig privateRegistryAccessConfig_; /// - /// Whether to use GCFS. + /// PrivateRegistryAccessConfig is used to configure access configuration + /// for private container registries. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Enabled { - get { return enabled_; } + public global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig PrivateRegistryAccessConfig { + get { return privateRegistryAccessConfig_; } set { - enabled_ = value; + privateRegistryAccessConfig_ = value; + } + } + + /// Field number for the "writable_cgroups" field. + public const int WritableCgroupsFieldNumber = 2; + private global::Google.Cloud.Container.V1.ContainerdConfig.Types.WritableCgroups writableCgroups_; + /// + /// Optional. WritableCgroups defines writable cgroups configuration for the + /// node pool. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.ContainerdConfig.Types.WritableCgroups WritableCgroups { + get { return writableCgroups_; } + set { + writableCgroups_ = value; } } + /// Field number for the "registry_hosts" field. + public const int RegistryHostsFieldNumber = 3; + private static readonly pb::FieldCodec _repeated_registryHosts_codec + = pb::FieldCodec.ForMessage(26, global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Parser); + private readonly pbc::RepeatedField registryHosts_ = new pbc::RepeatedField(); + /// + /// RegistryHostConfig configures containerd registry host configuration. + /// Each registry_hosts represents a hosts.toml file. + /// At most 25 registry_hosts are allowed. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField RegistryHosts { + get { return registryHosts_; } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as GcfsConfig); + return Equals(other as ContainerdConfig); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(GcfsConfig other) { + public bool Equals(ContainerdConfig other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (Enabled != other.Enabled) return false; + if (!object.Equals(PrivateRegistryAccessConfig, other.PrivateRegistryAccessConfig)) return false; + if (!object.Equals(WritableCgroups, other.WritableCgroups)) return false; + if(!registryHosts_.Equals(other.registryHosts_)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -10682,7 +13645,9 @@ public bool Equals(GcfsConfig other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (Enabled != false) hash ^= Enabled.GetHashCode(); + if (privateRegistryAccessConfig_ != null) hash ^= PrivateRegistryAccessConfig.GetHashCode(); + if (writableCgroups_ != null) hash ^= WritableCgroups.GetHashCode(); + hash ^= registryHosts_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -10701,10 +13666,15 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (Enabled != false) { - output.WriteRawTag(8); - output.WriteBool(Enabled); + if (privateRegistryAccessConfig_ != null) { + output.WriteRawTag(10); + output.WriteMessage(PrivateRegistryAccessConfig); + } + if (writableCgroups_ != null) { + output.WriteRawTag(18); + output.WriteMessage(WritableCgroups); } + registryHosts_.WriteTo(output, _repeated_registryHosts_codec); if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -10715,10 +13685,15 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (Enabled != false) { - output.WriteRawTag(8); - output.WriteBool(Enabled); + if (privateRegistryAccessConfig_ != null) { + output.WriteRawTag(10); + output.WriteMessage(PrivateRegistryAccessConfig); + } + if (writableCgroups_ != null) { + output.WriteRawTag(18); + output.WriteMessage(WritableCgroups); } + registryHosts_.WriteTo(ref output, _repeated_registryHosts_codec); if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -10729,9 +13704,13 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (Enabled != false) { - size += 1 + 1; + if (privateRegistryAccessConfig_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(PrivateRegistryAccessConfig); + } + if (writableCgroups_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(WritableCgroups); } + size += registryHosts_.CalculateSize(_repeated_registryHosts_codec); if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -10740,13 +13719,23 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(GcfsConfig other) { + public void MergeFrom(ContainerdConfig other) { if (other == null) { return; } - if (other.Enabled != false) { - Enabled = other.Enabled; + if (other.privateRegistryAccessConfig_ != null) { + if (privateRegistryAccessConfig_ == null) { + PrivateRegistryAccessConfig = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig(); + } + PrivateRegistryAccessConfig.MergeFrom(other.PrivateRegistryAccessConfig); + } + if (other.writableCgroups_ != null) { + if (writableCgroups_ == null) { + WritableCgroups = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.WritableCgroups(); + } + WritableCgroups.MergeFrom(other.WritableCgroups); } + registryHosts_.Add(other.registryHosts_); _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -10762,8 +13751,22 @@ public void MergeFrom(pb::CodedInputStream input) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; - case 8: { - Enabled = input.ReadBool(); + case 10: { + if (privateRegistryAccessConfig_ == null) { + PrivateRegistryAccessConfig = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig(); + } + input.ReadMessage(PrivateRegistryAccessConfig); + break; + } + case 18: { + if (writableCgroups_ == null) { + WritableCgroups = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.WritableCgroups(); + } + input.ReadMessage(WritableCgroups); + break; + } + case 26: { + registryHosts_.AddEntriesFrom(input, _repeated_registryHosts_codec); break; } } @@ -10771,597 +13774,977 @@ public void MergeFrom(pb::CodedInputStream input) { #endif } - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); - break; - case 8: { - Enabled = input.ReadBool(); - break; - } - } - } - } - #endif + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + if (privateRegistryAccessConfig_ == null) { + PrivateRegistryAccessConfig = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig(); + } + input.ReadMessage(PrivateRegistryAccessConfig); + break; + } + case 18: { + if (writableCgroups_ == null) { + WritableCgroups = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.WritableCgroups(); + } + input.ReadMessage(WritableCgroups); + break; + } + case 26: { + registryHosts_.AddEntriesFrom(ref input, _repeated_registryHosts_codec); + break; + } + } + } + } + #endif + + #region Nested types + /// Container for nested types declared in the ContainerdConfig message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// PrivateRegistryAccessConfig contains access configuration for + /// private container registries. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class PrivateRegistryAccessConfig : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PrivateRegistryAccessConfig()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ContainerdConfig.Descriptor.NestedTypes[0]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public PrivateRegistryAccessConfig() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public PrivateRegistryAccessConfig(PrivateRegistryAccessConfig other) : this() { + enabled_ = other.enabled_; + certificateAuthorityDomainConfig_ = other.certificateAuthorityDomainConfig_.Clone(); + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public PrivateRegistryAccessConfig Clone() { + return new PrivateRegistryAccessConfig(this); + } + + /// Field number for the "enabled" field. + public const int EnabledFieldNumber = 1; + private bool enabled_; + /// + /// Private registry access is enabled. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Enabled { + get { return enabled_; } + set { + enabled_ = value; + } + } + + /// Field number for the "certificate_authority_domain_config" field. + public const int CertificateAuthorityDomainConfigFieldNumber = 2; + private static readonly pb::FieldCodec _repeated_certificateAuthorityDomainConfig_codec + = pb::FieldCodec.ForMessage(18, global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Parser); + private readonly pbc::RepeatedField certificateAuthorityDomainConfig_ = new pbc::RepeatedField(); + /// + /// Private registry access configuration. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField CertificateAuthorityDomainConfig { + get { return certificateAuthorityDomainConfig_; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as PrivateRegistryAccessConfig); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(PrivateRegistryAccessConfig other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (Enabled != other.Enabled) return false; + if(!certificateAuthorityDomainConfig_.Equals(other.certificateAuthorityDomainConfig_)) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (Enabled != false) hash ^= Enabled.GetHashCode(); + hash ^= certificateAuthorityDomainConfig_.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (Enabled != false) { + output.WriteRawTag(8); + output.WriteBool(Enabled); + } + certificateAuthorityDomainConfig_.WriteTo(output, _repeated_certificateAuthorityDomainConfig_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (Enabled != false) { + output.WriteRawTag(8); + output.WriteBool(Enabled); + } + certificateAuthorityDomainConfig_.WriteTo(ref output, _repeated_certificateAuthorityDomainConfig_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (Enabled != false) { + size += 1 + 1; + } + size += certificateAuthorityDomainConfig_.CalculateSize(_repeated_certificateAuthorityDomainConfig_codec); + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(PrivateRegistryAccessConfig other) { + if (other == null) { + return; + } + if (other.Enabled != false) { + Enabled = other.Enabled; + } + certificateAuthorityDomainConfig_.Add(other.certificateAuthorityDomainConfig_); + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + Enabled = input.ReadBool(); + break; + } + case 18: { + certificateAuthorityDomainConfig_.AddEntriesFrom(input, _repeated_certificateAuthorityDomainConfig_codec); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + Enabled = input.ReadBool(); + break; + } + case 18: { + certificateAuthorityDomainConfig_.AddEntriesFrom(ref input, _repeated_certificateAuthorityDomainConfig_codec); + break; + } + } + } + } + #endif + + #region Nested types + /// Container for nested types declared in the PrivateRegistryAccessConfig message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// CertificateAuthorityDomainConfig configures one or more fully qualified + /// domain names (FQDN) to a specific certificate. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class CertificateAuthorityDomainConfig : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new CertificateAuthorityDomainConfig()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Descriptor.NestedTypes[0]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public CertificateAuthorityDomainConfig() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public CertificateAuthorityDomainConfig(CertificateAuthorityDomainConfig other) : this() { + fqdns_ = other.fqdns_.Clone(); + switch (other.CertificateConfigCase) { + case CertificateConfigOneofCase.GcpSecretManagerCertificateConfig: + GcpSecretManagerCertificateConfig = other.GcpSecretManagerCertificateConfig.Clone(); + break; + } + + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public CertificateAuthorityDomainConfig Clone() { + return new CertificateAuthorityDomainConfig(this); + } + + /// Field number for the "fqdns" field. + public const int FqdnsFieldNumber = 1; + private static readonly pb::FieldCodec _repeated_fqdns_codec + = pb::FieldCodec.ForString(10); + private readonly pbc::RepeatedField fqdns_ = new pbc::RepeatedField(); + /// + /// List of fully qualified domain names (FQDN). + /// Specifying port is supported. + /// Wildcards are NOT supported. + /// Examples: + /// - my.customdomain.com + /// - 10.0.1.2:5000 + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField Fqdns { + get { return fqdns_; } + } + + /// Field number for the "gcp_secret_manager_certificate_config" field. + public const int GcpSecretManagerCertificateConfigFieldNumber = 2; + /// + /// Secret Manager certificate configuration. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig GcpSecretManagerCertificateConfig { + get { return certificateConfigCase_ == CertificateConfigOneofCase.GcpSecretManagerCertificateConfig ? (global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig) certificateConfig_ : null; } + set { + certificateConfig_ = value; + certificateConfigCase_ = value == null ? CertificateConfigOneofCase.None : CertificateConfigOneofCase.GcpSecretManagerCertificateConfig; + } + } + + private object certificateConfig_; + /// Enum of possible cases for the "certificate_config" oneof. + public enum CertificateConfigOneofCase { + None = 0, + GcpSecretManagerCertificateConfig = 2, + } + private CertificateConfigOneofCase certificateConfigCase_ = CertificateConfigOneofCase.None; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public CertificateConfigOneofCase CertificateConfigCase { + get { return certificateConfigCase_; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearCertificateConfig() { + certificateConfigCase_ = CertificateConfigOneofCase.None; + certificateConfig_ = null; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as CertificateAuthorityDomainConfig); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(CertificateAuthorityDomainConfig other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if(!fqdns_.Equals(other.fqdns_)) return false; + if (!object.Equals(GcpSecretManagerCertificateConfig, other.GcpSecretManagerCertificateConfig)) return false; + if (CertificateConfigCase != other.CertificateConfigCase) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + hash ^= fqdns_.GetHashCode(); + if (certificateConfigCase_ == CertificateConfigOneofCase.GcpSecretManagerCertificateConfig) hash ^= GcpSecretManagerCertificateConfig.GetHashCode(); + hash ^= (int) certificateConfigCase_; + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + fqdns_.WriteTo(output, _repeated_fqdns_codec); + if (certificateConfigCase_ == CertificateConfigOneofCase.GcpSecretManagerCertificateConfig) { + output.WriteRawTag(18); + output.WriteMessage(GcpSecretManagerCertificateConfig); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + fqdns_.WriteTo(ref output, _repeated_fqdns_codec); + if (certificateConfigCase_ == CertificateConfigOneofCase.GcpSecretManagerCertificateConfig) { + output.WriteRawTag(18); + output.WriteMessage(GcpSecretManagerCertificateConfig); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + size += fqdns_.CalculateSize(_repeated_fqdns_codec); + if (certificateConfigCase_ == CertificateConfigOneofCase.GcpSecretManagerCertificateConfig) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(GcpSecretManagerCertificateConfig); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(CertificateAuthorityDomainConfig other) { + if (other == null) { + return; + } + fqdns_.Add(other.fqdns_); + switch (other.CertificateConfigCase) { + case CertificateConfigOneofCase.GcpSecretManagerCertificateConfig: + if (GcpSecretManagerCertificateConfig == null) { + GcpSecretManagerCertificateConfig = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig(); + } + GcpSecretManagerCertificateConfig.MergeFrom(other.GcpSecretManagerCertificateConfig); + break; + } - /// - /// [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) - /// is the configuration of desired reservation which instances could take - /// capacity from. - /// - [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class ReservationAffinity : pb::IMessage - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - , pb::IBufferMessage - #endif - { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ReservationAffinity()); - private pb::UnknownFieldSet _unknownFields; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[16]; } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + fqdns_.AddEntriesFrom(input, _repeated_fqdns_codec); + break; + } + case 18: { + global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig subBuilder = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig(); + if (certificateConfigCase_ == CertificateConfigOneofCase.GcpSecretManagerCertificateConfig) { + subBuilder.MergeFrom(GcpSecretManagerCertificateConfig); + } + input.ReadMessage(subBuilder); + GcpSecretManagerCertificateConfig = subBuilder; + break; + } + } + } + #endif + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - pbr::MessageDescriptor pb::IMessage.Descriptor { - get { return Descriptor; } - } + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + fqdns_.AddEntriesFrom(ref input, _repeated_fqdns_codec); + break; + } + case 18: { + global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig subBuilder = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig(); + if (certificateConfigCase_ == CertificateConfigOneofCase.GcpSecretManagerCertificateConfig) { + subBuilder.MergeFrom(GcpSecretManagerCertificateConfig); + } + input.ReadMessage(subBuilder); + GcpSecretManagerCertificateConfig = subBuilder; + break; + } + } + } + } + #endif - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public ReservationAffinity() { - OnConstruction(); - } + #region Nested types + /// Container for nested types declared in the CertificateAuthorityDomainConfig message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// GCPSecretManagerCertificateConfig configures a secret from + /// [Secret Manager](https://cloud.google.com/secret-manager). + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class GCPSecretManagerCertificateConfig : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new GCPSecretManagerCertificateConfig()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } - partial void OnConstruction(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Descriptor.NestedTypes[0]; } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public ReservationAffinity(ReservationAffinity other) : this() { - consumeReservationType_ = other.consumeReservationType_; - key_ = other.key_; - values_ = other.values_.Clone(); - _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public ReservationAffinity Clone() { - return new ReservationAffinity(this); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public GCPSecretManagerCertificateConfig() { + OnConstruction(); + } - /// Field number for the "consume_reservation_type" field. - public const int ConsumeReservationTypeFieldNumber = 1; - private global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type consumeReservationType_ = global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type.Unspecified; - /// - /// Corresponds to the type of reservation consumption. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type ConsumeReservationType { - get { return consumeReservationType_; } - set { - consumeReservationType_ = value; - } - } + partial void OnConstruction(); - /// Field number for the "key" field. - public const int KeyFieldNumber = 2; - private string key_ = ""; - /// - /// Corresponds to the label key of a reservation resource. To target a - /// SPECIFIC_RESERVATION by name, specify - /// "compute.googleapis.com/reservation-name" as the key and specify the name - /// of your reservation as its value. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string Key { - get { return key_; } - set { - key_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public GCPSecretManagerCertificateConfig(GCPSecretManagerCertificateConfig other) : this() { + secretUri_ = other.secretUri_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } - /// Field number for the "values" field. - public const int ValuesFieldNumber = 3; - private static readonly pb::FieldCodec _repeated_values_codec - = pb::FieldCodec.ForString(26); - private readonly pbc::RepeatedField values_ = new pbc::RepeatedField(); - /// - /// Corresponds to the label value(s) of reservation resource(s). - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField Values { - get { return values_; } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public GCPSecretManagerCertificateConfig Clone() { + return new GCPSecretManagerCertificateConfig(this); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override bool Equals(object other) { - return Equals(other as ReservationAffinity); - } + /// Field number for the "secret_uri" field. + public const int SecretUriFieldNumber = 1; + private string secretUri_ = ""; + /// + /// Secret URI, in the form + /// "projects/$PROJECT_ID/secrets/$SECRET_NAME/versions/$VERSION". + /// Version can be fixed (e.g. "2") or "latest" + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string SecretUri { + get { return secretUri_; } + set { + secretUri_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(ReservationAffinity other) { - if (ReferenceEquals(other, null)) { - return false; - } - if (ReferenceEquals(other, this)) { - return true; - } - if (ConsumeReservationType != other.ConsumeReservationType) return false; - if (Key != other.Key) return false; - if(!values_.Equals(other.values_)) return false; - return Equals(_unknownFields, other._unknownFields); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as GCPSecretManagerCertificateConfig); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override int GetHashCode() { - int hash = 1; - if (ConsumeReservationType != global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type.Unspecified) hash ^= ConsumeReservationType.GetHashCode(); - if (Key.Length != 0) hash ^= Key.GetHashCode(); - hash ^= values_.GetHashCode(); - if (_unknownFields != null) { - hash ^= _unknownFields.GetHashCode(); - } - return hash; - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(GCPSecretManagerCertificateConfig other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (SecretUri != other.SecretUri) return false; + return Equals(_unknownFields, other._unknownFields); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override string ToString() { - return pb::JsonFormatter.ToDiagnosticString(this); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (SecretUri.Length != 0) hash ^= SecretUri.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void WriteTo(pb::CodedOutputStream output) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - output.WriteRawMessage(this); - #else - if (ConsumeReservationType != global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type.Unspecified) { - output.WriteRawTag(8); - output.WriteEnum((int) ConsumeReservationType); - } - if (Key.Length != 0) { - output.WriteRawTag(18); - output.WriteString(Key); - } - values_.WriteTo(output, _repeated_values_codec); - if (_unknownFields != null) { - _unknownFields.WriteTo(output); - } - #endif - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (ConsumeReservationType != global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type.Unspecified) { - output.WriteRawTag(8); - output.WriteEnum((int) ConsumeReservationType); - } - if (Key.Length != 0) { - output.WriteRawTag(18); - output.WriteString(Key); - } - values_.WriteTo(ref output, _repeated_values_codec); - if (_unknownFields != null) { - _unknownFields.WriteTo(ref output); - } - } - #endif + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (SecretUri.Length != 0) { + output.WriteRawTag(10); + output.WriteString(SecretUri); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int CalculateSize() { - int size = 0; - if (ConsumeReservationType != global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type.Unspecified) { - size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) ConsumeReservationType); - } - if (Key.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(Key); - } - size += values_.CalculateSize(_repeated_values_codec); - if (_unknownFields != null) { - size += _unknownFields.CalculateSize(); - } - return size; - } + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (SecretUri.Length != 0) { + output.WriteRawTag(10); + output.WriteString(SecretUri); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(ReservationAffinity other) { - if (other == null) { - return; - } - if (other.ConsumeReservationType != global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type.Unspecified) { - ConsumeReservationType = other.ConsumeReservationType; - } - if (other.Key.Length != 0) { - Key = other.Key; - } - values_.Add(other.values_); - _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (SecretUri.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(SecretUri); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(pb::CodedInputStream input) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - input.ReadRawMessage(this); - #else - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); - break; - case 8: { - ConsumeReservationType = (global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type) input.ReadEnum(); - break; - } - case 18: { - Key = input.ReadString(); - break; - } - case 26: { - values_.AddEntriesFrom(input, _repeated_values_codec); - break; - } - } - } - #endif - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(GCPSecretManagerCertificateConfig other) { + if (other == null) { + return; + } + if (other.SecretUri.Length != 0) { + SecretUri = other.SecretUri; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); - break; - case 8: { - ConsumeReservationType = (global::Google.Cloud.Container.V1.ReservationAffinity.Types.Type) input.ReadEnum(); - break; - } - case 18: { - Key = input.ReadString(); - break; - } - case 26: { - values_.AddEntriesFrom(ref input, _repeated_values_codec); - break; - } - } - } - } - #endif + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + SecretUri = input.ReadString(); + break; + } + } + } + #endif + } - #region Nested types - /// Container for nested types declared in the ReservationAffinity message type. - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static partial class Types { - /// - /// Indicates whether to consume capacity from a reservation or not. - /// - public enum Type { - /// - /// Default value. This should not be used. - /// - [pbr::OriginalName("UNSPECIFIED")] Unspecified = 0, - /// - /// Do not consume from any reserved capacity. - /// - [pbr::OriginalName("NO_RESERVATION")] NoReservation = 1, - /// - /// Consume any reservation available. - /// - [pbr::OriginalName("ANY_RESERVATION")] AnyReservation = 2, - /// - /// Must consume from a specific reservation. Must specify key value fields - /// for specifying the reservations. - /// - [pbr::OriginalName("SPECIFIC_RESERVATION")] SpecificReservation = 3, - } + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + SecretUri = input.ReadString(); + break; + } + } + } + } + #endif - } - #endregion + } - } + } + #endregion - /// - /// SoleTenantConfig contains the NodeAffinities to specify what shared sole - /// tenant node groups should back the node pool. - /// - [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class SoleTenantConfig : pb::IMessage - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - , pb::IBufferMessage - #endif - { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SoleTenantConfig()); - private pb::UnknownFieldSet _unknownFields; - private int _hasBits0; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[17]; } - } + } + #endregion - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - pbr::MessageDescriptor pb::IMessage.Descriptor { - get { return Descriptor; } - } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public SoleTenantConfig() { - OnConstruction(); - } + /// + /// Defines writable cgroups configuration. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class WritableCgroups : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new WritableCgroups()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } - partial void OnConstruction(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ContainerdConfig.Descriptor.NestedTypes[1]; } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public SoleTenantConfig(SoleTenantConfig other) : this() { - _hasBits0 = other._hasBits0; - nodeAffinities_ = other.nodeAffinities_.Clone(); - minNodeCpus_ = other.minNodeCpus_; - _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public SoleTenantConfig Clone() { - return new SoleTenantConfig(this); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public WritableCgroups() { + OnConstruction(); + } - /// Field number for the "node_affinities" field. - public const int NodeAffinitiesFieldNumber = 1; - private static readonly pb::FieldCodec _repeated_nodeAffinities_codec - = pb::FieldCodec.ForMessage(10, global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Parser); - private readonly pbc::RepeatedField nodeAffinities_ = new pbc::RepeatedField(); - /// - /// NodeAffinities used to match to a shared sole tenant node group. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField NodeAffinities { - get { return nodeAffinities_; } - } + partial void OnConstruction(); - /// Field number for the "min_node_cpus" field. - public const int MinNodeCpusFieldNumber = 2; - private readonly static int MinNodeCpusDefaultValue = 0; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public WritableCgroups(WritableCgroups other) : this() { + enabled_ = other.enabled_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } - private int minNodeCpus_; - /// - /// Optional. The minimum number of virtual CPUs this instance will consume - /// when running on a sole-tenant node. This field can only be set if the node - /// pool is created in a shared sole-tenant node group. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int MinNodeCpus { - get { if ((_hasBits0 & 1) != 0) { return minNodeCpus_; } else { return MinNodeCpusDefaultValue; } } - set { - _hasBits0 |= 1; - minNodeCpus_ = value; - } - } - /// Gets whether the "min_node_cpus" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasMinNodeCpus { - get { return (_hasBits0 & 1) != 0; } - } - /// Clears the value of the "min_node_cpus" field - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearMinNodeCpus() { - _hasBits0 &= ~1; - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public WritableCgroups Clone() { + return new WritableCgroups(this); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override bool Equals(object other) { - return Equals(other as SoleTenantConfig); - } + /// Field number for the "enabled" field. + public const int EnabledFieldNumber = 1; + private bool enabled_; + /// + /// Optional. Whether writable cgroups is enabled. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Enabled { + get { return enabled_; } + set { + enabled_ = value; + } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(SoleTenantConfig other) { - if (ReferenceEquals(other, null)) { - return false; - } - if (ReferenceEquals(other, this)) { - return true; - } - if(!nodeAffinities_.Equals(other.nodeAffinities_)) return false; - if (MinNodeCpus != other.MinNodeCpus) return false; - return Equals(_unknownFields, other._unknownFields); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as WritableCgroups); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override int GetHashCode() { - int hash = 1; - hash ^= nodeAffinities_.GetHashCode(); - if (HasMinNodeCpus) hash ^= MinNodeCpus.GetHashCode(); - if (_unknownFields != null) { - hash ^= _unknownFields.GetHashCode(); - } - return hash; - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(WritableCgroups other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (Enabled != other.Enabled) return false; + return Equals(_unknownFields, other._unknownFields); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override string ToString() { - return pb::JsonFormatter.ToDiagnosticString(this); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (Enabled != false) hash ^= Enabled.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void WriteTo(pb::CodedOutputStream output) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - output.WriteRawMessage(this); - #else - nodeAffinities_.WriteTo(output, _repeated_nodeAffinities_codec); - if (HasMinNodeCpus) { - output.WriteRawTag(16); - output.WriteInt32(MinNodeCpus); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(output); - } - #endif - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - nodeAffinities_.WriteTo(ref output, _repeated_nodeAffinities_codec); - if (HasMinNodeCpus) { - output.WriteRawTag(16); - output.WriteInt32(MinNodeCpus); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(ref output); - } - } - #endif + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (Enabled != false) { + output.WriteRawTag(8); + output.WriteBool(Enabled); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int CalculateSize() { - int size = 0; - size += nodeAffinities_.CalculateSize(_repeated_nodeAffinities_codec); - if (HasMinNodeCpus) { - size += 1 + pb::CodedOutputStream.ComputeInt32Size(MinNodeCpus); - } - if (_unknownFields != null) { - size += _unknownFields.CalculateSize(); - } - return size; - } + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (Enabled != false) { + output.WriteRawTag(8); + output.WriteBool(Enabled); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(SoleTenantConfig other) { - if (other == null) { - return; - } - nodeAffinities_.Add(other.nodeAffinities_); - if (other.HasMinNodeCpus) { - MinNodeCpus = other.MinNodeCpus; - } - _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (Enabled != false) { + size += 1 + 1; + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(pb::CodedInputStream input) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - input.ReadRawMessage(this); - #else - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); - break; - case 10: { - nodeAffinities_.AddEntriesFrom(input, _repeated_nodeAffinities_codec); - break; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(WritableCgroups other) { + if (other == null) { + return; } - case 16: { - MinNodeCpus = input.ReadInt32(); - break; + if (other.Enabled != false) { + Enabled = other.Enabled; } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } - } - #endif - } - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); - break; - case 10: { - nodeAffinities_.AddEntriesFrom(ref input, _repeated_nodeAffinities_codec); - break; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + Enabled = input.ReadBool(); + break; + } + } } - case 16: { - MinNodeCpus = input.ReadInt32(); - break; + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + Enabled = input.ReadBool(); + break; + } + } } } + #endif + } - } - #endif - #region Nested types - /// Container for nested types declared in the SoleTenantConfig message type. - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static partial class Types { /// - /// Specifies the NodeAffinity key, values, and affinity operator according to - /// [shared sole tenant node group - /// affinities](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity). + /// RegistryHostConfig configures the top-level structure for a single + /// containerd registry server's configuration, which represents one hosts.toml + /// file on the node. It will override the same fqdns in + /// PrivateRegistryAccessConfig. /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class NodeAffinity : pb::IMessage + public sealed partial class RegistryHostConfig : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new NodeAffinity()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new RegistryHostConfig()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.SoleTenantConfig.Descriptor.NestedTypes[0]; } + get { return global::Google.Cloud.Container.V1.ContainerdConfig.Descriptor.NestedTypes[2]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -11372,7 +14755,7 @@ public sealed partial class NodeAffinity : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public NodeAffinity() { + public RegistryHostConfig() { OnConstruction(); } @@ -11380,81 +14763,73 @@ public NodeAffinity() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public NodeAffinity(NodeAffinity other) : this() { - key_ = other.key_; - operator_ = other.operator_; - values_ = other.values_.Clone(); + public RegistryHostConfig(RegistryHostConfig other) : this() { + server_ = other.server_; + hosts_ = other.hosts_.Clone(); _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public NodeAffinity Clone() { - return new NodeAffinity(this); - } - - /// Field number for the "key" field. - public const int KeyFieldNumber = 1; - private string key_ = ""; - /// - /// Key for NodeAffinity. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string Key { - get { return key_; } - set { - key_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } + public RegistryHostConfig Clone() { + return new RegistryHostConfig(this); } - /// Field number for the "operator" field. - public const int OperatorFieldNumber = 2; - private global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator operator_ = global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator.Unspecified; + /// Field number for the "server" field. + public const int ServerFieldNumber = 1; + private string server_ = ""; /// - /// Operator for NodeAffinity. + /// Defines the host name of the registry server, which will be used to + /// create configuration file as /etc/containerd/hosts.d/<server>/hosts.toml. + /// It supports fully qualified domain names (FQDN) and IP addresses: + /// Specifying port is supported. + /// Wildcards are NOT supported. + /// Examples: + /// - my.customdomain.com + /// - 10.0.1.2:5000 /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator Operator { - get { return operator_; } + public string Server { + get { return server_; } set { - operator_ = value; + server_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Field number for the "values" field. - public const int ValuesFieldNumber = 3; - private static readonly pb::FieldCodec _repeated_values_codec - = pb::FieldCodec.ForString(26); - private readonly pbc::RepeatedField values_ = new pbc::RepeatedField(); + /// Field number for the "hosts" field. + public const int HostsFieldNumber = 2; + private static readonly pb::FieldCodec _repeated_hosts_codec + = pb::FieldCodec.ForMessage(18, global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.HostConfig.Parser); + private readonly pbc::RepeatedField hosts_ = new pbc::RepeatedField(); /// - /// Values for NodeAffinity. + /// HostConfig configures a list of host-specific configurations for the + /// server. + /// Each server can have at most 10 host configurations. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField Values { - get { return values_; } + public pbc::RepeatedField Hosts { + get { return hosts_; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as NodeAffinity); + return Equals(other as RegistryHostConfig); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(NodeAffinity other) { + public bool Equals(RegistryHostConfig other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; - } - if (Key != other.Key) return false; - if (Operator != other.Operator) return false; - if(!values_.Equals(other.values_)) return false; + } + if (Server != other.Server) return false; + if(!hosts_.Equals(other.hosts_)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -11462,9 +14837,8 @@ public bool Equals(NodeAffinity other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (Key.Length != 0) hash ^= Key.GetHashCode(); - if (Operator != global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator.Unspecified) hash ^= Operator.GetHashCode(); - hash ^= values_.GetHashCode(); + if (Server.Length != 0) hash ^= Server.GetHashCode(); + hash ^= hosts_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -11483,15 +14857,11 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (Key.Length != 0) { + if (Server.Length != 0) { output.WriteRawTag(10); - output.WriteString(Key); - } - if (Operator != global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator.Unspecified) { - output.WriteRawTag(16); - output.WriteEnum((int) Operator); + output.WriteString(Server); } - values_.WriteTo(output, _repeated_values_codec); + hosts_.WriteTo(output, _repeated_hosts_codec); if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -11502,15 +14872,11 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (Key.Length != 0) { + if (Server.Length != 0) { output.WriteRawTag(10); - output.WriteString(Key); - } - if (Operator != global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator.Unspecified) { - output.WriteRawTag(16); - output.WriteEnum((int) Operator); + output.WriteString(Server); } - values_.WriteTo(ref output, _repeated_values_codec); + hosts_.WriteTo(ref output, _repeated_hosts_codec); if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -11521,13 +14887,10 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (Key.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(Key); + if (Server.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Server); } - if (Operator != global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator.Unspecified) { - size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Operator); - } - size += values_.CalculateSize(_repeated_values_codec); + size += hosts_.CalculateSize(_repeated_hosts_codec); if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -11536,17 +14899,14 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(NodeAffinity other) { + public void MergeFrom(RegistryHostConfig other) { if (other == null) { return; } - if (other.Key.Length != 0) { - Key = other.Key; - } - if (other.Operator != global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator.Unspecified) { - Operator = other.Operator; + if (other.Server.Length != 0) { + Server = other.Server; } - values_.Add(other.values_); + hosts_.Add(other.hosts_); _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -11563,15 +14923,11 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { - Key = input.ReadString(); + Server = input.ReadString(); break; } - case 16: { - Operator = (global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator) input.ReadEnum(); - break; - } - case 26: { - values_.AddEntriesFrom(input, _repeated_values_codec); + case 18: { + hosts_.AddEntriesFrom(input, _repeated_hosts_codec); break; } } @@ -11590,15 +14946,11 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; case 10: { - Key = input.ReadString(); + Server = input.ReadString(); break; } - case 16: { - Operator = (global::Google.Cloud.Container.V1.SoleTenantConfig.Types.NodeAffinity.Types.Operator) input.ReadEnum(); - break; - } - case 26: { - values_.AddEntriesFrom(ref input, _repeated_values_codec); + case 18: { + hosts_.AddEntriesFrom(ref input, _repeated_hosts_codec); break; } } @@ -11607,547 +14959,777 @@ public void MergeFrom(pb::CodedInputStream input) { #endif #region Nested types - /// Container for nested types declared in the NodeAffinity message type. + /// Container for nested types declared in the RegistryHostConfig message type. [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static partial class Types { /// - /// Operator allows user to specify affinity or anti-affinity for the - /// given key values. + /// HostCapability configures capabilities for the registry host. /// - public enum Operator { + public enum HostCapability { /// - /// Invalid or unspecified affinity operator. + /// UNKNOWN should never be set. /// - [pbr::OriginalName("OPERATOR_UNSPECIFIED")] Unspecified = 0, + [pbr::OriginalName("HOST_CAPABILITY_UNSPECIFIED")] Unspecified = 0, /// - /// Affinity operator. + /// Pull represents the capability to fetch manifests and blobs by digest. /// - [pbr::OriginalName("IN")] In = 1, + [pbr::OriginalName("HOST_CAPABILITY_PULL")] Pull = 1, /// - /// Anti-affinity operator. + /// Resolve represents the capability to fetch manifests by name. /// - [pbr::OriginalName("NOT_IN")] NotIn = 2, + [pbr::OriginalName("HOST_CAPABILITY_RESOLVE")] Resolve = 2, + /// + /// Push represents the capability to push blobs and manifests. + /// + [pbr::OriginalName("HOST_CAPABILITY_PUSH")] Push = 3, } - } - #endregion + /// + /// CertificateConfig configures certificate for the registry. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class CertificateConfig : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new CertificateConfig()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Descriptor.NestedTypes[0]; } + } - } - #endregion + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public CertificateConfig() { + OnConstruction(); + } - /// - /// ContainerdConfig contains configuration to customize containerd. - /// - [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class ContainerdConfig : pb::IMessage - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - , pb::IBufferMessage - #endif - { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ContainerdConfig()); - private pb::UnknownFieldSet _unknownFields; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + partial void OnConstruction(); - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[18]; } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public CertificateConfig(CertificateConfig other) : this() { + switch (other.CertificateCase) { + case CertificateOneofCase.GcpSecretManagerSecretUri: + GcpSecretManagerSecretUri = other.GcpSecretManagerSecretUri; + break; + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - pbr::MessageDescriptor pb::IMessage.Descriptor { - get { return Descriptor; } - } + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public ContainerdConfig() { - OnConstruction(); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public CertificateConfig Clone() { + return new CertificateConfig(this); + } - partial void OnConstruction(); + /// Field number for the "gcp_secret_manager_secret_uri" field. + public const int GcpSecretManagerSecretUriFieldNumber = 1; + /// + /// The URI configures a secret from + /// [Secret Manager](https://cloud.google.com/secret-manager) + /// in the format + /// "projects/$PROJECT_ID/secrets/$SECRET_NAME/versions/$VERSION" for + /// global secret or + /// "projects/$PROJECT_ID/locations/$REGION/secrets/$SECRET_NAME/versions/$VERSION" + /// for regional secret. Version can be fixed (e.g. "2") or "latest" + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string GcpSecretManagerSecretUri { + get { return HasGcpSecretManagerSecretUri ? (string) certificate_ : ""; } + set { + certificate_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + certificateCase_ = CertificateOneofCase.GcpSecretManagerSecretUri; + } + } + /// Gets whether the "gcp_secret_manager_secret_uri" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasGcpSecretManagerSecretUri { + get { return certificateCase_ == CertificateOneofCase.GcpSecretManagerSecretUri; } + } + /// Clears the value of the oneof if it's currently set to "gcp_secret_manager_secret_uri" + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearGcpSecretManagerSecretUri() { + if (HasGcpSecretManagerSecretUri) { + ClearCertificate(); + } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public ContainerdConfig(ContainerdConfig other) : this() { - privateRegistryAccessConfig_ = other.privateRegistryAccessConfig_ != null ? other.privateRegistryAccessConfig_.Clone() : null; - writableCgroups_ = other.writableCgroups_ != null ? other.writableCgroups_.Clone() : null; - _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); - } + private object certificate_; + /// Enum of possible cases for the "certificate" oneof. + public enum CertificateOneofCase { + None = 0, + GcpSecretManagerSecretUri = 1, + } + private CertificateOneofCase certificateCase_ = CertificateOneofCase.None; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public CertificateOneofCase CertificateCase { + get { return certificateCase_; } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public ContainerdConfig Clone() { - return new ContainerdConfig(this); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearCertificate() { + certificateCase_ = CertificateOneofCase.None; + certificate_ = null; + } - /// Field number for the "private_registry_access_config" field. - public const int PrivateRegistryAccessConfigFieldNumber = 1; - private global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig privateRegistryAccessConfig_; - /// - /// PrivateRegistryAccessConfig is used to configure access configuration - /// for private container registries. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig PrivateRegistryAccessConfig { - get { return privateRegistryAccessConfig_; } - set { - privateRegistryAccessConfig_ = value; - } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as CertificateConfig); + } - /// Field number for the "writable_cgroups" field. - public const int WritableCgroupsFieldNumber = 2; - private global::Google.Cloud.Container.V1.ContainerdConfig.Types.WritableCgroups writableCgroups_; - /// - /// Optional. WritableCgroups defines writable cgroups configuration for the - /// node pool. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.ContainerdConfig.Types.WritableCgroups WritableCgroups { - get { return writableCgroups_; } - set { - writableCgroups_ = value; - } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(CertificateConfig other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (GcpSecretManagerSecretUri != other.GcpSecretManagerSecretUri) return false; + if (CertificateCase != other.CertificateCase) return false; + return Equals(_unknownFields, other._unknownFields); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override bool Equals(object other) { - return Equals(other as ContainerdConfig); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (HasGcpSecretManagerSecretUri) hash ^= GcpSecretManagerSecretUri.GetHashCode(); + hash ^= (int) certificateCase_; + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(ContainerdConfig other) { - if (ReferenceEquals(other, null)) { - return false; - } - if (ReferenceEquals(other, this)) { - return true; - } - if (!object.Equals(PrivateRegistryAccessConfig, other.PrivateRegistryAccessConfig)) return false; - if (!object.Equals(WritableCgroups, other.WritableCgroups)) return false; - return Equals(_unknownFields, other._unknownFields); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override int GetHashCode() { - int hash = 1; - if (privateRegistryAccessConfig_ != null) hash ^= PrivateRegistryAccessConfig.GetHashCode(); - if (writableCgroups_ != null) hash ^= WritableCgroups.GetHashCode(); - if (_unknownFields != null) { - hash ^= _unknownFields.GetHashCode(); - } - return hash; - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (HasGcpSecretManagerSecretUri) { + output.WriteRawTag(10); + output.WriteString(GcpSecretManagerSecretUri); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override string ToString() { - return pb::JsonFormatter.ToDiagnosticString(this); - } + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (HasGcpSecretManagerSecretUri) { + output.WriteRawTag(10); + output.WriteString(GcpSecretManagerSecretUri); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void WriteTo(pb::CodedOutputStream output) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - output.WriteRawMessage(this); - #else - if (privateRegistryAccessConfig_ != null) { - output.WriteRawTag(10); - output.WriteMessage(PrivateRegistryAccessConfig); - } - if (writableCgroups_ != null) { - output.WriteRawTag(18); - output.WriteMessage(WritableCgroups); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(output); - } - #endif - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (HasGcpSecretManagerSecretUri) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(GcpSecretManagerSecretUri); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (privateRegistryAccessConfig_ != null) { - output.WriteRawTag(10); - output.WriteMessage(PrivateRegistryAccessConfig); - } - if (writableCgroups_ != null) { - output.WriteRawTag(18); - output.WriteMessage(WritableCgroups); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(ref output); - } - } - #endif + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(CertificateConfig other) { + if (other == null) { + return; + } + switch (other.CertificateCase) { + case CertificateOneofCase.GcpSecretManagerSecretUri: + GcpSecretManagerSecretUri = other.GcpSecretManagerSecretUri; + break; + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int CalculateSize() { - int size = 0; - if (privateRegistryAccessConfig_ != null) { - size += 1 + pb::CodedOutputStream.ComputeMessageSize(PrivateRegistryAccessConfig); - } - if (writableCgroups_ != null) { - size += 1 + pb::CodedOutputStream.ComputeMessageSize(WritableCgroups); - } - if (_unknownFields != null) { - size += _unknownFields.CalculateSize(); - } - return size; - } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(ContainerdConfig other) { - if (other == null) { - return; - } - if (other.privateRegistryAccessConfig_ != null) { - if (privateRegistryAccessConfig_ == null) { - PrivateRegistryAccessConfig = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig(); - } - PrivateRegistryAccessConfig.MergeFrom(other.PrivateRegistryAccessConfig); - } - if (other.writableCgroups_ != null) { - if (writableCgroups_ == null) { - WritableCgroups = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.WritableCgroups(); - } - WritableCgroups.MergeFrom(other.WritableCgroups); - } - _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + GcpSecretManagerSecretUri = input.ReadString(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + GcpSecretManagerSecretUri = input.ReadString(); + break; + } + } + } + } + #endif + + } + + /// + /// CertificateConfigPair configures pairs of certificates, which is used for + /// client certificate and key pairs under a registry. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class CertificateConfigPair : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new CertificateConfigPair()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Descriptor.NestedTypes[1]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public CertificateConfigPair() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public CertificateConfigPair(CertificateConfigPair other) : this() { + cert_ = other.cert_ != null ? other.cert_.Clone() : null; + key_ = other.key_ != null ? other.key_.Clone() : null; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public CertificateConfigPair Clone() { + return new CertificateConfigPair(this); + } + + /// Field number for the "cert" field. + public const int CertFieldNumber = 1; + private global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfig cert_; + /// + /// Cert configures the client certificate. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfig Cert { + get { return cert_; } + set { + cert_ = value; + } + } + + /// Field number for the "key" field. + public const int KeyFieldNumber = 2; + private global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfig key_; + /// + /// Key configures the client private key. Optional. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfig Key { + get { return key_; } + set { + key_ = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as CertificateConfigPair); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(CertificateConfigPair other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (!object.Equals(Cert, other.Cert)) return false; + if (!object.Equals(Key, other.Key)) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (cert_ != null) hash ^= Cert.GetHashCode(); + if (key_ != null) hash ^= Key.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (cert_ != null) { + output.WriteRawTag(10); + output.WriteMessage(Cert); + } + if (key_ != null) { + output.WriteRawTag(18); + output.WriteMessage(Key); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (cert_ != null) { + output.WriteRawTag(10); + output.WriteMessage(Cert); + } + if (key_ != null) { + output.WriteRawTag(18); + output.WriteMessage(Key); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(pb::CodedInputStream input) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - input.ReadRawMessage(this); - #else - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); - break; - case 10: { - if (privateRegistryAccessConfig_ == null) { - PrivateRegistryAccessConfig = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (cert_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(Cert); + } + if (key_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(Key); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; } - input.ReadMessage(PrivateRegistryAccessConfig); - break; - } - case 18: { - if (writableCgroups_ == null) { - WritableCgroups = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.WritableCgroups(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(CertificateConfigPair other) { + if (other == null) { + return; + } + if (other.cert_ != null) { + if (cert_ == null) { + Cert = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfig(); + } + Cert.MergeFrom(other.Cert); + } + if (other.key_ != null) { + if (key_ == null) { + Key = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfig(); + } + Key.MergeFrom(other.Key); + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } - input.ReadMessage(WritableCgroups); - break; - } - } - } - #endif - } - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); - break; - case 10: { - if (privateRegistryAccessConfig_ == null) { - PrivateRegistryAccessConfig = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + if (cert_ == null) { + Cert = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfig(); + } + input.ReadMessage(Cert); + break; + } + case 18: { + if (key_ == null) { + Key = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfig(); + } + input.ReadMessage(Key); + break; + } + } + } + #endif } - input.ReadMessage(PrivateRegistryAccessConfig); - break; - } - case 18: { - if (writableCgroups_ == null) { - WritableCgroups = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.WritableCgroups(); + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + if (cert_ == null) { + Cert = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfig(); + } + input.ReadMessage(Cert); + break; + } + case 18: { + if (key_ == null) { + Key = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfig(); + } + input.ReadMessage(Key); + break; + } + } + } } - input.ReadMessage(WritableCgroups); - break; - } - } - } - } - #endif + #endif - #region Nested types - /// Container for nested types declared in the ContainerdConfig message type. - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static partial class Types { - /// - /// PrivateRegistryAccessConfig contains access configuration for - /// private container registries. - /// - [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class PrivateRegistryAccessConfig : pb::IMessage - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - , pb::IBufferMessage - #endif - { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PrivateRegistryAccessConfig()); - private pb::UnknownFieldSet _unknownFields; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ContainerdConfig.Descriptor.NestedTypes[0]; } - } + /// + /// RegistryHeader configures headers for the registry. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class RegistryHeader : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new RegistryHeader()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - pbr::MessageDescriptor pb::IMessage.Descriptor { - get { return Descriptor; } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Descriptor.NestedTypes[2]; } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public PrivateRegistryAccessConfig() { - OnConstruction(); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } - partial void OnConstruction(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public RegistryHeader() { + OnConstruction(); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public PrivateRegistryAccessConfig(PrivateRegistryAccessConfig other) : this() { - enabled_ = other.enabled_; - certificateAuthorityDomainConfig_ = other.certificateAuthorityDomainConfig_.Clone(); - _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); - } + partial void OnConstruction(); - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public PrivateRegistryAccessConfig Clone() { - return new PrivateRegistryAccessConfig(this); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public RegistryHeader(RegistryHeader other) : this() { + key_ = other.key_; + value_ = other.value_.Clone(); + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } - /// Field number for the "enabled" field. - public const int EnabledFieldNumber = 1; - private bool enabled_; - /// - /// Private registry access is enabled. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Enabled { - get { return enabled_; } - set { - enabled_ = value; - } - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public RegistryHeader Clone() { + return new RegistryHeader(this); + } - /// Field number for the "certificate_authority_domain_config" field. - public const int CertificateAuthorityDomainConfigFieldNumber = 2; - private static readonly pb::FieldCodec _repeated_certificateAuthorityDomainConfig_codec - = pb::FieldCodec.ForMessage(18, global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Parser); - private readonly pbc::RepeatedField certificateAuthorityDomainConfig_ = new pbc::RepeatedField(); - /// - /// Private registry access configuration. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField CertificateAuthorityDomainConfig { - get { return certificateAuthorityDomainConfig_; } - } + /// Field number for the "key" field. + public const int KeyFieldNumber = 1; + private string key_ = ""; + /// + /// Key configures the header key. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string Key { + get { return key_; } + set { + key_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override bool Equals(object other) { - return Equals(other as PrivateRegistryAccessConfig); - } + /// Field number for the "value" field. + public const int ValueFieldNumber = 2; + private static readonly pb::FieldCodec _repeated_value_codec + = pb::FieldCodec.ForString(18); + private readonly pbc::RepeatedField value_ = new pbc::RepeatedField(); + /// + /// Value configures the header value. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField Value { + get { return value_; } + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(PrivateRegistryAccessConfig other) { - if (ReferenceEquals(other, null)) { - return false; - } - if (ReferenceEquals(other, this)) { - return true; - } - if (Enabled != other.Enabled) return false; - if(!certificateAuthorityDomainConfig_.Equals(other.certificateAuthorityDomainConfig_)) return false; - return Equals(_unknownFields, other._unknownFields); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as RegistryHeader); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override int GetHashCode() { - int hash = 1; - if (Enabled != false) hash ^= Enabled.GetHashCode(); - hash ^= certificateAuthorityDomainConfig_.GetHashCode(); - if (_unknownFields != null) { - hash ^= _unknownFields.GetHashCode(); - } - return hash; - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(RegistryHeader other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (Key != other.Key) return false; + if(!value_.Equals(other.value_)) return false; + return Equals(_unknownFields, other._unknownFields); + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override string ToString() { - return pb::JsonFormatter.ToDiagnosticString(this); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (Key.Length != 0) hash ^= Key.GetHashCode(); + hash ^= value_.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void WriteTo(pb::CodedOutputStream output) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - output.WriteRawMessage(this); - #else - if (Enabled != false) { - output.WriteRawTag(8); - output.WriteBool(Enabled); - } - certificateAuthorityDomainConfig_.WriteTo(output, _repeated_certificateAuthorityDomainConfig_codec); - if (_unknownFields != null) { - _unknownFields.WriteTo(output); - } - #endif - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (Enabled != false) { - output.WriteRawTag(8); - output.WriteBool(Enabled); - } - certificateAuthorityDomainConfig_.WriteTo(ref output, _repeated_certificateAuthorityDomainConfig_codec); - if (_unknownFields != null) { - _unknownFields.WriteTo(ref output); - } - } - #endif + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (Key.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Key); + } + value_.WriteTo(output, _repeated_value_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int CalculateSize() { - int size = 0; - if (Enabled != false) { - size += 1 + 1; - } - size += certificateAuthorityDomainConfig_.CalculateSize(_repeated_certificateAuthorityDomainConfig_codec); - if (_unknownFields != null) { - size += _unknownFields.CalculateSize(); - } - return size; - } + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (Key.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Key); + } + value_.WriteTo(ref output, _repeated_value_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(PrivateRegistryAccessConfig other) { - if (other == null) { - return; - } - if (other.Enabled != false) { - Enabled = other.Enabled; - } - certificateAuthorityDomainConfig_.Add(other.certificateAuthorityDomainConfig_); - _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); - } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (Key.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Key); + } + size += value_.CalculateSize(_repeated_value_codec); + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(pb::CodedInputStream input) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - input.ReadRawMessage(this); - #else - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); - break; - case 8: { - Enabled = input.ReadBool(); - break; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(RegistryHeader other) { + if (other == null) { + return; } - case 18: { - certificateAuthorityDomainConfig_.AddEntriesFrom(input, _repeated_certificateAuthorityDomainConfig_codec); - break; + if (other.Key.Length != 0) { + Key = other.Key; } + value_.Add(other.value_); + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } - } - #endif - } - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); - break; - case 8: { - Enabled = input.ReadBool(); - break; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + Key = input.ReadString(); + break; + } + case 18: { + value_.AddEntriesFrom(input, _repeated_value_codec); + break; + } + } } - case 18: { - certificateAuthorityDomainConfig_.AddEntriesFrom(ref input, _repeated_certificateAuthorityDomainConfig_codec); - break; + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + Key = input.ReadString(); + break; + } + case 18: { + value_.AddEntriesFrom(ref input, _repeated_value_codec); + break; + } + } } } + #endif + } - } - #endif - #region Nested types - /// Container for nested types declared in the PrivateRegistryAccessConfig message type. - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static partial class Types { /// - /// CertificateAuthorityDomainConfig configures one or more fully qualified - /// domain names (FQDN) to a specific certificate. + /// HostConfig configures the registry host under a given Server. /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class CertificateAuthorityDomainConfig : pb::IMessage + public sealed partial class HostConfig : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new CertificateAuthorityDomainConfig()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new HostConfig()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Descriptor.NestedTypes[0]; } + get { return global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Descriptor.NestedTypes[3]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -12158,7 +15740,7 @@ public sealed partial class CertificateAuthorityDomainConfig : pb::IMessageField number for the "fqdns" field. - public const int FqdnsFieldNumber = 1; - private static readonly pb::FieldCodec _repeated_fqdns_codec - = pb::FieldCodec.ForString(10); - private readonly pbc::RepeatedField fqdns_ = new pbc::RepeatedField(); + /// Field number for the "host" field. + public const int HostFieldNumber = 1; + private string host_ = ""; /// - /// List of fully qualified domain names (FQDN). + /// Host configures the registry host/mirror. + /// It supports fully qualified domain names (FQDN) and IP addresses: /// Specifying port is supported. /// Wildcards are NOT supported. /// Examples: @@ -12198,63 +15779,131 @@ public CertificateAuthorityDomainConfig Clone() { /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField Fqdns { - get { return fqdns_; } + public string Host { + get { return host_; } + set { + host_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "capabilities" field. + public const int CapabilitiesFieldNumber = 2; + private static readonly pb::FieldCodec _repeated_capabilities_codec + = pb::FieldCodec.ForEnum(18, x => (int) x, x => (global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.HostCapability) x); + private readonly pbc::RepeatedField capabilities_ = new pbc::RepeatedField(); + /// + /// Capabilities represent the capabilities of the registry host, + /// specifying what operations a host is capable of performing. + /// If not set, containerd enables all capabilities by default. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField Capabilities { + get { return capabilities_; } } - /// Field number for the "gcp_secret_manager_certificate_config" field. - public const int GcpSecretManagerCertificateConfigFieldNumber = 2; + /// Field number for the "override_path" field. + public const int OverridePathFieldNumber = 3; + private bool overridePath_; /// - /// Google Secret Manager (GCP) certificate configuration. + /// OverridePath is used to indicate the host's API root endpoint is + /// defined in the URL path rather than by the API specification. This may + /// be used with non-compliant OCI registries which are missing the /v2 + /// prefix. + /// If not set, containerd sets default false. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig GcpSecretManagerCertificateConfig { - get { return certificateConfigCase_ == CertificateConfigOneofCase.GcpSecretManagerCertificateConfig ? (global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig) certificateConfig_ : null; } + public bool OverridePath { + get { return overridePath_; } set { - certificateConfig_ = value; - certificateConfigCase_ = value == null ? CertificateConfigOneofCase.None : CertificateConfigOneofCase.GcpSecretManagerCertificateConfig; + overridePath_ = value; } } - private object certificateConfig_; - /// Enum of possible cases for the "certificate_config" oneof. - public enum CertificateConfigOneofCase { - None = 0, - GcpSecretManagerCertificateConfig = 2, + /// Field number for the "header" field. + public const int HeaderFieldNumber = 4; + private static readonly pb::FieldCodec _repeated_header_codec + = pb::FieldCodec.ForMessage(34, global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.RegistryHeader.Parser); + private readonly pbc::RepeatedField header_ = new pbc::RepeatedField(); + /// + /// Header configures the registry host headers. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField Header { + get { return header_; } } - private CertificateConfigOneofCase certificateConfigCase_ = CertificateConfigOneofCase.None; + + /// Field number for the "ca" field. + public const int CaFieldNumber = 5; + private static readonly pb::FieldCodec _repeated_ca_codec + = pb::FieldCodec.ForMessage(42, global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfig.Parser); + private readonly pbc::RepeatedField ca_ = new pbc::RepeatedField(); + /// + /// CA configures the registry host certificate. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public CertificateConfigOneofCase CertificateConfigCase { - get { return certificateConfigCase_; } + public pbc::RepeatedField Ca { + get { return ca_; } } + /// Field number for the "client" field. + public const int ClientFieldNumber = 6; + private static readonly pb::FieldCodec _repeated_client_codec + = pb::FieldCodec.ForMessage(50, global::Google.Cloud.Container.V1.ContainerdConfig.Types.RegistryHostConfig.Types.CertificateConfigPair.Parser); + private readonly pbc::RepeatedField client_ = new pbc::RepeatedField(); + /// + /// Client configures the registry host client certificate and key. + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearCertificateConfig() { - certificateConfigCase_ = CertificateConfigOneofCase.None; - certificateConfig_ = null; + public pbc::RepeatedField Client { + get { return client_; } + } + + /// Field number for the "dial_timeout" field. + public const int DialTimeoutFieldNumber = 7; + private global::Google.Protobuf.WellKnownTypes.Duration dialTimeout_; + /// + /// Specifies the maximum duration allowed for a connection attempt to + /// complete. A shorter timeout helps reduce delays when falling back to + /// the original registry if the mirror is unreachable. + /// Maximum allowed value is 180s. If not set, containerd sets default 30s. + /// The value should be a decimal number of seconds with an `s` suffix. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Protobuf.WellKnownTypes.Duration DialTimeout { + get { return dialTimeout_; } + set { + dialTimeout_ = value; + } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as CertificateAuthorityDomainConfig); + return Equals(other as HostConfig); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(CertificateAuthorityDomainConfig other) { + public bool Equals(HostConfig other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if(!fqdns_.Equals(other.fqdns_)) return false; - if (!object.Equals(GcpSecretManagerCertificateConfig, other.GcpSecretManagerCertificateConfig)) return false; - if (CertificateConfigCase != other.CertificateConfigCase) return false; + if (Host != other.Host) return false; + if(!capabilities_.Equals(other.capabilities_)) return false; + if (OverridePath != other.OverridePath) return false; + if(!header_.Equals(other.header_)) return false; + if(!ca_.Equals(other.ca_)) return false; + if(!client_.Equals(other.client_)) return false; + if (!object.Equals(DialTimeout, other.DialTimeout)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -12262,9 +15911,13 @@ public bool Equals(CertificateAuthorityDomainConfig other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - hash ^= fqdns_.GetHashCode(); - if (certificateConfigCase_ == CertificateConfigOneofCase.GcpSecretManagerCertificateConfig) hash ^= GcpSecretManagerCertificateConfig.GetHashCode(); - hash ^= (int) certificateConfigCase_; + if (Host.Length != 0) hash ^= Host.GetHashCode(); + hash ^= capabilities_.GetHashCode(); + if (OverridePath != false) hash ^= OverridePath.GetHashCode(); + hash ^= header_.GetHashCode(); + hash ^= ca_.GetHashCode(); + hash ^= client_.GetHashCode(); + if (dialTimeout_ != null) hash ^= DialTimeout.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -12283,10 +15936,21 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - fqdns_.WriteTo(output, _repeated_fqdns_codec); - if (certificateConfigCase_ == CertificateConfigOneofCase.GcpSecretManagerCertificateConfig) { - output.WriteRawTag(18); - output.WriteMessage(GcpSecretManagerCertificateConfig); + if (Host.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Host); + } + capabilities_.WriteTo(output, _repeated_capabilities_codec); + if (OverridePath != false) { + output.WriteRawTag(24); + output.WriteBool(OverridePath); + } + header_.WriteTo(output, _repeated_header_codec); + ca_.WriteTo(output, _repeated_ca_codec); + client_.WriteTo(output, _repeated_client_codec); + if (dialTimeout_ != null) { + output.WriteRawTag(58); + output.WriteMessage(DialTimeout); } if (_unknownFields != null) { _unknownFields.WriteTo(output); @@ -12298,10 +15962,21 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - fqdns_.WriteTo(ref output, _repeated_fqdns_codec); - if (certificateConfigCase_ == CertificateConfigOneofCase.GcpSecretManagerCertificateConfig) { - output.WriteRawTag(18); - output.WriteMessage(GcpSecretManagerCertificateConfig); + if (Host.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Host); + } + capabilities_.WriteTo(ref output, _repeated_capabilities_codec); + if (OverridePath != false) { + output.WriteRawTag(24); + output.WriteBool(OverridePath); + } + header_.WriteTo(ref output, _repeated_header_codec); + ca_.WriteTo(ref output, _repeated_ca_codec); + client_.WriteTo(ref output, _repeated_client_codec); + if (dialTimeout_ != null) { + output.WriteRawTag(58); + output.WriteMessage(DialTimeout); } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); @@ -12313,9 +15988,18 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - size += fqdns_.CalculateSize(_repeated_fqdns_codec); - if (certificateConfigCase_ == CertificateConfigOneofCase.GcpSecretManagerCertificateConfig) { - size += 1 + pb::CodedOutputStream.ComputeMessageSize(GcpSecretManagerCertificateConfig); + if (Host.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Host); + } + size += capabilities_.CalculateSize(_repeated_capabilities_codec); + if (OverridePath != false) { + size += 1 + 1; + } + size += header_.CalculateSize(_repeated_header_codec); + size += ca_.CalculateSize(_repeated_ca_codec); + size += client_.CalculateSize(_repeated_client_codec); + if (dialTimeout_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(DialTimeout); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -12325,20 +16009,26 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(CertificateAuthorityDomainConfig other) { + public void MergeFrom(HostConfig other) { if (other == null) { return; } - fqdns_.Add(other.fqdns_); - switch (other.CertificateConfigCase) { - case CertificateConfigOneofCase.GcpSecretManagerCertificateConfig: - if (GcpSecretManagerCertificateConfig == null) { - GcpSecretManagerCertificateConfig = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig(); - } - GcpSecretManagerCertificateConfig.MergeFrom(other.GcpSecretManagerCertificateConfig); - break; + if (other.Host.Length != 0) { + Host = other.Host; + } + capabilities_.Add(other.capabilities_); + if (other.OverridePath != false) { + OverridePath = other.OverridePath; + } + header_.Add(other.header_); + ca_.Add(other.ca_); + client_.Add(other.client_); + if (other.dialTimeout_ != null) { + if (dialTimeout_ == null) { + DialTimeout = new global::Google.Protobuf.WellKnownTypes.Duration(); + } + DialTimeout.MergeFrom(other.DialTimeout); } - _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -12355,16 +16045,35 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { - fqdns_.AddEntriesFrom(input, _repeated_fqdns_codec); + Host = input.ReadString(); break; } - case 18: { - global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig subBuilder = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig(); - if (certificateConfigCase_ == CertificateConfigOneofCase.GcpSecretManagerCertificateConfig) { - subBuilder.MergeFrom(GcpSecretManagerCertificateConfig); + case 18: + case 16: { + capabilities_.AddEntriesFrom(input, _repeated_capabilities_codec); + break; + } + case 24: { + OverridePath = input.ReadBool(); + break; + } + case 34: { + header_.AddEntriesFrom(input, _repeated_header_codec); + break; + } + case 42: { + ca_.AddEntriesFrom(input, _repeated_ca_codec); + break; + } + case 50: { + client_.AddEntriesFrom(input, _repeated_client_codec); + break; + } + case 58: { + if (dialTimeout_ == null) { + DialTimeout = new global::Google.Protobuf.WellKnownTypes.Duration(); } - input.ReadMessage(subBuilder); - GcpSecretManagerCertificateConfig = subBuilder; + input.ReadMessage(DialTimeout); break; } } @@ -12383,229 +16092,41 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; case 10: { - fqdns_.AddEntriesFrom(ref input, _repeated_fqdns_codec); + Host = input.ReadString(); break; } - case 18: { - global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig subBuilder = new global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Types.GCPSecretManagerCertificateConfig(); - if (certificateConfigCase_ == CertificateConfigOneofCase.GcpSecretManagerCertificateConfig) { - subBuilder.MergeFrom(GcpSecretManagerCertificateConfig); - } - input.ReadMessage(subBuilder); - GcpSecretManagerCertificateConfig = subBuilder; + case 18: + case 16: { + capabilities_.AddEntriesFrom(ref input, _repeated_capabilities_codec); break; } - } - } - } - #endif - - #region Nested types - /// Container for nested types declared in the CertificateAuthorityDomainConfig message type. - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static partial class Types { - /// - /// GCPSecretManagerCertificateConfig configures a secret from - /// [Secret Manager](https://cloud.google.com/secret-manager). - /// - [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class GCPSecretManagerCertificateConfig : pb::IMessage - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - , pb::IBufferMessage - #endif - { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new GCPSecretManagerCertificateConfig()); - private pb::UnknownFieldSet _unknownFields; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ContainerdConfig.Types.PrivateRegistryAccessConfig.Types.CertificateAuthorityDomainConfig.Descriptor.NestedTypes[0]; } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - pbr::MessageDescriptor pb::IMessage.Descriptor { - get { return Descriptor; } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public GCPSecretManagerCertificateConfig() { - OnConstruction(); - } - - partial void OnConstruction(); - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public GCPSecretManagerCertificateConfig(GCPSecretManagerCertificateConfig other) : this() { - secretUri_ = other.secretUri_; - _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public GCPSecretManagerCertificateConfig Clone() { - return new GCPSecretManagerCertificateConfig(this); - } - - /// Field number for the "secret_uri" field. - public const int SecretUriFieldNumber = 1; - private string secretUri_ = ""; - /// - /// Secret URI, in the form - /// "projects/$PROJECT_ID/secrets/$SECRET_NAME/versions/$VERSION". - /// Version can be fixed (e.g. "2") or "latest" - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string SecretUri { - get { return secretUri_; } - set { - secretUri_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override bool Equals(object other) { - return Equals(other as GCPSecretManagerCertificateConfig); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(GCPSecretManagerCertificateConfig other) { - if (ReferenceEquals(other, null)) { - return false; - } - if (ReferenceEquals(other, this)) { - return true; - } - if (SecretUri != other.SecretUri) return false; - return Equals(_unknownFields, other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override int GetHashCode() { - int hash = 1; - if (SecretUri.Length != 0) hash ^= SecretUri.GetHashCode(); - if (_unknownFields != null) { - hash ^= _unknownFields.GetHashCode(); - } - return hash; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override string ToString() { - return pb::JsonFormatter.ToDiagnosticString(this); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void WriteTo(pb::CodedOutputStream output) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - output.WriteRawMessage(this); - #else - if (SecretUri.Length != 0) { - output.WriteRawTag(10); - output.WriteString(SecretUri); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(output); - } - #endif - } - - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (SecretUri.Length != 0) { - output.WriteRawTag(10); - output.WriteString(SecretUri); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(ref output); - } - } - #endif - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int CalculateSize() { - int size = 0; - if (SecretUri.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(SecretUri); - } - if (_unknownFields != null) { - size += _unknownFields.CalculateSize(); + case 24: { + OverridePath = input.ReadBool(); + break; } - return size; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(GCPSecretManagerCertificateConfig other) { - if (other == null) { - return; + case 34: { + header_.AddEntriesFrom(ref input, _repeated_header_codec); + break; } - if (other.SecretUri.Length != 0) { - SecretUri = other.SecretUri; + case 42: { + ca_.AddEntriesFrom(ref input, _repeated_ca_codec); + break; } - _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(pb::CodedInputStream input) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - input.ReadRawMessage(this); - #else - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); - break; - case 10: { - SecretUri = input.ReadString(); - break; - } - } + case 50: { + client_.AddEntriesFrom(ref input, _repeated_client_codec); + break; } - #endif - } - - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); - break; - case 10: { - SecretUri = input.ReadString(); - break; - } + case 58: { + if (dialTimeout_ == null) { + DialTimeout = new global::Google.Protobuf.WellKnownTypes.Duration(); } + input.ReadMessage(DialTimeout); + break; } } - #endif - } - } - #endregion + #endif } @@ -12614,202 +16135,6 @@ public void MergeFrom(pb::CodedInputStream input) { } - /// - /// Defines writable cgroups configuration. - /// - [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class WritableCgroups : pb::IMessage - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - , pb::IBufferMessage - #endif - { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new WritableCgroups()); - private pb::UnknownFieldSet _unknownFields; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ContainerdConfig.Descriptor.NestedTypes[1]; } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - pbr::MessageDescriptor pb::IMessage.Descriptor { - get { return Descriptor; } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public WritableCgroups() { - OnConstruction(); - } - - partial void OnConstruction(); - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public WritableCgroups(WritableCgroups other) : this() { - enabled_ = other.enabled_; - _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public WritableCgroups Clone() { - return new WritableCgroups(this); - } - - /// Field number for the "enabled" field. - public const int EnabledFieldNumber = 1; - private bool enabled_; - /// - /// Optional. Whether writable cgroups is enabled. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Enabled { - get { return enabled_; } - set { - enabled_ = value; - } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override bool Equals(object other) { - return Equals(other as WritableCgroups); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(WritableCgroups other) { - if (ReferenceEquals(other, null)) { - return false; - } - if (ReferenceEquals(other, this)) { - return true; - } - if (Enabled != other.Enabled) return false; - return Equals(_unknownFields, other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override int GetHashCode() { - int hash = 1; - if (Enabled != false) hash ^= Enabled.GetHashCode(); - if (_unknownFields != null) { - hash ^= _unknownFields.GetHashCode(); - } - return hash; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override string ToString() { - return pb::JsonFormatter.ToDiagnosticString(this); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void WriteTo(pb::CodedOutputStream output) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - output.WriteRawMessage(this); - #else - if (Enabled != false) { - output.WriteRawTag(8); - output.WriteBool(Enabled); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(output); - } - #endif - } - - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (Enabled != false) { - output.WriteRawTag(8); - output.WriteBool(Enabled); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(ref output); - } - } - #endif - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int CalculateSize() { - int size = 0; - if (Enabled != false) { - size += 1 + 1; - } - if (_unknownFields != null) { - size += _unknownFields.CalculateSize(); - } - return size; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(WritableCgroups other) { - if (other == null) { - return; - } - if (other.Enabled != false) { - Enabled = other.Enabled; - } - _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(pb::CodedInputStream input) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - input.ReadRawMessage(this); - #else - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); - break; - case 8: { - Enabled = input.ReadBool(); - break; - } - } - } - #endif - } - - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { - uint tag; - while ((tag = input.ReadTag()) != 0) { - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); - break; - case 8: { - Enabled = input.ReadBool(); - break; - } - } - } - } - #endif - - } - } #endregion @@ -14551,6 +17876,7 @@ public AddonsConfig(AddonsConfig other) : this() { rayOperatorConfig_ = other.rayOperatorConfig_ != null ? other.rayOperatorConfig_.Clone() : null; highScaleCheckpointingConfig_ = other.highScaleCheckpointingConfig_ != null ? other.highScaleCheckpointingConfig_.Clone() : null; lustreCsiDriverConfig_ = other.lustreCsiDriverConfig_ != null ? other.lustreCsiDriverConfig_.Clone() : null; + sliceControllerConfig_ = other.sliceControllerConfig_ != null ? other.sliceControllerConfig_.Clone() : null; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } @@ -14813,6 +18139,21 @@ public AddonsConfig Clone() { } } + /// Field number for the "slice_controller_config" field. + public const int SliceControllerConfigFieldNumber = 26; + private global::Google.Cloud.Container.V1.SliceControllerConfig sliceControllerConfig_; + /// + /// Optional. Configuration for the slice controller add-on. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.SliceControllerConfig SliceControllerConfig { + get { return sliceControllerConfig_; } + set { + sliceControllerConfig_ = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { @@ -14844,6 +18185,7 @@ public bool Equals(AddonsConfig other) { if (!object.Equals(RayOperatorConfig, other.RayOperatorConfig)) return false; if (!object.Equals(HighScaleCheckpointingConfig, other.HighScaleCheckpointingConfig)) return false; if (!object.Equals(LustreCsiDriverConfig, other.LustreCsiDriverConfig)) return false; + if (!object.Equals(SliceControllerConfig, other.SliceControllerConfig)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -14867,6 +18209,7 @@ public override int GetHashCode() { if (rayOperatorConfig_ != null) hash ^= RayOperatorConfig.GetHashCode(); if (highScaleCheckpointingConfig_ != null) hash ^= HighScaleCheckpointingConfig.GetHashCode(); if (lustreCsiDriverConfig_ != null) hash ^= LustreCsiDriverConfig.GetHashCode(); + if (sliceControllerConfig_ != null) hash ^= SliceControllerConfig.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -14949,6 +18292,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(186, 1); output.WriteMessage(LustreCsiDriverConfig); } + if (sliceControllerConfig_ != null) { + output.WriteRawTag(210, 1); + output.WriteMessage(SliceControllerConfig); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -15023,6 +18370,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(186, 1); output.WriteMessage(LustreCsiDriverConfig); } + if (sliceControllerConfig_ != null) { + output.WriteRawTag(210, 1); + output.WriteMessage(SliceControllerConfig); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -15081,6 +18432,9 @@ public int CalculateSize() { if (lustreCsiDriverConfig_ != null) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(LustreCsiDriverConfig); } + if (sliceControllerConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(SliceControllerConfig); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -15189,6 +18543,12 @@ public void MergeFrom(AddonsConfig other) { } LustreCsiDriverConfig.MergeFrom(other.LustreCsiDriverConfig); } + if (other.sliceControllerConfig_ != null) { + if (sliceControllerConfig_ == null) { + SliceControllerConfig = new global::Google.Cloud.Container.V1.SliceControllerConfig(); + } + SliceControllerConfig.MergeFrom(other.SliceControllerConfig); + } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -15316,6 +18676,13 @@ public void MergeFrom(pb::CodedInputStream input) { input.ReadMessage(LustreCsiDriverConfig); break; } + case 210: { + if (sliceControllerConfig_ == null) { + SliceControllerConfig = new global::Google.Cloud.Container.V1.SliceControllerConfig(); + } + input.ReadMessage(SliceControllerConfig); + break; + } } } #endif @@ -15443,6 +18810,13 @@ public void MergeFrom(pb::CodedInputStream input) { input.ReadMessage(LustreCsiDriverConfig); break; } + case 210: { + if (sliceControllerConfig_ == null) { + SliceControllerConfig = new global::Google.Cloud.Container.V1.SliceControllerConfig(); + } + input.ReadMessage(SliceControllerConfig); + break; + } } } } @@ -19082,6 +22456,202 @@ public void MergeFrom(pb::CodedInputStream input) { } + /// + /// Configuration for the Slice Controller. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class SliceControllerConfig : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SliceControllerConfig()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[43]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SliceControllerConfig() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SliceControllerConfig(SliceControllerConfig other) : this() { + enabled_ = other.enabled_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SliceControllerConfig Clone() { + return new SliceControllerConfig(this); + } + + /// Field number for the "enabled" field. + public const int EnabledFieldNumber = 1; + private bool enabled_; + /// + /// Optional. Indicates whether Slice Controller is enabled in the cluster. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Enabled { + get { return enabled_; } + set { + enabled_ = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as SliceControllerConfig); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(SliceControllerConfig other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (Enabled != other.Enabled) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (Enabled != false) hash ^= Enabled.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (Enabled != false) { + output.WriteRawTag(8); + output.WriteBool(Enabled); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (Enabled != false) { + output.WriteRawTag(8); + output.WriteBool(Enabled); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (Enabled != false) { + size += 1 + 1; + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(SliceControllerConfig other) { + if (other == null) { + return; + } + if (other.Enabled != false) { + Enabled = other.Enabled; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + Enabled = input.ReadBool(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + Enabled = input.ReadBool(); + break; + } + } + } + } + #endif + + } + /// /// Configuration options for the Ray Operator add-on. /// @@ -19100,7 +22670,7 @@ public sealed partial class RayOperatorConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[43]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[44]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -19394,7 +22964,7 @@ public sealed partial class GkeBackupAgentConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[45]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[46]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -19790,7 +23360,7 @@ public sealed partial class MasterAuthorizedNetworksConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[47]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[48]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -20572,7 +24142,7 @@ public sealed partial class NetworkPolicy : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[48]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[49]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -20830,7 +24400,7 @@ public sealed partial class BinaryAuthorization : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[52]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[53]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -22603,6 +26173,7 @@ public Cluster(Cluster other) : this() { rbacBindingConfig_ = other.rbacBindingConfig_ != null ? other.rbacBindingConfig_.Clone() : null; gkeAutoUpgradeConfig_ = other.gkeAutoUpgradeConfig_ != null ? other.gkeAutoUpgradeConfig_.Clone() : null; anonymousAuthenticationConfig_ = other.anonymousAuthenticationConfig_ != null ? other.anonymousAuthenticationConfig_.Clone() : null; + managedOpentelemetryConfig_ = other.managedOpentelemetryConfig_ != null ? other.managedOpentelemetryConfig_.Clone() : null; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } @@ -22792,7 +26363,7 @@ public string Network { private string clusterIpv4Cidr_ = ""; /// /// The IP address range of the container pods in this cluster, in - /// [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) + /// [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) /// notation (e.g. `10.96.0.0/14`). Leave blank to have /// one automatically chosen or specify a `/14` block in `10.0.0.0/8`. /// @@ -23477,7 +27048,7 @@ public int NodeIpv4CidrSize { /// /// Output only. The IP address range of the Kubernetes services in /// this cluster, in - /// [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) + /// [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) /// notation (e.g. `1.2.3.4/29`). Service addresses are /// typically put in the last `/16` from the container CIDR. /// @@ -23580,7 +27151,7 @@ public bool EnableTpu { private string tpuIpv4CidrBlock_ = ""; /// /// Output only. The IP address range of the Cloud TPUs in this cluster, in - /// [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) + /// [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) /// notation (e.g. `1.2.3.4/29`). /// This field is deprecated due to the deprecation of 2VM TPU. The end of life /// date for 2VM TPU is 2025-04-25. @@ -23964,6 +27535,21 @@ public void ClearSatisfiesPzi() { } } + /// Field number for the "managed_opentelemetry_config" field. + public const int ManagedOpentelemetryConfigFieldNumber = 168; + private global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig managedOpentelemetryConfig_; + /// + /// Configuration for Managed OpenTelemetry pipeline. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig ManagedOpentelemetryConfig { + get { return managedOpentelemetryConfig_; } + set { + managedOpentelemetryConfig_ = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { @@ -24057,6 +27643,7 @@ public bool Equals(Cluster other) { if (!object.Equals(RbacBindingConfig, other.RbacBindingConfig)) return false; if (!object.Equals(GkeAutoUpgradeConfig, other.GkeAutoUpgradeConfig)) return false; if (!object.Equals(AnonymousAuthenticationConfig, other.AnonymousAuthenticationConfig)) return false; + if (!object.Equals(ManagedOpentelemetryConfig, other.ManagedOpentelemetryConfig)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -24142,6 +27729,7 @@ public override int GetHashCode() { if (rbacBindingConfig_ != null) hash ^= RbacBindingConfig.GetHashCode(); if (gkeAutoUpgradeConfig_ != null) hash ^= GkeAutoUpgradeConfig.GetHashCode(); if (anonymousAuthenticationConfig_ != null) hash ^= AnonymousAuthenticationConfig.GetHashCode(); + if (managedOpentelemetryConfig_ != null) hash ^= ManagedOpentelemetryConfig.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -24454,6 +28042,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(162, 10); output.WriteMessage(AnonymousAuthenticationConfig); } + if (managedOpentelemetryConfig_ != null) { + output.WriteRawTag(194, 10); + output.WriteMessage(ManagedOpentelemetryConfig); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -24758,6 +28350,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(162, 10); output.WriteMessage(AnonymousAuthenticationConfig); } + if (managedOpentelemetryConfig_ != null) { + output.WriteRawTag(194, 10); + output.WriteMessage(ManagedOpentelemetryConfig); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -24990,6 +28586,9 @@ public int CalculateSize() { if (anonymousAuthenticationConfig_ != null) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(AnonymousAuthenticationConfig); } + if (managedOpentelemetryConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(ManagedOpentelemetryConfig); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -25350,6 +28949,12 @@ public void MergeFrom(Cluster other) { } AnonymousAuthenticationConfig.MergeFrom(other.AnonymousAuthenticationConfig); } + if (other.managedOpentelemetryConfig_ != null) { + if (managedOpentelemetryConfig_ == null) { + ManagedOpentelemetryConfig = new global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig(); + } + ManagedOpentelemetryConfig.MergeFrom(other.ManagedOpentelemetryConfig); + } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -25803,6 +29408,13 @@ public void MergeFrom(pb::CodedInputStream input) { input.ReadMessage(AnonymousAuthenticationConfig); break; } + case 1346: { + if (managedOpentelemetryConfig_ == null) { + ManagedOpentelemetryConfig = new global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig(); + } + input.ReadMessage(ManagedOpentelemetryConfig); + break; + } } } #endif @@ -26256,6 +29868,13 @@ public void MergeFrom(pb::CodedInputStream input) { input.ReadMessage(AnonymousAuthenticationConfig); break; } + case 1346: { + if (managedOpentelemetryConfig_ == null) { + ManagedOpentelemetryConfig = new global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig(); + } + input.ReadMessage(ManagedOpentelemetryConfig); + break; + } } } } @@ -26330,7 +29949,7 @@ public sealed partial class RBACBindingConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[53]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[54]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -26600,7 +30219,7 @@ public sealed partial class UserManagedKeysConfig : pb::IMessageField number for the "control_plane_disk_encryption_key_versions" field. + public const int ControlPlaneDiskEncryptionKeyVersionsFieldNumber = 18; + private static readonly pb::FieldCodec _repeated_controlPlaneDiskEncryptionKeyVersions_codec + = pb::FieldCodec.ForString(146); + private readonly pbc::RepeatedField controlPlaneDiskEncryptionKeyVersions_ = new pbc::RepeatedField(); + /// + /// Output only. All of the versions of the Cloud KMS cryptoKey that are used + /// by Confidential Hyperdisks on the control plane nodes. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField ControlPlaneDiskEncryptionKeyVersions { + get { return controlPlaneDiskEncryptionKeyVersions_; } + } + /// Field number for the "gkeops_etcd_backup_encryption_key" field. public const int GkeopsEtcdBackupEncryptionKeyFieldNumber = 17; private string gkeopsEtcdBackupEncryptionKey_ = ""; @@ -26791,6 +30426,7 @@ public bool Equals(UserManagedKeysConfig other) { if(!serviceAccountVerificationKeys_.Equals(other.serviceAccountVerificationKeys_)) return false; if (AggregationCa != other.AggregationCa) return false; if (ControlPlaneDiskEncryptionKey != other.ControlPlaneDiskEncryptionKey) return false; + if(!controlPlaneDiskEncryptionKeyVersions_.Equals(other.controlPlaneDiskEncryptionKeyVersions_)) return false; if (GkeopsEtcdBackupEncryptionKey != other.GkeopsEtcdBackupEncryptionKey) return false; return Equals(_unknownFields, other._unknownFields); } @@ -26806,6 +30442,7 @@ public override int GetHashCode() { hash ^= serviceAccountVerificationKeys_.GetHashCode(); if (AggregationCa.Length != 0) hash ^= AggregationCa.GetHashCode(); if (ControlPlaneDiskEncryptionKey.Length != 0) hash ^= ControlPlaneDiskEncryptionKey.GetHashCode(); + hash ^= controlPlaneDiskEncryptionKeyVersions_.GetHashCode(); if (GkeopsEtcdBackupEncryptionKey.Length != 0) hash ^= GkeopsEtcdBackupEncryptionKey.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); @@ -26851,6 +30488,7 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(138, 1); output.WriteString(GkeopsEtcdBackupEncryptionKey); } + controlPlaneDiskEncryptionKeyVersions_.WriteTo(output, _repeated_controlPlaneDiskEncryptionKeyVersions_codec); if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -26887,6 +30525,7 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(138, 1); output.WriteString(GkeopsEtcdBackupEncryptionKey); } + controlPlaneDiskEncryptionKeyVersions_.WriteTo(ref output, _repeated_controlPlaneDiskEncryptionKeyVersions_codec); if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -26914,6 +30553,7 @@ public int CalculateSize() { if (ControlPlaneDiskEncryptionKey.Length != 0) { size += 2 + pb::CodedOutputStream.ComputeStringSize(ControlPlaneDiskEncryptionKey); } + size += controlPlaneDiskEncryptionKeyVersions_.CalculateSize(_repeated_controlPlaneDiskEncryptionKeyVersions_codec); if (GkeopsEtcdBackupEncryptionKey.Length != 0) { size += 2 + pb::CodedOutputStream.ComputeStringSize(GkeopsEtcdBackupEncryptionKey); } @@ -26946,6 +30586,7 @@ public void MergeFrom(UserManagedKeysConfig other) { if (other.ControlPlaneDiskEncryptionKey.Length != 0) { ControlPlaneDiskEncryptionKey = other.ControlPlaneDiskEncryptionKey; } + controlPlaneDiskEncryptionKeyVersions_.Add(other.controlPlaneDiskEncryptionKeyVersions_); if (other.GkeopsEtcdBackupEncryptionKey.Length != 0) { GkeopsEtcdBackupEncryptionKey = other.GkeopsEtcdBackupEncryptionKey; } @@ -26996,6 +30637,10 @@ public void MergeFrom(pb::CodedInputStream input) { GkeopsEtcdBackupEncryptionKey = input.ReadString(); break; } + case 146: { + controlPlaneDiskEncryptionKeyVersions_.AddEntriesFrom(input, _repeated_controlPlaneDiskEncryptionKeyVersions_codec); + break; + } } } #endif @@ -27043,6 +30688,10 @@ public void MergeFrom(pb::CodedInputStream input) { GkeopsEtcdBackupEncryptionKey = input.ReadString(); break; } + case 146: { + controlPlaneDiskEncryptionKeyVersions_.AddEntriesFrom(ref input, _repeated_controlPlaneDiskEncryptionKeyVersions_codec); + break; + } } } } @@ -27069,7 +30718,7 @@ public sealed partial class AnonymousAuthenticationConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[57]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[58]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -27958,7 +31607,7 @@ public sealed partial class SecurityPostureConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[60]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[61]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -28842,7 +32491,7 @@ public sealed partial class NodeConfigDefaults : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[62]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[63]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -29292,6 +32941,8 @@ public ClusterUpdate(ClusterUpdate other) : this() { desiredAnonymousAuthenticationConfig_ = other.desiredAnonymousAuthenticationConfig_ != null ? other.desiredAnonymousAuthenticationConfig_.Clone() : null; gkeAutoUpgradeConfig_ = other.gkeAutoUpgradeConfig_ != null ? other.gkeAutoUpgradeConfig_.Clone() : null; desiredNetworkTierConfig_ = other.desiredNetworkTierConfig_ != null ? other.desiredNetworkTierConfig_.Clone() : null; + desiredPrivilegedAdmissionConfig_ = other.desiredPrivilegedAdmissionConfig_ != null ? other.desiredPrivilegedAdmissionConfig_.Clone() : null; + desiredManagedOpentelemetryConfig_ = other.desiredManagedOpentelemetryConfig_ != null ? other.desiredManagedOpentelemetryConfig_.Clone() : null; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } @@ -30592,6 +34243,36 @@ public void ClearDesiredDisableL4LbFirewallReconciliation() { } } + /// Field number for the "desired_privileged_admission_config" field. + public const int DesiredPrivilegedAdmissionConfigFieldNumber = 159; + private global::Google.Cloud.Container.V1.PrivilegedAdmissionConfig desiredPrivilegedAdmissionConfig_; + /// + /// The desired privileged admission config for the cluster. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.PrivilegedAdmissionConfig DesiredPrivilegedAdmissionConfig { + get { return desiredPrivilegedAdmissionConfig_; } + set { + desiredPrivilegedAdmissionConfig_ = value; + } + } + + /// Field number for the "desired_managed_opentelemetry_config" field. + public const int DesiredManagedOpentelemetryConfigFieldNumber = 163; + private global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig desiredManagedOpentelemetryConfig_; + /// + /// The desired managed open telemetry configuration. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig DesiredManagedOpentelemetryConfig { + get { return desiredManagedOpentelemetryConfig_; } + set { + desiredManagedOpentelemetryConfig_ = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { @@ -30679,6 +34360,8 @@ public bool Equals(ClusterUpdate other) { if (!object.Equals(DesiredAnonymousAuthenticationConfig, other.DesiredAnonymousAuthenticationConfig)) return false; if (!object.Equals(GkeAutoUpgradeConfig, other.GkeAutoUpgradeConfig)) return false; if (!object.Equals(DesiredNetworkTierConfig, other.DesiredNetworkTierConfig)) return false; + if (!object.Equals(DesiredPrivilegedAdmissionConfig, other.DesiredPrivilegedAdmissionConfig)) return false; + if (!object.Equals(DesiredManagedOpentelemetryConfig, other.DesiredManagedOpentelemetryConfig)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -30758,6 +34441,8 @@ public override int GetHashCode() { if (desiredAnonymousAuthenticationConfig_ != null) hash ^= DesiredAnonymousAuthenticationConfig.GetHashCode(); if (gkeAutoUpgradeConfig_ != null) hash ^= GkeAutoUpgradeConfig.GetHashCode(); if (desiredNetworkTierConfig_ != null) hash ^= DesiredNetworkTierConfig.GetHashCode(); + if (desiredPrivilegedAdmissionConfig_ != null) hash ^= DesiredPrivilegedAdmissionConfig.GetHashCode(); + if (desiredManagedOpentelemetryConfig_ != null) hash ^= DesiredManagedOpentelemetryConfig.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -31061,6 +34746,14 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(226, 9); output.WriteMessage(DesiredAnonymousAuthenticationConfig); } + if (desiredPrivilegedAdmissionConfig_ != null) { + output.WriteRawTag(250, 9); + output.WriteMessage(DesiredPrivilegedAdmissionConfig); + } + if (desiredManagedOpentelemetryConfig_ != null) { + output.WriteRawTag(154, 10); + output.WriteMessage(DesiredManagedOpentelemetryConfig); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -31356,6 +35049,14 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(226, 9); output.WriteMessage(DesiredAnonymousAuthenticationConfig); } + if (desiredPrivilegedAdmissionConfig_ != null) { + output.WriteRawTag(250, 9); + output.WriteMessage(DesiredPrivilegedAdmissionConfig); + } + if (desiredManagedOpentelemetryConfig_ != null) { + output.WriteRawTag(154, 10); + output.WriteMessage(DesiredManagedOpentelemetryConfig); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -31580,6 +35281,12 @@ public int CalculateSize() { if (desiredNetworkTierConfig_ != null) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(DesiredNetworkTierConfig); } + if (desiredPrivilegedAdmissionConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(DesiredPrivilegedAdmissionConfig); + } + if (desiredManagedOpentelemetryConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(DesiredManagedOpentelemetryConfig); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -31968,6 +35675,18 @@ public void MergeFrom(ClusterUpdate other) { } DesiredNetworkTierConfig.MergeFrom(other.DesiredNetworkTierConfig); } + if (other.desiredPrivilegedAdmissionConfig_ != null) { + if (desiredPrivilegedAdmissionConfig_ == null) { + DesiredPrivilegedAdmissionConfig = new global::Google.Cloud.Container.V1.PrivilegedAdmissionConfig(); + } + DesiredPrivilegedAdmissionConfig.MergeFrom(other.DesiredPrivilegedAdmissionConfig); + } + if (other.desiredManagedOpentelemetryConfig_ != null) { + if (desiredManagedOpentelemetryConfig_ == null) { + DesiredManagedOpentelemetryConfig = new global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig(); + } + DesiredManagedOpentelemetryConfig.MergeFrom(other.DesiredManagedOpentelemetryConfig); + } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -32433,6 +36152,20 @@ public void MergeFrom(pb::CodedInputStream input) { input.ReadMessage(DesiredAnonymousAuthenticationConfig); break; } + case 1274: { + if (desiredPrivilegedAdmissionConfig_ == null) { + DesiredPrivilegedAdmissionConfig = new global::Google.Cloud.Container.V1.PrivilegedAdmissionConfig(); + } + input.ReadMessage(DesiredPrivilegedAdmissionConfig); + break; + } + case 1306: { + if (desiredManagedOpentelemetryConfig_ == null) { + DesiredManagedOpentelemetryConfig = new global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig(); + } + input.ReadMessage(DesiredManagedOpentelemetryConfig); + break; + } } } #endif @@ -32898,6 +36631,20 @@ public void MergeFrom(pb::CodedInputStream input) { input.ReadMessage(DesiredAnonymousAuthenticationConfig); break; } + case 1274: { + if (desiredPrivilegedAdmissionConfig_ == null) { + DesiredPrivilegedAdmissionConfig = new global::Google.Cloud.Container.V1.PrivilegedAdmissionConfig(); + } + input.ReadMessage(DesiredPrivilegedAdmissionConfig); + break; + } + case 1306: { + if (desiredManagedOpentelemetryConfig_ == null) { + DesiredManagedOpentelemetryConfig = new global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig(); + } + input.ReadMessage(DesiredManagedOpentelemetryConfig); + break; + } } } } @@ -32924,7 +36671,7 @@ public sealed partial class AdditionalPodRangesConfig : pb::IMessageField number for the "status" field. + public const int StatusFieldNumber = 3; + private global::Google.Cloud.Container.V1.AdditionalIPRangesConfig.Types.Status status_ = global::Google.Cloud.Container.V1.AdditionalIPRangesConfig.Types.Status.Unspecified; + /// + /// Draining status of the additional subnet. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.AdditionalIPRangesConfig.Types.Status Status { + get { return status_; } + set { + status_ = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { @@ -33222,6 +36985,7 @@ public bool Equals(AdditionalIPRangesConfig other) { } if (Subnetwork != other.Subnetwork) return false; if(!podIpv4RangeNames_.Equals(other.podIpv4RangeNames_)) return false; + if (Status != other.Status) return false; return Equals(_unknownFields, other._unknownFields); } @@ -33231,6 +36995,7 @@ public override int GetHashCode() { int hash = 1; if (Subnetwork.Length != 0) hash ^= Subnetwork.GetHashCode(); hash ^= podIpv4RangeNames_.GetHashCode(); + if (Status != global::Google.Cloud.Container.V1.AdditionalIPRangesConfig.Types.Status.Unspecified) hash ^= Status.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -33254,6 +37019,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteString(Subnetwork); } podIpv4RangeNames_.WriteTo(output, _repeated_podIpv4RangeNames_codec); + if (Status != global::Google.Cloud.Container.V1.AdditionalIPRangesConfig.Types.Status.Unspecified) { + output.WriteRawTag(24); + output.WriteEnum((int) Status); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -33269,6 +37038,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteString(Subnetwork); } podIpv4RangeNames_.WriteTo(ref output, _repeated_podIpv4RangeNames_codec); + if (Status != global::Google.Cloud.Container.V1.AdditionalIPRangesConfig.Types.Status.Unspecified) { + output.WriteRawTag(24); + output.WriteEnum((int) Status); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -33283,6 +37056,9 @@ public int CalculateSize() { size += 1 + pb::CodedOutputStream.ComputeStringSize(Subnetwork); } size += podIpv4RangeNames_.CalculateSize(_repeated_podIpv4RangeNames_codec); + if (Status != global::Google.Cloud.Container.V1.AdditionalIPRangesConfig.Types.Status.Unspecified) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Status); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -33299,6 +37075,9 @@ public void MergeFrom(AdditionalIPRangesConfig other) { Subnetwork = other.Subnetwork; } podIpv4RangeNames_.Add(other.podIpv4RangeNames_); + if (other.Status != global::Google.Cloud.Container.V1.AdditionalIPRangesConfig.Types.Status.Unspecified) { + Status = other.Status; + } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -33322,6 +37101,10 @@ public void MergeFrom(pb::CodedInputStream input) { podIpv4RangeNames_.AddEntriesFrom(input, _repeated_podIpv4RangeNames_codec); break; } + case 24: { + Status = (global::Google.Cloud.Container.V1.AdditionalIPRangesConfig.Types.Status) input.ReadEnum(); + break; + } } } #endif @@ -33345,11 +37128,48 @@ public void MergeFrom(pb::CodedInputStream input) { podIpv4RangeNames_.AddEntriesFrom(ref input, _repeated_podIpv4RangeNames_codec); break; } + case 24: { + Status = (global::Google.Cloud.Container.V1.AdditionalIPRangesConfig.Types.Status) input.ReadEnum(); + break; + } } } } #endif + #region Nested types + /// Container for nested types declared in the AdditionalIPRangesConfig message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// Additional subnet with DRAINING status will not be selected during new node + /// pool creation. To undrain the draining status, update the cluster to set + /// the sunbet to ACTIVE status. To remove the additional subnet, use the + /// update cluster API to remove the subnet from the + /// desired_additional_ip_ranges list. IP ranges can be removed regardless of + /// its status, as long as no node pools are using them. + /// + public enum Status { + /// + /// Not set, same as ACTIVE. + /// + [pbr::OriginalName("STATUS_UNSPECIFIED")] Unspecified = 0, + /// + /// ACTIVE status indicates that the subnet is available for new node pool + /// creation. + /// + [pbr::OriginalName("ACTIVE")] Active = 1, + /// + /// DRAINING status indicates that the subnet is not used for new node pool + /// creation. + /// + [pbr::OriginalName("DRAINING")] Draining = 2, + } + + } + #endregion + } /// @@ -33371,7 +37191,7 @@ public sealed partial class DesiredAdditionalIPRangesConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[66]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[67]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -33770,7 +37590,7 @@ public sealed partial class RangeInfo : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[67]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[68]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -34010,7 +37830,7 @@ public sealed partial class DesiredEnterpriseConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[69]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[70]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -35177,7 +38997,7 @@ public sealed partial class OperationProgress : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[70]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[71]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -35880,7 +39700,7 @@ public sealed partial class CreateClusterRequest : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[72]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[73]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -36540,7 +40360,7 @@ public sealed partial class UpdateClusterRequest : pb::IMessageField number for the "node_drain_config" field. + public const int NodeDrainConfigFieldNumber = 48; + private global::Google.Cloud.Container.V1.NodePool.Types.NodeDrainConfig nodeDrainConfig_; + /// + /// The desired node drain configuration for nodes in the node pool. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.NodePool.Types.NodeDrainConfig NodeDrainConfig { + get { return nodeDrainConfig_; } + set { + nodeDrainConfig_ = value; + } + } + + /// Field number for the "consolidation_delay" field. + public const int ConsolidationDelayFieldNumber = 49; + private global::Google.Protobuf.WellKnownTypes.Duration consolidationDelay_; + /// + /// Consolidation delay defines duration after which the Cluster Autoscaler can + /// scale down underutilized nodes. If not set, nodes are scaled down by + /// default behavior, i.e. according to the chosen autoscaling profile. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Protobuf.WellKnownTypes.Duration ConsolidationDelay { + get { return consolidationDelay_; } + set { + consolidationDelay_ = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { @@ -37635,6 +41489,8 @@ public bool Equals(UpdateNodePoolRequest other) { if (!object.Equals(MaxRunDuration, other.MaxRunDuration)) return false; if (FlexStart != other.FlexStart) return false; if (!object.Equals(BootDisk, other.BootDisk)) return false; + if (!object.Equals(NodeDrainConfig, other.NodeDrainConfig)) return false; + if (!object.Equals(ConsolidationDelay, other.ConsolidationDelay)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -37677,6 +41533,8 @@ public override int GetHashCode() { if (maxRunDuration_ != null) hash ^= MaxRunDuration.GetHashCode(); if (HasFlexStart) hash ^= FlexStart.GetHashCode(); if (bootDisk_ != null) hash ^= BootDisk.GetHashCode(); + if (nodeDrainConfig_ != null) hash ^= NodeDrainConfig.GetHashCode(); + if (consolidationDelay_ != null) hash ^= ConsolidationDelay.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -37826,6 +41684,14 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(250, 2); output.WriteMessage(BootDisk); } + if (nodeDrainConfig_ != null) { + output.WriteRawTag(130, 3); + output.WriteMessage(NodeDrainConfig); + } + if (consolidationDelay_ != null) { + output.WriteRawTag(138, 3); + output.WriteMessage(ConsolidationDelay); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -37967,6 +41833,14 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(250, 2); output.WriteMessage(BootDisk); } + if (nodeDrainConfig_ != null) { + output.WriteRawTag(130, 3); + output.WriteMessage(NodeDrainConfig); + } + if (consolidationDelay_ != null) { + output.WriteRawTag(138, 3); + output.WriteMessage(ConsolidationDelay); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -38076,6 +41950,12 @@ public int CalculateSize() { if (bootDisk_ != null) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(BootDisk); } + if (nodeDrainConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(NodeDrainConfig); + } + if (consolidationDelay_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(ConsolidationDelay); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -38247,6 +42127,18 @@ public void MergeFrom(UpdateNodePoolRequest other) { } BootDisk.MergeFrom(other.BootDisk); } + if (other.nodeDrainConfig_ != null) { + if (nodeDrainConfig_ == null) { + NodeDrainConfig = new global::Google.Cloud.Container.V1.NodePool.Types.NodeDrainConfig(); + } + NodeDrainConfig.MergeFrom(other.NodeDrainConfig); + } + if (other.consolidationDelay_ != null) { + if (consolidationDelay_ == null) { + ConsolidationDelay = new global::Google.Protobuf.WellKnownTypes.Duration(); + } + ConsolidationDelay.MergeFrom(other.ConsolidationDelay); + } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -38462,6 +42354,20 @@ public void MergeFrom(pb::CodedInputStream input) { input.ReadMessage(BootDisk); break; } + case 386: { + if (nodeDrainConfig_ == null) { + NodeDrainConfig = new global::Google.Cloud.Container.V1.NodePool.Types.NodeDrainConfig(); + } + input.ReadMessage(NodeDrainConfig); + break; + } + case 394: { + if (consolidationDelay_ == null) { + ConsolidationDelay = new global::Google.Protobuf.WellKnownTypes.Duration(); + } + input.ReadMessage(ConsolidationDelay); + break; + } } } #endif @@ -38677,6 +42583,20 @@ public void MergeFrom(pb::CodedInputStream input) { input.ReadMessage(BootDisk); break; } + case 386: { + if (nodeDrainConfig_ == null) { + NodeDrainConfig = new global::Google.Cloud.Container.V1.NodePool.Types.NodeDrainConfig(); + } + input.ReadMessage(NodeDrainConfig); + break; + } + case 394: { + if (consolidationDelay_ == null) { + ConsolidationDelay = new global::Google.Protobuf.WellKnownTypes.Duration(); + } + input.ReadMessage(ConsolidationDelay); + break; + } } } } @@ -38702,7 +42622,7 @@ public sealed partial class SetNodePoolAutoscalingRequest : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[90]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[91]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -44360,7 +48280,7 @@ public sealed partial class CreateNodePoolRequest : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[95]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[96]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -46713,7 +50633,7 @@ public sealed partial class NodePool : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[96]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[97]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -46754,6 +50674,7 @@ public NodePool(NodePool other) : this() { etag_ = other.etag_; queuedProvisioning_ = other.queuedProvisioning_ != null ? other.queuedProvisioning_.Clone() : null; bestEffortProvisioning_ = other.bestEffortProvisioning_ != null ? other.bestEffortProvisioning_.Clone() : null; + nodeDrainConfig_ = other.nodeDrainConfig_ != null ? other.nodeDrainConfig_.Clone() : null; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } @@ -47103,6 +51024,21 @@ public string Etag { } } + /// Field number for the "node_drain_config" field. + public const int NodeDrainConfigFieldNumber = 116; + private global::Google.Cloud.Container.V1.NodePool.Types.NodeDrainConfig nodeDrainConfig_; + /// + /// Specifies the node drain configuration for this node pool. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.NodePool.Types.NodeDrainConfig NodeDrainConfig { + get { return nodeDrainConfig_; } + set { + nodeDrainConfig_ = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { @@ -47139,6 +51075,7 @@ public bool Equals(NodePool other) { if (Etag != other.Etag) return false; if (!object.Equals(QueuedProvisioning, other.QueuedProvisioning)) return false; if (!object.Equals(BestEffortProvisioning, other.BestEffortProvisioning)) return false; + if (!object.Equals(NodeDrainConfig, other.NodeDrainConfig)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -47167,6 +51104,7 @@ public override int GetHashCode() { if (Etag.Length != 0) hash ^= Etag.GetHashCode(); if (queuedProvisioning_ != null) hash ^= QueuedProvisioning.GetHashCode(); if (bestEffortProvisioning_ != null) hash ^= BestEffortProvisioning.GetHashCode(); + if (nodeDrainConfig_ != null) hash ^= NodeDrainConfig.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -47260,6 +51198,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(138, 7); output.WriteMessage(BestEffortProvisioning); } + if (nodeDrainConfig_ != null) { + output.WriteRawTag(162, 7); + output.WriteMessage(NodeDrainConfig); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -47345,6 +51287,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(138, 7); output.WriteMessage(BestEffortProvisioning); } + if (nodeDrainConfig_ != null) { + output.WriteRawTag(162, 7); + output.WriteMessage(NodeDrainConfig); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -47412,6 +51358,9 @@ public int CalculateSize() { if (bestEffortProvisioning_ != null) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(BestEffortProvisioning); } + if (nodeDrainConfig_ != null) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(NodeDrainConfig); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -47511,6 +51460,12 @@ public void MergeFrom(NodePool other) { } BestEffortProvisioning.MergeFrom(other.BestEffortProvisioning); } + if (other.nodeDrainConfig_ != null) { + if (nodeDrainConfig_ == null) { + NodeDrainConfig = new global::Google.Cloud.Container.V1.NodePool.Types.NodeDrainConfig(); + } + NodeDrainConfig.MergeFrom(other.NodeDrainConfig); + } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -47640,6 +51595,13 @@ public void MergeFrom(pb::CodedInputStream input) { input.ReadMessage(BestEffortProvisioning); break; } + case 930: { + if (nodeDrainConfig_ == null) { + NodeDrainConfig = new global::Google.Cloud.Container.V1.NodePool.Types.NodeDrainConfig(); + } + input.ReadMessage(NodeDrainConfig); + break; + } } } #endif @@ -47769,6 +51731,13 @@ public void MergeFrom(pb::CodedInputStream input) { input.ReadMessage(BestEffortProvisioning); break; } + case 930: { + if (nodeDrainConfig_ == null) { + NodeDrainConfig = new global::Google.Cloud.Container.V1.NodePool.Types.NodeDrainConfig(); + } + input.ReadMessage(NodeDrainConfig); + break; + } } } } @@ -49310,6 +53279,220 @@ public void MergeFrom(pb::CodedInputStream input) { } + /// + /// NodeDrainConfig contains the node drain related configurations for this + /// nodepool. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class NodeDrainConfig : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new NodeDrainConfig()); + private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.NodePool.Descriptor.NestedTypes[4]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NodeDrainConfig() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NodeDrainConfig(NodeDrainConfig other) : this() { + _hasBits0 = other._hasBits0; + respectPdbDuringNodePoolDeletion_ = other.respectPdbDuringNodePoolDeletion_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public NodeDrainConfig Clone() { + return new NodeDrainConfig(this); + } + + /// Field number for the "respect_pdb_during_node_pool_deletion" field. + public const int RespectPdbDuringNodePoolDeletionFieldNumber = 3; + private readonly static bool RespectPdbDuringNodePoolDeletionDefaultValue = false; + + private bool respectPdbDuringNodePoolDeletion_; + /// + /// Whether to respect PDB during node pool deletion. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool RespectPdbDuringNodePoolDeletion { + get { if ((_hasBits0 & 1) != 0) { return respectPdbDuringNodePoolDeletion_; } else { return RespectPdbDuringNodePoolDeletionDefaultValue; } } + set { + _hasBits0 |= 1; + respectPdbDuringNodePoolDeletion_ = value; + } + } + /// Gets whether the "respect_pdb_during_node_pool_deletion" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasRespectPdbDuringNodePoolDeletion { + get { return (_hasBits0 & 1) != 0; } + } + /// Clears the value of the "respect_pdb_during_node_pool_deletion" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearRespectPdbDuringNodePoolDeletion() { + _hasBits0 &= ~1; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as NodeDrainConfig); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(NodeDrainConfig other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (RespectPdbDuringNodePoolDeletion != other.RespectPdbDuringNodePoolDeletion) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (HasRespectPdbDuringNodePoolDeletion) hash ^= RespectPdbDuringNodePoolDeletion.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (HasRespectPdbDuringNodePoolDeletion) { + output.WriteRawTag(24); + output.WriteBool(RespectPdbDuringNodePoolDeletion); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (HasRespectPdbDuringNodePoolDeletion) { + output.WriteRawTag(24); + output.WriteBool(RespectPdbDuringNodePoolDeletion); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (HasRespectPdbDuringNodePoolDeletion) { + size += 1 + 1; + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(NodeDrainConfig other) { + if (other == null) { + return; + } + if (other.HasRespectPdbDuringNodePoolDeletion) { + RespectPdbDuringNodePoolDeletion = other.RespectPdbDuringNodePoolDeletion; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 24: { + RespectPdbDuringNodePoolDeletion = input.ReadBool(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 24: { + RespectPdbDuringNodePoolDeletion = input.ReadBool(); + break; + } + } + } + } + #endif + + } + } #endregion @@ -49334,7 +53517,7 @@ public sealed partial class NodeManagement : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[97]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[98]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -49624,7 +53807,7 @@ public sealed partial class BestEffortProvisioning : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[100]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[101]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -50353,7 +54536,7 @@ public sealed partial class MaintenanceWindow : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[101]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[102]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -50680,7 +54863,7 @@ public sealed partial class TimeWindow : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[102]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[103]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -51019,7 +55202,7 @@ public sealed partial class MaintenanceExclusionOptions : pb::IMessage /// An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how - /// this window reccurs. They go on for the span of time between the start and + /// this window recurs. They go on for the span of time between the start and /// end time. /// /// For example, to have something repeat every weekday, you'd use: @@ -51579,7 +55762,7 @@ public sealed partial class DailyMaintenanceWindow : pb::IMessageField number for the "autopilot_general_profile" field. + public const int AutopilotGeneralProfileFieldNumber = 14; + private global::Google.Cloud.Container.V1.ClusterAutoscaling.Types.AutopilotGeneralProfile autopilotGeneralProfile_ = global::Google.Cloud.Container.V1.ClusterAutoscaling.Types.AutopilotGeneralProfile.Unspecified; + /// + /// Autopilot general profile for the cluster, which defines the + /// configuration for the cluster. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.ClusterAutoscaling.Types.AutopilotGeneralProfile AutopilotGeneralProfile { + get { return autopilotGeneralProfile_; } + set { + autopilotGeneralProfile_ = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { @@ -53595,6 +57795,7 @@ public bool Equals(ClusterAutoscaling other) { if (!object.Equals(AutoprovisioningNodePoolDefaults, other.AutoprovisioningNodePoolDefaults)) return false; if(!autoprovisioningLocations_.Equals(other.autoprovisioningLocations_)) return false; if (!object.Equals(DefaultComputeClassConfig, other.DefaultComputeClassConfig)) return false; + if (AutopilotGeneralProfile != other.AutopilotGeneralProfile) return false; return Equals(_unknownFields, other._unknownFields); } @@ -53608,6 +57809,7 @@ public override int GetHashCode() { if (autoprovisioningNodePoolDefaults_ != null) hash ^= AutoprovisioningNodePoolDefaults.GetHashCode(); hash ^= autoprovisioningLocations_.GetHashCode(); if (defaultComputeClassConfig_ != null) hash ^= DefaultComputeClassConfig.GetHashCode(); + if (AutopilotGeneralProfile != global::Google.Cloud.Container.V1.ClusterAutoscaling.Types.AutopilotGeneralProfile.Unspecified) hash ^= AutopilotGeneralProfile.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -53644,6 +57846,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(74); output.WriteMessage(DefaultComputeClassConfig); } + if (AutopilotGeneralProfile != global::Google.Cloud.Container.V1.ClusterAutoscaling.Types.AutopilotGeneralProfile.Unspecified) { + output.WriteRawTag(112); + output.WriteEnum((int) AutopilotGeneralProfile); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -53672,6 +57878,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(74); output.WriteMessage(DefaultComputeClassConfig); } + if (AutopilotGeneralProfile != global::Google.Cloud.Container.V1.ClusterAutoscaling.Types.AutopilotGeneralProfile.Unspecified) { + output.WriteRawTag(112); + output.WriteEnum((int) AutopilotGeneralProfile); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -53696,6 +57906,9 @@ public int CalculateSize() { if (defaultComputeClassConfig_ != null) { size += 1 + pb::CodedOutputStream.ComputeMessageSize(DefaultComputeClassConfig); } + if (AutopilotGeneralProfile != global::Google.Cloud.Container.V1.ClusterAutoscaling.Types.AutopilotGeneralProfile.Unspecified) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) AutopilotGeneralProfile); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -53728,6 +57941,9 @@ public void MergeFrom(ClusterAutoscaling other) { } DefaultComputeClassConfig.MergeFrom(other.DefaultComputeClassConfig); } + if (other.AutopilotGeneralProfile != global::Google.Cloud.Container.V1.ClusterAutoscaling.Types.AutopilotGeneralProfile.Unspecified) { + AutopilotGeneralProfile = other.AutopilotGeneralProfile; + } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -53773,6 +57989,10 @@ public void MergeFrom(pb::CodedInputStream input) { input.ReadMessage(DefaultComputeClassConfig); break; } + case 112: { + AutopilotGeneralProfile = (global::Google.Cloud.Container.V1.ClusterAutoscaling.Types.AutopilotGeneralProfile) input.ReadEnum(); + break; + } } } #endif @@ -53818,6 +58038,10 @@ public void MergeFrom(pb::CodedInputStream input) { input.ReadMessage(DefaultComputeClassConfig); break; } + case 112: { + AutopilotGeneralProfile = (global::Google.Cloud.Container.V1.ClusterAutoscaling.Types.AutopilotGeneralProfile) input.ReadEnum(); + break; + } } } } @@ -53846,6 +58070,20 @@ public enum AutoscalingProfile { [pbr::OriginalName("BALANCED")] Balanced = 2, } + /// + /// Defines possible options for Autopilot general profile. + /// + public enum AutopilotGeneralProfile { + /// + /// Use default configuration. + /// + [pbr::OriginalName("AUTOPILOT_GENERAL_PROFILE_UNSPECIFIED")] Unspecified = 0, + /// + /// Avoid extra IP consumption. + /// + [pbr::OriginalName("NO_PERFORMANCE")] NoPerformance = 1, + } + } #endregion @@ -53871,7 +58109,7 @@ public sealed partial class AutoprovisioningNodePoolDefaults : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[113]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[114]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -54801,7 +59039,7 @@ public sealed partial class DefaultComputeClassConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[116]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[117]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -55873,7 +60111,7 @@ public sealed partial class SetLegacyAbacRequest : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[120]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[121]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -57311,7 +61549,7 @@ public sealed partial class GPUSharingConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[121]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[122]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -57591,7 +61829,7 @@ public sealed partial class GPUDriverInstallationConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[126]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[127]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -59142,7 +63380,7 @@ public sealed partial class NetworkConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[127]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[128]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -60362,7 +64600,7 @@ public sealed partial class GatewayAPIConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[128]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[129]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -60591,7 +64829,7 @@ public sealed partial class ServiceExternalIPsConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[133]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[134]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -62083,7 +66321,7 @@ public sealed partial class GetJSONWebKeysResponse : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[138]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[139]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -63365,7 +67603,7 @@ public sealed partial class CostManagementConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[142]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[143]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -64319,7 +68557,7 @@ public sealed partial class MaxPodsConstraint : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[143]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[144]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -64515,7 +68753,7 @@ public sealed partial class WorkloadIdentityConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[146]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[147]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -65121,7 +69359,7 @@ public sealed partial class DatabaseEncryption : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[151]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[152]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -67047,7 +71285,7 @@ public sealed partial class ResourceUsageExportConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[154]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[155]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -68139,7 +72377,7 @@ public sealed partial class ShieldedNodes : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[155]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[156]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -68335,7 +72573,7 @@ public sealed partial class VirtualNIC : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[156]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[157]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -68531,7 +72769,7 @@ public sealed partial class FastSocket : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[157]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[158]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -68709,6 +72947,241 @@ public void MergeFrom(pb::CodedInputStream input) { } + /// + /// GPUDirectConfig specifies the GPU direct strategy on the node pool. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class GPUDirectConfig : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new GPUDirectConfig()); + private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[159]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public GPUDirectConfig() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public GPUDirectConfig(GPUDirectConfig other) : this() { + _hasBits0 = other._hasBits0; + gpuDirectStrategy_ = other.gpuDirectStrategy_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public GPUDirectConfig Clone() { + return new GPUDirectConfig(this); + } + + /// Field number for the "gpu_direct_strategy" field. + public const int GpuDirectStrategyFieldNumber = 1; + private readonly static global::Google.Cloud.Container.V1.GPUDirectConfig.Types.GPUDirectStrategy GpuDirectStrategyDefaultValue = global::Google.Cloud.Container.V1.GPUDirectConfig.Types.GPUDirectStrategy.Unspecified; + + private global::Google.Cloud.Container.V1.GPUDirectConfig.Types.GPUDirectStrategy gpuDirectStrategy_; + /// + /// The type of GPU direct strategy to enable on the node pool. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.GPUDirectConfig.Types.GPUDirectStrategy GpuDirectStrategy { + get { if ((_hasBits0 & 1) != 0) { return gpuDirectStrategy_; } else { return GpuDirectStrategyDefaultValue; } } + set { + _hasBits0 |= 1; + gpuDirectStrategy_ = value; + } + } + /// Gets whether the "gpu_direct_strategy" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasGpuDirectStrategy { + get { return (_hasBits0 & 1) != 0; } + } + /// Clears the value of the "gpu_direct_strategy" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearGpuDirectStrategy() { + _hasBits0 &= ~1; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as GPUDirectConfig); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(GPUDirectConfig other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (GpuDirectStrategy != other.GpuDirectStrategy) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (HasGpuDirectStrategy) hash ^= GpuDirectStrategy.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (HasGpuDirectStrategy) { + output.WriteRawTag(8); + output.WriteEnum((int) GpuDirectStrategy); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (HasGpuDirectStrategy) { + output.WriteRawTag(8); + output.WriteEnum((int) GpuDirectStrategy); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (HasGpuDirectStrategy) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) GpuDirectStrategy); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(GPUDirectConfig other) { + if (other == null) { + return; + } + if (other.HasGpuDirectStrategy) { + GpuDirectStrategy = other.GpuDirectStrategy; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + GpuDirectStrategy = (global::Google.Cloud.Container.V1.GPUDirectConfig.Types.GPUDirectStrategy) input.ReadEnum(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + GpuDirectStrategy = (global::Google.Cloud.Container.V1.GPUDirectConfig.Types.GPUDirectStrategy) input.ReadEnum(); + break; + } + } + } + } + #endif + + #region Nested types + /// Container for nested types declared in the GPUDirectConfig message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// Option for GPU direct Strategies + /// + public enum GPUDirectStrategy { + /// + /// Default value. No GPU Direct strategy is enabled on the node. + /// + [pbr::OriginalName("GPU_DIRECT_STRATEGY_UNSPECIFIED")] Unspecified = 0, + /// + /// GPUDirect-RDMA on A3 Ultra, and A4 machine types + /// + [pbr::OriginalName("RDMA")] Rdma = 2, + } + + } + #endregion + + } + /// /// NotificationConfig is the configuration of notifications. /// @@ -68727,7 +73200,7 @@ public sealed partial class NotificationConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[159]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[161]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -69713,7 +74186,7 @@ public sealed partial class UpgradeEvent : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[160]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[162]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -70120,7 +74593,7 @@ public sealed partial class UpgradeInfoEvent : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[161]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[163]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -70152,6 +74625,7 @@ public UpgradeInfoEvent(UpgradeInfoEvent other) : this() { extendedSupportEndTime_ = other.extendedSupportEndTime_ != null ? other.extendedSupportEndTime_.Clone() : null; description_ = other.description_; eventType_ = other.eventType_; + disruptionEvent_ = other.disruptionEvent_ != null ? other.disruptionEvent_.Clone() : null; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } @@ -70342,6 +74816,22 @@ public string Description { } } + /// Field number for the "disruption_event" field. + public const int DisruptionEventFieldNumber = 14; + private global::Google.Cloud.Container.V1.DisruptionEvent disruptionEvent_; + /// + /// The information about the disruption event. This field is only populated + /// when event_type is DISRUPTION_EVENT. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.DisruptionEvent DisruptionEvent { + get { return disruptionEvent_; } + set { + disruptionEvent_ = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { @@ -70369,6 +74859,7 @@ public bool Equals(UpgradeInfoEvent other) { if (!object.Equals(ExtendedSupportEndTime, other.ExtendedSupportEndTime)) return false; if (Description != other.Description) return false; if (EventType != other.EventType) return false; + if (!object.Equals(DisruptionEvent, other.DisruptionEvent)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -70388,6 +74879,7 @@ public override int GetHashCode() { if (extendedSupportEndTime_ != null) hash ^= ExtendedSupportEndTime.GetHashCode(); if (Description.Length != 0) hash ^= Description.GetHashCode(); if (EventType != global::Google.Cloud.Container.V1.UpgradeInfoEvent.Types.EventType.Unspecified) hash ^= EventType.GetHashCode(); + if (disruptionEvent_ != null) hash ^= DisruptionEvent.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -70454,6 +74946,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(96); output.WriteEnum((int) EventType); } + if (disruptionEvent_ != null) { + output.WriteRawTag(114); + output.WriteMessage(DisruptionEvent); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -70512,6 +75008,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(96); output.WriteEnum((int) EventType); } + if (disruptionEvent_ != null) { + output.WriteRawTag(114); + output.WriteMessage(DisruptionEvent); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -70558,6 +75058,9 @@ public int CalculateSize() { if (EventType != global::Google.Cloud.Container.V1.UpgradeInfoEvent.Types.EventType.Unspecified) { size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) EventType); } + if (disruptionEvent_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(DisruptionEvent); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -70618,6 +75121,12 @@ public void MergeFrom(UpgradeInfoEvent other) { if (other.EventType != global::Google.Cloud.Container.V1.UpgradeInfoEvent.Types.EventType.Unspecified) { EventType = other.EventType; } + if (other.disruptionEvent_ != null) { + if (disruptionEvent_ == null) { + DisruptionEvent = new global::Google.Cloud.Container.V1.DisruptionEvent(); + } + DisruptionEvent.MergeFrom(other.DisruptionEvent); + } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -70693,6 +75202,13 @@ public void MergeFrom(pb::CodedInputStream input) { EventType = (global::Google.Cloud.Container.V1.UpgradeInfoEvent.Types.EventType) input.ReadEnum(); break; } + case 114: { + if (disruptionEvent_ == null) { + DisruptionEvent = new global::Google.Cloud.Container.V1.DisruptionEvent(); + } + input.ReadMessage(DisruptionEvent); + break; + } } } #endif @@ -70768,6 +75284,13 @@ public void MergeFrom(pb::CodedInputStream input) { EventType = (global::Google.Cloud.Container.V1.UpgradeInfoEvent.Types.EventType) input.ReadEnum(); break; } + case 114: { + if (disruptionEvent_ == null) { + DisruptionEvent = new global::Google.Cloud.Container.V1.DisruptionEvent(); + } + input.ReadMessage(DisruptionEvent); + break; + } } } } @@ -70827,6 +75350,594 @@ public enum EventType { /// UPGRADE_LIFECYCLE indicates the event is about the upgrade lifecycle. /// [pbr::OriginalName("UPGRADE_LIFECYCLE")] UpgradeLifecycle = 3, + /// + /// DISRUPTION_EVENT indicates the event is about the disruption. + /// + [pbr::OriginalName("DISRUPTION_EVENT")] DisruptionEvent = 4, + } + + } + #endregion + + } + + /// + /// DisruptionEvent is a notification sent to customers about the disruption + /// event of a resource. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class DisruptionEvent : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new DisruptionEvent()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[164]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public DisruptionEvent() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public DisruptionEvent(DisruptionEvent other) : this() { + disruptionType_ = other.disruptionType_; + pdbBlockedNode_ = other.pdbBlockedNode_; + pdbBlockedPod_ = other.pdbBlockedPod_.Clone(); + pdbViolationTimeout_ = other.pdbViolationTimeout_ != null ? other.pdbViolationTimeout_.Clone() : null; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public DisruptionEvent Clone() { + return new DisruptionEvent(this); + } + + /// Field number for the "disruption_type" field. + public const int DisruptionTypeFieldNumber = 1; + private global::Google.Cloud.Container.V1.DisruptionEvent.Types.DisruptionType disruptionType_ = global::Google.Cloud.Container.V1.DisruptionEvent.Types.DisruptionType.Unspecified; + /// + /// The type of the disruption event. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.DisruptionEvent.Types.DisruptionType DisruptionType { + get { return disruptionType_; } + set { + disruptionType_ = value; + } + } + + /// Field number for the "pdb_blocked_node" field. + public const int PdbBlockedNodeFieldNumber = 2; + private string pdbBlockedNode_ = ""; + /// + /// The node whose drain is blocked by PDB. This field is set for both + /// POD_PDB_VIOLATION and POD_NOT_ENOUGH_PDB event. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string PdbBlockedNode { + get { return pdbBlockedNode_; } + set { + pdbBlockedNode_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "pdb_blocked_pod" field. + public const int PdbBlockedPodFieldNumber = 3; + private static readonly pb::FieldCodec _repeated_pdbBlockedPod_codec + = pb::FieldCodec.ForMessage(26, global::Google.Cloud.Container.V1.DisruptionEvent.Types.PdbBlockedPod.Parser); + private readonly pbc::RepeatedField pdbBlockedPod_ = new pbc::RepeatedField(); + /// + /// The pods whose evictions are blocked by PDB. This field is set for + /// both POD_PDB_VIOLATION and POD_NOT_ENOUGH_PDB event. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField PdbBlockedPod { + get { return pdbBlockedPod_; } + } + + /// Field number for the "pdb_violation_timeout" field. + public const int PdbViolationTimeoutFieldNumber = 4; + private global::Google.Protobuf.WellKnownTypes.Duration pdbViolationTimeout_; + /// + /// The timeout in seconds for which the node drain is blocked by PDB. + /// After this timeout, pods are forcefully evicted. + /// This field is only populated when event_type is + /// POD_PDB_VIOLATION. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Protobuf.WellKnownTypes.Duration PdbViolationTimeout { + get { return pdbViolationTimeout_; } + set { + pdbViolationTimeout_ = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as DisruptionEvent); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(DisruptionEvent other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (DisruptionType != other.DisruptionType) return false; + if (PdbBlockedNode != other.PdbBlockedNode) return false; + if(!pdbBlockedPod_.Equals(other.pdbBlockedPod_)) return false; + if (!object.Equals(PdbViolationTimeout, other.PdbViolationTimeout)) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (DisruptionType != global::Google.Cloud.Container.V1.DisruptionEvent.Types.DisruptionType.Unspecified) hash ^= DisruptionType.GetHashCode(); + if (PdbBlockedNode.Length != 0) hash ^= PdbBlockedNode.GetHashCode(); + hash ^= pdbBlockedPod_.GetHashCode(); + if (pdbViolationTimeout_ != null) hash ^= PdbViolationTimeout.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (DisruptionType != global::Google.Cloud.Container.V1.DisruptionEvent.Types.DisruptionType.Unspecified) { + output.WriteRawTag(8); + output.WriteEnum((int) DisruptionType); + } + if (PdbBlockedNode.Length != 0) { + output.WriteRawTag(18); + output.WriteString(PdbBlockedNode); + } + pdbBlockedPod_.WriteTo(output, _repeated_pdbBlockedPod_codec); + if (pdbViolationTimeout_ != null) { + output.WriteRawTag(34); + output.WriteMessage(PdbViolationTimeout); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (DisruptionType != global::Google.Cloud.Container.V1.DisruptionEvent.Types.DisruptionType.Unspecified) { + output.WriteRawTag(8); + output.WriteEnum((int) DisruptionType); + } + if (PdbBlockedNode.Length != 0) { + output.WriteRawTag(18); + output.WriteString(PdbBlockedNode); + } + pdbBlockedPod_.WriteTo(ref output, _repeated_pdbBlockedPod_codec); + if (pdbViolationTimeout_ != null) { + output.WriteRawTag(34); + output.WriteMessage(PdbViolationTimeout); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (DisruptionType != global::Google.Cloud.Container.V1.DisruptionEvent.Types.DisruptionType.Unspecified) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) DisruptionType); + } + if (PdbBlockedNode.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(PdbBlockedNode); + } + size += pdbBlockedPod_.CalculateSize(_repeated_pdbBlockedPod_codec); + if (pdbViolationTimeout_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(PdbViolationTimeout); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(DisruptionEvent other) { + if (other == null) { + return; + } + if (other.DisruptionType != global::Google.Cloud.Container.V1.DisruptionEvent.Types.DisruptionType.Unspecified) { + DisruptionType = other.DisruptionType; + } + if (other.PdbBlockedNode.Length != 0) { + PdbBlockedNode = other.PdbBlockedNode; + } + pdbBlockedPod_.Add(other.pdbBlockedPod_); + if (other.pdbViolationTimeout_ != null) { + if (pdbViolationTimeout_ == null) { + PdbViolationTimeout = new global::Google.Protobuf.WellKnownTypes.Duration(); + } + PdbViolationTimeout.MergeFrom(other.PdbViolationTimeout); + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + DisruptionType = (global::Google.Cloud.Container.V1.DisruptionEvent.Types.DisruptionType) input.ReadEnum(); + break; + } + case 18: { + PdbBlockedNode = input.ReadString(); + break; + } + case 26: { + pdbBlockedPod_.AddEntriesFrom(input, _repeated_pdbBlockedPod_codec); + break; + } + case 34: { + if (pdbViolationTimeout_ == null) { + PdbViolationTimeout = new global::Google.Protobuf.WellKnownTypes.Duration(); + } + input.ReadMessage(PdbViolationTimeout); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + DisruptionType = (global::Google.Cloud.Container.V1.DisruptionEvent.Types.DisruptionType) input.ReadEnum(); + break; + } + case 18: { + PdbBlockedNode = input.ReadString(); + break; + } + case 26: { + pdbBlockedPod_.AddEntriesFrom(ref input, _repeated_pdbBlockedPod_codec); + break; + } + case 34: { + if (pdbViolationTimeout_ == null) { + PdbViolationTimeout = new global::Google.Protobuf.WellKnownTypes.Duration(); + } + input.ReadMessage(PdbViolationTimeout); + break; + } + } + } + } + #endif + + #region Nested types + /// Container for nested types declared in the DisruptionEvent message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// The type of the disruption event. + /// + public enum DisruptionType { + /// + /// DISRUPTION_TYPE_UNSPECIFIED indicates the disruption type is unspecified. + /// + [pbr::OriginalName("DISRUPTION_TYPE_UNSPECIFIED")] Unspecified = 0, + /// + /// POD_NOT_ENOUGH_PDB indicates there are still running pods + /// on the node during node drain because their evictions are blocked by PDB. + /// + [pbr::OriginalName("POD_NOT_ENOUGH_PDB")] PodNotEnoughPdb = 1, + /// + /// POD_PDB_VIOLATION indicates that there are force pod + /// evictions during node drain which violate the PDB. + /// + [pbr::OriginalName("POD_PDB_VIOLATION")] PodPdbViolation = 2, + } + + /// + /// The namespace/name of the pod whose eviction is blocked by PDB. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class PdbBlockedPod : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PdbBlockedPod()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.DisruptionEvent.Descriptor.NestedTypes[0]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public PdbBlockedPod() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public PdbBlockedPod(PdbBlockedPod other) : this() { + namespace_ = other.namespace_; + name_ = other.name_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public PdbBlockedPod Clone() { + return new PdbBlockedPod(this); + } + + /// Field number for the "namespace" field. + public const int NamespaceFieldNumber = 1; + private string namespace_ = ""; + /// + /// The namespace of the pod. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string Namespace { + get { return namespace_; } + set { + namespace_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "name" field. + public const int NameFieldNumber = 2; + private string name_ = ""; + /// + /// The name of the pod. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string Name { + get { return name_; } + set { + name_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as PdbBlockedPod); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(PdbBlockedPod other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (Namespace != other.Namespace) return false; + if (Name != other.Name) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (Namespace.Length != 0) hash ^= Namespace.GetHashCode(); + if (Name.Length != 0) hash ^= Name.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (Namespace.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Namespace); + } + if (Name.Length != 0) { + output.WriteRawTag(18); + output.WriteString(Name); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (Namespace.Length != 0) { + output.WriteRawTag(10); + output.WriteString(Namespace); + } + if (Name.Length != 0) { + output.WriteRawTag(18); + output.WriteString(Name); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (Namespace.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Namespace); + } + if (Name.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Name); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(PdbBlockedPod other) { + if (other == null) { + return; + } + if (other.Namespace.Length != 0) { + Namespace = other.Namespace; + } + if (other.Name.Length != 0) { + Name = other.Name; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + Namespace = input.ReadString(); + break; + } + case 18: { + Name = input.ReadString(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + Namespace = input.ReadString(); + break; + } + case 18: { + Name = input.ReadString(); + break; + } + } + } + } + #endif + } } @@ -70853,7 +75964,7 @@ public sealed partial class UpgradeAvailableEvent : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[164]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[167]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -72037,7 +77148,7 @@ public sealed partial class PrivilegedAdmissionConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[167]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[170]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -72706,7 +77817,7 @@ public sealed partial class LoggingComponentConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[170]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[173]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -73445,7 +78556,7 @@ public sealed partial class AdvancedDatapathObservabilityConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[178]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[181]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -75364,7 +80475,7 @@ public sealed partial class Fleet : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[179]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[182]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -75708,7 +80819,7 @@ public sealed partial class ControlPlaneEndpointsConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[184]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[187]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -77777,7 +82888,7 @@ public sealed partial class SecretManagerConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[186]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[189]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -78627,7 +83738,7 @@ public sealed partial class SecondaryBootDisk : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[187]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[190]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -78888,7 +83999,7 @@ public sealed partial class SecondaryBootDiskUpdateStrategy : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[191]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[194]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -80284,7 +85395,7 @@ public sealed partial class FetchNodePoolUpgradeInfoRequest : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[195]; } + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[198]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -81484,6 +86595,247 @@ public enum NetworkTier { } + /// + /// ManagedOpenTelemetryConfig is the configuration for the GKE Managed + /// OpenTelemetry pipeline. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class ManagedOpenTelemetryConfig : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ManagedOpenTelemetryConfig()); + private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.Container.V1.ClusterServiceReflection.Descriptor.MessageTypes[199]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public ManagedOpenTelemetryConfig() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public ManagedOpenTelemetryConfig(ManagedOpenTelemetryConfig other) : this() { + _hasBits0 = other._hasBits0; + scope_ = other.scope_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public ManagedOpenTelemetryConfig Clone() { + return new ManagedOpenTelemetryConfig(this); + } + + /// Field number for the "scope" field. + public const int ScopeFieldNumber = 1; + private readonly static global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig.Types.Scope ScopeDefaultValue = global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig.Types.Scope.Unspecified; + + private global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig.Types.Scope scope_; + /// + /// Scope of the Managed OpenTelemetry pipeline. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig.Types.Scope Scope { + get { if ((_hasBits0 & 1) != 0) { return scope_; } else { return ScopeDefaultValue; } } + set { + _hasBits0 |= 1; + scope_ = value; + } + } + /// Gets whether the "scope" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasScope { + get { return (_hasBits0 & 1) != 0; } + } + /// Clears the value of the "scope" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearScope() { + _hasBits0 &= ~1; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as ManagedOpenTelemetryConfig); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(ManagedOpenTelemetryConfig other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (Scope != other.Scope) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (HasScope) hash ^= Scope.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (HasScope) { + output.WriteRawTag(8); + output.WriteEnum((int) Scope); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (HasScope) { + output.WriteRawTag(8); + output.WriteEnum((int) Scope); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (HasScope) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Scope); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(ManagedOpenTelemetryConfig other) { + if (other == null) { + return; + } + if (other.HasScope) { + Scope = other.Scope; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + Scope = (global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig.Types.Scope) input.ReadEnum(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + Scope = (global::Google.Cloud.Container.V1.ManagedOpenTelemetryConfig.Types.Scope) input.ReadEnum(); + break; + } + } + } + } + #endif + + #region Nested types + /// Container for nested types declared in the ManagedOpenTelemetryConfig message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// Scope is the scope of the Managed OpenTelemetry pipeline. + /// + public enum Scope { + /// + /// SCOPE_UNSPECIFIED is when the scope is not set. + /// + [pbr::OriginalName("SCOPE_UNSPECIFIED")] Unspecified = 0, + /// + /// NONE is used to disable the Managed OpenTelemetry pipeline. + /// + [pbr::OriginalName("NONE")] None = 1, + /// + /// COLLECTION_AND_INSTRUMENTATION_COMPONENTS is used to enable the Managed + /// OpenTelemetry pipeline for collection and instrumentation components. + /// + [pbr::OriginalName("COLLECTION_AND_INSTRUMENTATION_COMPONENTS")] CollectionAndInstrumentationComponents = 2, + } + + } + #endregion + + } + #endregion } diff --git a/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1/ClusterServiceGrpc.g.cs b/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1/ClusterServiceGrpc.g.cs index 1d1095e6bc85..5ba603cbec92 100644 --- a/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1/ClusterServiceGrpc.g.cs +++ b/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1/ClusterServiceGrpc.g.cs @@ -3,7 +3,7 @@ // source: google/container/v1/cluster_service.proto // // Original file comments: -// Copyright 2025 Google LLC +// Copyright 2026 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1/ClusterServiceResourceNames.g.cs b/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1/ClusterServiceResourceNames.g.cs index 789f421284db..d40dd50841a8 100644 --- a/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1/ClusterServiceResourceNames.g.cs +++ b/apis/Google.Cloud.Container.V1/Google.Cloud.Container.V1/ClusterServiceResourceNames.g.cs @@ -780,6 +780,261 @@ public override string ToString() public static bool operator !=(CryptoKeyVersionName a, CryptoKeyVersionName b) => !(a == b); } + /// Resource name for the Subnetwork resource. + public sealed partial class SubnetworkName : gax::IResourceName, sys::IEquatable + { + /// The possible contents of . + public enum ResourceNameType + { + /// An unparsed resource name. + Unparsed = 0, + + /// + /// A resource name with pattern projects/{project}/regions/{region}/subnetworks/{subnetwork}. + /// + ProjectRegionSubnetwork = 1, + } + + private static gax::PathTemplate s_projectRegionSubnetwork = new gax::PathTemplate("projects/{project}/regions/{region}/subnetworks/{subnetwork}"); + + /// Creates a containing an unparsed resource name. + /// The unparsed resource name. Must not be null. + /// + /// A new instance of containing the provided + /// . + /// + public static SubnetworkName FromUnparsed(gax::UnparsedResourceName unparsedResourceName) => + new SubnetworkName(ResourceNameType.Unparsed, gax::GaxPreconditions.CheckNotNull(unparsedResourceName, nameof(unparsedResourceName))); + + /// + /// Creates a with the pattern + /// projects/{project}/regions/{region}/subnetworks/{subnetwork}. + /// + /// The Project ID. Must not be null or empty. + /// The Region ID. Must not be null or empty. + /// The Subnetwork ID. Must not be null or empty. + /// A new instance of constructed from the provided ids. + public static SubnetworkName FromProjectRegionSubnetwork(string projectId, string regionId, string subnetworkId) => + new SubnetworkName(ResourceNameType.ProjectRegionSubnetwork, projectId: gax::GaxPreconditions.CheckNotNullOrEmpty(projectId, nameof(projectId)), regionId: gax::GaxPreconditions.CheckNotNullOrEmpty(regionId, nameof(regionId)), subnetworkId: gax::GaxPreconditions.CheckNotNullOrEmpty(subnetworkId, nameof(subnetworkId))); + + /// + /// Formats the IDs into the string representation of this with pattern + /// projects/{project}/regions/{region}/subnetworks/{subnetwork}. + /// + /// The Project ID. Must not be null or empty. + /// The Region ID. Must not be null or empty. + /// The Subnetwork ID. Must not be null or empty. + /// + /// The string representation of this with pattern + /// projects/{project}/regions/{region}/subnetworks/{subnetwork}. + /// + public static string Format(string projectId, string regionId, string subnetworkId) => + FormatProjectRegionSubnetwork(projectId, regionId, subnetworkId); + + /// + /// Formats the IDs into the string representation of this with pattern + /// projects/{project}/regions/{region}/subnetworks/{subnetwork}. + /// + /// The Project ID. Must not be null or empty. + /// The Region ID. Must not be null or empty. + /// The Subnetwork ID. Must not be null or empty. + /// + /// The string representation of this with pattern + /// projects/{project}/regions/{region}/subnetworks/{subnetwork}. + /// + public static string FormatProjectRegionSubnetwork(string projectId, string regionId, string subnetworkId) => + s_projectRegionSubnetwork.Expand(gax::GaxPreconditions.CheckNotNullOrEmpty(projectId, nameof(projectId)), gax::GaxPreconditions.CheckNotNullOrEmpty(regionId, nameof(regionId)), gax::GaxPreconditions.CheckNotNullOrEmpty(subnetworkId, nameof(subnetworkId))); + + /// Parses the given resource name string into a new instance. + /// + /// To parse successfully, the resource name must be formatted as one of the following: + /// + /// projects/{project}/regions/{region}/subnetworks/{subnetwork} + /// + /// + /// The resource name in string form. Must not be null. + /// The parsed if successful. + public static SubnetworkName Parse(string subnetworkName) => Parse(subnetworkName, false); + + /// + /// Parses the given resource name string into a new instance; optionally allowing + /// an unparseable resource name. + /// + /// + /// To parse successfully, the resource name must be formatted as one of the following: + /// + /// projects/{project}/regions/{region}/subnetworks/{subnetwork} + /// + /// Or may be in any format if is true. + /// + /// The resource name in string form. Must not be null. + /// + /// If true will successfully store an unparseable resource name into the + /// property; otherwise will throw an if an unparseable resource name is + /// specified. + /// + /// The parsed if successful. + public static SubnetworkName Parse(string subnetworkName, bool allowUnparsed) => + TryParse(subnetworkName, allowUnparsed, out SubnetworkName result) ? result : throw new sys::ArgumentException("The given resource-name matches no pattern."); + + /// + /// Tries to parse the given resource name string into a new instance. + /// + /// + /// To parse successfully, the resource name must be formatted as one of the following: + /// + /// projects/{project}/regions/{region}/subnetworks/{subnetwork} + /// + /// + /// The resource name in string form. Must not be null. + /// + /// When this method returns, the parsed , or null if parsing failed. + /// + /// true if the name was parsed successfully; false otherwise. + public static bool TryParse(string subnetworkName, out SubnetworkName result) => + TryParse(subnetworkName, false, out result); + + /// + /// Tries to parse the given resource name string into a new instance; optionally + /// allowing an unparseable resource name. + /// + /// + /// To parse successfully, the resource name must be formatted as one of the following: + /// + /// projects/{project}/regions/{region}/subnetworks/{subnetwork} + /// + /// Or may be in any format if is true. + /// + /// The resource name in string form. Must not be null. + /// + /// If true will successfully store an unparseable resource name into the + /// property; otherwise will throw an if an unparseable resource name is + /// specified. + /// + /// + /// When this method returns, the parsed , or null if parsing failed. + /// + /// true if the name was parsed successfully; false otherwise. + public static bool TryParse(string subnetworkName, bool allowUnparsed, out SubnetworkName result) + { + gax::GaxPreconditions.CheckNotNull(subnetworkName, nameof(subnetworkName)); + gax::TemplatedResourceName resourceName; + if (s_projectRegionSubnetwork.TryParseName(subnetworkName, out resourceName)) + { + result = FromProjectRegionSubnetwork(resourceName[0], resourceName[1], resourceName[2]); + return true; + } + if (allowUnparsed) + { + if (gax::UnparsedResourceName.TryParse(subnetworkName, out gax::UnparsedResourceName unparsedResourceName)) + { + result = FromUnparsed(unparsedResourceName); + return true; + } + } + result = null; + return false; + } + + private SubnetworkName(ResourceNameType type, gax::UnparsedResourceName unparsedResourceName = null, string projectId = null, string regionId = null, string subnetworkId = null) + { + Type = type; + UnparsedResource = unparsedResourceName; + ProjectId = projectId; + RegionId = regionId; + SubnetworkId = subnetworkId; + } + + /// + /// Constructs a new instance of a class from the component parts of pattern + /// projects/{project}/regions/{region}/subnetworks/{subnetwork} + /// + /// The Project ID. Must not be null or empty. + /// The Region ID. Must not be null or empty. + /// The Subnetwork ID. Must not be null or empty. + public SubnetworkName(string projectId, string regionId, string subnetworkId) : this(ResourceNameType.ProjectRegionSubnetwork, projectId: gax::GaxPreconditions.CheckNotNullOrEmpty(projectId, nameof(projectId)), regionId: gax::GaxPreconditions.CheckNotNullOrEmpty(regionId, nameof(regionId)), subnetworkId: gax::GaxPreconditions.CheckNotNullOrEmpty(subnetworkId, nameof(subnetworkId))) + { + } + + /// The of the contained resource name. + public ResourceNameType Type { get; } + + /// + /// The contained . Only non-null if this instance contains an + /// unparsed resource name. + /// + public gax::UnparsedResourceName UnparsedResource { get; } + + /// + /// The Project ID. Will not be null, unless this instance contains an unparsed resource name. + /// + public string ProjectId { get; } + + /// + /// The Region ID. Will not be null, unless this instance contains an unparsed resource name. + /// + public string RegionId { get; } + + /// + /// The Subnetwork ID. Will not be null, unless this instance contains an unparsed resource name. + /// + public string SubnetworkId { get; } + + /// Whether this instance contains a resource name with a known pattern. + public bool IsKnownPattern => Type != ResourceNameType.Unparsed; + + /// The string representation of the resource name. + /// The string representation of the resource name. + public override string ToString() + { + switch (Type) + { + case ResourceNameType.Unparsed: return UnparsedResource.ToString(); + case ResourceNameType.ProjectRegionSubnetwork: return s_projectRegionSubnetwork.Expand(ProjectId, RegionId, SubnetworkId); + default: throw new sys::InvalidOperationException("Unrecognized resource-type."); + } + } + + /// Returns a hash code for this resource name. + public override int GetHashCode() => ToString().GetHashCode(); + + /// + public override bool Equals(object obj) => Equals(obj as SubnetworkName); + + /// + public bool Equals(SubnetworkName other) => ToString() == other?.ToString(); + + /// Determines whether two specified resource names have the same value. + /// The first resource name to compare, or null. + /// The second resource name to compare, or null. + /// + /// true if the value of is the same as the value of ; otherwise, + /// false. + /// + public static bool operator ==(SubnetworkName a, SubnetworkName b) => ReferenceEquals(a, b) || (a?.Equals(b) ?? false); + + /// Determines whether two specified resource names have different values. + /// The first resource name to compare, or null. + /// The second resource name to compare, or null. + /// + /// true if the value of is different from the value of ; otherwise, + /// false. + /// + public static bool operator !=(SubnetworkName a, SubnetworkName b) => !(a == b); + } + + public partial class NodeNetworkConfig + { + /// + /// -typed view over the resource name property. + /// + public SubnetworkName SubnetworkAsSubnetworkName + { + get => string.IsNullOrEmpty(Subnetwork) ? null : SubnetworkName.Parse(Subnetwork, allowUnparsed: true); + set => Subnetwork = value?.ToString() ?? ""; + } + } + public partial class UserManagedKeysConfig { /// diff --git a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/ConnectivityTest.g.cs b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/ConnectivityTest.g.cs index 9dee255d1af9..db71b102d3d0 100644 --- a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/ConnectivityTest.g.cs +++ b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/ConnectivityTest.g.cs @@ -50,7 +50,7 @@ static ConnectivityTestReflection() { "IAEoCBotCgtMYWJlbHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiAB", "KAk6AjgBOnTqQXEKMW5ldHdvcmttYW5hZ2VtZW50Lmdvb2dsZWFwaXMuY29t", "L0Nvbm5lY3Rpdml0eVRlc3QSPHByb2plY3RzL3twcm9qZWN0fS9sb2NhdGlv", - "bnMvZ2xvYmFsL2Nvbm5lY3Rpdml0eVRlc3RzL3t0ZXN0fSLxCQoIRW5kcG9p", + "bnMvZ2xvYmFsL2Nvbm5lY3Rpdml0eVRlc3RzL3t0ZXN0fSKQCgoIRW5kcG9p", "bnQSEgoKaXBfYWRkcmVzcxgBIAEoCRIMCgRwb3J0GAIgASgFEhAKCGluc3Rh", "bmNlGAMgASgJEhcKD2ZvcndhcmRpbmdfcnVsZRgNIAEoCRJqChZmb3J3YXJk", "aW5nX3J1bGVfdGFyZ2V0GA4gASgOMkAuZ29vZ2xlLmNsb3VkLm5ldHdvcmtt", @@ -60,78 +60,79 @@ static ConnectivityTestReflection() { "d29ya21hbmFnZW1lbnQudjEuTG9hZEJhbGFuY2VyVHlwZUID4EEDSAKIAQES", "GgoSZ2tlX21hc3Rlcl9jbHVzdGVyGAcgASgJEgwKBGZxZG4YEyABKAkSGgoS", "Y2xvdWRfc3FsX2luc3RhbmNlGAggASgJEhYKDnJlZGlzX2luc3RhbmNlGBEg", - "ASgJEhUKDXJlZGlzX2NsdXN0ZXIYEiABKAkSWQoOY2xvdWRfZnVuY3Rpb24Y", - "CiABKAsyQS5nb29nbGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuRW5k", - "cG9pbnQuQ2xvdWRGdW5jdGlvbkVuZHBvaW50EmAKEmFwcF9lbmdpbmVfdmVy", - "c2lvbhgLIAEoCzJELmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52", - "MS5FbmRwb2ludC5BcHBFbmdpbmVWZXJzaW9uRW5kcG9pbnQSYAoSY2xvdWRf", - "cnVuX3JldmlzaW9uGAwgASgLMkQuZ29vZ2xlLmNsb3VkLm5ldHdvcmttYW5h", - "Z2VtZW50LnYxLkVuZHBvaW50LkNsb3VkUnVuUmV2aXNpb25FbmRwb2ludBIP", - "CgduZXR3b3JrGAQgASgJEk0KDG5ldHdvcmtfdHlwZRgFIAEoDjI3Lmdvb2ds", - "ZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52MS5FbmRwb2ludC5OZXR3b3Jr", - "VHlwZRISCgpwcm9qZWN0X2lkGAYgASgJGiQKFUNsb3VkRnVuY3Rpb25FbmRw", - "b2ludBILCgN1cmkYASABKAkaJwoYQXBwRW5naW5lVmVyc2lvbkVuZHBvaW50", - "EgsKA3VyaRgBIAEoCRpBChhDbG91ZFJ1blJldmlzaW9uRW5kcG9pbnQSCwoD", - "dXJpGAEgASgJEhgKC3NlcnZpY2VfdXJpGAIgASgJQgPgQQMiUQoLTmV0d29y", - "a1R5cGUSHAoYTkVUV09SS19UWVBFX1VOU1BFQ0lGSUVEEAASDwoLR0NQX05F", - "VFdPUksQARITCg9OT05fR0NQX05FVFdPUksQAiJ5ChRGb3J3YXJkaW5nUnVs", - "ZVRhcmdldBImCiJGT1JXQVJESU5HX1JVTEVfVEFSR0VUX1VOU1BFQ0lGSUVE", - "EAASDAoISU5TVEFOQ0UQARIRCg1MT0FEX0JBTEFOQ0VSEAISDwoLVlBOX0dB", - "VEVXQVkQAxIHCgNQU0MQBEIZChdfZm9yd2FyZGluZ19ydWxlX3RhcmdldEIT", - "ChFfbG9hZF9iYWxhbmNlcl9pZEIVChNfbG9hZF9iYWxhbmNlcl90eXBlItUC", - "ChNSZWFjaGFiaWxpdHlEZXRhaWxzEk0KBnJlc3VsdBgBIAEoDjI9Lmdvb2ds", - "ZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52MS5SZWFjaGFiaWxpdHlEZXRh", - "aWxzLlJlc3VsdBIvCgt2ZXJpZnlfdGltZRgCIAEoCzIaLmdvb2dsZS5wcm90", + "ASgJEhUKDXJlZGlzX2NsdXN0ZXIYEiABKAkSDwoHZ2tlX3BvZBgVIAEoCRJZ", + "Cg5jbG91ZF9mdW5jdGlvbhgKIAEoCzJBLmdvb2dsZS5jbG91ZC5uZXR3b3Jr", + "bWFuYWdlbWVudC52MS5FbmRwb2ludC5DbG91ZEZ1bmN0aW9uRW5kcG9pbnQS", + "YAoSYXBwX2VuZ2luZV92ZXJzaW9uGAsgASgLMkQuZ29vZ2xlLmNsb3VkLm5l", + "dHdvcmttYW5hZ2VtZW50LnYxLkVuZHBvaW50LkFwcEVuZ2luZVZlcnNpb25F", + "bmRwb2ludBJgChJjbG91ZF9ydW5fcmV2aXNpb24YDCABKAsyRC5nb29nbGUu", + "Y2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuRW5kcG9pbnQuQ2xvdWRSdW5S", + "ZXZpc2lvbkVuZHBvaW50Eg8KB25ldHdvcmsYBCABKAkSTQoMbmV0d29ya190", + "eXBlGAUgASgOMjcuZ29vZ2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYx", + "LkVuZHBvaW50Lk5ldHdvcmtUeXBlEhIKCnByb2plY3RfaWQYBiABKAkaJAoV", + "Q2xvdWRGdW5jdGlvbkVuZHBvaW50EgsKA3VyaRgBIAEoCRonChhBcHBFbmdp", + "bmVWZXJzaW9uRW5kcG9pbnQSCwoDdXJpGAEgASgJGkEKGENsb3VkUnVuUmV2", + "aXNpb25FbmRwb2ludBILCgN1cmkYASABKAkSGAoLc2VydmljZV91cmkYAiAB", + "KAlCA+BBAyJfCgtOZXR3b3JrVHlwZRIcChhORVRXT1JLX1RZUEVfVU5TUEVD", + "SUZJRUQQABIPCgtHQ1BfTkVUV09SSxABEhMKD05PTl9HQ1BfTkVUV09SSxAC", + "EgwKCElOVEVSTkVUEAMieQoURm9yd2FyZGluZ1J1bGVUYXJnZXQSJgoiRk9S", + "V0FSRElOR19SVUxFX1RBUkdFVF9VTlNQRUNJRklFRBAAEgwKCElOU1RBTkNF", + "EAESEQoNTE9BRF9CQUxBTkNFUhACEg8KC1ZQTl9HQVRFV0FZEAMSBwoDUFND", + "EARCGQoXX2ZvcndhcmRpbmdfcnVsZV90YXJnZXRCEwoRX2xvYWRfYmFsYW5j", + "ZXJfaWRCFQoTX2xvYWRfYmFsYW5jZXJfdHlwZSLVAgoTUmVhY2hhYmlsaXR5", + "RGV0YWlscxJNCgZyZXN1bHQYASABKA4yPS5nb29nbGUuY2xvdWQubmV0d29y", + "a21hbmFnZW1lbnQudjEuUmVhY2hhYmlsaXR5RGV0YWlscy5SZXN1bHQSLwoL", + "dmVyaWZ5X3RpbWUYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1w", + "EiEKBWVycm9yGAMgASgLMhIuZ29vZ2xlLnJwYy5TdGF0dXMSOAoGdHJhY2Vz", + "GAUgAygLMiguZ29vZ2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLlRy", + "YWNlImEKBlJlc3VsdBIWChJSRVNVTFRfVU5TUEVDSUZJRUQQABINCglSRUFD", + "SEFCTEUQARIPCgtVTlJFQUNIQUJMRRACEg0KCUFNQklHVU9VUxAEEhAKDFVO", + "REVURVJNSU5FRBAFIjwKEUxhdGVuY3lQZXJjZW50aWxlEg8KB3BlcmNlbnQY", + "ASABKAUSFgoObGF0ZW5jeV9taWNyb3MYAiABKAMiaAoTTGF0ZW5jeURpc3Ry", + "aWJ1dGlvbhJRChNsYXRlbmN5X3BlcmNlbnRpbGVzGAEgAygLMjQuZ29vZ2xl", + "LmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLkxhdGVuY3lQZXJjZW50aWxl", + "IswKCg5Qcm9iaW5nRGV0YWlscxJPCgZyZXN1bHQYASABKA4yPy5nb29nbGUu", + "Y2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuUHJvYmluZ0RldGFpbHMuUHJv", + "YmluZ1Jlc3VsdBIvCgt2ZXJpZnlfdGltZRgCIAEoCzIaLmdvb2dsZS5wcm90", "b2J1Zi5UaW1lc3RhbXASIQoFZXJyb3IYAyABKAsyEi5nb29nbGUucnBjLlN0", - "YXR1cxI4CgZ0cmFjZXMYBSADKAsyKC5nb29nbGUuY2xvdWQubmV0d29ya21h", - "bmFnZW1lbnQudjEuVHJhY2UiYQoGUmVzdWx0EhYKElJFU1VMVF9VTlNQRUNJ", - "RklFRBAAEg0KCVJFQUNIQUJMRRABEg8KC1VOUkVBQ0hBQkxFEAISDQoJQU1C", - "SUdVT1VTEAQSEAoMVU5ERVRFUk1JTkVEEAUiPAoRTGF0ZW5jeVBlcmNlbnRp", - "bGUSDwoHcGVyY2VudBgBIAEoBRIWCg5sYXRlbmN5X21pY3JvcxgCIAEoAyJo", - "ChNMYXRlbmN5RGlzdHJpYnV0aW9uElEKE2xhdGVuY3lfcGVyY2VudGlsZXMY", - "ASADKAsyNC5nb29nbGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuTGF0", - "ZW5jeVBlcmNlbnRpbGUizAoKDlByb2JpbmdEZXRhaWxzEk8KBnJlc3VsdBgB", - "IAEoDjI/Lmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52MS5Qcm9i", - "aW5nRGV0YWlscy5Qcm9iaW5nUmVzdWx0Ei8KC3ZlcmlmeV90aW1lGAIgASgL", - "MhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIhCgVlcnJvchgDIAEoCzIS", - "Lmdvb2dsZS5ycGMuU3RhdHVzElgKC2Fib3J0X2NhdXNlGAQgASgOMkMuZ29v", - "Z2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLlByb2JpbmdEZXRhaWxz", - "LlByb2JpbmdBYm9ydENhdXNlEhgKEHNlbnRfcHJvYmVfY291bnQYBSABKAUS", - "HgoWc3VjY2Vzc2Z1bF9wcm9iZV9jb3VudBgGIAEoBRJGCg1lbmRwb2ludF9p", - "bmZvGAcgASgLMi8uZ29vZ2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYx", - "LkVuZHBvaW50SW5mbxJPCg9wcm9iaW5nX2xhdGVuY3kYCCABKAsyNi5nb29n", + "YXR1cxJYCgthYm9ydF9jYXVzZRgEIAEoDjJDLmdvb2dsZS5jbG91ZC5uZXR3", + "b3JrbWFuYWdlbWVudC52MS5Qcm9iaW5nRGV0YWlscy5Qcm9iaW5nQWJvcnRD", + "YXVzZRIYChBzZW50X3Byb2JlX2NvdW50GAUgASgFEh4KFnN1Y2Nlc3NmdWxf", + "cHJvYmVfY291bnQYBiABKAUSRgoNZW5kcG9pbnRfaW5mbxgHIAEoCzIvLmdv", + "b2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52MS5FbmRwb2ludEluZm8S", + "TwoPcHJvYmluZ19sYXRlbmN5GAggASgLMjYuZ29vZ2xlLmNsb3VkLm5ldHdv", + "cmttYW5hZ2VtZW50LnYxLkxhdGVuY3lEaXN0cmlidXRpb24SYwobZGVzdGlu", + "YXRpb25fZWdyZXNzX2xvY2F0aW9uGAkgASgLMj4uZ29vZ2xlLmNsb3VkLm5l", + "dHdvcmttYW5hZ2VtZW50LnYxLlByb2JpbmdEZXRhaWxzLkVkZ2VMb2NhdGlv", + "bhJcCg5lZGdlX3Jlc3BvbnNlcxgKIAMoCzJELmdvb2dsZS5jbG91ZC5uZXR3", + "b3JrbWFuYWdlbWVudC52MS5Qcm9iaW5nRGV0YWlscy5TaW5nbGVFZGdlUmVz", + "cG9uc2USGgoScHJvYmVkX2FsbF9kZXZpY2VzGAsgASgIGikKDEVkZ2VMb2Nh", + "dGlvbhIZChFtZXRyb3BvbGl0YW5fYXJlYRgBIAEoCRrxAgoSU2luZ2xlRWRn", + "ZVJlc3BvbnNlEk8KBnJlc3VsdBgBIAEoDjI/Lmdvb2dsZS5jbG91ZC5uZXR3", + "b3JrbWFuYWdlbWVudC52MS5Qcm9iaW5nRGV0YWlscy5Qcm9iaW5nUmVzdWx0", + "EhgKEHNlbnRfcHJvYmVfY291bnQYAiABKAUSHgoWc3VjY2Vzc2Z1bF9wcm9i", + "ZV9jb3VudBgDIAEoBRJPCg9wcm9iaW5nX2xhdGVuY3kYBCABKAsyNi5nb29n", "bGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuTGF0ZW5jeURpc3RyaWJ1", - "dGlvbhJjChtkZXN0aW5hdGlvbl9lZ3Jlc3NfbG9jYXRpb24YCSABKAsyPi5n", + "dGlvbhJjChtkZXN0aW5hdGlvbl9lZ3Jlc3NfbG9jYXRpb24YBSABKAsyPi5n", "b29nbGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuUHJvYmluZ0RldGFp", - "bHMuRWRnZUxvY2F0aW9uElwKDmVkZ2VfcmVzcG9uc2VzGAogAygLMkQuZ29v", - "Z2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLlByb2JpbmdEZXRhaWxz", - "LlNpbmdsZUVkZ2VSZXNwb25zZRIaChJwcm9iZWRfYWxsX2RldmljZXMYCyAB", - "KAgaKQoMRWRnZUxvY2F0aW9uEhkKEW1ldHJvcG9saXRhbl9hcmVhGAEgASgJ", - "GvECChJTaW5nbGVFZGdlUmVzcG9uc2USTwoGcmVzdWx0GAEgASgOMj8uZ29v", - "Z2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLlByb2JpbmdEZXRhaWxz", - "LlByb2JpbmdSZXN1bHQSGAoQc2VudF9wcm9iZV9jb3VudBgCIAEoBRIeChZz", - "dWNjZXNzZnVsX3Byb2JlX2NvdW50GAMgASgFEk8KD3Byb2JpbmdfbGF0ZW5j", - "eRgEIAEoCzI2Lmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52MS5M", - "YXRlbmN5RGlzdHJpYnV0aW9uEmMKG2Rlc3RpbmF0aW9uX2VncmVzc19sb2Nh", - "dGlvbhgFIAEoCzI+Lmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52", - "MS5Qcm9iaW5nRGV0YWlscy5FZGdlTG9jYXRpb24SGgoSZGVzdGluYXRpb25f", - "cm91dGVyGAYgASgJIoABCg1Qcm9iaW5nUmVzdWx0Eh4KGlBST0JJTkdfUkVT", - "VUxUX1VOU1BFQ0lGSUVEEAASDQoJUkVBQ0hBQkxFEAESDwoLVU5SRUFDSEFC", - "TEUQAhIdChlSRUFDSEFCSUxJVFlfSU5DT05TSVNURU5UEAMSEAoMVU5ERVRF", - "Uk1JTkVEEAQiZwoRUHJvYmluZ0Fib3J0Q2F1c2USIwofUFJPQklOR19BQk9S", - "VF9DQVVTRV9VTlNQRUNJRklFRBAAEhUKEVBFUk1JU1NJT05fREVOSUVEEAES", - "FgoSTk9fU09VUkNFX0xPQ0FUSU9OEAJC/QEKJWNvbS5nb29nbGUuY2xvdWQu", - "bmV0d29ya21hbmFnZW1lbnQudjFCDlRlc3RPdXRlckNsYXNzUAFaU2Nsb3Vk", - "Lmdvb2dsZS5jb20vZ28vbmV0d29ya21hbmFnZW1lbnQvYXBpdjEvbmV0d29y", - "a21hbmFnZW1lbnRwYjtuZXR3b3JrbWFuYWdlbWVudHBiqgIhR29vZ2xlLkNs", - "b3VkLk5ldHdvcmtNYW5hZ2VtZW50LlYxygIhR29vZ2xlXENsb3VkXE5ldHdv", - "cmtNYW5hZ2VtZW50XFYx6gIkR29vZ2xlOjpDbG91ZDo6TmV0d29ya01hbmFn", - "ZW1lbnQ6OlYxYgZwcm90bzM=")); + "bHMuRWRnZUxvY2F0aW9uEhoKEmRlc3RpbmF0aW9uX3JvdXRlchgGIAEoCSKA", + "AQoNUHJvYmluZ1Jlc3VsdBIeChpQUk9CSU5HX1JFU1VMVF9VTlNQRUNJRklF", + "RBAAEg0KCVJFQUNIQUJMRRABEg8KC1VOUkVBQ0hBQkxFEAISHQoZUkVBQ0hB", + "QklMSVRZX0lOQ09OU0lTVEVOVBADEhAKDFVOREVURVJNSU5FRBAEImcKEVBy", + "b2JpbmdBYm9ydENhdXNlEiMKH1BST0JJTkdfQUJPUlRfQ0FVU0VfVU5TUEVD", + "SUZJRUQQABIVChFQRVJNSVNTSU9OX0RFTklFRBABEhYKEk5PX1NPVVJDRV9M", + "T0NBVElPThACQv0BCiVjb20uZ29vZ2xlLmNsb3VkLm5ldHdvcmttYW5hZ2Vt", + "ZW50LnYxQg5UZXN0T3V0ZXJDbGFzc1ABWlNjbG91ZC5nb29nbGUuY29tL2dv", + "L25ldHdvcmttYW5hZ2VtZW50L2FwaXYxL25ldHdvcmttYW5hZ2VtZW50cGI7", + "bmV0d29ya21hbmFnZW1lbnRwYqoCIUdvb2dsZS5DbG91ZC5OZXR3b3JrTWFu", + "YWdlbWVudC5WMcoCIUdvb2dsZVxDbG91ZFxOZXR3b3JrTWFuYWdlbWVudFxW", + "MeoCJEdvb2dsZTo6Q2xvdWQ6Ok5ldHdvcmtNYW5hZ2VtZW50OjpWMWIGcHJv", + "dG8z")); descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, new pbr::FileDescriptor[] { global::Google.Api.FieldBehaviorReflection.Descriptor, global::Google.Api.ResourceReflection.Descriptor, global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.TimestampReflection.Descriptor, global::Google.Rpc.StatusReflection.Descriptor, }, new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.ConnectivityTest), global::Google.Cloud.NetworkManagement.V1.ConnectivityTest.Parser, new[]{ "Name", "Description", "Source", "Destination", "Protocol", "RelatedProjects", "DisplayName", "Labels", "CreateTime", "UpdateTime", "ReachabilityDetails", "ProbingDetails", "RoundTrip", "ReturnReachabilityDetails", "BypassFirewallChecks" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { null, }), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.Endpoint), global::Google.Cloud.NetworkManagement.V1.Endpoint.Parser, new[]{ "IpAddress", "Port", "Instance", "ForwardingRule", "ForwardingRuleTarget", "LoadBalancerId", "LoadBalancerType", "GkeMasterCluster", "Fqdn", "CloudSqlInstance", "RedisInstance", "RedisCluster", "CloudFunction", "AppEngineVersion", "CloudRunRevision", "Network", "NetworkType", "ProjectId" }, new[]{ "ForwardingRuleTarget", "LoadBalancerId", "LoadBalancerType" }, new[]{ typeof(global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.NetworkType), typeof(global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.ForwardingRuleTarget) }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.CloudFunctionEndpoint), global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.CloudFunctionEndpoint.Parser, new[]{ "Uri" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.Endpoint), global::Google.Cloud.NetworkManagement.V1.Endpoint.Parser, new[]{ "IpAddress", "Port", "Instance", "ForwardingRule", "ForwardingRuleTarget", "LoadBalancerId", "LoadBalancerType", "GkeMasterCluster", "Fqdn", "CloudSqlInstance", "RedisInstance", "RedisCluster", "GkePod", "CloudFunction", "AppEngineVersion", "CloudRunRevision", "Network", "NetworkType", "ProjectId" }, new[]{ "ForwardingRuleTarget", "LoadBalancerId", "LoadBalancerType" }, new[]{ typeof(global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.NetworkType), typeof(global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.ForwardingRuleTarget) }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.CloudFunctionEndpoint), global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.CloudFunctionEndpoint.Parser, new[]{ "Uri" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.AppEngineVersionEndpoint), global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.AppEngineVersionEndpoint.Parser, new[]{ "Uri" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.CloudRunRevisionEndpoint), global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.CloudRunRevisionEndpoint.Parser, new[]{ "Uri", "ServiceUri" }, null, null, null, null)}), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.ReachabilityDetails), global::Google.Cloud.NetworkManagement.V1.ReachabilityDetails.Parser, new[]{ "Result", "VerifyTime", "Error", "Traces" }, null, new[]{ typeof(global::Google.Cloud.NetworkManagement.V1.ReachabilityDetails.Types.Result) }, null, null), @@ -1020,6 +1021,7 @@ public Endpoint(Endpoint other) : this() { cloudSqlInstance_ = other.cloudSqlInstance_; redisInstance_ = other.redisInstance_; redisCluster_ = other.redisCluster_; + gkePod_ = other.gkePod_; cloudFunction_ = other.cloudFunction_ != null ? other.cloudFunction_.Clone() : null; appEngineVersion_ = other.appEngineVersion_ != null ? other.appEngineVersion_.Clone() : null; cloudRunRevision_ = other.cloudRunRevision_ != null ? other.cloudRunRevision_.Clone() : null; @@ -1273,6 +1275,22 @@ public string RedisCluster { } } + /// Field number for the "gke_pod" field. + public const int GkePodFieldNumber = 21; + private string gkePod_ = ""; + /// + /// A [GKE Pod](https://cloud.google.com/kubernetes-engine/docs/concepts/pod) + /// URI. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string GkePod { + get { return gkePod_; } + set { + gkePod_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + /// Field number for the "cloud_function" field. public const int CloudFunctionFieldNumber = 10; private global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.CloudFunctionEndpoint cloudFunction_; @@ -1327,7 +1345,10 @@ public string RedisCluster { public const int NetworkFieldNumber = 4; private string network_ = ""; /// - /// A VPC network URI. + /// A VPC network URI. For source endpoints, used according to the + /// `network_type`. For destination endpoints, used only when the source is an + /// external IP address endpoint, and the destination is an internal IP address + /// endpoint. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -1342,9 +1363,8 @@ public string Network { public const int NetworkTypeFieldNumber = 5; private global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.NetworkType networkType_ = global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.NetworkType.Unspecified; /// - /// Type of the network where the endpoint is located. - /// Applicable only to source endpoint, as destination network type can be - /// inferred from the source. + /// For source endpoints, type of the network where the endpoint is located. + /// Not relevant for destination endpoints. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -1359,15 +1379,8 @@ public string Network { public const int ProjectIdFieldNumber = 6; private string projectId_ = ""; /// - /// Project ID where the endpoint is located. - /// The project ID can be derived from the URI if you provide a endpoint or - /// network URI. - /// The following are two cases where you may need to provide the project ID: - /// 1. Only the IP address is specified, and the IP address is within a Google - /// Cloud project. - /// 2. When you are using Shared VPC and the IP address that you provide is - /// from the service project. In this case, the network that the IP address - /// resides in is defined in the host project. + /// For source endpoints, endpoint project ID. Used according to the + /// `network_type`. Not relevant for destination endpoints. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -1405,6 +1418,7 @@ public bool Equals(Endpoint other) { if (CloudSqlInstance != other.CloudSqlInstance) return false; if (RedisInstance != other.RedisInstance) return false; if (RedisCluster != other.RedisCluster) return false; + if (GkePod != other.GkePod) return false; if (!object.Equals(CloudFunction, other.CloudFunction)) return false; if (!object.Equals(AppEngineVersion, other.AppEngineVersion)) return false; if (!object.Equals(CloudRunRevision, other.CloudRunRevision)) return false; @@ -1430,6 +1444,7 @@ public override int GetHashCode() { if (CloudSqlInstance.Length != 0) hash ^= CloudSqlInstance.GetHashCode(); if (RedisInstance.Length != 0) hash ^= RedisInstance.GetHashCode(); if (RedisCluster.Length != 0) hash ^= RedisCluster.GetHashCode(); + if (GkePod.Length != 0) hash ^= GkePod.GetHashCode(); if (cloudFunction_ != null) hash ^= CloudFunction.GetHashCode(); if (appEngineVersion_ != null) hash ^= AppEngineVersion.GetHashCode(); if (cloudRunRevision_ != null) hash ^= CloudRunRevision.GetHashCode(); @@ -1526,6 +1541,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(154, 1); output.WriteString(Fqdn); } + if (GkePod.Length != 0) { + output.WriteRawTag(170, 1); + output.WriteString(GkePod); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -1608,6 +1627,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(154, 1); output.WriteString(Fqdn); } + if (GkePod.Length != 0) { + output.WriteRawTag(170, 1); + output.WriteString(GkePod); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -1654,6 +1677,9 @@ public int CalculateSize() { if (RedisCluster.Length != 0) { size += 2 + pb::CodedOutputStream.ComputeStringSize(RedisCluster); } + if (GkePod.Length != 0) { + size += 2 + pb::CodedOutputStream.ComputeStringSize(GkePod); + } if (cloudFunction_ != null) { size += 1 + pb::CodedOutputStream.ComputeMessageSize(CloudFunction); } @@ -1720,6 +1746,9 @@ public void MergeFrom(Endpoint other) { if (other.RedisCluster.Length != 0) { RedisCluster = other.RedisCluster; } + if (other.GkePod.Length != 0) { + GkePod = other.GkePod; + } if (other.cloudFunction_ != null) { if (cloudFunction_ == null) { CloudFunction = new global::Google.Cloud.NetworkManagement.V1.Endpoint.Types.CloudFunctionEndpoint(); @@ -1843,6 +1872,10 @@ public void MergeFrom(pb::CodedInputStream input) { Fqdn = input.ReadString(); break; } + case 170: { + GkePod = input.ReadString(); + break; + } } } #endif @@ -1939,6 +1972,10 @@ public void MergeFrom(pb::CodedInputStream input) { Fqdn = input.ReadString(); break; } + case 170: { + GkePod = input.ReadString(); + break; + } } } } @@ -1950,26 +1987,43 @@ public void MergeFrom(pb::CodedInputStream input) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static partial class Types { /// - /// The type definition of an endpoint's network. Use one of the - /// following choices: + /// The type of the network of the IP address endpoint. Relevant for the source + /// IP address endpoints. /// public enum NetworkType { /// - /// Default type if unspecified. + /// Unspecified. The test will analyze all possible IP address locations. + /// This might take longer and produce inaccurate or ambiguous results, so + /// prefer specifying an explicit network type. + /// + /// The `project_id` field should be set to the project where the GCP + /// endpoint is located, or where the non-GCP endpoint should be reachable + /// from (via routes to non-GCP networks). The project might also be inferred + /// from the Connectivity Test project or other projects referenced in the + /// request. /// [pbr::OriginalName("NETWORK_TYPE_UNSPECIFIED")] Unspecified = 0, /// - /// A network hosted within Google Cloud. - /// To receive more detailed output, specify the URI for the source or - /// destination network. + /// A VPC network. Should be used for internal IP addresses in VPC networks. + /// The `network` field should be set to the URI of this network. Only + /// endpoints within this network will be considered. /// [pbr::OriginalName("GCP_NETWORK")] GcpNetwork = 1, /// - /// A network hosted outside of Google Cloud. - /// This can be an on-premises network, an internet resource or a network - /// hosted by another cloud provider. + /// A non-GCP network (for example, an on-premises network or another cloud + /// provider network). Should be used for internal IP addresses outside of + /// Google Cloud. The `network` field should be set to the URI of the VPC + /// network containing a corresponding Cloud VPN tunnel, Cloud Interconnect + /// VLAN attachment, or a router appliance instance. Only endpoints reachable + /// from the provided VPC network via the routes to non-GCP networks will be + /// considered. /// [pbr::OriginalName("NON_GCP_NETWORK")] NonGcpNetwork = 2, + /// + /// Internet. Should be used for internet-routable external IP addresses or + /// IP addresses for global Google APIs and services. + /// + [pbr::OriginalName("INTERNET")] Internet = 3, } /// diff --git a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/OrganizationVpcFlowLogsServiceClient.g.cs b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/OrganizationVpcFlowLogsServiceClient.g.cs index bdda3d573387..98cf7a9a0ede 100644 --- a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/OrganizationVpcFlowLogsServiceClient.g.cs +++ b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/OrganizationVpcFlowLogsServiceClient.g.cs @@ -374,7 +374,7 @@ internal static OrganizationVpcFlowLogsServiceClient Create(grpccore::CallInvoke /// Required. The parent resource of the VpcFlowLogsConfig, /// in one of the following formats: /// - /// - For project-level resourcs: `projects/{project_id}/locations/global` + /// - For project-level resources: `projects/{project_id}/locations/global` /// /// - For organization-level resources: /// `organizations/{organization_id}/locations/global` @@ -413,7 +413,7 @@ internal static OrganizationVpcFlowLogsServiceClient Create(grpccore::CallInvoke /// Required. The parent resource of the VpcFlowLogsConfig, /// in one of the following formats: /// - /// - For project-level resourcs: `projects/{project_id}/locations/global` + /// - For project-level resources: `projects/{project_id}/locations/global` /// /// - For organization-level resources: /// `organizations/{organization_id}/locations/global` @@ -452,7 +452,7 @@ internal static OrganizationVpcFlowLogsServiceClient Create(grpccore::CallInvoke /// Required. The parent resource of the VpcFlowLogsConfig, /// in one of the following formats: /// - /// - For project-level resourcs: `projects/{project_id}/locations/global` + /// - For project-level resources: `projects/{project_id}/locations/global` /// /// - For organization-level resources: /// `organizations/{organization_id}/locations/global` @@ -491,7 +491,7 @@ internal static OrganizationVpcFlowLogsServiceClient Create(grpccore::CallInvoke /// Required. The parent resource of the VpcFlowLogsConfig, /// in one of the following formats: /// - /// - For project-level resourcs: `projects/{project_id}/locations/global` + /// - For project-level resources: `projects/{project_id}/locations/global` /// /// - For organization-level resources: /// `organizations/{organization_id}/locations/global` @@ -530,7 +530,7 @@ internal static OrganizationVpcFlowLogsServiceClient Create(grpccore::CallInvoke /// Required. The parent resource of the VpcFlowLogsConfig, /// in one of the following formats: /// - /// - For project-level resourcs: `projects/{project_id}/locations/global` + /// - For project-level resources: `projects/{project_id}/locations/global` /// /// - For organization-level resources: /// `organizations/{organization_id}/locations/global` @@ -569,7 +569,7 @@ internal static OrganizationVpcFlowLogsServiceClient Create(grpccore::CallInvoke /// Required. The parent resource of the VpcFlowLogsConfig, /// in one of the following formats: /// - /// - For project-level resourcs: `projects/{project_id}/locations/global` + /// - For project-level resources: `projects/{project_id}/locations/global` /// /// - For organization-level resources: /// `organizations/{organization_id}/locations/global` diff --git a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/PackageApiMetadata.g.cs b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/PackageApiMetadata.g.cs index ddf08e104a07..a5b73af20549 100644 --- a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/PackageApiMetadata.g.cs +++ b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/PackageApiMetadata.g.cs @@ -60,23 +60,23 @@ internal static class PackageApiMetadata }, { "google.longrunning.Operations.CancelOperation", - // { "post": "/v1/{name=projects/*/locations/global/operations/*}:cancel", "body": "*", "additionalBindings": [ { "post": "/v1/{name=organizations/*/locations/*/operations/*}:cancel", "body": "*" } ] } - proto::ByteString.FromBase64("IjovdjEve25hbWU9cHJvamVjdHMvKi9sb2NhdGlvbnMvZ2xvYmFsL29wZXJhdGlvbnMvKn06Y2FuY2VsOgEqWj8iOi92MS97bmFtZT1vcmdhbml6YXRpb25zLyovbG9jYXRpb25zLyovb3BlcmF0aW9ucy8qfTpjYW5jZWw6ASo=") + // { "post": "/v1/{name=projects/*/locations/global/operations/*}:cancel", "body": "*", "additionalBindings": [ { "post": "/v1/{name=organizations/*/locations/global/operations/*}:cancel", "body": "*" } ] } + proto::ByteString.FromBase64("IjovdjEve25hbWU9cHJvamVjdHMvKi9sb2NhdGlvbnMvZ2xvYmFsL29wZXJhdGlvbnMvKn06Y2FuY2VsOgEqWkQiPy92MS97bmFtZT1vcmdhbml6YXRpb25zLyovbG9jYXRpb25zL2dsb2JhbC9vcGVyYXRpb25zLyp9OmNhbmNlbDoBKg==") }, { "google.longrunning.Operations.DeleteOperation", - // { "delete": "/v1/{name=projects/*/locations/global/operations/*}", "additionalBindings": [ { "delete": "/v1/{name=organizations/*/locations/*/operations/*}" } ] } - proto::ByteString.FromBase64("KjMvdjEve25hbWU9cHJvamVjdHMvKi9sb2NhdGlvbnMvZ2xvYmFsL29wZXJhdGlvbnMvKn1aNSozL3YxL3tuYW1lPW9yZ2FuaXphdGlvbnMvKi9sb2NhdGlvbnMvKi9vcGVyYXRpb25zLyp9") + // { "delete": "/v1/{name=projects/*/locations/global/operations/*}", "additionalBindings": [ { "delete": "/v1/{name=organizations/*/locations/global/operations/*}" } ] } + proto::ByteString.FromBase64("KjMvdjEve25hbWU9cHJvamVjdHMvKi9sb2NhdGlvbnMvZ2xvYmFsL29wZXJhdGlvbnMvKn1aOio4L3YxL3tuYW1lPW9yZ2FuaXphdGlvbnMvKi9sb2NhdGlvbnMvZ2xvYmFsL29wZXJhdGlvbnMvKn0=") }, { "google.longrunning.Operations.GetOperation", - // { "get": "/v1/{name=projects/*/locations/global/operations/*}", "additionalBindings": [ { "get": "/v1/{name=organizations/*/locations/*/operations/*}" } ] } - proto::ByteString.FromBase64("EjMvdjEve25hbWU9cHJvamVjdHMvKi9sb2NhdGlvbnMvZ2xvYmFsL29wZXJhdGlvbnMvKn1aNRIzL3YxL3tuYW1lPW9yZ2FuaXphdGlvbnMvKi9sb2NhdGlvbnMvKi9vcGVyYXRpb25zLyp9") + // { "get": "/v1/{name=projects/*/locations/global/operations/*}", "additionalBindings": [ { "get": "/v1/{name=organizations/*/locations/global/operations/*}" } ] } + proto::ByteString.FromBase64("EjMvdjEve25hbWU9cHJvamVjdHMvKi9sb2NhdGlvbnMvZ2xvYmFsL29wZXJhdGlvbnMvKn1aOhI4L3YxL3tuYW1lPW9yZ2FuaXphdGlvbnMvKi9sb2NhdGlvbnMvZ2xvYmFsL29wZXJhdGlvbnMvKn0=") }, { "google.longrunning.Operations.ListOperations", - // { "get": "/v1/{name=projects/*/locations/global}/operations", "additionalBindings": [ { "get": "/v1/{name=organizations/*/locations/*}/operations" } ] } - proto::ByteString.FromBase64("EjEvdjEve25hbWU9cHJvamVjdHMvKi9sb2NhdGlvbnMvZ2xvYmFsfS9vcGVyYXRpb25zWjMSMS92MS97bmFtZT1vcmdhbml6YXRpb25zLyovbG9jYXRpb25zLyp9L29wZXJhdGlvbnM=") + // { "get": "/v1/{name=projects/*/locations/global}/operations", "additionalBindings": [ { "get": "/v1/{name=organizations/*/locations/global}/operations" } ] } + proto::ByteString.FromBase64("EjEvdjEve25hbWU9cHJvamVjdHMvKi9sb2NhdGlvbnMvZ2xvYmFsfS9vcGVyYXRpb25zWjgSNi92MS97bmFtZT1vcmdhbml6YXRpb25zLyovbG9jYXRpb25zL2dsb2JhbH0vb3BlcmF0aW9ucw==") }, }); diff --git a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/ReachabilityGrpc.g.cs b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/ReachabilityGrpc.g.cs index 6189e77e2590..369e77453cc6 100644 --- a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/ReachabilityGrpc.g.cs +++ b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/ReachabilityGrpc.g.cs @@ -3,7 +3,7 @@ // source: google/cloud/networkmanagement/v1/reachability.proto // // Original file comments: -// Copyright 2025 Google LLC +// Copyright 2026 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/Trace.g.cs b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/Trace.g.cs index dec0c30e133e..147ad8219402 100644 --- a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/Trace.g.cs +++ b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/Trace.g.cs @@ -30,7 +30,7 @@ static TraceReflection() { "bmZvLnByb3RvIqEBCgVUcmFjZRJGCg1lbmRwb2ludF9pbmZvGAEgASgLMi8u", "Z29vZ2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLkVuZHBvaW50SW5m", "bxI2CgVzdGVwcxgCIAMoCzInLmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdl", - "bWVudC52MS5TdGVwEhgKEGZvcndhcmRfdHJhY2VfaWQYBCABKAUivRwKBFN0", + "bWVudC52MS5TdGVwEhgKEGZvcndhcmRfdHJhY2VfaWQYBCABKAUimh4KBFN0", "ZXASEwoLZGVzY3JpcHRpb24YASABKAkSPAoFc3RhdGUYAiABKA4yLS5nb29n", "bGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuU3RlcC5TdGF0ZRITCgtj", "YXVzZXNfZHJvcBgDIAEoCBISCgpwcm9qZWN0X2lkGAQgASgJEkMKCGluc3Rh", @@ -67,409 +67,442 @@ static TraceReflection() { "bWVudC52MS5Mb2FkQmFsYW5jZXJJbmZvQgIYAUgAEkEKB25ldHdvcmsYESAB", "KAsyLi5nb29nbGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuTmV0d29y", "a0luZm9IABJGCgpna2VfbWFzdGVyGBIgASgLMjAuZ29vZ2xlLmNsb3VkLm5l", - "dHdvcmttYW5hZ2VtZW50LnYxLkdLRU1hc3RlckluZm9IABJVChJjbG91ZF9z", - "cWxfaW5zdGFuY2UYEyABKAsyNy5nb29nbGUuY2xvdWQubmV0d29ya21hbmFn", - "ZW1lbnQudjEuQ2xvdWRTUUxJbnN0YW5jZUluZm9IABJOCg5yZWRpc19pbnN0", - "YW5jZRgeIAEoCzI0Lmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52", - "MS5SZWRpc0luc3RhbmNlSW5mb0gAEkwKDXJlZGlzX2NsdXN0ZXIYHyABKAsy", - "My5nb29nbGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuUmVkaXNDbHVz", - "dGVySW5mb0gAEk4KDmNsb3VkX2Z1bmN0aW9uGBQgASgLMjQuZ29vZ2xlLmNs", - "b3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLkNsb3VkRnVuY3Rpb25JbmZvSAAS", - "VQoSYXBwX2VuZ2luZV92ZXJzaW9uGBYgASgLMjcuZ29vZ2xlLmNsb3VkLm5l", - "dHdvcmttYW5hZ2VtZW50LnYxLkFwcEVuZ2luZVZlcnNpb25JbmZvSAASVQoS", - "Y2xvdWRfcnVuX3JldmlzaW9uGBcgASgLMjcuZ29vZ2xlLmNsb3VkLm5ldHdv", - "cmttYW5hZ2VtZW50LnYxLkNsb3VkUnVuUmV2aXNpb25JbmZvSAASOQoDbmF0", - "GBkgASgLMiouZ29vZ2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLk5h", - "dEluZm9IABJSChBwcm94eV9jb25uZWN0aW9uGBogASgLMjYuZ29vZ2xlLmNs", - "b3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLlByb3h5Q29ubmVjdGlvbkluZm9I", - "ABJgChpsb2FkX2JhbGFuY2VyX2JhY2tlbmRfaW5mbxgbIAEoCzI6Lmdvb2ds", - "ZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52MS5Mb2FkQmFsYW5jZXJCYWNr", - "ZW5kSW5mb0gAEk4KDnN0b3JhZ2VfYnVja2V0GBwgASgLMjQuZ29vZ2xlLmNs", - "b3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLlN0b3JhZ2VCdWNrZXRJbmZvSAAS", - "TgoOc2VydmVybGVzc19uZWcYHSABKAsyNC5nb29nbGUuY2xvdWQubmV0d29y", - "a21hbmFnZW1lbnQudjEuU2VydmVybGVzc05lZ0luZm9IACKvCAoFU3RhdGUS", - "FQoRU1RBVEVfVU5TUEVDSUZJRUQQABIXChNTVEFSVF9GUk9NX0lOU1RBTkNF", - "EAESFwoTU1RBUlRfRlJPTV9JTlRFUk5FVBACEh0KGVNUQVJUX0ZST01fR09P", - "R0xFX1NFUlZJQ0UQGxIeChpTVEFSVF9GUk9NX1BSSVZBVEVfTkVUV09SSxAD", - "EhkKFVNUQVJUX0ZST01fR0tFX01BU1RFUhAVEiEKHVNUQVJUX0ZST01fQ0xP", - "VURfU1FMX0lOU1RBTkNFEBYSHQoZU1RBUlRfRlJPTV9SRURJU19JTlNUQU5D", - "RRAgEhwKGFNUQVJUX0ZST01fUkVESVNfQ0xVU1RFUhAhEh0KGVNUQVJUX0ZS", - "T01fQ0xPVURfRlVOQ1RJT04QFxIhCh1TVEFSVF9GUk9NX0FQUF9FTkdJTkVf", - "VkVSU0lPThAZEiEKHVNUQVJUX0ZST01fQ0xPVURfUlVOX1JFVklTSU9OEBoS", - "HQoZU1RBUlRfRlJPTV9TVE9SQUdFX0JVQ0tFVBAdEiQKIFNUQVJUX0ZST01f", - "UFNDX1BVQkxJU0hFRF9TRVJWSUNFEB4SHQoZU1RBUlRfRlJPTV9TRVJWRVJM", - "RVNTX05FRxAfEh8KG0FQUExZX0lOR1JFU1NfRklSRVdBTExfUlVMRRAEEh4K", - "GkFQUExZX0VHUkVTU19GSVJFV0FMTF9SVUxFEAUSDwoLQVBQTFlfUk9VVEUQ", - "BhIZChVBUFBMWV9GT1JXQVJESU5HX1JVTEUQBxIhCh1BTkFMWVpFX0xPQURf", - "QkFMQU5DRVJfQkFDS0VORBAcEhUKEVNQT09GSU5HX0FQUFJPVkVEEAgSFgoS", - "QVJSSVZFX0FUX0lOU1RBTkNFEAkSKAogQVJSSVZFX0FUX0lOVEVSTkFMX0xP", - "QURfQkFMQU5DRVIQChoCCAESKAogQVJSSVZFX0FUX0VYVEVSTkFMX0xPQURf", - "QkFMQU5DRVIQCxoCCAESGwoXQVJSSVZFX0FUX0hZQlJJRF9TVUJORVQQJhIZ", - "ChVBUlJJVkVfQVRfVlBOX0dBVEVXQVkQDBIYChRBUlJJVkVfQVRfVlBOX1RV", - "Tk5FTBANEiUKIUFSUklWRV9BVF9JTlRFUkNPTk5FQ1RfQVRUQUNITUVOVBAl", - "EhsKF0FSUklWRV9BVF9WUENfQ09OTkVDVE9SEBgSIAocRElSRUNUX1ZQQ19F", - "R1JFU1NfQ09OTkVDVElPThAjEiIKHlNFUlZFUkxFU1NfRVhURVJOQUxfQ09O", - "TkVDVElPThAkEgcKA05BVBAOEhQKEFBST1hZX0NPTk5FQ1RJT04QDxILCgdE", - "RUxJVkVSEBASCAoERFJPUBAREgsKB0ZPUldBUkQQEhIJCgVBQk9SVBATEh0K", - "GVZJRVdFUl9QRVJNSVNTSU9OX01JU1NJTkcQFEILCglzdGVwX2luZm8i9wIK", - "DEluc3RhbmNlSW5mbxIUCgxkaXNwbGF5X25hbWUYASABKAkSCwoDdXJpGAIg", - "ASgJEhEKCWludGVyZmFjZRgDIAEoCRITCgtuZXR3b3JrX3VyaRgEIAEoCRIT", - "CgtpbnRlcm5hbF9pcBgFIAEoCRITCgtleHRlcm5hbF9pcBgGIAEoCRIUCgxu", - "ZXR3b3JrX3RhZ3MYByADKAkSGwoPc2VydmljZV9hY2NvdW50GAggASgJQgIY", - "ARIiChpwc2NfbmV0d29ya19hdHRhY2htZW50X3VyaRgJIAEoCRITCgdydW5u", - "aW5nGAogASgIQgIYARJGCgZzdGF0dXMYCyABKA4yNi5nb29nbGUuY2xvdWQu", - "bmV0d29ya21hbmFnZW1lbnQudjEuSW5zdGFuY2VJbmZvLlN0YXR1cyI+CgZT", - "dGF0dXMSFgoSU1RBVFVTX1VOU1BFQ0lGSUVEEAASCwoHUlVOTklORxABEg8K", - "C05PVF9SVU5OSU5HEAIidgoLTmV0d29ya0luZm8SFAoMZGlzcGxheV9uYW1l", - "GAEgASgJEgsKA3VyaRgCIAEoCRIaChJtYXRjaGVkX3N1Ym5ldF91cmkYBSAB", - "KAkSGAoQbWF0Y2hlZF9pcF9yYW5nZRgEIAEoCRIOCgZyZWdpb24YBiABKAki", - "1AYKDEZpcmV3YWxsSW5mbxIUCgxkaXNwbGF5X25hbWUYASABKAkSCwoDdXJp", - "GAIgASgJEhEKCWRpcmVjdGlvbhgDIAEoCRIOCgZhY3Rpb24YBCABKAkSEAoI", - "cHJpb3JpdHkYBSABKAUSEwoLbmV0d29ya191cmkYBiABKAkSEwoLdGFyZ2V0", - "X3RhZ3MYByADKAkSHwoXdGFyZ2V0X3NlcnZpY2VfYWNjb3VudHMYCCADKAkS", - "DgoGcG9saWN5GAkgASgJEhIKCnBvbGljeV91cmkYCyABKAkSXAoSZmlyZXdh", - "bGxfcnVsZV90eXBlGAogASgOMkAuZ29vZ2xlLmNsb3VkLm5ldHdvcmttYW5h", - "Z2VtZW50LnYxLkZpcmV3YWxsSW5mby5GaXJld2FsbFJ1bGVUeXBlEhcKD3Bv", - "bGljeV9wcmlvcml0eRgMIAEoBRJPCgt0YXJnZXRfdHlwZRgNIAEoDjI6Lmdv", - "b2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52MS5GaXJld2FsbEluZm8u", - "VGFyZ2V0VHlwZSLhAgoQRmlyZXdhbGxSdWxlVHlwZRIiCh5GSVJFV0FMTF9S", - "VUxFX1RZUEVfVU5TUEVDSUZJRUQQABIlCiFISUVSQVJDSElDQUxfRklSRVdB", - "TExfUE9MSUNZX1JVTEUQARIVChFWUENfRklSRVdBTExfUlVMRRACEh0KGUlN", - "UExJRURfVlBDX0ZJUkVXQUxMX1JVTEUQAxIvCitTRVJWRVJMRVNTX1ZQQ19B", - "Q0NFU1NfTUFOQUdFRF9GSVJFV0FMTF9SVUxFEAQSIAocTkVUV09SS19GSVJF", - "V0FMTF9QT0xJQ1lfUlVMRRAFEikKJU5FVFdPUktfUkVHSU9OQUxfRklSRVdB", - "TExfUE9MSUNZX1JVTEUQBhIkCiBVTlNVUFBPUlRFRF9GSVJFV0FMTF9QT0xJ", - "Q1lfUlVMRRBkEhIKDlRSQUNLSU5HX1NUQVRFEGUSFAoQQU5BTFlTSVNfU0tJ", - "UFBFRBBmIlEKClRhcmdldFR5cGUSGwoXVEFSR0VUX1RZUEVfVU5TUEVDSUZJ", - "RUQQABINCglJTlNUQU5DRVMQARIXChNJTlRFUk5BTF9NQU5BR0VEX0xCEAIi", - "7AsKCVJvdXRlSW5mbxJKCgpyb3V0ZV90eXBlGAggASgOMjYuZ29vZ2xlLmNs", - "b3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLlJvdXRlSW5mby5Sb3V0ZVR5cGUS", - "TwoNbmV4dF9ob3BfdHlwZRgJIAEoDjI4Lmdvb2dsZS5jbG91ZC5uZXR3b3Jr", - "bWFuYWdlbWVudC52MS5Sb3V0ZUluZm8uTmV4dEhvcFR5cGUSUAoLcm91dGVf", - "c2NvcGUYDiABKA4yNy5nb29nbGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQu", - "djEuUm91dGVJbmZvLlJvdXRlU2NvcGVCAhgBEhQKDGRpc3BsYXlfbmFtZRgB", - "IAEoCRILCgN1cmkYAiABKAkSDgoGcmVnaW9uGBMgASgJEhUKDWRlc3RfaXBf", - "cmFuZ2UYAyABKAkSFAoIbmV4dF9ob3AYBCABKAlCAhgBEhMKC25ldHdvcmtf", - "dXJpGAUgASgJEhAKCHByaW9yaXR5GAYgASgFEhUKDWluc3RhbmNlX3RhZ3MY", - "ByADKAkSFAoMc3JjX2lwX3JhbmdlGAogASgJEhgKEGRlc3RfcG9ydF9yYW5n", - "ZXMYCyADKAkSFwoPc3JjX3BvcnRfcmFuZ2VzGAwgAygJEhEKCXByb3RvY29s", - "cxgNIAMoCRIYCgtuY2NfaHViX3VyaRgPIAEoCUgAiAEBEhoKDW5jY19zcG9r", - "ZV91cmkYECABKAlIAYgBARIvCiJhZHZlcnRpc2VkX3JvdXRlX3NvdXJjZV9y", - "b3V0ZXJfdXJpGBEgASgJSAKIAQESLgodYWR2ZXJ0aXNlZF9yb3V0ZV9uZXh0", - "X2hvcF91cmkYEiABKAlCAhgBSAOIAQESFAoMbmV4dF9ob3BfdXJpGBQgASgJ", - "EhwKFG5leHRfaG9wX25ldHdvcmtfdXJpGBUgASgJEh0KFW9yaWdpbmF0aW5n", - "X3JvdXRlX3VyaRgWIAEoCRImCh5vcmlnaW5hdGluZ19yb3V0ZV9kaXNwbGF5", - "X25hbWUYFyABKAkSGQoRbmNjX2h1Yl9yb3V0ZV91cmkYGCABKAkiqwEKCVJv", - "dXRlVHlwZRIaChZST1VURV9UWVBFX1VOU1BFQ0lGSUVEEAASCgoGU1VCTkVU", - "EAESCgoGU1RBVElDEAISCwoHRFlOQU1JQxADEhIKDlBFRVJJTkdfU1VCTkVU", - "EAQSEgoOUEVFUklOR19TVEFUSUMQBRITCg9QRUVSSU5HX0RZTkFNSUMQBhIQ", - "CgxQT0xJQ1lfQkFTRUQQBxIOCgpBRFZFUlRJU0VEEGUi6gIKC05leHRIb3BU", - "eXBlEh0KGU5FWFRfSE9QX1RZUEVfVU5TUEVDSUZJRUQQABIPCgtORVhUX0hP", - "UF9JUBABEhUKEU5FWFRfSE9QX0lOU1RBTkNFEAISFAoQTkVYVF9IT1BfTkVU", - "V09SSxADEhQKEE5FWFRfSE9QX1BFRVJJTkcQBBIZChVORVhUX0hPUF9JTlRF", - "UkNPTk5FQ1QQBRIXChNORVhUX0hPUF9WUE5fVFVOTkVMEAYSGAoUTkVYVF9I", - "T1BfVlBOX0dBVEVXQVkQBxIdChlORVhUX0hPUF9JTlRFUk5FVF9HQVRFV0FZ", - "EAgSFgoSTkVYVF9IT1BfQkxBQ0tIT0xFEAkSEAoMTkVYVF9IT1BfSUxCEAoS", - "HQoZTkVYVF9IT1BfUk9VVEVSX0FQUExJQU5DRRALEhQKEE5FWFRfSE9QX05D", - "Q19IVUIQDBIcChhTRUNVUkVfV0VCX1BST1hZX0dBVEVXQVkQDSJDCgpSb3V0", - "ZVNjb3BlEhsKF1JPVVRFX1NDT1BFX1VOU1BFQ0lGSUVEEAASCwoHTkVUV09S", - "SxABEgsKB05DQ19IVUIQAkIOCgxfbmNjX2h1Yl91cmlCEAoOX25jY19zcG9r", - "ZV91cmlCJQojX2FkdmVydGlzZWRfcm91dGVfc291cmNlX3JvdXRlcl91cmlC", - "IAoeX2FkdmVydGlzZWRfcm91dGVfbmV4dF9ob3BfdXJpItoCChFHb29nbGVT", - "ZXJ2aWNlSW5mbxIRCglzb3VyY2VfaXAYASABKAkSYwoTZ29vZ2xlX3NlcnZp", - "Y2VfdHlwZRgCIAEoDjJGLmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVu", - "dC52MS5Hb29nbGVTZXJ2aWNlSW5mby5Hb29nbGVTZXJ2aWNlVHlwZSLMAQoR", - "R29vZ2xlU2VydmljZVR5cGUSIwofR09PR0xFX1NFUlZJQ0VfVFlQRV9VTlNQ", - "RUNJRklFRBAAEgcKA0lBUBABEiQKIEdGRV9QUk9YWV9PUl9IRUFMVEhfQ0hF", - "Q0tfUFJPQkVSEAISDQoJQ0xPVURfRE5TEAMSDgoKR09PR0xFX0FQSRAEEhIK", - "DkdPT0dMRV9BUElfUFNDEAUSFQoRR09PR0xFX0FQSV9WUENfU0MQBhIZChVT", - "RVJWRVJMRVNTX1ZQQ19BQ0NFU1MQByKOAgoSRm9yd2FyZGluZ1J1bGVJbmZv", - "EhQKDGRpc3BsYXlfbmFtZRgBIAEoCRILCgN1cmkYAiABKAkSGAoQbWF0Y2hl", - "ZF9wcm90b2NvbBgDIAEoCRIaChJtYXRjaGVkX3BvcnRfcmFuZ2UYBiABKAkS", - "CwoDdmlwGAQgASgJEg4KBnRhcmdldBgFIAEoCRITCgtuZXR3b3JrX3VyaRgH", - "IAEoCRIOCgZyZWdpb24YCCABKAkSGgoSbG9hZF9iYWxhbmNlcl9uYW1lGAkg", - "ASgJEiIKGnBzY19zZXJ2aWNlX2F0dGFjaG1lbnRfdXJpGAogASgJEh0KFXBz", - "Y19nb29nbGVfYXBpX3RhcmdldBgLIAEoCSLCBAoQTG9hZEJhbGFuY2VySW5m", - "bxJgChJsb2FkX2JhbGFuY2VyX3R5cGUYASABKA4yRC5nb29nbGUuY2xvdWQu", - "bmV0d29ya21hbmFnZW1lbnQudjEuTG9hZEJhbGFuY2VySW5mby5Mb2FkQmFs", - "YW5jZXJUeXBlEhwKEGhlYWx0aF9jaGVja191cmkYAiABKAlCAhgBEkgKCGJh", - "Y2tlbmRzGAMgAygLMjYuZ29vZ2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50", - "LnYxLkxvYWRCYWxhbmNlckJhY2tlbmQSVQoMYmFja2VuZF90eXBlGAQgASgO", - "Mj8uZ29vZ2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLkxvYWRCYWxh", - "bmNlckluZm8uQmFja2VuZFR5cGUSEwoLYmFja2VuZF91cmkYBSABKAkijwEK", - "EExvYWRCYWxhbmNlclR5cGUSIgoeTE9BRF9CQUxBTkNFUl9UWVBFX1VOU1BF", - "Q0lGSUVEEAASFAoQSU5URVJOQUxfVENQX1VEUBABEhMKD05FVFdPUktfVENQ", - "X1VEUBACEg4KCkhUVFBfUFJPWFkQAxINCglUQ1BfUFJPWFkQBBINCglTU0xf", - "UFJPWFkQBSJmCgtCYWNrZW5kVHlwZRIcChhCQUNLRU5EX1RZUEVfVU5TUEVD", - "SUZJRUQQABITCg9CQUNLRU5EX1NFUlZJQ0UQARIPCgtUQVJHRVRfUE9PTBAC", - "EhMKD1RBUkdFVF9JTlNUQU5DRRADIvYCChNMb2FkQmFsYW5jZXJCYWNrZW5k", - "EhQKDGRpc3BsYXlfbmFtZRgBIAEoCRILCgN1cmkYAiABKAkSdAobaGVhbHRo", - "X2NoZWNrX2ZpcmV3YWxsX3N0YXRlGAMgASgOMk8uZ29vZ2xlLmNsb3VkLm5l", - "dHdvcmttYW5hZ2VtZW50LnYxLkxvYWRCYWxhbmNlckJhY2tlbmQuSGVhbHRo", - "Q2hlY2tGaXJld2FsbFN0YXRlEiwKJGhlYWx0aF9jaGVja19hbGxvd2luZ19m", - "aXJld2FsbF9ydWxlcxgEIAMoCRIsCiRoZWFsdGhfY2hlY2tfYmxvY2tpbmdf", - "ZmlyZXdhbGxfcnVsZXMYBSADKAkiagoYSGVhbHRoQ2hlY2tGaXJld2FsbFN0", - "YXRlEisKJ0hFQUxUSF9DSEVDS19GSVJFV0FMTF9TVEFURV9VTlNQRUNJRklF", - "RBAAEg4KCkNPTkZJR1VSRUQQARIRCg1NSVNDT05GSUdVUkVEEAIiRQoQSHli", - "cmlkU3VibmV0SW5mbxIUCgxkaXNwbGF5X25hbWUYASABKAkSCwoDdXJpGAIg", - "ASgJEg4KBnJlZ2lvbhgDIAEoCSKEAQoOVnBuR2F0ZXdheUluZm8SFAoMZGlz", - "cGxheV9uYW1lGAEgASgJEgsKA3VyaRgCIAEoCRITCgtuZXR3b3JrX3VyaRgD", - "IAEoCRISCgppcF9hZGRyZXNzGAQgASgJEhYKDnZwbl90dW5uZWxfdXJpGAUg", - "ASgJEg4KBnJlZ2lvbhgGIAEoCSLuAgoNVnBuVHVubmVsSW5mbxIUCgxkaXNw", - "bGF5X25hbWUYASABKAkSCwoDdXJpGAIgASgJEhYKDnNvdXJjZV9nYXRld2F5", - "GAMgASgJEhYKDnJlbW90ZV9nYXRld2F5GAQgASgJEhkKEXJlbW90ZV9nYXRl", - "d2F5X2lwGAUgASgJEhkKEXNvdXJjZV9nYXRld2F5X2lwGAYgASgJEhMKC25l", - "dHdvcmtfdXJpGAcgASgJEg4KBnJlZ2lvbhgIIAEoCRJSCgxyb3V0aW5nX3R5", - "cGUYCSABKA4yPC5nb29nbGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEu", - "VnBuVHVubmVsSW5mby5Sb3V0aW5nVHlwZSJbCgtSb3V0aW5nVHlwZRIcChhS", - "T1VUSU5HX1RZUEVfVU5TUEVDSUZJRUQQABIPCgtST1VURV9CQVNFRBABEhAK", - "DFBPTElDWV9CQVNFRBACEgsKB0RZTkFNSUMQAyLrAgoaSW50ZXJjb25uZWN0", - "QXR0YWNobWVudEluZm8SFAoMZGlzcGxheV9uYW1lGAEgASgJEgsKA3VyaRgC", - "IAEoCRIYChBpbnRlcmNvbm5lY3RfdXJpGAMgASgJEg4KBnJlZ2lvbhgEIAEo", - "CRIYChBjbG91ZF9yb3V0ZXJfdXJpGAUgASgJElAKBHR5cGUYBiABKA4yQi5n", - "b29nbGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuSW50ZXJjb25uZWN0", - "QXR0YWNobWVudEluZm8uVHlwZRIyCiBsMl9hdHRhY2htZW50X21hdGNoZWRf", - "aXBfYWRkcmVzcxgHIAEoCUII4ozP1wgCCAQiYAoEVHlwZRIUChBUWVBFX1VO", - "U1BFQ0lGSUVEEAASDQoJREVESUNBVEVEEAESCwoHUEFSVE5FUhACEhQKEFBB", - "UlRORVJfUFJPVklERVIQAxIQCgxMMl9ERURJQ0FURUQQBCLRAQoMRW5kcG9p", - "bnRJbmZvEhEKCXNvdXJjZV9pcBgBIAEoCRIWCg5kZXN0aW5hdGlvbl9pcBgC", - "IAEoCRIQCghwcm90b2NvbBgDIAEoCRITCgtzb3VyY2VfcG9ydBgEIAEoBRIY", - "ChBkZXN0aW5hdGlvbl9wb3J0GAUgASgFEhoKEnNvdXJjZV9uZXR3b3JrX3Vy", - "aRgGIAEoCRIfChdkZXN0aW5hdGlvbl9uZXR3b3JrX3VyaRgHIAEoCRIYChBz", - "b3VyY2VfYWdlbnRfdXJpGAggASgJIscGCgtEZWxpdmVySW5mbxJFCgZ0YXJn", - "ZXQYASABKA4yNS5nb29nbGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEu", - "RGVsaXZlckluZm8uVGFyZ2V0EhQKDHJlc291cmNlX3VyaRgCIAEoCRIcCgpp", - "cF9hZGRyZXNzGAMgASgJQgjijM/XCAIIBBIWCg5zdG9yYWdlX2J1Y2tldBgE", - "IAEoCRIdChVwc2NfZ29vZ2xlX2FwaV90YXJnZXQYBSABKAkSXQoTZ29vZ2xl", - "X3NlcnZpY2VfdHlwZRgGIAEoDjJALmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFu", - "YWdlbWVudC52MS5EZWxpdmVySW5mby5Hb29nbGVTZXJ2aWNlVHlwZSL3AgoG", - "VGFyZ2V0EhYKElRBUkdFVF9VTlNQRUNJRklFRBAAEgwKCElOU1RBTkNFEAES", - "DAoISU5URVJORVQQAhIOCgpHT09HTEVfQVBJEAMSDgoKR0tFX01BU1RFUhAE", - "EhYKEkNMT1VEX1NRTF9JTlNUQU5DRRAFEhkKFVBTQ19QVUJMSVNIRURfU0VS", - "VklDRRAGEhIKDlBTQ19HT09HTEVfQVBJEAcSDgoKUFNDX1ZQQ19TQxAIEhIK", - "DlNFUlZFUkxFU1NfTkVHEAkSEgoOU1RPUkFHRV9CVUNLRVQQChITCg9QUklW", - "QVRFX05FVFdPUksQCxISCg5DTE9VRF9GVU5DVElPThAMEhYKEkFQUF9FTkdJ", - "TkVfVkVSU0lPThANEhYKEkNMT1VEX1JVTl9SRVZJU0lPThAOEhoKFkdPT0dM", - "RV9NQU5BR0VEX1NFUlZJQ0UQDxISCg5SRURJU19JTlNUQU5DRRAQEhEKDVJF", - "RElTX0NMVVNURVIQESKsAQoRR29vZ2xlU2VydmljZVR5cGUSIwofR09PR0xF", - "X1NFUlZJQ0VfVFlQRV9VTlNQRUNJRklFRBAAEgcKA0lBUBABEiQKIEdGRV9Q", - "Uk9YWV9PUl9IRUFMVEhfQ0hFQ0tfUFJPQkVSEAISDQoJQ0xPVURfRE5TEAMS", - "GQoVUFJJVkFURV9HT09HTEVfQUNDRVNTEAQSGQoVU0VSVkVSTEVTU19WUENf", - "QUNDRVNTEAUiiQMKC0ZvcndhcmRJbmZvEkUKBnRhcmdldBgBIAEoDjI1Lmdv", - "b2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52MS5Gb3J3YXJkSW5mby5U", - "YXJnZXQSFAoMcmVzb3VyY2VfdXJpGAIgASgJEhwKCmlwX2FkZHJlc3MYAyAB", - "KAlCCOKMz9cIAggEIv4BCgZUYXJnZXQSFgoSVEFSR0VUX1VOU1BFQ0lGSUVE", - "EAASDwoLUEVFUklOR19WUEMQARIPCgtWUE5fR0FURVdBWRACEhAKDElOVEVS", - "Q09OTkVDVBADEhIKCkdLRV9NQVNURVIQBBoCCAESIgoeSU1QT1JURURfQ1VT", - "VE9NX1JPVVRFX05FWFRfSE9QEAUSGgoSQ0xPVURfU1FMX0lOU1RBTkNFEAYa", - "AggBEhMKD0FOT1RIRVJfUFJPSkVDVBAHEgsKB05DQ19IVUIQCBIUChBST1VU", - "RVJfQVBQTElBTkNFEAkSHAoYU0VDVVJFX1dFQl9QUk9YWV9HQVRFV0FZEAoi", - "xgsKCUFib3J0SW5mbxJBCgVjYXVzZRgBIAEoDjIyLmdvb2dsZS5jbG91ZC5u", - "ZXR3b3JrbWFuYWdlbWVudC52MS5BYm9ydEluZm8uQ2F1c2USFAoMcmVzb3Vy", - "Y2VfdXJpGAIgASgJEhwKCmlwX2FkZHJlc3MYBCABKAlCCOKMz9cIAggEEiMK", - "G3Byb2plY3RzX21pc3NpbmdfcGVybWlzc2lvbhgDIAMoCSKcCgoFQ2F1c2US", - "FQoRQ0FVU0VfVU5TUEVDSUZJRUQQABIXCg9VTktOT1dOX05FVFdPUksQARoC", - "CAESFwoPVU5LTk9XTl9QUk9KRUNUEAMaAggBEhYKDk5PX0VYVEVSTkFMX0lQ", - "EAcaAggBEh4KFlVOSU5URU5ERURfREVTVElOQVRJT04QCBoCCAESIQoZU09V", - "UkNFX0VORFBPSU5UX05PVF9GT1VORBALGgIIARIhChlNSVNNQVRDSEVEX1NP", - "VVJDRV9ORVRXT1JLEAwaAggBEiYKHkRFU1RJTkFUSU9OX0VORFBPSU5UX05P", - "VF9GT1VORBANGgIIARImCh5NSVNNQVRDSEVEX0RFU1RJTkFUSU9OX05FVFdP", - "UksQDhoCCAESDgoKVU5LTk9XTl9JUBACEiUKIUdPT0dMRV9NQU5BR0VEX1NF", - "UlZJQ0VfVU5LTk9XTl9JUBAgEisKJ1NPVVJDRV9JUF9BRERSRVNTX05PVF9J", - "Tl9TT1VSQ0VfTkVUV09SSxAXEhUKEVBFUk1JU1NJT05fREVOSUVEEAQSKgom", - "UEVSTUlTU0lPTl9ERU5JRURfTk9fQ0xPVURfTkFUX0NPTkZJR1MQHBItCilQ", - "RVJNSVNTSU9OX0RFTklFRF9OT19ORUdfRU5EUE9JTlRfQ09ORklHUxAdEi0K", - "KVBFUk1JU1NJT05fREVOSUVEX05PX0NMT1VEX1JPVVRFUl9DT05GSUdTECQS", - "FgoSTk9fU09VUkNFX0xPQ0FUSU9OEAUSFAoQSU5WQUxJRF9BUkdVTUVOVBAG", - "EhIKDlRSQUNFX1RPT19MT05HEAkSEgoOSU5URVJOQUxfRVJST1IQChIPCgtV", - "TlNVUFBPUlRFRBAPEhkKFU1JU01BVENIRURfSVBfVkVSU0lPThAQEiYKIkdL", - "RV9LT05ORUNUSVZJVFlfUFJPWFlfVU5TVVBQT1JURUQQERIdChlSRVNPVVJD", - "RV9DT05GSUdfTk9UX0ZPVU5EEBISIAocVk1fSU5TVEFOQ0VfQ09ORklHX05P", - "VF9GT1VORBAYEhwKGE5FVFdPUktfQ09ORklHX05PVF9GT1VORBAZEh0KGUZJ", - "UkVXQUxMX0NPTkZJR19OT1RfRk9VTkQQGhIaChZST1VURV9DT05GSUdfTk9U", - "X0ZPVU5EEBsSMQotR09PR0xFX01BTkFHRURfU0VSVklDRV9BTUJJR1VPVVNf", - "UFNDX0VORFBPSU5UEBMSLQopR09PR0xFX01BTkFHRURfU0VSVklDRV9BTUJJ", - "R1VPVVNfRU5EUE9JTlQQJxIkCiBTT1VSQ0VfUFNDX0NMT1VEX1NRTF9VTlNV", - "UFBPUlRFRBAUEiQKIFNPVVJDRV9SRURJU19DTFVTVEVSX1VOU1VQUE9SVEVE", - "ECISJQohU09VUkNFX1JFRElTX0lOU1RBTkNFX1VOU1VQUE9SVEVEECMSJgoi", - "U09VUkNFX0ZPUldBUkRJTkdfUlVMRV9VTlNVUFBPUlRFRBAVEhsKF05PTl9S", - "T1VUQUJMRV9JUF9BRERSRVNTEBYSKwonVU5LTk9XTl9JU1NVRV9JTl9HT09H", - "TEVfTUFOQUdFRF9QUk9KRUNUEB4SLQopVU5TVVBQT1JURURfR09PR0xFX01B", - "TkFHRURfUFJPSkVDVF9DT05GSUcQHxIbChdOT19TRVJWRVJMRVNTX0lQX1JB", - "TkdFUxAlEiAKHElQX1ZFUlNJT05fUFJPVE9DT0xfTUlTTUFUQ0gQKCLLIAoI", - "RHJvcEluZm8SQAoFY2F1c2UYASABKA4yMS5nb29nbGUuY2xvdWQubmV0d29y", - "a21hbmFnZW1lbnQudjEuRHJvcEluZm8uQ2F1c2USFAoMcmVzb3VyY2VfdXJp", - "GAIgASgJEhEKCXNvdXJjZV9pcBgDIAEoCRIWCg5kZXN0aW5hdGlvbl9pcBgE", - "IAEoCRIOCgZyZWdpb24YBSABKAkSHwoXc291cmNlX2dlb2xvY2F0aW9uX2Nv", - "ZGUYBiABKAkSJAocZGVzdGluYXRpb25fZ2VvbG9jYXRpb25fY29kZRgHIAEo", - "CSLkHgoFQ2F1c2USFQoRQ0FVU0VfVU5TUEVDSUZJRUQQABIcChhVTktOT1dO", - "X0VYVEVSTkFMX0FERFJFU1MQARIZChVGT1JFSUdOX0lQX0RJU0FMTE9XRUQQ", - "AhIRCg1GSVJFV0FMTF9SVUxFEAMSDAoITk9fUk9VVEUQBBITCg9ST1VURV9C", - "TEFDS0hPTEUQBRIXChNST1VURV9XUk9OR19ORVRXT1JLEAYSKgomUk9VVEVf", - "TkVYVF9IT1BfSVBfQUREUkVTU19OT1RfUkVTT0xWRUQQKhIlCiFST1VURV9O", - "RVhUX0hPUF9SRVNPVVJDRV9OT1RfRk9VTkQQKxIpCiVST1VURV9ORVhUX0hP", - "UF9JTlNUQU5DRV9XUk9OR19ORVRXT1JLEDESKgomUk9VVEVfTkVYVF9IT1Bf", - "SU5TVEFOQ0VfTk9OX1BSSU1BUllfSVAQMhIuCipST1VURV9ORVhUX0hPUF9G", - "T1JXQVJESU5HX1JVTEVfSVBfTUlTTUFUQ0gQMxItCilST1VURV9ORVhUX0hP", - "UF9WUE5fVFVOTkVMX05PVF9FU1RBQkxJU0hFRBA0Ei8KK1JPVVRFX05FWFRf", - "SE9QX0ZPUldBUkRJTkdfUlVMRV9UWVBFX0lOVkFMSUQQNRIyCi5OT19ST1VU", - "RV9GUk9NX0lOVEVSTkVUX1RPX1BSSVZBVEVfSVBWNl9BRERSRVNTECwSPgo6", - "Tk9fUk9VVEVfRlJPTV9FWFRFUk5BTF9JUFY2X1NPVVJDRV9UT19QUklWQVRF", - "X0lQVjZfQUREUkVTUxBiEiYKIlZQTl9UVU5ORUxfTE9DQUxfU0VMRUNUT1Jf", - "TUlTTUFUQ0gQLRInCiNWUE5fVFVOTkVMX1JFTU9URV9TRUxFQ1RPUl9NSVNN", - "QVRDSBAuEh8KG1BSSVZBVEVfVFJBRkZJQ19UT19JTlRFUk5FVBAHEiQKIFBS", - "SVZBVEVfR09PR0xFX0FDQ0VTU19ESVNBTExPV0VEEAgSNAowUFJJVkFURV9H", - "T09HTEVfQUNDRVNTX1ZJQV9WUE5fVFVOTkVMX1VOU1VQUE9SVEVEEC8SFwoT", - "Tk9fRVhURVJOQUxfQUREUkVTUxAJEhwKGFVOS05PV05fSU5URVJOQUxfQURE", - "UkVTUxAKEhwKGEZPUldBUkRJTkdfUlVMRV9NSVNNQVRDSBALEiAKHEZPUldB", - "UkRJTkdfUlVMRV9OT19JTlNUQU5DRVMQDBI4CjRGSVJFV0FMTF9CTE9DS0lO", - "R19MT0FEX0JBTEFOQ0VSX0JBQ0tFTkRfSEVBTFRIX0NIRUNLEA0SOgo2SU5H", - "UkVTU19GSVJFV0FMTF9UQUdTX1VOU1VQUE9SVEVEX0JZX0RJUkVDVF9WUENf", - "RUdSRVNTEFUSGAoUSU5TVEFOQ0VfTk9UX1JVTk5JTkcQDhIbChdHS0VfQ0xV", - "U1RFUl9OT1RfUlVOTklORxAbEiIKHkNMT1VEX1NRTF9JTlNUQU5DRV9OT1Rf", - "UlVOTklORxAcEh4KGlJFRElTX0lOU1RBTkNFX05PVF9SVU5OSU5HEEQSHQoZ", - "UkVESVNfQ0xVU1RFUl9OT1RfUlVOTklORxBFEhgKFFRSQUZGSUNfVFlQRV9C", - "TE9DS0VEEA8SIgoeR0tFX01BU1RFUl9VTkFVVEhPUklaRURfQUNDRVNTEBAS", - "KgomQ0xPVURfU1FMX0lOU1RBTkNFX1VOQVVUSE9SSVpFRF9BQ0NFU1MQERIe", - "ChpEUk9QUEVEX0lOU0lERV9HS0VfU0VSVklDRRASEiQKIERST1BQRURfSU5T", - "SURFX0NMT1VEX1NRTF9TRVJWSUNFEBMSJQohR09PR0xFX01BTkFHRURfU0VS", - "VklDRV9OT19QRUVSSU5HEBQSKgomR09PR0xFX01BTkFHRURfU0VSVklDRV9O", - "T19QU0NfRU5EUE9JTlQQJhIcChhHS0VfUFNDX0VORFBPSU5UX01JU1NJTkcQ", - "JBIkCiBDTE9VRF9TUUxfSU5TVEFOQ0VfTk9fSVBfQUREUkVTUxAVEiUKIUdL", - "RV9DT05UUk9MX1BMQU5FX1JFR0lPTl9NSVNNQVRDSBAeEjMKL1BVQkxJQ19H", - "S0VfQ09OVFJPTF9QTEFORV9UT19QUklWQVRFX0RFU1RJTkFUSU9OEB8SHgoa", - "R0tFX0NPTlRST0xfUExBTkVfTk9fUk9VVEUQIBI6CjZDTE9VRF9TUUxfSU5T", - "VEFOQ0VfTk9UX0NPTkZJR1VSRURfRk9SX0VYVEVSTkFMX1RSQUZGSUMQIRI0", - "CjBQVUJMSUNfQ0xPVURfU1FMX0lOU1RBTkNFX1RPX1BSSVZBVEVfREVTVElO", - "QVRJT04QIhIfChtDTE9VRF9TUUxfSU5TVEFOQ0VfTk9fUk9VVEUQIxIgChxD", - "TE9VRF9TUUxfQ09OTkVDVE9SX1JFUVVJUkVEED8SHQoZQ0xPVURfRlVOQ1RJ", - "T05fTk9UX0FDVElWRRAWEhkKFVZQQ19DT05ORUNUT1JfTk9UX1NFVBAXEh0K", - "GVZQQ19DT05ORUNUT1JfTk9UX1JVTk5JTkcQGBIsCihWUENfQ09OTkVDVE9S", - "X1NFUlZFUkxFU1NfVFJBRkZJQ19CTE9DS0VEEDwSLgoqVlBDX0NPTk5FQ1RP", - "Ul9IRUFMVEhfQ0hFQ0tfVFJBRkZJQ19CTE9DS0VEED0SIwofRk9SV0FSRElO", - "R19SVUxFX1JFR0lPTl9NSVNNQVRDSBAZEh8KG1BTQ19DT05ORUNUSU9OX05P", - "VF9BQ0NFUFRFRBAaEi0KKVBTQ19FTkRQT0lOVF9BQ0NFU1NFRF9GUk9NX1BF", - "RVJFRF9ORVRXT1JLECkSLgoqUFNDX05FR19QUk9EVUNFUl9FTkRQT0lOVF9O", - "T19HTE9CQUxfQUNDRVNTEDASMwovUFNDX05FR19QUk9EVUNFUl9GT1JXQVJE", - "SU5HX1JVTEVfTVVMVElQTEVfUE9SVFMQNhIhCh1DTE9VRF9TUUxfUFNDX05F", - "R19VTlNVUFBPUlRFRBA6Ei0KKU5PX05BVF9TVUJORVRTX0ZPUl9QU0NfU0VS", - "VklDRV9BVFRBQ0hNRU5UEDkSIwofUFNDX1RSQU5TSVRJVklUWV9OT1RfUFJP", - "UEFHQVRFRBBAEigKJEhZQlJJRF9ORUdfTk9OX0RZTkFNSUNfUk9VVEVfTUFU", - "Q0hFRBA3Ei4KKkhZQlJJRF9ORUdfTk9OX0xPQ0FMX0RZTkFNSUNfUk9VVEVf", - "TUFUQ0hFRBA4EiAKHENMT1VEX1JVTl9SRVZJU0lPTl9OT1RfUkVBRFkQHRIn", - "CiNEUk9QUEVEX0lOU0lERV9QU0NfU0VSVklDRV9QUk9EVUNFUhAlEiUKIUxP", - "QURfQkFMQU5DRVJfSEFTX05PX1BST1hZX1NVQk5FVBAnEhoKFkNMT1VEX05B", - "VF9OT19BRERSRVNTRVMQKBIQCgxST1VUSU5HX0xPT1AQOxIpCiVEUk9QUEVE", - "X0lOU0lERV9HT09HTEVfTUFOQUdFRF9TRVJWSUNFED4SKQolTE9BRF9CQUxB", - "TkNFUl9CQUNLRU5EX0lOVkFMSURfTkVUV09SSxBBEioKJkJBQ0tFTkRfU0VS", - "VklDRV9OQU1FRF9QT1JUX05PVF9ERUZJTkVEEEISJwojREVTVElOQVRJT05f", - "SVNfUFJJVkFURV9OQVRfSVBfUkFOR0UQQxIpCiVEUk9QUEVEX0lOU0lERV9S", - "RURJU19JTlNUQU5DRV9TRVJWSUNFEEYSIwofUkVESVNfSU5TVEFOQ0VfVU5T", - "VVBQT1JURURfUE9SVBBHEi8KK1JFRElTX0lOU1RBTkNFX0NPTk5FQ1RJTkdf", - "RlJPTV9QVVBJX0FERFJFU1MQSBIyCi5SRURJU19JTlNUQU5DRV9OT19ST1VU", - "RV9UT19ERVNUSU5BVElPTl9ORVRXT1JLEEkSIQodUkVESVNfSU5TVEFOQ0Vf", - "Tk9fRVhURVJOQUxfSVAQShInCiNSRURJU19JTlNUQU5DRV9VTlNVUFBPUlRF", - "RF9QUk9UT0NPTBBOEigKJERST1BQRURfSU5TSURFX1JFRElTX0NMVVNURVJf", - "U0VSVklDRRBLEiIKHlJFRElTX0NMVVNURVJfVU5TVVBQT1JURURfUE9SVBBM", - "EiAKHFJFRElTX0NMVVNURVJfTk9fRVhURVJOQUxfSVAQTRImCiJSRURJU19D", - "TFVTVEVSX1VOU1VQUE9SVEVEX1BST1RPQ09MEE8SKgomTk9fQURWRVJUSVNF", - "RF9ST1VURV9UT19HQ1BfREVTVElOQVRJT04QUBIqCiZOT19UUkFGRklDX1NF", - "TEVDVE9SX1RPX0dDUF9ERVNUSU5BVElPThBREjUKMU5PX0tOT1dOX1JPVVRF", - "X0ZST01fUEVFUkVEX05FVFdPUktfVE9fREVTVElOQVRJT04QUhIrCidQUklW", - "QVRFX05BVF9UT19QU0NfRU5EUE9JTlRfVU5TVVBQT1JURUQQUxIiCh5QU0Nf", - "UE9SVF9NQVBQSU5HX1BPUlRfTUlTTUFUQ0gQVhI3CjNQU0NfUE9SVF9NQVBQ", - "SU5HX1dJVEhPVVRfUFNDX0NPTk5FQ1RJT05fVU5TVVBQT1JURUQQVxIzCi9V", - "TlNVUFBPUlRFRF9ST1VURV9NQVRDSEVEX0ZPUl9OQVQ2NF9ERVNUSU5BVElP", - "ThBYEjcKM1RSQUZGSUNfRlJPTV9IWUJSSURfRU5EUE9JTlRfVE9fSU5URVJO", - "RVRfRElTQUxMT1dFRBBZEh0KGU5PX01BVENISU5HX05BVDY0X0dBVEVXQVkQ", - "WhItCilMT0FEX0JBTEFOQ0VSX0JBQ0tFTkRfSVBfVkVSU0lPTl9NSVNNQVRD", - "SBBgEjIKLk5PX0tOT1dOX1JPVVRFX0ZST01fTkNDX05FVFdPUktfVE9fREVT", - "VElOQVRJT04QYRIiCh5DTE9VRF9OQVRfUFJPVE9DT0xfVU5TVVBQT1JURUQQ", - "YxIoCiRMMl9JTlRFUkNPTk5FQ1RfVU5TVVBQT1JURURfUFJPVE9DT0wQZBIk", - "CiBMMl9JTlRFUkNPTk5FQ1RfVU5TVVBQT1JURURfUE9SVBBlEisKJ0wyX0lO", - "VEVSQ09OTkVDVF9ERVNUSU5BVElPTl9JUF9NSVNNQVRDSBBmEi4KKk5DQ19S", - "T1VURV9XSVRISU5fSFlCUklEX1NVQk5FVF9VTlNVUFBPUlRFRBBoEiEKHUhZ", - "QlJJRF9TVUJORVRfUkVHSU9OX01JU01BVENIEGkigQEKDUdLRU1hc3Rlcklu", - "Zm8SEwoLY2x1c3Rlcl91cmkYAiABKAkSGwoTY2x1c3Rlcl9uZXR3b3JrX3Vy", - "aRgEIAEoCRITCgtpbnRlcm5hbF9pcBgFIAEoCRITCgtleHRlcm5hbF9pcBgG", - "IAEoCRIUCgxkbnNfZW5kcG9pbnQYByABKAkiiAEKFENsb3VkU1FMSW5zdGFu", - "Y2VJbmZvEhQKDGRpc3BsYXlfbmFtZRgBIAEoCRILCgN1cmkYAiABKAkSEwoL", - "bmV0d29ya191cmkYBCABKAkSEwoLaW50ZXJuYWxfaXAYBSABKAkSEwoLZXh0", - "ZXJuYWxfaXAYBiABKAkSDgoGcmVnaW9uGAcgASgJIpIBChFSZWRpc0luc3Rh", - "bmNlSW5mbxIUCgxkaXNwbGF5X25hbWUYASABKAkSCwoDdXJpGAIgASgJEhMK", - "C25ldHdvcmtfdXJpGAMgASgJEhsKE3ByaW1hcnlfZW5kcG9pbnRfaXAYBCAB", - "KAkSGAoQcmVhZF9lbmRwb2ludF9pcBgFIAEoCRIOCgZyZWdpb24YBiABKAki", - "vgEKEFJlZGlzQ2x1c3RlckluZm8SFAoMZGlzcGxheV9uYW1lGAEgASgJEgsK", - "A3VyaRgCIAEoCRITCgtuZXR3b3JrX3VyaRgDIAEoCRIvCh1kaXNjb3Zlcnlf", - "ZW5kcG9pbnRfaXBfYWRkcmVzcxgEIAEoCUII4ozP1wgCCAQSLwodc2Vjb25k", - "YXJ5X2VuZHBvaW50X2lwX2FkZHJlc3MYBSABKAlCCOKMz9cIAggEEhAKCGxv", - "Y2F0aW9uGAYgASgJIlwKEUNsb3VkRnVuY3Rpb25JbmZvEhQKDGRpc3BsYXlf", - "bmFtZRgBIAEoCRILCgN1cmkYAiABKAkSEAoIbG9jYXRpb24YAyABKAkSEgoK", - "dmVyc2lvbl9pZBgEIAEoAyJgChRDbG91ZFJ1blJldmlzaW9uSW5mbxIUCgxk", - "aXNwbGF5X25hbWUYASABKAkSCwoDdXJpGAIgASgJEhAKCGxvY2F0aW9uGAQg", - "ASgJEhMKC3NlcnZpY2VfdXJpGAUgASgJIl8KFEFwcEVuZ2luZVZlcnNpb25J", - "bmZvEhQKDGRpc3BsYXlfbmFtZRgBIAEoCRILCgN1cmkYAiABKAkSDwoHcnVu", - "dGltZRgDIAEoCRITCgtlbnZpcm9ubWVudBgEIAEoCSJHChBWcGNDb25uZWN0", - "b3JJbmZvEhQKDGRpc3BsYXlfbmFtZRgBIAEoCRILCgN1cmkYAiABKAkSEAoI", - "bG9jYXRpb24YAyABKAkiqAEKHURpcmVjdFZwY0VncmVzc0Nvbm5lY3Rpb25J", - "bmZvEhMKC25ldHdvcmtfdXJpGAEgASgJEhYKDnN1Ym5ldHdvcmtfdXJpGAIg", - "ASgJEiMKEXNlbGVjdGVkX2lwX3JhbmdlGAMgASgJQgjijM/XCAIIBBIlChNz", - "ZWxlY3RlZF9pcF9hZGRyZXNzGAQgASgJQgjijM/XCAIIBBIOCgZyZWdpb24Y", - "BSABKAkiSQogU2VydmVybGVzc0V4dGVybmFsQ29ubmVjdGlvbkluZm8SJQoT", - "c2VsZWN0ZWRfaXBfYWRkcmVzcxgBIAEoCUII4ozP1wgCCAQijQQKB05hdElu", - "Zm8SPQoEdHlwZRgBIAEoDjIvLmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdl", - "bWVudC52MS5OYXRJbmZvLlR5cGUSEAoIcHJvdG9jb2wYAiABKAkSEwoLbmV0", - "d29ya191cmkYAyABKAkSFQoNb2xkX3NvdXJjZV9pcBgEIAEoCRIVCg1uZXdf", - "c291cmNlX2lwGAUgASgJEhoKEm9sZF9kZXN0aW5hdGlvbl9pcBgGIAEoCRIa", - "ChJuZXdfZGVzdGluYXRpb25faXAYByABKAkSFwoPb2xkX3NvdXJjZV9wb3J0", - "GAggASgFEhcKD25ld19zb3VyY2VfcG9ydBgJIAEoBRIcChRvbGRfZGVzdGlu", - "YXRpb25fcG9ydBgKIAEoBRIcChRuZXdfZGVzdGluYXRpb25fcG9ydBgLIAEo", - "BRISCgpyb3V0ZXJfdXJpGAwgASgJEhgKEG5hdF9nYXRld2F5X25hbWUYDSAB", - "KAkimQEKBFR5cGUSFAoQVFlQRV9VTlNQRUNJRklFRBAAEhgKFElOVEVSTkFM", - "X1RPX0VYVEVSTkFMEAESGAoURVhURVJOQUxfVE9fSU5URVJOQUwQAhINCglD", - "TE9VRF9OQVQQAxIbChdQUklWQVRFX1NFUlZJQ0VfQ09OTkVDVBAEEhsKF0dL", - "RV9QT0RfSVBfTUFTUVVFUkFESU5HEAUipAIKE1Byb3h5Q29ubmVjdGlvbklu", - "Zm8SEAoIcHJvdG9jb2wYASABKAkSFQoNb2xkX3NvdXJjZV9pcBgCIAEoCRIV", - "Cg1uZXdfc291cmNlX2lwGAMgASgJEhoKEm9sZF9kZXN0aW5hdGlvbl9pcBgE", - "IAEoCRIaChJuZXdfZGVzdGluYXRpb25faXAYBSABKAkSFwoPb2xkX3NvdXJj", - "ZV9wb3J0GAYgASgFEhcKD25ld19zb3VyY2VfcG9ydBgHIAEoBRIcChRvbGRf", - "ZGVzdGluYXRpb25fcG9ydBgIIAEoBRIcChRuZXdfZGVzdGluYXRpb25fcG9y", - "dBgJIAEoBRISCgpzdWJuZXRfdXJpGAogASgJEhMKC25ldHdvcmtfdXJpGAsg", - "ASgJIvIEChdMb2FkQmFsYW5jZXJCYWNrZW5kSW5mbxIMCgRuYW1lGAEgASgJ", - "EhQKDGluc3RhbmNlX3VyaRgCIAEoCRIbChNiYWNrZW5kX3NlcnZpY2VfdXJp", - "GAMgASgJEhoKEmluc3RhbmNlX2dyb3VwX3VyaRgEIAEoCRIiChpuZXR3b3Jr", - "X2VuZHBvaW50X2dyb3VwX3VyaRgFIAEoCRIaChJiYWNrZW5kX2J1Y2tldF91", - "cmkYCCABKAkSIgoacHNjX3NlcnZpY2VfYXR0YWNobWVudF91cmkYCSABKAkS", - "HQoVcHNjX2dvb2dsZV9hcGlfdGFyZ2V0GAogASgJEhgKEGhlYWx0aF9jaGVj", - "a191cmkYBiABKAkSjAEKI2hlYWx0aF9jaGVja19maXJld2FsbHNfY29uZmln", - "X3N0YXRlGAcgASgOMlouZ29vZ2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50", - "LnYxLkxvYWRCYWxhbmNlckJhY2tlbmRJbmZvLkhlYWx0aENoZWNrRmlyZXdh", - "bGxzQ29uZmlnU3RhdGVCA+BBAyLNAQofSGVhbHRoQ2hlY2tGaXJld2FsbHND", - "b25maWdTdGF0ZRIzCi9IRUFMVEhfQ0hFQ0tfRklSRVdBTExTX0NPTkZJR19T", - "VEFURV9VTlNQRUNJRklFRBAAEhgKFEZJUkVXQUxMU19DT05GSUdVUkVEEAES", - "IgoeRklSRVdBTExTX1BBUlRJQUxMWV9DT05GSUdVUkVEEAISHAoYRklSRVdB", - "TExTX05PVF9DT05GSUdVUkVEEAMSGQoVRklSRVdBTExTX1VOU1VQUE9SVEVE", - "EAQiIwoRU3RvcmFnZUJ1Y2tldEluZm8SDgoGYnVja2V0GAEgASgJIiQKEVNl", - "cnZlcmxlc3NOZWdJbmZvEg8KB25lZ191cmkYASABKAkq9gIKEExvYWRCYWxh", - "bmNlclR5cGUSIgoeTE9BRF9CQUxBTkNFUl9UWVBFX1VOU1BFQ0lGSUVEEAAS", - "IAocSFRUUFNfQURWQU5DRURfTE9BRF9CQUxBTkNFUhABEhcKE0hUVFBTX0xP", - "QURfQkFMQU5DRVIQAhIgChxSRUdJT05BTF9IVFRQU19MT0FEX0JBTEFOQ0VS", - "EAMSIAocSU5URVJOQUxfSFRUUFNfTE9BRF9CQUxBTkNFUhAEEhsKF1NTTF9Q", - "Uk9YWV9MT0FEX0JBTEFOQ0VSEAUSGwoXVENQX1BST1hZX0xPQURfQkFMQU5D", - "RVIQBhIkCiBJTlRFUk5BTF9UQ1BfUFJPWFlfTE9BRF9CQUxBTkNFUhAHEhkK", - "FU5FVFdPUktfTE9BRF9CQUxBTkNFUhAIEiAKHExFR0FDWV9ORVRXT1JLX0xP", - "QURfQkFMQU5DRVIQCRIiCh5UQ1BfVURQX0lOVEVSTkFMX0xPQURfQkFMQU5D", - "RVIQCkL5AQolY29tLmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52", - "MUIKVHJhY2VQcm90b1ABWlNjbG91ZC5nb29nbGUuY29tL2dvL25ldHdvcmtt", - "YW5hZ2VtZW50L2FwaXYxL25ldHdvcmttYW5hZ2VtZW50cGI7bmV0d29ya21h", - "bmFnZW1lbnRwYqoCIUdvb2dsZS5DbG91ZC5OZXR3b3JrTWFuYWdlbWVudC5W", - "McoCIUdvb2dsZVxDbG91ZFxOZXR3b3JrTWFuYWdlbWVudFxWMeoCJEdvb2ds", - "ZTo6Q2xvdWQ6Ok5ldHdvcmtNYW5hZ2VtZW50OjpWMWIGcHJvdG8z")); + "dHdvcmttYW5hZ2VtZW50LnYxLkdLRU1hc3RlckluZm9IABJACgdna2VfcG9k", + "GCUgASgLMi0uZ29vZ2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLkdr", + "ZVBvZEluZm9IABJfChdpcF9tYXNxdWVyYWRpbmdfc2tpcHBlZBgmIAEoCzI8", + "Lmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52MS5JcE1hc3F1ZXJh", + "ZGluZ1NraXBwZWRJbmZvSAASVQoSY2xvdWRfc3FsX2luc3RhbmNlGBMgASgL", + "MjcuZ29vZ2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLkNsb3VkU1FM", + "SW5zdGFuY2VJbmZvSAASTgoOcmVkaXNfaW5zdGFuY2UYHiABKAsyNC5nb29n", + "bGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuUmVkaXNJbnN0YW5jZUlu", + "Zm9IABJMCg1yZWRpc19jbHVzdGVyGB8gASgLMjMuZ29vZ2xlLmNsb3VkLm5l", + "dHdvcmttYW5hZ2VtZW50LnYxLlJlZGlzQ2x1c3RlckluZm9IABJOCg5jbG91", + "ZF9mdW5jdGlvbhgUIAEoCzI0Lmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdl", + "bWVudC52MS5DbG91ZEZ1bmN0aW9uSW5mb0gAElUKEmFwcF9lbmdpbmVfdmVy", + "c2lvbhgWIAEoCzI3Lmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52", + "MS5BcHBFbmdpbmVWZXJzaW9uSW5mb0gAElUKEmNsb3VkX3J1bl9yZXZpc2lv", + "bhgXIAEoCzI3Lmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52MS5D", + "bG91ZFJ1blJldmlzaW9uSW5mb0gAEjkKA25hdBgZIAEoCzIqLmdvb2dsZS5j", + "bG91ZC5uZXR3b3JrbWFuYWdlbWVudC52MS5OYXRJbmZvSAASUgoQcHJveHlf", + "Y29ubmVjdGlvbhgaIAEoCzI2Lmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdl", + "bWVudC52MS5Qcm94eUNvbm5lY3Rpb25JbmZvSAASYAoabG9hZF9iYWxhbmNl", + "cl9iYWNrZW5kX2luZm8YGyABKAsyOi5nb29nbGUuY2xvdWQubmV0d29ya21h", + "bmFnZW1lbnQudjEuTG9hZEJhbGFuY2VyQmFja2VuZEluZm9IABJOCg5zdG9y", + "YWdlX2J1Y2tldBgcIAEoCzI0Lmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdl", + "bWVudC52MS5TdG9yYWdlQnVja2V0SW5mb0gAEk4KDnNlcnZlcmxlc3NfbmVn", + "GB0gASgLMjQuZ29vZ2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLlNl", + "cnZlcmxlc3NOZWdJbmZvSAAi6QgKBVN0YXRlEhUKEVNUQVRFX1VOU1BFQ0lG", + "SUVEEAASFwoTU1RBUlRfRlJPTV9JTlNUQU5DRRABEhcKE1NUQVJUX0ZST01f", + "SU5URVJORVQQAhIdChlTVEFSVF9GUk9NX0dPT0dMRV9TRVJWSUNFEBsSHgoa", + "U1RBUlRfRlJPTV9QUklWQVRFX05FVFdPUksQAxIZChVTVEFSVF9GUk9NX0dL", + "RV9NQVNURVIQFRIhCh1TVEFSVF9GUk9NX0NMT1VEX1NRTF9JTlNUQU5DRRAW", + "EhYKElNUQVJUX0ZST01fR0tFX1BPRBAnEh0KGVNUQVJUX0ZST01fUkVESVNf", + "SU5TVEFOQ0UQIBIcChhTVEFSVF9GUk9NX1JFRElTX0NMVVNURVIQIRIdChlT", + "VEFSVF9GUk9NX0NMT1VEX0ZVTkNUSU9OEBcSIQodU1RBUlRfRlJPTV9BUFBf", + "RU5HSU5FX1ZFUlNJT04QGRIhCh1TVEFSVF9GUk9NX0NMT1VEX1JVTl9SRVZJ", + "U0lPThAaEh0KGVNUQVJUX0ZST01fU1RPUkFHRV9CVUNLRVQQHRIkCiBTVEFS", + "VF9GUk9NX1BTQ19QVUJMSVNIRURfU0VSVklDRRAeEh0KGVNUQVJUX0ZST01f", + "U0VSVkVSTEVTU19ORUcQHxIfChtBUFBMWV9JTkdSRVNTX0ZJUkVXQUxMX1JV", + "TEUQBBIeChpBUFBMWV9FR1JFU1NfRklSRVdBTExfUlVMRRAFEg8KC0FQUExZ", + "X1JPVVRFEAYSGQoVQVBQTFlfRk9SV0FSRElOR19SVUxFEAcSIQodQU5BTFla", + "RV9MT0FEX0JBTEFOQ0VSX0JBQ0tFTkQQHBIVChFTUE9PRklOR19BUFBST1ZF", + "RBAIEhYKEkFSUklWRV9BVF9JTlNUQU5DRRAJEigKIEFSUklWRV9BVF9JTlRF", + "Uk5BTF9MT0FEX0JBTEFOQ0VSEAoaAggBEigKIEFSUklWRV9BVF9FWFRFUk5B", + "TF9MT0FEX0JBTEFOQ0VSEAsaAggBEhsKF0FSUklWRV9BVF9IWUJSSURfU1VC", + "TkVUECYSGQoVQVJSSVZFX0FUX1ZQTl9HQVRFV0FZEAwSGAoUQVJSSVZFX0FU", + "X1ZQTl9UVU5ORUwQDRIlCiFBUlJJVkVfQVRfSU5URVJDT05ORUNUX0FUVEFD", + "SE1FTlQQJRIbChdBUlJJVkVfQVRfVlBDX0NPTk5FQ1RPUhAYEiAKHERJUkVD", + "VF9WUENfRUdSRVNTX0NPTk5FQ1RJT04QIxIiCh5TRVJWRVJMRVNTX0VYVEVS", + "TkFMX0NPTk5FQ1RJT04QJBIHCgNOQVQQDhIgChxTS0lQX0dLRV9QT0RfSVBf", + "TUFTUVVFUkFESU5HECgSFAoQUFJPWFlfQ09OTkVDVElPThAPEgsKB0RFTElW", + "RVIQEBIICgREUk9QEBESCwoHRk9SV0FSRBASEgkKBUFCT1JUEBMSHQoZVklF", + "V0VSX1BFUk1JU1NJT05fTUlTU0lORxAUQgsKCXN0ZXBfaW5mbyL3AgoMSW5z", + "dGFuY2VJbmZvEhQKDGRpc3BsYXlfbmFtZRgBIAEoCRILCgN1cmkYAiABKAkS", + "EQoJaW50ZXJmYWNlGAMgASgJEhMKC25ldHdvcmtfdXJpGAQgASgJEhMKC2lu", + "dGVybmFsX2lwGAUgASgJEhMKC2V4dGVybmFsX2lwGAYgASgJEhQKDG5ldHdv", + "cmtfdGFncxgHIAMoCRIbCg9zZXJ2aWNlX2FjY291bnQYCCABKAlCAhgBEiIK", + "GnBzY19uZXR3b3JrX2F0dGFjaG1lbnRfdXJpGAkgASgJEhMKB3J1bm5pbmcY", + "CiABKAhCAhgBEkYKBnN0YXR1cxgLIAEoDjI2Lmdvb2dsZS5jbG91ZC5uZXR3", + "b3JrbWFuYWdlbWVudC52MS5JbnN0YW5jZUluZm8uU3RhdHVzIj4KBlN0YXR1", + "cxIWChJTVEFUVVNfVU5TUEVDSUZJRUQQABILCgdSVU5OSU5HEAESDwoLTk9U", + "X1JVTk5JTkcQAiJ2CgtOZXR3b3JrSW5mbxIUCgxkaXNwbGF5X25hbWUYASAB", + "KAkSCwoDdXJpGAIgASgJEhoKEm1hdGNoZWRfc3VibmV0X3VyaRgFIAEoCRIY", + "ChBtYXRjaGVkX2lwX3JhbmdlGAQgASgJEg4KBnJlZ2lvbhgGIAEoCSKvBwoM", + "RmlyZXdhbGxJbmZvEhQKDGRpc3BsYXlfbmFtZRgBIAEoCRILCgN1cmkYAiAB", + "KAkSEQoJZGlyZWN0aW9uGAMgASgJEg4KBmFjdGlvbhgEIAEoCRIQCghwcmlv", + "cml0eRgFIAEoBRITCgtuZXR3b3JrX3VyaRgGIAEoCRITCgt0YXJnZXRfdGFn", + "cxgHIAMoCRIfChd0YXJnZXRfc2VydmljZV9hY2NvdW50cxgIIAMoCRIOCgZw", + "b2xpY3kYCSABKAkSEgoKcG9saWN5X3VyaRgLIAEoCRJcChJmaXJld2FsbF9y", + "dWxlX3R5cGUYCiABKA4yQC5nb29nbGUuY2xvdWQubmV0d29ya21hbmFnZW1l", + "bnQudjEuRmlyZXdhbGxJbmZvLkZpcmV3YWxsUnVsZVR5cGUSFwoPcG9saWN5", + "X3ByaW9yaXR5GAwgASgFEk8KC3RhcmdldF90eXBlGA0gASgOMjouZ29vZ2xl", + "LmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLkZpcmV3YWxsSW5mby5UYXJn", + "ZXRUeXBlIrwDChBGaXJld2FsbFJ1bGVUeXBlEiIKHkZJUkVXQUxMX1JVTEVf", + "VFlQRV9VTlNQRUNJRklFRBAAEiUKIUhJRVJBUkNISUNBTF9GSVJFV0FMTF9Q", + "T0xJQ1lfUlVMRRABEhUKEVZQQ19GSVJFV0FMTF9SVUxFEAISHQoZSU1QTElF", + "RF9WUENfRklSRVdBTExfUlVMRRADEi8KK1NFUlZFUkxFU1NfVlBDX0FDQ0VT", + "U19NQU5BR0VEX0ZJUkVXQUxMX1JVTEUQBBIgChxORVRXT1JLX0ZJUkVXQUxM", + "X1BPTElDWV9SVUxFEAUSKQolTkVUV09SS19SRUdJT05BTF9GSVJFV0FMTF9Q", + "T0xJQ1lfUlVMRRAGEicKI1NZU1RFTV9ORVRXT1JLX0ZJUkVXQUxMX1BPTElD", + "WV9SVUxFEAcSMAosU1lTVEVNX1JFR0lPTkFMX05FVFdPUktfRklSRVdBTExf", + "UE9MSUNZX1JVTEUQCBIkCiBVTlNVUFBPUlRFRF9GSVJFV0FMTF9QT0xJQ1lf", + "UlVMRRBkEhIKDlRSQUNLSU5HX1NUQVRFEGUSFAoQQU5BTFlTSVNfU0tJUFBF", + "RBBmIlEKClRhcmdldFR5cGUSGwoXVEFSR0VUX1RZUEVfVU5TUEVDSUZJRUQQ", + "ABINCglJTlNUQU5DRVMQARIXChNJTlRFUk5BTF9NQU5BR0VEX0xCEAIi7AsK", + "CVJvdXRlSW5mbxJKCgpyb3V0ZV90eXBlGAggASgOMjYuZ29vZ2xlLmNsb3Vk", + "Lm5ldHdvcmttYW5hZ2VtZW50LnYxLlJvdXRlSW5mby5Sb3V0ZVR5cGUSTwoN", + "bmV4dF9ob3BfdHlwZRgJIAEoDjI4Lmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFu", + "YWdlbWVudC52MS5Sb3V0ZUluZm8uTmV4dEhvcFR5cGUSUAoLcm91dGVfc2Nv", + "cGUYDiABKA4yNy5nb29nbGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEu", + "Um91dGVJbmZvLlJvdXRlU2NvcGVCAhgBEhQKDGRpc3BsYXlfbmFtZRgBIAEo", + "CRILCgN1cmkYAiABKAkSDgoGcmVnaW9uGBMgASgJEhUKDWRlc3RfaXBfcmFu", + "Z2UYAyABKAkSFAoIbmV4dF9ob3AYBCABKAlCAhgBEhMKC25ldHdvcmtfdXJp", + "GAUgASgJEhAKCHByaW9yaXR5GAYgASgFEhUKDWluc3RhbmNlX3RhZ3MYByAD", + "KAkSFAoMc3JjX2lwX3JhbmdlGAogASgJEhgKEGRlc3RfcG9ydF9yYW5nZXMY", + "CyADKAkSFwoPc3JjX3BvcnRfcmFuZ2VzGAwgAygJEhEKCXByb3RvY29scxgN", + "IAMoCRIYCgtuY2NfaHViX3VyaRgPIAEoCUgAiAEBEhoKDW5jY19zcG9rZV91", + "cmkYECABKAlIAYgBARIvCiJhZHZlcnRpc2VkX3JvdXRlX3NvdXJjZV9yb3V0", + "ZXJfdXJpGBEgASgJSAKIAQESLgodYWR2ZXJ0aXNlZF9yb3V0ZV9uZXh0X2hv", + "cF91cmkYEiABKAlCAhgBSAOIAQESFAoMbmV4dF9ob3BfdXJpGBQgASgJEhwK", + "FG5leHRfaG9wX25ldHdvcmtfdXJpGBUgASgJEh0KFW9yaWdpbmF0aW5nX3Jv", + "dXRlX3VyaRgWIAEoCRImCh5vcmlnaW5hdGluZ19yb3V0ZV9kaXNwbGF5X25h", + "bWUYFyABKAkSGQoRbmNjX2h1Yl9yb3V0ZV91cmkYGCABKAkiqwEKCVJvdXRl", + "VHlwZRIaChZST1VURV9UWVBFX1VOU1BFQ0lGSUVEEAASCgoGU1VCTkVUEAES", + "CgoGU1RBVElDEAISCwoHRFlOQU1JQxADEhIKDlBFRVJJTkdfU1VCTkVUEAQS", + "EgoOUEVFUklOR19TVEFUSUMQBRITCg9QRUVSSU5HX0RZTkFNSUMQBhIQCgxQ", + "T0xJQ1lfQkFTRUQQBxIOCgpBRFZFUlRJU0VEEGUi6gIKC05leHRIb3BUeXBl", + "Eh0KGU5FWFRfSE9QX1RZUEVfVU5TUEVDSUZJRUQQABIPCgtORVhUX0hPUF9J", + "UBABEhUKEU5FWFRfSE9QX0lOU1RBTkNFEAISFAoQTkVYVF9IT1BfTkVUV09S", + "SxADEhQKEE5FWFRfSE9QX1BFRVJJTkcQBBIZChVORVhUX0hPUF9JTlRFUkNP", + "Tk5FQ1QQBRIXChNORVhUX0hPUF9WUE5fVFVOTkVMEAYSGAoUTkVYVF9IT1Bf", + "VlBOX0dBVEVXQVkQBxIdChlORVhUX0hPUF9JTlRFUk5FVF9HQVRFV0FZEAgS", + "FgoSTkVYVF9IT1BfQkxBQ0tIT0xFEAkSEAoMTkVYVF9IT1BfSUxCEAoSHQoZ", + "TkVYVF9IT1BfUk9VVEVSX0FQUExJQU5DRRALEhQKEE5FWFRfSE9QX05DQ19I", + "VUIQDBIcChhTRUNVUkVfV0VCX1BST1hZX0dBVEVXQVkQDSJDCgpSb3V0ZVNj", + "b3BlEhsKF1JPVVRFX1NDT1BFX1VOU1BFQ0lGSUVEEAASCwoHTkVUV09SSxAB", + "EgsKB05DQ19IVUIQAkIOCgxfbmNjX2h1Yl91cmlCEAoOX25jY19zcG9rZV91", + "cmlCJQojX2FkdmVydGlzZWRfcm91dGVfc291cmNlX3JvdXRlcl91cmlCIAoe", + "X2FkdmVydGlzZWRfcm91dGVfbmV4dF9ob3BfdXJpItoCChFHb29nbGVTZXJ2", + "aWNlSW5mbxIRCglzb3VyY2VfaXAYASABKAkSYwoTZ29vZ2xlX3NlcnZpY2Vf", + "dHlwZRgCIAEoDjJGLmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52", + "MS5Hb29nbGVTZXJ2aWNlSW5mby5Hb29nbGVTZXJ2aWNlVHlwZSLMAQoRR29v", + "Z2xlU2VydmljZVR5cGUSIwofR09PR0xFX1NFUlZJQ0VfVFlQRV9VTlNQRUNJ", + "RklFRBAAEgcKA0lBUBABEiQKIEdGRV9QUk9YWV9PUl9IRUFMVEhfQ0hFQ0tf", + "UFJPQkVSEAISDQoJQ0xPVURfRE5TEAMSDgoKR09PR0xFX0FQSRAEEhIKDkdP", + "T0dMRV9BUElfUFNDEAUSFQoRR09PR0xFX0FQSV9WUENfU0MQBhIZChVTRVJW", + "RVJMRVNTX1ZQQ19BQ0NFU1MQByKOAgoSRm9yd2FyZGluZ1J1bGVJbmZvEhQK", + "DGRpc3BsYXlfbmFtZRgBIAEoCRILCgN1cmkYAiABKAkSGAoQbWF0Y2hlZF9w", + "cm90b2NvbBgDIAEoCRIaChJtYXRjaGVkX3BvcnRfcmFuZ2UYBiABKAkSCwoD", + "dmlwGAQgASgJEg4KBnRhcmdldBgFIAEoCRITCgtuZXR3b3JrX3VyaRgHIAEo", + "CRIOCgZyZWdpb24YCCABKAkSGgoSbG9hZF9iYWxhbmNlcl9uYW1lGAkgASgJ", + "EiIKGnBzY19zZXJ2aWNlX2F0dGFjaG1lbnRfdXJpGAogASgJEh0KFXBzY19n", + "b29nbGVfYXBpX3RhcmdldBgLIAEoCSLCBAoQTG9hZEJhbGFuY2VySW5mbxJg", + "ChJsb2FkX2JhbGFuY2VyX3R5cGUYASABKA4yRC5nb29nbGUuY2xvdWQubmV0", + "d29ya21hbmFnZW1lbnQudjEuTG9hZEJhbGFuY2VySW5mby5Mb2FkQmFsYW5j", + "ZXJUeXBlEhwKEGhlYWx0aF9jaGVja191cmkYAiABKAlCAhgBEkgKCGJhY2tl", + "bmRzGAMgAygLMjYuZ29vZ2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYx", + "LkxvYWRCYWxhbmNlckJhY2tlbmQSVQoMYmFja2VuZF90eXBlGAQgASgOMj8u", + "Z29vZ2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLkxvYWRCYWxhbmNl", + "ckluZm8uQmFja2VuZFR5cGUSEwoLYmFja2VuZF91cmkYBSABKAkijwEKEExv", + "YWRCYWxhbmNlclR5cGUSIgoeTE9BRF9CQUxBTkNFUl9UWVBFX1VOU1BFQ0lG", + "SUVEEAASFAoQSU5URVJOQUxfVENQX1VEUBABEhMKD05FVFdPUktfVENQX1VE", + "UBACEg4KCkhUVFBfUFJPWFkQAxINCglUQ1BfUFJPWFkQBBINCglTU0xfUFJP", + "WFkQBSJmCgtCYWNrZW5kVHlwZRIcChhCQUNLRU5EX1RZUEVfVU5TUEVDSUZJ", + "RUQQABITCg9CQUNLRU5EX1NFUlZJQ0UQARIPCgtUQVJHRVRfUE9PTBACEhMK", + "D1RBUkdFVF9JTlNUQU5DRRADIvYCChNMb2FkQmFsYW5jZXJCYWNrZW5kEhQK", + "DGRpc3BsYXlfbmFtZRgBIAEoCRILCgN1cmkYAiABKAkSdAobaGVhbHRoX2No", + "ZWNrX2ZpcmV3YWxsX3N0YXRlGAMgASgOMk8uZ29vZ2xlLmNsb3VkLm5ldHdv", + "cmttYW5hZ2VtZW50LnYxLkxvYWRCYWxhbmNlckJhY2tlbmQuSGVhbHRoQ2hl", + "Y2tGaXJld2FsbFN0YXRlEiwKJGhlYWx0aF9jaGVja19hbGxvd2luZ19maXJl", + "d2FsbF9ydWxlcxgEIAMoCRIsCiRoZWFsdGhfY2hlY2tfYmxvY2tpbmdfZmly", + "ZXdhbGxfcnVsZXMYBSADKAkiagoYSGVhbHRoQ2hlY2tGaXJld2FsbFN0YXRl", + "EisKJ0hFQUxUSF9DSEVDS19GSVJFV0FMTF9TVEFURV9VTlNQRUNJRklFRBAA", + "Eg4KCkNPTkZJR1VSRUQQARIRCg1NSVNDT05GSUdVUkVEEAIiRQoQSHlicmlk", + "U3VibmV0SW5mbxIUCgxkaXNwbGF5X25hbWUYASABKAkSCwoDdXJpGAIgASgJ", + "Eg4KBnJlZ2lvbhgDIAEoCSKEAQoOVnBuR2F0ZXdheUluZm8SFAoMZGlzcGxh", + "eV9uYW1lGAEgASgJEgsKA3VyaRgCIAEoCRITCgtuZXR3b3JrX3VyaRgDIAEo", + "CRISCgppcF9hZGRyZXNzGAQgASgJEhYKDnZwbl90dW5uZWxfdXJpGAUgASgJ", + "Eg4KBnJlZ2lvbhgGIAEoCSLuAgoNVnBuVHVubmVsSW5mbxIUCgxkaXNwbGF5", + "X25hbWUYASABKAkSCwoDdXJpGAIgASgJEhYKDnNvdXJjZV9nYXRld2F5GAMg", + "ASgJEhYKDnJlbW90ZV9nYXRld2F5GAQgASgJEhkKEXJlbW90ZV9nYXRld2F5", + "X2lwGAUgASgJEhkKEXNvdXJjZV9nYXRld2F5X2lwGAYgASgJEhMKC25ldHdv", + "cmtfdXJpGAcgASgJEg4KBnJlZ2lvbhgIIAEoCRJSCgxyb3V0aW5nX3R5cGUY", + "CSABKA4yPC5nb29nbGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuVnBu", + "VHVubmVsSW5mby5Sb3V0aW5nVHlwZSJbCgtSb3V0aW5nVHlwZRIcChhST1VU", + "SU5HX1RZUEVfVU5TUEVDSUZJRUQQABIPCgtST1VURV9CQVNFRBABEhAKDFBP", + "TElDWV9CQVNFRBACEgsKB0RZTkFNSUMQAyLrAgoaSW50ZXJjb25uZWN0QXR0", + "YWNobWVudEluZm8SFAoMZGlzcGxheV9uYW1lGAEgASgJEgsKA3VyaRgCIAEo", + "CRIYChBpbnRlcmNvbm5lY3RfdXJpGAMgASgJEg4KBnJlZ2lvbhgEIAEoCRIY", + "ChBjbG91ZF9yb3V0ZXJfdXJpGAUgASgJElAKBHR5cGUYBiABKA4yQi5nb29n", + "bGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuSW50ZXJjb25uZWN0QXR0", + "YWNobWVudEluZm8uVHlwZRIyCiBsMl9hdHRhY2htZW50X21hdGNoZWRfaXBf", + "YWRkcmVzcxgHIAEoCUII4ozP1wgCCAQiYAoEVHlwZRIUChBUWVBFX1VOU1BF", + "Q0lGSUVEEAASDQoJREVESUNBVEVEEAESCwoHUEFSVE5FUhACEhQKEFBBUlRO", + "RVJfUFJPVklERVIQAxIQCgxMMl9ERURJQ0FURUQQBCLRAQoMRW5kcG9pbnRJ", + "bmZvEhEKCXNvdXJjZV9pcBgBIAEoCRIWCg5kZXN0aW5hdGlvbl9pcBgCIAEo", + "CRIQCghwcm90b2NvbBgDIAEoCRITCgtzb3VyY2VfcG9ydBgEIAEoBRIYChBk", + "ZXN0aW5hdGlvbl9wb3J0GAUgASgFEhoKEnNvdXJjZV9uZXR3b3JrX3VyaRgG", + "IAEoCRIfChdkZXN0aW5hdGlvbl9uZXR3b3JrX3VyaRgHIAEoCRIYChBzb3Vy", + "Y2VfYWdlbnRfdXJpGAggASgJItQGCgtEZWxpdmVySW5mbxJFCgZ0YXJnZXQY", + "ASABKA4yNS5nb29nbGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuRGVs", + "aXZlckluZm8uVGFyZ2V0EhQKDHJlc291cmNlX3VyaRgCIAEoCRIcCgppcF9h", + "ZGRyZXNzGAMgASgJQgjijM/XCAIIBBIWCg5zdG9yYWdlX2J1Y2tldBgEIAEo", + "CRIdChVwc2NfZ29vZ2xlX2FwaV90YXJnZXQYBSABKAkSXQoTZ29vZ2xlX3Nl", + "cnZpY2VfdHlwZRgGIAEoDjJALmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdl", + "bWVudC52MS5EZWxpdmVySW5mby5Hb29nbGVTZXJ2aWNlVHlwZSKEAwoGVGFy", + "Z2V0EhYKElRBUkdFVF9VTlNQRUNJRklFRBAAEgwKCElOU1RBTkNFEAESDAoI", + "SU5URVJORVQQAhIOCgpHT09HTEVfQVBJEAMSDgoKR0tFX01BU1RFUhAEEhYK", + "EkNMT1VEX1NRTF9JTlNUQU5DRRAFEhkKFVBTQ19QVUJMSVNIRURfU0VSVklD", + "RRAGEhIKDlBTQ19HT09HTEVfQVBJEAcSDgoKUFNDX1ZQQ19TQxAIEhIKDlNF", + "UlZFUkxFU1NfTkVHEAkSEgoOU1RPUkFHRV9CVUNLRVQQChITCg9QUklWQVRF", + "X05FVFdPUksQCxISCg5DTE9VRF9GVU5DVElPThAMEhYKEkFQUF9FTkdJTkVf", + "VkVSU0lPThANEhYKEkNMT1VEX1JVTl9SRVZJU0lPThAOEhoKFkdPT0dMRV9N", + "QU5BR0VEX1NFUlZJQ0UQDxISCg5SRURJU19JTlNUQU5DRRAQEhEKDVJFRElT", + "X0NMVVNURVIQERILCgdHS0VfUE9EEBMirAEKEUdvb2dsZVNlcnZpY2VUeXBl", + "EiMKH0dPT0dMRV9TRVJWSUNFX1RZUEVfVU5TUEVDSUZJRUQQABIHCgNJQVAQ", + "ARIkCiBHRkVfUFJPWFlfT1JfSEVBTFRIX0NIRUNLX1BST0JFUhACEg0KCUNM", + "T1VEX0ROUxADEhkKFVBSSVZBVEVfR09PR0xFX0FDQ0VTUxAEEhkKFVNFUlZF", + "UkxFU1NfVlBDX0FDQ0VTUxAFIokDCgtGb3J3YXJkSW5mbxJFCgZ0YXJnZXQY", + "ASABKA4yNS5nb29nbGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuRm9y", + "d2FyZEluZm8uVGFyZ2V0EhQKDHJlc291cmNlX3VyaRgCIAEoCRIcCgppcF9h", + "ZGRyZXNzGAMgASgJQgjijM/XCAIIBCL+AQoGVGFyZ2V0EhYKElRBUkdFVF9V", + "TlNQRUNJRklFRBAAEg8KC1BFRVJJTkdfVlBDEAESDwoLVlBOX0dBVEVXQVkQ", + "AhIQCgxJTlRFUkNPTk5FQ1QQAxISCgpHS0VfTUFTVEVSEAQaAggBEiIKHklN", + "UE9SVEVEX0NVU1RPTV9ST1VURV9ORVhUX0hPUBAFEhoKEkNMT1VEX1NRTF9J", + "TlNUQU5DRRAGGgIIARITCg9BTk9USEVSX1BST0pFQ1QQBxILCgdOQ0NfSFVC", + "EAgSFAoQUk9VVEVSX0FQUExJQU5DRRAJEhwKGFNFQ1VSRV9XRUJfUFJPWFlf", + "R0FURVdBWRAKIoUNCglBYm9ydEluZm8SQQoFY2F1c2UYASABKA4yMi5nb29n", + "bGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuQWJvcnRJbmZvLkNhdXNl", + "EhQKDHJlc291cmNlX3VyaRgCIAEoCRIcCgppcF9hZGRyZXNzGAQgASgJQgji", + "jM/XCAIIBBIjChtwcm9qZWN0c19taXNzaW5nX3Blcm1pc3Npb24YAyADKAki", + "2wsKBUNhdXNlEhUKEUNBVVNFX1VOU1BFQ0lGSUVEEAASFwoPVU5LTk9XTl9O", + "RVRXT1JLEAEaAggBEhcKD1VOS05PV05fUFJPSkVDVBADGgIIARIWCg5OT19F", + "WFRFUk5BTF9JUBAHGgIIARIeChZVTklOVEVOREVEX0RFU1RJTkFUSU9OEAga", + "AggBEiEKGVNPVVJDRV9FTkRQT0lOVF9OT1RfRk9VTkQQCxoCCAESIQoZTUlT", + "TUFUQ0hFRF9TT1VSQ0VfTkVUV09SSxAMGgIIARImCh5ERVNUSU5BVElPTl9F", + "TkRQT0lOVF9OT1RfRk9VTkQQDRoCCAESJgoeTUlTTUFUQ0hFRF9ERVNUSU5B", + "VElPTl9ORVRXT1JLEA4aAggBEg4KClVOS05PV05fSVAQAhIlCiFHT09HTEVf", + "TUFOQUdFRF9TRVJWSUNFX1VOS05PV05fSVAQIBIrCidTT1VSQ0VfSVBfQURE", + "UkVTU19OT1RfSU5fU09VUkNFX05FVFdPUksQFxIVChFQRVJNSVNTSU9OX0RF", + "TklFRBAEEioKJlBFUk1JU1NJT05fREVOSUVEX05PX0NMT1VEX05BVF9DT05G", + "SUdTEBwSLQopUEVSTUlTU0lPTl9ERU5JRURfTk9fTkVHX0VORFBPSU5UX0NP", + "TkZJR1MQHRItCilQRVJNSVNTSU9OX0RFTklFRF9OT19DTE9VRF9ST1VURVJf", + "Q09ORklHUxAkEhYKEk5PX1NPVVJDRV9MT0NBVElPThAFEiIKHk5PX1NPVVJD", + "RV9HQ1BfTkVUV09SS19MT0NBVElPThAqEiYKIk5PX1NPVVJDRV9OT05fR0NQ", + "X05FVFdPUktfTE9DQVRJT04QKxIfChtOT19TT1VSQ0VfSU5URVJORVRfTE9D", + "QVRJT04QLBIUChBJTlZBTElEX0FSR1VNRU5UEAYSEgoOVFJBQ0VfVE9PX0xP", + "TkcQCRISCg5JTlRFUk5BTF9FUlJPUhAKEg8KC1VOU1VQUE9SVEVEEA8SGQoV", + "TUlTTUFUQ0hFRF9JUF9WRVJTSU9OEBASJgoiR0tFX0tPTk5FQ1RJVklUWV9Q", + "Uk9YWV9VTlNVUFBPUlRFRBAREh0KGVJFU09VUkNFX0NPTkZJR19OT1RfRk9V", + "TkQQEhIgChxWTV9JTlNUQU5DRV9DT05GSUdfTk9UX0ZPVU5EEBgSHAoYTkVU", + "V09SS19DT05GSUdfTk9UX0ZPVU5EEBkSHQoZRklSRVdBTExfQ09ORklHX05P", + "VF9GT1VORBAaEhoKFlJPVVRFX0NPTkZJR19OT1RfRk9VTkQQGxIxCi1HT09H", + "TEVfTUFOQUdFRF9TRVJWSUNFX0FNQklHVU9VU19QU0NfRU5EUE9JTlQQExIt", + "CilHT09HTEVfTUFOQUdFRF9TRVJWSUNFX0FNQklHVU9VU19FTkRQT0lOVBAn", + "EiQKIFNPVVJDRV9QU0NfQ0xPVURfU1FMX1VOU1VQUE9SVEVEEBQSKQolU09V", + "UkNFX0VYVEVSTkFMX0NMT1VEX1NRTF9VTlNVUFBPUlRFRBAtEiQKIFNPVVJD", + "RV9SRURJU19DTFVTVEVSX1VOU1VQUE9SVEVEECISJQohU09VUkNFX1JFRElT", + "X0lOU1RBTkNFX1VOU1VQUE9SVEVEECMSJgoiU09VUkNFX0ZPUldBUkRJTkdf", + "UlVMRV9VTlNVUFBPUlRFRBAVEhsKF05PTl9ST1VUQUJMRV9JUF9BRERSRVNT", + "EBYSKwonVU5LTk9XTl9JU1NVRV9JTl9HT09HTEVfTUFOQUdFRF9QUk9KRUNU", + "EB4SLQopVU5TVVBQT1JURURfR09PR0xFX01BTkFHRURfUFJPSkVDVF9DT05G", + "SUcQHxIbChdOT19TRVJWRVJMRVNTX0lQX1JBTkdFUxAlEiAKHElQX1ZFUlNJ", + "T05fUFJPVE9DT0xfTUlTTUFUQ0gQKBIlCiFHS0VfUE9EX1VOS05PV05fRU5E", + "UE9JTlRfTE9DQVRJT04QKSLaIQoIRHJvcEluZm8SQAoFY2F1c2UYASABKA4y", + "MS5nb29nbGUuY2xvdWQubmV0d29ya21hbmFnZW1lbnQudjEuRHJvcEluZm8u", + "Q2F1c2USFAoMcmVzb3VyY2VfdXJpGAIgASgJEhEKCXNvdXJjZV9pcBgDIAEo", + "CRIWCg5kZXN0aW5hdGlvbl9pcBgEIAEoCRIOCgZyZWdpb24YBSABKAkSHwoX", + "c291cmNlX2dlb2xvY2F0aW9uX2NvZGUYBiABKAkSJAocZGVzdGluYXRpb25f", + "Z2VvbG9jYXRpb25fY29kZRgHIAEoCSLzHwoFQ2F1c2USFQoRQ0FVU0VfVU5T", + "UEVDSUZJRUQQABIcChhVTktOT1dOX0VYVEVSTkFMX0FERFJFU1MQARIZChVG", + "T1JFSUdOX0lQX0RJU0FMTE9XRUQQAhIRCg1GSVJFV0FMTF9SVUxFEAMSDAoI", + "Tk9fUk9VVEUQBBITCg9ST1VURV9CTEFDS0hPTEUQBRIXChNST1VURV9XUk9O", + "R19ORVRXT1JLEAYSKgomUk9VVEVfTkVYVF9IT1BfSVBfQUREUkVTU19OT1Rf", + "UkVTT0xWRUQQKhIlCiFST1VURV9ORVhUX0hPUF9SRVNPVVJDRV9OT1RfRk9V", + "TkQQKxIpCiVST1VURV9ORVhUX0hPUF9JTlNUQU5DRV9XUk9OR19ORVRXT1JL", + "EDESKgomUk9VVEVfTkVYVF9IT1BfSU5TVEFOQ0VfTk9OX1BSSU1BUllfSVAQ", + "MhIuCipST1VURV9ORVhUX0hPUF9GT1JXQVJESU5HX1JVTEVfSVBfTUlTTUFU", + "Q0gQMxItCilST1VURV9ORVhUX0hPUF9WUE5fVFVOTkVMX05PVF9FU1RBQkxJ", + "U0hFRBA0Ei8KK1JPVVRFX05FWFRfSE9QX0ZPUldBUkRJTkdfUlVMRV9UWVBF", + "X0lOVkFMSUQQNRIyCi5OT19ST1VURV9GUk9NX0lOVEVSTkVUX1RPX1BSSVZB", + "VEVfSVBWNl9BRERSRVNTECwSMgouTk9fUk9VVEVfRlJPTV9JTlRFUk5FVF9U", + "T19QUklWQVRFX0lQVjRfQUREUkVTUxBtEj4KOk5PX1JPVVRFX0ZST01fRVhU", + "RVJOQUxfSVBWNl9TT1VSQ0VfVE9fUFJJVkFURV9JUFY2X0FERFJFU1MQYhIm", + "CiJWUE5fVFVOTkVMX0xPQ0FMX1NFTEVDVE9SX01JU01BVENIEC0SJwojVlBO", + "X1RVTk5FTF9SRU1PVEVfU0VMRUNUT1JfTUlTTUFUQ0gQLhIfChtQUklWQVRF", + "X1RSQUZGSUNfVE9fSU5URVJORVQQBxIkCiBQUklWQVRFX0dPT0dMRV9BQ0NF", + "U1NfRElTQUxMT1dFRBAIEjQKMFBSSVZBVEVfR09PR0xFX0FDQ0VTU19WSUFf", + "VlBOX1RVTk5FTF9VTlNVUFBPUlRFRBAvEhcKE05PX0VYVEVSTkFMX0FERFJF", + "U1MQCRIcChhVTktOT1dOX0lOVEVSTkFMX0FERFJFU1MQChIcChhGT1JXQVJE", + "SU5HX1JVTEVfTUlTTUFUQ0gQCxIgChxGT1JXQVJESU5HX1JVTEVfTk9fSU5T", + "VEFOQ0VTEAwSOAo0RklSRVdBTExfQkxPQ0tJTkdfTE9BRF9CQUxBTkNFUl9C", + "QUNLRU5EX0hFQUxUSF9DSEVDSxANEjoKNklOR1JFU1NfRklSRVdBTExfVEFH", + "U19VTlNVUFBPUlRFRF9CWV9ESVJFQ1RfVlBDX0VHUkVTUxBVEhgKFElOU1RB", + "TkNFX05PVF9SVU5OSU5HEA4SGwoXR0tFX0NMVVNURVJfTk9UX1JVTk5JTkcQ", + "GxIXChNHS0VfUE9EX05PVF9SVU5OSU5HEGcSIgoeQ0xPVURfU1FMX0lOU1RB", + "TkNFX05PVF9SVU5OSU5HEBwSHgoaUkVESVNfSU5TVEFOQ0VfTk9UX1JVTk5J", + "TkcQRBIdChlSRURJU19DTFVTVEVSX05PVF9SVU5OSU5HEEUSGAoUVFJBRkZJ", + "Q19UWVBFX0JMT0NLRUQQDxIiCh5HS0VfTUFTVEVSX1VOQVVUSE9SSVpFRF9B", + "Q0NFU1MQEBIqCiZDTE9VRF9TUUxfSU5TVEFOQ0VfVU5BVVRIT1JJWkVEX0FD", + "Q0VTUxAREh4KGkRST1BQRURfSU5TSURFX0dLRV9TRVJWSUNFEBISJAogRFJP", + "UFBFRF9JTlNJREVfQ0xPVURfU1FMX1NFUlZJQ0UQExIlCiFHT09HTEVfTUFO", + "QUdFRF9TRVJWSUNFX05PX1BFRVJJTkcQFBIqCiZHT09HTEVfTUFOQUdFRF9T", + "RVJWSUNFX05PX1BTQ19FTkRQT0lOVBAmEhwKGEdLRV9QU0NfRU5EUE9JTlRf", + "TUlTU0lORxAkEiQKIENMT1VEX1NRTF9JTlNUQU5DRV9OT19JUF9BRERSRVNT", + "EBUSJQohR0tFX0NPTlRST0xfUExBTkVfUkVHSU9OX01JU01BVENIEB4SMwov", + "UFVCTElDX0dLRV9DT05UUk9MX1BMQU5FX1RPX1BSSVZBVEVfREVTVElOQVRJ", + "T04QHxIeChpHS0VfQ09OVFJPTF9QTEFORV9OT19ST1VURRAgEjoKNkNMT1VE", + "X1NRTF9JTlNUQU5DRV9OT1RfQ09ORklHVVJFRF9GT1JfRVhURVJOQUxfVFJB", + "RkZJQxAhEjQKMFBVQkxJQ19DTE9VRF9TUUxfSU5TVEFOQ0VfVE9fUFJJVkFU", + "RV9ERVNUSU5BVElPThAiEh8KG0NMT1VEX1NRTF9JTlNUQU5DRV9OT19ST1VU", + "RRAjEiAKHENMT1VEX1NRTF9DT05ORUNUT1JfUkVRVUlSRUQQPxIdChlDTE9V", + "RF9GVU5DVElPTl9OT1RfQUNUSVZFEBYSGQoVVlBDX0NPTk5FQ1RPUl9OT1Rf", + "U0VUEBcSHQoZVlBDX0NPTk5FQ1RPUl9OT1RfUlVOTklORxAYEiwKKFZQQ19D", + "T05ORUNUT1JfU0VSVkVSTEVTU19UUkFGRklDX0JMT0NLRUQQPBIuCipWUENf", + "Q09OTkVDVE9SX0hFQUxUSF9DSEVDS19UUkFGRklDX0JMT0NLRUQQPRIjCh9G", + "T1JXQVJESU5HX1JVTEVfUkVHSU9OX01JU01BVENIEBkSHwobUFNDX0NPTk5F", + "Q1RJT05fTk9UX0FDQ0VQVEVEEBoSLQopUFNDX0VORFBPSU5UX0FDQ0VTU0VE", + "X0ZST01fUEVFUkVEX05FVFdPUksQKRIuCipQU0NfTkVHX1BST0RVQ0VSX0VO", + "RFBPSU5UX05PX0dMT0JBTF9BQ0NFU1MQMBIzCi9QU0NfTkVHX1BST0RVQ0VS", + "X0ZPUldBUkRJTkdfUlVMRV9NVUxUSVBMRV9QT1JUUxA2EiEKHUNMT1VEX1NR", + "TF9QU0NfTkVHX1VOU1VQUE9SVEVEEDoSLQopTk9fTkFUX1NVQk5FVFNfRk9S", + "X1BTQ19TRVJWSUNFX0FUVEFDSE1FTlQQORIjCh9QU0NfVFJBTlNJVElWSVRZ", + "X05PVF9QUk9QQUdBVEVEEEASKAokSFlCUklEX05FR19OT05fRFlOQU1JQ19S", + "T1VURV9NQVRDSEVEEDcSLgoqSFlCUklEX05FR19OT05fTE9DQUxfRFlOQU1J", + "Q19ST1VURV9NQVRDSEVEEDgSIAocQ0xPVURfUlVOX1JFVklTSU9OX05PVF9S", + "RUFEWRAdEicKI0RST1BQRURfSU5TSURFX1BTQ19TRVJWSUNFX1BST0RVQ0VS", + "ECUSJQohTE9BRF9CQUxBTkNFUl9IQVNfTk9fUFJPWFlfU1VCTkVUECcSGgoW", + "Q0xPVURfTkFUX05PX0FERFJFU1NFUxAoEhAKDFJPVVRJTkdfTE9PUBA7EikK", + "JURST1BQRURfSU5TSURFX0dPT0dMRV9NQU5BR0VEX1NFUlZJQ0UQPhIpCiVM", + "T0FEX0JBTEFOQ0VSX0JBQ0tFTkRfSU5WQUxJRF9ORVRXT1JLEEESKgomQkFD", + "S0VORF9TRVJWSUNFX05BTUVEX1BPUlRfTk9UX0RFRklORUQQQhInCiNERVNU", + "SU5BVElPTl9JU19QUklWQVRFX05BVF9JUF9SQU5HRRBDEikKJURST1BQRURf", + "SU5TSURFX1JFRElTX0lOU1RBTkNFX1NFUlZJQ0UQRhIjCh9SRURJU19JTlNU", + "QU5DRV9VTlNVUFBPUlRFRF9QT1JUEEcSLworUkVESVNfSU5TVEFOQ0VfQ09O", + "TkVDVElOR19GUk9NX1BVUElfQUREUkVTUxBIEjIKLlJFRElTX0lOU1RBTkNF", + "X05PX1JPVVRFX1RPX0RFU1RJTkFUSU9OX05FVFdPUksQSRIhCh1SRURJU19J", + "TlNUQU5DRV9OT19FWFRFUk5BTF9JUBBKEicKI1JFRElTX0lOU1RBTkNFX1VO", + "U1VQUE9SVEVEX1BST1RPQ09MEE4SKAokRFJPUFBFRF9JTlNJREVfUkVESVNf", + "Q0xVU1RFUl9TRVJWSUNFEEsSIgoeUkVESVNfQ0xVU1RFUl9VTlNVUFBPUlRF", + "RF9QT1JUEEwSIAocUkVESVNfQ0xVU1RFUl9OT19FWFRFUk5BTF9JUBBNEiYK", + "IlJFRElTX0NMVVNURVJfVU5TVVBQT1JURURfUFJPVE9DT0wQTxIqCiZOT19B", + "RFZFUlRJU0VEX1JPVVRFX1RPX0dDUF9ERVNUSU5BVElPThBQEioKJk5PX1RS", + "QUZGSUNfU0VMRUNUT1JfVE9fR0NQX0RFU1RJTkFUSU9OEFESNQoxTk9fS05P", + "V05fUk9VVEVfRlJPTV9QRUVSRURfTkVUV09SS19UT19ERVNUSU5BVElPThBS", + "EisKJ1BSSVZBVEVfTkFUX1RPX1BTQ19FTkRQT0lOVF9VTlNVUFBPUlRFRBBT", + "EiIKHlBTQ19QT1JUX01BUFBJTkdfUE9SVF9NSVNNQVRDSBBWEjcKM1BTQ19Q", + "T1JUX01BUFBJTkdfV0lUSE9VVF9QU0NfQ09OTkVDVElPTl9VTlNVUFBPUlRF", + "RBBXEjMKL1VOU1VQUE9SVEVEX1JPVVRFX01BVENIRURfRk9SX05BVDY0X0RF", + "U1RJTkFUSU9OEFgSNwozVFJBRkZJQ19GUk9NX0hZQlJJRF9FTkRQT0lOVF9U", + "T19JTlRFUk5FVF9ESVNBTExPV0VEEFkSHQoZTk9fTUFUQ0hJTkdfTkFUNjRf", + "R0FURVdBWRBaEiQKIE5PX0NPTkZJR1VSRURfUFJJVkFURV9OQVQ2NF9SVUxF", + "EGsSLQopTE9BRF9CQUxBTkNFUl9CQUNLRU5EX0lQX1ZFUlNJT05fTUlTTUFU", + "Q0gQYBIyCi5OT19LTk9XTl9ST1VURV9GUk9NX05DQ19ORVRXT1JLX1RPX0RF", + "U1RJTkFUSU9OEGESIgoeQ0xPVURfTkFUX1BST1RPQ09MX1VOU1VQUE9SVEVE", + "EGMSKAokTDJfSU5URVJDT05ORUNUX1VOU1VQUE9SVEVEX1BST1RPQ09MEGQS", + "JAogTDJfSU5URVJDT05ORUNUX1VOU1VQUE9SVEVEX1BPUlQQZRIrCidMMl9J", + "TlRFUkNPTk5FQ1RfREVTVElOQVRJT05fSVBfTUlTTUFUQ0gQZhIuCipOQ0Nf", + "Uk9VVEVfV0lUSElOX0hZQlJJRF9TVUJORVRfVU5TVVBQT1JURUQQaBIhCh1I", + "WUJSSURfU1VCTkVUX1JFR0lPTl9NSVNNQVRDSBBpEhoKFkhZQlJJRF9TVUJO", + "RVRfTk9fUk9VVEUQaiKBAQoNR0tFTWFzdGVySW5mbxITCgtjbHVzdGVyX3Vy", + "aRgCIAEoCRIbChNjbHVzdGVyX25ldHdvcmtfdXJpGAQgASgJEhMKC2ludGVy", + "bmFsX2lwGAUgASgJEhMKC2V4dGVybmFsX2lwGAYgASgJEhQKDGRuc19lbmRw", + "b2ludBgHIAEoCSJQCgpHa2VQb2RJbmZvEg8KB3BvZF91cmkYASABKAkSHAoK", + "aXBfYWRkcmVzcxgCIAEoCUII4ozP1wgCCAQSEwoLbmV0d29ya191cmkYAyAB", + "KAkivwMKGUlwTWFzcXVlcmFkaW5nU2tpcHBlZEluZm8SUwoGcmVhc29uGAEg", + "ASgOMkMuZ29vZ2xlLmNsb3VkLm5ldHdvcmttYW5hZ2VtZW50LnYxLklwTWFz", + "cXVlcmFkaW5nU2tpcHBlZEluZm8uUmVhc29uEhwKFG5vbl9tYXNxdWVyYWRl", + "X3JhbmdlGAIgASgJIq4CCgZSZWFzb24SFgoSUkVBU09OX1VOU1BFQ0lGSUVE", + "EAASNQoxREVTVElOQVRJT05fSVBfSU5fQ09ORklHVVJFRF9OT05fTUFTUVVF", + "UkFERV9SQU5HRRABEjIKLkRFU1RJTkFUSU9OX0lQX0lOX0RFRkFVTFRfTk9O", + "X01BU1FVRVJBREVfUkFOR0UQAhIcChhERVNUSU5BVElPTl9PTl9TQU1FX05P", + "REUQAxIZChVERUZBVUxUX1NOQVRfRElTQUJMRUQQBBIcChhOT19NQVNRVUVS", + "QURJTkdfRk9SX0lQVjYQBRIjCh9QT0RfVVNFU19OT0RFX05FVFdPUktfTkFN", + "RVNQQUNFEAYSJQohTk9fTUFTUVVFUkFESU5HX0ZPUl9SRVRVUk5fUEFDS0VU", + "EAciiAEKFENsb3VkU1FMSW5zdGFuY2VJbmZvEhQKDGRpc3BsYXlfbmFtZRgB", + "IAEoCRILCgN1cmkYAiABKAkSEwoLbmV0d29ya191cmkYBCABKAkSEwoLaW50", + "ZXJuYWxfaXAYBSABKAkSEwoLZXh0ZXJuYWxfaXAYBiABKAkSDgoGcmVnaW9u", + "GAcgASgJIpIBChFSZWRpc0luc3RhbmNlSW5mbxIUCgxkaXNwbGF5X25hbWUY", + "ASABKAkSCwoDdXJpGAIgASgJEhMKC25ldHdvcmtfdXJpGAMgASgJEhsKE3By", + "aW1hcnlfZW5kcG9pbnRfaXAYBCABKAkSGAoQcmVhZF9lbmRwb2ludF9pcBgF", + "IAEoCRIOCgZyZWdpb24YBiABKAkivgEKEFJlZGlzQ2x1c3RlckluZm8SFAoM", + "ZGlzcGxheV9uYW1lGAEgASgJEgsKA3VyaRgCIAEoCRITCgtuZXR3b3JrX3Vy", + "aRgDIAEoCRIvCh1kaXNjb3ZlcnlfZW5kcG9pbnRfaXBfYWRkcmVzcxgEIAEo", + "CUII4ozP1wgCCAQSLwodc2Vjb25kYXJ5X2VuZHBvaW50X2lwX2FkZHJlc3MY", + "BSABKAlCCOKMz9cIAggEEhAKCGxvY2F0aW9uGAYgASgJIlwKEUNsb3VkRnVu", + "Y3Rpb25JbmZvEhQKDGRpc3BsYXlfbmFtZRgBIAEoCRILCgN1cmkYAiABKAkS", + "EAoIbG9jYXRpb24YAyABKAkSEgoKdmVyc2lvbl9pZBgEIAEoAyJgChRDbG91", + "ZFJ1blJldmlzaW9uSW5mbxIUCgxkaXNwbGF5X25hbWUYASABKAkSCwoDdXJp", + "GAIgASgJEhAKCGxvY2F0aW9uGAQgASgJEhMKC3NlcnZpY2VfdXJpGAUgASgJ", + "Il8KFEFwcEVuZ2luZVZlcnNpb25JbmZvEhQKDGRpc3BsYXlfbmFtZRgBIAEo", + "CRILCgN1cmkYAiABKAkSDwoHcnVudGltZRgDIAEoCRITCgtlbnZpcm9ubWVu", + "dBgEIAEoCSJHChBWcGNDb25uZWN0b3JJbmZvEhQKDGRpc3BsYXlfbmFtZRgB", + "IAEoCRILCgN1cmkYAiABKAkSEAoIbG9jYXRpb24YAyABKAkiqAEKHURpcmVj", + "dFZwY0VncmVzc0Nvbm5lY3Rpb25JbmZvEhMKC25ldHdvcmtfdXJpGAEgASgJ", + "EhYKDnN1Ym5ldHdvcmtfdXJpGAIgASgJEiMKEXNlbGVjdGVkX2lwX3Jhbmdl", + "GAMgASgJQgjijM/XCAIIBBIlChNzZWxlY3RlZF9pcF9hZGRyZXNzGAQgASgJ", + "QgjijM/XCAIIBBIOCgZyZWdpb24YBSABKAkiSQogU2VydmVybGVzc0V4dGVy", + "bmFsQ29ubmVjdGlvbkluZm8SJQoTc2VsZWN0ZWRfaXBfYWRkcmVzcxgBIAEo", + "CUII4ozP1wgCCAQikQYKB05hdEluZm8SPQoEdHlwZRgBIAEoDjIvLmdvb2ds", + "ZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52MS5OYXRJbmZvLlR5cGUSEAoI", + "cHJvdG9jb2wYAiABKAkSEwoLbmV0d29ya191cmkYAyABKAkSFQoNb2xkX3Nv", + "dXJjZV9pcBgEIAEoCRIVCg1uZXdfc291cmNlX2lwGAUgASgJEhoKEm9sZF9k", + "ZXN0aW5hdGlvbl9pcBgGIAEoCRIaChJuZXdfZGVzdGluYXRpb25faXAYByAB", + "KAkSFwoPb2xkX3NvdXJjZV9wb3J0GAggASgFEhcKD25ld19zb3VyY2VfcG9y", + "dBgJIAEoBRIcChRvbGRfZGVzdGluYXRpb25fcG9ydBgKIAEoBRIcChRuZXdf", + "ZGVzdGluYXRpb25fcG9ydBgLIAEoBRISCgpyb3V0ZXJfdXJpGAwgASgJEhgK", + "EG5hdF9nYXRld2F5X25hbWUYDSABKAkSXgoWY2xvdWRfbmF0X2dhdGV3YXlf", + "dHlwZRgOIAEoDjI+Lmdvb2dsZS5jbG91ZC5uZXR3b3JrbWFuYWdlbWVudC52", + "MS5OYXRJbmZvLkNsb3VkTmF0R2F0ZXdheVR5cGUimQEKBFR5cGUSFAoQVFlQ", + "RV9VTlNQRUNJRklFRBAAEhgKFElOVEVSTkFMX1RPX0VYVEVSTkFMEAESGAoU", + "RVhURVJOQUxfVE9fSU5URVJOQUwQAhINCglDTE9VRF9OQVQQAxIbChdQUklW", + "QVRFX1NFUlZJQ0VfQ09OTkVDVBAEEhsKF0dLRV9QT0RfSVBfTUFTUVVFUkFE", + "SU5HEAUioQEKE0Nsb3VkTmF0R2F0ZXdheVR5cGUSJgoiQ0xPVURfTkFUX0dB", + "VEVXQVlfVFlQRV9VTlNQRUNJRklFRBAAEhAKDFBVQkxJQ19OQVQ0NBABEhAK", + "DFBVQkxJQ19OQVQ2NBACEhMKD1BSSVZBVEVfTkFUX05DQxADEhYKElBSSVZB", + "VEVfTkFUX0hZQlJJRBAEEhEKDVBSSVZBVEVfTkFUNjQQBSKkAgoTUHJveHlD", + "b25uZWN0aW9uSW5mbxIQCghwcm90b2NvbBgBIAEoCRIVCg1vbGRfc291cmNl", + "X2lwGAIgASgJEhUKDW5ld19zb3VyY2VfaXAYAyABKAkSGgoSb2xkX2Rlc3Rp", + "bmF0aW9uX2lwGAQgASgJEhoKEm5ld19kZXN0aW5hdGlvbl9pcBgFIAEoCRIX", + "Cg9vbGRfc291cmNlX3BvcnQYBiABKAUSFwoPbmV3X3NvdXJjZV9wb3J0GAcg", + "ASgFEhwKFG9sZF9kZXN0aW5hdGlvbl9wb3J0GAggASgFEhwKFG5ld19kZXN0", + "aW5hdGlvbl9wb3J0GAkgASgFEhIKCnN1Ym5ldF91cmkYCiABKAkSEwoLbmV0", + "d29ya191cmkYCyABKAki8gQKF0xvYWRCYWxhbmNlckJhY2tlbmRJbmZvEgwK", + "BG5hbWUYASABKAkSFAoMaW5zdGFuY2VfdXJpGAIgASgJEhsKE2JhY2tlbmRf", + "c2VydmljZV91cmkYAyABKAkSGgoSaW5zdGFuY2VfZ3JvdXBfdXJpGAQgASgJ", + "EiIKGm5ldHdvcmtfZW5kcG9pbnRfZ3JvdXBfdXJpGAUgASgJEhoKEmJhY2tl", + "bmRfYnVja2V0X3VyaRgIIAEoCRIiChpwc2Nfc2VydmljZV9hdHRhY2htZW50", + "X3VyaRgJIAEoCRIdChVwc2NfZ29vZ2xlX2FwaV90YXJnZXQYCiABKAkSGAoQ", + "aGVhbHRoX2NoZWNrX3VyaRgGIAEoCRKMAQojaGVhbHRoX2NoZWNrX2ZpcmV3", + "YWxsc19jb25maWdfc3RhdGUYByABKA4yWi5nb29nbGUuY2xvdWQubmV0d29y", + "a21hbmFnZW1lbnQudjEuTG9hZEJhbGFuY2VyQmFja2VuZEluZm8uSGVhbHRo", + "Q2hlY2tGaXJld2FsbHNDb25maWdTdGF0ZUID4EEDIs0BCh9IZWFsdGhDaGVj", + "a0ZpcmV3YWxsc0NvbmZpZ1N0YXRlEjMKL0hFQUxUSF9DSEVDS19GSVJFV0FM", + "TFNfQ09ORklHX1NUQVRFX1VOU1BFQ0lGSUVEEAASGAoURklSRVdBTExTX0NP", + "TkZJR1VSRUQQARIiCh5GSVJFV0FMTFNfUEFSVElBTExZX0NPTkZJR1VSRUQQ", + "AhIcChhGSVJFV0FMTFNfTk9UX0NPTkZJR1VSRUQQAxIZChVGSVJFV0FMTFNf", + "VU5TVVBQT1JURUQQBCIjChFTdG9yYWdlQnVja2V0SW5mbxIOCgZidWNrZXQY", + "ASABKAkiJAoRU2VydmVybGVzc05lZ0luZm8SDwoHbmVnX3VyaRgBIAEoCSr2", + "AgoQTG9hZEJhbGFuY2VyVHlwZRIiCh5MT0FEX0JBTEFOQ0VSX1RZUEVfVU5T", + "UEVDSUZJRUQQABIgChxIVFRQU19BRFZBTkNFRF9MT0FEX0JBTEFOQ0VSEAES", + "FwoTSFRUUFNfTE9BRF9CQUxBTkNFUhACEiAKHFJFR0lPTkFMX0hUVFBTX0xP", + "QURfQkFMQU5DRVIQAxIgChxJTlRFUk5BTF9IVFRQU19MT0FEX0JBTEFOQ0VS", + "EAQSGwoXU1NMX1BST1hZX0xPQURfQkFMQU5DRVIQBRIbChdUQ1BfUFJPWFlf", + "TE9BRF9CQUxBTkNFUhAGEiQKIElOVEVSTkFMX1RDUF9QUk9YWV9MT0FEX0JB", + "TEFOQ0VSEAcSGQoVTkVUV09SS19MT0FEX0JBTEFOQ0VSEAgSIAocTEVHQUNZ", + "X05FVFdPUktfTE9BRF9CQUxBTkNFUhAJEiIKHlRDUF9VRFBfSU5URVJOQUxf", + "TE9BRF9CQUxBTkNFUhAKQvkBCiVjb20uZ29vZ2xlLmNsb3VkLm5ldHdvcmtt", + "YW5hZ2VtZW50LnYxQgpUcmFjZVByb3RvUAFaU2Nsb3VkLmdvb2dsZS5jb20v", + "Z28vbmV0d29ya21hbmFnZW1lbnQvYXBpdjEvbmV0d29ya21hbmFnZW1lbnRw", + "YjtuZXR3b3JrbWFuYWdlbWVudHBiqgIhR29vZ2xlLkNsb3VkLk5ldHdvcmtN", + "YW5hZ2VtZW50LlYxygIhR29vZ2xlXENsb3VkXE5ldHdvcmtNYW5hZ2VtZW50", + "XFYx6gIkR29vZ2xlOjpDbG91ZDo6TmV0d29ya01hbmFnZW1lbnQ6OlYxYgZw", + "cm90bzM=")); descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, new pbr::FileDescriptor[] { global::Google.Api.FieldBehaviorReflection.Descriptor, global::Google.Api.FieldInfoReflection.Descriptor, }, new pbr::GeneratedClrTypeInfo(new[] {typeof(global::Google.Cloud.NetworkManagement.V1.LoadBalancerType), }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.Trace), global::Google.Cloud.NetworkManagement.V1.Trace.Parser, new[]{ "EndpointInfo", "Steps", "ForwardTraceId" }, null, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.Step), global::Google.Cloud.NetworkManagement.V1.Step.Parser, new[]{ "Description", "State", "CausesDrop", "ProjectId", "Instance", "Firewall", "Route", "Endpoint", "GoogleService", "ForwardingRule", "HybridSubnet", "VpnGateway", "VpnTunnel", "InterconnectAttachment", "VpcConnector", "DirectVpcEgressConnection", "ServerlessExternalConnection", "Deliver", "Forward", "Abort", "Drop", "LoadBalancer", "Network", "GkeMaster", "CloudSqlInstance", "RedisInstance", "RedisCluster", "CloudFunction", "AppEngineVersion", "CloudRunRevision", "Nat", "ProxyConnection", "LoadBalancerBackendInfo", "StorageBucket", "ServerlessNeg" }, new[]{ "StepInfo" }, new[]{ typeof(global::Google.Cloud.NetworkManagement.V1.Step.Types.State) }, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.Step), global::Google.Cloud.NetworkManagement.V1.Step.Parser, new[]{ "Description", "State", "CausesDrop", "ProjectId", "Instance", "Firewall", "Route", "Endpoint", "GoogleService", "ForwardingRule", "HybridSubnet", "VpnGateway", "VpnTunnel", "InterconnectAttachment", "VpcConnector", "DirectVpcEgressConnection", "ServerlessExternalConnection", "Deliver", "Forward", "Abort", "Drop", "LoadBalancer", "Network", "GkeMaster", "GkePod", "IpMasqueradingSkipped", "CloudSqlInstance", "RedisInstance", "RedisCluster", "CloudFunction", "AppEngineVersion", "CloudRunRevision", "Nat", "ProxyConnection", "LoadBalancerBackendInfo", "StorageBucket", "ServerlessNeg" }, new[]{ "StepInfo" }, new[]{ typeof(global::Google.Cloud.NetworkManagement.V1.Step.Types.State) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.InstanceInfo), global::Google.Cloud.NetworkManagement.V1.InstanceInfo.Parser, new[]{ "DisplayName", "Uri", "Interface", "NetworkUri", "InternalIp", "ExternalIp", "NetworkTags", "ServiceAccount", "PscNetworkAttachmentUri", "Running", "Status" }, null, new[]{ typeof(global::Google.Cloud.NetworkManagement.V1.InstanceInfo.Types.Status) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.NetworkInfo), global::Google.Cloud.NetworkManagement.V1.NetworkInfo.Parser, new[]{ "DisplayName", "Uri", "MatchedSubnetUri", "MatchedIpRange", "Region" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.FirewallInfo), global::Google.Cloud.NetworkManagement.V1.FirewallInfo.Parser, new[]{ "DisplayName", "Uri", "Direction", "Action", "Priority", "NetworkUri", "TargetTags", "TargetServiceAccounts", "Policy", "PolicyUri", "FirewallRuleType", "PolicyPriority", "TargetType" }, null, new[]{ typeof(global::Google.Cloud.NetworkManagement.V1.FirewallInfo.Types.FirewallRuleType), typeof(global::Google.Cloud.NetworkManagement.V1.FirewallInfo.Types.TargetType) }, null, null), @@ -488,6 +521,8 @@ static TraceReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.AbortInfo), global::Google.Cloud.NetworkManagement.V1.AbortInfo.Parser, new[]{ "Cause", "ResourceUri", "IpAddress", "ProjectsMissingPermission" }, null, new[]{ typeof(global::Google.Cloud.NetworkManagement.V1.AbortInfo.Types.Cause) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.DropInfo), global::Google.Cloud.NetworkManagement.V1.DropInfo.Parser, new[]{ "Cause", "ResourceUri", "SourceIp", "DestinationIp", "Region", "SourceGeolocationCode", "DestinationGeolocationCode" }, null, new[]{ typeof(global::Google.Cloud.NetworkManagement.V1.DropInfo.Types.Cause) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.GKEMasterInfo), global::Google.Cloud.NetworkManagement.V1.GKEMasterInfo.Parser, new[]{ "ClusterUri", "ClusterNetworkUri", "InternalIp", "ExternalIp", "DnsEndpoint" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.GkePodInfo), global::Google.Cloud.NetworkManagement.V1.GkePodInfo.Parser, new[]{ "PodUri", "IpAddress", "NetworkUri" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo), global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo.Parser, new[]{ "Reason", "NonMasqueradeRange" }, null, new[]{ typeof(global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo.Types.Reason) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.CloudSQLInstanceInfo), global::Google.Cloud.NetworkManagement.V1.CloudSQLInstanceInfo.Parser, new[]{ "DisplayName", "Uri", "NetworkUri", "InternalIp", "ExternalIp", "Region" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.RedisInstanceInfo), global::Google.Cloud.NetworkManagement.V1.RedisInstanceInfo.Parser, new[]{ "DisplayName", "Uri", "NetworkUri", "PrimaryEndpointIp", "ReadEndpointIp", "Region" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.RedisClusterInfo), global::Google.Cloud.NetworkManagement.V1.RedisClusterInfo.Parser, new[]{ "DisplayName", "Uri", "NetworkUri", "DiscoveryEndpointIpAddress", "SecondaryEndpointIpAddress", "Location" }, null, null, null, null), @@ -497,7 +532,7 @@ static TraceReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.VpcConnectorInfo), global::Google.Cloud.NetworkManagement.V1.VpcConnectorInfo.Parser, new[]{ "DisplayName", "Uri", "Location" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.DirectVpcEgressConnectionInfo), global::Google.Cloud.NetworkManagement.V1.DirectVpcEgressConnectionInfo.Parser, new[]{ "NetworkUri", "SubnetworkUri", "SelectedIpRange", "SelectedIpAddress", "Region" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.ServerlessExternalConnectionInfo), global::Google.Cloud.NetworkManagement.V1.ServerlessExternalConnectionInfo.Parser, new[]{ "SelectedIpAddress" }, null, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.NatInfo), global::Google.Cloud.NetworkManagement.V1.NatInfo.Parser, new[]{ "Type", "Protocol", "NetworkUri", "OldSourceIp", "NewSourceIp", "OldDestinationIp", "NewDestinationIp", "OldSourcePort", "NewSourcePort", "OldDestinationPort", "NewDestinationPort", "RouterUri", "NatGatewayName" }, null, new[]{ typeof(global::Google.Cloud.NetworkManagement.V1.NatInfo.Types.Type) }, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.NatInfo), global::Google.Cloud.NetworkManagement.V1.NatInfo.Parser, new[]{ "Type", "Protocol", "NetworkUri", "OldSourceIp", "NewSourceIp", "OldDestinationIp", "NewDestinationIp", "OldSourcePort", "NewSourcePort", "OldDestinationPort", "NewDestinationPort", "RouterUri", "NatGatewayName", "CloudNatGatewayType" }, null, new[]{ typeof(global::Google.Cloud.NetworkManagement.V1.NatInfo.Types.Type), typeof(global::Google.Cloud.NetworkManagement.V1.NatInfo.Types.CloudNatGatewayType) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.ProxyConnectionInfo), global::Google.Cloud.NetworkManagement.V1.ProxyConnectionInfo.Parser, new[]{ "Protocol", "OldSourceIp", "NewSourceIp", "OldDestinationIp", "NewDestinationIp", "OldSourcePort", "NewSourcePort", "OldDestinationPort", "NewDestinationPort", "SubnetUri", "NetworkUri" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.LoadBalancerBackendInfo), global::Google.Cloud.NetworkManagement.V1.LoadBalancerBackendInfo.Parser, new[]{ "Name", "InstanceUri", "BackendServiceUri", "InstanceGroupUri", "NetworkEndpointGroupUri", "BackendBucketUri", "PscServiceAttachmentUri", "PscGoogleApiTarget", "HealthCheckUri", "HealthCheckFirewallsConfigState" }, null, new[]{ typeof(global::Google.Cloud.NetworkManagement.V1.LoadBalancerBackendInfo.Types.HealthCheckFirewallsConfigState) }, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Google.Cloud.NetworkManagement.V1.StorageBucketInfo), global::Google.Cloud.NetworkManagement.V1.StorageBucketInfo.Parser, new[]{ "Bucket" }, null, null, null, null), @@ -962,6 +997,12 @@ public Step(Step other) : this() { case StepInfoOneofCase.GkeMaster: GkeMaster = other.GkeMaster.Clone(); break; + case StepInfoOneofCase.GkePod: + GkePod = other.GkePod.Clone(); + break; + case StepInfoOneofCase.IpMasqueradingSkipped: + IpMasqueradingSkipped = other.IpMasqueradingSkipped.Clone(); + break; case StepInfoOneofCase.CloudSqlInstance: CloudSqlInstance = other.CloudSqlInstance.Clone(); break; @@ -1371,6 +1412,37 @@ public string ProjectId { } } + /// Field number for the "gke_pod" field. + public const int GkePodFieldNumber = 37; + /// + /// Display information of a Google Kubernetes Engine Pod. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.NetworkManagement.V1.GkePodInfo GkePod { + get { return stepInfoCase_ == StepInfoOneofCase.GkePod ? (global::Google.Cloud.NetworkManagement.V1.GkePodInfo) stepInfo_ : null; } + set { + stepInfo_ = value; + stepInfoCase_ = value == null ? StepInfoOneofCase.None : StepInfoOneofCase.GkePod; + } + } + + /// Field number for the "ip_masquerading_skipped" field. + public const int IpMasqueradingSkippedFieldNumber = 38; + /// + /// Display information of the reason why GKE Pod IP masquerading was + /// skipped. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo IpMasqueradingSkipped { + get { return stepInfoCase_ == StepInfoOneofCase.IpMasqueradingSkipped ? (global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo) stepInfo_ : null; } + set { + stepInfo_ = value; + stepInfoCase_ = value == null ? StepInfoOneofCase.None : StepInfoOneofCase.IpMasqueradingSkipped; + } + } + /// Field number for the "cloud_sql_instance" field. public const int CloudSqlInstanceFieldNumber = 19; /// @@ -1561,6 +1633,8 @@ public enum StepInfoOneofCase { LoadBalancer = 16, Network = 17, GkeMaster = 18, + GkePod = 37, + IpMasqueradingSkipped = 38, CloudSqlInstance = 19, RedisInstance = 30, RedisCluster = 31, @@ -1626,6 +1700,8 @@ public bool Equals(Step other) { if (!object.Equals(LoadBalancer, other.LoadBalancer)) return false; if (!object.Equals(Network, other.Network)) return false; if (!object.Equals(GkeMaster, other.GkeMaster)) return false; + if (!object.Equals(GkePod, other.GkePod)) return false; + if (!object.Equals(IpMasqueradingSkipped, other.IpMasqueradingSkipped)) return false; if (!object.Equals(CloudSqlInstance, other.CloudSqlInstance)) return false; if (!object.Equals(RedisInstance, other.RedisInstance)) return false; if (!object.Equals(RedisCluster, other.RedisCluster)) return false; @@ -1669,6 +1745,8 @@ public override int GetHashCode() { if (stepInfoCase_ == StepInfoOneofCase.LoadBalancer) hash ^= LoadBalancer.GetHashCode(); if (stepInfoCase_ == StepInfoOneofCase.Network) hash ^= Network.GetHashCode(); if (stepInfoCase_ == StepInfoOneofCase.GkeMaster) hash ^= GkeMaster.GetHashCode(); + if (stepInfoCase_ == StepInfoOneofCase.GkePod) hash ^= GkePod.GetHashCode(); + if (stepInfoCase_ == StepInfoOneofCase.IpMasqueradingSkipped) hash ^= IpMasqueradingSkipped.GetHashCode(); if (stepInfoCase_ == StepInfoOneofCase.CloudSqlInstance) hash ^= CloudSqlInstance.GetHashCode(); if (stepInfoCase_ == StepInfoOneofCase.RedisInstance) hash ^= RedisInstance.GetHashCode(); if (stepInfoCase_ == StepInfoOneofCase.RedisCluster) hash ^= RedisCluster.GetHashCode(); @@ -1839,6 +1917,14 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(162, 2); output.WriteMessage(HybridSubnet); } + if (stepInfoCase_ == StepInfoOneofCase.GkePod) { + output.WriteRawTag(170, 2); + output.WriteMessage(GkePod); + } + if (stepInfoCase_ == StepInfoOneofCase.IpMasqueradingSkipped) { + output.WriteRawTag(178, 2); + output.WriteMessage(IpMasqueradingSkipped); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -1989,6 +2075,14 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(162, 2); output.WriteMessage(HybridSubnet); } + if (stepInfoCase_ == StepInfoOneofCase.GkePod) { + output.WriteRawTag(170, 2); + output.WriteMessage(GkePod); + } + if (stepInfoCase_ == StepInfoOneofCase.IpMasqueradingSkipped) { + output.WriteRawTag(178, 2); + output.WriteMessage(IpMasqueradingSkipped); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -2071,6 +2165,12 @@ public int CalculateSize() { if (stepInfoCase_ == StepInfoOneofCase.GkeMaster) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(GkeMaster); } + if (stepInfoCase_ == StepInfoOneofCase.GkePod) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(GkePod); + } + if (stepInfoCase_ == StepInfoOneofCase.IpMasqueradingSkipped) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(IpMasqueradingSkipped); + } if (stepInfoCase_ == StepInfoOneofCase.CloudSqlInstance) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(CloudSqlInstance); } @@ -2249,6 +2349,18 @@ public void MergeFrom(Step other) { } GkeMaster.MergeFrom(other.GkeMaster); break; + case StepInfoOneofCase.GkePod: + if (GkePod == null) { + GkePod = new global::Google.Cloud.NetworkManagement.V1.GkePodInfo(); + } + GkePod.MergeFrom(other.GkePod); + break; + case StepInfoOneofCase.IpMasqueradingSkipped: + if (IpMasqueradingSkipped == null) { + IpMasqueradingSkipped = new global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo(); + } + IpMasqueradingSkipped.MergeFrom(other.IpMasqueradingSkipped); + break; case StepInfoOneofCase.CloudSqlInstance: if (CloudSqlInstance == null) { CloudSqlInstance = new global::Google.Cloud.NetworkManagement.V1.CloudSQLInstanceInfo(); @@ -2627,6 +2739,24 @@ public void MergeFrom(pb::CodedInputStream input) { HybridSubnet = subBuilder; break; } + case 298: { + global::Google.Cloud.NetworkManagement.V1.GkePodInfo subBuilder = new global::Google.Cloud.NetworkManagement.V1.GkePodInfo(); + if (stepInfoCase_ == StepInfoOneofCase.GkePod) { + subBuilder.MergeFrom(GkePod); + } + input.ReadMessage(subBuilder); + GkePod = subBuilder; + break; + } + case 306: { + global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo subBuilder = new global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo(); + if (stepInfoCase_ == StepInfoOneofCase.IpMasqueradingSkipped) { + subBuilder.MergeFrom(IpMasqueradingSkipped); + } + input.ReadMessage(subBuilder); + IpMasqueradingSkipped = subBuilder; + break; + } } } #endif @@ -2937,6 +3067,24 @@ public void MergeFrom(pb::CodedInputStream input) { HybridSubnet = subBuilder; break; } + case 298: { + global::Google.Cloud.NetworkManagement.V1.GkePodInfo subBuilder = new global::Google.Cloud.NetworkManagement.V1.GkePodInfo(); + if (stepInfoCase_ == StepInfoOneofCase.GkePod) { + subBuilder.MergeFrom(GkePod); + } + input.ReadMessage(subBuilder); + GkePod = subBuilder; + break; + } + case 306: { + global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo subBuilder = new global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo(); + if (stepInfoCase_ == StepInfoOneofCase.IpMasqueradingSkipped) { + subBuilder.MergeFrom(IpMasqueradingSkipped); + } + input.ReadMessage(subBuilder); + IpMasqueradingSkipped = subBuilder; + break; + } } } } @@ -2989,6 +3137,11 @@ public enum State { /// [pbr::OriginalName("START_FROM_CLOUD_SQL_INSTANCE")] StartFromCloudSqlInstance = 22, /// + /// Initial state: packet originating from a Google Kubernetes Engine Pod. + /// A GkePodInfo is populated with starting Pod information. + /// + [pbr::OriginalName("START_FROM_GKE_POD")] StartFromGkePod = 39, + /// /// Initial state: packet originating from a Redis instance. /// A RedisInstanceInfo is populated with starting instance information. /// @@ -3106,6 +3259,11 @@ public enum State { /// [pbr::OriginalName("NAT")] Nat = 14, /// + /// Transition state: GKE Pod IP masquerading is skipped. The + /// `ip_masquerading_skipped` field is populated with the reason. + /// + [pbr::OriginalName("SKIP_GKE_POD_IP_MASQUERADING")] SkipGkePodIpMasquerading = 40, + /// /// Transition state: original connection is terminated and a new proxied /// connection is initiated. /// @@ -4812,18 +4970,26 @@ public enum FirewallRuleType { /// [pbr::OriginalName("SERVERLESS_VPC_ACCESS_MANAGED_FIREWALL_RULE")] ServerlessVpcAccessManagedFirewallRule = 4, /// - /// Global network firewall policy rule. + /// User-defined global network firewall policy rule. /// For details, see [Network firewall /// policies](https://cloud.google.com/vpc/docs/network-firewall-policies). /// [pbr::OriginalName("NETWORK_FIREWALL_POLICY_RULE")] NetworkFirewallPolicyRule = 5, /// - /// Regional network firewall policy rule. + /// User-defined regional network firewall policy rule. /// For details, see [Regional network firewall /// policies](https://cloud.google.com/firewall/docs/regional-firewall-policies). /// [pbr::OriginalName("NETWORK_REGIONAL_FIREWALL_POLICY_RULE")] NetworkRegionalFirewallPolicyRule = 6, /// + /// System-defined global network firewall policy rule. + /// + [pbr::OriginalName("SYSTEM_NETWORK_FIREWALL_POLICY_RULE")] SystemNetworkFirewallPolicyRule = 7, + /// + /// System-defined regional network firewall policy rule. + /// + [pbr::OriginalName("SYSTEM_REGIONAL_NETWORK_FIREWALL_POLICY_RULE")] SystemRegionalNetworkFirewallPolicyRule = 8, + /// /// Firewall policy rule containing attributes not yet supported in /// Connectivity tests. Firewall analysis is skipped if such a rule can /// potentially be matched. Please see the [list of unsupported @@ -10476,6 +10642,10 @@ public enum Target { /// Target is a Redis Cluster. /// [pbr::OriginalName("REDIS_CLUSTER")] RedisCluster = 17, + /// + /// Target is a GKE Pod. + /// + [pbr::OriginalName("GKE_POD")] GkePod = 19, } /// @@ -11260,11 +11430,27 @@ public enum Cause { /// [pbr::OriginalName("PERMISSION_DENIED_NO_CLOUD_ROUTER_CONFIGS")] PermissionDeniedNoCloudRouterConfigs = 36, /// - /// Aborted because no valid source or destination endpoint is derived from - /// the input test request. + /// Aborted because no valid source or destination endpoint can be derived + /// from the test request. /// [pbr::OriginalName("NO_SOURCE_LOCATION")] NoSourceLocation = 5, /// + /// Aborted because the source IP address is not contained within the subnet + /// ranges of the provided VPC network. + /// + [pbr::OriginalName("NO_SOURCE_GCP_NETWORK_LOCATION")] NoSourceGcpNetworkLocation = 42, + /// + /// Aborted because the source IP address is not contained within the + /// destination ranges of the routes towards non-GCP networks in the provided + /// VPC network. + /// + [pbr::OriginalName("NO_SOURCE_NON_GCP_NETWORK_LOCATION")] NoSourceNonGcpNetworkLocation = 43, + /// + /// Aborted because the source IP address can't be resolved as an Internet + /// IP address. + /// + [pbr::OriginalName("NO_SOURCE_INTERNET_LOCATION")] NoSourceInternetLocation = 44, + /// /// Aborted because the source or destination endpoint specified in /// the request is invalid. Some examples: /// - The request might contain malformed resource URI, project ID, or IP @@ -11334,6 +11520,12 @@ public enum Cause { /// [pbr::OriginalName("SOURCE_PSC_CLOUD_SQL_UNSUPPORTED")] SourcePscCloudSqlUnsupported = 20, /// + /// Aborted because tests with the external database as a source are not + /// supported. In such replication scenarios, the connection is initiated by + /// the Cloud SQL replica instance. + /// + [pbr::OriginalName("SOURCE_EXTERNAL_CLOUD_SQL_UNSUPPORTED")] SourceExternalCloudSqlUnsupported = 45, + /// /// Aborted because tests with a Redis Cluster as a source are not supported. /// [pbr::OriginalName("SOURCE_REDIS_CLUSTER_UNSUPPORTED")] SourceRedisClusterUnsupported = 34, @@ -11371,6 +11563,12 @@ public enum Cause { /// version. /// [pbr::OriginalName("IP_VERSION_PROTOCOL_MISMATCH")] IpVersionProtocolMismatch = 40, + /// + /// Aborted because selected GKE Pod endpoint location is unknown. This is + /// often the case for "Pending" Pods, which don't have assigned IP addresses + /// yet. + /// + [pbr::OriginalName("GKE_POD_UNKNOWN_ENDPOINT_LOCATION")] GkePodUnknownEndpointLocation = 41, } } @@ -11886,11 +12084,14 @@ public enum Cause { /// [pbr::OriginalName("ROUTE_NEXT_HOP_FORWARDING_RULE_TYPE_INVALID")] RouteNextHopForwardingRuleTypeInvalid = 53, /// - /// Packet is sent from the Internet or Google service to the private IPv6 - /// address. + /// Packet is sent from the Internet to the private IPv6 address. /// [pbr::OriginalName("NO_ROUTE_FROM_INTERNET_TO_PRIVATE_IPV6_ADDRESS")] NoRouteFromInternetToPrivateIpv6Address = 44, /// + /// Packet is sent from the Internet to the private IPv4 address. + /// + [pbr::OriginalName("NO_ROUTE_FROM_INTERNET_TO_PRIVATE_IPV4_ADDRESS")] NoRouteFromInternetToPrivateIpv4Address = 109, + /// /// Packet is sent from the external IPv6 source address of an instance to /// the private IPv6 address of an instance. /// @@ -11962,6 +12163,10 @@ public enum Cause { /// [pbr::OriginalName("GKE_CLUSTER_NOT_RUNNING")] GkeClusterNotRunning = 27, /// + /// Packet sent from or to a GKE Pod that is not in running state. + /// + [pbr::OriginalName("GKE_POD_NOT_RUNNING")] GkePodNotRunning = 103, + /// /// Packet sent from or to a Cloud SQL instance that is not in running state. /// [pbr::OriginalName("CLOUD_SQL_INSTANCE_NOT_RUNNING")] CloudSqlInstanceNotRunning = 28, @@ -12275,6 +12480,11 @@ public enum Cause { /// [pbr::OriginalName("NO_MATCHING_NAT64_GATEWAY")] NoMatchingNat64Gateway = 90, /// + /// Packet is dropped due to matching a Private NAT64 gateway with no rules + /// for source IPv6 addresses. + /// + [pbr::OriginalName("NO_CONFIGURED_PRIVATE_NAT64_RULE")] NoConfiguredPrivateNat64Rule = 107, + /// /// Packet is dropped due to being sent to a backend of a passthrough load /// balancer that doesn't use the same IP version as the frontend. /// @@ -12315,6 +12525,11 @@ public enum Cause { /// subnet. /// [pbr::OriginalName("HYBRID_SUBNET_REGION_MISMATCH")] HybridSubnetRegionMismatch = 105, + /// + /// Packet is dropped because no matching route was found in the hybrid + /// subnet. + /// + [pbr::OriginalName("HYBRID_SUBNET_NO_ROUTE")] HybridSubnetNoRoute = 106, } } @@ -12680,19 +12895,20 @@ public void MergeFrom(pb::CodedInputStream input) { } /// - /// For display only. Metadata associated with a Cloud SQL instance. + /// For display only. Metadata associated with a Google Kubernetes Engine (GKE) + /// Pod. /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class CloudSQLInstanceInfo : pb::IMessage + public sealed partial class GkePodInfo : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new CloudSQLInstanceInfo()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new GkePodInfo()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -12708,7 +12924,7 @@ public sealed partial class CloudSQLInstanceInfo : pb::IMessageField number for the "display_name" field. - public const int DisplayNameFieldNumber = 1; - private string displayName_ = ""; + /// Field number for the "pod_uri" field. + public const int PodUriFieldNumber = 1; + private string podUri_ = ""; /// - /// Name of a Cloud SQL instance. + /// URI of a GKE Pod. + /// For Pods in regional Clusters, the URI format is: + /// `projects/{project}/locations/{location}/clusters/{cluster}/k8s/namespaces/{namespace}/pods/{pod}` + /// For Pods in zonal Clusters, the URI format is: + /// `projects/{project}/zones/{zone}/clusters/{cluster}/k8s/namespaces/{namespace}/pods/{pod}` /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string DisplayName { - get { return displayName_; } + public string PodUri { + get { return podUri_; } set { - displayName_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + podUri_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Field number for the "uri" field. - public const int UriFieldNumber = 2; - private string uri_ = ""; + /// Field number for the "ip_address" field. + public const int IpAddressFieldNumber = 2; + private string ipAddress_ = ""; /// - /// URI of a Cloud SQL instance. + /// IP address of a GKE Pod. If the Pod is dual-stack, this is the IP address + /// relevant to the trace. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string Uri { - get { return uri_; } + public string IpAddress { + get { return ipAddress_; } set { - uri_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + ipAddress_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "network_uri" field. - public const int NetworkUriFieldNumber = 4; + public const int NetworkUriFieldNumber = 3; private string networkUri_ = ""; /// - /// URI of a Cloud SQL instance network or empty string if the instance does - /// not have one. + /// URI of the network containing the GKE Pod. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -12778,72 +12995,24 @@ public string NetworkUri { } } - /// Field number for the "internal_ip" field. - public const int InternalIpFieldNumber = 5; - private string internalIp_ = ""; - /// - /// Internal IP address of a Cloud SQL instance. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string InternalIp { - get { return internalIp_; } - set { - internalIp_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - - /// Field number for the "external_ip" field. - public const int ExternalIpFieldNumber = 6; - private string externalIp_ = ""; - /// - /// External IP address of a Cloud SQL instance. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string ExternalIp { - get { return externalIp_; } - set { - externalIp_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - - /// Field number for the "region" field. - public const int RegionFieldNumber = 7; - private string region_ = ""; - /// - /// Region in which the Cloud SQL instance is running. - /// - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string Region { - get { return region_; } - set { - region_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as CloudSQLInstanceInfo); + return Equals(other as GkePodInfo); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(CloudSQLInstanceInfo other) { + public bool Equals(GkePodInfo other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (DisplayName != other.DisplayName) return false; - if (Uri != other.Uri) return false; + if (PodUri != other.PodUri) return false; + if (IpAddress != other.IpAddress) return false; if (NetworkUri != other.NetworkUri) return false; - if (InternalIp != other.InternalIp) return false; - if (ExternalIp != other.ExternalIp) return false; - if (Region != other.Region) return false; return Equals(_unknownFields, other._unknownFields); } @@ -12851,12 +13020,9 @@ public bool Equals(CloudSQLInstanceInfo other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (DisplayName.Length != 0) hash ^= DisplayName.GetHashCode(); - if (Uri.Length != 0) hash ^= Uri.GetHashCode(); + if (PodUri.Length != 0) hash ^= PodUri.GetHashCode(); + if (IpAddress.Length != 0) hash ^= IpAddress.GetHashCode(); if (NetworkUri.Length != 0) hash ^= NetworkUri.GetHashCode(); - if (InternalIp.Length != 0) hash ^= InternalIp.GetHashCode(); - if (ExternalIp.Length != 0) hash ^= ExternalIp.GetHashCode(); - if (Region.Length != 0) hash ^= Region.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -12875,30 +13041,18 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (DisplayName.Length != 0) { + if (PodUri.Length != 0) { output.WriteRawTag(10); - output.WriteString(DisplayName); + output.WriteString(PodUri); } - if (Uri.Length != 0) { + if (IpAddress.Length != 0) { output.WriteRawTag(18); - output.WriteString(Uri); + output.WriteString(IpAddress); } if (NetworkUri.Length != 0) { - output.WriteRawTag(34); + output.WriteRawTag(26); output.WriteString(NetworkUri); } - if (InternalIp.Length != 0) { - output.WriteRawTag(42); - output.WriteString(InternalIp); - } - if (ExternalIp.Length != 0) { - output.WriteRawTag(50); - output.WriteString(ExternalIp); - } - if (Region.Length != 0) { - output.WriteRawTag(58); - output.WriteString(Region); - } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -12909,30 +13063,18 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (DisplayName.Length != 0) { + if (PodUri.Length != 0) { output.WriteRawTag(10); - output.WriteString(DisplayName); + output.WriteString(PodUri); } - if (Uri.Length != 0) { + if (IpAddress.Length != 0) { output.WriteRawTag(18); - output.WriteString(Uri); + output.WriteString(IpAddress); } if (NetworkUri.Length != 0) { - output.WriteRawTag(34); + output.WriteRawTag(26); output.WriteString(NetworkUri); } - if (InternalIp.Length != 0) { - output.WriteRawTag(42); - output.WriteString(InternalIp); - } - if (ExternalIp.Length != 0) { - output.WriteRawTag(50); - output.WriteString(ExternalIp); - } - if (Region.Length != 0) { - output.WriteRawTag(58); - output.WriteString(Region); - } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -12943,24 +13085,15 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (DisplayName.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(DisplayName); + if (PodUri.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(PodUri); } - if (Uri.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(Uri); + if (IpAddress.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(IpAddress); } if (NetworkUri.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(NetworkUri); } - if (InternalIp.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(InternalIp); - } - if (ExternalIp.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(ExternalIp); - } - if (Region.Length != 0) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(Region); - } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -12969,28 +13102,19 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(CloudSQLInstanceInfo other) { + public void MergeFrom(GkePodInfo other) { if (other == null) { return; } - if (other.DisplayName.Length != 0) { - DisplayName = other.DisplayName; + if (other.PodUri.Length != 0) { + PodUri = other.PodUri; } - if (other.Uri.Length != 0) { - Uri = other.Uri; + if (other.IpAddress.Length != 0) { + IpAddress = other.IpAddress; } if (other.NetworkUri.Length != 0) { NetworkUri = other.NetworkUri; } - if (other.InternalIp.Length != 0) { - InternalIp = other.InternalIp; - } - if (other.ExternalIp.Length != 0) { - ExternalIp = other.ExternalIp; - } - if (other.Region.Length != 0) { - Region = other.Region; - } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -13007,23 +13131,685 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { - DisplayName = input.ReadString(); + PodUri = input.ReadString(); break; } case 18: { - Uri = input.ReadString(); + IpAddress = input.ReadString(); break; } - case 34: { + case 26: { NetworkUri = input.ReadString(); break; } - case 42: { - InternalIp = input.ReadString(); - break; - } - case 50: { - ExternalIp = input.ReadString(); + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + PodUri = input.ReadString(); + break; + } + case 18: { + IpAddress = input.ReadString(); + break; + } + case 26: { + NetworkUri = input.ReadString(); + break; + } + } + } + } + #endif + + } + + /// + /// For display only. Contains information about why IP masquerading was skipped + /// for the packet. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class IpMasqueradingSkippedInfo : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new IpMasqueradingSkippedInfo()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[21]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public IpMasqueradingSkippedInfo() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public IpMasqueradingSkippedInfo(IpMasqueradingSkippedInfo other) : this() { + reason_ = other.reason_; + nonMasqueradeRange_ = other.nonMasqueradeRange_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public IpMasqueradingSkippedInfo Clone() { + return new IpMasqueradingSkippedInfo(this); + } + + /// Field number for the "reason" field. + public const int ReasonFieldNumber = 1; + private global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo.Types.Reason reason_ = global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo.Types.Reason.Unspecified; + /// + /// Reason why IP masquerading was not applied. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo.Types.Reason Reason { + get { return reason_; } + set { + reason_ = value; + } + } + + /// Field number for the "non_masquerade_range" field. + public const int NonMasqueradeRangeFieldNumber = 2; + private string nonMasqueradeRange_ = ""; + /// + /// The matched non-masquerade IP range. Only set if reason is + /// DESTINATION_IP_IN_CONFIGURED_NON_MASQUERADE_RANGE or + /// DESTINATION_IP_IN_DEFAULT_NON_MASQUERADE_RANGE. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string NonMasqueradeRange { + get { return nonMasqueradeRange_; } + set { + nonMasqueradeRange_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as IpMasqueradingSkippedInfo); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(IpMasqueradingSkippedInfo other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (Reason != other.Reason) return false; + if (NonMasqueradeRange != other.NonMasqueradeRange) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (Reason != global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo.Types.Reason.Unspecified) hash ^= Reason.GetHashCode(); + if (NonMasqueradeRange.Length != 0) hash ^= NonMasqueradeRange.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (Reason != global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo.Types.Reason.Unspecified) { + output.WriteRawTag(8); + output.WriteEnum((int) Reason); + } + if (NonMasqueradeRange.Length != 0) { + output.WriteRawTag(18); + output.WriteString(NonMasqueradeRange); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (Reason != global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo.Types.Reason.Unspecified) { + output.WriteRawTag(8); + output.WriteEnum((int) Reason); + } + if (NonMasqueradeRange.Length != 0) { + output.WriteRawTag(18); + output.WriteString(NonMasqueradeRange); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (Reason != global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo.Types.Reason.Unspecified) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Reason); + } + if (NonMasqueradeRange.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(NonMasqueradeRange); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(IpMasqueradingSkippedInfo other) { + if (other == null) { + return; + } + if (other.Reason != global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo.Types.Reason.Unspecified) { + Reason = other.Reason; + } + if (other.NonMasqueradeRange.Length != 0) { + NonMasqueradeRange = other.NonMasqueradeRange; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + Reason = (global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo.Types.Reason) input.ReadEnum(); + break; + } + case 18: { + NonMasqueradeRange = input.ReadString(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + Reason = (global::Google.Cloud.NetworkManagement.V1.IpMasqueradingSkippedInfo.Types.Reason) input.ReadEnum(); + break; + } + case 18: { + NonMasqueradeRange = input.ReadString(); + break; + } + } + } + } + #endif + + #region Nested types + /// Container for nested types declared in the IpMasqueradingSkippedInfo message type. + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static partial class Types { + /// + /// Reason why IP masquerading was skipped. + /// + public enum Reason { + /// + /// Unused default value. + /// + [pbr::OriginalName("REASON_UNSPECIFIED")] Unspecified = 0, + /// + /// Masquerading not applied because destination IP is in one of configured + /// non-masquerade ranges. + /// + [pbr::OriginalName("DESTINATION_IP_IN_CONFIGURED_NON_MASQUERADE_RANGE")] DestinationIpInConfiguredNonMasqueradeRange = 1, + /// + /// Masquerading not applied because destination IP is in one of default + /// non-masquerade ranges. + /// + [pbr::OriginalName("DESTINATION_IP_IN_DEFAULT_NON_MASQUERADE_RANGE")] DestinationIpInDefaultNonMasqueradeRange = 2, + /// + /// Masquerading not applied because destination is on the same Node. + /// + [pbr::OriginalName("DESTINATION_ON_SAME_NODE")] DestinationOnSameNode = 3, + /// + /// Masquerading not applied because ip-masq-agent doesn't exist and default + /// SNAT is disabled. + /// + [pbr::OriginalName("DEFAULT_SNAT_DISABLED")] DefaultSnatDisabled = 4, + /// + /// Masquerading not applied because the packet's IP version is IPv6. + /// + [pbr::OriginalName("NO_MASQUERADING_FOR_IPV6")] NoMasqueradingForIpv6 = 5, + /// + /// Masquerading not applied because the source Pod uses the host Node's + /// network namespace, including the Node's IP address. + /// + [pbr::OriginalName("POD_USES_NODE_NETWORK_NAMESPACE")] PodUsesNodeNetworkNamespace = 6, + /// + /// Masquerading not applied because the packet is a return packet. + /// + [pbr::OriginalName("NO_MASQUERADING_FOR_RETURN_PACKET")] NoMasqueradingForReturnPacket = 7, + } + + } + #endregion + + } + + /// + /// For display only. Metadata associated with a Cloud SQL instance. + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class CloudSQLInstanceInfo : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new CloudSQLInstanceInfo()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[22]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public CloudSQLInstanceInfo() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public CloudSQLInstanceInfo(CloudSQLInstanceInfo other) : this() { + displayName_ = other.displayName_; + uri_ = other.uri_; + networkUri_ = other.networkUri_; + internalIp_ = other.internalIp_; + externalIp_ = other.externalIp_; + region_ = other.region_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public CloudSQLInstanceInfo Clone() { + return new CloudSQLInstanceInfo(this); + } + + /// Field number for the "display_name" field. + public const int DisplayNameFieldNumber = 1; + private string displayName_ = ""; + /// + /// Name of a Cloud SQL instance. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string DisplayName { + get { return displayName_; } + set { + displayName_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "uri" field. + public const int UriFieldNumber = 2; + private string uri_ = ""; + /// + /// URI of a Cloud SQL instance. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string Uri { + get { return uri_; } + set { + uri_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "network_uri" field. + public const int NetworkUriFieldNumber = 4; + private string networkUri_ = ""; + /// + /// URI of a Cloud SQL instance network or empty string if the instance does + /// not have one. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string NetworkUri { + get { return networkUri_; } + set { + networkUri_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "internal_ip" field. + public const int InternalIpFieldNumber = 5; + private string internalIp_ = ""; + /// + /// Internal IP address of a Cloud SQL instance. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string InternalIp { + get { return internalIp_; } + set { + internalIp_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "external_ip" field. + public const int ExternalIpFieldNumber = 6; + private string externalIp_ = ""; + /// + /// External IP address of a Cloud SQL instance. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string ExternalIp { + get { return externalIp_; } + set { + externalIp_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "region" field. + public const int RegionFieldNumber = 7; + private string region_ = ""; + /// + /// Region in which the Cloud SQL instance is running. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string Region { + get { return region_; } + set { + region_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as CloudSQLInstanceInfo); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(CloudSQLInstanceInfo other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (DisplayName != other.DisplayName) return false; + if (Uri != other.Uri) return false; + if (NetworkUri != other.NetworkUri) return false; + if (InternalIp != other.InternalIp) return false; + if (ExternalIp != other.ExternalIp) return false; + if (Region != other.Region) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (DisplayName.Length != 0) hash ^= DisplayName.GetHashCode(); + if (Uri.Length != 0) hash ^= Uri.GetHashCode(); + if (NetworkUri.Length != 0) hash ^= NetworkUri.GetHashCode(); + if (InternalIp.Length != 0) hash ^= InternalIp.GetHashCode(); + if (ExternalIp.Length != 0) hash ^= ExternalIp.GetHashCode(); + if (Region.Length != 0) hash ^= Region.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (DisplayName.Length != 0) { + output.WriteRawTag(10); + output.WriteString(DisplayName); + } + if (Uri.Length != 0) { + output.WriteRawTag(18); + output.WriteString(Uri); + } + if (NetworkUri.Length != 0) { + output.WriteRawTag(34); + output.WriteString(NetworkUri); + } + if (InternalIp.Length != 0) { + output.WriteRawTag(42); + output.WriteString(InternalIp); + } + if (ExternalIp.Length != 0) { + output.WriteRawTag(50); + output.WriteString(ExternalIp); + } + if (Region.Length != 0) { + output.WriteRawTag(58); + output.WriteString(Region); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (DisplayName.Length != 0) { + output.WriteRawTag(10); + output.WriteString(DisplayName); + } + if (Uri.Length != 0) { + output.WriteRawTag(18); + output.WriteString(Uri); + } + if (NetworkUri.Length != 0) { + output.WriteRawTag(34); + output.WriteString(NetworkUri); + } + if (InternalIp.Length != 0) { + output.WriteRawTag(42); + output.WriteString(InternalIp); + } + if (ExternalIp.Length != 0) { + output.WriteRawTag(50); + output.WriteString(ExternalIp); + } + if (Region.Length != 0) { + output.WriteRawTag(58); + output.WriteString(Region); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (DisplayName.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(DisplayName); + } + if (Uri.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Uri); + } + if (NetworkUri.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(NetworkUri); + } + if (InternalIp.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(InternalIp); + } + if (ExternalIp.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ExternalIp); + } + if (Region.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Region); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(CloudSQLInstanceInfo other) { + if (other == null) { + return; + } + if (other.DisplayName.Length != 0) { + DisplayName = other.DisplayName; + } + if (other.Uri.Length != 0) { + Uri = other.Uri; + } + if (other.NetworkUri.Length != 0) { + NetworkUri = other.NetworkUri; + } + if (other.InternalIp.Length != 0) { + InternalIp = other.InternalIp; + } + if (other.ExternalIp.Length != 0) { + ExternalIp = other.ExternalIp; + } + if (other.Region.Length != 0) { + Region = other.Region; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + DisplayName = input.ReadString(); + break; + } + case 18: { + Uri = input.ReadString(); + break; + } + case 34: { + NetworkUri = input.ReadString(); + break; + } + case 42: { + InternalIp = input.ReadString(); + break; + } + case 50: { + ExternalIp = input.ReadString(); break; } case 58: { @@ -13094,7 +13880,7 @@ public sealed partial class RedisInstanceInfo : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[21]; } + get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[23]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -13490,7 +14276,7 @@ public sealed partial class RedisClusterInfo : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[22]; } + get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[24]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -13889,7 +14675,7 @@ public sealed partial class CloudFunctionInfo : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[23]; } + get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[25]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -14205,7 +14991,7 @@ public sealed partial class CloudRunRevisionInfo : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[26]; } + get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[28]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -15114,7 +15900,7 @@ public sealed partial class DirectVpcEgressConnectionInfo : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[29]; } + get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[31]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -15699,6 +16485,7 @@ public NatInfo(NatInfo other) : this() { newDestinationPort_ = other.newDestinationPort_; routerUri_ = other.routerUri_; natGatewayName_ = other.natGatewayName_; + cloudNatGatewayType_ = other.cloudNatGatewayType_; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } @@ -15905,6 +16692,21 @@ public string NatGatewayName { } } + /// Field number for the "cloud_nat_gateway_type" field. + public const int CloudNatGatewayTypeFieldNumber = 14; + private global::Google.Cloud.NetworkManagement.V1.NatInfo.Types.CloudNatGatewayType cloudNatGatewayType_ = global::Google.Cloud.NetworkManagement.V1.NatInfo.Types.CloudNatGatewayType.Unspecified; + /// + /// Type of Cloud NAT gateway. Only valid when `type` is CLOUD_NAT. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::Google.Cloud.NetworkManagement.V1.NatInfo.Types.CloudNatGatewayType CloudNatGatewayType { + get { return cloudNatGatewayType_; } + set { + cloudNatGatewayType_ = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { @@ -15933,6 +16735,7 @@ public bool Equals(NatInfo other) { if (NewDestinationPort != other.NewDestinationPort) return false; if (RouterUri != other.RouterUri) return false; if (NatGatewayName != other.NatGatewayName) return false; + if (CloudNatGatewayType != other.CloudNatGatewayType) return false; return Equals(_unknownFields, other._unknownFields); } @@ -15953,6 +16756,7 @@ public override int GetHashCode() { if (NewDestinationPort != 0) hash ^= NewDestinationPort.GetHashCode(); if (RouterUri.Length != 0) hash ^= RouterUri.GetHashCode(); if (NatGatewayName.Length != 0) hash ^= NatGatewayName.GetHashCode(); + if (CloudNatGatewayType != global::Google.Cloud.NetworkManagement.V1.NatInfo.Types.CloudNatGatewayType.Unspecified) hash ^= CloudNatGatewayType.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -16023,6 +16827,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(106); output.WriteString(NatGatewayName); } + if (CloudNatGatewayType != global::Google.Cloud.NetworkManagement.V1.NatInfo.Types.CloudNatGatewayType.Unspecified) { + output.WriteRawTag(112); + output.WriteEnum((int) CloudNatGatewayType); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -16085,6 +16893,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(106); output.WriteString(NatGatewayName); } + if (CloudNatGatewayType != global::Google.Cloud.NetworkManagement.V1.NatInfo.Types.CloudNatGatewayType.Unspecified) { + output.WriteRawTag(112); + output.WriteEnum((int) CloudNatGatewayType); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -16134,6 +16946,9 @@ public int CalculateSize() { if (NatGatewayName.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(NatGatewayName); } + if (CloudNatGatewayType != global::Google.Cloud.NetworkManagement.V1.NatInfo.Types.CloudNatGatewayType.Unspecified) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) CloudNatGatewayType); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -16185,6 +17000,9 @@ public void MergeFrom(NatInfo other) { if (other.NatGatewayName.Length != 0) { NatGatewayName = other.NatGatewayName; } + if (other.CloudNatGatewayType != global::Google.Cloud.NetworkManagement.V1.NatInfo.Types.CloudNatGatewayType.Unspecified) { + CloudNatGatewayType = other.CloudNatGatewayType; + } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -16252,6 +17070,10 @@ public void MergeFrom(pb::CodedInputStream input) { NatGatewayName = input.ReadString(); break; } + case 112: { + CloudNatGatewayType = (global::Google.Cloud.NetworkManagement.V1.NatInfo.Types.CloudNatGatewayType) input.ReadEnum(); + break; + } } } #endif @@ -16319,6 +17141,10 @@ public void MergeFrom(pb::CodedInputStream input) { NatGatewayName = input.ReadString(); break; } + case 112: { + CloudNatGatewayType = (global::Google.Cloud.NetworkManagement.V1.NatInfo.Types.CloudNatGatewayType) input.ReadEnum(); + break; + } } } } @@ -16359,6 +17185,36 @@ public enum Type { [pbr::OriginalName("GKE_POD_IP_MASQUERADING")] GkePodIpMasquerading = 5, } + /// + /// Types of Cloud NAT gateway. + /// + public enum CloudNatGatewayType { + /// + /// Type is unspecified. + /// + [pbr::OriginalName("CLOUD_NAT_GATEWAY_TYPE_UNSPECIFIED")] Unspecified = 0, + /// + /// Public NAT gateway. + /// + [pbr::OriginalName("PUBLIC_NAT44")] PublicNat44 = 1, + /// + /// Public NAT64 gateway. + /// + [pbr::OriginalName("PUBLIC_NAT64")] PublicNat64 = 2, + /// + /// Private NAT gateway for NCC. + /// + [pbr::OriginalName("PRIVATE_NAT_NCC")] PrivateNatNcc = 3, + /// + /// Private NAT gateway for hybrid connectivity. + /// + [pbr::OriginalName("PRIVATE_NAT_HYBRID")] PrivateNatHybrid = 4, + /// + /// Private NAT64 gateway. + /// + [pbr::OriginalName("PRIVATE_NAT64")] PrivateNat64 = 5, + } + } #endregion @@ -16382,7 +17238,7 @@ public sealed partial class ProxyConnectionInfo : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[32]; } + get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[34]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -17785,7 +18641,7 @@ public sealed partial class ServerlessNegInfo : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[33]; } + get { return global::Google.Cloud.NetworkManagement.V1.TraceReflection.Descriptor.MessageTypes[35]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] diff --git a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/VpcFlowLogs.g.cs b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/VpcFlowLogs.g.cs index 6545ad81759b..8101429d18c4 100644 --- a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/VpcFlowLogs.g.cs +++ b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/VpcFlowLogs.g.cs @@ -238,7 +238,7 @@ public ListVpcFlowLogsConfigsRequest Clone() { /// Required. The parent resource of the VpcFlowLogsConfig, /// in one of the following formats: /// - /// - For project-level resourcs: `projects/{project_id}/locations/global` + /// - For project-level resources: `projects/{project_id}/locations/global` /// /// - For organization-level resources: /// `organizations/{organization_id}/locations/global` diff --git a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/VpcFlowLogsGrpc.g.cs b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/VpcFlowLogsGrpc.g.cs index 04a73641acfd..08c016b194f5 100644 --- a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/VpcFlowLogsGrpc.g.cs +++ b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/VpcFlowLogsGrpc.g.cs @@ -3,7 +3,7 @@ // source: google/cloud/networkmanagement/v1/vpc_flow_logs.proto // // Original file comments: -// Copyright 2025 Google LLC +// Copyright 2026 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/VpcFlowLogsServiceClient.g.cs b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/VpcFlowLogsServiceClient.g.cs index c2f727a031d7..6218d8605878 100644 --- a/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/VpcFlowLogsServiceClient.g.cs +++ b/apis/Google.Cloud.NetworkManagement.V1/Google.Cloud.NetworkManagement.V1/VpcFlowLogsServiceClient.g.cs @@ -399,7 +399,7 @@ internal static VpcFlowLogsServiceClient Create(grpccore::CallInvoker callInvoke /// Required. The parent resource of the VpcFlowLogsConfig, /// in one of the following formats: /// - /// - For project-level resourcs: `projects/{project_id}/locations/global` + /// - For project-level resources: `projects/{project_id}/locations/global` /// /// - For organization-level resources: /// `organizations/{organization_id}/locations/global` @@ -438,7 +438,7 @@ internal static VpcFlowLogsServiceClient Create(grpccore::CallInvoker callInvoke /// Required. The parent resource of the VpcFlowLogsConfig, /// in one of the following formats: /// - /// - For project-level resourcs: `projects/{project_id}/locations/global` + /// - For project-level resources: `projects/{project_id}/locations/global` /// /// - For organization-level resources: /// `organizations/{organization_id}/locations/global` @@ -477,7 +477,7 @@ internal static VpcFlowLogsServiceClient Create(grpccore::CallInvoker callInvoke /// Required. The parent resource of the VpcFlowLogsConfig, /// in one of the following formats: /// - /// - For project-level resourcs: `projects/{project_id}/locations/global` + /// - For project-level resources: `projects/{project_id}/locations/global` /// /// - For organization-level resources: /// `organizations/{organization_id}/locations/global` @@ -516,7 +516,7 @@ internal static VpcFlowLogsServiceClient Create(grpccore::CallInvoker callInvoke /// Required. The parent resource of the VpcFlowLogsConfig, /// in one of the following formats: /// - /// - For project-level resourcs: `projects/{project_id}/locations/global` + /// - For project-level resources: `projects/{project_id}/locations/global` /// /// - For organization-level resources: /// `organizations/{organization_id}/locations/global` @@ -555,7 +555,7 @@ internal static VpcFlowLogsServiceClient Create(grpccore::CallInvoker callInvoke /// Required. The parent resource of the VpcFlowLogsConfig, /// in one of the following formats: /// - /// - For project-level resourcs: `projects/{project_id}/locations/global` + /// - For project-level resources: `projects/{project_id}/locations/global` /// /// - For organization-level resources: /// `organizations/{organization_id}/locations/global` @@ -594,7 +594,7 @@ internal static VpcFlowLogsServiceClient Create(grpccore::CallInvoker callInvoke /// Required. The parent resource of the VpcFlowLogsConfig, /// in one of the following formats: /// - /// - For project-level resourcs: `projects/{project_id}/locations/global` + /// - For project-level resources: `projects/{project_id}/locations/global` /// /// - For organization-level resources: /// `organizations/{organization_id}/locations/global` diff --git a/generator-input/pipeline-state.json b/generator-input/pipeline-state.json index 897388a7c01c..ed4089ab21e3 100644 --- a/generator-input/pipeline-state.json +++ b/generator-input/pipeline-state.json @@ -1167,7 +1167,7 @@ "generationAutomationLevel": "AUTOMATION_LEVEL_AUTOMATIC", "releaseAutomationLevel": "AUTOMATION_LEVEL_AUTOMATIC", "releaseTimestamp": "2025-10-23T16:08:32.392942733Z", - "lastGeneratedCommit": "94ccdfe4519e0ba817bd33aa22eb9c64f88a6874", + "lastGeneratedCommit": "928703e0380b0d937505cea9925e05256e0738a1", "lastReleasedCommit": "94ccdfe4519e0ba817bd33aa22eb9c64f88a6874", "apiPaths": [ "google/container/v1" @@ -2272,7 +2272,7 @@ "generationAutomationLevel": "AUTOMATION_LEVEL_AUTOMATIC", "releaseAutomationLevel": "AUTOMATION_LEVEL_AUTOMATIC", "releaseTimestamp": "2025-11-05T22:05:19.440999231Z", - "lastGeneratedCommit": "4d45a59e3edfa9607e43502515ae16b745890f3b", + "lastGeneratedCommit": "3343c4ed68f17a8910a04ef54647e337818e7ec2", "lastReleasedCommit": "4d45a59e3edfa9607e43502515ae16b745890f3b", "apiPaths": [ "google/cloud/networkmanagement/v1"