, , etc. all work via currying a single  function. Cleanup