input: Write a Python function that accepts a list of integers and returns the second smallest value in the list. If no such element exists, return None.
  assert second_smallest([1, 2, 3, 4, 5]) == 2
  assert second_smallest([5, 1, 4, 3, 2]) == 2
  assert second_smallest([]) == None
  assert second_smallest([1, 1]) == None
  assert second_smallest([1, 1, 1, 1, 0]) == 1
  assert second_smallest([1, 0**0]) == None
  assert second_smallest([-35, 34, 12, -45]) == -35
output: def second_smallest(lst):
      if len(lst) < 2:
          return None
      unique_lst = list(set(lst))
      if len(unique_lst) < 2:
          return None
      unique_lst.sort()
      return unique_lst[1]