Implementing new :first and :last methods