distribute new function