input: Write a function to remove all duplicate elements from a list of integers. The function should return the list with only unique elements, maintaining the order of their first appearance in the original list.
  
  def remove_duplicates(list_of_integers: list) -> list:
      final_list = []
      for num in list_of_integers:
          if num not in final_list:
              final_list.append(num)
      return final_list
  
  assert remove_duplicates([1, 2, 3, 2, 4, 5, 6, 3]) == [1, 2, 3, 4, 5, 6]
  assert remove_duplicates([4, 5, 4, 6, 7, 5]) == [4, 5, 6, 7]
  assert remove_duplicates([3, 3, 3, 3]) == [3]
  assert remove_duplicates([]) == []
  assert remove_duplicates([1, 2, 3, 4]) == [1, 2, 3, 4]
output: 
  def remove_duplicates(list_of_integers: list) -> list:
      final_list = []
      for num in list_of_integers:
          if num not in final_list:
              final_list.append(num)
      return final_list
  