Keep iterator type consistent with container