Corrected issue with ->rows(::type) and improved performance.
Refactored .rows => givenblock handling.