code: def __init__(
      self,
      in_channel: int,
      out_channel: int,
      spatial_dims: int = 3,
      act_name: tuple | str = "RELU",
      norm_name: tuple | str = ("INSTANCE", {"affine": True}),
  ):
      super().__init__(
          in_channel, out_channel, spatial_dims, act_name, norm_name
      )
      # s0 is upsampled 2x from s1, representing feature sizes at two resolutions.
      # 2 * in_channel * s0 (upsample + activation) + 2 * out_channel * s0 (conv + normalization)
      # s0 = output_size/out_channel
      self.ram_cost = 2 * in_channel / out_channel + 2
  
imports: from __future__ import annotations
  import datetime
  import warnings
  from typing import Optional
  import numpy
  import torch
  import torch.nn
  import torch.nn.functional
  from monai.networks.blocks.dints_block import ActiConvNormBlock, FactorizedIncreaseBlock, FactorizedReduceBlock, P3DActiConvNormBlock
  from monai.networks.layers.factories import Conv
  from monai.networks.layers.utils import get_act_layer, get_norm_layer
  from monai.utils import optional_import
label_desc: Use image node_id 1 to create a new _FactorizedIncreaseBlockWithRAMCost object from inherited base classes: FactorizedIncreaseBlock with example: obj = _FactorizedIncreaseBlockWithRAMCost(in_channel, out_channel, spatial_dims, act_name, norm_name)