code: def make_unet_encoder_decoder_args(encoder_args, decoder_args):
      encoder_args = tuple(
          (
              in_chan,
              out_chan,
              tuple(kernel_size),
              tuple(stride),
              tuple([n // 2 for n in kernel_size])
              if padding == "auto"
              else tuple(padding),
              tuple(dilation),
          )
          for in_chan, out_chan, kernel_size, stride, padding, dilation in encoder_args
      )
  
      if decoder_args == "auto":
          decoder_args = unet_decoder_args(
              encoder_args,
              skip_connections=True,
          )
      else:
          decoder_args = tuple(
              (
                  in_ch,
                  out_ch,
                  tuple(ks),
                  tuple(stride),
                  tuple([n // 2 for n in ks]) if pad == "auto" else pad,
                  tuple(dilation),
                  out_pad,
              )
              for in_ch, out_ch, ks, stride, pad, dilation, out_pad in decoder_args
          )
  
      return encoder_args, decoder_args
  
imports: import functools
  from functools import partial
  import numpy
  import torch
  from torch import Tensor, nn
  from torch.nn.modules.batchnorm import _BatchNorm
label_desc: Use image node_id 4 for calling a global function with example usage: make_unet_encoder_decoder_args(encoder_args, decoder_args) and returns: encoder_args,  decoder_args