| line | true | false | branch | 
 
| 528 | 16 | 0 | ::new(__node) _Rb_tree_node<_Val>; | 
 
| 529 | 16 | 0 | _Alloc_traits::construct(_M_get_Node_allocator(), | 
 
| 1610 | 16 | 26 | while (__x != 0) | 
 
| 1627 | 36 | 44 | while (__x != 0) | 
 
| 1628 | 20 | 16 | if (!_M_impl._M_key_compare(_S_key(__x), __k)) | 
 
| 1807 | 0 | 8 | while (__x != 0) | 
 
| 1810 | 0 | 0 | __comp = _M_impl._M_key_compare(__k, _S_key(__x)); | 
 
| 1811 | 0 | 0 | __x = __comp ? _S_left(__x) : _S_right(__x); | 
 
| 1814 | 8 | 0 | if (__comp) | 
 
| 1816 | 8 | 0 | if (__j == begin()) | 
 
| 1821 | 0 | 0 | if (_M_impl._M_key_compare(_S_key(__j._M_node), __k)) | 
 
|  | 0 | 0 | if (_M_impl._M_key_compare(_S_key(__j._M_node), __k)) | 
 
| 1910 | 11 | 5 | if (__pos._M_node == _M_end()) | 
 
| 1912 | 3 | 8 | if (size() > 0 | 
 
| 1913 | 3 | 0 | && _M_impl._M_key_compare(_S_key(_M_rightmost()), __k)) | 
 
| 1916 | 8 | 0 | return _M_get_insert_unique_pos(__k); | 
 
| 1918 | 5 | 0 | else if (_M_impl._M_key_compare(__k, _S_key(__pos._M_node))) | 
 
|  | 5 | 0 | else if (_M_impl._M_key_compare(__k, _S_key(__pos._M_node))) | 
 
| 1922 | 3 | 2 | if (__pos._M_node == _M_leftmost()) // begin() | 
 
| 1924 | 2 | 0 | else if (_M_impl._M_key_compare(_S_key((--__before)._M_node), __k)) | 
 
|  | 2 | 0 | else if (_M_impl._M_key_compare(_S_key((--__before)._M_node), __k)) | 
 
| 1926 | 2 | 0 | if (_S_right(__before._M_node) == 0) | 
 
| 1932 | 0 | 0 | return _M_get_insert_unique_pos(__k); | 
 
| 1934 | 0 | 0 | else if (_M_impl._M_key_compare(_S_key(__pos._M_node), __k)) | 
 
|  | 0 | 0 | else if (_M_impl._M_key_compare(_S_key(__pos._M_node), __k)) | 
 
| 1938 | 0 | 0 | if (__pos._M_node == _M_rightmost()) | 
 
| 1940 | 0 | 0 | else if (_M_impl._M_key_compare(__k, _S_key((++__after)._M_node))) | 
 
|  | 0 | 0 | else if (_M_impl._M_key_compare(__k, _S_key((++__after)._M_node))) | 
 
| 1942 | 0 | 0 | if (_S_right(__pos._M_node) == 0) | 
 
| 1948 | 0 | 0 | return _M_get_insert_unique_pos(__k); | 
 
| 2074 | 0 | 5 | _S_key(__p))); | 
 
| 2174 | 16 | 0 | auto __res = _M_get_insert_hint_unique_pos(__pos, _S_key(__z)); | 
 
|  | 16 | 0 | auto __res = _M_get_insert_hint_unique_pos(__pos, _S_key(__z)); | 
 
| 2176 | 16 | 0 | if (__res.second) | 
 
| 2177 | 16 | 0 | return _M_insert_node(__res.first, __res.second, __z); | 
 
| 2295 | 27 | 0 | iterator __j = _M_lower_bound(_M_begin(), _M_end(), __k); | 
 
| 2296 | 0 | 27 | return (__j == end() | 
 
|  | 0 | 0 | return (__j == end() | 
 
| 2298 | 11 | 16 | _S_key(__j._M_node))) ? end() : __j; |