protected function loadPage()
 {
     $table = new PhabricatorRepository();
     $conn_r = $table->establishConnection('r');
     $data = queryfx_all($conn_r, 'SELECT * FROM %T r %Q %Q %Q %Q', $table->getTableName(), $this->buildJoinsClause($conn_r), $this->buildWhereClause($conn_r), $this->buildOrderClause($conn_r), $this->buildLimitClause($conn_r));
     $repositories = $table->loadAllFromArray($data);
     if ($this->needCommitCounts) {
         $sizes = ipull($data, 'size', 'id');
         foreach ($repositories as $id => $repository) {
             $repository->attachCommitCount(nonempty($sizes[$id], 0));
         }
     }
     if ($this->needMostRecentCommits) {
         $commit_ids = ipull($data, 'lastCommitID', 'id');
         $commit_ids = array_filter($commit_ids);
         if ($commit_ids) {
             $commits = id(new DiffusionCommitQuery())->setViewer($this->getViewer())->withIDs($commit_ids)->execute();
         } else {
             $commits = array();
         }
         foreach ($repositories as $id => $repository) {
             $commit = null;
             if (idx($commit_ids, $id)) {
                 $commit = idx($commits, $commit_ids[$id]);
             }
             $repository->attachMostRecentCommit($commit);
         }
     }
     return $repositories;
 }