do not pass cache row array around, just the current row