




'''simple docstring'''







import math







def 						_A      ( UpperCAmelCase						):






   '''simple docstring'''







   if not isinstance(UpperCAmelCase      ,UpperCAmelCase						):
      A__       =     F"""Input value of [number={number}] must be an integer"""
      raise TypeError(UpperCAmelCase						)

   if number < 1:
      A__       =     F"""Input value of [number={number}] must be > 0"""
      raise ValueError(UpperCAmelCase						)
   elif number == 1:
      return 3
   elif number == 2:
      return 5
   else:
      A__       =     int(math.log(number // 3      ,2						)						) + 2

      A__       =     [3, 5]
      A__       =     2
      A__       =     3
      for block in range(1      ,UpperCAmelCase						):
         for _ in range(UpperCAmelCase						):
            proth_list.append(2 ** (block + 1) + proth_list[proth_index - 1]						)
            proth_index += 1
         increment *= 2

   return proth_list[number - 1]


if __name__ == "__main__":
    import doctest

    doctest.testmod()

    for number in range(1_1):
        lowerCAmelCase_     						=				0
        try:
            lowerCAmelCase_     						=				proth(number)
        except ValueError:
            print(f'''ValueError: there is no {number}th Proth number''')
            continue

        print(f'''The {number}th Proth number: {value}''')








'''simple docstring'''







from torch import nn







def 						_A      ( UpperCAmelCase						):






   '''simple docstring'''







   if act_fn in ["swish", "silu"]:
      return nn.SiLU()
   elif act_fn == "mish":
      return nn.Mish()
   elif act_fn == "gelu":
      return nn.GELU()
   else:
      raise ValueError(F"""Unsupported activation function: {act_fn}"""						)


