theeeenate

Topics Engaged In

Viewing 5 topics - 1 through 5 (of 5 total)
    • Topic
    • Voices
    • Posts
    • Last Post
    • How A ChatGPT-like AI Can “Read A Mind” In 20 Questions. How A ChatGPT-like AI Can "Read A Mind" In 20 Questions. https://readmultiplex.com/2023/09/17/how-a-chatgpt-like-ai-can-read-a-mind-in-20-questions/ This technology will have a massive impact to society. In this article I show the basis of how "mind reading" will be done with AI. I hope to have a local GPT4ALL model and script for you to test soon.How A ChatGPT-like AI Can "Read A Mind" In 20 Questions. https://readmultiplex.com/2023/09/17/how-a-chatgpt-like-ai-can-read-a-mind-in-20-questions/ This technology will have a massive impact to society. In this article I show the basis of how "mind reading" will be done with AI. I hope to have a local GPT4ALL model and script for you to test soon.

      Started by: Brian in: Read Multiplex Article Discussion

    • 6
    • 6
    • 6 months, 2 weeks ago

      sebsigloch

    • The way forward? In the rapidly evolving landscape of AI and technology, I find myself grappling with a concept that seems increasingly vital: the development of personal AI models to navigate the complexities of our imminent future. The sheer volume and velocity of change suggest that such personalized AI could be our beacon in the digital overload. However, the path to creating these AI companions seems fraught with intricacies. From data collection (like recording conversations and archiving writings) to choosing the right platforms (beyond my current, rudimentary grasp of Hugging Face and GitHub), the journey appears daunting. Especially so, considering my current technical limitations — a computer that struggles with GPT-4all, reducing efficiency to a crawl. In this forum of intellectuals and pioneers, I seek guidance: How do we forge ahead in building these AI guides? How can we, or specifically I, keep pace in this race of technological advancement? P.S. Amidst the instantaneity of modern communication, I find the traditional forum structure somewhat limiting. Would anyone be interested in migrating this discourse to a more dynamic platform like Telegram or Discord for more fluid, real-time discussions?"  In the rapidly evolving landscape of AI and technology, I find myself grappling with a concept that seems increasingly vital: the development of personal AI models to navigate the complexities of our imminent future. The sheer volume and velocity of change suggest that such personalized AI could be our beacon in the digital overload. However, the path to creating these AI companions seems fraught with intricacies. From data collection (like recording conversations and archiving writings) to choosing the right platforms (beyond my current, rudimentary grasp of Hugging Face and GitHub), the journey appears daunting. Especially so, considering my current technical limitations — a computer that struggles with GPT-4all, reducing efficiency to a crawl. In this forum of intellectuals and pioneers, I seek guidance: How do we forge ahead in building these AI guides? How can we, or specifically I, keep pace in this race of technological advancement? P.S. Amidst the instantaneity of modern communication, I find the traditional forum structure somewhat limiting. Would anyone be interested in migrating this discourse to a more dynamic platform like Telegram or Discord for more fluid, real-time discussions?"  

      Started by: theeeenate in: -General

    • 2
    • 3
    • 7 months, 3 weeks ago

      theeeenate

    • Superprompt Creation Template & Process Hi everyone, I haven't posted much on these forums yet because I've been 100 miles deep in AI/LLMs/learning code/etc. I'm a novice, self-taught coder - so I think this process can be achieved by nearly anyone given enough tenacity. I developed this Superprompt process and it's getting superior results thus far. NOTE: In the spirit of open-source, I hope I'm not breaking any rules by feeding the AI ReadMultiplex articles to enable understanding. If this is breaking rules, please let me know and I'll cease immediately. Apps/software used in Superprompt creation & execution process: 1.AutoGPT Next Web (Github repo deployed to Vercel) Dogtiti/AutoGPT-Next-Web: 🤖 Assemble, configure, and deploy autonomous AI Agents in your browser.一键免费部署你的私人AutoGPT 网页应用 (github.com) 2.Access to GPT-4 OpenAI 3.Code Interpreter enabled (ChatGPT main page after you've logged in; bottom left settings; beta features; toggle Code Interpreter) 4.POE (poe.com) 5. VSCode (Only used at end of process to work with AI-created python code files) ------------------------------- Process: Important Context: BEFORE using AutoGPT to create an ideal Superprompt template I downloaded the GPT4All repo and uploaded the python bindings file "gpt4all.py" to POE's "Pythonmachine" AI bot to give a python code example to start from. nomic-ai/gpt4all: gpt4all: an ecosystem of open-source chatbots trained on a massive collections of clean assistant data including code, stories and dialogue (github.com) POE Pythonmachine Prompt: "Let us think step-by-step. First, I'm trying to create an AI chat python application with a sleek and simple modern user interface. Please explain with detail and specificity what is required to achieve a python AI chat application using the gpt4all.py code I have uploaded to you. Next, imagine you are writing exceptional python code for the AI chat application that functions perfectly. Then, write the robust and accurate python code you have imagined for the AI chat application. Next, show me the code you have written so I may review for accuracy. Finally, after all of the above is complete, confirm with me and I will tell you next steps in our order of operations." 1.Access AutoGPT and input the following Superprompt: "Let us think step-by-step and be very sure we have the right answer. First, review the information at this URL ink to understand the concept of "Superprompts". https://readmultiplex.com/2023/04/22/a-selection-of-powerful-chatgpt-superprompts/ Second, using the knowledge available at the URL link, compose the ideal Superprompt template to be used to quickly and easily create and edit Superprompts." After AutoGPT has finished, export the "Superprompt template creation prompt" results to PDF (or you can just copy/paste from the AutoGPT screen, I just find saving to PDF easier and better for maintaining archives of results. AUTOGPT RESULTS: ""Title: {Title of the Superprompt} ## Instructions {Provide detailed instructions for the AI. This is the main prompt that the AI will respond to.} ## Context {Provide any necessary background information or context for the AI. This could include information about the setting, the situation, or the people involved.} ## Persona {If necessary, provide a persona for the AI. This could include information about the AI's personality, role, or perspective.} ## Steps {If the instructions involve a series of steps, list them here.} ## Expected Output {Describe what you expect the AI's response to look like. This could include the format, the tone, or the content of the response.} ## Additional Notes {Include any additional information or instructions that the AI needs to know." 2. Access POE and take the Superprompt template creation prompt, created by AutoGPT, plus a prompt telling POE what you want to accomplish, to prompt POE to create the Superprompt template. "Let us think step-by-step and be very sure we have the right answer. First, using the python code you just wrote for guidance, fill out the information requested in each bracket to create the ideal Superprompt for python application coding and creation. It is of the upmost importance that when you are composing the information answering the brackets, your composition must be detailed, specific, and written so that an LLM AI completely understands and perfectly executes the Superprompt. Next, show me the results of your composition so I may review for accuracy. Finally, after you have achieved the above tasks as completely and comprehensively as possible, confirm with me and I will tell you next steps in our order of operations." Title: {Title of the Superprompt} ## Instructions {Provide detailed instructions for the AI. This is the main prompt that the AI will respond to.} ## Context {Provide any necessary background information or context for the AI. This could include information about the setting, the situation, or the people involved.} ## Persona {If necessary, provide a persona for the AI. This could include information about the AI's personality, role, or perspective.} ## Steps {If the instructions involve a series of steps, list them here.} ## Expected Output {Describe what you expect the AI's response to look like. This could include the format, the tone, or the content of the response.} ## Additional Notes {Include any additional information or instructions that the AI needs to know." POE Results: Title: Superprompt for Python Application Coding and Creation <h2>Instructions</h2> Please provide guidance on how to create a Python application with a sleek and modern user interface that incorporates the gpt4all.py code. The application should allow users to input text and receive responses from an AI chatbot powered by the Embed4All class. <h2>Context</h2> The Python application will be used by users who want to interact with an AI chatbot and receive responses to their input. The chatbot will be powered by the Embed4All class from the gpt4all.py code. <h2>Persona</h2> The AI chatbot should have a friendly and helpful personality, and should be able to understand and respond to a wide range of user input. <h2>Steps</h2> Import the necessary modules from gpt4all.py, including Embed4All and GPT4All. Create a GUI using a toolkit like Tkinter or PyQt. The GUI should include an input field and a display area for the chat history. Initialize the Embed4All class. Define a function to handle user input. The function should get the user input, generate a response using the Embed4All class, and display the response in the chat history display area. Bind the function to the input field so that it is called when the user enters a message and presses enter. Start the GUI main loop. <h2>Expected Output</h2> The Python application should display a sleek and modern user interface with an input field and a display area for the chat history. When the user enters a message and presses enter, the AI chatbot should generate a response using the Embed4All class and display it in the chat history display area. The chatbot's responses should be friendly and helpful, and should demonstrate a wide range of understanding and knowledge. <h2>Additional Notes</h2> Please ensure that the Python code is well-documented and adheres to widely-accepted Python programming standards such as PEP 8. Additionally, please provide clear explanations and examples for structuring the program, optimizing performance, and leveraging Python's built-in functions, libraries, and idiomatic expressions to develop reliable and maintainable solutions to common programming problems. 3.Access GPT-4 Code Interpreter Input the following prompt to GPT-4 Code Interpreter and upload the same gpt4all.py file (via + sign near chat input) to give GPT-4 a python code example to start from. "Let us think step-by-step and be very sure we have the right answer. [SUPERPROMPT CREATION TEMPLATE HERE]" GPT-4 Code Interpreter Results: " <div class="min-h-[20px] flex items-start overflow-x-auto whitespace-pre-wrap break-words"> <div class="markdown prose w-full break-words dark:prose-invert light AIPRM__conversation__response"> To proceed, I need to check the contents of the uploaded file, gpt4all.py. This will allow me to understand the structure of the Embed4All class and how it can be integrated into the new application. Let's do this now. </div> </div> <div class="flex flex-col items-start"> <div class="flex items-center text-xs rounded p-3 text-gray-900 bg-gray-100"> <div>Finished working</div> <div class="ml-12 flex items-center gap-2" role="button"> <div class="text-xs text-gray-600">Show work</div> </div> </div> </div> <div class="min-h-[20px] flex items-start overflow-x-auto whitespace-pre-wrap break-words"> <div class="markdown prose w-full break-words dark:prose-invert light AIPRM__conversation__response"> The gpt4all.py file contains two important classes for this task: Embed4All: This class is used to generate embeddings for any given text. It has a constructor and an embed method. GPT4All: This class handles instantiation, downloading, generation, and chat interactions with GPT4All models. It includes methods to list available models, retrieve a model, download a model, generate text, and manage a chat session. For your application, you would primarily interact with these two classes. Now that we have an understanding of the file, we can proceed with the creation of the GUI application. We will use the tkinter library, which is a standard Python interface to the Tk GUI toolkit. It provides a powerful object-oriented interface to the Tk GUI toolkit and is available on most Unix systems as well as on Windows systems. Here is the step-by-step process: Import the necessary libraries and classes. Define the GUI class. Initialize the Embed4All class in the GUI class constructor. Create the necessary widgets (input field, chat history display area) in the GUI class constructor. Define a method in the GUI class to handle user input and generate a response using the Embed4All class. Bind the user input method to the input field so that it is called when the user presses enter. Start the main loop in the main function to launch the application. Let's proceed with the implementation. Please note that while I can provide a skeleton of the code, actual testing and modification might be required on a local machine because tkinter GUIs cannot be displayed in this environment. In addition, please replace model_name and model_path with the actual model name and model path in your local machine. If the model isn't present in your local machine, GPT4All will attempt to download it from the specified URL. Make sure you have an active internet connection for this. Here's a skeleton for the application: import tkinter as tk from gpt4all import Embed4All, GPT4All class ChatbotGUI: def __init__(self, master): self.master = master self.master.title("Chatbot") # Initialize Embed4All and GPT4All self.embed4all = Embed4All(n_threads=None) self.gpt4all = GPT4All(model_name="model_name", model_path="model_path", allow_download=True) # Input field self.entry_field = tk.Entry(master) self.entry_field.pack() self.entry_field.bind("<Return>", self.handle_user_input) # Chat history display area self.chat_history = tk.Text(master) self.chat_history.pack() def handle_user_input(self, event=None): # Get user input and clear the input field user_input = self.entry_field.get() self.entry_field.delete(0, tk.END) # Generate a response using the Embed4All and GPT4All class embedding = self.embed4all.embed(user_input) response = self.gpt4all.generate(user_input) # Display the user input and chatbot response in the chat history display area self.chat_history.insert(tk.END, "User: " + user_input + "\n") self.chat_history.insert(tk.END, "Chatbot: " + response + "\n") def main(): root = tk.Tk() gui = ChatbotGUI(root) root.mainloop() if __name__ == "__main__": main() In the above code, replace "model_name" and "model_path" with the actual model name and model path on your local machine. The code takes user input, generates a response using the Embed4All and GPT4All classes, and displays the user input and chatbot response in the chat history display area. When the user presses enter, the handle_user_input method is called to process the user's message. This code is a simple implementation and may need to be adapted to your specific use case. For instance, you might want to add a scrollbar to the chat history display area, or add buttons for additional functionality. The tkinter library provides a wide range of widgets that can be used to customize your application. The layout can be further refined using the grid method instead of pack for more complex layouts. Remember to ensure your code adheres to PEP 8 standards. Use descriptive names for your variables and functions, add comments to explain what your code is doing, and make sure your lines are not too long (maximum 79 characters)." ----------------------------------- From there, I opened VSCode, created a folder in my C drive for the project, and began tinkering with it. I'm sure there's plenty of polish and improvements that could be implemented in my process - this was simply my first attempt and I was pleasantly surprised by the quality of the results. I think the real prize here is the "Superprompt Creation Template". Once you've got the template you can skip the most complicated part of the process(AutoGPT download/install). Even with the template, I thought it best to include instructions for the full process here so others can build upon it with the context of the entire process understood. </div> I've attached a couple pictures for the more visual learners. Any feedback on the process/superprompt creation template/anything is always welcome and gratefully accepted. </div>Hi everyone, I haven't posted much on these forums yet because I've been 100 miles deep in AI/LLMs/learning code/etc. I'm a novice, self-taught coder - so I think this process can be achieved by nearly anyone given enough tenacity. I developed this Superprompt process and it's getting superior results thus far. NOTE: In the spirit of open-source, I hope I'm not breaking any rules by feeding the AI ReadMultiplex articles to enable understanding. If this is breaking rules, please let me know and I'll cease immediately. Apps/software used in Superprompt creation & execution process: 1.AutoGPT Next Web (Github repo deployed to Vercel) Dogtiti/AutoGPT-Next-Web: 🤖 Assemble, configure, and deploy autonomous AI Agents in your browser.一键免费部署你的私人AutoGPT 网页应用 (github.com) 2.Access to GPT-4 OpenAI 3.Code Interpreter enabled (ChatGPT main page after you've logged in; bottom left settings; beta features; toggle Code Interpreter) 4.POE (poe.com) 5. VSCode (Only used at end of process to work with AI-created python code files) ------------------------------- Process: Important Context: BEFORE using AutoGPT to create an ideal Superprompt template I downloaded the GPT4All repo and uploaded the python bindings file "gpt4all.py" to POE's "Pythonmachine" AI bot to give a python code example to start from. nomic-ai/gpt4all: gpt4all: an ecosystem of open-source chatbots trained on a massive collections of clean assistant data including code, stories and dialogue (github.com) POE Pythonmachine Prompt: "Let us think step-by-step. First, I'm trying to create an AI chat python application with a sleek and simple modern user interface. Please explain with detail and specificity what is required to achieve a python AI chat application using the gpt4all.py code I have uploaded to you. Next, imagine you are writing exceptional python code for the AI chat application that functions perfectly. Then, write the robust and accurate python code you have imagined for the AI chat application. Next, show me the code you have written so I may review for accuracy. Finally, after all of the above is complete, confirm with me and I will tell you next steps in our order of operations." 1.Access AutoGPT and input the following Superprompt: "Let us think step-by-step and be very sure we have the right answer. First, review the information at this URL ink to understand the concept of "Superprompts". https://readmultiplex.com/2023/04/22/a-selection-of-powerful-chatgpt-superprompts/ Second, using the knowledge available at the URL link, compose the ideal Superprompt template to be used to quickly and easily create and edit Superprompts." After AutoGPT has finished, export the "Superprompt template creation prompt" results to PDF (or you can just copy/paste from the AutoGPT screen, I just find saving to PDF easier and better for maintaining archives of results. AUTOGPT RESULTS: ""Title: {Title of the Superprompt} ## Instructions {Provide detailed instructions for the AI. This is the main prompt that the AI will respond to.} ## Context {Provide any necessary background information or context for the AI. This could include information about the setting, the situation, or the people involved.} ## Persona {If necessary, provide a persona for the AI. This could include information about the AI's personality, role, or perspective.} ## Steps {If the instructions involve a series of steps, list them here.} ## Expected Output {Describe what you expect the AI's response to look like. This could include the format, the tone, or the content of the response.} ## Additional Notes {Include any additional information or instructions that the AI needs to know." 2. Access POE and take the Superprompt template creation prompt, created by AutoGPT, plus a prompt telling POE what you want to accomplish, to prompt POE to create the Superprompt template. "Let us think step-by-step and be very sure we have the right answer. First, using the python code you just wrote for guidance, fill out the information requested in each bracket to create the ideal Superprompt for python application coding and creation. It is of the upmost importance that when you are composing the information answering the brackets, your composition must be detailed, specific, and written so that an LLM AI completely understands and perfectly executes the Superprompt. Next, show me the results of your composition so I may review for accuracy. Finally, after you have achieved the above tasks as completely and comprehensively as possible, confirm with me and I will tell you next steps in our order of operations." Title: {Title of the Superprompt} ## Instructions {Provide detailed instructions for the AI. This is the main prompt that the AI will respond to.} ## Context {Provide any necessary background information or context for the AI. This could include information about the setting, the situation, or the people involved.} ## Persona {If necessary, provide a persona for the AI. This could include information about the AI's personality, role, or perspective.} ## Steps {If the instructions involve a series of steps, list them here.} ## Expected Output {Describe what you expect the AI's response to look like. This could include the format, the tone, or the content of the response.} ## Additional Notes {Include any additional information or instructions that the AI needs to know." POE Results: Title: Superprompt for Python Application Coding and Creation <h2>Instructions</h2> Please provide guidance on how to create a Python application with a sleek and modern user interface that incorporates the gpt4all.py code. The application should allow users to input text and receive responses from an AI chatbot powered by the Embed4All class. <h2>Context</h2> The Python application will be used by users who want to interact with an AI chatbot and receive responses to their input. The chatbot will be powered by the Embed4All class from the gpt4all.py code. <h2>Persona</h2> The AI chatbot should have a friendly and helpful personality, and should be able to understand and respond to a wide range of user input. <h2>Steps</h2> Import the necessary modules from gpt4all.py, including Embed4All and GPT4All. Create a GUI using a toolkit like Tkinter or PyQt. The GUI should include an input field and a display area for the chat history. Initialize the Embed4All class. Define a function to handle user input. The function should get the user input, generate a response using the Embed4All class, and display the response in the chat history display area. Bind the function to the input field so that it is called when the user enters a message and presses enter. Start the GUI main loop. <h2>Expected Output</h2> The Python application should display a sleek and modern user interface with an input field and a display area for the chat history. When the user enters a message and presses enter, the AI chatbot should generate a response using the Embed4All class and display it in the chat history display area. The chatbot's responses should be friendly and helpful, and should demonstrate a wide range of understanding and knowledge. <h2>Additional Notes</h2> Please ensure that the Python code is well-documented and adheres to widely-accepted Python programming standards such as PEP 8. Additionally, please provide clear explanations and examples for structuring the program, optimizing performance, and leveraging Python's built-in functions, libraries, and idiomatic expressions to develop reliable and maintainable solutions to common programming problems. 3.Access GPT-4 Code Interpreter Input the following prompt to GPT-4 Code Interpreter and upload the same gpt4all.py file (via + sign near chat input) to give GPT-4 a python code example to start from. "Let us think step-by-step and be very sure we have the right answer. [SUPERPROMPT CREATION TEMPLATE HERE]" GPT-4 Code Interpreter Results: " <div class="min-h-[20px] flex items-start overflow-x-auto whitespace-pre-wrap break-words"> <div class="markdown prose w-full break-words dark:prose-invert light AIPRM__conversation__response"> To proceed, I need to check the contents of the uploaded file, gpt4all.py. This will allow me to understand the structure of the Embed4All class and how it can be integrated into the new application. Let's do this now. </div> </div> <div class="flex flex-col items-start"> <div class="flex items-center text-xs rounded p-3 text-gray-900 bg-gray-100"> <div>Finished working</div> <div class="ml-12 flex items-center gap-2" role="button"> <div class="text-xs text-gray-600">Show work</div> </div> </div> </div> <div class="min-h-[20px] flex items-start overflow-x-auto whitespace-pre-wrap break-words"> <div class="markdown prose w-full break-words dark:prose-invert light AIPRM__conversation__response"> The gpt4all.py file contains two important classes for this task: Embed4All: This class is used to generate embeddings for any given text. It has a constructor and an embed method. GPT4All: This class handles instantiation, downloading, generation, and chat interactions with GPT4All models. It includes methods to list available models, retrieve a model, download a model, generate text, and manage a chat session. For your application, you would primarily interact with these two classes. Now that we have an understanding of the file, we can proceed with the creation of the GUI application. We will use the tkinter library, which is a standard Python interface to the Tk GUI toolkit. It provides a powerful object-oriented interface to the Tk GUI toolkit and is available on most Unix systems as well as on Windows systems. Here is the step-by-step process: Import the necessary libraries and classes. Define the GUI class. Initialize the Embed4All class in the GUI class constructor. Create the necessary widgets (input field, chat history display area) in the GUI class constructor. Define a method in the GUI class to handle user input and generate a response using the Embed4All class. Bind the user input method to the input field so that it is called when the user presses enter. Start the main loop in the main function to launch the application. Let's proceed with the implementation. Please note that while I can provide a skeleton of the code, actual testing and modification might be required on a local machine because tkinter GUIs cannot be displayed in this environment. In addition, please replace model_name and model_path with the actual model name and model path in your local machine. If the model isn't present in your local machine, GPT4All will attempt to download it from the specified URL. Make sure you have an active internet connection for this. Here's a skeleton for the application: import tkinter as tk from gpt4all import Embed4All, GPT4All class ChatbotGUI: def __init__(self, master): self.master = master self.master.title("Chatbot") # Initialize Embed4All and GPT4All self.embed4all = Embed4All(n_threads=None) self.gpt4all = GPT4All(model_name="model_name", model_path="model_path", allow_download=True) # Input field self.entry_field = tk.Entry(master) self.entry_field.pack() self.entry_field.bind("<Return>", self.handle_user_input) # Chat history display area self.chat_history = tk.Text(master) self.chat_history.pack() def handle_user_input(self, event=None): # Get user input and clear the input field user_input = self.entry_field.get() self.entry_field.delete(0, tk.END) # Generate a response using the Embed4All and GPT4All class embedding = self.embed4all.embed(user_input) response = self.gpt4all.generate(user_input) # Display the user input and chatbot response in the chat history display area self.chat_history.insert(tk.END, "User: " + user_input + "\n") self.chat_history.insert(tk.END, "Chatbot: " + response + "\n") def main(): root = tk.Tk() gui = ChatbotGUI(root) root.mainloop() if __name__ == "__main__": main() In the above code, replace "model_name" and "model_path" with the actual model name and model path on your local machine. The code takes user input, generates a response using the Embed4All and GPT4All classes, and displays the user input and chatbot response in the chat history display area. When the user presses enter, the handle_user_input method is called to process the user's message. This code is a simple implementation and may need to be adapted to your specific use case. For instance, you might want to add a scrollbar to the chat history display area, or add buttons for additional functionality. The tkinter library provides a wide range of widgets that can be used to customize your application. The layout can be further refined using the grid method instead of pack for more complex layouts. Remember to ensure your code adheres to PEP 8 standards. Use descriptive names for your variables and functions, add comments to explain what your code is doing, and make sure your lines are not too long (maximum 79 characters)." ----------------------------------- From there, I opened VSCode, created a folder in my C drive for the project, and began tinkering with it. I'm sure there's plenty of polish and improvements that could be implemented in my process - this was simply my first attempt and I was pleasantly surprised by the quality of the results. I think the real prize here is the "Superprompt Creation Template". Once you've got the template you can skip the most complicated part of the process(AutoGPT download/install). Even with the template, I thought it best to include instructions for the full process here so others can build upon it with the context of the entire process understood. </div> I've attached a couple pictures for the more visual learners. Any feedback on the process/superprompt creation template/anything is always welcome and gratefully accepted. </div>

      Started by: gadsdencode in: SuperPrompt Master Mind Group

    • 3
    • 3
    • 10 months, 2 weeks ago

      theeeenate

Viewing 5 topics - 1 through 5 (of 5 total)