1, Add custom functions. 2, Refactor makeFunction