introduce collection_methods and item_methods