code: def forward(self, x):
      bs = x.size(0)
      x = x.view(bs, -1)
      out = self.pre(x)
      for block in self.blocks:
          out = block(out, x)
      out = self.out(out)
      if self.output_size == 3:
          # pre euler
          out = torch.clamp(out, min=-3.14159 / 2, max=3.14159 / 2)
          pass
      else:
          # pre rotation matrix
          out = torch.clamp(out, min=-1.0, max=1.0)
      return out
  
file_path: insightface/body/human_pose/ambiguity_aware/lib/models/rotater.py
imports: import torch
  import torch.nn
  from lib.models.building_blocks import ResBlock
label_desc: Use image node_id 2 for calling the Rotater obj's underlying member method code with example usage: obj.forward(x) and returns: out