including pop and isEmpty