def METHOD_NAME(self, query: str) -> tuple:
    """
    Execute the DuckDuckGo search tool.
    Args:
        query : The query to search for.
    Returns:
        Search result summary along with related links
    """
    search_results = self.get_raw_duckduckgo_results(query)
    links=[]                                                                        
    for result in search_results:                                                       
        links.append(result["href"])
    webpages=self.get_content_from_url(links)
    results=self.get_formatted_webpages(search_results,webpages)                        #array to store objects with keys :{"title":snippet , "body":webpage content, "links":link URL}
    summary = self.summarise_result(query, results)                                     #summarize the content gathered using the function
    links = [result["links"] for result in results if len(result["links"]) > 0]
    if len(links) > 0:
        return summary + "\n\nLinks:\n" + "\n".join("- " + link for link in links[:3])
    return summary