code: def compose_functions(*func_list):
      
      def apply_composition(f, g):
          def compose(x):
              return f(g(x))
          return compose
      composed_func = functools.reduce(apply_composition, func_list)
      return composed_func
docs: Referenes:
          https://mathieularose.com/function-composition-in-python/