code: def __init__(
      self,
      hidden_size,
      mlp_dim,
      dropout_rate,
      num_heads,
      attention_dropout_rate,
      vis,
  ):
      super(Block, self).__init__()
      self.hidden_size = hidden_size
      self.attention_norm = nn.LayerNorm(hidden_size, epsilon=1e-6)
      self.ffn_norm = nn.LayerNorm(hidden_size, epsilon=1e-6)
      self.ffn = Mlp(hidden_size, mlp_dim, dropout_rate)
      self.attention = Attention(
          hidden_size, num_heads, attention_dropout_rate, vis
      )
  
imports: import copy
  import math
  import numpy
  import paddle
  import paddle.nn
  import paddle.nn.functional
  from medicalseg.cvlibs import manager
  from medicalseg.utils import load_pretrained_model
label_desc: Use image node_id 1 to create a new Block object from inherited base classes: nn with example: obj = Block(hidden_size, mlp_dim, dropout_rate, num_heads, attention_dropout_rate, vis)