


'''simple docstring'''






def 						_A					(lowerCAmelCase__	:int		) ->	str:




     '''simple docstring'''



     if not isinstance(lowerCAmelCase__					,    lowerCAmelCase__		):
          _a         =				(
              'operation can not be conducted on a object of type '
              f'{type(lowerCAmelCase__		).__name__}'
          )
          raise TypeError(lowerCAmelCase__		)
     _a         =				''
     for _ in range(0					,    32		):
          bit_string += str(number % 2		)
          _a         =				number >> 1
     return bit_string






def 						_A					(lowerCAmelCase__	:int		) ->	str:




     '''simple docstring'''



     if number < 0:
          raise ValueError('the value of input must be positive'		)
     elif isinstance(lowerCAmelCase__					,    lowerCAmelCase__		):
          raise TypeError('Input value must be a \'int\' type'		)
     elif isinstance(lowerCAmelCase__					,    lowerCAmelCase__		):
          raise TypeError('\'<\' not supported between instances of \'str\' and \'int\''		)
     _a         =				0
     # iterator over [1 to 32],since we are dealing with 32 bit integer
     for _ in range(1					,    33		):
          # left shift the bits by unity
          _a         =				result << 1
          # get the end bit
          _a         =				number % 2
          # right shift the bits by unity
          _a         =				number >> 1
          # add that bit to our ans
          _a         =				result | end_bit
     return get_reverse_bit_string(lowerCAmelCase__		)


if __name__ == "__main__":
 import doctest

 doctest.testmod()





'''simple docstring'''






import os






def 						_A					() ->	int:




     '''simple docstring'''



     _a         =				os.path.dirname(os.path.realpath(lowerCAmelCase__		)		)
     _a         =				os.path.join(lowerCAmelCase__					,    'triangle.txt'		)

     with open(lowerCAmelCase__		) as in_file:
          _a         =				[[int(lowerCAmelCase__		) for i in line.split()] for line in in_file]

     while len(lowerCAmelCase__		) != 1:
          _a         =				triangle.pop()
          _a         =				triangle[-1]
          for j in range(len(lowerCAmelCase__		) - 1		):
               curr_row[j] += max(last_row[j]					,    last_row[j + 1]		)
     return triangle[0][0]


if __name__ == "__main__":
 print(solution())

