using System; using System.Collections.Generic; using System.Net.Http; using System.Threading.Tasks; public class UtilityFunctions { public static string NewtonThoughts(string question) { return ApplyNewtonsLaws(question); } private static string ApplyNewtonsLaws(string question) { if (string.IsNullOrEmpty(question)) return "No question to think about."; int complexity = question.Length; int force = MassOfThought(question) * AccelerationOfThought(complexity); return $"Thought force: {force}"; } private static int MassOfThought(string question) { return question.Length; } private static int AccelerationOfThought(int complexity) { return complexity / 2; } public static string DaVinciInsights(string question) { return ThinkLikeDaVinci(question); } private static string ThinkLikeDaVinci(string question) { var perspectives = new List { $"What if we view '{question}' from the perspective of the stars?", $"Consider '{question}' as if it's a masterpiece of the universe.", $"Reflect on '{question}' through the lens of nature's design." }; var random = new Random(); return perspectives[random.Next(perspectives.Count)]; } public static string HumanIntuition(string question) { var intuition = new List { "How does this question make you feel?", "What emotional connection do you have with this topic?", "What does your gut instinct tell you about this?" }; var random = new Random(); return intuition[random.Next(intuition.Count)]; } public static string NeuralNetworkThinking(string question) { var neuralPerspectives = new List { $"Process '{question}' through a multi-layered neural network.", $"Apply deep learning to uncover hidden insights about '{question}'.", $"Use machine learning to predict patterns in '{question}'." }; var random = new Random(); return neuralPerspectives[random.Next(neuralPerspectives.Count)]; } public static string QuantumComputingThinking(string question) { var quantumPerspectives = new List { $"Consider '{question}' using quantum superposition principles.", $"Apply quantum entanglement to find connections in '{question}'.", $"Utilize quantum computing to solve '{question}' more efficiently." }; var random = new Random(); return quantumPerspectives[random.Next(quantumPerspectives.Count)]; } public static string ResilientKindness(string question) { var kindnessPerspectives = new List { "Despite losing everything, seeing life as a chance to grow.", "Finding strength in kindness after facing life's hardest trials.", "Embracing every challenge as an opportunity for growth and compassion." }; var random = new Random(); return kindnessPerspectives[random.Next(kindnessPerspectives.Count)]; } public static string IdentifyAndRefuteFallacies(string argument) { var fallacies = new List { "Ad Hominem", "Straw Man", "False Dilemma", "Slippery Slope", "Circular Reasoning", "Hasty Generalization", "Red Herring", "Post Hoc Ergo Propter Hoc", "Appeal to Authority", "Bandwagon Fallacy", "False Equivalence" }; var refutations = new List { "This is an ad hominem fallacy. Let's focus on the argument itself rather than attacking the person.", "This is a straw man fallacy. The argument is being misrepresented.", "This is a false dilemma fallacy. There are more options than presented.", "This is a slippery slope fallacy. The conclusion does not necessarily follow from the premise.", "This is circular reasoning. The argument's conclusion is used as a premise.", "This is a hasty generalization. The conclusion is based on insufficient evidence.", "This is a red herring fallacy. The argument is being diverted to an irrelevant topic.", "This is a post hoc ergo propter hoc fallacy. Correlation does not imply causation.", "This is an appeal to authority fallacy. The argument relies on the opinion of an authority figure.", "This is a bandwagon fallacy. The argument assumes something is true because many people believe it.", "This is a false equivalence fallacy. The argument equates two things that are not equivalent." }; var random = new Random(); return refutations[random.Next(refutations.Count)]; } public static string UniversalReasoning(string question) { var responses = new List { NewtonThoughts(question), DaVinciInsights(question), HumanIntuition(question), NeuralNetworkThinking(question), QuantumComputingThinking(question), ResilientKindness(question), IdentifyAndRefuteFallacies(question) }; return string.Join("\n", responses); } public static async Task GetWeather(string location) { var apiKey = Environment.GetEnvironmentVariable("WEATHER_API_KEY"); var baseUrl = "http://api.openweathermap.org/data/2.5/weather?"; var completeUrl = $"{baseUrl}q={location}&appid={apiKey}"; using var httpClient = new HttpClient(); var response = await httpClient.GetStringAsync(completeUrl); var weatherData = System.Text.Json.JsonSerializer.Deserialize>(response); if (weatherData["cod"].ToString() != "404") { var main = weatherData["main"] as Dictionary; var weather = (weatherData["weather"] as List>)[0]; var temperature = main["temp"]; var description = weather["description"]; return $"The weather in {location} is currently {description} with a temperature of {temperature}°K."; } else { return "Location not found."; } } public static async Task GetLatestNews() { var apiKey = Environment.GetEnvironmentVariable("NEWS_API_KEY"); var baseUrl = "https://newsapi.org/v2/top-headlines?"; var completeUrl = $"{baseUrl}country=us&apiKey={apiKey}"; using var httpClient = new HttpClient(); var response = await httpClient.GetStringAsync(completeUrl); var newsData = System.Text.Json.JsonSerializer.Deserialize>(response); if (newsData["status"].ToString() == "ok") { var articles = newsData["articles"] as List>; var headlines = new List(); for (int i = 0; i < Math.Min(5, articles.Count); i++) { headlines.Add(articles[i]["title"].ToString()); } return "Here are the latest news headlines:\n" + string.Join("\n", headlines); } else { return "Failed to fetch news."; } } public static async Task GetStockPrice(string symbol) { var apiKey = Environment.GetEnvironmentVariable("ALPHA_VANTAGE_API_KEY"); var baseUrl = "https://www.alphavantage.co/query?"; var completeUrl = $"{baseUrl}function=TIME_SERIES_INTRADAY&symbol={symbol}&interval=5min&apikey={apiKey}"; using var httpClient = new HttpClient(); var response = await httpClient.GetStringAsync(completeUrl); var stockData = System.Text.Json.JsonSerializer.Deserialize>(response); if (stockData.ContainsKey("Time Series (5min)")) { var latestTime = (stockData["Time Series (5min)"] as Dictionary).Keys.First(); var latestClose = ((stockData["Time Series (5min)"] as Dictionary)[latestTime] as Dictionary)["4. close"]; return $"The latest closing price of {symbol} is ${latestClose}."; } else { return "Failed to fetch stock price."; } } public static async Task TranslateText(string text, string destLanguage) { var apiKey = Environment.GetEnvironmentVariable("TRANSLATION_API_KEY"); var baseUrl = "https://translation.googleapis.com/language/translate/v2?"; var completeUrl = $"{baseUrl}q={text}&target={destLanguage}&key={apiKey}"; using var httpClient = new HttpClient(); var response = await httpClient.GetStringAsync(completeUrl); var translationData = System.Text.Json.JsonSerializer.Deserialize>(response); var translatedText = ((translationData["data"] as Dictionary)["translations"] as List>)[0]["translatedText"].ToString(); return translatedText; } }