code: 
  
  
  
  
  
  
  from doctest import testmod
  from math import sqrt
  
  
  
  
  
  def    _lowerCamelCase	(	__lowerCamelCase					)   -> list:
  
       '''simple docstring'''
       UpperCAmelCase__			:     str										= []
       if num < 1:
            return facs
       facs.append(1					)
       if num == 1:
            return facs
       facs.append(__lowerCamelCase					)
       for i in range(2   ,       int(sqrt(__lowerCamelCase					)					) + 1					):
            if num % i == 0:  # If i is a factor of num
                 facs.append(__lowerCamelCase					)
                 UpperCAmelCase__			:     Dict										= num // i  # num//i is the other factor of num
                 if d != i:  # If d and i are distinct
                      facs.append(__lowerCamelCase					)  # we have found another factor
       facs.sort()
       return facs
  
  
  if __name__ == "__main__":
        testmod(name="""factors_of_a_number""", verbose=True)
  
  
  
  
  
  
  
style_context: 
  
  
  
  
  
  
  from __future__ import annotations
  
  
  
  
  
  
  
  class 							UpperCAmelCase_     :
  
  
  
  
       def __init__(							self  ,	_lowerCAmelCase		):
            UpperCAmelCase__			:     List[Any]										= value
            UpperCAmelCase__			:     Node | None										= None
            UpperCAmelCase__			:     Node | None										= None
  
  
  
  
  
  
  
  class 							UpperCAmelCase_     :
       __lowerCamelCase										=     42
  
  
  
  
       def __init__(							self		):
            UpperCAmelCase__			:     Any										= 0
  
  
  
  
       def      __UpperCAmelCase     (							self  ,	_lowerCAmelCase  ,	_lowerCAmelCase		):
            if node is None:
                 return
  
            if path_sum == self.target:
                 self.paths += 1
  
            if node.left:
                 self.depth_first_search(node.left  ,	path_sum + node.left.value		)
            if node.right:
                 self.depth_first_search(node.right  ,	path_sum + node.right.value		)
  
  
  
  
       def      __UpperCAmelCase     (							self  ,	_lowerCAmelCase  ,	_lowerCAmelCase = None		):
            if node is None:
                 return 0
            if target is not None:
                 UpperCAmelCase__			:     List[Any]										= target
  
            self.depth_first_search(_lowerCAmelCase  ,	node.value		)
            self.path_sum(node.left		)
            self.path_sum(node.right		)
  
            return self.paths
  
  
  if __name__ == "__main__":
        import doctest
  
        doctest.testmod()
  
  
  
  
  
  
  