code: def __init__(self, in_dim: int, out_dim: int):
      super(ContextEmbeddingBlock, self).__init__()
  
      self.gap = nn.AdaptiveAvgPool2D(1)
      self.bn = layers.SyncBatchNorm(in_dim)
  
      self.conv_1x1 = layers.ConvBNReLU(in_dim, out_dim, 1)
      self.conv_3x3 = nn.Conv2D(out_dim, out_dim, 3, 1, 1)
  
imports: import os
  from typing import Union, List, Tuple
  import numpy
  import paddle
  import paddle.nn
  import paddle.nn.functional
  from paddlehub.module.module import moduleinfo
  import paddlehub.vision.segmentation_transforms
  from paddlehub.module.cv_module import ImageSegmentationModule
  import bisenet_cityscapes.layers
label_desc: Use image node_id 1 to create a new ContextEmbeddingBlock object from inherited base classes: nn with example: obj = ContextEmbeddingBlock(in_dim, out_dim)