private function recalculateSubTree($set, $left, $depth, $q_table, $c_order_by, $c_id, $c_parent_id, $c_left, $c_right, $c_depth)
	{
		foreach($set as $row) {
			$id = $row['id'];
			
			$this->flupdo->update($q_table)
				->set("$c_left = ?", $left)
				->set("$c_depth = ?", $depth)
				->where("$c_id = ?", $id)
				->exec();

			$sub_set = $this->flupdo->select($c_id)
				->from($q_table)
				->where("$c_parent_id = ?", $id)
				->orderBy($c_order_by)
				->query();

			$left = $this->recalculateSubTree($sub_set, $left + 1, $depth + 1,
					$q_table, $c_order_by, $c_id, $c_parent_id, $c_left, $c_right, $c_depth);
			
			$this->flupdo->update($q_table)
				->set("$c_right = ?", $left)
				->where("$c_id = ?", $id)
				->exec();

			$left++;
		}
		return $left;
	}