Three argument generic version