code: def last(n = nil)
        return empty? ? nil : list_tail unless n
        raise ArgumentError, 'n cannot be negative' if n.negative?
  
        return [] if n.zero? || empty?
  
        list_tail.take(-n)
      end
docs: Access the first n item(s) in the list.
  
   @param  n [Integer] the number of items to return.
   @return [Listable] if n = nil.
   @return [Array<Listable>] if n >= 0. The order is preserved.