input: Write a function to remove all duplicates from an array of strings and return the resulting array. The function should return a new array that contains each string only once, in the order of their first appearance. If the input array is empty, the function should return an empty array. 
  
  def removeDuplicates(arr):
   result = [] 
    
   # traverse for all elements 
   for i in arr: 
    
    # check if exists in result 
    if i not in result: 
     result.append(i) 
    
   # return result 
   return result
  
  assert removeDuplicates(['a', 'b', 'a', 'c', 'c', 'd'])==['a', 'b', 'c', 'd']
  assert removeDuplicates(['x', 'y', 'x', 'z', 'y'])==['x', 'y', 'z']
  assert removeDuplicates([])==[]
  assert removeDuplicates(['u', 'v', 'u', 'w', 'v'])==['u', 'v', 'w']
  assert removeDuplicates(['a'])==['a']
output: def removeDuplicates(arr):
   result = [] 
    
   # traverse for all elements 
   for i in arr: 
    
    # check if exists in result 
    if i not in result: 
     result.append(i) 
    
   # return result 
   return result