code: def _get_window_and_shift_size(
      shift_size: List[int], size_dhw: List[int], window_size: List[int]
  ) -> Tuple[List[int], List[int]]:
      for i in range(3):
          if size_dhw[i] <= window_size[i]:
              # In this case, window_size will adapt to the input size, and no need to shift
              window_size[i] = size_dhw[i]
              shift_size[i] = 0
  
      return window_size, shift_size
  
imports: from functools import partial
  from typing import Any, Callable, List, Optional, Tuple
  import torch
  import torch.nn.functional
  from torch import nn, Tensor
  from ...transforms._presets import VideoClassification
  from ...utils import _log_api_usage_once
  from .._api import register_model, Weights, WeightsEnum
  from .._meta import _KINETICS400_CATEGORIES
  from .._utils import _ovewrite_named_param, handle_legacy_interface
  from ..swin_transformer import PatchMerging, SwinTransformerBlock
label_desc: Use image node_id 1 for calling a global function with example usage: _get_window_and_shift_size(shift_size, size_dhw, window_size) and returns: window_size,  shift_size