diff --git a/charts/metallb/templates/manifest.yaml b/charts/metallb/templates/manifest.yaml
new file mode 100644
index 0000000..bbcf54e
--- /dev/null
+++ b/charts/metallb/templates/manifest.yaml
@@ -0,0 +1,4001 @@
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+  annotations:
+    controller-gen.kubebuilder.io/version: v0.11.1
+  name: addresspools.metallb.io
+spec:
+  conversion:
+    strategy: Webhook
+    webhook:
+      clientConfig:
+        caBundle: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tDQpNSUlGWlRDQ0EwMmdBd0lCQWdJVU5GRW1XcTM3MVpKdGkrMmlSQzk1WmpBV1MxZ3dEUVlKS29aSWh2Y05BUUVMDQpCUUF3UWpFTE1Ba0dBMVVFQmhNQ1dGZ3hGVEFUQmdOVkJBY01ERVJsWm1GMWJIUWdRMmwwZVRFY01Cb0dBMVVFDQpDZ3dUUkdWbVlYVnNkQ0JEYjIxd1lXNTVJRXgwWkRBZUZ3MHlNakEzTVRrd09UTXlNek5hRncweU1qQTRNVGd3DQpPVE15TXpOYU1FSXhDekFKQmdOVkJBWVRBbGhZTVJVd0V3WURWUVFIREF4RVpXWmhkV3gwSUVOcGRIa3hIREFhDQpCZ05WQkFvTUUwUmxabUYxYkhRZ1EyOXRjR0Z1ZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElDDQpEd0F3Z2dJS0FvSUNBUUNxVFpxMWZRcC9vYkdlenhES0o3OVB3Ny94azJwellualNzMlkzb1ZYSm5sRmM4YjVlDQpma2ZZQnY2bndscW1keW5PL2phWFBaQmRQSS82aFdOUDBkdVhadEtWU0NCUUpyZzEyOGNXb3F0MGNTN3pLb1VpDQpvcU1tQ0QvRXVBeFFNZjhRZDF2c1gvVllkZ0poVTZBRXJLZEpIaXpFOUJtUkNkTDBGMW1OVW55Rk82UnRtWFZUDQpidkxsTDVYeTc2R0FaQVBLOFB4aVlDa0NtbDdxN0VnTWNiOXlLWldCYmlxQ3VkTXE5TGJLNmdKNzF6YkZnSXV4DQo1L1pXK2JraTB2RlplWk9ZODUxb1psckFUNzJvMDI4NHNTWW9uN0pHZVZkY3NoUnh5R1VpSFpSTzdkaXZVTDVTDQpmM2JmSDFYbWY1ZDQzT0NWTWRuUUV2NWVaOG8zeWVLa3ZrbkZQUGVJMU9BbjdGbDlFRVNNR2dhOGFaSG1URSttDQpsLzlMSmdDYjBnQmtPT0M0WnV4bWh2aERKV1EzWnJCS3pMQlNUZXN0NWlLNVlwcXRWVVk2THRyRW9FelVTK1lsDQpwWndXY2VQWHlHeHM5ZURsR3lNVmQraW15Y3NTU1UvVno2Mmx6MnZCS21NTXBkYldDQWhud0RsRTVqU2dyMjRRDQp0eGNXLys2N3d5KzhuQlI3UXdqVTFITndVRjBzeERWdEwrZ1NHVERnSEVZSlhZelYvT05zMy94TkpoVFNPSkxNDQpoeXNVdyttaGdackdhbUdXcHVIVU1DUitvTWJzMTc1UkcrQjJnUFFHVytPTjJnUTRyOXN2b0ZBNHBBQm8xd1dLDQpRYjRhY3pmeVVscElBOVFoSmFsZEY3S3dPSHVlV3gwRUNrNXg0T2tvVDBvWVp0dzFiR0JjRGtaSmF3SURBUUFCDQpvMU13VVRBZEJnTlZIUTRFRmdRVW90UlNIUm9IWTEyRFZ4R0NCdEhpb1g2ZmVFQXdId1lEVlIwakJCZ3dGb0FVDQpvdFJTSFJvSFkxMkRWeEdDQnRIaW9YNmZlRUF3RHdZRFZSMFRBUUgvQkFVd0F3RUIvekFOQmdrcWhraUc5dzBCDQpBUXNGQUFPQ0FnRUFSbkpsWWRjMTFHd0VxWnh6RDF2R3BDR2pDN2VWTlQ3aVY1d3IybXlybHdPYi9aUWFEa0xYDQpvVStaOVVXT1VlSXJTdzUydDdmQUpvVVAwSm5iYkMveVIrU1lqUGhvUXNiVHduOTc2ZldBWTduM3FMOXhCd1Y0DQphek41OXNjeUp0dlhMeUtOL2N5ak1ReDRLajBIMFg0bWJ6bzVZNUtzWWtYVU0vOEFPdWZMcEd0S1NGVGgrSEFDDQpab1Q5YnZHS25adnNHd0tYZFF0Wnh0akhaUjVqK3U3ZGtQOTJBT051RFNabS8rWVV4b2tBK09JbzdSR3BwSHNXDQo1ZTdNY0FTVXRtb1FORXd6dVFoVkJaRWQ1OGtKYjUrV0VWbGNzanlXNnRTbzErZ25tTWNqR1BsMWgxR2hVbjV4DQpFY0lWRnBIWXM5YWo1NmpBSjk1MVQvZjhMaWxmTlVnanBLQ0c1bnl0SUt3emxhOHNtdGlPdm1UNEpYbXBwSkI2DQo4bmdHRVluVjUrUTYwWFJ2OEhSSGp1VG9CRHVhaERrVDA2R1JGODU1d09FR2V4bkZpMXZYWUxLVllWb1V2MXRKDQo4dVdUR1pwNllDSVJldlBqbzg5ZytWTlJSaVFYUThJd0dybXE5c0RoVTlqTjA0SjdVL1RvRDFpNHE3VnlsRUc5DQorV1VGNkNLaEdBeTJIaEhwVncyTGFoOS9lUzdZMUZ1YURrWmhPZG1laG1BOCtqdHNZamJadnR5Mm1SWlF0UUZzDQpUU1VUUjREbUR2bVVPRVRmeStpRHdzK2RkWXVNTnJGeVVYV2dkMnpBQU4ydVl1UHFGY2pRcFNPODFzVTJTU3R3DQoxVzAyeUtYOGJEYmZFdjBzbUh3UzliQnFlSGo5NEM1Mjg0YXpsdTBmaUdpTm1OUEM4ckJLRmhBPQ0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQ==
+        service:
+          name: webhook-service
+          namespace: metallb-system
+          path: /convert
+      conversionReviewVersions:
+      - v1alpha1
+      - v1beta1
+  group: metallb.io
+  names:
+    kind: AddressPool
+    listKind: AddressPoolList
+    plural: addresspools
+    singular: addresspool
+  scope: Namespaced
+  versions:
+  - deprecated: true
+    deprecationWarning: metallb.io v1alpha1 AddressPool is deprecated
+    name: v1alpha1
+    schema:
+      openAPIV3Schema:
+        description: AddressPool is the Schema for the addresspools API.
+        properties:
+          apiVersion:
+            description: 'APIVersion defines the versioned schema of this representation
+              of an object. Servers should convert recognized schemas to the latest
+              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+            type: string
+          kind:
+            description: 'Kind is a string value representing the REST resource this
+              object represents. Servers may infer this from the endpoint the client
+              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+            type: string
+          metadata:
+            type: object
+          spec:
+            description: AddressPoolSpec defines the desired state of AddressPool.
+            properties:
+              addresses:
+                description: A list of IP address ranges over which MetalLB has authority.
+                  You can list multiple ranges in a single pool, they will all share
+                  the same settings. Each range can be either a CIDR prefix, or an
+                  explicit start-end range of IPs.
+                items:
+                  type: string
+                type: array
+              autoAssign:
+                default: true
+                description: AutoAssign flag used to prevent MetallB from automatic
+                  allocation for a pool.
+                type: boolean
+              bgpAdvertisements:
+                description: When an IP is allocated from this pool, how should it
+                  be translated into BGP announcements?
+                items:
+                  properties:
+                    aggregationLength:
+                      default: 32
+                      description: The aggregation-length advertisement option lets
+                        you “roll up” the /32s into a larger prefix.
+                      format: int32
+                      minimum: 1
+                      type: integer
+                    aggregationLengthV6:
+                      default: 128
+                      description: Optional, defaults to 128 (i.e. no aggregation)
+                        if not specified.
+                      format: int32
+                      type: integer
+                    communities:
+                      description: BGP communities
+                      items:
+                        type: string
+                      type: array
+                    localPref:
+                      description: BGP LOCAL_PREF attribute which is used by BGP best
+                        path algorithm, Path with higher localpref is preferred over
+                        one with lower localpref.
+                      format: int32
+                      type: integer
+                  type: object
+                type: array
+              protocol:
+                description: Protocol can be used to select how the announcement is
+                  done.
+                enum:
+                - layer2
+                - bgp
+                type: string
+            required:
+            - addresses
+            - protocol
+            type: object
+          status:
+            description: AddressPoolStatus defines the observed state of AddressPool.
+            type: object
+        required:
+        - spec
+        type: object
+    served: true
+    storage: false
+    subresources:
+      status: {}
+  - deprecated: true
+    deprecationWarning: metallb.io v1beta1 AddressPool is deprecated, consider using
+      IPAddressPool
+    name: v1beta1
+    schema:
+      openAPIV3Schema:
+        description: AddressPool represents a pool of IP addresses that can be allocated
+          to LoadBalancer services. AddressPool is deprecated and being replaced by
+          IPAddressPool.
+        properties:
+          apiVersion:
+            description: 'APIVersion defines the versioned schema of this representation
+              of an object. Servers should convert recognized schemas to the latest
+              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+            type: string
+          kind:
+            description: 'Kind is a string value representing the REST resource this
+              object represents. Servers may infer this from the endpoint the client
+              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+            type: string
+          metadata:
+            type: object
+          spec:
+            description: AddressPoolSpec defines the desired state of AddressPool.
+            properties:
+              addresses:
+                description: A list of IP address ranges over which MetalLB has authority.
+                  You can list multiple ranges in a single pool, they will all share
+                  the same settings. Each range can be either a CIDR prefix, or an
+                  explicit start-end range of IPs.
+                items:
+                  type: string
+                type: array
+              autoAssign:
+                default: true
+                description: AutoAssign flag used to prevent MetallB from automatic
+                  allocation for a pool.
+                type: boolean
+              bgpAdvertisements:
+                description: Drives how an IP allocated from this pool should translated
+                  into BGP announcements.
+                items:
+                  properties:
+                    aggregationLength:
+                      default: 32
+                      description: The aggregation-length advertisement option lets
+                        you “roll up” the /32s into a larger prefix.
+                      format: int32
+                      minimum: 1
+                      type: integer
+                    aggregationLengthV6:
+                      default: 128
+                      description: Optional, defaults to 128 (i.e. no aggregation)
+                        if not specified.
+                      format: int32
+                      type: integer
+                    communities:
+                      description: BGP communities to be associated with the given
+                        advertisement.
+                      items:
+                        type: string
+                      type: array
+                    localPref:
+                      description: BGP LOCAL_PREF attribute which is used by BGP best
+                        path algorithm, Path with higher localpref is preferred over
+                        one with lower localpref.
+                      format: int32
+                      type: integer
+                  type: object
+                type: array
+              protocol:
+                description: Protocol can be used to select how the announcement is
+                  done.
+                enum:
+                - layer2
+                - bgp
+                type: string
+            required:
+            - addresses
+            - protocol
+            type: object
+          status:
+            description: AddressPoolStatus defines the observed state of AddressPool.
+            type: object
+        required:
+        - spec
+        type: object
+    served: true
+    storage: true
+    subresources:
+      status: {}
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+  annotations:
+    controller-gen.kubebuilder.io/version: v0.11.1
+  creationTimestamp: null
+  name: bfdprofiles.metallb.io
+spec:
+  group: metallb.io
+  names:
+    kind: BFDProfile
+    listKind: BFDProfileList
+    plural: bfdprofiles
+    singular: bfdprofile
+  scope: Namespaced
+  versions:
+  - additionalPrinterColumns:
+    - jsonPath: .spec.passiveMode
+      name: Passive Mode
+      type: boolean
+    - jsonPath: .spec.transmitInterval
+      name: Transmit Interval
+      type: integer
+    - jsonPath: .spec.receiveInterval
+      name: Receive Interval
+      type: integer
+    - jsonPath: .spec.detectMultiplier
+      name: Multiplier
+      type: integer
+    name: v1beta1
+    schema:
+      openAPIV3Schema:
+        description: BFDProfile represents the settings of the bfd session that can
+          be optionally associated with a BGP session.
+        properties:
+          apiVersion:
+            description: 'APIVersion defines the versioned schema of this representation
+              of an object. Servers should convert recognized schemas to the latest
+              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+            type: string
+          kind:
+            description: 'Kind is a string value representing the REST resource this
+              object represents. Servers may infer this from the endpoint the client
+              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+            type: string
+          metadata:
+            type: object
+          spec:
+            description: BFDProfileSpec defines the desired state of BFDProfile.
+            properties:
+              detectMultiplier:
+                description: Configures the detection multiplier to determine packet
+                  loss. The remote transmission interval will be multiplied by this
+                  value to determine the connection loss detection timer.
+                format: int32
+                maximum: 255
+                minimum: 2
+                type: integer
+              echoInterval:
+                description: Configures the minimal echo receive transmission interval
+                  that this system is capable of handling in milliseconds. Defaults
+                  to 50ms
+                format: int32
+                maximum: 60000
+                minimum: 10
+                type: integer
+              echoMode:
+                description: Enables or disables the echo transmission mode. This
+                  mode is disabled by default, and not supported on multi hops setups.
+                type: boolean
+              minimumTtl:
+                description: 'For multi hop sessions only: configure the minimum expected
+                  TTL for an incoming BFD control packet.'
+                format: int32
+                maximum: 254
+                minimum: 1
+                type: integer
+              passiveMode:
+                description: 'Mark session as passive: a passive session will not
+                  attempt to start the connection and will wait for control packets
+                  from peer before it begins replying.'
+                type: boolean
+              receiveInterval:
+                description: The minimum interval that this system is capable of receiving
+                  control packets in milliseconds. Defaults to 300ms.
+                format: int32
+                maximum: 60000
+                minimum: 10
+                type: integer
+              transmitInterval:
+                description: The minimum transmission interval (less jitter) that
+                  this system wants to use to send BFD control packets in milliseconds.
+                  Defaults to 300ms
+                format: int32
+                maximum: 60000
+                minimum: 10
+                type: integer
+            type: object
+          status:
+            description: BFDProfileStatus defines the observed state of BFDProfile.
+            type: object
+        type: object
+    served: true
+    storage: true
+    subresources:
+      status: {}
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+  annotations:
+    controller-gen.kubebuilder.io/version: v0.11.1
+  creationTimestamp: null
+  name: bgpadvertisements.metallb.io
+spec:
+  group: metallb.io
+  names:
+    kind: BGPAdvertisement
+    listKind: BGPAdvertisementList
+    plural: bgpadvertisements
+    singular: bgpadvertisement
+  scope: Namespaced
+  versions:
+  - additionalPrinterColumns:
+    - jsonPath: .spec.ipAddressPools
+      name: IPAddressPools
+      type: string
+    - jsonPath: .spec.ipAddressPoolSelectors
+      name: IPAddressPool Selectors
+      type: string
+    - jsonPath: .spec.peers
+      name: Peers
+      type: string
+    - jsonPath: .spec.nodeSelectors
+      name: Node Selectors
+      priority: 10
+      type: string
+    name: v1beta1
+    schema:
+      openAPIV3Schema:
+        description: BGPAdvertisement allows to advertise the IPs coming from the
+          selected IPAddressPools via BGP, setting the parameters of the BGP Advertisement.
+        properties:
+          apiVersion:
+            description: 'APIVersion defines the versioned schema of this representation
+              of an object. Servers should convert recognized schemas to the latest
+              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+            type: string
+          kind:
+            description: 'Kind is a string value representing the REST resource this
+              object represents. Servers may infer this from the endpoint the client
+              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+            type: string
+          metadata:
+            type: object
+          spec:
+            description: BGPAdvertisementSpec defines the desired state of BGPAdvertisement.
+            properties:
+              aggregationLength:
+                default: 32
+                description: The aggregation-length advertisement option lets you
+                  “roll up” the /32s into a larger prefix. Defaults to 32. Works for
+                  IPv4 addresses.
+                format: int32
+                minimum: 1
+                type: integer
+              aggregationLengthV6:
+                default: 128
+                description: The aggregation-length advertisement option lets you
+                  “roll up” the /128s into a larger prefix. Defaults to 128. Works
+                  for IPv6 addresses.
+                format: int32
+                type: integer
+              communities:
+                description: The BGP communities to be associated with the announcement.
+                  Each item can be a community of the form 1234:1234 or the name of
+                  an alias defined in the Community CRD.
+                items:
+                  type: string
+                type: array
+              ipAddressPoolSelectors:
+                description: A selector for the IPAddressPools which would get advertised
+                  via this advertisement. If no IPAddressPool is selected by this
+                  or by the list, the advertisement is applied to all the IPAddressPools.
+                items:
+                  description: A label selector is a label query over a set of resources.
+                    The result of matchLabels and matchExpressions are ANDed. An empty
+                    label selector matches all objects. A null label selector matches
+                    no objects.
+                  properties:
+                    matchExpressions:
+                      description: matchExpressions is a list of label selector requirements.
+                        The requirements are ANDed.
+                      items:
+                        description: A label selector requirement is a selector that
+                          contains values, a key, and an operator that relates the
+                          key and values.
+                        properties:
+                          key:
+                            description: key is the label key that the selector applies
+                              to.
+                            type: string
+                          operator:
+                            description: operator represents a key's relationship
+                              to a set of values. Valid operators are In, NotIn, Exists
+                              and DoesNotExist.
+                            type: string
+                          values:
+                            description: values is an array of string values. If the
+                              operator is In or NotIn, the values array must be non-empty.
+                              If the operator is Exists or DoesNotExist, the values
+                              array must be empty. This array is replaced during a
+                              strategic merge patch.
+                            items:
+                              type: string
+                            type: array
+                        required:
+                        - key
+                        - operator
+                        type: object
+                      type: array
+                    matchLabels:
+                      additionalProperties:
+                        type: string
+                      description: matchLabels is a map of {key,value} pairs. A single
+                        {key,value} in the matchLabels map is equivalent to an element
+                        of matchExpressions, whose key field is "key", the operator
+                        is "In", and the values array contains only "value". The requirements
+                        are ANDed.
+                      type: object
+                  type: object
+                  x-kubernetes-map-type: atomic
+                type: array
+              ipAddressPools:
+                description: The list of IPAddressPools to advertise via this advertisement,
+                  selected by name.
+                items:
+                  type: string
+                type: array
+              localPref:
+                description: The BGP LOCAL_PREF attribute which is used by BGP best
+                  path algorithm, Path with higher localpref is preferred over one
+                  with lower localpref.
+                format: int32
+                type: integer
+              nodeSelectors:
+                description: NodeSelectors allows to limit the nodes to announce as
+                  next hops for the LoadBalancer IP. When empty, all the nodes having  are
+                  announced as next hops.
+                items:
+                  description: A label selector is a label query over a set of resources.
+                    The result of matchLabels and matchExpressions are ANDed. An empty
+                    label selector matches all objects. A null label selector matches
+                    no objects.
+                  properties:
+                    matchExpressions:
+                      description: matchExpressions is a list of label selector requirements.
+                        The requirements are ANDed.
+                      items:
+                        description: A label selector requirement is a selector that
+                          contains values, a key, and an operator that relates the
+                          key and values.
+                        properties:
+                          key:
+                            description: key is the label key that the selector applies
+                              to.
+                            type: string
+                          operator:
+                            description: operator represents a key's relationship
+                              to a set of values. Valid operators are In, NotIn, Exists
+                              and DoesNotExist.
+                            type: string
+                          values:
+                            description: values is an array of string values. If the
+                              operator is In or NotIn, the values array must be non-empty.
+                              If the operator is Exists or DoesNotExist, the values
+                              array must be empty. This array is replaced during a
+                              strategic merge patch.
+                            items:
+                              type: string
+                            type: array
+                        required:
+                        - key
+                        - operator
+                        type: object
+                      type: array
+                    matchLabels:
+                      additionalProperties:
+                        type: string
+                      description: matchLabels is a map of {key,value} pairs. A single
+                        {key,value} in the matchLabels map is equivalent to an element
+                        of matchExpressions, whose key field is "key", the operator
+                        is "In", and the values array contains only "value". The requirements
+                        are ANDed.
+                      type: object
+                  type: object
+                  x-kubernetes-map-type: atomic
+                type: array
+              peers:
+                description: Peers limits the bgppeer to advertise the ips of the
+                  selected pools to. When empty, the loadbalancer IP is announced
+                  to all the BGPPeers configured.
+                items:
+                  type: string
+                type: array
+            type: object
+          status:
+            description: BGPAdvertisementStatus defines the observed state of BGPAdvertisement.
+            type: object
+        type: object
+    served: true
+    storage: true
+    subresources:
+      status: {}
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+  annotations:
+    controller-gen.kubebuilder.io/version: v0.11.1
+  name: bgppeers.metallb.io
+spec:
+  conversion:
+    strategy: Webhook
+    webhook:
+      clientConfig:
+        caBundle: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tDQpNSUlGWlRDQ0EwMmdBd0lCQWdJVU5GRW1XcTM3MVpKdGkrMmlSQzk1WmpBV1MxZ3dEUVlKS29aSWh2Y05BUUVMDQpCUUF3UWpFTE1Ba0dBMVVFQmhNQ1dGZ3hGVEFUQmdOVkJBY01ERVJsWm1GMWJIUWdRMmwwZVRFY01Cb0dBMVVFDQpDZ3dUUkdWbVlYVnNkQ0JEYjIxd1lXNTVJRXgwWkRBZUZ3MHlNakEzTVRrd09UTXlNek5hRncweU1qQTRNVGd3DQpPVE15TXpOYU1FSXhDekFKQmdOVkJBWVRBbGhZTVJVd0V3WURWUVFIREF4RVpXWmhkV3gwSUVOcGRIa3hIREFhDQpCZ05WQkFvTUUwUmxabUYxYkhRZ1EyOXRjR0Z1ZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElDDQpEd0F3Z2dJS0FvSUNBUUNxVFpxMWZRcC9vYkdlenhES0o3OVB3Ny94azJwellualNzMlkzb1ZYSm5sRmM4YjVlDQpma2ZZQnY2bndscW1keW5PL2phWFBaQmRQSS82aFdOUDBkdVhadEtWU0NCUUpyZzEyOGNXb3F0MGNTN3pLb1VpDQpvcU1tQ0QvRXVBeFFNZjhRZDF2c1gvVllkZ0poVTZBRXJLZEpIaXpFOUJtUkNkTDBGMW1OVW55Rk82UnRtWFZUDQpidkxsTDVYeTc2R0FaQVBLOFB4aVlDa0NtbDdxN0VnTWNiOXlLWldCYmlxQ3VkTXE5TGJLNmdKNzF6YkZnSXV4DQo1L1pXK2JraTB2RlplWk9ZODUxb1psckFUNzJvMDI4NHNTWW9uN0pHZVZkY3NoUnh5R1VpSFpSTzdkaXZVTDVTDQpmM2JmSDFYbWY1ZDQzT0NWTWRuUUV2NWVaOG8zeWVLa3ZrbkZQUGVJMU9BbjdGbDlFRVNNR2dhOGFaSG1URSttDQpsLzlMSmdDYjBnQmtPT0M0WnV4bWh2aERKV1EzWnJCS3pMQlNUZXN0NWlLNVlwcXRWVVk2THRyRW9FelVTK1lsDQpwWndXY2VQWHlHeHM5ZURsR3lNVmQraW15Y3NTU1UvVno2Mmx6MnZCS21NTXBkYldDQWhud0RsRTVqU2dyMjRRDQp0eGNXLys2N3d5KzhuQlI3UXdqVTFITndVRjBzeERWdEwrZ1NHVERnSEVZSlhZelYvT05zMy94TkpoVFNPSkxNDQpoeXNVdyttaGdackdhbUdXcHVIVU1DUitvTWJzMTc1UkcrQjJnUFFHVytPTjJnUTRyOXN2b0ZBNHBBQm8xd1dLDQpRYjRhY3pmeVVscElBOVFoSmFsZEY3S3dPSHVlV3gwRUNrNXg0T2tvVDBvWVp0dzFiR0JjRGtaSmF3SURBUUFCDQpvMU13VVRBZEJnTlZIUTRFRmdRVW90UlNIUm9IWTEyRFZ4R0NCdEhpb1g2ZmVFQXdId1lEVlIwakJCZ3dGb0FVDQpvdFJTSFJvSFkxMkRWeEdDQnRIaW9YNmZlRUF3RHdZRFZSMFRBUUgvQkFVd0F3RUIvekFOQmdrcWhraUc5dzBCDQpBUXNGQUFPQ0FnRUFSbkpsWWRjMTFHd0VxWnh6RDF2R3BDR2pDN2VWTlQ3aVY1d3IybXlybHdPYi9aUWFEa0xYDQpvVStaOVVXT1VlSXJTdzUydDdmQUpvVVAwSm5iYkMveVIrU1lqUGhvUXNiVHduOTc2ZldBWTduM3FMOXhCd1Y0DQphek41OXNjeUp0dlhMeUtOL2N5ak1ReDRLajBIMFg0bWJ6bzVZNUtzWWtYVU0vOEFPdWZMcEd0S1NGVGgrSEFDDQpab1Q5YnZHS25adnNHd0tYZFF0Wnh0akhaUjVqK3U3ZGtQOTJBT051RFNabS8rWVV4b2tBK09JbzdSR3BwSHNXDQo1ZTdNY0FTVXRtb1FORXd6dVFoVkJaRWQ1OGtKYjUrV0VWbGNzanlXNnRTbzErZ25tTWNqR1BsMWgxR2hVbjV4DQpFY0lWRnBIWXM5YWo1NmpBSjk1MVQvZjhMaWxmTlVnanBLQ0c1bnl0SUt3emxhOHNtdGlPdm1UNEpYbXBwSkI2DQo4bmdHRVluVjUrUTYwWFJ2OEhSSGp1VG9CRHVhaERrVDA2R1JGODU1d09FR2V4bkZpMXZYWUxLVllWb1V2MXRKDQo4dVdUR1pwNllDSVJldlBqbzg5ZytWTlJSaVFYUThJd0dybXE5c0RoVTlqTjA0SjdVL1RvRDFpNHE3VnlsRUc5DQorV1VGNkNLaEdBeTJIaEhwVncyTGFoOS9lUzdZMUZ1YURrWmhPZG1laG1BOCtqdHNZamJadnR5Mm1SWlF0UUZzDQpUU1VUUjREbUR2bVVPRVRmeStpRHdzK2RkWXVNTnJGeVVYV2dkMnpBQU4ydVl1UHFGY2pRcFNPODFzVTJTU3R3DQoxVzAyeUtYOGJEYmZFdjBzbUh3UzliQnFlSGo5NEM1Mjg0YXpsdTBmaUdpTm1OUEM4ckJLRmhBPQ0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQ==
+        service:
+          name: webhook-service
+          namespace: metallb-system
+          path: /convert
+      conversionReviewVersions:
+      - v1beta1
+      - v1beta2
+  group: metallb.io
+  names:
+    kind: BGPPeer
+    listKind: BGPPeerList
+    plural: bgppeers
+    singular: bgppeer
+  scope: Namespaced
+  versions:
+  - additionalPrinterColumns:
+    - jsonPath: .spec.peerAddress
+      name: Address
+      type: string
+    - jsonPath: .spec.peerASN
+      name: ASN
+      type: string
+    - jsonPath: .spec.bfdProfile
+      name: BFD Profile
+      type: string
+    - jsonPath: .spec.ebgpMultiHop
+      name: Multi Hops
+      type: string
+    name: v1beta1
+    schema:
+      openAPIV3Schema:
+        description: BGPPeer is the Schema for the peers API.
+        properties:
+          apiVersion:
+            description: 'APIVersion defines the versioned schema of this representation
+              of an object. Servers should convert recognized schemas to the latest
+              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+            type: string
+          kind:
+            description: 'Kind is a string value representing the REST resource this
+              object represents. Servers may infer this from the endpoint the client
+              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+            type: string
+          metadata:
+            type: object
+          spec:
+            description: BGPPeerSpec defines the desired state of Peer.
+            properties:
+              bfdProfile:
+                type: string
+              ebgpMultiHop:
+                description: EBGP peer is multi-hops away
+                type: boolean
+              holdTime:
+                description: Requested BGP hold time, per RFC4271.
+                type: string
+              keepaliveTime:
+                description: Requested BGP keepalive time, per RFC4271.
+                type: string
+              myASN:
+                description: AS number to use for the local end of the session.
+                format: int32
+                maximum: 4294967295
+                minimum: 0
+                type: integer
+              nodeSelectors:
+                description: Only connect to this peer on nodes that match one of
+                  these selectors.
+                items:
+                  properties:
+                    matchExpressions:
+                      items:
+                        properties:
+                          key:
+                            type: string
+                          operator:
+                            type: string
+                          values:
+                            items:
+                              type: string
+                            minItems: 1
+                            type: array
+                        required:
+                        - key
+                        - operator
+                        - values
+                        type: object
+                      type: array
+                    matchLabels:
+                      additionalProperties:
+                        type: string
+                      type: object
+                  type: object
+                type: array
+              password:
+                description: Authentication password for routers enforcing TCP MD5
+                  authenticated sessions
+                type: string
+              peerASN:
+                description: AS number to expect from the remote end of the session.
+                format: int32
+                maximum: 4294967295
+                minimum: 0
+                type: integer
+              peerAddress:
+                description: Address to dial when establishing the session.
+                type: string
+              peerPort:
+                description: Port to dial when establishing the session.
+                maximum: 16384
+                minimum: 0
+                type: integer
+              routerID:
+                description: BGP router ID to advertise to the peer
+                type: string
+              sourceAddress:
+                description: Source address to use when establishing the session.
+                type: string
+            required:
+            - myASN
+            - peerASN
+            - peerAddress
+            type: object
+          status:
+            description: BGPPeerStatus defines the observed state of Peer.
+            type: object
+        type: object
+    served: true
+    storage: false
+    subresources:
+      status: {}
+  - additionalPrinterColumns:
+    - jsonPath: .spec.peerAddress
+      name: Address
+      type: string
+    - jsonPath: .spec.peerASN
+      name: ASN
+      type: string
+    - jsonPath: .spec.bfdProfile
+      name: BFD Profile
+      type: string
+    - jsonPath: .spec.ebgpMultiHop
+      name: Multi Hops
+      type: string
+    name: v1beta2
+    schema:
+      openAPIV3Schema:
+        description: BGPPeer is the Schema for the peers API.
+        properties:
+          apiVersion:
+            description: 'APIVersion defines the versioned schema of this representation
+              of an object. Servers should convert recognized schemas to the latest
+              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+            type: string
+          kind:
+            description: 'Kind is a string value representing the REST resource this
+              object represents. Servers may infer this from the endpoint the client
+              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+            type: string
+          metadata:
+            type: object
+          spec:
+            description: BGPPeerSpec defines the desired state of Peer.
+            properties:
+              bfdProfile:
+                description: The name of the BFD Profile to be used for the BFD session
+                  associated to the BGP session. If not set, the BFD session won't
+                  be set up.
+                type: string
+              ebgpMultiHop:
+                description: To set if the BGPPeer is multi-hops away. Needed for
+                  FRR mode only.
+                type: boolean
+              holdTime:
+                description: Requested BGP hold time, per RFC4271.
+                type: string
+              keepaliveTime:
+                description: Requested BGP keepalive time, per RFC4271.
+                type: string
+              myASN:
+                description: AS number to use for the local end of the session.
+                format: int32
+                maximum: 4294967295
+                minimum: 0
+                type: integer
+              nodeSelectors:
+                description: Only connect to this peer on nodes that match one of
+                  these selectors.
+                items:
+                  description: A label selector is a label query over a set of resources.
+                    The result of matchLabels and matchExpressions are ANDed. An empty
+                    label selector matches all objects. A null label selector matches
+                    no objects.
+                  properties:
+                    matchExpressions:
+                      description: matchExpressions is a list of label selector requirements.
+                        The requirements are ANDed.
+                      items:
+                        description: A label selector requirement is a selector that
+                          contains values, a key, and an operator that relates the
+                          key and values.
+                        properties:
+                          key:
+                            description: key is the label key that the selector applies
+                              to.
+                            type: string
+                          operator:
+                            description: operator represents a key's relationship
+                              to a set of values. Valid operators are In, NotIn, Exists
+                              and DoesNotExist.
+                            type: string
+                          values:
+                            description: values is an array of string values. If the
+                              operator is In or NotIn, the values array must be non-empty.
+                              If the operator is Exists or DoesNotExist, the values
+                              array must be empty. This array is replaced during a
+                              strategic merge patch.
+                            items:
+                              type: string
+                            type: array
+                        required:
+                        - key
+                        - operator
+                        type: object
+                      type: array
+                    matchLabels:
+                      additionalProperties:
+                        type: string
+                      description: matchLabels is a map of {key,value} pairs. A single
+                        {key,value} in the matchLabels map is equivalent to an element
+                        of matchExpressions, whose key field is "key", the operator
+                        is "In", and the values array contains only "value". The requirements
+                        are ANDed.
+                      type: object
+                  type: object
+                  x-kubernetes-map-type: atomic
+                type: array
+              password:
+                description: Authentication password for routers enforcing TCP MD5
+                  authenticated sessions
+                type: string
+              passwordSecret:
+                description: passwordSecret is name of the authentication secret for
+                  BGP Peer. the secret must be of type "kubernetes.io/basic-auth",
+                  and created in the same namespace as the MetalLB deployment. The
+                  password is stored in the secret as the key "password".
+                properties:
+                  name:
+                    description: name is unique within a namespace to reference a
+                      secret resource.
+                    type: string
+                  namespace:
+                    description: namespace defines the space within which the secret
+                      name must be unique.
+                    type: string
+                type: object
+                x-kubernetes-map-type: atomic
+              peerASN:
+                description: AS number to expect from the remote end of the session.
+                format: int32
+                maximum: 4294967295
+                minimum: 0
+                type: integer
+              peerAddress:
+                description: Address to dial when establishing the session.
+                type: string
+              peerPort:
+                default: 179
+                description: Port to dial when establishing the session.
+                maximum: 16384
+                minimum: 0
+                type: integer
+              routerID:
+                description: BGP router ID to advertise to the peer
+                type: string
+              sourceAddress:
+                description: Source address to use when establishing the session.
+                type: string
+              vrf:
+                description: To set if we want to peer with the BGPPeer using an interface
+                  belonging to a host vrf
+                type: string
+            required:
+            - myASN
+            - peerASN
+            - peerAddress
+            type: object
+          status:
+            description: BGPPeerStatus defines the observed state of Peer.
+            type: object
+        type: object
+    served: true
+    storage: true
+    subresources:
+      status: {}
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+  annotations:
+    controller-gen.kubebuilder.io/version: v0.11.1
+  creationTimestamp: null
+  name: communities.metallb.io
+spec:
+  group: metallb.io
+  names:
+    kind: Community
+    listKind: CommunityList
+    plural: communities
+    singular: community
+  scope: Namespaced
+  versions:
+  - name: v1beta1
+    schema:
+      openAPIV3Schema:
+        description: Community is a collection of aliases for communities. Users can
+          define named aliases to be used in the BGPPeer CRD.
+        properties:
+          apiVersion:
+            description: 'APIVersion defines the versioned schema of this representation
+              of an object. Servers should convert recognized schemas to the latest
+              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+            type: string
+          kind:
+            description: 'Kind is a string value representing the REST resource this
+              object represents. Servers may infer this from the endpoint the client
+              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+            type: string
+          metadata:
+            type: object
+          spec:
+            description: CommunitySpec defines the desired state of Community.
+            properties:
+              communities:
+                items:
+                  properties:
+                    name:
+                      description: The name of the alias for the community.
+                      type: string
+                    value:
+                      description: The BGP community value corresponding to the given
+                        name.
+                      type: string
+                  type: object
+                type: array
+            type: object
+          status:
+            description: CommunityStatus defines the observed state of Community.
+            type: object
+        type: object
+    served: true
+    storage: true
+    subresources:
+      status: {}
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+  annotations:
+    controller-gen.kubebuilder.io/version: v0.11.1
+  creationTimestamp: null
+  name: ipaddresspools.metallb.io
+spec:
+  group: metallb.io
+  names:
+    kind: IPAddressPool
+    listKind: IPAddressPoolList
+    plural: ipaddresspools
+    singular: ipaddresspool
+  scope: Namespaced
+  versions:
+  - additionalPrinterColumns:
+    - jsonPath: .spec.autoAssign
+      name: Auto Assign
+      type: boolean
+    - jsonPath: .spec.avoidBuggyIPs
+      name: Avoid Buggy IPs
+      type: boolean
+    - jsonPath: .spec.addresses
+      name: Addresses
+      type: string
+    name: v1beta1
+    schema:
+      openAPIV3Schema:
+        description: IPAddressPool represents a pool of IP addresses that can be allocated
+          to LoadBalancer services.
+        properties:
+          apiVersion:
+            description: 'APIVersion defines the versioned schema of this representation
+              of an object. Servers should convert recognized schemas to the latest
+              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+            type: string
+          kind:
+            description: 'Kind is a string value representing the REST resource this
+              object represents. Servers may infer this from the endpoint the client
+              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+            type: string
+          metadata:
+            type: object
+          spec:
+            description: IPAddressPoolSpec defines the desired state of IPAddressPool.
+            properties:
+              addresses:
+                description: A list of IP address ranges over which MetalLB has authority.
+                  You can list multiple ranges in a single pool, they will all share
+                  the same settings. Each range can be either a CIDR prefix, or an
+                  explicit start-end range of IPs.
+                items:
+                  type: string
+                type: array
+              autoAssign:
+                default: true
+                description: AutoAssign flag used to prevent MetallB from automatic
+                  allocation for a pool.
+                type: boolean
+              avoidBuggyIPs:
+                default: false
+                description: AvoidBuggyIPs prevents addresses ending with .0 and .255
+                  to be used by a pool.
+                type: boolean
+              serviceAllocation:
+                description: AllocateTo makes ip pool allocation to specific namespace
+                  and/or service. The controller will use the pool with lowest value
+                  of priority in case of multiple matches. A pool with no priority
+                  set will be used only if the pools with priority can't be used.
+                  If multiple matching IPAddressPools are available it will check
+                  for the availability of IPs sorting the matching IPAddressPools
+                  by priority, starting from the highest to the lowest. If multiple
+                  IPAddressPools have the same priority, choice will be random.
+                properties:
+                  namespaceSelectors:
+                    description: NamespaceSelectors list of label selectors to select
+                      namespace(s) for ip pool, an alternative to using namespace
+                      list.
+                    items:
+                      description: A label selector is a label query over a set of
+                        resources. The result of matchLabels and matchExpressions
+                        are ANDed. An empty label selector matches all objects. A
+                        null label selector matches no objects.
+                      properties:
+                        matchExpressions:
+                          description: matchExpressions is a list of label selector
+                            requirements. The requirements are ANDed.
+                          items:
+                            description: A label selector requirement is a selector
+                              that contains values, a key, and an operator that relates
+                              the key and values.
+                            properties:
+                              key:
+                                description: key is the label key that the selector
+                                  applies to.
+                                type: string
+                              operator:
+                                description: operator represents a key's relationship
+                                  to a set of values. Valid operators are In, NotIn,
+                                  Exists and DoesNotExist.
+                                type: string
+                              values:
+                                description: values is an array of string values.
+                                  If the operator is In or NotIn, the values array
+                                  must be non-empty. If the operator is Exists or
+                                  DoesNotExist, the values array must be empty. This
+                                  array is replaced during a strategic merge patch.
+                                items:
+                                  type: string
+                                type: array
+                            required:
+                            - key
+                            - operator
+                            type: object
+                          type: array
+                        matchLabels:
+                          additionalProperties:
+                            type: string
+                          description: matchLabels is a map of {key,value} pairs.
+                            A single {key,value} in the matchLabels map is equivalent
+                            to an element of matchExpressions, whose key field is
+                            "key", the operator is "In", and the values array contains
+                            only "value". The requirements are ANDed.
+                          type: object
+                      type: object
+                      x-kubernetes-map-type: atomic
+                    type: array
+                  namespaces:
+                    description: Namespaces list of namespace(s) on which ip pool
+                      can be attached.
+                    items:
+                      type: string
+                    type: array
+                  priority:
+                    description: Priority priority given for ip pool while ip allocation
+                      on a service.
+                    type: integer
+                  serviceSelectors:
+                    description: ServiceSelectors list of label selector to select
+                      service(s) for which ip pool can be used for ip allocation.
+                    items:
+                      description: A label selector is a label query over a set of
+                        resources. The result of matchLabels and matchExpressions
+                        are ANDed. An empty label selector matches all objects. A
+                        null label selector matches no objects.
+                      properties:
+                        matchExpressions:
+                          description: matchExpressions is a list of label selector
+                            requirements. The requirements are ANDed.
+                          items:
+                            description: A label selector requirement is a selector
+                              that contains values, a key, and an operator that relates
+                              the key and values.
+                            properties:
+                              key:
+                                description: key is the label key that the selector
+                                  applies to.
+                                type: string
+                              operator:
+                                description: operator represents a key's relationship
+                                  to a set of values. Valid operators are In, NotIn,
+                                  Exists and DoesNotExist.
+                                type: string
+                              values:
+                                description: values is an array of string values.
+                                  If the operator is In or NotIn, the values array
+                                  must be non-empty. If the operator is Exists or
+                                  DoesNotExist, the values array must be empty. This
+                                  array is replaced during a strategic merge patch.
+                                items:
+                                  type: string
+                                type: array
+                            required:
+                            - key
+                            - operator
+                            type: object
+                          type: array
+                        matchLabels:
+                          additionalProperties:
+                            type: string
+                          description: matchLabels is a map of {key,value} pairs.
+                            A single {key,value} in the matchLabels map is equivalent
+                            to an element of matchExpressions, whose key field is
+                            "key", the operator is "In", and the values array contains
+                            only "value". The requirements are ANDed.
+                          type: object
+                      type: object
+                      x-kubernetes-map-type: atomic
+                    type: array
+                type: object
+            required:
+            - addresses
+            type: object
+          status:
+            description: IPAddressPoolStatus defines the observed state of IPAddressPool.
+            type: object
+        required:
+        - spec
+        type: object
+    served: true
+    storage: true
+    subresources:
+      status: {}
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+  annotations:
+    controller-gen.kubebuilder.io/version: v0.11.1
+  creationTimestamp: null
+  name: l2advertisements.metallb.io
+spec:
+  group: metallb.io
+  names:
+    kind: L2Advertisement
+    listKind: L2AdvertisementList
+    plural: l2advertisements
+    singular: l2advertisement
+  scope: Namespaced
+  versions:
+  - additionalPrinterColumns:
+    - jsonPath: .spec.ipAddressPools
+      name: IPAddressPools
+      type: string
+    - jsonPath: .spec.ipAddressPoolSelectors
+      name: IPAddressPool Selectors
+      type: string
+    - jsonPath: .spec.interfaces
+      name: Interfaces
+      type: string
+    - jsonPath: .spec.nodeSelectors
+      name: Node Selectors
+      priority: 10
+      type: string
+    name: v1beta1
+    schema:
+      openAPIV3Schema:
+        description: L2Advertisement allows to advertise the LoadBalancer IPs provided
+          by the selected pools via L2.
+        properties:
+          apiVersion:
+            description: 'APIVersion defines the versioned schema of this representation
+              of an object. Servers should convert recognized schemas to the latest
+              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+            type: string
+          kind:
+            description: 'Kind is a string value representing the REST resource this
+              object represents. Servers may infer this from the endpoint the client
+              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+            type: string
+          metadata:
+            type: object
+          spec:
+            description: L2AdvertisementSpec defines the desired state of L2Advertisement.
+            properties:
+              interfaces:
+                description: A list of interfaces to announce from. The LB IP will
+                  be announced only from these interfaces. If the field is not set,
+                  we advertise from all the interfaces on the host.
+                items:
+                  type: string
+                type: array
+              ipAddressPoolSelectors:
+                description: A selector for the IPAddressPools which would get advertised
+                  via this advertisement. If no IPAddressPool is selected by this
+                  or by the list, the advertisement is applied to all the IPAddressPools.
+                items:
+                  description: A label selector is a label query over a set of resources.
+                    The result of matchLabels and matchExpressions are ANDed. An empty
+                    label selector matches all objects. A null label selector matches
+                    no objects.
+                  properties:
+                    matchExpressions:
+                      description: matchExpressions is a list of label selector requirements.
+                        The requirements are ANDed.
+                      items:
+                        description: A label selector requirement is a selector that
+                          contains values, a key, and an operator that relates the
+                          key and values.
+                        properties:
+                          key:
+                            description: key is the label key that the selector applies
+                              to.
+                            type: string
+                          operator:
+                            description: operator represents a key's relationship
+                              to a set of values. Valid operators are In, NotIn, Exists
+                              and DoesNotExist.
+                            type: string
+                          values:
+                            description: values is an array of string values. If the
+                              operator is In or NotIn, the values array must be non-empty.
+                              If the operator is Exists or DoesNotExist, the values
+                              array must be empty. This array is replaced during a
+                              strategic merge patch.
+                            items:
+                              type: string
+                            type: array
+                        required:
+                        - key
+                        - operator
+                        type: object
+                      type: array
+                    matchLabels:
+                      additionalProperties:
+                        type: string
+                      description: matchLabels is a map of {key,value} pairs. A single
+                        {key,value} in the matchLabels map is equivalent to an element
+                        of matchExpressions, whose key field is "key", the operator
+                        is "In", and the values array contains only "value". The requirements
+                        are ANDed.
+                      type: object
+                  type: object
+                  x-kubernetes-map-type: atomic
+                type: array
+              ipAddressPools:
+                description: The list of IPAddressPools to advertise via this advertisement,
+                  selected by name.
+                items:
+                  type: string
+                type: array
+              nodeSelectors:
+                description: NodeSelectors allows to limit the nodes to announce as
+                  next hops for the LoadBalancer IP. When empty, all the nodes having  are
+                  announced as next hops.
+                items:
+                  description: A label selector is a label query over a set of resources.
+                    The result of matchLabels and matchExpressions are ANDed. An empty
+                    label selector matches all objects. A null label selector matches
+                    no objects.
+                  properties:
+                    matchExpressions:
+                      description: matchExpressions is a list of label selector requirements.
+                        The requirements are ANDed.
+                      items:
+                        description: A label selector requirement is a selector that
+                          contains values, a key, and an operator that relates the
+                          key and values.
+                        properties:
+                          key:
+                            description: key is the label key that the selector applies
+                              to.
+                            type: string
+                          operator:
+                            description: operator represents a key's relationship
+                              to a set of values. Valid operators are In, NotIn, Exists
+                              and DoesNotExist.
+                            type: string
+                          values:
+                            description: values is an array of string values. If the
+                              operator is In or NotIn, the values array must be non-empty.
+                              If the operator is Exists or DoesNotExist, the values
+                              array must be empty. This array is replaced during a
+                              strategic merge patch.
+                            items:
+                              type: string
+                            type: array
+                        required:
+                        - key
+                        - operator
+                        type: object
+                      type: array
+                    matchLabels:
+                      additionalProperties:
+                        type: string
+                      description: matchLabels is a map of {key,value} pairs. A single
+                        {key,value} in the matchLabels map is equivalent to an element
+                        of matchExpressions, whose key field is "key", the operator
+                        is "In", and the values array contains only "value". The requirements
+                        are ANDed.
+                      type: object
+                  type: object
+                  x-kubernetes-map-type: atomic
+                type: array
+            type: object
+          status:
+            description: L2AdvertisementStatus defines the observed state of L2Advertisement.
+            type: object
+        type: object
+    served: true
+    storage: true
+    subresources:
+      status: {}
+---
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+  labels:
+    app: metallb
+  name: controller
+  namespace: metallb-system
+---
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+  labels:
+    app: metallb
+  name: speaker
+  namespace: metallb-system
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: Role
+metadata:
+  labels:
+    app: metallb
+  name: controller
+  namespace: metallb-system
+rules:
+- apiGroups:
+  - ""
+  resources:
+  - secrets
+  verbs:
+  - create
+  - delete
+  - get
+  - list
+  - patch
+  - update
+  - watch
+- apiGroups:
+  - ""
+  resourceNames:
+  - memberlist
+  resources:
+  - secrets
+  verbs:
+  - list
+- apiGroups:
+  - apps
+  resourceNames:
+  - controller
+  resources:
+  - deployments
+  verbs:
+  - get
+- apiGroups:
+  - metallb.io
+  resources:
+  - bgppeers
+  verbs:
+  - get
+  - list
+- apiGroups:
+  - metallb.io
+  resources:
+  - addresspools
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - metallb.io
+  resources:
+  - bfdprofiles
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - metallb.io
+  resources:
+  - ipaddresspools
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - metallb.io
+  resources:
+  - bgpadvertisements
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - metallb.io
+  resources:
+  - l2advertisements
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - metallb.io
+  resources:
+  - communities
+  verbs:
+  - get
+  - list
+  - watch
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: Role
+metadata:
+  labels:
+    app: metallb
+  name: pod-lister
+  namespace: metallb-system
+rules:
+- apiGroups:
+  - ""
+  resources:
+  - pods
+  verbs:
+  - list
+- apiGroups:
+  - ""
+  resources:
+  - secrets
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - metallb.io
+  resources:
+  - addresspools
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - metallb.io
+  resources:
+  - bfdprofiles
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - metallb.io
+  resources:
+  - bgppeers
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - metallb.io
+  resources:
+  - l2advertisements
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - metallb.io
+  resources:
+  - bgpadvertisements
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - metallb.io
+  resources:
+  - ipaddresspools
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - metallb.io
+  resources:
+  - communities
+  verbs:
+  - get
+  - list
+  - watch
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+  labels:
+    app: metallb
+  name: metallb-system:controller
+rules:
+- apiGroups:
+  - ""
+  resources:
+  - services
+  - namespaces
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - ""
+  resources:
+  - services/status
+  verbs:
+  - update
+- apiGroups:
+  - ""
+  resources:
+  - events
+  verbs:
+  - create
+  - patch
+- apiGroups:
+  - policy
+  resourceNames:
+  - controller
+  resources:
+  - podsecuritypolicies
+  verbs:
+  - use
+- apiGroups:
+  - admissionregistration.k8s.io
+  resourceNames:
+  - metallb-webhook-configuration
+  resources:
+  - validatingwebhookconfigurations
+  - mutatingwebhookconfigurations
+  verbs:
+  - create
+  - delete
+  - get
+  - list
+  - patch
+  - update
+  - watch
+- apiGroups:
+  - admissionregistration.k8s.io
+  resources:
+  - validatingwebhookconfigurations
+  - mutatingwebhookconfigurations
+  verbs:
+  - list
+  - watch
+- apiGroups:
+  - apiextensions.k8s.io
+  resourceNames:
+  - addresspools.metallb.io
+  - bfdprofiles.metallb.io
+  - bgpadvertisements.metallb.io
+  - bgppeers.metallb.io
+  - ipaddresspools.metallb.io
+  - l2advertisements.metallb.io
+  - communities.metallb.io
+  resources:
+  - customresourcedefinitions
+  verbs:
+  - create
+  - delete
+  - get
+  - list
+  - patch
+  - update
+  - watch
+- apiGroups:
+  - apiextensions.k8s.io
+  resources:
+  - customresourcedefinitions
+  verbs:
+  - list
+  - watch
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+  labels:
+    app: metallb
+  name: metallb-system:speaker
+rules:
+- apiGroups:
+  - ""
+  resources:
+  - services
+  - endpoints
+  - nodes
+  - namespaces
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - discovery.k8s.io
+  resources:
+  - endpointslices
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - ""
+  resources:
+  - events
+  verbs:
+  - create
+  - patch
+- apiGroups:
+  - policy
+  resourceNames:
+  - speaker
+  resources:
+  - podsecuritypolicies
+  verbs:
+  - use
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+  labels:
+    app: metallb
+  name: controller
+  namespace: metallb-system
+roleRef:
+  apiGroup: rbac.authorization.k8s.io
+  kind: Role
+  name: controller
+subjects:
+- kind: ServiceAccount
+  name: controller
+  namespace: metallb-system
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+  labels:
+    app: metallb
+  name: pod-lister
+  namespace: metallb-system
+roleRef:
+  apiGroup: rbac.authorization.k8s.io
+  kind: Role
+  name: pod-lister
+subjects:
+- kind: ServiceAccount
+  name: speaker
+  namespace: metallb-system
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+  labels:
+    app: metallb
+  name: metallb-system:controller
+roleRef:
+  apiGroup: rbac.authorization.k8s.io
+  kind: ClusterRole
+  name: metallb-system:controller
+subjects:
+- kind: ServiceAccount
+  name: controller
+  namespace: metallb-system
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+  labels:
+    app: metallb
+  name: metallb-system:speaker
+roleRef:
+  apiGroup: rbac.authorization.k8s.io
+  kind: ClusterRole
+  name: metallb-system:speaker
+subjects:
+- kind: ServiceAccount
+  name: speaker
+  namespace: metallb-system
+---
+apiVersion: v1
+kind: Secret
+metadata:
+  name: webhook-server-cert
+  namespace: metallb-system
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: webhook-service
+  namespace: metallb-system
+spec:
+  ports:
+  - port: 443
+    targetPort: 9443
+  selector:
+    component: controller
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  labels:
+    app: metallb
+    component: controller
+  name: controller
+  namespace: metallb-system
+spec:
+  revisionHistoryLimit: 3
+  selector:
+    matchLabels:
+      app: metallb
+      component: controller
+  template:
+    metadata:
+      annotations:
+        prometheus.io/port: "7472"
+        prometheus.io/scrape: "true"
+      labels:
+        app: metallb
+        component: controller
+    spec:
+      containers:
+      - args:
+        - --port=7472
+        - --log-level=info
+        env:
+        - name: METALLB_ML_SECRET_NAME
+          value: memberlist
+        - name: METALLB_DEPLOYMENT
+          value: controller
+        image: quay.io/metallb/controller:v0.13.9
+        livenessProbe:
+          failureThreshold: 3
+          httpGet:
+            path: /metrics
+            port: monitoring
+          initialDelaySeconds: 10
+          periodSeconds: 10
+          successThreshold: 1
+          timeoutSeconds: 1
+        name: controller
+        ports:
+        - containerPort: 7472
+          name: monitoring
+        - containerPort: 9443
+          name: webhook-server
+          protocol: TCP
+        readinessProbe:
+          failureThreshold: 3
+          httpGet:
+            path: /metrics
+            port: monitoring
+          initialDelaySeconds: 10
+          periodSeconds: 10
+          successThreshold: 1
+          timeoutSeconds: 1
+        securityContext:
+          allowPrivilegeEscalation: false
+          capabilities:
+            drop:
+            - all
+          readOnlyRootFilesystem: true
+        volumeMounts:
+        - mountPath: /tmp/k8s-webhook-server/serving-certs
+          name: cert
+          readOnly: true
+      nodeSelector:
+        kubernetes.io/os: linux
+      securityContext:
+        fsGroup: 65534
+        runAsNonRoot: true
+        runAsUser: 65534
+      serviceAccountName: controller
+      terminationGracePeriodSeconds: 0
+      volumes:
+      - name: cert
+        secret:
+          defaultMode: 420
+          secretName: webhook-server-cert
+---
+apiVersion: apps/v1
+kind: DaemonSet
+metadata:
+  labels:
+    app: metallb
+    component: speaker
+  name: speaker
+  namespace: metallb-system
+spec:
+  selector:
+    matchLabels:
+      app: metallb
+      component: speaker
+  template:
+    metadata:
+      annotations:
+        prometheus.io/port: "7472"
+        prometheus.io/scrape: "true"
+      labels:
+        app: metallb
+        component: speaker
+    spec:
+      containers:
+      - args:
+        - --port=7472
+        - --log-level=info
+        env:
+        - name: METALLB_NODE_NAME
+          valueFrom:
+            fieldRef:
+              fieldPath: spec.nodeName
+        - name: METALLB_HOST
+          valueFrom:
+            fieldRef:
+              fieldPath: status.hostIP
+        - name: METALLB_ML_BIND_ADDR
+          valueFrom:
+            fieldRef:
+              fieldPath: status.podIP
+        - name: METALLB_ML_LABELS
+          value: app=metallb,component=speaker
+        - name: METALLB_ML_SECRET_KEY_PATH
+          value: /etc/ml_secret_key
+        image: quay.io/metallb/speaker:v0.13.9
+        livenessProbe:
+          failureThreshold: 3
+          httpGet:
+            path: /metrics
+            port: monitoring
+          initialDelaySeconds: 10
+          periodSeconds: 10
+          successThreshold: 1
+          timeoutSeconds: 1
+        name: speaker
+        ports:
+        - containerPort: 7472
+          name: monitoring
+        - containerPort: 7946
+          name: memberlist-tcp
+        - containerPort: 7946
+          name: memberlist-udp
+          protocol: UDP
+        readinessProbe:
+          failureThreshold: 3
+          httpGet:
+            path: /metrics
+            port: monitoring
+          initialDelaySeconds: 10
+          periodSeconds: 10
+          successThreshold: 1
+          timeoutSeconds: 1
+        securityContext:
+          allowPrivilegeEscalation: false
+          capabilities:
+            add:
+            - NET_RAW
+            drop:
+            - ALL
+          readOnlyRootFilesystem: true
+        volumeMounts:
+        - mountPath: /etc/ml_secret_key
+          name: memberlist
+          readOnly: true
+      hostNetwork: true
+      nodeSelector:
+        kubernetes.io/os: linux
+      serviceAccountName: speaker
+      terminationGracePeriodSeconds: 2
+      tolerations:
+      - effect: NoSchedule
+        key: node-role.kubernetes.io/master
+        operator: Exists
+      - effect: NoSchedule
+        key: node-role.kubernetes.io/control-plane
+        operator: Exists
+      volumes:
+      - name: memberlist
+        secret:
+          defaultMode: 420
+          secretName: memberlist
+---
+apiVersion: admissionregistration.k8s.io/v1
+kind: ValidatingWebhookConfiguration
+metadata:
+  creationTimestamp: null
+  name: metallb-webhook-configuration
+webhooks:
+- admissionReviewVersions:
+  - v1
+  clientConfig:
+    service:
+      name: webhook-service
+      namespace: metallb-system
+      path: /validate-metallb-io-v1beta2-bgppeer
+  failurePolicy: Fail
+  name: bgppeersvalidationwebhook.metallb.io
+  rules:
+  - apiGroups:
+    - metallb.io
+    apiVersions:
+    - v1beta2
+    operations:
+    - CREATE
+    - UPDATE
+    resources:
+    - bgppeers
+  sideEffects: None
+- admissionReviewVersions:
+  - v1
+  clientConfig:
+    service:
+      name: webhook-service
+      namespace: metallb-system
+      path: /validate-metallb-io-v1beta1-addresspool
+  failurePolicy: Fail
+  name: addresspoolvalidationwebhook.metallb.io
+  rules:
+  - apiGroups:
+    - metallb.io
+    apiVersions:
+    - v1beta1
+    operations:
+    - CREATE
+    - UPDATE
+    resources:
+    - addresspools
+  sideEffects: None
+- admissionReviewVersions:
+  - v1
+  clientConfig:
+    service:
+      name: webhook-service
+      namespace: metallb-system
+      path: /validate-metallb-io-v1beta1-bfdprofile
+  failurePolicy: Fail
+  name: bfdprofilevalidationwebhook.metallb.io
+  rules:
+  - apiGroups:
+    - metallb.io
+    apiVersions:
+    - v1beta1
+    operations:
+    - CREATE
+    - DELETE
+    resources:
+    - bfdprofiles
+  sideEffects: None
+- admissionReviewVersions:
+  - v1
+  clientConfig:
+    service:
+      name: webhook-service
+      namespace: metallb-system
+      path: /validate-metallb-io-v1beta1-bgpadvertisement
+  failurePolicy: Fail
+  name: bgpadvertisementvalidationwebhook.metallb.io
+  rules:
+  - apiGroups:
+    - metallb.io
+    apiVersions:
+    - v1beta1
+    operations:
+    - CREATE
+    - UPDATE
+    resources:
+    - bgpadvertisements
+  sideEffects: None
+- admissionReviewVersions:
+  - v1
+  clientConfig:
+    service:
+      name: webhook-service
+      namespace: metallb-system
+      path: /validate-metallb-io-v1beta1-community
+  failurePolicy: Fail
+  name: communityvalidationwebhook.metallb.io
+  rules:
+  - apiGroups:
+    - metallb.io
+    apiVersions:
+    - v1beta1
+    operations:
+    - CREATE
+    - UPDATE
+    resources:
+    - communities
+  sideEffects: None
+- admissionReviewVersions:
+  - v1
+  clientConfig:
+    service:
+      name: webhook-service
+      namespace: metallb-system
+      path: /validate-metallb-io-v1beta1-ipaddresspool
+  failurePolicy: Fail
+  name: ipaddresspoolvalidationwebhook.metallb.io
+  rules:
+  - apiGroups:
+    - metallb.io
+    apiVersions:
+    - v1beta1
+    operations:
+    - CREATE
+    - UPDATE
+    resources:
+    - ipaddresspools
+  sideEffects: None
+- admissionReviewVersions:
+  - v1
+  clientConfig:
+    service:
+      name: webhook-service
+      namespace: metallb-system
+      path: /validate-metallb-io-v1beta1-l2advertisement
+  failurePolicy: Fail
+  name: l2advertisementvalidationwebhook.metallb.io
+  rules:
+  - apiGroups:
+    - metallb.io
+    apiVersions:
+    - v1beta1
+    operations:
+    - CREATE
+    - UPDATE
+    resources:
+    - l2advertisements
+  sideEffects: None
+
+# apiVersion: apiextensions.k8s.io/v1
+# kind: CustomResourceDefinition
+# metadata:
+#   annotations:
+#     controller-gen.kubebuilder.io/version: v0.11.1
+#   name: addresspools.metallb.io
+# spec:
+#   conversion:
+#     strategy: Webhook
+#     webhook:
+#       clientConfig:
+#         caBundle: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tDQpNSUlGWlRDQ0EwMmdBd0lCQWdJVU5GRW1XcTM3MVpKdGkrMmlSQzk1WmpBV1MxZ3dEUVlKS29aSWh2Y05BUUVMDQpCUUF3UWpFTE1Ba0dBMVVFQmhNQ1dGZ3hGVEFUQmdOVkJBY01ERVJsWm1GMWJIUWdRMmwwZVRFY01Cb0dBMVVFDQpDZ3dUUkdWbVlYVnNkQ0JEYjIxd1lXNTVJRXgwWkRBZUZ3MHlNakEzTVRrd09UTXlNek5hRncweU1qQTRNVGd3DQpPVE15TXpOYU1FSXhDekFKQmdOVkJBWVRBbGhZTVJVd0V3WURWUVFIREF4RVpXWmhkV3gwSUVOcGRIa3hIREFhDQpCZ05WQkFvTUUwUmxabUYxYkhRZ1EyOXRjR0Z1ZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElDDQpEd0F3Z2dJS0FvSUNBUUNxVFpxMWZRcC9vYkdlenhES0o3OVB3Ny94azJwellualNzMlkzb1ZYSm5sRmM4YjVlDQpma2ZZQnY2bndscW1keW5PL2phWFBaQmRQSS82aFdOUDBkdVhadEtWU0NCUUpyZzEyOGNXb3F0MGNTN3pLb1VpDQpvcU1tQ0QvRXVBeFFNZjhRZDF2c1gvVllkZ0poVTZBRXJLZEpIaXpFOUJtUkNkTDBGMW1OVW55Rk82UnRtWFZUDQpidkxsTDVYeTc2R0FaQVBLOFB4aVlDa0NtbDdxN0VnTWNiOXlLWldCYmlxQ3VkTXE5TGJLNmdKNzF6YkZnSXV4DQo1L1pXK2JraTB2RlplWk9ZODUxb1psckFUNzJvMDI4NHNTWW9uN0pHZVZkY3NoUnh5R1VpSFpSTzdkaXZVTDVTDQpmM2JmSDFYbWY1ZDQzT0NWTWRuUUV2NWVaOG8zeWVLa3ZrbkZQUGVJMU9BbjdGbDlFRVNNR2dhOGFaSG1URSttDQpsLzlMSmdDYjBnQmtPT0M0WnV4bWh2aERKV1EzWnJCS3pMQlNUZXN0NWlLNVlwcXRWVVk2THRyRW9FelVTK1lsDQpwWndXY2VQWHlHeHM5ZURsR3lNVmQraW15Y3NTU1UvVno2Mmx6MnZCS21NTXBkYldDQWhud0RsRTVqU2dyMjRRDQp0eGNXLys2N3d5KzhuQlI3UXdqVTFITndVRjBzeERWdEwrZ1NHVERnSEVZSlhZelYvT05zMy94TkpoVFNPSkxNDQpoeXNVdyttaGdackdhbUdXcHVIVU1DUitvTWJzMTc1UkcrQjJnUFFHVytPTjJnUTRyOXN2b0ZBNHBBQm8xd1dLDQpRYjRhY3pmeVVscElBOVFoSmFsZEY3S3dPSHVlV3gwRUNrNXg0T2tvVDBvWVp0dzFiR0JjRGtaSmF3SURBUUFCDQpvMU13VVRBZEJnTlZIUTRFRmdRVW90UlNIUm9IWTEyRFZ4R0NCdEhpb1g2ZmVFQXdId1lEVlIwakJCZ3dGb0FVDQpvdFJTSFJvSFkxMkRWeEdDQnRIaW9YNmZlRUF3RHdZRFZSMFRBUUgvQkFVd0F3RUIvekFOQmdrcWhraUc5dzBCDQpBUXNGQUFPQ0FnRUFSbkpsWWRjMTFHd0VxWnh6RDF2R3BDR2pDN2VWTlQ3aVY1d3IybXlybHdPYi9aUWFEa0xYDQpvVStaOVVXT1VlSXJTdzUydDdmQUpvVVAwSm5iYkMveVIrU1lqUGhvUXNiVHduOTc2ZldBWTduM3FMOXhCd1Y0DQphek41OXNjeUp0dlhMeUtOL2N5ak1ReDRLajBIMFg0bWJ6bzVZNUtzWWtYVU0vOEFPdWZMcEd0S1NGVGgrSEFDDQpab1Q5YnZHS25adnNHd0tYZFF0Wnh0akhaUjVqK3U3ZGtQOTJBT051RFNabS8rWVV4b2tBK09JbzdSR3BwSHNXDQo1ZTdNY0FTVXRtb1FORXd6dVFoVkJaRWQ1OGtKYjUrV0VWbGNzanlXNnRTbzErZ25tTWNqR1BsMWgxR2hVbjV4DQpFY0lWRnBIWXM5YWo1NmpBSjk1MVQvZjhMaWxmTlVnanBLQ0c1bnl0SUt3emxhOHNtdGlPdm1UNEpYbXBwSkI2DQo4bmdHRVluVjUrUTYwWFJ2OEhSSGp1VG9CRHVhaERrVDA2R1JGODU1d09FR2V4bkZpMXZYWUxLVllWb1V2MXRKDQo4dVdUR1pwNllDSVJldlBqbzg5ZytWTlJSaVFYUThJd0dybXE5c0RoVTlqTjA0SjdVL1RvRDFpNHE3VnlsRUc5DQorV1VGNkNLaEdBeTJIaEhwVncyTGFoOS9lUzdZMUZ1YURrWmhPZG1laG1BOCtqdHNZamJadnR5Mm1SWlF0UUZzDQpUU1VUUjREbUR2bVVPRVRmeStpRHdzK2RkWXVNTnJGeVVYV2dkMnpBQU4ydVl1UHFGY2pRcFNPODFzVTJTU3R3DQoxVzAyeUtYOGJEYmZFdjBzbUh3UzliQnFlSGo5NEM1Mjg0YXpsdTBmaUdpTm1OUEM4ckJLRmhBPQ0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQ==
+#         service:
+#           name: webhook-service
+#           namespace: {{ .Release.Namespace }}
+#           path: /convert
+#       conversionReviewVersions:
+#       - v1alpha1
+#       - v1beta1
+#   group: metallb.io
+#   names:
+#     kind: AddressPool
+#     listKind: AddressPoolList
+#     plural: addresspools
+#     singular: addresspool
+#   scope: Namespaced
+#   versions:
+#   - deprecated: true
+#     deprecationWarning: metallb.io v1alpha1 AddressPool is deprecated
+#     name: v1alpha1
+#     schema:
+#       openAPIV3Schema:
+#         description: AddressPool is the Schema for the addresspools API.
+#         properties:
+#           apiVersion:
+#             description: 'APIVersion defines the versioned schema of this representation
+#               of an object. Servers should convert recognized schemas to the latest
+#               internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+#             type: string
+#           kind:
+#             description: 'Kind is a string value representing the REST resource this
+#               object represents. Servers may infer this from the endpoint the client
+#               submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+#             type: string
+#           metadata:
+#             type: object
+#           spec:
+#             description: AddressPoolSpec defines the desired state of AddressPool.
+#             properties:
+#               addresses:
+#                 description: A list of IP address ranges over which MetalLB has authority.
+#                   You can list multiple ranges in a single pool, they will all share
+#                   the same settings. Each range can be either a CIDR prefix, or an
+#                   explicit start-end range of IPs.
+#                 items:
+#                   type: string
+#                 type: array
+#               autoAssign:
+#                 default: true
+#                 description: AutoAssign flag used to prevent MetallB from automatic
+#                   allocation for a pool.
+#                 type: boolean
+#               bgpAdvertisements:
+#                 description: When an IP is allocated from this pool, how should it
+#                   be translated into BGP announcements?
+#                 items:
+#                   properties:
+#                     aggregationLength:
+#                       default: 32
+#                       description: The aggregation-length advertisement option lets
+#                         you “roll up” the /32s into a larger prefix.
+#                       format: int32
+#                       minimum: 1
+#                       type: integer
+#                     aggregationLengthV6:
+#                       default: 128
+#                       description: Optional, defaults to 128 (i.e. no aggregation)
+#                         if not specified.
+#                       format: int32
+#                       type: integer
+#                     communities:
+#                       description: BGP communities
+#                       items:
+#                         type: string
+#                       type: array
+#                     localPref:
+#                       description: BGP LOCAL_PREF attribute which is used by BGP best
+#                         path algorithm, Path with higher localpref is preferred over
+#                         one with lower localpref.
+#                       format: int32
+#                       type: integer
+#                   type: object
+#                 type: array
+#               protocol:
+#                 description: Protocol can be used to select how the announcement is
+#                   done.
+#                 enum:
+#                 - layer2
+#                 - bgp
+#                 type: string
+#             required:
+#             - addresses
+#             - protocol
+#             type: object
+#           status:
+#             description: AddressPoolStatus defines the observed state of AddressPool.
+#             type: object
+#         required:
+#         - spec
+#         type: object
+#     served: true
+#     storage: false
+#     subresources:
+#       status: {}
+#   - deprecated: true
+#     deprecationWarning: metallb.io v1beta1 AddressPool is deprecated, consider using
+#       IPAddressPool
+#     name: v1beta1
+#     schema:
+#       openAPIV3Schema:
+#         description: AddressPool represents a pool of IP addresses that can be allocated
+#           to LoadBalancer services. AddressPool is deprecated and being replaced by
+#           IPAddressPool.
+#         properties:
+#           apiVersion:
+#             description: 'APIVersion defines the versioned schema of this representation
+#               of an object. Servers should convert recognized schemas to the latest
+#               internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+#             type: string
+#           kind:
+#             description: 'Kind is a string value representing the REST resource this
+#               object represents. Servers may infer this from the endpoint the client
+#               submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+#             type: string
+#           metadata:
+#             type: object
+#           spec:
+#             description: AddressPoolSpec defines the desired state of AddressPool.
+#             properties:
+#               addresses:
+#                 description: A list of IP address ranges over which MetalLB has authority.
+#                   You can list multiple ranges in a single pool, they will all share
+#                   the same settings. Each range can be either a CIDR prefix, or an
+#                   explicit start-end range of IPs.
+#                 items:
+#                   type: string
+#                 type: array
+#               autoAssign:
+#                 default: true
+#                 description: AutoAssign flag used to prevent MetallB from automatic
+#                   allocation for a pool.
+#                 type: boolean
+#               bgpAdvertisements:
+#                 description: Drives how an IP allocated from this pool should translated
+#                   into BGP announcements.
+#                 items:
+#                   properties:
+#                     aggregationLength:
+#                       default: 32
+#                       description: The aggregation-length advertisement option lets
+#                         you “roll up” the /32s into a larger prefix.
+#                       format: int32
+#                       minimum: 1
+#                       type: integer
+#                     aggregationLengthV6:
+#                       default: 128
+#                       description: Optional, defaults to 128 (i.e. no aggregation)
+#                         if not specified.
+#                       format: int32
+#                       type: integer
+#                     communities:
+#                       description: BGP communities to be associated with the given
+#                         advertisement.
+#                       items:
+#                         type: string
+#                       type: array
+#                     localPref:
+#                       description: BGP LOCAL_PREF attribute which is used by BGP best
+#                         path algorithm, Path with higher localpref is preferred over
+#                         one with lower localpref.
+#                       format: int32
+#                       type: integer
+#                   type: object
+#                 type: array
+#               protocol:
+#                 description: Protocol can be used to select how the announcement is
+#                   done.
+#                 enum:
+#                 - layer2
+#                 - bgp
+#                 type: string
+#             required:
+#             - addresses
+#             - protocol
+#             type: object
+#           status:
+#             description: AddressPoolStatus defines the observed state of AddressPool.
+#             type: object
+#         required:
+#         - spec
+#         type: object
+#     served: true
+#     storage: true
+#     subresources:
+#       status: {}
+# ---
+# apiVersion: apiextensions.k8s.io/v1
+# kind: CustomResourceDefinition
+# metadata:
+#   annotations:
+#     controller-gen.kubebuilder.io/version: v0.11.1
+#   creationTimestamp: null
+#   name: bfdprofiles.metallb.io
+# spec:
+#   group: metallb.io
+#   names:
+#     kind: BFDProfile
+#     listKind: BFDProfileList
+#     plural: bfdprofiles
+#     singular: bfdprofile
+#   scope: Namespaced
+#   versions:
+#   - additionalPrinterColumns:
+#     - jsonPath: .spec.passiveMode
+#       name: Passive Mode
+#       type: boolean
+#     - jsonPath: .spec.transmitInterval
+#       name: Transmit Interval
+#       type: integer
+#     - jsonPath: .spec.receiveInterval
+#       name: Receive Interval
+#       type: integer
+#     - jsonPath: .spec.detectMultiplier
+#       name: Multiplier
+#       type: integer
+#     name: v1beta1
+#     schema:
+#       openAPIV3Schema:
+#         description: BFDProfile represents the settings of the bfd session that can
+#           be optionally associated with a BGP session.
+#         properties:
+#           apiVersion:
+#             description: 'APIVersion defines the versioned schema of this representation
+#               of an object. Servers should convert recognized schemas to the latest
+#               internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+#             type: string
+#           kind:
+#             description: 'Kind is a string value representing the REST resource this
+#               object represents. Servers may infer this from the endpoint the client
+#               submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+#             type: string
+#           metadata:
+#             type: object
+#           spec:
+#             description: BFDProfileSpec defines the desired state of BFDProfile.
+#             properties:
+#               detectMultiplier:
+#                 description: Configures the detection multiplier to determine packet
+#                   loss. The remote transmission interval will be multiplied by this
+#                   value to determine the connection loss detection timer.
+#                 format: int32
+#                 maximum: 255
+#                 minimum: 2
+#                 type: integer
+#               echoInterval:
+#                 description: Configures the minimal echo receive transmission interval
+#                   that this system is capable of handling in milliseconds. Defaults
+#                   to 50ms
+#                 format: int32
+#                 maximum: 60000
+#                 minimum: 10
+#                 type: integer
+#               echoMode:
+#                 description: Enables or disables the echo transmission mode. This
+#                   mode is disabled by default, and not supported on multi hops setups.
+#                 type: boolean
+#               minimumTtl:
+#                 description: 'For multi hop sessions only: configure the minimum expected
+#                   TTL for an incoming BFD control packet.'
+#                 format: int32
+#                 maximum: 254
+#                 minimum: 1
+#                 type: integer
+#               passiveMode:
+#                 description: 'Mark session as passive: a passive session will not
+#                   attempt to start the connection and will wait for control packets
+#                   from peer before it begins replying.'
+#                 type: boolean
+#               receiveInterval:
+#                 description: The minimum interval that this system is capable of receiving
+#                   control packets in milliseconds. Defaults to 300ms.
+#                 format: int32
+#                 maximum: 60000
+#                 minimum: 10
+#                 type: integer
+#               transmitInterval:
+#                 description: The minimum transmission interval (less jitter) that
+#                   this system wants to use to send BFD control packets in milliseconds.
+#                   Defaults to 300ms
+#                 format: int32
+#                 maximum: 60000
+#                 minimum: 10
+#                 type: integer
+#             type: object
+#           status:
+#             description: BFDProfileStatus defines the observed state of BFDProfile.
+#             type: object
+#         type: object
+#     served: true
+#     storage: true
+#     subresources:
+#       status: {}
+# ---
+# apiVersion: apiextensions.k8s.io/v1
+# kind: CustomResourceDefinition
+# metadata:
+#   annotations:
+#     controller-gen.kubebuilder.io/version: v0.11.1
+#   creationTimestamp: null
+#   name: bgpadvertisements.metallb.io
+# spec:
+#   group: metallb.io
+#   names:
+#     kind: BGPAdvertisement
+#     listKind: BGPAdvertisementList
+#     plural: bgpadvertisements
+#     singular: bgpadvertisement
+#   scope: Namespaced
+#   versions:
+#   - additionalPrinterColumns:
+#     - jsonPath: .spec.ipAddressPools
+#       name: IPAddressPools
+#       type: string
+#     - jsonPath: .spec.ipAddressPoolSelectors
+#       name: IPAddressPool Selectors
+#       type: string
+#     - jsonPath: .spec.peers
+#       name: Peers
+#       type: string
+#     - jsonPath: .spec.nodeSelectors
+#       name: Node Selectors
+#       priority: 10
+#       type: string
+#     name: v1beta1
+#     schema:
+#       openAPIV3Schema:
+#         description: BGPAdvertisement allows to advertise the IPs coming from the
+#           selected IPAddressPools via BGP, setting the parameters of the BGP Advertisement.
+#         properties:
+#           apiVersion:
+#             description: 'APIVersion defines the versioned schema of this representation
+#               of an object. Servers should convert recognized schemas to the latest
+#               internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+#             type: string
+#           kind:
+#             description: 'Kind is a string value representing the REST resource this
+#               object represents. Servers may infer this from the endpoint the client
+#               submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+#             type: string
+#           metadata:
+#             type: object
+#           spec:
+#             description: BGPAdvertisementSpec defines the desired state of BGPAdvertisement.
+#             properties:
+#               aggregationLength:
+#                 default: 32
+#                 description: The aggregation-length advertisement option lets you
+#                   “roll up” the /32s into a larger prefix. Defaults to 32. Works for
+#                   IPv4 addresses.
+#                 format: int32
+#                 minimum: 1
+#                 type: integer
+#               aggregationLengthV6:
+#                 default: 128
+#                 description: The aggregation-length advertisement option lets you
+#                   “roll up” the /128s into a larger prefix. Defaults to 128. Works
+#                   for IPv6 addresses.
+#                 format: int32
+#                 type: integer
+#               communities:
+#                 description: The BGP communities to be associated with the announcement.
+#                   Each item can be a community of the form 1234:1234 or the name of
+#                   an alias defined in the Community CRD.
+#                 items:
+#                   type: string
+#                 type: array
+#               ipAddressPoolSelectors:
+#                 description: A selector for the IPAddressPools which would get advertised
+#                   via this advertisement. If no IPAddressPool is selected by this
+#                   or by the list, the advertisement is applied to all the IPAddressPools.
+#                 items:
+#                   description: A label selector is a label query over a set of resources.
+#                     The result of matchLabels and matchExpressions are ANDed. An empty
+#                     label selector matches all objects. A null label selector matches
+#                     no objects.
+#                   properties:
+#                     matchExpressions:
+#                       description: matchExpressions is a list of label selector requirements.
+#                         The requirements are ANDed.
+#                       items:
+#                         description: A label selector requirement is a selector that
+#                           contains values, a key, and an operator that relates the
+#                           key and values.
+#                         properties:
+#                           key:
+#                             description: key is the label key that the selector applies
+#                               to.
+#                             type: string
+#                           operator:
+#                             description: operator represents a key's relationship
+#                               to a set of values. Valid operators are In, NotIn, Exists
+#                               and DoesNotExist.
+#                             type: string
+#                           values:
+#                             description: values is an array of string values. If the
+#                               operator is In or NotIn, the values array must be non-empty.
+#                               If the operator is Exists or DoesNotExist, the values
+#                               array must be empty. This array is replaced during a
+#                               strategic merge patch.
+#                             items:
+#                               type: string
+#                             type: array
+#                         required:
+#                         - key
+#                         - operator
+#                         type: object
+#                       type: array
+#                     matchLabels:
+#                       additionalProperties:
+#                         type: string
+#                       description: matchLabels is a map of {key,value} pairs. A single
+#                         {key,value} in the matchLabels map is equivalent to an element
+#                         of matchExpressions, whose key field is "key", the operator
+#                         is "In", and the values array contains only "value". The requirements
+#                         are ANDed.
+#                       type: object
+#                   type: object
+#                   x-kubernetes-map-type: atomic
+#                 type: array
+#               ipAddressPools:
+#                 description: The list of IPAddressPools to advertise via this advertisement,
+#                   selected by name.
+#                 items:
+#                   type: string
+#                 type: array
+#               localPref:
+#                 description: The BGP LOCAL_PREF attribute which is used by BGP best
+#                   path algorithm, Path with higher localpref is preferred over one
+#                   with lower localpref.
+#                 format: int32
+#                 type: integer
+#               nodeSelectors:
+#                 description: NodeSelectors allows to limit the nodes to announce as
+#                   next hops for the LoadBalancer IP. When empty, all the nodes having  are
+#                   announced as next hops.
+#                 items:
+#                   description: A label selector is a label query over a set of resources.
+#                     The result of matchLabels and matchExpressions are ANDed. An empty
+#                     label selector matches all objects. A null label selector matches
+#                     no objects.
+#                   properties:
+#                     matchExpressions:
+#                       description: matchExpressions is a list of label selector requirements.
+#                         The requirements are ANDed.
+#                       items:
+#                         description: A label selector requirement is a selector that
+#                           contains values, a key, and an operator that relates the
+#                           key and values.
+#                         properties:
+#                           key:
+#                             description: key is the label key that the selector applies
+#                               to.
+#                             type: string
+#                           operator:
+#                             description: operator represents a key's relationship
+#                               to a set of values. Valid operators are In, NotIn, Exists
+#                               and DoesNotExist.
+#                             type: string
+#                           values:
+#                             description: values is an array of string values. If the
+#                               operator is In or NotIn, the values array must be non-empty.
+#                               If the operator is Exists or DoesNotExist, the values
+#                               array must be empty. This array is replaced during a
+#                               strategic merge patch.
+#                             items:
+#                               type: string
+#                             type: array
+#                         required:
+#                         - key
+#                         - operator
+#                         type: object
+#                       type: array
+#                     matchLabels:
+#                       additionalProperties:
+#                         type: string
+#                       description: matchLabels is a map of {key,value} pairs. A single
+#                         {key,value} in the matchLabels map is equivalent to an element
+#                         of matchExpressions, whose key field is "key", the operator
+#                         is "In", and the values array contains only "value". The requirements
+#                         are ANDed.
+#                       type: object
+#                   type: object
+#                   x-kubernetes-map-type: atomic
+#                 type: array
+#               peers:
+#                 description: Peers limits the bgppeer to advertise the ips of the
+#                   selected pools to. When empty, the loadbalancer IP is announced
+#                   to all the BGPPeers configured.
+#                 items:
+#                   type: string
+#                 type: array
+#             type: object
+#           status:
+#             description: BGPAdvertisementStatus defines the observed state of BGPAdvertisement.
+#             type: object
+#         type: object
+#     served: true
+#     storage: true
+#     subresources:
+#       status: {}
+# ---
+# apiVersion: apiextensions.k8s.io/v1
+# kind: CustomResourceDefinition
+# metadata:
+#   annotations:
+#     controller-gen.kubebuilder.io/version: v0.11.1
+#   name: bgppeers.metallb.io
+# spec:
+#   conversion:
+#     strategy: Webhook
+#     webhook:
+#       clientConfig:
+#         caBundle: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tDQpNSUlGWlRDQ0EwMmdBd0lCQWdJVU5GRW1XcTM3MVpKdGkrMmlSQzk1WmpBV1MxZ3dEUVlKS29aSWh2Y05BUUVMDQpCUUF3UWpFTE1Ba0dBMVVFQmhNQ1dGZ3hGVEFUQmdOVkJBY01ERVJsWm1GMWJIUWdRMmwwZVRFY01Cb0dBMVVFDQpDZ3dUUkdWbVlYVnNkQ0JEYjIxd1lXNTVJRXgwWkRBZUZ3MHlNakEzTVRrd09UTXlNek5hRncweU1qQTRNVGd3DQpPVE15TXpOYU1FSXhDekFKQmdOVkJBWVRBbGhZTVJVd0V3WURWUVFIREF4RVpXWmhkV3gwSUVOcGRIa3hIREFhDQpCZ05WQkFvTUUwUmxabUYxYkhRZ1EyOXRjR0Z1ZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElDDQpEd0F3Z2dJS0FvSUNBUUNxVFpxMWZRcC9vYkdlenhES0o3OVB3Ny94azJwellualNzMlkzb1ZYSm5sRmM4YjVlDQpma2ZZQnY2bndscW1keW5PL2phWFBaQmRQSS82aFdOUDBkdVhadEtWU0NCUUpyZzEyOGNXb3F0MGNTN3pLb1VpDQpvcU1tQ0QvRXVBeFFNZjhRZDF2c1gvVllkZ0poVTZBRXJLZEpIaXpFOUJtUkNkTDBGMW1OVW55Rk82UnRtWFZUDQpidkxsTDVYeTc2R0FaQVBLOFB4aVlDa0NtbDdxN0VnTWNiOXlLWldCYmlxQ3VkTXE5TGJLNmdKNzF6YkZnSXV4DQo1L1pXK2JraTB2RlplWk9ZODUxb1psckFUNzJvMDI4NHNTWW9uN0pHZVZkY3NoUnh5R1VpSFpSTzdkaXZVTDVTDQpmM2JmSDFYbWY1ZDQzT0NWTWRuUUV2NWVaOG8zeWVLa3ZrbkZQUGVJMU9BbjdGbDlFRVNNR2dhOGFaSG1URSttDQpsLzlMSmdDYjBnQmtPT0M0WnV4bWh2aERKV1EzWnJCS3pMQlNUZXN0NWlLNVlwcXRWVVk2THRyRW9FelVTK1lsDQpwWndXY2VQWHlHeHM5ZURsR3lNVmQraW15Y3NTU1UvVno2Mmx6MnZCS21NTXBkYldDQWhud0RsRTVqU2dyMjRRDQp0eGNXLys2N3d5KzhuQlI3UXdqVTFITndVRjBzeERWdEwrZ1NHVERnSEVZSlhZelYvT05zMy94TkpoVFNPSkxNDQpoeXNVdyttaGdackdhbUdXcHVIVU1DUitvTWJzMTc1UkcrQjJnUFFHVytPTjJnUTRyOXN2b0ZBNHBBQm8xd1dLDQpRYjRhY3pmeVVscElBOVFoSmFsZEY3S3dPSHVlV3gwRUNrNXg0T2tvVDBvWVp0dzFiR0JjRGtaSmF3SURBUUFCDQpvMU13VVRBZEJnTlZIUTRFRmdRVW90UlNIUm9IWTEyRFZ4R0NCdEhpb1g2ZmVFQXdId1lEVlIwakJCZ3dGb0FVDQpvdFJTSFJvSFkxMkRWeEdDQnRIaW9YNmZlRUF3RHdZRFZSMFRBUUgvQkFVd0F3RUIvekFOQmdrcWhraUc5dzBCDQpBUXNGQUFPQ0FnRUFSbkpsWWRjMTFHd0VxWnh6RDF2R3BDR2pDN2VWTlQ3aVY1d3IybXlybHdPYi9aUWFEa0xYDQpvVStaOVVXT1VlSXJTdzUydDdmQUpvVVAwSm5iYkMveVIrU1lqUGhvUXNiVHduOTc2ZldBWTduM3FMOXhCd1Y0DQphek41OXNjeUp0dlhMeUtOL2N5ak1ReDRLajBIMFg0bWJ6bzVZNUtzWWtYVU0vOEFPdWZMcEd0S1NGVGgrSEFDDQpab1Q5YnZHS25adnNHd0tYZFF0Wnh0akhaUjVqK3U3ZGtQOTJBT051RFNabS8rWVV4b2tBK09JbzdSR3BwSHNXDQo1ZTdNY0FTVXRtb1FORXd6dVFoVkJaRWQ1OGtKYjUrV0VWbGNzanlXNnRTbzErZ25tTWNqR1BsMWgxR2hVbjV4DQpFY0lWRnBIWXM5YWo1NmpBSjk1MVQvZjhMaWxmTlVnanBLQ0c1bnl0SUt3emxhOHNtdGlPdm1UNEpYbXBwSkI2DQo4bmdHRVluVjUrUTYwWFJ2OEhSSGp1VG9CRHVhaERrVDA2R1JGODU1d09FR2V4bkZpMXZYWUxLVllWb1V2MXRKDQo4dVdUR1pwNllDSVJldlBqbzg5ZytWTlJSaVFYUThJd0dybXE5c0RoVTlqTjA0SjdVL1RvRDFpNHE3VnlsRUc5DQorV1VGNkNLaEdBeTJIaEhwVncyTGFoOS9lUzdZMUZ1YURrWmhPZG1laG1BOCtqdHNZamJadnR5Mm1SWlF0UUZzDQpUU1VUUjREbUR2bVVPRVRmeStpRHdzK2RkWXVNTnJGeVVYV2dkMnpBQU4ydVl1UHFGY2pRcFNPODFzVTJTU3R3DQoxVzAyeUtYOGJEYmZFdjBzbUh3UzliQnFlSGo5NEM1Mjg0YXpsdTBmaUdpTm1OUEM4ckJLRmhBPQ0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQ==
+#         service:
+#           name: webhook-service
+#           namespace: {{ .Release.Namespace }}
+#           path: /convert
+#       conversionReviewVersions:
+#       - v1beta1
+#       - v1beta2
+#   group: metallb.io
+#   names:
+#     kind: BGPPeer
+#     listKind: BGPPeerList
+#     plural: bgppeers
+#     singular: bgppeer
+#   scope: Namespaced
+#   versions:
+#   - additionalPrinterColumns:
+#     - jsonPath: .spec.peerAddress
+#       name: Address
+#       type: string
+#     - jsonPath: .spec.peerASN
+#       name: ASN
+#       type: string
+#     - jsonPath: .spec.bfdProfile
+#       name: BFD Profile
+#       type: string
+#     - jsonPath: .spec.ebgpMultiHop
+#       name: Multi Hops
+#       type: string
+#     name: v1beta1
+#     schema:
+#       openAPIV3Schema:
+#         description: BGPPeer is the Schema for the peers API.
+#         properties:
+#           apiVersion:
+#             description: 'APIVersion defines the versioned schema of this representation
+#               of an object. Servers should convert recognized schemas to the latest
+#               internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+#             type: string
+#           kind:
+#             description: 'Kind is a string value representing the REST resource this
+#               object represents. Servers may infer this from the endpoint the client
+#               submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+#             type: string
+#           metadata:
+#             type: object
+#           spec:
+#             description: BGPPeerSpec defines the desired state of Peer.
+#             properties:
+#               bfdProfile:
+#                 type: string
+#               ebgpMultiHop:
+#                 description: EBGP peer is multi-hops away
+#                 type: boolean
+#               holdTime:
+#                 description: Requested BGP hold time, per RFC4271.
+#                 type: string
+#               keepaliveTime:
+#                 description: Requested BGP keepalive time, per RFC4271.
+#                 type: string
+#               myASN:
+#                 description: AS number to use for the local end of the session.
+#                 format: int32
+#                 maximum: 4294967295
+#                 minimum: 0
+#                 type: integer
+#               nodeSelectors:
+#                 description: Only connect to this peer on nodes that match one of
+#                   these selectors.
+#                 items:
+#                   properties:
+#                     matchExpressions:
+#                       items:
+#                         properties:
+#                           key:
+#                             type: string
+#                           operator:
+#                             type: string
+#                           values:
+#                             items:
+#                               type: string
+#                             minItems: 1
+#                             type: array
+#                         required:
+#                         - key
+#                         - operator
+#                         - values
+#                         type: object
+#                       type: array
+#                     matchLabels:
+#                       additionalProperties:
+#                         type: string
+#                       type: object
+#                   type: object
+#                 type: array
+#               password:
+#                 description: Authentication password for routers enforcing TCP MD5
+#                   authenticated sessions
+#                 type: string
+#               peerASN:
+#                 description: AS number to expect from the remote end of the session.
+#                 format: int32
+#                 maximum: 4294967295
+#                 minimum: 0
+#                 type: integer
+#               peerAddress:
+#                 description: Address to dial when establishing the session.
+#                 type: string
+#               peerPort:
+#                 description: Port to dial when establishing the session.
+#                 maximum: 16384
+#                 minimum: 0
+#                 type: integer
+#               routerID:
+#                 description: BGP router ID to advertise to the peer
+#                 type: string
+#               sourceAddress:
+#                 description: Source address to use when establishing the session.
+#                 type: string
+#             required:
+#             - myASN
+#             - peerASN
+#             - peerAddress
+#             type: object
+#           status:
+#             description: BGPPeerStatus defines the observed state of Peer.
+#             type: object
+#         type: object
+#     served: true
+#     storage: false
+#     subresources:
+#       status: {}
+#   - additionalPrinterColumns:
+#     - jsonPath: .spec.peerAddress
+#       name: Address
+#       type: string
+#     - jsonPath: .spec.peerASN
+#       name: ASN
+#       type: string
+#     - jsonPath: .spec.bfdProfile
+#       name: BFD Profile
+#       type: string
+#     - jsonPath: .spec.ebgpMultiHop
+#       name: Multi Hops
+#       type: string
+#     name: v1beta2
+#     schema:
+#       openAPIV3Schema:
+#         description: BGPPeer is the Schema for the peers API.
+#         properties:
+#           apiVersion:
+#             description: 'APIVersion defines the versioned schema of this representation
+#               of an object. Servers should convert recognized schemas to the latest
+#               internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+#             type: string
+#           kind:
+#             description: 'Kind is a string value representing the REST resource this
+#               object represents. Servers may infer this from the endpoint the client
+#               submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+#             type: string
+#           metadata:
+#             type: object
+#           spec:
+#             description: BGPPeerSpec defines the desired state of Peer.
+#             properties:
+#               bfdProfile:
+#                 description: The name of the BFD Profile to be used for the BFD session
+#                   associated to the BGP session. If not set, the BFD session won't
+#                   be set up.
+#                 type: string
+#               ebgpMultiHop:
+#                 description: To set if the BGPPeer is multi-hops away. Needed for
+#                   FRR mode only.
+#                 type: boolean
+#               holdTime:
+#                 description: Requested BGP hold time, per RFC4271.
+#                 type: string
+#               keepaliveTime:
+#                 description: Requested BGP keepalive time, per RFC4271.
+#                 type: string
+#               myASN:
+#                 description: AS number to use for the local end of the session.
+#                 format: int32
+#                 maximum: 4294967295
+#                 minimum: 0
+#                 type: integer
+#               nodeSelectors:
+#                 description: Only connect to this peer on nodes that match one of
+#                   these selectors.
+#                 items:
+#                   description: A label selector is a label query over a set of resources.
+#                     The result of matchLabels and matchExpressions are ANDed. An empty
+#                     label selector matches all objects. A null label selector matches
+#                     no objects.
+#                   properties:
+#                     matchExpressions:
+#                       description: matchExpressions is a list of label selector requirements.
+#                         The requirements are ANDed.
+#                       items:
+#                         description: A label selector requirement is a selector that
+#                           contains values, a key, and an operator that relates the
+#                           key and values.
+#                         properties:
+#                           key:
+#                             description: key is the label key that the selector applies
+#                               to.
+#                             type: string
+#                           operator:
+#                             description: operator represents a key's relationship
+#                               to a set of values. Valid operators are In, NotIn, Exists
+#                               and DoesNotExist.
+#                             type: string
+#                           values:
+#                             description: values is an array of string values. If the
+#                               operator is In or NotIn, the values array must be non-empty.
+#                               If the operator is Exists or DoesNotExist, the values
+#                               array must be empty. This array is replaced during a
+#                               strategic merge patch.
+#                             items:
+#                               type: string
+#                             type: array
+#                         required:
+#                         - key
+#                         - operator
+#                         type: object
+#                       type: array
+#                     matchLabels:
+#                       additionalProperties:
+#                         type: string
+#                       description: matchLabels is a map of {key,value} pairs. A single
+#                         {key,value} in the matchLabels map is equivalent to an element
+#                         of matchExpressions, whose key field is "key", the operator
+#                         is "In", and the values array contains only "value". The requirements
+#                         are ANDed.
+#                       type: object
+#                   type: object
+#                   x-kubernetes-map-type: atomic
+#                 type: array
+#               password:
+#                 description: Authentication password for routers enforcing TCP MD5
+#                   authenticated sessions
+#                 type: string
+#               passwordSecret:
+#                 description: passwordSecret is name of the authentication secret for
+#                   BGP Peer. the secret must be of type "kubernetes.io/basic-auth",
+#                   and created in the same namespace as the MetalLB deployment. The
+#                   password is stored in the secret as the key "password".
+#                 properties:
+#                   name:
+#                     description: name is unique within a namespace to reference a
+#                       secret resource.
+#                     type: string
+#                   namespace:
+#                     description: namespace defines the space within which the secret
+#                       name must be unique.
+#                     type: string
+#                 type: object
+#                 x-kubernetes-map-type: atomic
+#               peerASN:
+#                 description: AS number to expect from the remote end of the session.
+#                 format: int32
+#                 maximum: 4294967295
+#                 minimum: 0
+#                 type: integer
+#               peerAddress:
+#                 description: Address to dial when establishing the session.
+#                 type: string
+#               peerPort:
+#                 default: 179
+#                 description: Port to dial when establishing the session.
+#                 maximum: 16384
+#                 minimum: 0
+#                 type: integer
+#               routerID:
+#                 description: BGP router ID to advertise to the peer
+#                 type: string
+#               sourceAddress:
+#                 description: Source address to use when establishing the session.
+#                 type: string
+#               vrf:
+#                 description: To set if we want to peer with the BGPPeer using an interface
+#                   belonging to a host vrf
+#                 type: string
+#             required:
+#             - myASN
+#             - peerASN
+#             - peerAddress
+#             type: object
+#           status:
+#             description: BGPPeerStatus defines the observed state of Peer.
+#             type: object
+#         type: object
+#     served: true
+#     storage: true
+#     subresources:
+#       status: {}
+# ---
+# apiVersion: apiextensions.k8s.io/v1
+# kind: CustomResourceDefinition
+# metadata:
+#   annotations:
+#     controller-gen.kubebuilder.io/version: v0.11.1
+#   creationTimestamp: null
+#   name: communities.metallb.io
+# spec:
+#   group: metallb.io
+#   names:
+#     kind: Community
+#     listKind: CommunityList
+#     plural: communities
+#     singular: community
+#   scope: Namespaced
+#   versions:
+#   - name: v1beta1
+#     schema:
+#       openAPIV3Schema:
+#         description: Community is a collection of aliases for communities. Users can
+#           define named aliases to be used in the BGPPeer CRD.
+#         properties:
+#           apiVersion:
+#             description: 'APIVersion defines the versioned schema of this representation
+#               of an object. Servers should convert recognized schemas to the latest
+#               internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+#             type: string
+#           kind:
+#             description: 'Kind is a string value representing the REST resource this
+#               object represents. Servers may infer this from the endpoint the client
+#               submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+#             type: string
+#           metadata:
+#             type: object
+#           spec:
+#             description: CommunitySpec defines the desired state of Community.
+#             properties:
+#               communities:
+#                 items:
+#                   properties:
+#                     name:
+#                       description: The name of the alias for the community.
+#                       type: string
+#                     value:
+#                       description: The BGP community value corresponding to the given
+#                         name.
+#                       type: string
+#                   type: object
+#                 type: array
+#             type: object
+#           status:
+#             description: CommunityStatus defines the observed state of Community.
+#             type: object
+#         type: object
+#     served: true
+#     storage: true
+#     subresources:
+#       status: {}
+# ---
+# apiVersion: apiextensions.k8s.io/v1
+# kind: CustomResourceDefinition
+# metadata:
+#   annotations:
+#     controller-gen.kubebuilder.io/version: v0.11.1
+#   creationTimestamp: null
+#   name: ipaddresspools.metallb.io
+# spec:
+#   group: metallb.io
+#   names:
+#     kind: IPAddressPool
+#     listKind: IPAddressPoolList
+#     plural: ipaddresspools
+#     singular: ipaddresspool
+#   scope: Namespaced
+#   versions:
+#   - additionalPrinterColumns:
+#     - jsonPath: .spec.autoAssign
+#       name: Auto Assign
+#       type: boolean
+#     - jsonPath: .spec.avoidBuggyIPs
+#       name: Avoid Buggy IPs
+#       type: boolean
+#     - jsonPath: .spec.addresses
+#       name: Addresses
+#       type: string
+#     name: v1beta1
+#     schema:
+#       openAPIV3Schema:
+#         description: IPAddressPool represents a pool of IP addresses that can be allocated
+#           to LoadBalancer services.
+#         properties:
+#           apiVersion:
+#             description: 'APIVersion defines the versioned schema of this representation
+#               of an object. Servers should convert recognized schemas to the latest
+#               internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+#             type: string
+#           kind:
+#             description: 'Kind is a string value representing the REST resource this
+#               object represents. Servers may infer this from the endpoint the client
+#               submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+#             type: string
+#           metadata:
+#             type: object
+#           spec:
+#             description: IPAddressPoolSpec defines the desired state of IPAddressPool.
+#             properties:
+#               addresses:
+#                 description: A list of IP address ranges over which MetalLB has authority.
+#                   You can list multiple ranges in a single pool, they will all share
+#                   the same settings. Each range can be either a CIDR prefix, or an
+#                   explicit start-end range of IPs.
+#                 items:
+#                   type: string
+#                 type: array
+#               autoAssign:
+#                 default: true
+#                 description: AutoAssign flag used to prevent MetallB from automatic
+#                   allocation for a pool.
+#                 type: boolean
+#               avoidBuggyIPs:
+#                 default: false
+#                 description: AvoidBuggyIPs prevents addresses ending with .0 and .255
+#                   to be used by a pool.
+#                 type: boolean
+#               serviceAllocation:
+#                 description: AllocateTo makes ip pool allocation to specific namespace
+#                   and/or service. The controller will use the pool with lowest value
+#                   of priority in case of multiple matches. A pool with no priority
+#                   set will be used only if the pools with priority can't be used.
+#                   If multiple matching IPAddressPools are available it will check
+#                   for the availability of IPs sorting the matching IPAddressPools
+#                   by priority, starting from the highest to the lowest. If multiple
+#                   IPAddressPools have the same priority, choice will be random.
+#                 properties:
+#                   namespaceSelectors:
+#                     description: NamespaceSelectors list of label selectors to select
+#                       namespace(s) for ip pool, an alternative to using namespace
+#                       list.
+#                     items:
+#                       description: A label selector is a label query over a set of
+#                         resources. The result of matchLabels and matchExpressions
+#                         are ANDed. An empty label selector matches all objects. A
+#                         null label selector matches no objects.
+#                       properties:
+#                         matchExpressions:
+#                           description: matchExpressions is a list of label selector
+#                             requirements. The requirements are ANDed.
+#                           items:
+#                             description: A label selector requirement is a selector
+#                               that contains values, a key, and an operator that relates
+#                               the key and values.
+#                             properties:
+#                               key:
+#                                 description: key is the label key that the selector
+#                                   applies to.
+#                                 type: string
+#                               operator:
+#                                 description: operator represents a key's relationship
+#                                   to a set of values. Valid operators are In, NotIn,
+#                                   Exists and DoesNotExist.
+#                                 type: string
+#                               values:
+#                                 description: values is an array of string values.
+#                                   If the operator is In or NotIn, the values array
+#                                   must be non-empty. If the operator is Exists or
+#                                   DoesNotExist, the values array must be empty. This
+#                                   array is replaced during a strategic merge patch.
+#                                 items:
+#                                   type: string
+#                                 type: array
+#                             required:
+#                             - key
+#                             - operator
+#                             type: object
+#                           type: array
+#                         matchLabels:
+#                           additionalProperties:
+#                             type: string
+#                           description: matchLabels is a map of {key,value} pairs.
+#                             A single {key,value} in the matchLabels map is equivalent
+#                             to an element of matchExpressions, whose key field is
+#                             "key", the operator is "In", and the values array contains
+#                             only "value". The requirements are ANDed.
+#                           type: object
+#                       type: object
+#                       x-kubernetes-map-type: atomic
+#                     type: array
+#                   namespaces:
+#                     description: Namespaces list of namespace(s) on which ip pool
+#                       can be attached.
+#                     items:
+#                       type: string
+#                     type: array
+#                   priority:
+#                     description: Priority priority given for ip pool while ip allocation
+#                       on a service.
+#                     type: integer
+#                   serviceSelectors:
+#                     description: ServiceSelectors list of label selector to select
+#                       service(s) for which ip pool can be used for ip allocation.
+#                     items:
+#                       description: A label selector is a label query over a set of
+#                         resources. The result of matchLabels and matchExpressions
+#                         are ANDed. An empty label selector matches all objects. A
+#                         null label selector matches no objects.
+#                       properties:
+#                         matchExpressions:
+#                           description: matchExpressions is a list of label selector
+#                             requirements. The requirements are ANDed.
+#                           items:
+#                             description: A label selector requirement is a selector
+#                               that contains values, a key, and an operator that relates
+#                               the key and values.
+#                             properties:
+#                               key:
+#                                 description: key is the label key that the selector
+#                                   applies to.
+#                                 type: string
+#                               operator:
+#                                 description: operator represents a key's relationship
+#                                   to a set of values. Valid operators are In, NotIn,
+#                                   Exists and DoesNotExist.
+#                                 type: string
+#                               values:
+#                                 description: values is an array of string values.
+#                                   If the operator is In or NotIn, the values array
+#                                   must be non-empty. If the operator is Exists or
+#                                   DoesNotExist, the values array must be empty. This
+#                                   array is replaced during a strategic merge patch.
+#                                 items:
+#                                   type: string
+#                                 type: array
+#                             required:
+#                             - key
+#                             - operator
+#                             type: object
+#                           type: array
+#                         matchLabels:
+#                           additionalProperties:
+#                             type: string
+#                           description: matchLabels is a map of {key,value} pairs.
+#                             A single {key,value} in the matchLabels map is equivalent
+#                             to an element of matchExpressions, whose key field is
+#                             "key", the operator is "In", and the values array contains
+#                             only "value". The requirements are ANDed.
+#                           type: object
+#                       type: object
+#                       x-kubernetes-map-type: atomic
+#                     type: array
+#                 type: object
+#             required:
+#             - addresses
+#             type: object
+#           status:
+#             description: IPAddressPoolStatus defines the observed state of IPAddressPool.
+#             type: object
+#         required:
+#         - spec
+#         type: object
+#     served: true
+#     storage: true
+#     subresources:
+#       status: {}
+# ---
+# apiVersion: apiextensions.k8s.io/v1
+# kind: CustomResourceDefinition
+# metadata:
+#   annotations:
+#     controller-gen.kubebuilder.io/version: v0.11.1
+#   creationTimestamp: null
+#   name: l2advertisements.metallb.io
+# spec:
+#   group: metallb.io
+#   names:
+#     kind: L2Advertisement
+#     listKind: L2AdvertisementList
+#     plural: l2advertisements
+#     singular: l2advertisement
+#   scope: Namespaced
+#   versions:
+#   - additionalPrinterColumns:
+#     - jsonPath: .spec.ipAddressPools
+#       name: IPAddressPools
+#       type: string
+#     - jsonPath: .spec.ipAddressPoolSelectors
+#       name: IPAddressPool Selectors
+#       type: string
+#     - jsonPath: .spec.interfaces
+#       name: Interfaces
+#       type: string
+#     - jsonPath: .spec.nodeSelectors
+#       name: Node Selectors
+#       priority: 10
+#       type: string
+#     name: v1beta1
+#     schema:
+#       openAPIV3Schema:
+#         description: L2Advertisement allows to advertise the LoadBalancer IPs provided
+#           by the selected pools via L2.
+#         properties:
+#           apiVersion:
+#             description: 'APIVersion defines the versioned schema of this representation
+#               of an object. Servers should convert recognized schemas to the latest
+#               internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+#             type: string
+#           kind:
+#             description: 'Kind is a string value representing the REST resource this
+#               object represents. Servers may infer this from the endpoint the client
+#               submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+#             type: string
+#           metadata:
+#             type: object
+#           spec:
+#             description: L2AdvertisementSpec defines the desired state of L2Advertisement.
+#             properties:
+#               interfaces:
+#                 description: A list of interfaces to announce from. The LB IP will
+#                   be announced only from these interfaces. If the field is not set,
+#                   we advertise from all the interfaces on the host.
+#                 items:
+#                   type: string
+#                 type: array
+#               ipAddressPoolSelectors:
+#                 description: A selector for the IPAddressPools which would get advertised
+#                   via this advertisement. If no IPAddressPool is selected by this
+#                   or by the list, the advertisement is applied to all the IPAddressPools.
+#                 items:
+#                   description: A label selector is a label query over a set of resources.
+#                     The result of matchLabels and matchExpressions are ANDed. An empty
+#                     label selector matches all objects. A null label selector matches
+#                     no objects.
+#                   properties:
+#                     matchExpressions:
+#                       description: matchExpressions is a list of label selector requirements.
+#                         The requirements are ANDed.
+#                       items:
+#                         description: A label selector requirement is a selector that
+#                           contains values, a key, and an operator that relates the
+#                           key and values.
+#                         properties:
+#                           key:
+#                             description: key is the label key that the selector applies
+#                               to.
+#                             type: string
+#                           operator:
+#                             description: operator represents a key's relationship
+#                               to a set of values. Valid operators are In, NotIn, Exists
+#                               and DoesNotExist.
+#                             type: string
+#                           values:
+#                             description: values is an array of string values. If the
+#                               operator is In or NotIn, the values array must be non-empty.
+#                               If the operator is Exists or DoesNotExist, the values
+#                               array must be empty. This array is replaced during a
+#                               strategic merge patch.
+#                             items:
+#                               type: string
+#                             type: array
+#                         required:
+#                         - key
+#                         - operator
+#                         type: object
+#                       type: array
+#                     matchLabels:
+#                       additionalProperties:
+#                         type: string
+#                       description: matchLabels is a map of {key,value} pairs. A single
+#                         {key,value} in the matchLabels map is equivalent to an element
+#                         of matchExpressions, whose key field is "key", the operator
+#                         is "In", and the values array contains only "value". The requirements
+#                         are ANDed.
+#                       type: object
+#                   type: object
+#                   x-kubernetes-map-type: atomic
+#                 type: array
+#               ipAddressPools:
+#                 description: The list of IPAddressPools to advertise via this advertisement,
+#                   selected by name.
+#                 items:
+#                   type: string
+#                 type: array
+#               nodeSelectors:
+#                 description: NodeSelectors allows to limit the nodes to announce as
+#                   next hops for the LoadBalancer IP. When empty, all the nodes having  are
+#                   announced as next hops.
+#                 items:
+#                   description: A label selector is a label query over a set of resources.
+#                     The result of matchLabels and matchExpressions are ANDed. An empty
+#                     label selector matches all objects. A null label selector matches
+#                     no objects.
+#                   properties:
+#                     matchExpressions:
+#                       description: matchExpressions is a list of label selector requirements.
+#                         The requirements are ANDed.
+#                       items:
+#                         description: A label selector requirement is a selector that
+#                           contains values, a key, and an operator that relates the
+#                           key and values.
+#                         properties:
+#                           key:
+#                             description: key is the label key that the selector applies
+#                               to.
+#                             type: string
+#                           operator:
+#                             description: operator represents a key's relationship
+#                               to a set of values. Valid operators are In, NotIn, Exists
+#                               and DoesNotExist.
+#                             type: string
+#                           values:
+#                             description: values is an array of string values. If the
+#                               operator is In or NotIn, the values array must be non-empty.
+#                               If the operator is Exists or DoesNotExist, the values
+#                               array must be empty. This array is replaced during a
+#                               strategic merge patch.
+#                             items:
+#                               type: string
+#                             type: array
+#                         required:
+#                         - key
+#                         - operator
+#                         type: object
+#                       type: array
+#                     matchLabels:
+#                       additionalProperties:
+#                         type: string
+#                       description: matchLabels is a map of {key,value} pairs. A single
+#                         {key,value} in the matchLabels map is equivalent to an element
+#                         of matchExpressions, whose key field is "key", the operator
+#                         is "In", and the values array contains only "value". The requirements
+#                         are ANDed.
+#                       type: object
+#                   type: object
+#                   x-kubernetes-map-type: atomic
+#                 type: array
+#             type: object
+#           status:
+#             description: L2AdvertisementStatus defines the observed state of L2Advertisement.
+#             type: object
+#         type: object
+#     served: true
+#     storage: true
+#     subresources:
+#       status: {}
+# ---
+# apiVersion: v1
+# kind: ServiceAccount
+# metadata:
+#   labels:
+#     app: metallb
+#   name: controller
+#   namespace: {{ .Release.Namespace }}
+# ---
+# apiVersion: v1
+# kind: ServiceAccount
+# metadata:
+#   labels:
+#     app: metallb
+#   name: speaker
+#   namespace: {{ .Release.Namespace }}
+# ---
+# apiVersion: rbac.authorization.k8s.io/v1
+# kind: Role
+# metadata:
+#   labels:
+#     app: metallb
+#   name: controller
+#   namespace: {{ .Release.Namespace }}
+# rules:
+# - apiGroups:
+#   - ""
+#   resources:
+#   - secrets
+#   verbs:
+#   - create
+#   - delete
+#   - get
+#   - list
+#   - patch
+#   - update
+#   - watch
+# - apiGroups:
+#   - ""
+#   resourceNames:
+#   - memberlist
+#   resources:
+#   - secrets
+#   verbs:
+#   - list
+# - apiGroups:
+#   - apps
+#   resourceNames:
+#   - controller
+#   resources:
+#   - deployments
+#   verbs:
+#   - get
+# - apiGroups:
+#   - metallb.io
+#   resources:
+#   - bgppeers
+#   verbs:
+#   - get
+#   - list
+# - apiGroups:
+#   - metallb.io
+#   resources:
+#   - addresspools
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# - apiGroups:
+#   - metallb.io
+#   resources:
+#   - bfdprofiles
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# - apiGroups:
+#   - metallb.io
+#   resources:
+#   - ipaddresspools
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# - apiGroups:
+#   - metallb.io
+#   resources:
+#   - bgpadvertisements
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# - apiGroups:
+#   - metallb.io
+#   resources:
+#   - l2advertisements
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# - apiGroups:
+#   - metallb.io
+#   resources:
+#   - communities
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# ---
+# apiVersion: rbac.authorization.k8s.io/v1
+# kind: Role
+# metadata:
+#   labels:
+#     app: metallb
+#   name: pod-lister
+#   namespace: {{ .Release.Namespace }}
+# rules:
+# - apiGroups:
+#   - ""
+#   resources:
+#   - pods
+#   verbs:
+#   - list
+# - apiGroups:
+#   - ""
+#   resources:
+#   - secrets
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# - apiGroups:
+#   - metallb.io
+#   resources:
+#   - addresspools
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# - apiGroups:
+#   - metallb.io
+#   resources:
+#   - bfdprofiles
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# - apiGroups:
+#   - metallb.io
+#   resources:
+#   - bgppeers
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# - apiGroups:
+#   - metallb.io
+#   resources:
+#   - l2advertisements
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# - apiGroups:
+#   - metallb.io
+#   resources:
+#   - bgpadvertisements
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# - apiGroups:
+#   - metallb.io
+#   resources:
+#   - ipaddresspools
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# - apiGroups:
+#   - metallb.io
+#   resources:
+#   - communities
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# ---
+# apiVersion: rbac.authorization.k8s.io/v1
+# kind: ClusterRole
+# metadata:
+#   labels:
+#     app: metallb
+#   name: metallb-system:controller
+# rules:
+# - apiGroups:
+#   - ""
+#   resources:
+#   - services
+#   - namespaces
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# - apiGroups:
+#   - ""
+#   resources:
+#   - services/status
+#   verbs:
+#   - update
+# - apiGroups:
+#   - ""
+#   resources:
+#   - events
+#   verbs:
+#   - create
+#   - patch
+# - apiGroups:
+#   - policy
+#   resourceNames:
+#   - controller
+#   resources:
+#   - podsecuritypolicies
+#   verbs:
+#   - use
+# - apiGroups:
+#   - admissionregistration.k8s.io
+#   resourceNames:
+#   - metallb-webhook-configuration
+#   resources:
+#   - validatingwebhookconfigurations
+#   - mutatingwebhookconfigurations
+#   verbs:
+#   - create
+#   - delete
+#   - get
+#   - list
+#   - patch
+#   - update
+#   - watch
+# - apiGroups:
+#   - admissionregistration.k8s.io
+#   resources:
+#   - validatingwebhookconfigurations
+#   - mutatingwebhookconfigurations
+#   verbs:
+#   - list
+#   - watch
+# - apiGroups:
+#   - apiextensions.k8s.io
+#   resourceNames:
+#   - addresspools.metallb.io
+#   - bfdprofiles.metallb.io
+#   - bgpadvertisements.metallb.io
+#   - bgppeers.metallb.io
+#   - ipaddresspools.metallb.io
+#   - l2advertisements.metallb.io
+#   - communities.metallb.io
+#   resources:
+#   - customresourcedefinitions
+#   verbs:
+#   - create
+#   - delete
+#   - get
+#   - list
+#   - patch
+#   - update
+#   - watch
+# - apiGroups:
+#   - apiextensions.k8s.io
+#   resources:
+#   - customresourcedefinitions
+#   verbs:
+#   - list
+#   - watch
+# ---
+# apiVersion: rbac.authorization.k8s.io/v1
+# kind: ClusterRole
+# metadata:
+#   labels:
+#     app: metallb
+#   name: metallb-system:speaker
+# rules:
+# - apiGroups:
+#   - ""
+#   resources:
+#   - services
+#   - endpoints
+#   - nodes
+#   - namespaces
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# - apiGroups:
+#   - discovery.k8s.io
+#   resources:
+#   - endpointslices
+#   verbs:
+#   - get
+#   - list
+#   - watch
+# - apiGroups:
+#   - ""
+#   resources:
+#   - events
+#   verbs:
+#   - create
+#   - patch
+# - apiGroups:
+#   - policy
+#   resourceNames:
+#   - speaker
+#   resources:
+#   - podsecuritypolicies
+#   verbs:
+#   - use
+# ---
+# apiVersion: rbac.authorization.k8s.io/v1
+# kind: RoleBinding
+# metadata:
+#   labels:
+#     app: metallb
+#   name: controller
+#   namespace: {{ .Release.Namespace }}
+# roleRef:
+#   apiGroup: rbac.authorization.k8s.io
+#   kind: Role
+#   name: controller
+# subjects:
+# - kind: ServiceAccount
+#   name: controller
+#   namespace: {{ .Release.Namespace }}
+# ---
+# apiVersion: rbac.authorization.k8s.io/v1
+# kind: RoleBinding
+# metadata:
+#   labels:
+#     app: metallb
+#   name: pod-lister
+#   namespace: {{ .Release.Namespace }}
+# roleRef:
+#   apiGroup: rbac.authorization.k8s.io
+#   kind: Role
+#   name: pod-lister
+# subjects:
+# - kind: ServiceAccount
+#   name: speaker
+#   namespace: {{ .Release.Namespace }}
+# ---
+# apiVersion: rbac.authorization.k8s.io/v1
+# kind: ClusterRoleBinding
+# metadata:
+#   labels:
+#     app: metallb
+#   name: metallb-system:controller
+# roleRef:
+#   apiGroup: rbac.authorization.k8s.io
+#   kind: ClusterRole
+#   name: metallb-system:controller
+# subjects:
+# - kind: ServiceAccount
+#   name: controller
+#   namespace: {{ .Release.Namespace }}
+# ---
+# apiVersion: rbac.authorization.k8s.io/v1
+# kind: ClusterRoleBinding
+# metadata:
+#   labels:
+#     app: metallb
+#   name: metallb-system:speaker
+# roleRef:
+#   apiGroup: rbac.authorization.k8s.io
+#   kind: ClusterRole
+#   name: metallb-system:speaker
+# subjects:
+# - kind: ServiceAccount
+#   name: speaker
+#   namespace: {{ .Release.Namespace }}
+# ---
+# apiVersion: v1
+# kind: Secret
+# metadata:
+#   name: webhook-server-cert
+#   namespace: {{ .Release.Namespace }}
+# ---
+# apiVersion: v1
+# kind: Service
+# metadata:
+#   name: webhook-service
+#   namespace: {{ .Release.Namespace }}
+# spec:
+#   ports:
+#   - port: 443
+#     targetPort: 9443
+#   selector:
+#     component: controller
+# ---
+# apiVersion: apps/v1
+# kind: Deployment
+# metadata:
+#   labels:
+#     app: metallb
+#     component: controller
+#   name: controller
+#   namespace: {{ .Release.Namespace }}
+# spec:
+#   revisionHistoryLimit: 3
+#   selector:
+#     matchLabels:
+#       app: metallb
+#       component: controller
+#   template:
+#     metadata:
+#       annotations:
+#         prometheus.io/port: "7472"
+#         prometheus.io/scrape: "true"
+#       labels:
+#         app: metallb
+#         component: controller
+#     spec:
+#       containers:
+#       - args:
+#         - --port=7472
+#         - --log-level={{ .Values.controller.logLevel }}
+#         env:
+#         - name: METALLB_ML_SECRET_NAME
+#           value: memberlist
+#         - name: METALLB_DEPLOYMENT
+#           value: controller
+#         image: {{ .Values.controller.image.repository }}:{{ .Values.controller.image.tag }}
+#         imagePullPolicy: {{ .Values.controller.image.pullPolicy }}
+#         livenessProbe:
+#           failureThreshold: 3
+#           httpGet:
+#             path: /metrics
+#             port: monitoring
+#           initialDelaySeconds: 10
+#           periodSeconds: 10
+#           successThreshold: 1
+#           timeoutSeconds: 1
+#         name: controller
+#         ports:
+#         - containerPort: 7472
+#           name: monitoring
+#         - containerPort: 9443
+#           name: webhook-server
+#           protocol: TCP
+#         readinessProbe:
+#           failureThreshold: 3
+#           httpGet:
+#             path: /metrics
+#             port: monitoring
+#           initialDelaySeconds: 10
+#           periodSeconds: 10
+#           successThreshold: 1
+#           timeoutSeconds: 1
+#         securityContext:
+#           allowPrivilegeEscalation: false
+#           capabilities:
+#             drop:
+#             - all
+#           readOnlyRootFilesystem: true
+#         volumeMounts:
+#         - mountPath: /tmp/k8s-webhook-server/serving-certs
+#           name: cert
+#           readOnly: true
+#       nodeSelector:
+#         kubernetes.io/os: linux
+#       securityContext:
+#         fsGroup: 65534
+#         runAsNonRoot: true
+#         runAsUser: 65534
+#       serviceAccountName: controller
+#       terminationGracePeriodSeconds: 0
+#       volumes:
+#       - name: cert
+#         secret:
+#           defaultMode: 420
+#           secretName: webhook-server-cert
+# ---
+# apiVersion: apps/v1
+# kind: DaemonSet
+# metadata:
+#   labels:
+#     app: metallb
+#     component: speaker
+#   name: speaker
+#   namespace: {{ .Release.Namespace }}
+# spec:
+#   selector:
+#     matchLabels:
+#       app: metallb
+#       component: speaker
+#   template:
+#     metadata:
+#       annotations:
+#         prometheus.io/port: "7472"
+#         prometheus.io/scrape: "true"
+#       labels:
+#         app: metallb
+#         component: speaker
+#     spec:
+#       containers:
+#       - args:
+#         - --port=7472
+#         - --log-level={{ .Values.controller.logLevel }}
+#         env:
+#         - name: METALLB_NODE_NAME
+#           valueFrom:
+#             fieldRef:
+#               fieldPath: spec.nodeName
+#         - name: METALLB_HOST
+#           valueFrom:
+#             fieldRef:
+#               fieldPath: status.hostIP
+#         - name: METALLB_ML_BIND_ADDR
+#           valueFrom:
+#             fieldRef:
+#               fieldPath: status.podIP
+#         - name: METALLB_ML_LABELS
+#           value: app=metallb,component=speaker
+#         - name: METALLB_ML_SECRET_KEY_PATH
+#           value: /etc/ml_secret_key
+#         image: {{ .Values.speaker.image.repository }}:{{ .Values.speaker.image.tag }}
+#         imagePullPolicy: {{ .Values.speaker.image.pullPolicy }}
+#         livenessProbe:
+#           failureThreshold: 3
+#           httpGet:
+#             path: /metrics
+#             port: monitoring
+#           initialDelaySeconds: 10
+#           periodSeconds: 10
+#           successThreshold: 1
+#           timeoutSeconds: 1
+#         name: speaker
+#         ports:
+#         - containerPort: 7472
+#           name: monitoring
+#         - containerPort: 7946
+#           name: memberlist-tcp
+#         - containerPort: 7946
+#           name: memberlist-udp
+#           protocol: UDP
+#         readinessProbe:
+#           failureThreshold: 3
+#           httpGet:
+#             path: /metrics
+#             port: monitoring
+#           initialDelaySeconds: 10
+#           periodSeconds: 10
+#           successThreshold: 1
+#           timeoutSeconds: 1
+#         securityContext:
+#           allowPrivilegeEscalation: false
+#           capabilities:
+#             add:
+#             - NET_RAW
+#             drop:
+#             - ALL
+#           readOnlyRootFilesystem: true
+#         volumeMounts:
+#         - mountPath: /etc/ml_secret_key
+#           name: memberlist
+#           readOnly: true
+#       hostNetwork: true
+#       nodeSelector:
+#         kubernetes.io/os: linux
+#       serviceAccountName: speaker
+#       terminationGracePeriodSeconds: 2
+#       tolerations:
+#       - effect: NoSchedule
+#         key: node-role.kubernetes.io/master
+#         operator: Exists
+#       - effect: NoSchedule
+#         key: node-role.kubernetes.io/control-plane
+#         operator: Exists
+#       volumes:
+#       - name: memberlist
+#         secret:
+#           defaultMode: 420
+#           secretName: memberlist
+# ---
+# apiVersion: admissionregistration.k8s.io/v1
+# kind: ValidatingWebhookConfiguration
+# metadata:
+#   creationTimestamp: null
+#   name: metallb-webhook-configuration
+# webhooks:
+# - admissionReviewVersions:
+#   - v1
+#   clientConfig:
+#     service:
+#       name: webhook-service
+#       namespace: {{ .Release.Namespace }}
+#       path: /validate-metallb-io-v1beta2-bgppeer
+#   failurePolicy: Fail
+#   name: bgppeersvalidationwebhook.metallb.io
+#   rules:
+#   - apiGroups:
+#     - metallb.io
+#     apiVersions:
+#     - v1beta2
+#     operations:
+#     - CREATE
+#     - UPDATE
+#     resources:
+#     - bgppeers
+#   sideEffects: None
+# - admissionReviewVersions:
+#   - v1
+#   clientConfig:
+#     service:
+#       name: webhook-service
+#       namespace: {{ .Release.Namespace }}
+#       path: /validate-metallb-io-v1beta1-addresspool
+#   failurePolicy: Fail
+#   name: addresspoolvalidationwebhook.metallb.io
+#   rules:
+#   - apiGroups:
+#     - metallb.io
+#     apiVersions:
+#     - v1beta1
+#     operations:
+#     - CREATE
+#     - UPDATE
+#     resources:
+#     - addresspools
+#   sideEffects: None
+# - admissionReviewVersions:
+#   - v1
+#   clientConfig:
+#     service:
+#       name: webhook-service
+#       namespace: {{ .Release.Namespace }}
+#       path: /validate-metallb-io-v1beta1-bfdprofile
+#   failurePolicy: Fail
+#   name: bfdprofilevalidationwebhook.metallb.io
+#   rules:
+#   - apiGroups:
+#     - metallb.io
+#     apiVersions:
+#     - v1beta1
+#     operations:
+#     - CREATE
+#     - DELETE
+#     resources:
+#     - bfdprofiles
+#   sideEffects: None
+# - admissionReviewVersions:
+#   - v1
+#   clientConfig:
+#     service:
+#       name: webhook-service
+#       namespace: {{ .Release.Namespace }}
+#       path: /validate-metallb-io-v1beta1-bgpadvertisement
+#   failurePolicy: Fail
+#   name: bgpadvertisementvalidationwebhook.metallb.io
+#   rules:
+#   - apiGroups:
+#     - metallb.io
+#     apiVersions:
+#     - v1beta1
+#     operations:
+#     - CREATE
+#     - UPDATE
+#     resources:
+#     - bgpadvertisements
+#   sideEffects: None
+# - admissionReviewVersions:
+#   - v1
+#   clientConfig:
+#     service:
+#       name: webhook-service
+#       namespace: {{ .Release.Namespace }}
+#       path: /validate-metallb-io-v1beta1-community
+#   failurePolicy: Fail
+#   name: communityvalidationwebhook.metallb.io
+#   rules:
+#   - apiGroups:
+#     - metallb.io
+#     apiVersions:
+#     - v1beta1
+#     operations:
+#     - CREATE
+#     - UPDATE
+#     resources:
+#     - communities
+#   sideEffects: None
+# - admissionReviewVersions:
+#   - v1
+#   clientConfig:
+#     service:
+#       name: webhook-service
+#       namespace: {{ .Release.Namespace }}
+#       path: /validate-metallb-io-v1beta1-ipaddresspool
+#   failurePolicy: Fail
+#   name: ipaddresspoolvalidationwebhook.metallb.io
+#   rules:
+#   - apiGroups:
+#     - metallb.io
+#     apiVersions:
+#     - v1beta1
+#     operations:
+#     - CREATE
+#     - UPDATE
+#     resources:
+#     - ipaddresspools
+#   sideEffects: None
+# - admissionReviewVersions:
+#   - v1
+#   clientConfig:
+#     service:
+#       name: webhook-service
+#       namespace: {{ .Release.Namespace }}
+#       path: /validate-metallb-io-v1beta1-l2advertisement
+#   failurePolicy: Fail
+#   name: l2advertisementvalidationwebhook.metallb.io
+#   rules:
+#   - apiGroups:
+#     - metallb.io
+#     apiVersions:
+#     - v1beta1
+#     operations:
+#     - CREATE
+#     - UPDATE
+#     resources:
+#     - l2advertisements
+#   sideEffects: None
