I'm wondering if shouldn't also clone the query object because if it's modified out of the scope of the paginator it could have some weird results... ?