class_docstr: Reparameterizable token mixer.
  
  For more details, please refer to our paper:
  `FastViT: A Fast Hybrid Vision Transformer using Structural Reparameterization <https://arxiv.org/pdf/2303.14189.pdf>`_
class_docstr_tok: ["Reparameterizable","token","mixer",".","For","more","details",",","please","refer","to","our","paper",":","`","FastViT",":","A","Fast","Hybrid","Vision","Transformer","using","Structural","Reparameterization","<","https",":","\/\/arxiv.org\/pdf\/2303.14189.pdf",">","`","_"]
code: def forward(self, x: torch.Tensor) -> torch.Tensor:
      if hasattr(self, "reparam_conv"):
          x = self.reparam_conv(x)
          return x
      else:
          if self.use_layer_scale:
              x = x + self.layer_scale * (self.mixer(x) - self.norm(x))
          else:
              x = x + self.mixer(x) - self.norm(x)
          return x
  
imports: import os
  import copy
  from functools import partial
  from typing import List, Tuple, Optional, Union
  import torch
  import torch.nn
  from timm.data import IMAGENET_DEFAULT_MEAN, IMAGENET_DEFAULT_STD
  from timm.models.layers import DropPath, trunc_normal_
  from timm.models.registry import register_model
  from models.modules.mobileone import MobileOneBlock
  from models.modules.replknet import ReparamLargeKernelConv
label_desc: Use image node_id 2 for calling the RepMixer obj's underlying member method code with example usage: obj.forward(x) and returns: x, x