fix: function_compose