Implementing base features and iterators.