reverted allowance to supply function instead of object, not thought through