added removeFirst method