code: def setup(self):
      self.hidden_size = self.config.hidden_size
      self.num_heads = self.config.n_head
      self.head_dim = self.hidden_size // self.num_heads
      self.attention_softmax_in_fp32 = self.dtype is not jnp.float32
  
      if self.head_dim * self.num_heads != self.hidden_size:
          raise ValueError(
              f"`hidden_size` must be divisible by `num_heads` (got `hidden_size`: {self.hidden_size} and "
              f"`num_heads`: {self.num_heads})."
          )
  
      dense = partial(
          nn.Dense,
          dtype=self.dtype,
          kernel_init=jax.nn.initializers.normal(
              self.config.initializer_range
          ),
      )
  
      self.query_key_value = dense(self.hidden_size * 3)
      self.dense = dense(self.hidden_size)
      self.resid_dropout = nn.Dropout(rate=self.config.hidden_dropout)
  
imports: import math
  from functools import partial
  from typing import Optional, Tuple
  import flax.linen
  import jax
  import jax.numpy
  from flax.core.frozen_dict import FrozenDict, freeze, unfreeze
  from flax.linen import combine_masks, dot_product_attention_weights, make_causal_mask
  from flax.linen.activation import tanh
  from flax.traverse_util import flatten_dict, unflatten_dict
  from jax import lax
  from ...modeling_flax_outputs import FlaxBaseModelOutput, FlaxBaseModelOutputWithPastAndCrossAttentions, FlaxCausalLMOutput
  from ...modeling_flax_utils import FlaxPreTrainedModel, append_call_sample_docstring
  from ...utils import add_start_docstrings, add_start_docstrings_to_model_forward, logging
  from .configuration_bloom import BloomConfig
label_desc: Use image node_id 1 for calling the FlaxBloomAttention obj's underlying member method code with example usage: obj.setup() without return types