input: from typing import List, Dict
  
  def simple_chatbot(states: Dict[str, Dict[str, str]], start_state: str) -> None:
      """ Create a simple text-based chatbot which uses a dictionary of states to guide the conversation.
      The chatbot will start from the provided start_state and prompts the user for input until it reaches a terminal state.
      The conversation history is stored and printed at the end.
      
      >>> simple_chatbot({
          'state0': {'name': 'state0', 'message': 'Hello! How can I help you?', 'replies': {'I need some advice': 'state1', 'Can you answer my questions?': 'state2'}},
          'state1': {'name': 'state1', 'message': 'Sure, what kind of advice do you need?', 'replies': {'Career advice': 'state3','Health advice': 'state4'}},
          'state2': {'name': 'state2', 'message': 'Yes, I'll do my best! What do you want to know?', 'replies': {'Where can I find good tutorials': 'state5', 'Why is coding so hard': 'state6'}},
          'state3': {'name': 'state3', 'message': 'It is always a good idea to research the field you are interested in and creating a plan to learn the skills that are required. Make sure to contact professionals in the field to understand their experience.', 'replies': {}},
          'state4': {'name': 'state4', 'message': 'Focus on eating healthy and staying active. Make sure to consult a medical professional if you have any concerns.', 'replies': {}},
          'state5': {'name': 'state5', 'message': 'You can find tutorials online or join coding communities to get help from experienced coders. StackOverflow and Cod Academy are great resources.', 'replies': {}},
          'state6': {'name': 'state6', 'message': 'Coding can be challenging, especially at first. Just remember that with practice, patience and problem solving skills you can overcome the obstacles.', 'replies': {}}
      }, 'state0')
      """
output:     current_state = start_state
      conversation_history = []
  
      while states[current_state]['replies']:
          message = states[current_state]['message']
          conversation_history.append(f"Bot: {message}")
          print(message)
          
          user_input = input("You: ")
          conversation_history.append(f"You: {user_input}")
          
          next_state = states[current_state]['replies'].get(user_input)
          if next_state:
              current_state = next_state
          else:
              print("Invalid input. Please try again.")
  
      final_message = states[current_state]['message']
      conversation_history.append(f"Bot: {final_message}")
      print(final_message)
  
      print("\nConversation History:")
      for line in conversation_history:
          print(line)