return nil if no matches on #negotiate