code: def __init__(self, config: ConvNextV2Config, **kwargs):
      super().__init__(**kwargs)
  
      self.config = config
      self.embeddings = TFConvNextV2Embeddings(
          config, name="embeddings"
      )
      self.encoder = TFConvNextV2Encoder(config, name="encoder")
      self.layernorm = tf.keras.layers.LayerNormalization(
          epsilon=config.layer_norm_eps, name="layernorm"
      )
      # We are setting the `data_format` like so because from here on we will revert to the
      # NCHW output format
      self.pooler = tf.keras.layers.GlobalAvgPool2D(
          data_format="channels_last"
      )
  
imports: from __future__ import annotations
  from typing import List, Optional, Tuple, Union
  import numpy
  import tensorflow
  from ...activations_tf import get_tf_activation
  from ...modeling_tf_outputs import TFBaseModelOutputWithNoAttention, TFBaseModelOutputWithPooling, TFBaseModelOutputWithPoolingAndNoAttention, TFImageClassifierOutputWithNoAttention
  from ...modeling_tf_utils import TFModelInputType, TFPreTrainedModel, TFSequenceClassificationLoss, get_initializer, keras_serializable, unpack_inputs
  from ...tf_utils import shape_list
  from ...utils import add_code_sample_docstrings, add_start_docstrings, add_start_docstrings_to_model_forward, logging
  from .configuration_convnextv2 import ConvNextV2Config
label_desc: Use image node_id 1 to create a new TFConvNextV2MainLayer object from inherited base classes: tf.keras.layers with example: obj = TFConvNextV2MainLayer(config)