

from ...configuration_utils import PretrainedConfig
from ...utils import logging


__A :  int			  =      logging.get_logger(__name__)

__A :  List[Any]			  =      {
    '''vinvino02/glpn-kitti''': '''https://huggingface.co/vinvino02/glpn-kitti/resolve/main/config.json''',
    # See all GLPN models at https://huggingface.co/models?filter=glpn
}






class  __A					(				_UpperCamelCase			):
    lowerCAmelCase_				:		Tuple							=				"glpn"






    def __init__(						self      :     int     ,					UpperCAmelCase_      :     List[Any]=3     ,					UpperCAmelCase_      :     Optional[Any]=4     ,					UpperCAmelCase_      :     Union[str, Any]=[2, 2, 2, 2]     ,					UpperCAmelCase_      :     Union[str, Any]=[8, 4, 2, 1]     ,					UpperCAmelCase_      :     Dict=[32, 64, 160, 256]     ,					UpperCAmelCase_      :     List[Any]=[7, 3, 3, 3]     ,					UpperCAmelCase_      :     Optional[int]=[4, 2, 2, 2]     ,					UpperCAmelCase_      :     Tuple=[1, 2, 5, 8]     ,					UpperCAmelCase_      :     List[Any]=[4, 4, 4, 4]     ,					UpperCAmelCase_      :     Optional[int]="gelu"     ,					UpperCAmelCase_      :     Any=0.0     ,					UpperCAmelCase_      :     str=0.0     ,					UpperCAmelCase_      :     Any=0.02     ,					UpperCAmelCase_      :     Tuple=0.1     ,					UpperCAmelCase_      :     int=1E-6     ,					UpperCAmelCase_      :     Union[str, Any]=64     ,					UpperCAmelCase_      :     Union[str, Any]=10     ,					UpperCAmelCase_      :     Optional[Any]=-1     ,					**UpperCAmelCase_      :     Any     ,					):
        super().__init__(**__a     )

        lowerCAmelCase					:      int           =   num_channels
        lowerCAmelCase					:      str           =   num_encoder_blocks
        lowerCAmelCase					:      Union[str, Any]           =   depths
        lowerCAmelCase					:      Tuple           =   sr_ratios
        lowerCAmelCase					:      Union[str, Any]           =   hidden_sizes
        lowerCAmelCase					:      List[Any]           =   patch_sizes
        lowerCAmelCase					:      str           =   strides
        lowerCAmelCase					:      Tuple           =   mlp_ratios
        lowerCAmelCase					:      Union[str, Any]           =   num_attention_heads
        lowerCAmelCase					:      List[str]           =   hidden_act
        lowerCAmelCase					:      Union[str, Any]           =   hidden_dropout_prob
        lowerCAmelCase					:      Optional[Any]           =   attention_probs_dropout_prob
        lowerCAmelCase					:      Optional[int]           =   initializer_range
        lowerCAmelCase					:      Tuple           =   drop_path_rate
        lowerCAmelCase					:      Optional[int]           =   layer_norm_eps
        lowerCAmelCase					:      Tuple           =   decoder_hidden_size
        lowerCAmelCase					:      Optional[Any]           =   max_depth
        lowerCAmelCase					:      Optional[Any]           =   head_in_index












"""simple docstring"""


def        lowercase__     (       lowercase_      )       ->		list:




      """simple docstring"""

      if len(lowercase_      ) <= 1:
            return [tuple(lowercase_      )]

      _UpperCamelCase   :						Optional[Any]    =							[]

      def generate(lowercase_		,lowercase_      ):
            if k == 1:
                  res.append(tuple(arr[:]      )      )
                  return

            generate(k - 1		,lowercase_      )

            for i in range(k - 1      ):
                  if k % 2 == 0:  # k is even
                        _UpperCamelCase,	_UpperCamelCase   :						List[str]    =							arr[k - 1], arr[i]
                  else:  # k is odd
                        _UpperCamelCase,	_UpperCamelCase   :						int    =							arr[k - 1], arr[0]
                  generate(k - 1		,lowercase_      )

      generate(len(lowercase_      )		,lowercase_      )
      return res


if __name__ == "__main__":
  lowerCamelCase__						= input("Enter numbers separated by a comma:\n").strip()
  lowerCamelCase__						= [int(item) for item in user_input.split(",")]
  print(heaps(arr))
