code: def forward(self, x, context):
      context = self.context_mlp(context)
  
      for _ in range(len(x.shape[2:])):
          context = context.unsqueeze(-1)
  
      scale, shift = context.chunk(2, dim=1)
      x = self.norm(x) * (scale + 1.0) + shift
      return x
  
imports: from dataclasses import dataclass
  from typing import Dict, Tuple, Union
  import torch
  import torch.utils.checkpoint
  from torch import nn
  from ..configuration_utils import ConfigMixin, register_to_config
  from ..utils import BaseOutput, logging
  from .attention_processor import Attention, AttentionProcessor, AttnProcessor
  from .embeddings import TimestepEmbedding, Timesteps
  from .modeling_utils import ModelMixin
label_desc: Use image node_id 2 for calling the Kandinsky3ConditionalGroupNorm obj's underlying member method code with example usage: obj.forward(x, context) and returns: x