{{ size={last - first} }} last - first capacity - first last - first first {{ size={m_buffer.last - m_buffer.first} }} m_buffer {{ size={m_size} }} m_size m_buckets.last - m_buckets.first *m_buckets.first next first {{ size={m_size} }} m_size m_buckets.last - m_buckets.first *m_buckets.first next second {m_first,[m_last - m_first]na} m_first,[m_last - m_first]na m_last - m_first m_capacity - m_first m_last - m_first m_first {m_str,[m_size]na} m_str,[m_size]na m_size m_size m_str