fix bug: nothing returned if exactly one match found