





def 				SCREAMING_SNAKE_CASE__							(       UpperCamelCase__:							int					,   UpperCamelCase__:							int    ):
  SCREAMING_SNAKE_CASE__			=      1  # To kept the Calculated Value
  # Since C(n, k) = C(n, n-k)
  if k > (n - k):
    SCREAMING_SNAKE_CASE__			=      n - k
  # Calculate C(n,k)
  for i in range(__UpperCamelCase    ):
    result *= n - i
    result //= i + 1
  return result






def 				SCREAMING_SNAKE_CASE__							(       UpperCamelCase__:							int    ):
  return binomial_coefficient(2 * node_count					,   __UpperCamelCase    ) // (node_count + 1)






def 				SCREAMING_SNAKE_CASE__							(       UpperCamelCase__:							int    ):






  if n < 0:
    raise ValueError("""factorial() not defined for negative values"""    )
  SCREAMING_SNAKE_CASE__			=      1
  for i in range(1					,   n + 1    ):
    result *= i
  return result






def 				SCREAMING_SNAKE_CASE__							(       UpperCamelCase__:							int    ):
  return catalan_number(__UpperCamelCase    ) * factorial(__UpperCamelCase    )


if __name__ == "__main__":
 _lowerCamelCase   				=			int(input('Enter the number of nodes: ').strip() or 0)
 if node_count <= 0:
  raise ValueError('We need some nodes to work with.')
 print(
     F'''Given {node_count} nodes, there are {binary_tree_count(node_count)} '''
     F'''binary trees and {catalan_number(node_count)} binary search trees.'''
 )






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


_lowerCamelCase   				=			logging.get_logger(__name__)




class   UpperCamelCase_       (     UpperCamelCase__    ):
							lowerCamelCase_           =					"timm_backbone"


							def __init__(							self    :Union[str, Any]							,				__A    :str=None							,				__A    :Union[str, Any]=3							,				__A    :str=True							,				__A    :Any=True							,				__A    :Optional[Any]=None							,				**__A    :List[str]							,				)   ->   Tuple:



									"""simple docstring"""



									super().__init__(**__A		)
									SCREAMING_SNAKE_CASE__			=      backbone
									SCREAMING_SNAKE_CASE__			=      num_channels
									SCREAMING_SNAKE_CASE__			=      features_only
									SCREAMING_SNAKE_CASE__			=      use_pretrained_backbone
									SCREAMING_SNAKE_CASE__			=      True
									SCREAMING_SNAKE_CASE__			=      out_indices if out_indices is not None else (-1,)