class MobileNetV2(Module):
  __parameters__ = []
  __buffers__ = []
  mobile_optimized : bool
  _bundled_inputs_deflated_forward : List[Tuple[Tensor]]
  def forward(self: __torch__.torchvision.models.mobilenetv2.___torch_mangle_1145.MobileNetV2,
    x: Tensor) -> Tensor:
    _0 = ops.prepacked.conv2d_clamp_run(x, CONSTANTS.c0)
    _1 = ops.prepacked.conv2d_clamp_run(_0, CONSTANTS.c1)
    _2 = ops.prepacked.conv2d_clamp_run(_1, CONSTANTS.c2)
    _3 = ops.prepacked.conv2d_clamp_run(_2, CONSTANTS.c3)
    _4 = ops.prepacked.conv2d_clamp_run(_3, CONSTANTS.c4)
    _5 = ops.prepacked.conv2d_clamp_run(_4, CONSTANTS.c5)
    _6 = ops.prepacked.conv2d_clamp_run(_5, CONSTANTS.c6)
    _7 = ops.prepacked.conv2d_clamp_run(_6, CONSTANTS.c7)
    _8 = ops.prepacked.conv2d_clamp_run(_7, CONSTANTS.c8)
    input = torch.add(_5, _8)
    _9 = ops.prepacked.conv2d_clamp_run(input, CONSTANTS.c9)
    _10 = ops.prepacked.conv2d_clamp_run(_9, CONSTANTS.c10)
    _11 = ops.prepacked.conv2d_clamp_run(_10, CONSTANTS.c11)
    _12 = ops.prepacked.conv2d_clamp_run(_11, CONSTANTS.c12)
    _13 = ops.prepacked.conv2d_clamp_run(_12, CONSTANTS.c13)
    _14 = ops.prepacked.conv2d_clamp_run(_13, CONSTANTS.c14)
    input0 = torch.add(_11, _14)
    _15 = ops.prepacked.conv2d_clamp_run(input0, CONSTANTS.c15)
    _16 = ops.prepacked.conv2d_clamp_run(_15, CONSTANTS.c16)
    _17 = ops.prepacked.conv2d_clamp_run(_16, CONSTANTS.c17)
    input1 = torch.add(input0, _17)
    _18 = ops.prepacked.conv2d_clamp_run(input1, CONSTANTS.c18)
    _19 = ops.prepacked.conv2d_clamp_run(_18, CONSTANTS.c19)
    _20 = ops.prepacked.conv2d_clamp_run(_19, CONSTANTS.c20)
    _21 = ops.prepacked.conv2d_clamp_run(_20, CONSTANTS.c21)
    _22 = ops.prepacked.conv2d_clamp_run(_21, CONSTANTS.c22)
    _23 = ops.prepacked.conv2d_clamp_run(_22, CONSTANTS.c23)
    input2 = torch.add(_20, _23)
    _24 = ops.prepacked.conv2d_clamp_run(input2, CONSTANTS.c24)
    _25 = ops.prepacked.conv2d_clamp_run(_24, CONSTANTS.c25)
    _26 = ops.prepacked.conv2d_clamp_run(_25, CONSTANTS.c26)
    input3 = torch.add(input2, _26)
    _27 = ops.prepacked.conv2d_clamp_run(input3, CONSTANTS.c27)
    _28 = ops.prepacked.conv2d_clamp_run(_27, CONSTANTS.c28)
    _29 = ops.prepacked.conv2d_clamp_run(_28, CONSTANTS.c29)
    input4 = torch.add(input3, _29)
    _30 = ops.prepacked.conv2d_clamp_run(input4, CONSTANTS.c30)
    _31 = ops.prepacked.conv2d_clamp_run(_30, CONSTANTS.c31)
    _32 = ops.prepacked.conv2d_clamp_run(_31, CONSTANTS.c32)
    _33 = ops.prepacked.conv2d_clamp_run(_32, CONSTANTS.c33)
    _34 = ops.prepacked.conv2d_clamp_run(_33, CONSTANTS.c34)
    _35 = ops.prepacked.conv2d_clamp_run(_34, CONSTANTS.c35)
    input5 = torch.add(_32, _35)
    _36 = ops.prepacked.conv2d_clamp_run(input5, CONSTANTS.c36)
    _37 = ops.prepacked.conv2d_clamp_run(_36, CONSTANTS.c37)
    _38 = ops.prepacked.conv2d_clamp_run(_37, CONSTANTS.c38)
    input6 = torch.add(input5, _38)
    _39 = ops.prepacked.conv2d_clamp_run(input6, CONSTANTS.c39)
    _40 = ops.prepacked.conv2d_clamp_run(_39, CONSTANTS.c40)
    _41 = ops.prepacked.conv2d_clamp_run(_40, CONSTANTS.c41)
    _42 = ops.prepacked.conv2d_clamp_run(_41, CONSTANTS.c42)
    _43 = ops.prepacked.conv2d_clamp_run(_42, CONSTANTS.c43)
    _44 = ops.prepacked.conv2d_clamp_run(_43, CONSTANTS.c44)
    input7 = torch.add(_41, _44)
    _45 = ops.prepacked.conv2d_clamp_run(input7, CONSTANTS.c45)
    _46 = ops.prepacked.conv2d_clamp_run(_45, CONSTANTS.c46)
    _47 = ops.prepacked.conv2d_clamp_run(_46, CONSTANTS.c47)
    input8 = torch.add(input7, _47)
    _48 = ops.prepacked.conv2d_clamp_run(input8, CONSTANTS.c48)
    _49 = ops.prepacked.conv2d_clamp_run(_48, CONSTANTS.c49)
    _50 = ops.prepacked.conv2d_clamp_run(_49, CONSTANTS.c50)
    _51 = ops.prepacked.conv2d_clamp_run(_50, CONSTANTS.c51)
    x0 = torch.adaptive_avg_pool2d(_51, [1, 1])
    input9 = torch.flatten(x0, 1)
    _52 = ops.prepacked.linear_clamp_run(input9, CONSTANTS.c52)
    return _52
  def _generate_bundled_inputs_for_forward(self: __torch__.torchvision.models.mobilenetv2.___torch_mangle_1145.MobileNetV2) -> List[Tuple[Tensor]]:
    _bundled_inputs_deflated_forward = self._bundled_inputs_deflated_forward
    _53 = (_bundled_inputs_deflated_forward[0])[0]
    return [(torch.contiguous(_53),)]
  def get_all_bundled_inputs_for_forward(self: __torch__.torchvision.models.mobilenetv2.___torch_mangle_1145.MobileNetV2) -> List[Tuple[Tensor]]:
    all_inputs = (self)._generate_bundled_inputs_for_forward()
    return all_inputs
  def get_all_bundled_inputs(self: __torch__.torchvision.models.mobilenetv2.___torch_mangle_1145.MobileNetV2) -> List[Tuple[Tensor]]:
    _54 = (self).get_all_bundled_inputs_for_forward()
    return _54
  def get_num_bundled_inputs(self: __torch__.torchvision.models.mobilenetv2.___torch_mangle_1145.MobileNetV2) -> int:
    _55 = (self).get_all_bundled_inputs_for_forward()
    return torch.len(_55)
  def get_bundled_inputs_functions_and_info(self: __torch__.torchvision.models.mobilenetv2.___torch_mangle_1145.MobileNetV2) -> Dict[str, Dict[str, List[str]]]:
    _56 = "get_all_bundled_inputs_for_forward"
    all_inputs = annotate(Dict[str, Dict[str, List[str]]], {})
    temp_dict = annotate(Dict[str, List[str]], {})
    info = annotate(List[str], [])
    torch._set_item(temp_dict, "info", info)
    torch._set_item(temp_dict, "get_inputs_function_name", [_56])
    torch._set_item(all_inputs, "forward", temp_dict)
    return all_inputs
