code: def forward(self, x: Tensor) -> Tensor:
      if self.stride == 1:
          x1, x2 = x.chunk(2, dim=1)
          out = torch.cat((x1, self.branch2(x2)), dim=1)
      else:
          out = torch.cat((self.branch1(x), self.branch2(x)), dim=1)
  
      out = channel_shuffle(out, 2)
  
      return out
  
imports: from functools import partial
  from typing import Any, Callable, List, Optional
  import torch
  import torch.nn
  from torch import Tensor
  from ..transforms._presets import ImageClassification
  from ..utils import _log_api_usage_once
  from ._api import register_model, Weights, WeightsEnum
  from ._meta import _IMAGENET_CATEGORIES
  from ._utils import _ovewrite_named_param, handle_legacy_interface
label_desc: Use image node_id 3 for calling the InvertedResidual obj's underlying member method code with example usage: obj.forward(x) and returns: out