code: protected function eliminateNestedPages($arrPages, $strTable=null, $blnSorting=false)
  	{
  		if (empty($arrPages) || !\is_array($arrPages))
  		{
  			return array();
  		}
  
  		if (!$strTable)
  		{
  			$strTable = 'tl_page';
  		}
  
  		// Thanks to Andreas Schempp (see #2475 and #3423)
  		$arrPages = array_intersect($arrPages, $this->Database->getChildRecords(0, $strTable, $blnSorting));
  		$arrPages = array_values(array_diff($arrPages, $this->Database->getChildRecords($arrPages, $strTable, $blnSorting)));
  
  		return $arrPages;
  	}
docs: Take an array of pages and eliminate the nested ones
  
  @param array   $arrPages   The array of page IDs
  @param string  $strTable   The table name
  @param boolean $blnSorting True if the table has a sorting field
  
  @return array The page IDs array without the nested IDs