copied and tested mu.fn.partial