input: Write a function to count the occurrences of each character in a given string and return a dictionary with characters as keys and their counts as values. The function should be case-sensitive and include counts for spaces and punctuation. If the input string is empty, the function should return an empty dictionary.
  
  def count_chars(string):
      count_dict = {}
  
      for char in string:
          if char in count_dict:
              count_dict[char] += 1
          else:
              count_dict[char] = 1
  
      return count_dict
  
  assert count_chars("Hello World")=={'H': 1, 'e': 1, 'l': 3, 'o': 2, ' ': 1, 'W': 1, 'r': 1, 'd': 1}
  assert count_chars("Hello123")=={'H': 1, 'e': 1, 'l': 2, 'o': 1, '1': 1, '2': 1, '3': 1}
  assert count_chars("!@#$%^&*()_+")=={'!': 1, '@': 1, '#': 1, '$': 1, '%': 1, '^': 1, '&': 1, '*': 1, '(': 1, ')': 1, '_': 1, '+': 1}
  assert count_chars("")=={}
  assert count_chars("aAaA")=={'a': 2, 'A': 2}
output: def count_chars(string):
      count_dict = {}
  
      for char in string:
          if char in count_dict:
              count_dict[char] += 1
          else:
              count_dict[char] = 1
  
      return count_dict