Rewrote to accommodate callback providing more items then requested.